@kakarot-ci/core 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/cli/index.d.ts +7 -0
  2. package/dist/cli/index.d.ts.map +1 -0
  3. package/dist/cli/index.js +2288 -0
  4. package/dist/cli/index.js.map +7 -0
  5. package/dist/core/orchestrator.d.ts +32 -0
  6. package/dist/core/orchestrator.d.ts.map +1 -0
  7. package/dist/index.cjs +862 -101
  8. package/dist/index.cjs.map +4 -4
  9. package/dist/index.d.ts +14 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +851 -100
  12. package/dist/index.js.map +4 -4
  13. package/dist/llm/prompts/coverage-summary.d.ts +8 -0
  14. package/dist/llm/prompts/coverage-summary.d.ts.map +1 -0
  15. package/dist/llm/test-generator.d.ts +7 -0
  16. package/dist/llm/test-generator.d.ts.map +1 -1
  17. package/dist/types/config.d.ts +9 -0
  18. package/dist/types/config.d.ts.map +1 -1
  19. package/dist/types/coverage.d.ts +40 -0
  20. package/dist/types/coverage.d.ts.map +1 -0
  21. package/dist/types/test-runner.d.ts +30 -0
  22. package/dist/types/test-runner.d.ts.map +1 -0
  23. package/dist/utils/config-loader.d.ts +4 -0
  24. package/dist/utils/config-loader.d.ts.map +1 -1
  25. package/dist/utils/coverage-reader.d.ts +6 -0
  26. package/dist/utils/coverage-reader.d.ts.map +1 -0
  27. package/dist/utils/package-manager-detector.d.ts +6 -0
  28. package/dist/utils/package-manager-detector.d.ts.map +1 -0
  29. package/dist/utils/test-file-path.d.ts +7 -0
  30. package/dist/utils/test-file-path.d.ts.map +1 -0
  31. package/dist/utils/test-file-writer.d.ts +8 -0
  32. package/dist/utils/test-file-writer.d.ts.map +1 -0
  33. package/dist/utils/test-runner/factory.d.ts +6 -0
  34. package/dist/utils/test-runner/factory.d.ts.map +1 -0
  35. package/dist/utils/test-runner/jest-runner.d.ts +5 -0
  36. package/dist/utils/test-runner/jest-runner.d.ts.map +1 -0
  37. package/dist/utils/test-runner/vitest-runner.d.ts +5 -0
  38. package/dist/utils/test-runner/vitest-runner.d.ts.map +1 -0
  39. package/package.json +10 -2
@@ -0,0 +1,8 @@
1
+ import type { LLMMessage } from '../../types/llm.js';
2
+ import type { CoverageReport, CoverageDelta } from '../../types/coverage.js';
3
+ import type { TestResult } from '../../types/test-runner.js';
4
+ /**
5
+ * Build prompt for generating human-readable coverage summary
6
+ */
7
+ export declare function buildCoverageSummaryPrompt(coverageReport: CoverageReport, testResults: TestResult[], functionsTested: string[], coverageDelta?: CoverageDelta): LLMMessage[];
8
+ //# sourceMappingURL=coverage-summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coverage-summary.d.ts","sourceRoot":"","sources":["../../../src/llm/prompts/coverage-summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,UAAU,EAAE,EACzB,eAAe,EAAE,MAAM,EAAE,EACzB,aAAa,CAAC,EAAE,aAAa,GAC5B,UAAU,EAAE,CA6Cd"}
@@ -15,5 +15,12 @@ export declare class TestGenerator {
15
15
  * Fix a failing test by generating a corrected version
16
16
  */
17
17
  fixTest(context: TestFixContext): Promise<TestGenerationResult>;
18
+ /**
19
+ * Generate a human-readable coverage summary
20
+ */
21
+ generateCoverageSummary(messages: Array<{
22
+ role: 'system' | 'user' | 'assistant';
23
+ content: string;
24
+ }>): Promise<string>;
18
25
  }
