@vyuhlabs/dxkit 2.6.0 → 2.7.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 (151) hide show
  1. package/CHANGELOG.md +54 -13
  2. package/README.md +208 -459
  3. package/dist/analyzers/bom/discovery.d.ts +3 -4
  4. package/dist/analyzers/bom/discovery.d.ts.map +1 -1
  5. package/dist/analyzers/bom/discovery.js +3 -4
  6. package/dist/analyzers/bom/discovery.js.map +1 -1
  7. package/dist/analyzers/bom/types.d.ts +1 -1
  8. package/dist/analyzers/dashboard/index.d.ts.map +1 -1
  9. package/dist/analyzers/dashboard/index.js +42 -5
  10. package/dist/analyzers/dashboard/index.js.map +1 -1
  11. package/dist/analyzers/quality/detailed.d.ts +8 -1
  12. package/dist/analyzers/quality/detailed.d.ts.map +1 -1
  13. package/dist/analyzers/quality/detailed.js +43 -10
  14. package/dist/analyzers/quality/detailed.js.map +1 -1
  15. package/dist/analyzers/security/detailed.d.ts +8 -1
  16. package/dist/analyzers/security/detailed.d.ts.map +1 -1
  17. package/dist/analyzers/security/detailed.js +14 -1
  18. package/dist/analyzers/security/detailed.js.map +1 -1
  19. package/dist/analyzers/tests/detailed.d.ts +8 -1
  20. package/dist/analyzers/tests/detailed.d.ts.map +1 -1
  21. package/dist/analyzers/tests/detailed.js +26 -7
  22. package/dist/analyzers/tests/detailed.js.map +1 -1
  23. package/dist/analyzers/tools/cloc.js +3 -3
  24. package/dist/analyzers/tools/cloc.js.map +1 -1
  25. package/dist/analyzers/tools/exclusions.d.ts +12 -12
  26. package/dist/analyzers/tools/exclusions.d.ts.map +1 -1
  27. package/dist/analyzers/tools/exclusions.js +27 -13
  28. package/dist/analyzers/tools/exclusions.js.map +1 -1
  29. package/dist/analyzers/tools/graphify.d.ts +39 -5
  30. package/dist/analyzers/tools/graphify.d.ts.map +1 -1
  31. package/dist/analyzers/tools/graphify.js +609 -45
  32. package/dist/analyzers/tools/graphify.js.map +1 -1
  33. package/dist/analyzers/tools/nuget-package-reference.d.ts +4 -4
  34. package/dist/analyzers/tools/nuget-package-reference.js +4 -4
  35. package/dist/analyzers/tools/osv-scanner-fix.d.ts +4 -5
  36. package/dist/analyzers/tools/osv-scanner-fix.d.ts.map +1 -1
  37. package/dist/analyzers/tools/osv-scanner-fix.js +4 -5
  38. package/dist/analyzers/tools/osv-scanner-fix.js.map +1 -1
  39. package/dist/analyzers/tools/parallel.d.ts.map +1 -1
  40. package/dist/analyzers/tools/parallel.js +7 -0
  41. package/dist/analyzers/tools/parallel.js.map +1 -1
  42. package/dist/analyzers/tools/vendored-advisor.d.ts.map +1 -1
  43. package/dist/analyzers/tools/vendored-advisor.js +3 -4
  44. package/dist/analyzers/tools/vendored-advisor.js.map +1 -1
  45. package/dist/analyzers/xlsx/licenses.d.ts +7 -7
  46. package/dist/analyzers/xlsx/licenses.js +7 -7
  47. package/dist/cli.d.ts.map +1 -1
  48. package/dist/cli.js +80 -3
  49. package/dist/cli.js.map +1 -1
  50. package/dist/dashboard/graph-adapter.d.ts +151 -0
  51. package/dist/dashboard/graph-adapter.d.ts.map +1 -0
  52. package/dist/dashboard/graph-adapter.js +415 -0
  53. package/dist/dashboard/graph-adapter.js.map +1 -0
  54. package/dist/dashboard/graph-tab.d.ts +109 -0
  55. package/dist/dashboard/graph-tab.d.ts.map +1 -0
  56. package/dist/dashboard/graph-tab.js +297 -0
  57. package/dist/dashboard/graph-tab.js.map +1 -0
  58. package/dist/dashboard/vendor/vis-network.min.js +34 -0
  59. package/dist/explore/cli/api-surface.d.ts +12 -0
  60. package/dist/explore/cli/api-surface.d.ts.map +1 -0
  61. package/dist/explore/cli/api-surface.js +57 -0
  62. package/dist/explore/cli/api-surface.js.map +1 -0
  63. package/dist/explore/cli/communities.d.ts +10 -0
  64. package/dist/explore/cli/communities.d.ts.map +1 -0
  65. package/dist/explore/cli/communities.js +47 -0
  66. package/dist/explore/cli/communities.js.map +1 -0
  67. package/dist/explore/cli/context.d.ts +16 -0
  68. package/dist/explore/cli/context.d.ts.map +1 -0
  69. package/dist/explore/cli/context.js +118 -0
  70. package/dist/explore/cli/context.js.map +1 -0
  71. package/dist/explore/cli/entry-points.d.ts +12 -0
  72. package/dist/explore/cli/entry-points.d.ts.map +1 -0
  73. package/dist/explore/cli/entry-points.js +85 -0
  74. package/dist/explore/cli/entry-points.js.map +1 -0
  75. package/dist/explore/cli/feature.d.ts +16 -0
  76. package/dist/explore/cli/feature.d.ts.map +1 -0
  77. package/dist/explore/cli/feature.js +89 -0
  78. package/dist/explore/cli/feature.js.map +1 -0
  79. package/dist/explore/cli/file.d.ts +12 -0
  80. package/dist/explore/cli/file.d.ts.map +1 -0
  81. package/dist/explore/cli/file.js +139 -0
  82. package/dist/explore/cli/file.js.map +1 -0
  83. package/dist/explore/cli/hot-files.d.ts +11 -0
  84. package/dist/explore/cli/hot-files.d.ts.map +1 -0
  85. package/dist/explore/cli/hot-files.js +63 -0
  86. package/dist/explore/cli/hot-files.js.map +1 -0
  87. package/dist/explore/context-hook.d.ts +42 -0
  88. package/dist/explore/context-hook.d.ts.map +1 -0
  89. package/dist/explore/context-hook.js +131 -0
  90. package/dist/explore/context-hook.js.map +1 -0
  91. package/dist/explore/finding-context.d.ts +69 -0
  92. package/dist/explore/finding-context.d.ts.map +1 -0
  93. package/dist/explore/finding-context.js +102 -0
  94. package/dist/explore/finding-context.js.map +1 -0
  95. package/dist/explore/format.d.ts +64 -0
  96. package/dist/explore/format.d.ts.map +1 -0
  97. package/dist/explore/format.js +99 -0
  98. package/dist/explore/format.js.map +1 -0
  99. package/dist/explore/load.d.ts +50 -0
  100. package/dist/explore/load.d.ts.map +1 -0
  101. package/dist/explore/load.js +197 -0
  102. package/dist/explore/load.js.map +1 -0
  103. package/dist/explore/queries.d.ts +413 -0
  104. package/dist/explore/queries.d.ts.map +1 -0
  105. package/dist/explore/queries.js +855 -0
  106. package/dist/explore/queries.js.map +1 -0
  107. package/dist/explore/types.d.ts +130 -0
  108. package/dist/explore/types.d.ts.map +1 -0
  109. package/dist/explore/types.js +28 -0
  110. package/dist/explore/types.js.map +1 -0
  111. package/dist/explore-cli.d.ts +45 -0
  112. package/dist/explore-cli.d.ts.map +1 -0
  113. package/dist/explore-cli.js +213 -0
  114. package/dist/explore-cli.js.map +1 -0
  115. package/dist/generator.d.ts.map +1 -1
  116. package/dist/generator.js +19 -0
  117. package/dist/generator.js.map +1 -1
  118. package/dist/languages/csharp.d.ts.map +1 -1
  119. package/dist/languages/csharp.js +31 -11
  120. package/dist/languages/csharp.js.map +1 -1
  121. package/dist/languages/go.d.ts.map +1 -1
  122. package/dist/languages/go.js +4 -0
  123. package/dist/languages/go.js.map +1 -1
  124. package/dist/languages/index.d.ts +27 -0
  125. package/dist/languages/index.d.ts.map +1 -1
  126. package/dist/languages/index.js +35 -0
  127. package/dist/languages/index.js.map +1 -1
  128. package/dist/languages/java.d.ts.map +1 -1
  129. package/dist/languages/java.js +4 -0
  130. package/dist/languages/java.js.map +1 -1
  131. package/dist/languages/kotlin.d.ts.map +1 -1
  132. package/dist/languages/kotlin.js +4 -0
  133. package/dist/languages/kotlin.js.map +1 -1
  134. package/dist/languages/python.d.ts.map +1 -1
  135. package/dist/languages/python.js +4 -0
  136. package/dist/languages/python.js.map +1 -1
  137. package/dist/languages/ruby.d.ts.map +1 -1
  138. package/dist/languages/ruby.js +4 -0
  139. package/dist/languages/ruby.js.map +1 -1
  140. package/dist/languages/rust.d.ts.map +1 -1
  141. package/dist/languages/rust.js +4 -0
  142. package/dist/languages/rust.js.map +1 -1
  143. package/dist/languages/types.d.ts +54 -0
  144. package/dist/languages/types.d.ts.map +1 -1
  145. package/dist/languages/typescript.d.ts.map +1 -1
  146. package/dist/languages/typescript.js +5 -1
  147. package/dist/languages/typescript.js.map +1 -1
  148. package/package.json +2 -1
  149. package/templates/.claude/skills/dxkit-action/SKILL.md +21 -1
  150. package/templates/.claude/skills/dxkit-reports/SKILL.md +3 -1
  151. package/templates/AGENTS.md.template +8 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/explore/queries.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Repo-explore graph types — the in-memory shape consumed by
