cgraphx 1.1.0 → 1.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 (201) hide show
  1. package/README.md +0 -1
  2. package/dist/.claude-template/hooks/precommit-check/precommit-check.cjs +90 -0
  3. package/dist/.claude-template/skills/cgraphx/SKILL.md +3 -3
  4. package/dist/.claude-template/skills/cgraphx/agent-prompt.md +1 -1
  5. package/dist/.claude-template/skills/cgraphx-guide/SKILL.md +94 -0
  6. package/dist/.claude-template/skills/cgraphx-guide/how-to-use.html +424 -0
  7. package/dist/.claude-template/skills/clarify-requirements/SKILL.md +19 -8
  8. package/dist/.claude-template/skills/code-impact-docgen/SKILL.md +186 -176
  9. package/dist/.claude-template/skills/code-impact-docgen/template-design-html.md +357 -0
  10. package/dist/.claude-template/skills/code-impact-docgen/template-design-md.md +164 -0
  11. package/dist/.claude-template/skills/code-impact-init/SKILL.md +47 -47
  12. package/dist/.claude-template/skills/developer-timeline/SKILL.md +9 -0
  13. package/dist/.claude-template/skills/precommit-review/SKILL.md +50 -0
  14. package/dist/.claude-template/skills/run-api-test/SKILL.md +187 -0
  15. package/dist/.claude-template/skills/run-api-test/assets/template-test-report.md +103 -0
  16. package/dist/.claude-template/skills/run-api-test/assets/template-test-verify.jsonl +5 -0
  17. package/dist/.claude-template/skills/run-api-test/references/bru-run.md +60 -0
  18. package/dist/.claude-template/skills/run-api-test/references/db-verification.md +81 -0
  19. package/dist/.claude-template/skills/run-api-test/references/report-format.md +104 -0
  20. package/dist/.claude-template/skills/run-api-test/references/service-readiness.md +61 -0
  21. package/dist/.claude-template/skills/run-api-test/references/test-scope.md +64 -0
  22. package/dist/.claude-template/skills/write-api/SKILL.md +150 -0
  23. package/dist/.claude-template/skills/write-api/assets/template-api-spec.md +112 -0
  24. package/dist/.claude-template/skills/write-api/assets/template-request.bru +75 -0
  25. package/dist/.claude-template/skills/write-api/references/ai-prompts.md +133 -0
  26. package/dist/.claude-template/skills/write-api/references/api-spec-format.md +108 -0
  27. package/dist/.claude-template/skills/write-api/references/bru-format.md +144 -0
  28. package/dist/.claude-template/skills/write-api/references/collection-layout.md +81 -0
  29. package/dist/.claude-template/skills/write-api/references/environment-setup.md +105 -0
  30. package/dist/.claude-template/skills/write-api/references/interface-scope.md +74 -0
  31. package/dist/.claude-template/skills/write-api-doc/SKILL.md +317 -0
  32. package/dist/.claude-template/skills/write-api-doc/template-api-html.md +422 -0
  33. package/dist/.claude-template/skills/write-plan/SKILL.md +38 -16
  34. package/dist/.claude-template/skills/write-prd/SKILL.md +32 -8
  35. package/dist/.claude-template/skills/write-spec/SKILL.md +34 -9
  36. package/dist/api-test/ai-fields.d.ts +37 -0
  37. package/dist/api-test/ai-fields.d.ts.map +1 -0
  38. package/dist/api-test/ai-fields.js +114 -0
  39. package/dist/api-test/ai-fields.js.map +1 -0
  40. package/dist/api-test/assemble.d.ts +76 -0
  41. package/dist/api-test/assemble.d.ts.map +1 -0
  42. package/dist/api-test/assemble.js +185 -0
  43. package/dist/api-test/assemble.js.map +1 -0
  44. package/dist/api-test/bru-cli-invoker.d.ts +72 -0
  45. package/dist/api-test/bru-cli-invoker.d.ts.map +1 -0
  46. package/dist/api-test/bru-cli-invoker.js +169 -0
  47. package/dist/api-test/bru-cli-invoker.js.map +1 -0
  48. package/dist/api-test/bru-report-parser.d.ts +24 -0
  49. package/dist/api-test/bru-report-parser.d.ts.map +1 -0
  50. package/dist/api-test/bru-report-parser.js +110 -0
  51. package/dist/api-test/bru-report-parser.js.map +1 -0
  52. package/dist/api-test/bru-runner.d.ts +101 -0
  53. package/dist/api-test/bru-runner.d.ts.map +1 -0
  54. package/dist/api-test/bru-runner.js +316 -0
  55. package/dist/api-test/bru-runner.js.map +1 -0
  56. package/dist/api-test/bru-writer.d.ts +52 -0
  57. package/dist/api-test/bru-writer.d.ts.map +1 -0
  58. package/dist/api-test/bru-writer.js +159 -0
  59. package/dist/api-test/bru-writer.js.map +1 -0
  60. package/dist/api-test/call-chain-extractor.d.ts +80 -0
  61. package/dist/api-test/call-chain-extractor.d.ts.map +1 -0
  62. package/dist/api-test/call-chain-extractor.js +179 -0
  63. package/dist/api-test/call-chain-extractor.js.map +1 -0
  64. package/dist/api-test/cli.d.ts +133 -0
  65. package/dist/api-test/cli.d.ts.map +1 -0
  66. package/dist/api-test/cli.js +1009 -0
  67. package/dist/api-test/cli.js.map +1 -0
  68. package/dist/api-test/config.d.ts +75 -0
  69. package/dist/api-test/config.d.ts.map +1 -0
  70. package/dist/api-test/config.js +406 -0
  71. package/dist/api-test/config.js.map +1 -0
  72. package/dist/api-test/db-query-cli.d.ts +51 -0
  73. package/dist/api-test/db-query-cli.d.ts.map +1 -0
  74. package/dist/api-test/db-query-cli.js +119 -0
  75. package/dist/api-test/db-query-cli.js.map +1 -0
  76. package/dist/api-test/enhance-prepare.d.ts +111 -0
  77. package/dist/api-test/enhance-prepare.d.ts.map +1 -0
  78. package/dist/api-test/enhance-prepare.js +425 -0
  79. package/dist/api-test/enhance-prepare.js.map +1 -0
  80. package/dist/api-test/enhance-write.d.ts +28 -0
  81. package/dist/api-test/enhance-write.d.ts.map +1 -0
  82. package/dist/api-test/enhance-write.js +145 -0
  83. package/dist/api-test/enhance-write.js.map +1 -0
  84. package/dist/api-test/errors.d.ts +48 -0
  85. package/dist/api-test/errors.d.ts.map +1 -0
  86. package/dist/api-test/errors.js +76 -0
  87. package/dist/api-test/errors.js.map +1 -0
  88. package/dist/api-test/field-extractor.d.ts +98 -0
  89. package/dist/api-test/field-extractor.d.ts.map +1 -0
  90. package/dist/api-test/field-extractor.js +327 -0
  91. package/dist/api-test/field-extractor.js.map +1 -0
  92. package/dist/api-test/impl-finder.d.ts +37 -0
  93. package/dist/api-test/impl-finder.d.ts.map +1 -0
  94. package/dist/api-test/impl-finder.js +54 -0
  95. package/dist/api-test/impl-finder.js.map +1 -0
  96. package/dist/api-test/index.d.ts +41 -0
  97. package/dist/api-test/index.d.ts.map +1 -0
  98. package/dist/api-test/index.js +124 -0
  99. package/dist/api-test/index.js.map +1 -0
  100. package/dist/api-test/java-parser.d.ts +89 -0
  101. package/dist/api-test/java-parser.d.ts.map +1 -0
  102. package/dist/api-test/java-parser.js +508 -0
  103. package/dist/api-test/java-parser.js.map +1 -0
  104. package/dist/api-test/md-writer.d.ts +49 -0
  105. package/dist/api-test/md-writer.d.ts.map +1 -0
  106. package/dist/api-test/md-writer.js +202 -0
  107. package/dist/api-test/md-writer.js.map +1 -0
  108. package/dist/api-test/parser-httpservice.d.ts +91 -0
  109. package/dist/api-test/parser-httpservice.d.ts.map +1 -0
  110. package/dist/api-test/parser-httpservice.js +271 -0
  111. package/dist/api-test/parser-httpservice.js.map +1 -0
  112. package/dist/api-test/report.d.ts +188 -0
  113. package/dist/api-test/report.d.ts.map +1 -0
  114. package/dist/api-test/report.js +522 -0
  115. package/dist/api-test/report.js.map +1 -0
  116. package/dist/api-test/snapshot.d.ts +26 -0
  117. package/dist/api-test/snapshot.d.ts.map +1 -0
  118. package/dist/api-test/snapshot.js +150 -0
  119. package/dist/api-test/snapshot.js.map +1 -0
  120. package/dist/api-test/test-history.d.ts +48 -0
  121. package/dist/api-test/test-history.d.ts.map +1 -0
  122. package/dist/api-test/test-history.js +122 -0
  123. package/dist/api-test/test-history.js.map +1 -0
  124. package/dist/api-test/types.d.ts +174 -0
  125. package/dist/api-test/types.d.ts.map +1 -0
  126. package/dist/api-test/types.js +13 -0
  127. package/dist/api-test/types.js.map +1 -0
  128. package/dist/api-test/verify-prepare.d.ts +30 -0
  129. package/dist/api-test/verify-prepare.d.ts.map +1 -0
  130. package/dist/api-test/verify-prepare.js +150 -0
  131. package/dist/api-test/verify-prepare.js.map +1 -0
  132. package/dist/api-test/verify-write.d.ts +31 -0
  133. package/dist/api-test/verify-write.d.ts.map +1 -0
  134. package/dist/api-test/verify-write.js +159 -0
  135. package/dist/api-test/verify-write.js.map +1 -0
  136. package/dist/bin/codegraph.js +0 -100
  137. package/dist/bin/codegraph.js.map +1 -1
  138. package/dist/dbquery/dump-schema.d.ts +46 -0
  139. package/dist/dbquery/dump-schema.d.ts.map +1 -0
  140. package/dist/dbquery/dump-schema.js +379 -0
  141. package/dist/dbquery/dump-schema.js.map +1 -0
  142. package/dist/installer/targets/claude.d.ts +15 -0
  143. package/dist/installer/targets/claude.d.ts.map +1 -1
  144. package/dist/installer/targets/claude.js +53 -0
  145. package/dist/installer/targets/claude.js.map +1 -1
  146. package/dist/resolution/index.d.ts.map +1 -1
  147. package/dist/resolution/index.js +13 -0
  148. package/dist/resolution/index.js.map +1 -1
  149. package/dist/resolution/scope-index.d.ts +86 -0
  150. package/dist/resolution/scope-index.d.ts.map +1 -0
  151. package/dist/resolution/scope-index.js +143 -0
  152. package/dist/resolution/scope-index.js.map +1 -0
  153. package/dist/resolution/stdlib-blocklist.d.ts +53 -0
  154. package/dist/resolution/stdlib-blocklist.d.ts.map +1 -0
  155. package/dist/resolution/stdlib-blocklist.js +143 -0
  156. package/dist/resolution/stdlib-blocklist.js.map +1 -0
  157. package/dist/search/ast-helpers.d.ts +42 -0
  158. package/dist/search/ast-helpers.d.ts.map +1 -0
  159. package/dist/search/ast-helpers.js +106 -0
  160. package/dist/search/ast-helpers.js.map +1 -0
  161. package/dist/search/call-sites.d.ts +398 -0
  162. package/dist/search/call-sites.d.ts.map +1 -0
  163. package/dist/search/call-sites.js +1433 -0
  164. package/dist/search/call-sites.js.map +1 -0
  165. package/dist/search/context.d.ts +134 -0
  166. package/dist/search/context.d.ts.map +1 -0
  167. package/dist/search/context.js +575 -0
  168. package/dist/search/context.js.map +1 -0
  169. package/dist/search/impact.d.ts +139 -0
  170. package/dist/search/impact.d.ts.map +1 -0
  171. package/dist/search/impact.js +646 -0
  172. package/dist/search/impact.js.map +1 -0
  173. package/dist/search/related.d.ts +178 -0
  174. package/dist/search/related.d.ts.map +1 -0
  175. package/dist/search/related.js +667 -0
  176. package/dist/search/related.js.map +1 -0
  177. package/dist/search/slice.d.ts +148 -0
  178. package/dist/search/slice.d.ts.map +1 -0
  179. package/dist/search/slice.js +460 -0
  180. package/dist/search/slice.js.map +1 -0
  181. package/dist/search/snr-constants.d.ts +41 -0
  182. package/dist/search/snr-constants.d.ts.map +1 -0
  183. package/dist/search/snr-constants.js +44 -0
  184. package/dist/search/snr-constants.js.map +1 -0
  185. package/dist/search/types.d.ts +28 -0
  186. package/dist/search/types.d.ts.map +1 -0
  187. package/dist/search/types.js +12 -0
  188. package/dist/search/types.js.map +1 -0
  189. package/dist/timeline/cli.d.ts.map +1 -1
  190. package/dist/timeline/cli.js +22 -3
  191. package/dist/timeline/cli.js.map +1 -1
  192. package/dist/timeline/store.d.ts +5 -0
  193. package/dist/timeline/store.d.ts.map +1 -1
  194. package/dist/timeline/store.js +23 -3
  195. package/dist/timeline/store.js.map +1 -1
  196. package/package.json +1 -1
  197. package/scripts/agent-eval/subagent-token-cost.py +188 -0
  198. package/dist/.claude-template/skills/code-impact-docgen/template-business-html.md +0 -242
  199. package/dist/.claude-template/skills/code-impact-docgen/template-business-md.md +0 -107
  200. package/dist/.claude-template/skills/code-impact-docgen/template-technical-html.md +0 -205
  201. package/dist/.claude-template/skills/code-impact-docgen/template-technical-md.md +0 -155
