audit-tools 0.32.57 → 0.32.59

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/dist/audit/cli/prompts.d.ts.map +1 -1
  2. package/dist/audit/cli/prompts.js +5 -1
  3. package/dist/audit/cli/prompts.js.map +1 -1
  4. package/dist/audit/extractors/disposition.d.ts +35 -39
  5. package/dist/audit/extractors/disposition.d.ts.map +1 -1
  6. package/dist/audit/extractors/disposition.js +161 -57
  7. package/dist/audit/extractors/disposition.js.map +1 -1
  8. package/dist/audit/validation/artifacts.d.ts.map +1 -1
  9. package/dist/audit/validation/artifacts.js +4 -10
  10. package/dist/audit/validation/artifacts.js.map +1 -1
  11. package/dist/remediate/index.d.ts.map +1 -1
  12. package/dist/remediate/index.js +24 -0
  13. package/dist/remediate/index.js.map +1 -1
  14. package/dist/remediate/riskSignal.d.ts +12 -0
  15. package/dist/remediate/riskSignal.d.ts.map +1 -1
  16. package/dist/remediate/riskSignal.js +55 -1
  17. package/dist/remediate/riskSignal.js.map +1 -1
  18. package/dist/remediate/steps/contractPipeline.d.ts +19 -0
  19. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  20. package/dist/remediate/steps/contractPipeline.js +49 -11
  21. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  22. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  23. package/dist/remediate/steps/nextStep.js +13 -6
  24. package/dist/remediate/steps/nextStep.js.map +1 -1
  25. package/dist/shared/index.d.ts +2 -2
  26. package/dist/shared/index.d.ts.map +1 -1
  27. package/dist/shared/index.js +2 -2
  28. package/dist/shared/index.js.map +1 -1
  29. package/dist/shared/io/auditToolsPaths.d.ts +9 -0
  30. package/dist/shared/io/auditToolsPaths.d.ts.map +1 -1
  31. package/dist/shared/io/auditToolsPaths.js +11 -0
  32. package/dist/shared/io/auditToolsPaths.js.map +1 -1
  33. package/dist/shared/loopCorePaths.d.ts.map +1 -1
  34. package/dist/shared/loopCorePaths.js +0 -1
  35. package/dist/shared/loopCorePaths.js.map +1 -1
  36. package/dist/shared/prompts.d.ts +9 -0
  37. package/dist/shared/prompts.d.ts.map +1 -1
  38. package/dist/shared/prompts.js +13 -0
  39. package/dist/shared/prompts.js.map +1 -1
  40. package/docs/audit-pkg/contracts.md +6 -8
  41. package/docs/audit-pkg/product.md +4 -3
  42. package/docs/audit-pkg/release.md +1 -1
  43. package/package.json +1 -1
  44. package/dist/remediate/steps/leanFastPath.d.ts +0 -32
  45. package/dist/remediate/steps/leanFastPath.d.ts.map +0 -1
  46. package/dist/remediate/steps/leanFastPath.js +0 -103
  47. package/dist/remediate/steps/leanFastPath.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/audit/cli/prompts.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { DISPATCH_PROMPT_HANDOFF_NOTE, renderQuotaCoverageNudge, renderTokenBudgetView, buildFrictionTriageBlock, } from "audit-tools/shared";
1
+ import { DISPATCH_PROMPT_HANDOFF_NOTE, renderHostScratchNote, hostScratchDir, renderQuotaCoverageNudge, renderTokenBudgetView, buildFrictionTriageBlock, } from "audit-tools/shared";
2
2
  import { renderCommand } from "./args.js";
3
3
  /**
4
4
  * Token prefix the host should use to re-invoke the backend in generated
@@ -138,6 +138,8 @@ export function renderDispatchReviewPrompt(params) {
138
138
  ...(tokenBudgetView ? [tokenBudgetView, ""] : []),
139
139
  DISPATCH_PROMPT_HANDOFF_NOTE,
140
140
  "",
141
+ renderHostScratchNote(hostScratchDir(params.artifactsDir, params.activeReviewRun.run_id)),
142
+ "",
141
143
  "Subagent prompt shape:",
142
144
  "",
143
145
  ' Read and follow the audit instructions in: <entry.prompt_path>',
@@ -266,6 +268,8 @@ export function renderRollingDispatchPrompt(params) {
266
268
  "",
267
269
  DISPATCH_PROMPT_HANDOFF_NOTE,
268
270
  "",
271
+ renderHostScratchNote(hostScratchDir(params.artifactsDir, params.runId)),
272
+ "",
269
273
  "## Result capture (no submit-packet command)",
270
274
  "",
271
275
  "Pass `entry.prompt_path` to each subagent as its instruction verbatim — the",
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/audit/cli/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../src/audit/cli/prompts.ts"],"names":[],"mappings":"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"}
@@ -7,70 +7,66 @@ import type { FileDisposition, FileDispositionStatus } from "audit-tools/shared"
7
7
  */
8
8
  export declare const VCS_IGNORED_REASON = "vcs_ignored";