3
+ * `src/explore/queries.ts`, `src/dashboard/graph-adapter.ts`, and
4
+ * future graph-consuming CLIs (2.8 context CLI, 2.8 reachability).
5
+ *
6
+ * The on-disk wire format at `.dxkit/reports/graph.json` is the
7
+ * `GraphJson` shape (see schema doc tmp/2.7-graph-json-schema.md).
8
+ * The loader at `./load.ts:loadGraph` validates the wire format
9
+ * + returns a `Graph` (the same shape plus convenience indices
10
+ * that don't need to live on disk).
11
+ *
12
+ * Per CLAUDE.md Rule 12, every consumer reads via `loadGraph` —
13
+ * never `JSON.parse` directly. Arch-check enforces.
14
+ */
15
+ import type { LanguageId } from '../types';
16
+ /** Current schema version. Bump on breaking change; loader handles migration. */
17
+ export declare const GRAPH_SCHEMA_VERSION = 1;
18
+ /**
19
+ * Canonical disk location for the graph artifact, relative to cwd.
20
+ * Producer (`src/analyzers/tools/graphify.ts:gatherGraphifyGraph`) writes
21
+ * here; consumer (`src/explore/load.ts:loadGraph`) reads here. Defined
22
+ * once in this types module so both sides agree on the path without an
23
+ * awkward `tools → explore/load` import direction.
24
+ */
25
+ export declare const GRAPH_REPORT_PATH = ".dxkit/reports/graph.json";
26
+ export type GraphNodeKind = 'function' | 'class' | 'method' | 'module';
27
+ export type GraphEdgeRelation = 'calls' | 'imports_from' | 'method';
28
+ export type ExportDetectionReliability = 'full' | 'partial' | 'unreliable';
29
+ /**
30
+ * A single graph node — a function, class, method, or module
31
+ * surfaced by graphify's tree-sitter extraction.
32
+ *
33
+ * `exported` is OPTIONAL per the schema's "absent = unknown"
34
+ * convention: only populated when the language pack's
35
+ * `exportDetection.reliability` is 'full' or 'partial' AND the
36
+ * line-scan succeeded. Consumers handle absent / `true` / `false`
37
+ * as three distinct states (absent ≠ false).
38
+ */
39
+ export interface GraphNode {
40
+ readonly id: string;
41
+ readonly kind: GraphNodeKind;
42
+ readonly label: string;
43
+ readonly sourceFile: string;
44
+ readonly line?: number;
45
+ readonly exported?: boolean;
46
+ }
47
+ /**
48
+ * A directed edge between two nodes. `occurrences` only populated
49
+ * for `calls` edges; `importedSymbol` only populated for
50
+ * `imports_from` edges when graphify surfaces the per-symbol info
51
+ * (today: omitted; reserved for future graphify extension).
52
+ */
53
+ export interface GraphEdge {
54
+ readonly from: string;
55
+ readonly to: string;
56
+ readonly relation: GraphEdgeRelation;
57
+ readonly occurrences?: number;
58
+ readonly importedSymbol?: string;
59
+ }
60
+ /**
61
+ * A Louvain-clustered grouping of nodes. `cohesion` in [0, 1].
62
+ * `dominantSourceDir` is the most common ancestor directory among
63
+ * member nodes' source files; `dominantPack` is the most common
64
+ * language pack. Both empty strings when no clear dominance.
65
+ */
66
+ export interface Community {
67
+ readonly id: number;
68
+ readonly nodeIds: ReadonlyArray<string>;
69
+ readonly cohesion: number;
70
+ readonly dominantSourceDir: string;
71
+ readonly dominantPack: string;
72
+ }
73
+ /**
74
+ * Case-insensitive symbol-name lookup. Keys are lowercased labels
75
+ * (with the trailing `()` stripped for function/method labels);
76
+ * values are arrays of nodeIds matching the key. Used by the
77
+ * explore CLI's `feature <keyword>` query and the dashboard viz
78
+ * search box for O(1) lookup.
79
+ */
80
+ export type SymbolIndex = Readonly<Record<string, ReadonlyArray<string>>>;
81
+ /**
82
+ * Top-level metadata: tool versions, generation time, file counts,
83
+ * active packs, truncation status. `truncated: true` means the
84
+ * size-budget enforcer dropped data (see `truncatedReason` for what).
85
+ * `truncatedReason` is non-empty iff `truncated: true`.
86
+ *
87
+ * Note: no `cwd` field — we don't write absolute paths to a file
88
+ * that might get shared. Source files are project-relative
89
+ * throughout.
90
+ */
91
+ export interface GraphMeta {
92
+ readonly tool: 'graphify';
93
+ readonly graphifyVersion: string;
94
+ readonly dxkitVersion: string;
95
+ readonly generatedAt: string;
96
+ readonly sourceFilesInGraph: number;
97
+ readonly excludedFileCount: number;
98
+ readonly packs: ReadonlyArray<LanguageId>;
99
+ readonly truncated: boolean;
100
+ readonly truncatedReason: string;
101
+ }
102
+ /**
103
+ * The on-disk wire format. Matches the schema doc at
104
+ * `tmp/2.7-graph-json-schema.md`. `schemaVersion` at root level
105
+ * matches the existing `StructuralResult` envelope pattern.
106
+ */
107
+ export interface GraphJson {
108
+ readonly schemaVersion: number;
109
+ readonly meta: GraphMeta;
110
+ readonly nodes: ReadonlyArray<GraphNode>;
111
+ readonly edges: ReadonlyArray<GraphEdge>;
112
+ readonly communities: ReadonlyArray<Community>;
113
+ readonly symbolIndex: SymbolIndex;
114
+ }
115
+ /**
116
+ * In-memory graph representation. Extends `GraphJson` with
117
+ * convenience indices the wire format doesn't carry — built once
118
+ * by the loader; pure-function queries in `./queries.ts` read from
119
+ * these maps for O(1) lookup instead of repeatedly scanning the
120
+ * arrays.
121
+ */
122
+ export interface Graph extends GraphJson {
123
+ readonly nodeById: ReadonlyMap<string, GraphNode>;
124
+ readonly edgesFromNode: ReadonlyMap<string, ReadonlyArray<GraphEdge>>;
125
+ readonly edgesToNode: ReadonlyMap<string, ReadonlyArray<GraphEdge>>;
126
+ readonly nodesByFile: ReadonlyMap<string, ReadonlyArray<GraphNode>>;
127
+ readonly communityById: ReadonlyMap<number, Community>;
128
+ readonly communityByNode: ReadonlyMap<string, Community>;
129
+ }
130
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/explore/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ /**
3
+ * Repo-explore graph types — the in-memory shape consumed by
4
+ * `src/explore/queries.ts`, `src/dashboard/graph-adapter.ts`, and
5
+ * future graph-consuming CLIs (2.8 context CLI, 2.8 reachability).
6
+ *
7
+ * The on-disk wire format at `.dxkit/reports/graph.json` is the
8
+ * `GraphJson` shape (see schema doc tmp/2.7-graph-json-schema.md).
9
+ * The loader at `./load.ts:loadGraph` validates the wire format
10
+ * + returns a `Graph` (the same shape plus convenience indices
11
+ * that don't need to live on disk).
12
+ *
13
+ * Per CLAUDE.md Rule 12, every consumer reads via `loadGraph` —
14
+ * never `JSON.parse` directly. Arch-check enforces.
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.GRAPH_REPORT_PATH = exports.GRAPH_SCHEMA_VERSION = void 0;
18
+ /** Current schema version. Bump on breaking change; loader handles migration. */
19
+ exports.GRAPH_SCHEMA_VERSION = 1;
20
+ /**
21
+ * Canonical disk location for the graph artifact, relative to cwd.
22
+ * Producer (`src/analyzers/tools/graphify.ts:gatherGraphifyGraph`) writes
23
+ * here; consumer (`src/explore/load.ts:loadGraph`) reads here. Defined
24
+ * once in this types module so both sides agree on the path without an
25
+ * awkward `tools → explore/load` import direction.
26
+ */
27
+ exports.GRAPH_REPORT_PATH = '.dxkit/reports/graph.json';
28
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/explore/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAIH,iFAAiF;AACpE,QAAA,oBAAoB,GAAG,CAAC,CAAC;AAEtC;;;;;;GAMG;AACU,QAAA,iBAAiB,GAAG,2BAA2B,CAAC"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Top-level dispatcher for the `vyuh-dxkit explore` subcommand family.
3
+ * The CLI (`src/cli.ts`) routes `case 'explore'` here; this module
4
+ * dispatches the inner subcommand to the appropriate handler.
5
+ *
6
+ * Six subcommands per the Sprint 0 design (`tmp/2.7-explore-cli-design.md`):
7
+ * - entry-points — what does this repo do?
8
+ * - hot-files — what's central? (top files by call in-degree)
9
+ * - file <path> — drill into one file's neighborhood
10
+ * - feature <kw> — where is X implemented?
11
+ * - communities — natural-module summary
12
+ * - api-surface — exported symbols with no internal callers
13
+ *
14
+ * Architecture:
15
+ * - This file owns argument parsing + subcommand routing only.
16
+ * - All graph data comes from `loadGraph(cwd)` (canonical loader,
17
+ * CLAUDE.md Rule 12).
18
+ * - All graph traversal flows through `./explore/queries.ts`
19
+ * (canonical query module, also Rule 12).
20
+ * - Output formatting (JSON envelope + markdown tables) flows
21
+ * through `./explore/format.ts`.
22
+ *
23
+ * Sprint 1 landed the loader + types + query primitives. Sprint 2
24
+ * adds the high-level queries + subcommand handlers below as each
25
+ * lands.
26
+ */
27
+ export interface ExploreCliValues {
28
+ json?: boolean;
29
+ limit?: string;
30
+ refresh?: boolean;
31
+ substring?: boolean;
32
+ filter?: string;
33
+ /** `context` only — token ceiling on the rendered subgraph. */
34
+ budget?: string;
35
+ /** `context` only — optional hard ceiling on BFS hop depth. */
36
+ depth?: string;
37
+ }
38
+ /**
39
+ * Entry point called from `src/cli.ts:case 'explore'`. Receives the
40
+ * already-parsed `values` from the top-level `parseArgs` plus the
41
+ * positional arguments after `'explore'` (subcommand name + any
42
+ * subcommand-specific args).
43
+ */
44
+ export declare function runExplore(cwd: string, positionals: ReadonlyArray<string>, values: ExploreCliValues): Promise<void>;
45
+ //# sourceMappingURL=explore-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"explore-cli.d.ts","sourceRoot":"","sources":["../src/explore-cli.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAoBH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAC9B,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,EAClC,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,IAAI,CAAC,CAwDf"}
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+ /**
3
+ * Top-level dispatcher for the `vyuh-dxkit explore` subcommand family.
4
+ * The CLI (`src/cli.ts`) routes `case 'explore'` here; this module
5
+ * dispatches the inner subcommand to the appropriate handler.
6
+ *
7
+ * Six subcommands per the Sprint 0 design (`tmp/2.7-explore-cli-design.md`):
8
+ * - entry-points — what does this repo do?
9
+ * - hot-files — what's central? (top files by call in-degree)
10
+ * - file <path> — drill into one file's neighborhood
11
+ * - feature <kw> — where is X implemented?
12
+ * - communities — natural-module summary
13
+ * - api-surface — exported symbols with no internal callers
14
+ *
15
+ * Architecture:
16
+ * - This file owns argument parsing + subcommand routing only.
17
+ * - All graph data comes from `loadGraph(cwd)` (canonical loader,
18
+ * CLAUDE.md Rule 12).
19
+ * - All graph traversal flows through `./explore/queries.ts`
20
+ * (canonical query module, also Rule 12).
21
+ * - Output formatting (JSON envelope + markdown tables) flows
22
+ * through `./explore/format.ts`.
23
+ *
24
+ * Sprint 1 landed the loader + types + query primitives. Sprint 2
25
+ * adds the high-level queries + subcommand handlers below as each
26
+ * lands.
27
+ */
28
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
29
+ if (k2 === undefined) k2 = k;
30
+ var desc = Object.getOwnPropertyDescriptor(m, k);
31
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
32
+ desc = { enumerable: true, get: function() { return m[k]; } };
33
+ }
34
+ Object.defineProperty(o, k2, desc);
35
+ }) : (function(o, m, k, k2) {
36
+ if (k2 === undefined) k2 = k;
37
+ o[k2] = m[k];
38
+ }));
39
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
40
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
41
+ }) : function(o, v) {
42
+ o["default"] = v;
43
+ });
44
+ var __importStar = (this && this.__importStar) || (function () {
45
+ var ownKeys = function(o) {
46
+ ownKeys = Object.getOwnPropertyNames || function (o) {
47
+ var ar = [];
48
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
49
+ return ar;
50
+ };
51
+ return ownKeys(o);
52
+ };
53
+ return function (mod) {
54
+ if (mod && mod.__esModule) return mod;
55
+ var result = {};
56
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
57
+ __setModuleDefault(result, mod);
58
+ return result;
59
+ };
60
+ })();
61
+ Object.defineProperty(exports, "__esModule", { value: true });
62
+ exports.runExplore = runExplore;
63
+ const node_child_process_1 = require("node:child_process");
64
+ const node_fs_1 = require("node:fs");
65
+ const path = __importStar(require("node:path"));
66
+ const load_1 = require("./explore/load");
67
+ const api_surface_1 = require("./explore/cli/api-surface");
68
+ const communities_1 = require("./explore/cli/communities");
69
+ const context_1 = require("./explore/cli/context");
70
+ const entry_points_1 = require("./explore/cli/entry-points");
71
+ const feature_1 = require("./explore/cli/feature");
72
+ const file_1 = require("./explore/cli/file");
73
+ const hot_files_1 = require("./explore/cli/hot-files");
74
+ /**
75
+ * Entry point called from `src/cli.ts:case 'explore'`. Receives the
76
+ * already-parsed `values` from the top-level `parseArgs` plus the
77
+ * positional arguments after `'explore'` (subcommand name + any
78
+ * subcommand-specific args).
79
+ */
80
+ async function runExplore(cwd, positionals, values) {
81
+ const subcommand = positionals[0];
82
+ if (!subcommand) {
83
+ printExploreHelp();
84
+ return;
85
+ }
86
+ // Honor --refresh by regenerating graph.json before query. The
87
+ // simplest implementation: shell out to `vyuh-dxkit health` (which
88
+ // produces graph.json as a side effect via gatherLayer2Parallel).
89
+ if (values.refresh) {
90
+ await refreshGraph(cwd);
91
+ }
92
+ const graph = loadGraphOrExit(cwd);
93
+ switch (subcommand) {
94
+ case 'hot-files':
95
+ (0, hot_files_1.runHotFiles)(graph, positionals.slice(1), values);
96
+ return;
97
+ case 'communities':
98
+ (0, communities_1.runCommunities)(graph, positionals.slice(1), values);
99
+ return;
100
+ case 'file':
101
+ (0, file_1.runFile)(graph, positionals.slice(1), values, cwd);
102
+ return;
103
+ case 'entry-points':
104
+ (0, entry_points_1.runEntryPoints)(graph, positionals.slice(1), values, cwd);
105
+ return;
106
+ case 'api-surface':
107
+ (0, api_surface_1.runApiSurface)(graph, positionals.slice(1), values);
108
+ return;
109
+ case 'feature':
110
+ (0, feature_1.runFeature)(graph, positionals.slice(1), values);
111
+ return;
112
+ case 'context':
113
+ (0, context_1.runContext)(graph, positionals.slice(1), values);
114
+ return;
115
+ case 'help':
116
+ case '--help':
117
+ case '-h':
118
+ printExploreHelp();
119
+ return;
120
+ default:
121
+ process.stderr.write(`Unknown explore subcommand: ${subcommand}\n\n`);
122
+ printExploreHelp();
123
+ process.exit(1);
124
+ }
125
+ }
126
+ /**
127
+ * Load the graph and exit with a typed error message on failure.
128
+ * Centralized so every subcommand gets the same diagnostic prose +
129
+ * exit codes per the Sprint 0 spec (2 = not found, 3 = schema
130
+ * mismatch, 4 = corrupt).
131
+ */
132
+ function loadGraphOrExit(cwd) {
133
+ try {
134
+ return (0, load_1.loadGraph)(cwd);
135
+ }
136
+ catch (err) {
137
+ if (err instanceof load_1.GraphNotFoundError) {
138
+ process.stderr.write(`${err.message}\n`);
139
+ process.exit(2);
140
+ }
141
+ if (err instanceof load_1.GraphSchemaVersionError) {
142
+ process.stderr.write(`${err.message}\n`);
143
+ process.exit(3);
144
+ }
145
+ if (err instanceof load_1.GraphCorruptError) {
146
+ process.stderr.write(`${err.message}\n`);
147
+ process.exit(4);
148
+ }
149
+ throw err;
150
+ }
151
+ }
152
+ /**
153
+ * Shell out to `vyuh-dxkit health` to regenerate graph.json. Uses
154
+ * the locally-installed dxkit (resolved via the same `bin` script
155
+ * the user invoked). Output streams through to the terminal so the
156
+ * user sees the health run's progress.
157
+ */
158
+ async function refreshGraph(cwd) {
159
+ // Resolve the current dxkit entry point. The caller's CLI script
160
+ // lives at one of two places depending on install flavor; both
161
+ // resolve via the same node entry.
162
+ const dxkitBin = resolveDxkitBin();
163
+ return new Promise((resolve, reject) => {
164
+ const child = (0, node_child_process_1.spawn)('node', [dxkitBin, 'health', cwd], {
165
+ stdio: 'inherit',
166
+ cwd,
167
+ });
168
+ child.on('exit', (code) => {
169
+ if (code === 0)
170
+ resolve();
171
+ else
172
+ reject(new Error(`vyuh-dxkit health exited with code ${code}`));
173
+ });
174
+ child.on('error', reject);
175
+ });
176
+ }
177
+ function resolveDxkitBin() {
178
+ // dist/explore-cli.js → dist/index.js
179
+ const distEntry = path.resolve(__dirname, 'index.js');
180
+ if ((0, node_fs_1.existsSync)(distEntry))
181
+ return distEntry;
182
+ // Fallback for local dev where __dirname might be elsewhere.
183
+ return 'node_modules/@vyuhlabs/dxkit/dist/index.js';
184
+ }
185
+ function printExploreHelp() {
186
+ process.stderr.write(`
187
+ vyuh-dxkit explore <subcommand> [args] [flags]
188
+
189
+ Subcommands:
190
+ hot-files Files most depended on (top by call in-degree)
191
+ entry-points Route handlers / controllers / forms
192
+ file <path> Symbols + callers/callees for one file
193
+ feature <keyword> Where is feature X implemented?
194
+ communities Natural-module clusters
195
+ api-surface Exported symbols with no internal callers
196
+ context <query> Slim structural slice for a query (token-reduction;
197
+ also available as the top-level 'vyuh-dxkit context')
198
+
199
+ Flags (all subcommands):
200
+ --json Emit structured JSON envelope
201
+ --limit N Cap result count (per-subcommand defaults)
202
+ --refresh Force-regenerate graph.json before query
203
+
204
+ context-only flags:
205
+ --budget N Token ceiling on the slice (default 2000)
206
+ --depth N Hard ceiling on call-graph hops (default: budget-bounded)
207
+ --substring Broaden keyword matching to substrings
208
+
209
+ Reads from .dxkit/reports/graph.json. Run \`vyuh-dxkit health\` first
210
+ to generate the artifact.
211
+ `);
212
+ }
213
+ //# sourceMappingURL=explore-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"explore-cli.js","sourceRoot":"","sources":["../src/explore-cli.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCH,gCA4DC;AAhGD,2DAA2C;AAC3C,qCAAqC;AACrC,gDAAkC;AAClC,yCAKwB;AACxB,2DAA0D;AAC1D,2DAA2D;AAC3D,mDAAmD;AACnD,6DAA4D;AAC5D,mDAAmD;AACnD,6CAA6C;AAC7C,uDAAsD;AAetD;;;;;GAKG;AACI,KAAK,UAAU,UAAU,CAC9B,GAAW,EACX,WAAkC,EAClC,MAAwB;IAExB,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,gBAAgB,EAAE,CAAC;QACnB,OAAO;IACT,CAAC;IAED,+DAA+D;IAC/D,mEAAmE;IACnE,kEAAkE;IAClE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAEnC,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,WAAW;YACd,IAAA,uBAAW,EAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YACjD,OAAO;QAET,KAAK,aAAa;YAChB,IAAA,4BAAc,EAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YACpD,OAAO;QAET,KAAK,MAAM;YACT,IAAA,cAAO,EAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YAClD,OAAO;QAET,KAAK,cAAc;YACjB,IAAA,6BAAc,EAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YACzD,OAAO;QAET,KAAK,aAAa;YAChB,IAAA,2BAAa,EAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YACnD,OAAO;QAET,KAAK,SAAS;YACZ,IAAA,oBAAU,EAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YAChD,OAAO;QAET,KAAK,SAAS;YACZ,IAAA,oBAAU,EAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YAChD,OAAO;QAET,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,gBAAgB,EAAE,CAAC;YACnB,OAAO;QAET;YACE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,UAAU,MAAM,CAAC,CAAC;YACtE,gBAAgB,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,IAAI,CAAC;QACH,OAAO,IAAA,gBAAS,EAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,yBAAkB,EAAE,CAAC;YACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,GAAG,YAAY,8BAAuB,EAAE,CAAC;YAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,GAAG,YAAY,wBAAiB,EAAE,CAAC;YACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,YAAY,CAAC,GAAW;IACrC,iEAAiE;IACjE,+DAA+D;IAC/D,mCAAmC;IACnC,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;IACnC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,KAAK,GAAG,IAAA,0BAAK,EAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE;YACrD,KAAK,EAAE,SAAS;YAChB,GAAG;SACJ,CAAC,CAAC;QACH,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACxB,IAAI,IAAI,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;;gBACrB,MAAM,CAAC,IAAI,KAAK,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe;IACtB,sCAAsC;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACtD,IAAI,IAAA,oBAAU,EAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5C,6DAA6D;IAC7D,OAAO,4CAA4C,CAAC;AACtD,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;CAyBtB,CAAC,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AA6FnE,UAAU,cAAc;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,OAAO,EACd,OAAO,UAAQ,EACf,eAAe,UAAQ,GACtB,OAAO,CAAC,cAAc,CAAC,CAmHzB"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAgHnE,UAAU,cAAc;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,OAAO,EACd,OAAO,UAAQ,EACf,eAAe,UAAQ,GACtB,OAAO,CAAC,cAAc,CAAC,CAmHzB"}
package/dist/generator.js CHANGED
@@ -85,6 +85,25 @@ function buildSettingsJson(config) {
85
85
  allow: perms,
86
86
  deny: [],
87
87
  },