19
26
  //# sourceMappingURL=test-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test-generator.d.ts","sourceRoot":"","sources":["../../src/llm/test-generator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAOnG,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,MAAM,CAA2E;gBAGvF,MAAM,EAAE,IAAI,CACV,aAAa,EACb,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,gBAAgB,GAAG,aAAa,GAAG,gBAAgB,CACpG;IAUH;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAmCjF;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAiCtE"}
1
+ {"version":3,"file":"test-generator.d.ts","sourceRoot":"","sources":["../../src/llm/test-generator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAOnG,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,MAAM,CAA2E;gBAGvF,MAAM,EAAE,IAAI,CACV,aAAa,EACb,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,gBAAgB,GAAG,aAAa,GAAG,gBAAgB,CACpG;IAUH;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAmCjF;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAkCrE;;OAEG;IACG,uBAAuB,CAAC,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;CAY5H"}
@@ -2,12 +2,15 @@ import { z } from 'zod';
2
2
  export declare const KakarotConfigSchema: z.ZodObject<{
3
3
  apiKey: z.ZodString;
4
4
  githubToken: z.ZodOptional<z.ZodString>;
5
+ githubOwner: z.ZodOptional<z.ZodString>;
6
+ githubRepo: z.ZodOptional<z.ZodString>;
5
7
  provider: z.ZodOptional<z.ZodEnum<["openai", "anthropic", "google"]>>;
6
8
  model: z.ZodOptional<z.ZodString>;
7
9
  maxTokens: z.ZodOptional<z.ZodNumber>;
8
10
  temperature: z.ZodOptional<z.ZodNumber>;
9
11
  fixTemperature: z.ZodOptional<z.ZodNumber>;
10
12
  maxFixAttempts: z.ZodDefault<z.ZodNumber>;
13
+ framework: z.ZodEnum<["jest", "vitest"]>;
11
14
  testLocation: z.ZodDefault<z.ZodEnum<["separate", "co-located"]>>;
12
15
  testDirectory: z.ZodDefault<z.ZodString>;
13
16
  testFilePattern: z.ZodDefault<z.ZodString>;
@@ -21,6 +24,7 @@ export declare const KakarotConfigSchema: z.ZodObject<{
21
24
  }, "strip", z.ZodTypeAny, {
22
25
  apiKey: string;
23
26
  maxFixAttempts: number;
27
+ framework: "jest" | "vitest";
24
28
  testLocation: "separate" | "co-located";
25
29
  testDirectory: string;
26
30
  testFilePattern: string;
@@ -32,6 +36,8 @@ export declare const KakarotConfigSchema: z.ZodObject<{
32
36
  enablePRComments: boolean;
33
37
  debug: boolean;
34
38
  githubToken?: string | undefined;
39
+ githubOwner?: string | undefined;
40
+ githubRepo?: string | undefined;
35
41
  provider?: "openai" | "anthropic" | "google" | undefined;
36
42
  model?: string | undefined;
37
43
  maxTokens?: number | undefined;
@@ -39,7 +45,10 @@ export declare const KakarotConfigSchema: z.ZodObject<{
39
45
  fixTemperature?: number | undefined;
40
46
  }, {
41
47
  apiKey: string;
48
+ framework: "jest" | "vitest";
42
49
  githubToken?: string | undefined;
50
+ githubOwner?: string | undefined;
51
+ githubRepo?: string | undefined;
43
52
  provider?: "openai" | "anthropic" | "google" | undefined;
44
53
  model?: string | undefined;
45
54
  maxTokens?: number | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmB9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsB9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Types for test coverage analysis
3
+ */
4
+ export interface CoverageMetrics {
5
+ lines: {
6
+ total: number;
7
+ covered: number;
8
+ percentage: number;
9
+ };
10
+ branches: {
11
+ total: number;
12
+ covered: number;
13
+ percentage: number;
14
+ };
15
+ functions: {
16
+ total: number;
17
+ covered: number;
18
+ percentage: number;
19
+ };
20
+ statements: {
21
+ total: number;
22
+ covered: number;
23
+ percentage: number;
24
+ };
25
+ }
26
+ export interface FileCoverage {
27
+ path: string;
28
+ metrics: CoverageMetrics;
29
+ }
30
+ export interface CoverageReport {
31
+ total: CoverageMetrics;
32
+ files: FileCoverage[];
33
+ }
34
+ export interface CoverageDelta {
35
+ lines: number;
36
+ branches: number;
37
+ functions: number;
38
+ statements: number;
39
+ }
40
+ //# sourceMappingURL=coverage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coverage.d.ts","sourceRoot":"","sources":["../../src/types/coverage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,EAAE,YAAY,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Types for test execution and results
3
+ */
4
+ export interface TestResult {
5
+ success: boolean;
6
+ testFile: string;
7
+ passed: number;
8
+ failed: number;
9
+ total: number;
10
+ duration: number;
11
+ failures: TestFailure[];
12
+ }
13
+ export interface TestFailure {
14
+ testName: string;
15
+ message: string;
16
+ stack?: string;
17
+ line?: number;
18
+ column?: number;
19
+ }
20
+ export interface TestRunOptions {
21
+ testFiles: string[];
22
+ framework: 'jest' | 'vitest';
23
+ packageManager: 'npm' | 'yarn' | 'pnpm';
24
+ projectRoot: string;
25
+ coverage?: boolean;
26
+ }
27
+ export interface TestRunner {
28
+ runTests(options: TestRunOptions): Promise<TestResult[]>;
29
+ }
30
+ //# sourceMappingURL=test-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-runner.d.ts","sourceRoot":"","sources":["../../src/types/test-runner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC7B,cAAc,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;CAC1D"}
@@ -1,4 +1,8 @@
1
1
  import { type KakarotConfig } from '../types/config.js';
2
+ /**
3
+ * Find the project root by locating package.json
4
+ */
5
+ export declare function findProjectRoot(startPath?: string): Promise<string>;
2
6
  /**
3
7
  * Load and validate Kakarot configuration
4
8
  */
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,KAAK,aAAa,EAA6B,MAAM,oBAAoB,CAAC;AA0HxG;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,aAAa,CAAC,CAoCzD"}
1
+ {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,KAAK,aAAa,EAA6B,MAAM,oBAAoB,CAAC;AAGxG;;GAEG;AACH,wBAAsB,eAAe,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAWzE;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,aAAa,CAAC,CAsEzD"}
@@ -0,0 +1,6 @@
1
+ import type { CoverageReport } from '../types/coverage.js';
2
+ /**
3
+ * Read coverage report from Jest/Vitest JSON output
4
+ */
5
+ export declare function readCoverageReport(projectRoot: string, framework: 'jest' | 'vitest'): CoverageReport | null;
6
+ //# sourceMappingURL=coverage-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coverage-reader.d.ts","sourceRoot":"","sources":["../../src/utils/coverage-reader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAgB,MAAM,sBAAsB,CAAC;AA2IzE;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAAG,QAAQ,GAC3B,cAAc,GAAG,IAAI,CAsBvB"}
@@ -0,0 +1,6 @@
1
+ export type PackageManager = 'npm' | 'yarn' | 'pnpm';
2
+ /**
3
+ * Detect package manager from project files
4
+ */
5
+ export declare function detectPackageManager(projectRoot: string): PackageManager;
6
+ //# sourceMappingURL=package-manager-detector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-manager-detector.d.ts","sourceRoot":"","sources":["../../src/utils/package-manager-detector.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAErD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAgBxE"}
@@ -0,0 +1,7 @@
1
+ import type { KakarotConfig } from '../types/config.js';
2
+ import type { TestTarget } from '../types/diff.js';
3
+ /**
4
+ * Determine the test file path for a test target based on configuration
5
+ */
6
+ export declare function getTestFilePath(target: TestTarget, config: Pick<KakarotConfig, 'testLocation' | 'testDirectory' | 'testFilePattern'>): string;
7
+ //# sourceMappingURL=test-file-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-file-path.d.ts","sourceRoot":"","sources":["../../src/utils/test-file-path.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,cAAc,GAAG,eAAe,GAAG,iBAAiB,CAAC,GAChF,MAAM,CAwBR"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Write test files to disk in the project directory
3
+ */
4
+ export declare function writeTestFiles(testFiles: Map<string, {
5
+ content: string;
6
+ targets: string[];
7
+ }>, projectRoot: string): string[];
8
+ //# sourceMappingURL=test-file-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-file-writer.d.ts","sourceRoot":"","sources":["../../src/utils/test-file-writer.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,EAC9D,WAAW,EAAE,MAAM,GAClB,MAAM,EAAE,CAoBV"}
@@ -0,0 +1,6 @@
1
+ import type { TestRunner } from '../../types/test-runner.js';
2
+ /**
3
+ * Create a test runner for the specified framework
4
+ */
5
+ export declare function createTestRunner(framework: 'jest' | 'vitest'): TestRunner;
6
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/utils/test-runner/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAI7D;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CASzE"}
@@ -0,0 +1,5 @@
1
+ import type { TestRunner, TestResult, TestRunOptions } from '../../types/test-runner.js';
2
+ export declare class JestRunner implements TestRunner {
3
+ runTests(options: TestRunOptions): Promise<TestResult[]>;
4
+ }
5
+ //# sourceMappingURL=jest-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jest-runner.d.ts","sourceRoot":"","sources":["../../../src/utils/test-runner/jest-runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAe,MAAM,4BAA4B,CAAC;AAoBtG,qBAAa,UAAW,YAAW,UAAU;IACrC,QAAQ,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;CAyF/D"}
@@ -0,0 +1,5 @@
1
+ import type { TestRunner, TestResult, TestRunOptions } from '../../types/test-runner.js';
2
+ export declare class VitestRunner implements TestRunner {
3
+ runTests(options: TestRunOptions): Promise<TestResult[]>;
4
+ }
5
+ //# sourceMappingURL=vitest-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest-runner.d.ts","sourceRoot":"","sources":["../../../src/utils/test-runner/vitest-runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAe,MAAM,4BAA4B,CAAC;AAoBtG,qBAAa,YAAa,YAAW,UAAU;IACvC,QAAQ,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;CAsG/D"}
package/package.json CHANGED
@@ -1,11 +1,14 @@
1
1
  {
2
2
  "name": "@kakarot-ci/core",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Core package for Kakarot CI - AI-powered unit test generation for pull requests",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
7
7
  "module": "./dist/index.js",
8
8
  "types": "./dist/index.d.ts",
9
+ "bin": {
10
+ "kakarot-ci": "./dist/cli/index.js"
11
+ },
9
12
  "exports": {
10
13
  ".": {
11
14
  "import": "./dist/index.js",
@@ -45,12 +48,17 @@
45
48
  "license": "BUSL-1.1",
46
49
  "dependencies": {
47
50
  "@octokit/rest": "^22.0.1",
51
+ "commander": "^14.0.2",
52
+ "cosmiconfig": "^9.0.0",
53
+ "find-up": "^8.0.0",
54
+ "git-url-parse": "^16.1.0",
55
+ "simple-git": "^3.30.0",
48
56
  "typescript": "^5.3.2",
49
57
  "zod": "^3.25.76"
50
58
  },
51
59
  "devDependencies": {
52
60
  "@semantic-release/changelog": "^6.0.3",
53
- "@semantic-release/git": "^10.0.0",
61
+ "@semantic-release/git": "^10.0.1",
54
62
  "@semantic-release/github": "^9.0.0",
55
63
  "@types/node": "^20.10.0",
56
64
  "@typescript-eslint/eslint-plugin": "^6.13.0",