@@ -0,0 +1 @@
1
+ {"version":3,"file":"impact.js","sourceRoot":"","sources":["../../src/search/impact.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,178 @@
1
+ /**
2
+ * Related-code search — find methods / classes / files with similar names
3
+ * across the project. Cross-class retrieval: where `context` shows you a
4
+ * method's siblings in the same class, `related` shows you its peers across
5
+ * the whole codebase.
6
+ *
7
+ * MVP similarity metric: name-based (camelCase token overlap + Levenshtein
8
+ * distance + substring match). No AST signature matching, no body-shape
9
+ * analysis — those are explicit non-goals per clarify-requirements.
10
+ *
11
+ * Input is multi-granular:
12
+ * - `Class#method` — method-level: find similar methods project-wide
13
+ * - `Class` — class-level: find similar class/interface names
14
+ * - `path/to/file.java` — file-level: find files with similar basenames
15
+ * - bare `<name>` — fuzzy method search (like calls callers mode)
16
+ *
17
+ * Output: top-K matches, similarity-ranked. Same essential/recommended/optional
18
+ * tiered budget as `calls` / `impact`.
19
+ *
20
+ * Isolation: lives under `src/search/`, imports nothing from the indexed
21
+ * pipeline. Reuses call-sites helpers (listJavaFamilyFiles, DEFAULT_EXCLUDE_DIRS).
22
+ */
23
+ import type { Node as SyntaxNode } from 'web-tree-sitter';
24
+ import type { Language } from '../types';
25
+ export type RelatedQueryKind = 'method' | 'class' | 'file' | 'unknown';
26
+ export interface RelatedOptions {
27
+ /** Max results after ranking. Default 20. */
28
+ topK?: number;
29
+ /** Char budget for output. Default 4000. */
30
+ budget?: number;
31
+ /** Languages to scan. Default ['java', 'kotlin']. */
32
+ languages?: Language[];
33
+ /** Directory globs to exclude. */
34
+ excludeDirs?: string[];
35
+ /** Force recommended tier (--snippet). */
36
+ withSnippet?: boolean;
37
+ /** Force optional tier (--full). */
38
+ full?: boolean;
39
+ /** Minimum similarity score to include (0-100). Default 20 (filters pure-noise matches). */
40
+ minScore?: number;
41
+ }
42
+ export interface RelatedMatch {
43
+ /** Match kind: method_declaration / class_declaration / interface_declaration / file. */
44
+ kind: 'method' | 'class' | 'interface' | 'enum' | 'record' | 'file';
45
+ /** Display name (method name, class name, or file basename). */
46
+ name: string;
47
+ /** Qualified name when applicable (`Class#method` or ` pkg.Class`). */
48
+ qualifiedName: string;
49
+ /** File path relative to projectRoot. */
50
+ filePath: string;
51
+ /** 1-based start line of the declaration (1 for whole-file matches). */
52
+ line: number;
53
+ /** Enclosing class for method matches, else null. */
54
+ enclosingClass: string | null;
55
+ /** 0-100 similarity score. */
56
+ similarity: number;
57
+ /** Why this matched (one-line breakdown of the similarity score). */
58
+ reason: string;
59
+ /** Snippet (declaration line + 1-2 context lines). */
60
+ snippet: string;
61
+ /** Tier assigned by budget allocator. */
62
+ tier?: 'essential' | 'recommended' | 'optional';
63
+ /**
64
+ * Return type of the candidate's enclosing method (Java: explicit return type;
65
+ * Kotlin: `: Type` suffix or undefined when omitted). Used for semantic penalty.
66
+ * Omitted for file/class matches.
67
+ */
68
+ enclosingReturnType?: string;
69
+ }
70
+ export interface RelatedResult {
71
+ /** Original input. */
72
+ query: string;
73
+ /** Detected query kind. */
74
+ queryKind: RelatedQueryKind;
75
+ /** Normalized query name (e.g. `sceneCommit` extracted from `Class#sceneCommit`). */
76
+ queryName: string;
77
+ /** Total matches found above minScore. */
78
+ totalFound: number;
79
+ /** Matches returned after topK + budget. */
80
+ returned: number;
81
+ matches: RelatedMatch[];
82
+ omitted: {
83
+ belowMinScore: number;
84
+ pastTopK: number;
85
+ truncatedByBudget: number;
86
+ };
87
+ }
88
+ export declare function searchRelated(projectRoot: string, query: string, options?: RelatedOptions): Promise<RelatedResult>;
89
+ export interface SimilarityScore {
90
+ score: number;
91
+ reason: string;
92
+ }
93
+ /**
94
+ * Score name similarity 0-100. Higher = more similar.
95
+ *
96
+ * Heuristics (first match wins):
97
+ * exact match (different class) → 100
98
+ * query is exact prefix of candidate → 85 (createOrder vs createOrderAsync)
99
+ * candidate is exact prefix of query → 75
100
+ * all query tokens appear in candidate → 75 (camelCase token overlap)
101
+ * some query tokens match exactly → 30 + 10 * overlap
102
+ * Levenshtein distance ≤ 2 → 60 - dist * 10
103
+ * substring match (one contains the other) → 40
104
+ * Levenshtein distance ≤ 5 → 25
105
+ * else → 0
106
+ */
107
+ export declare function nameSimilarity(query: string, candidate: string): SimilarityScore;
108
+ /**
109
+ * Split camelCase / PascalCase identifier into lowercase tokens.
110
+ * `createOrderAsync` → ['create', 'Order', 'Async']
111
+ * `OrderService` → ['Order', 'Service']
112
+ * `ICustomerOrderService` → ['ICustomer', 'Order', 'Service']
113
+ * (note: leading `I` is preserved; we don't strip interface-prefix here)
114
+ */
115
+ export declare function camelSplit(s: string): string[];
116
+ /**
117
+ * Standard Levenshtein distance (no early termination — names are short).
118
+ */
119
+ export declare function levenshtein(a: string, b: string): number;
120
+ /**
121
+ * POJO / primitive-ish return types. A candidate whose enclosing method returns
122
+ * one of these is likely a simple accessor/converter, not the business method
123
+ * the query is after. Add more here if probe shows new patterns.
124
+ */
125
+ export declare const POJO_RETURN_TYPES: Set<string>;
126
+ /** Candidate name starts with `get`/`is`/`has` followed by an uppercase letter. */
127
+ export declare const GETTER_PREFIX: RegExp;
128
+ /** Penalty values. Tunable range per plan: -20/-15 (initial) → -25/-20 (max). */
129
+ export declare const PENALTY_POJO_VS_DOMAIN = -20;
130
+ export declare const PENALTY_GETTER_MISMATCH = -15;
131
+ export interface MethodContext {
132
+ name: string;
133
+ /** Java: explicit return type (`String`, `CreateCustomerOrderRspVo`, `void`).
134
+ * Kotlin: `: Type` suffix, or undefined when omitted (Unit inferred).
135
+ * Omitted when the candidate is not a method (e.g. file/class match). */
136
+ enclosingReturnType?: string;
137
+ }
138
+ /**
139
+ * Returns a non-positive penalty. Higher absolute value = more penalty.
140
+ *
141
+ * Rule 1: candidate returns POJO but query returns domain object → -20
142
+ * Rule 2: candidate starts with get/is/has but query doesn't → -15
143
+ * Rules stack (worst case -35 with defaults).
144
+ *
145
+ * Pure function — no I/O, no AST. Safe to unit-test directly.
146
+ */
147
+ export declare function semanticPenalty(candidate: MethodContext, queryMethod: MethodContext): number;
148
+ /**
149
+ * Extract a method's declared return type from its AST node.
150
+ *
151
+ * Java `method_declaration`: read the `type` field (tree-sitter-java exposes
152
+ * this for explicit return types). Constructors have no return type → undefined.
153
+ * Kotlin `function_declaration`: scan children for the `:` token, then take the
154
+ * following type node's text. Omitted return type (Unit inferred) → undefined.
155
+ *
156
+ * Returns undefined for unknown node shapes (defensive — caller skips penalty).
157
+ */
158
+ export declare function extractMethodReturnType(node: SyntaxNode, language: Language): string | undefined;
159
+ /**
160
+ * Derive the query method's likely return type from collected candidates.
161
+ *
162
+ * Strategy: among same-name candidates (name === queryName), pick the most
163
+ * frequent non-undefined return type. This is a heuristic — we assume the
164
+ * query method exists in the codebase and its return type appears in the
165
+ * candidate set. Returns undefined if no same-name candidate has a return type.
166
+ */
167
+ export declare function deriveQueryReturnType(candidates: RelatedMatch[], queryName: string): string | undefined;
168
+ export declare function applyRelatedTieredBudget(matches: RelatedMatch[], budget: number, opts?: {
169
+ forceRecommended?: boolean;
170
+ forceOptional?: boolean;
171
+ }): {
172
+ tiered: RelatedMatch[];
173
+ truncatedByBudget: number;
174
+ };
175
+ export declare function formatRelatedResult(result: RelatedResult, options?: {
176
+ explain?: boolean;
177
+ }): string;
178
+ //# sourceMappingURL=related.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"related.d.ts","sourceRoot":"","sources":["../../src/search/related.ts"],"names":[],"mappings":"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"}