88
+ // PreToolUse hook on code-search tools: injects a slim graph
89
+ // subgraph as additional context so the agent needs fewer
90
+ // follow-up whole-file reads (the navigation-layer token win).
91
+ // ADDITIVE + FAIL-OPEN by construction — `context-hook` only
92
+ // ever adds context and silently no-ops when graph.json is
93
+ // absent/stale, so the search tool always works normally.
94
+ hooks: {
95
+ PreToolUse: [
96
+ {
97
+ matcher: 'Grep|Glob',
98
+ hooks: [
99
+ {
100
+ type: 'command',
101
+ command: 'npx vyuh-dxkit context-hook',
102
+ },
103
+ ],
104
+ },
105
+ ],
106
+ },
88
107
  }, null, 2) + '\n');
89
108
  }
90
109
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"csharp.d.ts","sourceRoot":"","sources":["../../src/languages/csharp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,6BAA6B,CAAC;AAmB1E,OAAO,KAAK,EAEV,cAAc,EASd,cAAc,EAEf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAuC/C,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAoC/F;AA8GD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,MAAM,GACV;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,cAAc,EAAE,CAAA;CAAE,GAAG,IAAI,CA2D/D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,GACV;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,GAAG,IAAI,CAqCjE;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE;IAClD,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjC,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;CACjD,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAsBxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAe9D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAExD;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,CAAC;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,CAAC,GAC9E;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,CAY1D;AAggBD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAQjE;AAoSD,eAAO,MAAM,MAAM,EAAE,eA4JpB,CAAC"}
1
+ {"version":3,"file":"csharp.d.ts","sourceRoot":"","sources":["../../src/languages/csharp.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,6BAA6B,CAAC;AAmB1E,OAAO,KAAK,EAEV,cAAc,EASd,cAAc,EAEf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAuC/C,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAoC/F;AA8GD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,MAAM,GACV;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,cAAc,EAAE,CAAA;CAAE,GAAG,IAAI,CA2D/D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,GACV;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,GAAG,IAAI,CAqCjE;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE;IAClD,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACjC,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;CACjD,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAsBxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAe9D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAExD;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,CAAC;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,CAAC,GAC9E;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,CAY1D;AA+fD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAQjE;AAoSD,eAAO,MAAM,MAAM,EAAE,eAmLpB,CAAC"}
@@ -733,14 +733,13 @@ async function gatherCsharpDepVulnsResult(cwd) {
733
733
  * `.csproj` or `.sln` file. Used as the depVulns gather preflight —
734
734
  * `dotnet list package --vulnerable` needs a project file in scope.
735
735
  *
736
- * Depth 5 mirrors `csharp.detect()`'s recursive walk (D024 / 2.4.7):
737
- * enterprise layouts like the .NET WinForms benchmark nest .csproj under
738
- * `Code/Source/Dev/Core/<Module>/`. Pre-D035, this was a depth-1
739
- * custom walk; symmetrical with detect()'s old depth-3 limit until
740
- * D024 broke the symmetry. The Sprint A validation
741
- * (2026-05-12) surfaced the inconsistency D025c's tool-registry
742
- * probe was unreachable from `Code/Source/` because this preflight
743
- * rejected before reaching it. See D035 in tmp/known-defects.md.
736
+ * Depth 5 mirrors `csharp.detect()`'s recursive walk: deeply-nested
737
+ * enterprise layouts nest .csproj several levels down, e.g.
738
+ * `app/modules/Core/<Module>/`. An earlier depth-1 custom walk left
739
+ * the deeper project files unreachable the tool-registry probe
740
+ * couldn't see a .csproj because this preflight rejected before
741
+ * descending far enough. The depth-5 walk restores symmetry with
742
+ * detect().
744
743
  */
745
744
  function hasCsharpProject(cwd) {
746
745
  return (dirHasMatching(cwd, /\.(sln|csproj)$/) ||
@@ -1177,6 +1176,17 @@ exports.csharp = {
1177
1176
  '*.generated.cs',
1178
1177
  '*.AssemblyInfo.cs',
1179
1178
  '*.AssemblyAttributes.cs',
1179
+ // Plain `AssemblyInfo.cs` (no prefix) is the canonical .NET
1180
+ // Framework per-project file Visual Studio writes into
1181
+ // `Properties/AssemblyInfo.cs`. It carries the `[assembly: ...]`
1182
+ // attributes (Version, Title, GUID) — boilerplate per project,
1183
+ // not human-authored business logic. The `*.AssemblyInfo.cs`
1184
+ // glob above only matches prefixed variants
1185
+ // (`MyProject.AssemblyInfo.cs`) emitted by some custom build
1186
+ // scripts; the unprefixed form covers vanilla VS projects.
1187
+ // The .NET WinForms benchmark had 38 such files post 2.7 fix
1188
+ // (Properties/AssemblyInfo.cs inside each .csproj subtree).
1189
+ 'AssemblyInfo.cs',
1180
1190
  // WCF "Connected Services" auto-generated proxy classes
1181
1191
  // (svcutil.exe / Add Service Reference). The .NET WinForms
1182
1192
  // benchmark's `Reference.cs` was 42,370 lines of WCF proxy. Other tools'
@@ -1186,6 +1196,16 @@ exports.csharp = {
1186
1196
  ],
1187
1197
  // D027 (2.4.7): C# uses XML-doc triple-slash comments above
1188
1198
  // public APIs. Pre-D027 the generic doc-comment heuristic
1199
+ exportDetection: {
1200
+ reliability: 'full',
1201
+ strategy: '`public` access modifier on type and member declarations',
1202
+ },
1203
+ // graphify can't resolve `using`-directive call targets across
1204
+ // assemblies, so most .cs files surface zero callers even when
1205
+ // heavily depended upon. Blast radius is therefore not trustworthy
1206
+ // for C#: consumers suppress the caller count rather than let a false
1207
+ // "0 callers" read as "safe to change".
1208
+ callGraphReliability: 'unreliable',
1189
1209
  // matched JSDoc `/**` only, so the .NET WinForms benchmark's 3,234 .cs files
1190
1210
  // contributed zero to docCommentFiles even though many carry
1191
1211
  // `/// <summary>` blocks. POSIX class `[[:space:]]` for cross-
@@ -1249,9 +1269,9 @@ exports.csharp = {
1249
1269
  },
1250
1270
  clocLanguageNames: ['C#'],
1251
1271
  detect(cwd) {
1252
- // Depth 5 covers enterprise .NET layouts like
1253
- // `Code/Source/Dev/Core/<Module>/<Module>.csproj` (D024).
1254
- // Lower limits silently miss these from the repo root.
1272
+ // Depth 5 covers deeply-nested enterprise .NET layouts like
1273
+ // `app/modules/Core/<Module>/<Module>.csproj`. Lower limits
1274
+ // silently miss these from the repo root.
1255
1275
  return (dirHasMatching(cwd, /\.(sln|csproj)$/) ||
1256
1276
  (0, walk_paths_1.walkPaths)(cwd, { extensions: ['.csproj', '.sln'] }).length > 0);
1257
1277
  },