9
9
  /**
10
- * At or below this many vcs-ignored files, the disposition carries one
11
- * per-file record per ignored file. Above it, ignored files are aggregated by
12
- * directory prefix so file_disposition.json stays bounded regardless of how
13
- * many files the ignore rules cover.
10
+ * Explicit out-of-scope reason for files that exist on disk but are absent
11
+ * from the git index (`git ls-files`). Citation grounding already treats the
12
+ * tracked set as the source of truth, so untracked scratch left in the audited
13
+ * tree (worker batch files, generated helper scripts) must never enter the
14
+ * auditable scope — a finding citing it could never be grounded.
14
15
  */
15
- export declare const VCS_IGNORED_PER_FILE_LIMIT = 200;
16
+ export declare const UNTRACKED_REASON = "untracked";
16
17
  /**
17
- * Guard threshold: when `git check-ignore` reports more than this share of all
18
- * candidate files as ignored, the gitignore rule is skipped (guard branch
18
+ * Guard threshold shared by both scope rules: when a rule would exclude more
19
+ * than this share of its candidate files, the rule is skipped (guard branch
19
20
  * `share_exceeded`) and only the existing targeted exclusions apply. A share
20
- * of exactly 1.0 means the audit root itself is effectively ignored (guard
21
- * branch `root_ignored`).
21
+ * of exactly 1.0 fires the rule's root guard instead (`root_ignored` /
22
+ * `root_untracked`).
22
23
  */
23
24
  export declare const VCS_IGNORED_MAX_SHARE = 0.9;
24
- export type VcsIgnoreGuardBranch = "root_ignored" | "share_exceeded";
25
- /** Bounded directory-prefix aggregate used above VCS_IGNORED_PER_FILE_LIMIT. */
26
- export interface VcsIgnoredAggregate {
27
- /** Top-level directory prefix ("." for root-level files). */
28
- prefix: string;
29
- /** Number of vcs-ignored files under the prefix. */
30
- count: number;
31
- reason: typeof VCS_IGNORED_REASON;
32
- }
25
+ export type ScopeRuleGuardBranch = "root_ignored" | "share_exceeded" | "root_untracked";
33
26
  /**
34
- * Outcome record for the gitignore disposition rule, persisted alongside the
35
- * per-file records so the scope pre-digest / intent checkpoint can surface
27
+ * Outcome record for a scope rule (gitignore / untracked), persisted alongside
28
+ * the per-file records so the scope pre-digest / intent checkpoint can surface
36
29
  * skipped-rule and guard decisions.
37
30
  */
