@kakarot-ci/core 0.2.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 (47) hide show
  1. package/LICENSE +42 -0
  2. package/README.md +2 -0
  3. package/dist/github/client.d.ts +56 -0
  4. package/dist/github/client.d.ts.map +1 -0
  5. package/dist/index.cjs +1439 -0
  6. package/dist/index.cjs.map +7 -0
  7. package/dist/index.d.ts +17 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +1382 -0
  10. package/dist/index.js.map +7 -0
  11. package/dist/llm/factory.d.ts +10 -0
  12. package/dist/llm/factory.d.ts.map +1 -0
  13. package/dist/llm/parser.d.ts +16 -0
  14. package/dist/llm/parser.d.ts.map +1 -0
  15. package/dist/llm/prompts/test-fix.d.ts +7 -0
  16. package/dist/llm/prompts/test-fix.d.ts.map +1 -0
  17. package/dist/llm/prompts/test-generation.d.ts +7 -0
  18. package/dist/llm/prompts/test-generation.d.ts.map +1 -0
  19. package/dist/llm/providers/anthropic.d.ts +10 -0
  20. package/dist/llm/providers/anthropic.d.ts.map +1 -0
  21. package/dist/llm/providers/base.d.ts +15 -0
  22. package/dist/llm/providers/base.d.ts.map +1 -0
  23. package/dist/llm/providers/google.d.ts +10 -0
  24. package/dist/llm/providers/google.d.ts.map +1 -0
  25. package/dist/llm/providers/openai.d.ts +10 -0
  26. package/dist/llm/providers/openai.d.ts.map +1 -0
  27. package/dist/llm/test-generator.d.ts +19 -0
  28. package/dist/llm/test-generator.d.ts.map +1 -0
  29. package/dist/types/config.d.ts +62 -0
  30. package/dist/types/config.d.ts.map +1 -0
  31. package/dist/types/diff.d.ts +34 -0
  32. package/dist/types/diff.d.ts.map +1 -0
  33. package/dist/types/github.d.ts +70 -0
  34. package/dist/types/github.d.ts.map +1 -0
  35. package/dist/types/llm.d.ts +60 -0
  36. package/dist/types/llm.d.ts.map +1 -0
  37. package/dist/utils/ast-analyzer.d.ts +8 -0
  38. package/dist/utils/ast-analyzer.d.ts.map +1 -0
  39. package/dist/utils/config-loader.d.ts +6 -0
  40. package/dist/utils/config-loader.d.ts.map +1 -0
  41. package/dist/utils/diff-parser.d.ts +24 -0
  42. package/dist/utils/diff-parser.d.ts.map +1 -0
  43. package/dist/utils/logger.d.ts +9 -0
  44. package/dist/utils/logger.d.ts.map +1 -0
  45. package/dist/utils/test-target-extractor.d.ts +9 -0
  46. package/dist/utils/test-target-extractor.d.ts.map +1 -0
  47. package/package.json +70 -0
package/LICENSE ADDED
@@ -0,0 +1,42 @@
1
+ Business Source License 1.1
2
+
3
+ Copyright (c) 2024 David Jansen / Lokardo Labs
4
+ Licensor: David Jansen / Lokardo Labs
5
+
6
+ Licensed under the Business Source License 1.1 (the "License");
7
+ you may not use this file except in compliance with the License.
8
+ You may obtain a copy of the License at:
9
+
10
+ https://mariadb.com/bsl11/
11
+
12
+ Change Date: 2025-11-17
13
+ Change License: GPL-2.0-or-later
14
+
15
+ After the Change Date, use of this software will be governed by
16
+ the Change License above.
17
+
18
+ ----------------------------------------------------------------------
19
+ ADDITIONAL USE RESTRICTIONS
20
+
21
+ 1. Production Use Prohibited
22
+ You may not use the Software for any production deployment or
23
+ live/critical business operations. For production licensing,
24
+ contact: davidedjansen@gmail.com
25
+
26
+ 2. Competitive Use Prohibited
27
+ You may not use the Software in any manner that competes with
28
+ the Licensor’s commercial offerings.
29
+
30
+ These restrictions apply until the Change Date above.
31
+
32
+ ----------------------------------------------------------------------
33
+ NO WARRANTY
34
+
35
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
36
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
37
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
38
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
39
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY,
40
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
41
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
42
+ DEALINGS IN THE SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,2 @@
1
+ # kakarot-ci
2
+ The core package for kakarot-ci
@@ -0,0 +1,56 @@
1
+ import type { PullRequest, PullRequestFile, FileContents, GitHubClientOptions, BatchCommitOptions } from '../types/github.js';
2
+ /**
3
+ * GitHub API client wrapper with retry and rate-limit handling
4
+ */
5
+ export declare class GitHubClient {
6
+ private octokit;
7
+ private owner;
8
+ private repo;
9
+ private maxRetries;
10
+ private retryDelay;
11
+ constructor(options: GitHubClientOptions);
12
+ /**
13
+ * Retry wrapper with exponential backoff
14
+ */
15
+ private withRetry;
16
+ /**
17
+ * Get pull request details
18
+ */
19
+ getPullRequest(prNumber: number): Promise<PullRequest>;
20
+ /**
21
+ * List all files changed in a pull request with patches
22
+ */
23
+ listPullRequestFiles(prNumber: number): Promise<PullRequestFile[]>;
24
+ /**
25
+ * Get file contents from a specific ref (branch, commit, etc.)
26
+ */
27
+ getFileContents(ref: string, path: string): Promise<FileContents>;
28
+ /**
29
+ * Commit multiple files in a single commit using Git tree API
30
+ */
31
+ commitFiles(options: BatchCommitOptions): Promise<string>;
32
+ /**
33
+ * Create a new branch from a base ref
34
+ */
35
+ createBranch(branchName: string, baseRef: string): Promise<string>;
36
+ /**
37
+ * Create a pull request
38
+ */
39
+ createPullRequest(title: string, body: string, head: string, base: string): Promise<PullRequest>;
40
+ /**
41
+ * Post a comment on a pull request
42
+ */
43
+ commentPR(prNumber: number, body: string): Promise<void>;
44
+ /**
45
+ * Check if a file exists in the repository
46
+ */
47
+ fileExists(ref: string, path: string): Promise<boolean>;
48
+ /**
49
+ * Get the current rate limit status
50
+ */
51
+ getRateLimit(): Promise<{
52
+ remaining: number;
53
+ reset: number;
54
+ }>;
55
+ }
56
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/github/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAG9H;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,UAAU,CAAQ;gBAEd,OAAO,EAAE,mBAAmB;IAYxC;;OAEG;YACW,SAAS;IAgCvB;;OAEG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAY5D;;OAEG;IACG,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAoBxE;;OAEG;IACG,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAiCvE;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IA2D/D;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAwBxE;;OAEG;IACG,iBAAiB,CACrB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,WAAW,CAAC;IAiBvB;;OAEG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9D;;OAEG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB7D;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAOpE"}