38
- export interface VcsIgnoreSummary {
39
- /** True when gitignore-based exclusions were applied to the disposition. */
31
+ export interface ScopeRuleSummary {
32
+ /** True when the rule's exclusions were applied to the disposition. */
40
33
  applied: boolean;
41
- /** Number of candidate files `git check-ignore` reported as ignored. */
34
+ /** Number of candidate files the rule matched. */
42
35
  ignored_count: number;
43
- /** Why the gitignore rule was skipped (clean fallback or guard). */
36
+ /** Why the rule was skipped (clean fallback or guard). */
44
37
  skipped_reason?: string;
45
38
  /** Which guard branch fired when a guard skipped the rule. */
46
- guard_branch?: VcsIgnoreGuardBranch;
47
- /** Directory-prefix aggregates emitted above VCS_IGNORED_PER_FILE_LIMIT. */
48
- aggregates?: VcsIgnoredAggregate[];
39
+ guard_branch?: ScopeRuleGuardBranch;
49
40
  }
50
- /** FileDisposition enriched with the gitignore-rule outcome record. */
51
- export interface FileDispositionWithVcsIgnore extends FileDisposition {
52
- vcs_ignore?: VcsIgnoreSummary;
41
+ /** FileDisposition enriched with the per-rule outcome records. */
42
+ export interface FileDispositionWithScopeRules extends FileDisposition {
43
+ vcs_ignore?: ScopeRuleSummary;
44
+ untracked?: ScopeRuleSummary;
53
45
  }
54
- /** Injection seam for the single batched `git check-ignore` spawn (tests). */
55
- export type CheckIgnoreSpawn = (command: string, args: readonly string[], options: SpawnSyncOptionsWithStringEncoding) => SpawnSyncReturns<string>;
46
+ /** Injection seam for the batched git spawns (tests). */
47
+ export type GitSpawn = (command: string, args: readonly string[], options: SpawnSyncOptionsWithStringEncoding) => SpawnSyncReturns<string>;
56
48
  export interface BuildFileDispositionOptions {
57
49
  /**
58
50
  * Audit root. When provided (and a git work tree), enables the batched
59
- * `git check-ignore --stdin` pass that classifies vcs-ignored files
60
- * out of scope. Omit for the heuristics-only disposition.
51
+ * `git check-ignore --stdin` pass that classifies vcs-ignored files out of
52
+ * scope, followed by the batched `git ls-files` pass that classifies
53
+ * untracked files out of scope. Omit for the heuristics-only disposition.
61
54
  */
62
55
  root?: string;
63
- /** Test seam: replacement for child_process.spawnSync. */
64
- spawn?: CheckIgnoreSpawn;
56
+ /** Test seam: replacement for child_process.spawnSync on `git check-ignore`. */
57
+ spawn?: GitSpawn;
58
+ /** Test seam: replacement for child_process.spawnSync on `git ls-files`. */
59
+ lsFilesSpawn?: GitSpawn;
65
60
  }
66
61
  /**
67
62
  * Applies shared path heuristics to mark files that should be excluded or
68
63
  * down-scoped before audit planning begins. When `options.root` is provided,
69
64
  * additionally classifies vcs-ignored files out of scope via one batched
70
- * `git check-ignore --stdin` pass, with clean fallback to the heuristics-only
71
- * disposition whenever git is unavailable or a safety guard fires.
65
+ * `git check-ignore --stdin` pass, then untracked files via one batched
66
+ * `git ls-files` pass each with clean fallback to the disposition built so
67
+ * far whenever git is unavailable or a safety guard fires.
72
68
  */
73
- export declare function buildFileDisposition(repoManifest: RepoManifest, options?: BuildFileDispositionOptions): FileDispositionWithVcsIgnore;
69
+ export declare function buildFileDisposition(repoManifest: RepoManifest, options?: BuildFileDispositionOptions): FileDispositionWithScopeRules;
74
70
  export declare function buildDispositionMap(disposition?: FileDisposition): Map<string, FileDispositionStatus>;
75
71
  export declare function isAuditExcludedStatus(status: FileDispositionStatus): status is Exclude<FileDispositionStatus, "included">;
76
72
  //# sourceMappingURL=disposition.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"disposition.d.ts","sourceRoot":"","sources":["../../../src/audit/extractors/disposition.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kCAAkC,EAClC,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAuB,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAgHtG;;;GAGG;AACH,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,MAAM,MAAM,oBAAoB,GAAG,cAAc,GAAG,gBAAgB,CAAC;AAErE,gFAAgF;AAChF,MAAM,WAAW,mBAAmB;IAClC,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,kBAAkB,CAAC;CACnC;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4EAA4E;IAC5E,OAAO,EAAE,OAAO,CAAC;IACjB,wEAAwE;IACxE,aAAa,EAAE,MAAM,CAAC;IACtB,oEAAoE;IACpE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,4EAA4E;IAC5E,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAC;CACpC;AAED,uEAAuE;AACvE,MAAM,WAAW,4BAA6B,SAAQ,eAAe;IACnE,UAAU,CAAC,EAAE,gBAAgB,CAAC;CAC/B;AAED,8EAA8E;AAC9E,MAAM,MAAM,gBAAgB,GAAG,CAC7B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,EAAE,kCAAkC,KACxC,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAE9B,MAAM,WAAW,2BAA2B;IAC1C;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AA6FD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,YAAY,EAC1B,OAAO,GAAE,2BAAgC,GACxC,4BAA4B,CA+F9B;AAED,wBAAgB,mBAAmB,CACjC,WAAW,CAAC,EAAE,eAAe,GAC5B,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAIpC;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,qBAAqB,GAC5B,MAAM,IAAI,OAAO,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAQtD"}
1
+ {"version":3,"file":"disposition.d.ts","sourceRoot":"","sources":["../../../src/audit/extractors/disposition.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kCAAkC,EAClC,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAuB,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAgHtG;;;GAGG;AACH,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAEhD;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAE5C;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,MAAM,MAAM,oBAAoB,GAC5B,cAAc,GACd,gBAAgB,GAChB,gBAAgB,CAAC;AAErB;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uEAAuE;IACvE,OAAO,EAAE,OAAO,CAAC;IACjB,kDAAkD;IAClD,aAAa,EAAE,MAAM,CAAC;IACtB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,oBAAoB,CAAC;CACrC;AAED,kEAAkE;AAClE,MAAM,WAAW,6BAA8B,SAAQ,eAAe;IACpE,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED,yDAAyD;AACzD,MAAM,MAAM,QAAQ,GAAG,CACrB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,EAAE,kCAAkC,KACxC,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAE9B,MAAM,WAAW,2BAA2B;IAC1C;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,4EAA4E;IAC5E,YAAY,CAAC,EAAE,QAAQ,CAAC;CACzB;AAkTD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,YAAY,EAC1B,OAAO,GAAE,2BAAgC,GACxC,6BAA6B,CAyB/B;AAED,wBAAgB,mBAAmB,CACjC,WAAW,CAAC,EAAE,eAAe,GAC5B,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAIpC;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,qBAAqB,GAC5B,MAAM,IAAI,OAAO,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAQtD"}
@@ -1,4 +1,5 @@
1
1
  import { spawnSync } from "node:child_process";
2
+ import { normalizeRepoPath } from "audit-tools/shared";
2
3
  import { isNodeModulesOrGit, isPackageManagerCachePath, isTmpPath, isBuildOutput, isVendorPath, isBinaryArtifact, isLicensePath, isLockfilePath, isLogPath, isDocPath, isGeneratedPath, isAuditArtifactPath, isAuditToolOutputArtifact, isGeneratedTestArtifactPath, isGeneratedInstallArtifactPath, isExamplesOrFixturesPath, normalizeExtractorPath, } from "./pathPatterns.js";
3
4
  function inferDisposition(path) {
4
5
  const normalized = normalizeExtractorPath(path);
@@ -94,18 +95,19 @@ function inferDisposition(path) {
94
95
  */
95
96
  export const VCS_IGNORED_REASON = "vcs_ignored";
96
97
  /**
97
- * At or below this many vcs-ignored files, the disposition carries one
98
- * per-file record per ignored file. Above it, ignored files are aggregated by
99
- * directory prefix so file_disposition.json stays bounded regardless of how
100
- * many files the ignore rules cover.
98
+ * Explicit out-of-scope reason for files that exist on disk but are absent
99
+ * from the git index (`git ls-files`). Citation grounding already treats the
100
+ * tracked set as the source of truth, so untracked scratch left in the audited
101
+ * tree (worker batch files, generated helper scripts) must never enter the
102
+ * auditable scope — a finding citing it could never be grounded.
101
103
  */
102
- export const VCS_IGNORED_PER_FILE_LIMIT = 200;
104
+ export const UNTRACKED_REASON = "untracked";
103
105
  /**
104
- * Guard threshold: when `git check-ignore` reports more than this share of all
105
- * candidate files as ignored, the gitignore rule is skipped (guard branch
106
+ * Guard threshold shared by both scope rules: when a rule would exclude more
107
+ * than this share of its candidate files, the rule is skipped (guard branch
106
108
  * `share_exceeded`) and only the existing targeted exclusions apply. A share
107
- * of exactly 1.0 means the audit root itself is effectively ignored (guard
108
- * branch `root_ignored`).
109
+ * of exactly 1.0 fires the rule's root guard instead (`root_ignored` /
110
+ * `root_untracked`).
109
111
  */
110
112
  export const VCS_IGNORED_MAX_SHARE = 0.9;
111
113
  function toPosixPath(path) {
@@ -157,47 +159,81 @@ function evaluateVcsIgnored(root, candidatePosixPaths, spawn) {
157
159
  (stderrFirstLine ? `: ${stderrFirstLine}` : ""),
158
160
  };
159
161
  }
160
- function topLevelPrefix(posixPath) {
161
- const slash = posixPath.indexOf("/");
162
- return slash === -1 ? "." : posixPath.slice(0, slash);
163
- }
164
- function aggregateByPrefix(posixPaths) {
165
- const counts = new Map();
166
- for (const path of posixPaths) {
167
- const prefix = topLevelPrefix(path);
168
- counts.set(prefix, (counts.get(prefix) ?? 0) + 1);
169
- }
170
- return [...counts.entries()]
171
- .sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0))
172
- .map(([prefix, count]) => ({ prefix, count, reason: VCS_IGNORED_REASON }));
162
+ /**
163
+ * Enumerates the repository's tracked paths through ONE batched
164
+ * `git ls-files -z` invocation (never per-file). Output paths are repo-root
165
+ * (cwd)-relative posix, matching the manifest's normalized candidate paths.
166
+ * Anything other than exit 0 (git absent, not a work tree) = clean fallback —
167
+ * the caller skips the untracked rule. Never throws.
168
+ */
169
+ function evaluateTrackedFiles(root, spawn) {
170
+ let result;
171
+ try {
172
+ result = spawn("git", ["ls-files", "-z"], {
173
+ cwd: root,
174
+ encoding: "utf8",
175
+ maxBuffer: 256 * 1024 * 1024,
176
+ windowsHide: true,
177
+ });
178
+ }
179
+ catch (error) {
180
+ const message = error instanceof Error ? error.message : String(error);
181
+ return { ok: false, reason: `git ls-files spawn failed: ${message}` };
182
+ }
183
+ if (result.error) {
184
+ const code = result.error.code;
185
+ return {
186
+ ok: false,
187
+ reason: code === "ENOENT"
188
+ ? "git executable not found (ENOENT)"
189
+ : `git ls-files failed to start: ${result.error.message}`,
190
+ };
191
+ }
192
+ if (result.status === 0) {
193
+ return {
194
+ ok: true,
195
+ tracked: new Set((result.stdout ?? "").split("\0").filter((path) => path.length > 0)),
196
+ };
197
+ }
198
+ const stderrFirstLine = (result.stderr ?? "").trim().split(/\r?\n/, 1)[0] ?? "";
199
+ return {
200
+ ok: false,
201
+ reason: `git ls-files exited ${result.status ?? "by signal"}` +
202
+ (stderrFirstLine ? `: ${stderrFirstLine}` : ""),
203
+ };
173
204
  }
174
205
  /**
175
- * Build a skipped VcsIgnoreSummary for any guard branch or clean fallback.
176
- * All three skip return sites share the same shape; centralising here means
206
+ * Build a skipped ScopeRuleSummary for any guard branch or clean fallback.
207
+ * Every skip return site shares the same shape; centralising here means
177
208
  * future guard additions only need to call this helper.
178
209
  */
179
- function skippedVcsIgnore(skipped_reason, ignored_count = 0, guard_branch) {
210
+ function skippedRule(skipped_reason, ignored_count = 0, guard_branch) {
180
211
  return { applied: false, ignored_count, skipped_reason, guard_branch };
181
212
  }
182
213
  /**
183
- * Applies shared path heuristics to mark files that should be excluded or
184
- * down-scoped before audit planning begins. When `options.root` is provided,
185
- * additionally classifies vcs-ignored files out of scope via one batched
186
- * `git check-ignore --stdin` pass, with clean fallback to the heuristics-only
187
- * disposition whenever git is unavailable or a safety guard fires.
214
+ * Applies one scope rule's exclusions: the matched files are re-classified
215
+ * `excluded` with the rule's reason, keeping one per-file record each. Every
216
+ * manifest file MUST keep a per-file record downstream consumers
217
+ * (unit builder, coverage matrix, graph path lookup) treat a missing
218
+ * disposition entry as included, so any bounded/aggregated representation
219
+ * silently un-excludes the very files the rule matched. Only `included` items
220
+ * are ever re-classified — earlier exclusions win.
188
221
  */
189
- export function buildFileDisposition(repoManifest, options = {}) {
190
- const baseline = repoManifest.files.map((file) => inferDisposition(file.path));
191
- if (!options.root) {
192
- return { files: baseline };
193
- }
194
- const candidatePosix = repoManifest.files.map((file) => toPosixPath(file.path));
195
- const evaluation = evaluateVcsIgnored(options.root, candidatePosix, options.spawn ?? spawnSync);
222
+ function applyRuleExclusions(params) {
223
+ const { items, itemPosix, matchedPosix, reason, matchedCount } = params;
224
+ const matchedSet = new Set(matchedPosix);
225
+ const files = items.map((item, i) => item.status === "included" && matchedSet.has(itemPosix[i])
226
+ ? { path: item.path, status: "excluded", reason }
227
+ : item);
228
+ return { files, summary: { applied: true, ignored_count: matchedCount } };
229
+ }
230
+ function applyVcsIgnoreRule(baseline, candidatePosix, root, spawn) {
231
+ const evaluation = evaluateVcsIgnored(root, candidatePosix, spawn);
196
232
  if (!evaluation.ok) {
197
233
  // Clean fallback: keep the existing targeted exclusions only.
198
234
  return {
199
235
  files: baseline,
200
- vcs_ignore: skippedVcsIgnore(`gitignore rule skipped: ${evaluation.reason}`),
236
+ summary: skippedRule(`gitignore rule skipped: ${evaluation.reason}`),
201
237
  };
202
238
  }
203
239
  const total = candidatePosix.length;
@@ -207,7 +243,7 @@ export function buildFileDisposition(repoManifest, options = {}) {
207
243
  if (total > 0 && ignoredCount === total) {
208
244
  return {
209
245
  files: baseline,
210
- vcs_ignore: skippedVcsIgnore("gitignore rule skipped: audit root itself is ignored (every candidate file matched ignore rules)", ignoredCount, "root_ignored"),
246
+ summary: skippedRule("gitignore rule skipped: audit root itself is ignored (every candidate file matched ignore rules)", ignoredCount, "root_ignored"),
211
247
  };
212
248
  }
213
249
  // Share guard: an ignore rule that would exclude more than
@@ -216,7 +252,7 @@ export function buildFileDisposition(repoManifest, options = {}) {
216
252
  if (total > 0 && ignoredCount / total > VCS_IGNORED_MAX_SHARE) {
217
253
  return {
218
254
  files: baseline,
219
- vcs_ignore: skippedVcsIgnore(`gitignore rule skipped: ignored share ${(ignoredCount / total).toFixed(3)} ` +
255
+ summary: skippedRule(`gitignore rule skipped: ignored share ${(ignoredCount / total).toFixed(3)} ` +
220
256
  `exceeds VCS_IGNORED_MAX_SHARE (${VCS_IGNORED_MAX_SHARE})`, ignoredCount, "share_exceeded"),
221
257
  };
222
258
  }
@@ -229,27 +265,95 @@ export function buildFileDisposition(repoManifest, options = {}) {
229
265
  newlyIgnoredPosix.push(candidatePosix[i]);
230
266
  }
231
267
  }
232
- if (newlyIgnoredPosix.length <= VCS_IGNORED_PER_FILE_LIMIT) {
233
- const newlyIgnoredSet = new Set(newlyIgnoredPosix);
234
- const files = baseline.map((item, i) => newlyIgnoredSet.has(candidatePosix[i]) && item.status === "included"
235
- ? { path: item.path, status: "excluded", reason: VCS_IGNORED_REASON }
236
- : item);
268
+ return applyRuleExclusions({
269
+ items: baseline,
270
+ itemPosix: candidatePosix,
271
+ matchedPosix: newlyIgnoredPosix,
272
+ reason: VCS_IGNORED_REASON,
273
+ matchedCount: ignoredCount,
274
+ });
275
+ }
276
+ /**
277
+ * Re-classifies still-included files that are absent from the git index
278
+ * (`git ls-files`) out of scope. Untracked scratch left in the audited tree
279
+ * (worker batch files, generated helper scripts) otherwise enters the manifest
280
+ * via the filesystem walk while citation grounding — which treats the tracked
281
+ * set as the source of truth — can never ground findings against it, so the
282
+ * next audit's findings end up citing the previous run's litter. Runs after
283
+ * the gitignore rule (gitignored files keep their more specific reason) and
284
+ * mirrors its guards: a scope that is entirely or almost entirely untracked
285
+ * (e.g. a repository with no commits yet) skips the rule rather than emptying
286
+ * the audit.
287
+ */
288
+ function applyUntrackedRule(items, root, spawn) {
289
+ const evaluation = evaluateTrackedFiles(root, spawn);
290
+ if (!evaluation.ok) {
291
+ return {
292
+ files: items,
293
+ summary: skippedRule(`untracked rule skipped: ${evaluation.reason}`),
294
+ };
295
+ }
296
+ // Membership matching mirrors the grounding corpus' policy
297
+ // (normalizeRepoPath: separator- AND case-normalized) — a case-only drift
298
+ // between the on-disk walk and the index (case-insensitive filesystems,
299
+ // `core.ignorecase` renames) must not mark a tracked file untracked.
300
+ const tracked = new Set([...evaluation.tracked].map(normalizeRepoPath));
301
+ const itemPosix = items.map((item) => normalizeRepoPath(item.path));
302
+ const matchedPosix = [];
303
+ let candidateCount = 0;
304
+ for (let i = 0; i < items.length; i++) {
305
+ if (items[i].status !== "included")
306
+ continue;
307
+ candidateCount += 1;
308
+ if (!tracked.has(itemPosix[i])) {
309
+ matchedPosix.push(itemPosix[i]);
310
+ }
311
+ }
312
+ const matchedCount = matchedPosix.length;
313
+ // Root guard: when EVERY included candidate is untracked the repository has
314
+ // no tracked files in scope (no commits/index yet) — applying the rule would
315
+ // empty the audit scope.
316
+ if (candidateCount > 0 && matchedCount === candidateCount) {
317
+ return {
318
+ files: items,
319
+ summary: skippedRule("untracked rule skipped: every included candidate is untracked (the repository has no tracked files in the audit scope)", matchedCount, "root_untracked"),
320
+ };
321
+ }
322
+ if (candidateCount > 0 && matchedCount / candidateCount > VCS_IGNORED_MAX_SHARE) {
237
323
  return {
238
- files,
239
- vcs_ignore: { applied: true, ignored_count: ignoredCount },
324
+ files: items,
325
+ summary: skippedRule(`untracked rule skipped: untracked share ${(matchedCount / candidateCount).toFixed(3)} ` +
326
+ `of included candidates exceeds VCS_IGNORED_MAX_SHARE (${VCS_IGNORED_MAX_SHARE})`, matchedCount, "share_exceeded"),
240
327
  };
241
328
  }
242
- // Bounded representation: above the per-file limit, drop per-file records
243
- // for vcs-ignored files and emit directory-prefix aggregates instead.
244
- const newlyIgnoredSet = new Set(newlyIgnoredPosix);
245
- const files = baseline.filter((item, i) => !(item.status === "included" && newlyIgnoredSet.has(candidatePosix[i])));
329
+ return applyRuleExclusions({
330
+ items,
331
+ itemPosix,
332
+ matchedPosix,
333
+ reason: UNTRACKED_REASON,
334
+ matchedCount,
335
+ });
336
+ }
337
+ /**
338
+ * Applies shared path heuristics to mark files that should be excluded or
339
+ * down-scoped before audit planning begins. When `options.root` is provided,
340
+ * additionally classifies vcs-ignored files out of scope via one batched
341
+ * `git check-ignore --stdin` pass, then untracked files via one batched
342
+ * `git ls-files` pass — each with clean fallback to the disposition built so
343
+ * far whenever git is unavailable or a safety guard fires.
344
+ */
345
+ export function buildFileDisposition(repoManifest, options = {}) {
346
+ const baseline = repoManifest.files.map((file) => inferDisposition(file.path));
347
+ if (!options.root) {
348
+ return { files: baseline };
349
+ }
350
+ const candidatePosix = repoManifest.files.map((file) => toPosixPath(file.path));
351
+ const vcsStage = applyVcsIgnoreRule(baseline, candidatePosix, options.root, options.spawn ?? spawnSync);
352
+ const untrackedStage = applyUntrackedRule(vcsStage.files, options.root, options.lsFilesSpawn ?? spawnSync);
246
353
  return {
247
- files,
248
- vcs_ignore: {
249
- applied: true,
250
- ignored_count: ignoredCount,
251
- aggregates: aggregateByPrefix(newlyIgnoredPosix),
252
- },
354
+ files: untrackedStage.files,
355
+ vcs_ignore: vcsStage.summary,
356
+ untracked: untrackedStage.summary,
253
357
  };
254
358
  }
255
359
  export function buildDispositionMap(disposition) {
@@ -1 +1 @@
1
- {"version":3,"file":"disposition.js","sourceRoot":"","sources":["../../../src/audit/extractors/disposition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"disposition.js","sourceRoot":"","sources":["../../../src/audit/extractors/disposition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAM/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,SAAS,EACT,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,SAAS,EACT,SAAS,EACT,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,2BAA2B,EAC3B,8BAA8B,EAC9B,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAE3B,SAAS,gBAAgB,CAAC,IAAY;IACpC,MAAM,UAAU,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAEhD,IAAI,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,8CAA8C,EAAE,CAAC;IAC9F,CAAC;IACD,IAAI,yBAAyB,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1C,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,wEAAwE;SACjF,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,qEAAqE;SAC9E,CAAC;IACJ,CAAC;IACD,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IACrE,CAAC;IACD,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,6BAA6B,EAAE,CAAC;IAC3E,CAAC;IACD,IAAI,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,kCAAkC;SAC3C,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;IACxE,CAAC;IACD,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAAC;IACrF,CAAC;IACD,IAAI,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,0CAA0C,EAAE,CAAC;IAC3F,CAAC;IACD,IAAI,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;QACpC,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,2BAA2B;SACpC,CAAC;IACJ,CAAC;IACD,IAAI,yBAAyB,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1C,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,iFAAiF;SAC1F,CAAC;IACJ,CAAC;IACD,IAAI,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC;QAChC,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,0BAA0B;SACnC,CAAC;IACJ,CAAC;IACD,IAAI,2BAA2B,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,0BAA0B;SACnC,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACzE,CAAC;IACD,IAAI,8BAA8B,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,OAAO;YACL,IAAI;YACJ,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,uCAAuC;SAChD,CAAC;IACJ,CAAC;IACD,IAAI,wBAAwB,CAAC,UAAU,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,kEAAkE,EAAE,CAAC;IAClH,CAAC;IAED,OAAO;QACL,IAAI;QACJ,MAAM,EAAE,UAAU;QAClB,MAAM,EAAE,6CAA6C;KACtD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC;AAE5C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAkDzC,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC;AAMD;;;;;;GAMG;AACH,SAAS,kBAAkB,CACzB,IAAY,EACZ,mBAAsC,EACtC,KAAe;IAEf,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IAC1C,CAAC;IACD,IAAI,MAAgC,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE;YACvD,GAAG,EAAE,IAAI;YACT,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9D,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;YAC5B,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,kCAAkC,OAAO,EAAE,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,IAAI,GAAI,MAAM,CAAC,KAA+B,CAAC,IAAI,CAAC;QAC1D,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,IAAI,KAAK,QAAQ;gBACf,CAAC,CAAC,mCAAmC;gBACrC,CAAC,CAAC,qCAAqC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE;SAClE,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/C,qEAAqE;QACrE,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CACpE,CAAC;QACF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC/B,CAAC;IACD,MAAM,eAAe,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChF,OAAO;QACL,EAAE,EAAE,KAAK;QACT,MAAM,EACJ,2BAA2B,MAAM,CAAC,MAAM,IAAI,WAAW,EAAE;YACzD,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAMD;;;;;;GAMG;AACH,SAAS,oBAAoB,CAC3B,IAAY,EACZ,KAAe;IAEf,IAAI,MAAgC,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE;YACxC,GAAG,EAAE,IAAI;YACT,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;YAC5B,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,8BAA8B,OAAO,EAAE,EAAE,CAAC;IACxE,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,MAAM,IAAI,GAAI,MAAM,CAAC,KAA+B,CAAC,IAAI,CAAC;QAC1D,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EACJ,IAAI,KAAK,QAAQ;gBACf,CAAC,CAAC,mCAAmC;gBACrC,CAAC,CAAC,iCAAiC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE;SAC9D,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,IAAI,GAAG,CACd,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CACpE;SACF,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChF,OAAO;QACL,EAAE,EAAE,KAAK;QACT,MAAM,EACJ,uBAAuB,MAAM,CAAC,MAAM,IAAI,WAAW,EAAE;YACrD,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAClB,cAAsB,EACtB,aAAa,GAAG,CAAC,EACjB,YAAmC;IAEnC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC;AACzE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,mBAAmB,CAAC,MAS5B;IACC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;IACxE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAClC,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,UAAmB,EAAE,MAAM,EAAE;QAC1D,CAAC,CAAC,IAAI,CACT,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,CAAC;AAC5E,CAAC;AAED,SAAS,kBAAkB,CACzB,QAA+B,EAC/B,cAAwB,EACxB,IAAY,EACZ,KAAe;IAEf,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;IAEnE,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACnB,8DAA8D;QAC9D,OAAO;YACL,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,WAAW,CAAC,2BAA2B,UAAU,CAAC,MAAM,EAAE,CAAC;SACrE,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC;IACpC,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAClD,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAC7B,CAAC,MAAM,CAAC;IAET,6EAA6E;IAC7E,yEAAyE;IACzE,IAAI,KAAK,GAAG,CAAC,IAAI,YAAY,KAAK,KAAK,EAAE,CAAC;QACxC,OAAO;YACL,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,WAAW,CAClB,kGAAkG,EAClG,YAAY,EACZ,cAAc,CACf;SACF,CAAC;IACJ,CAAC;IACD,2DAA2D;IAC3D,wEAAwE;IACxE,2DAA2D;IAC3D,IAAI,KAAK,GAAG,CAAC,IAAI,YAAY,GAAG,KAAK,GAAG,qBAAqB,EAAE,CAAC;QAC9D,OAAO;YACL,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,WAAW,CAClB,yCAAyC,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBAC3E,kCAAkC,qBAAqB,GAAG,EAC5D,YAAY,EACZ,gBAAgB,CACjB;SACF,CAAC;IACJ,CAAC;IAED,wEAAwE;IACxE,8DAA8D;IAC9D,MAAM,iBAAiB,GAAa,EAAE,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,IACE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU;YACjC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EACzC,CAAC;YACD,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,OAAO,mBAAmB,CAAC;QACzB,KAAK,EAAE,QAAQ;QACf,SAAS,EAAE,cAAc;QACzB,YAAY,EAAE,iBAAiB;QAC/B,MAAM,EAAE,kBAAkB;QAC1B,YAAY,EAAE,YAAY;KAC3B,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,kBAAkB,CACzB,KAA4B,EAC5B,IAAY,EACZ,KAAe;IAEf,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAErD,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACnB,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,WAAW,CAAC,2BAA2B,UAAU,CAAC,MAAM,EAAE,CAAC;SACrE,CAAC;IACJ,CAAC;IAED,2DAA2D;IAC3D,0EAA0E;IAC1E,wEAAwE;IACxE,qEAAqE;IACrE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACpE,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU;YAAE,SAAS;QAC7C,cAAc,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IACD,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC;IAEzC,4EAA4E;IAC5E,6EAA6E;IAC7E,yBAAyB;IACzB,IAAI,cAAc,GAAG,CAAC,IAAI,YAAY,KAAK,cAAc,EAAE,CAAC;QAC1D,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,WAAW,CAClB,wHAAwH,EACxH,YAAY,EACZ,gBAAgB,CACjB;SACF,CAAC;IACJ,CAAC;IACD,IAAI,cAAc,GAAG,CAAC,IAAI,YAAY,GAAG,cAAc,GAAG,qBAAqB,EAAE,CAAC;QAChF,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,WAAW,CAClB,2CAA2C,CAAC,YAAY,GAAG,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBACtF,yDAAyD,qBAAqB,GAAG,EACnF,YAAY,EACZ,gBAAgB,CACjB;SACF,CAAC;IACJ,CAAC;IAED,OAAO,mBAAmB,CAAC;QACzB,KAAK;QACL,SAAS;QACT,YAAY;QACZ,MAAM,EAAE,gBAAgB;QACxB,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,YAA0B,EAC1B,UAAuC,EAAE;IAEzC,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/E,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM,cAAc,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACrD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CACvB,CAAC;IACF,MAAM,QAAQ,GAAG,kBAAkB,CACjC,QAAQ,EACR,cAAc,EACd,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,KAAK,IAAI,SAAS,CAC3B,CAAC;IACF,MAAM,cAAc,GAAG,kBAAkB,CACvC,QAAQ,CAAC,KAAK,EACd,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,YAAY,IAAI,SAAS,CAClC,CAAC;IACF,OAAO;QACL,KAAK,EAAE,cAAc,CAAC,KAAK;QAC3B,UAAU,EAAE,QAAQ,CAAC,OAAO;QAC5B,SAAS,EAAE,cAAc,CAAC,OAAO;KAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,WAA6B;IAE7B,OAAO,IAAI,GAAG,CACZ,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CACjE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,MAA6B;IAE7B,OAAO,CACL,MAAM,KAAK,UAAU;QACrB,MAAM,KAAK,WAAW;QACtB,MAAM,KAAK,QAAQ;QACnB,MAAM,KAAK,QAAQ;QACnB,MAAM,KAAK,UAAU,CACtB,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../../../src/audit/validation/artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EACL,KAAK,eAAe,EAIrB,MAAM,oBAAoB,CAAC;AAiW5B,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,cAAc,GACrB,eAAe,EAAE,CA+BnB"}
1
+ {"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../../../src/audit/validation/artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EACL,KAAK,eAAe,EAIrB,MAAM,oBAAoB,CAAC;AAuV5B,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,cAAc,GACrB,eAAe,EAAE,CA+BnB"}
@@ -104,17 +104,11 @@ function validateFileDispositionConsistency(bundle, idx, issues) {
104
104
  if (!bundle.repo_manifest || !bundle.file_disposition)
105
105
  return;
106
106
  const dispositionPaths = new Set(idx.fileDispositionEntries.map((f) => f.path));
107
- const aggregatePrefixes = new Set(asArray(bundle.file_disposition?.vcs_ignore?.aggregates).map((a) => a.prefix));
108
- const coveredByAggregate = (path) => {
109
- if (aggregatePrefixes.size === 0)
110
- return false;
111
- const posix = path.replace(/\\/g, "/");
112
- const slash = posix.indexOf("/");
113
- const prefix = slash === -1 ? "." : posix.slice(0, slash);
114
- return aggregatePrefixes.has(prefix);
115
- };
107
+ // Every manifest file must keep a per-file record — downstream consumers
108
+ // treat a missing entry as included, so there is deliberately no aggregated
109
+ // "covered by prefix" tolerance here.
116
110
  for (const path of idx.repoPaths) {
117
- if (!dispositionPaths.has(path) && !coveredByAggregate(path)) {
111
+ if (!dispositionPaths.has(path)) {
118
112
  pushIssue(issues, "file_disposition", `Missing disposition entry for ${path}`);
119
113
  }
120
114
  }