audit-tools 0.30.12 → 0.30.14

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 (101) hide show
  1. package/dist/audit/cli/dispatch/quotaPool.d.ts.map +1 -1
  2. package/dist/audit/cli/dispatch/quotaPool.js +8 -1
  3. package/dist/audit/cli/dispatch/quotaPool.js.map +1 -1
  4. package/dist/audit/cli/mergeAndIngestCommand.d.ts +4 -1
  5. package/dist/audit/cli/mergeAndIngestCommand.d.ts.map +1 -1
  6. package/dist/audit/cli/mergeAndIngestCommand.js +27 -3
  7. package/dist/audit/cli/mergeAndIngestCommand.js.map +1 -1
  8. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  9. package/dist/audit/cli/nextStepHelpers.js +1 -2
  10. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  11. package/dist/audit/cli/workerRunCommand.d.ts.map +1 -1
  12. package/dist/audit/cli/workerRunCommand.js +23 -1
  13. package/dist/audit/cli/workerRunCommand.js.map +1 -1
  14. package/dist/audit/contracts/workerSchemas.d.ts +4 -4
  15. package/dist/audit/contracts/wrapperResponse.d.ts +6 -6
  16. package/dist/audit/orchestrator/intentCheckpointGate.d.ts.map +1 -1
  17. package/dist/audit/orchestrator/intentCheckpointGate.js +4 -3
  18. package/dist/audit/orchestrator/intentCheckpointGate.js.map +1 -1
  19. package/dist/audit/orchestrator/ledger.d.ts.map +1 -1
  20. package/dist/audit/orchestrator/ledger.js +4 -1
  21. package/dist/audit/orchestrator/ledger.js.map +1 -1
  22. package/dist/audit/orchestrator/resultBaseline.d.ts +7 -0
  23. package/dist/audit/orchestrator/resultBaseline.d.ts.map +1 -1
  24. package/dist/audit/orchestrator/resultBaseline.js +8 -2
  25. package/dist/audit/orchestrator/resultBaseline.js.map +1 -1
  26. package/dist/audit/quota/index.d.ts +12 -12
  27. package/dist/audit/types.d.ts +2 -2
  28. package/dist/audit/validation/auditResults.d.ts.map +1 -1
  29. package/dist/audit/validation/auditResults.js +5 -0
  30. package/dist/audit/validation/auditResults.js.map +1 -1
  31. package/dist/remediate/contractPipeline/artifactStore.d.ts +5 -12
  32. package/dist/remediate/contractPipeline/artifactStore.d.ts.map +1 -1
  33. package/dist/remediate/contractPipeline/artifactStore.js +6 -8
  34. package/dist/remediate/contractPipeline/artifactStore.js.map +1 -1
  35. package/dist/remediate/steps/contractPipeline.d.ts +7 -0
  36. package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
  37. package/dist/remediate/steps/contractPipeline.js +185 -2
  38. package/dist/remediate/steps/contractPipeline.js.map +1 -1
  39. package/dist/remediate/steps/dispatch.d.ts.map +1 -1
  40. package/dist/remediate/steps/dispatch.js +42 -1
  41. package/dist/remediate/steps/dispatch.js.map +1 -1
  42. package/dist/remediate/validation/contractPipeline.d.ts +1 -1
  43. package/dist/remediate/validation/contractPipeline.d.ts.map +1 -1
  44. package/dist/remediate/validation/contractPipeline.js +1 -1
  45. package/dist/remediate/validation/contractPipeline.js.map +1 -1
  46. package/dist/remediate/validation/contractPipelineGates.d.ts +34 -16
  47. package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
  48. package/dist/remediate/validation/contractPipelineGates.js +129 -2
  49. package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
  50. package/dist/shared/contentKey.d.ts +47 -0
  51. package/dist/shared/contentKey.d.ts.map +1 -1
  52. package/dist/shared/contentKey.js +54 -0
  53. package/dist/shared/contentKey.js.map +1 -1
  54. package/dist/shared/dispatch/rollingDispatch.d.ts +12 -0
  55. package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
  56. package/dist/shared/dispatch/rollingDispatch.js +23 -1
  57. package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
  58. package/dist/shared/friction/captureFrictionEvent.d.ts +12 -8
  59. package/dist/shared/friction/captureFrictionEvent.d.ts.map +1 -1
  60. package/dist/shared/friction/captureFrictionEvent.js +21 -21
  61. package/dist/shared/friction/captureFrictionEvent.js.map +1 -1
  62. package/dist/shared/friction/frictionRecord.d.ts +76 -0
  63. package/dist/shared/friction/frictionRecord.d.ts.map +1 -0
  64. package/dist/shared/friction/frictionRecord.js +45 -0
  65. package/dist/shared/friction/frictionRecord.js.map +1 -0
  66. package/dist/shared/friction/stepBoundaryCapture.d.ts +80 -0
  67. package/dist/shared/friction/stepBoundaryCapture.d.ts.map +1 -0
  68. package/dist/shared/friction/stepBoundaryCapture.js +41 -0
  69. package/dist/shared/friction/stepBoundaryCapture.js.map +1 -0
  70. package/dist/shared/friction/triage.d.ts +3 -43
  71. package/dist/shared/friction/triage.d.ts.map +1 -1
  72. package/dist/shared/friction/triage.js +35 -34
  73. package/dist/shared/friction/triage.js.map +1 -1
  74. package/dist/shared/index.d.ts +4 -1
  75. package/dist/shared/index.d.ts.map +1 -1
  76. package/dist/shared/index.js +6 -1
  77. package/dist/shared/index.js.map +1 -1
  78. package/dist/shared/io/gitignoreArtifacts.d.ts +52 -10
  79. package/dist/shared/io/gitignoreArtifacts.d.ts.map +1 -1
  80. package/dist/shared/io/gitignoreArtifacts.js +83 -29
  81. package/dist/shared/io/gitignoreArtifacts.js.map +1 -1
  82. package/dist/shared/quota/capacity.d.ts +4 -4
  83. package/dist/shared/quota/compositeQuotaSource.d.ts +12 -0
  84. package/dist/shared/quota/compositeQuotaSource.d.ts.map +1 -1
  85. package/dist/shared/quota/compositeQuotaSource.js +7 -0
  86. package/dist/shared/quota/compositeQuotaSource.js.map +1 -1
  87. package/dist/shared/quota/hostSessionQuotaSource.d.ts.map +1 -1
  88. package/dist/shared/quota/hostSessionQuotaSource.js +42 -8
  89. package/dist/shared/quota/hostSessionQuotaSource.js.map +1 -1
  90. package/dist/shared/quota/quotaSource.d.ts +2 -2
  91. package/dist/shared/repair/emitValidateRepair.d.ts.map +1 -1
  92. package/dist/shared/repair/emitValidateRepair.js +4 -3
  93. package/dist/shared/repair/emitValidateRepair.js.map +1 -1
  94. package/dist/{audit → shared}/validation/designFindingGrounding.d.ts +5 -1
  95. package/dist/shared/validation/designFindingGrounding.d.ts.map +1 -0
  96. package/dist/{audit → shared}/validation/designFindingGrounding.js +1 -1
  97. package/dist/shared/validation/designFindingGrounding.js.map +1 -0
  98. package/package.json +1 -1
  99. package/scripts/postinstall.mjs +8 -2
  100. package/dist/audit/validation/designFindingGrounding.d.ts.map +0 -1
  101. package/dist/audit/validation/designFindingGrounding.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"contractPipeline.js","sourceRoot":"","sources":["../../../src/remediate/validation/contractPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contractPipeline.js","sourceRoot":"","sources":["../../../src/remediate/validation/contractPipeline.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,4 @@
1
- /**
2
- * Structural gates for the DesignSpec contract-pipeline artifact.
3
- *
4
- * Extracted from contractPipeline.ts to keep gate logic (structural checks,
5
- * obligation cross-checks, Kahn's topological sort) separate from the
6
- * per-artifact field validators. MNT-86b18f1b.
7
- *
8
- * Re-exported from contractPipeline.ts for backward-compatible imports.
9
- *
10
- * Also contains:
11
- * validateGoalIdConsistency — ARC-86b18f1b: goal_id equality across all
12
- * contract-pipeline artifacts that carry one.
13
- * validateImplementationDAGIntegrity — ARC-86b18f1b-2: referential integrity
14
- * and bidirectional coverage for the implementation DAG.
15
- */
16
- import { type ValidationIssue, type DispatchModelTier } from "audit-tools/shared";
1
+ import { type ValidationIssue, type DispatchModelTier, type Finding } from "audit-tools/shared";
17
2
  import { type PairingVerdict } from "../contractPipeline/changeClassification.js";
18
3
  /**
19
4
  * Deterministic structural gates run before the adversarial critic phase.
@@ -173,4 +158,37 @@ export declare function deriveNodeModelTier(signals: NodeComplexitySignals): Dis
173
158
  * derive its relative tier. Tolerant of partial/unknown node shapes.
174
159
  */
175
160
  export declare function deriveNodeModelTierFromNode(nodePayload: unknown): DispatchModelTier;
161
+ /** A finding-shaped citation the gate grounds. Reuses the shared Finding shape. */
162
+ export interface ContractCitationGroundingResult {
163
+ /** True when the repo tree could be enumerated (≥1 path). */
164
+ treeReadable: boolean;
165
+ /** ValidationIssue[] — errors block promotion / re-emit the producing phase. */
166
+ issues: ValidationIssue[];
167
+ }
168
+ /**
169
+ * Enumerate the working-tree paths at `repoRoot` via `git ls-files`, normalized
170
+ * through the shared `normalizeRepoPath`. Returns an empty set when git is
171
+ * unavailable or the tree is empty (caller treats empty as the fail-closed
172
+ * unreadable-tree signal). OS-agnostic: `shell: false`, forward-slash output.
173
+ */
174
+ export declare function enumerateRepoTreePaths(repoRoot: string): Set<string>;
175
+ /**
176
+ * M-B3 — source-grounded citation gate (fail-closed only on an unreadable tree).
177
+ *
178
+ * For each finding:
179
+ * 1. If it cites at least one real `affected_files` path → grounded (delegates
180
+ * to the shared `groundDesignFinding` against the repo-tree path set — no
181
+ * re-implementation).
182
+ * 2. Otherwise, partition the citation tokens (affected_files paths that did
183
+ * not resolve + symbol tokens from the description) into path-shaped vs
184
+ * symbol-shaped. A path-shaped token grounds against the known-path set; a
185
+ * symbol-shaped token grounds against the symbol corpus. If ANY token
186
+ * grounds, the finding passes. If NONE grounds — including a finding that
187
+ * cites only non-existent symbols — it is rejected (error).
188
+ *
189
+ * `findings` is the array of finding-shaped citations to ground (each carries
190
+ * `affected_files` and an optional `description`). `repoRoot` is the working-tree
191
+ * root enumerated by `git ls-files`.
192
+ */
193
+ export declare function validateContractCitationGrounding(findings: readonly Finding[], repoRoot: string): ContractCitationGroundingResult;
176
194
  //# sourceMappingURL=contractPipelineGates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contractPipelineGates.d.ts","sourceRoot":"","sources":["../../../src/remediate/validation/contractPipelineGates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,iBAAiB,EAGvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,6CAA6C,CAAC;AAIrD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,OAAO,EACnB,gBAAgB,CAAC,EAAE,OAAO,GACzB,eAAe,EAAE,CA6KnB;AAID;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,eAAe,EAAE,CAsBnB;AAID;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,OAAO,EACnB,uBAAuB,EAAE,OAAO,EAChC,qBAAqB,EAAE,OAAO,EAC9B,kBAAkB,EAAE,OAAO,GAC1B,eAAe,EAAE,CAkInB;AA0BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,yBAAyB,CACvC,uBAAuB,EAAE,OAAO,EAChC,wBAAwB,EAAE,OAAO,GAChC,eAAe,EAAE,CA+FnB;AAED,uFAAuF;AACvF,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,wBAAwB,CACtC,uBAAuB,EAAE,OAAO,EAChC,kBAAkB,EAAE,OAAO,EAC3B,UAAU,EAAE,OAAO,GAClB,eAAe,EAAE,CAmFnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,yBAAyB,EAAE,OAAO,EAClC,uBAAuB,EAAE,OAAO,GAC/B,eAAe,EAAE,CAgDnB;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gCAAgC,CAC9C,+BAA+B,EAAE,OAAO,EACxC,+BAA+B,EAAE,OAAO,GACvC,eAAe,EAAE,CA2EnB;AA6CD,MAAM,WAAW,qBAAqB;IACpC,2DAA2D;IAC3D,eAAe,EAAE,MAAM,CAAC;IACxB,2DAA2D;IAC3D,eAAe,EAAE,MAAM,CAAC;IACxB,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAC;IACtB,6DAA6D;IAC7D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mFAAmF;IACnF,cAAc,EAAE,OAAO,CAAC;CACzB;AAcD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG,iBAAiB,CAWrF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,OAAO,GAAG,iBAAiB,CAkBnF"}
1
+ {"version":3,"file":"contractPipelineGates.d.ts","sourceRoot":"","sources":["../../../src/remediate/validation/contractPipelineGates.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EAKb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAKL,KAAK,cAAc,EACpB,MAAM,6CAA6C,CAAC;AAIrD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,OAAO,EACnB,gBAAgB,CAAC,EAAE,OAAO,GACzB,eAAe,EAAE,CA6KnB;AAID;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,eAAe,EAAE,CAsBnB;AAID;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,OAAO,EACnB,uBAAuB,EAAE,OAAO,EAChC,qBAAqB,EAAE,OAAO,EAC9B,kBAAkB,EAAE,OAAO,GAC1B,eAAe,EAAE,CAkInB;AA0BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,yBAAyB,CACvC,uBAAuB,EAAE,OAAO,EAChC,wBAAwB,EAAE,OAAO,GAChC,eAAe,EAAE,CA+FnB;AAED,uFAAuF;AACvF,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,wBAAwB,CACtC,uBAAuB,EAAE,OAAO,EAChC,kBAAkB,EAAE,OAAO,EAC3B,UAAU,EAAE,OAAO,GAClB,eAAe,EAAE,CAmFnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,yBAAyB,EAAE,OAAO,EAClC,uBAAuB,EAAE,OAAO,GAC/B,eAAe,EAAE,CAgDnB;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gCAAgC,CAC9C,+BAA+B,EAAE,OAAO,EACxC,+BAA+B,EAAE,OAAO,GACvC,eAAe,EAAE,CA2EnB;AA6CD,MAAM,WAAW,qBAAqB;IACpC,2DAA2D;IAC3D,eAAe,EAAE,MAAM,CAAC;IACxB,2DAA2D;IAC3D,eAAe,EAAE,MAAM,CAAC;IACxB,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAC;IACtB,6DAA6D;IAC7D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mFAAmF;IACnF,cAAc,EAAE,OAAO,CAAC;CACzB;AAcD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG,iBAAiB,CAWrF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,OAAO,GAAG,iBAAiB,CAkBnF;AA2BD,mFAAmF;AACnF,MAAM,WAAW,+BAA+B;IAC9C,6DAA6D;IAC7D,YAAY,EAAE,OAAO,CAAC;IACtB,gFAAgF;IAChF,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAqBpE;AAgCD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,QAAQ,EAAE,MAAM,GACf,+BAA+B,CA6DjC"}
@@ -13,8 +13,9 @@
13
13
  * validateImplementationDAGIntegrity — ARC-86b18f1b-2: referential integrity
14
14
  * and bidirectional coverage for the implementation DAG.
15
15
  */
16
- import { isRecord, pushValidationIssue, } from "audit-tools/shared";
17
- import { evaluatePairing, obligationScopeAnchors, readObligationChangeClassification, } from "../contractPipeline/changeClassification.js";
16
+ import { spawnSync } from "node:child_process";
17
+ import { isRecord, pushValidationIssue, groundDesignFinding, normalizeRepoPath, } from "audit-tools/shared";
18
+ import { evaluatePairing, obligationScopeAnchors, readObligationChangeClassification, extractSymbolTokens, } from "../contractPipeline/changeClassification.js";
18
19
  // ── DesignSpec structural gates ───────────────────────────────────────────────
19
20
  /**
20
21
  * Deterministic structural gates run before the adversarial critic phase.
@@ -768,6 +769,132 @@ export function deriveNodeModelTierFromNode(nodePayload) {
768
769
  highStakesLens: HIGH_STAKES_LENSES.has(lens),
769
770
  });
770
771
  }
772
+ /**
773
+ * Enumerate the working-tree paths at `repoRoot` via `git ls-files`, normalized
774
+ * through the shared `normalizeRepoPath`. Returns an empty set when git is
775
+ * unavailable or the tree is empty (caller treats empty as the fail-closed
776
+ * unreadable-tree signal). OS-agnostic: `shell: false`, forward-slash output.
777
+ */
778
+ export function enumerateRepoTreePaths(repoRoot) {
779
+ const known = new Set();
780
+ let result;
781
+ try {
782
+ result = spawnSync("git", ["ls-files"], {
783
+ cwd: repoRoot,
784
+ encoding: "utf8",
785
+ shell: false,
786
+ maxBuffer: 64 * 1024 * 1024,
787
+ });
788
+ }
789
+ catch {
790
+ return known;
791
+ }
792
+ if (!result || result.status !== 0 || typeof result.stdout !== "string") {
793
+ return known;
794
+ }
795
+ for (const line of result.stdout.split("\n")) {
796
+ const path = normalizeRepoPath(line);
797
+ if (path.length > 0)
798
+ known.add(path);
799
+ }
800
+ return known;
801
+ }
802
+ /**
803
+ * Build the corpus of pre-existing symbol tokens from the known repo paths, so a
804
+ * symbol-shaped citation can be grounded against "a token that actually names a
805
+ * real file or a segment of one". Each path is split on path/extension separators
806
+ * (`/`, `.`, `_`, `-`) into segments (`src/auth.ts` → {src, auth, ts}), so a bare
807
+ * symbol citation like `auth` grounds against the real file `src/auth.ts`. Single-
808
+ * letter / very short segments (<3) are dropped as noise.
809
+ */
810
+ function buildKnownSymbolCorpus(knownPaths) {
811
+ const corpus = new Set();
812
+ for (const path of knownPaths) {
813
+ for (const segment of path.split(/[/._\-]+/)) {
814
+ const token = segment.toLowerCase();
815
+ if (token.length >= 3)
816
+ corpus.add(token);
817
+ }
818
+ }
819
+ return corpus;
820
+ }
821
+ /**
822
+ * A token is path-shaped when it contains a path separator or a file-extension
823
+ * dot (`src/a.ts`, `a/b`, `foo.ts`); otherwise it is symbol-shaped (`writeRecord`,
824
+ * `flush_buffer`). The partition decides which grounding set a citation token is
825
+ * checked against (CE: a symbol-only citation to a non-existent symbol is
826
+ * rejected, not excused as "cites no component").
827
+ */
828
+ function isPathShaped(token) {
829
+ return token.includes("/") || /\.[a-z0-9]+$/i.test(token);
830
+ }
831
+ /**
832
+ * M-B3 — source-grounded citation gate (fail-closed only on an unreadable tree).
833
+ *
834
+ * For each finding:
835
+ * 1. If it cites at least one real `affected_files` path → grounded (delegates
836
+ * to the shared `groundDesignFinding` against the repo-tree path set — no
837
+ * re-implementation).
838
+ * 2. Otherwise, partition the citation tokens (affected_files paths that did
839
+ * not resolve + symbol tokens from the description) into path-shaped vs
840
+ * symbol-shaped. A path-shaped token grounds against the known-path set; a
841
+ * symbol-shaped token grounds against the symbol corpus. If ANY token
842
+ * grounds, the finding passes. If NONE grounds — including a finding that
843
+ * cites only non-existent symbols — it is rejected (error).
844
+ *
845
+ * `findings` is the array of finding-shaped citations to ground (each carries
846
+ * `affected_files` and an optional `description`). `repoRoot` is the working-tree
847
+ * root enumerated by `git ls-files`.
848
+ */
849
+ export function validateContractCitationGrounding(findings, repoRoot) {
850
+ const issues = [];
851
+ const knownPaths = enumerateRepoTreePaths(repoRoot);
852
+ // Fail-closed ONLY when the tree itself is unreadable/empty: nothing can be
853
+ // grounded, so the gate blocks rather than silently passing every citation.
854
+ if (knownPaths.size === 0) {
855
+ pushValidationIssue(issues, "contract_citation_grounding.repo_tree", `Could not enumerate the working tree at "${repoRoot}" (git ls-files returned no files) — citation grounding cannot run, so the gate fails closed. Verify repo_root points at a git working tree.`);
856
+ return { treeReadable: false, issues };
857
+ }
858
+ const knownSymbols = buildKnownSymbolCorpus(knownPaths);
859
+ findings.forEach((finding, index) => {
860
+ // 1. Real path citation → grounded by the shared design-finding primitive.
861
+ const pathVerdict = groundDesignFinding(finding, knownPaths);
862
+ if (pathVerdict.status === "grounded")
863
+ return;
864
+ // 2. No real path. Gather every citation token and partition it.
865
+ const tokens = new Set();
866
+ for (const file of finding.affected_files ?? []) {
867
+ const normalized = normalizeRepoPath(file?.path ?? "");
868
+ if (normalized.length > 0)
869
+ tokens.add(normalized);
870
+ }
871
+ // The canonical Finding shape carries no `description`; its prose lives in
872
+ // `summary` (+ title). Pull candidate symbol tokens from both so a symbol-only
873
+ // citation is grounded against the real-symbol corpus.
874
+ for (const token of extractSymbolTokens(`${finding.summary ?? ""} ${finding.title ?? ""}`)) {
875
+ tokens.add(token);
876
+ }
877
+ let grounded = false;
878
+ for (const token of tokens) {
879
+ if (isPathShaped(token)) {
880
+ if (knownPaths.has(token)) {
881
+ grounded = true;
882
+ break;
883
+ }
884
+ }
885
+ else if (knownSymbols.has(token)) {
886
+ grounded = true;
887
+ break;
888
+ }
889
+ }
890
+ if (!grounded) {
891
+ const findingId = typeof finding.id === "string" && finding.id.length > 0 ? finding.id : `#${index}`;
892
+ const cited = [...tokens].slice(0, 5).join(", ") || "(no path or symbol citation)";
893
+ pushValidationIssue(issues, `contract_citation_grounding.findings[${findingId}]`, `Finding "${findingId}" cites no real component: no cited path exists in the working tree and no cited symbol (${cited}) names anything in the repository. A finding must point at a real path or a real symbol.`);
894
+ }
895
+ });
896
+ return { treeReadable: true, issues };
897
+ }
771
898
  // ── (removed) Downstream-only repair propagation — S2, dropped ─────────────────
772
899
  // The dead `repairDownstreamPhases` / `CONTRACT_PHASE_SEQUENCE` / `ARTIFACT_NAME_TO_PHASE`
773
900
  // were deleted (contract-authoring determinism design, S2). A linear phase-slice
@@ -1 +1 @@
1
- {"version":3,"file":"contractPipelineGates.js","sourceRoot":"","sources":["../../../src/remediate/validation/contractPipelineGates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contractPipelineGates.js","sourceRoot":"","sources":["../../../src/remediate/validation/contractPipelineGates.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,24 @@ export interface ResultContentDiscriminatorInput {
29
29
  * idempotencyKey differs from the prior attempt.
30
30
  */
31
31
  attempt?: number;
32
+ /**
33
+ * Per-split discriminator (N-IDEMPOTENCY). File-split sibling tasks of one
34
+ * unit+lens+pass legitimately share the {unit_id, lens, pass_id} grouping
35
+ * coordinate but carry DISTINCT task_ids (`…:part-N`, or `…:<filePath>` for a
36
+ * large-file split). Without a per-split component every sibling base result
37
+ * would derive the SAME idempotencyKey, so `appendResultsToLedger`'s INV-2 gate
38
+ * would silently no-op all but the first sibling — dropping the others'
39
+ * findings. This component (the split's task_id, canonicalized OS-agnostically
40
+ * via `canonicalSplitDiscriminator`) folds into the discriminator so siblings
41
+ * get distinct idempotencyKeys and all persist.
42
+ *
43
+ * Contract (fold-rule): an EMPTY component (the lone, non-split base task)
44
+ * yields a discriminator BYTE-IDENTICAL to the legacy lone-base value, so
45
+ * existing ledger / baseline keys are unchanged. A non-empty component appends
46
+ * it, so siblings diverge. Tool-owned, never caller-chosen — callers pass the
47
+ * raw task_id and the canonicalization + emptiness rule live HERE.
48
+ */
49
+ split_discriminator?: string;
32
50
  }
33
51
  /** Inputs to `idempotencyKey`: the identity coordinate + the result discriminator. */
34
52
  export interface IdempotencyKeyInput extends IdentityKeyInput {
@@ -46,13 +64,42 @@ export interface ContentKeyInput extends IdempotencyKeyInput {
46
64
  * INV-CK-2), so reordered keys produce an identical signature.
47
65
  */
48
66
  export declare function buildTaskContentSignature(input: TaskContentSignatureInput): string;
67
+ /**
68
+ * Canonicalize a split-discriminator component OS-agnostically (N-IDEMPOTENCY).
69
+ * A large-file split task_id embeds the file path (`…:<filePath>`), so the raw
70
+ * value carries the host's path separator — `unit/a.ts` on POSIX vs `unit\a.ts`
71
+ * on win32 for the SAME logical split. Backslashes are normalized to forward
72
+ * slashes so the idempotencyKey is byte-identical cross-platform (a win32 run and
73
+ * a POSIX run of the same split must NOT mint two records). An empty/whitespace
74
+ * component canonicalizes to the empty string (the lone-base sentinel). This is
75
+ * the SOLE canonicalization point — callers pass the raw component.
76
+ */
77
+ export declare function canonicalSplitDiscriminator(component: string | undefined): string;
49
78
  /**
50
79
  * TOOL-OWNED result-content discriminator (C-002 / fail-3). The discriminator
51
80
  * string is derived from the emit-source enum (plus the attempt counter for a
52
81
  * re-dispatch), never chosen by a caller — because it feeds the signature-STABLE
53
82
  * idempotencyKey, an operator-chosen value would be a correctness hazard.
83
+ *
84
+ * The per-split component (N-IDEMPOTENCY) folds in identically for every emit
85
+ * source: an EMPTY canonical component reproduces the legacy lone-base /
86
+ * lone-source string BYTE-FOR-BYTE (no key churn for non-split tasks), while a
87
+ * non-empty component appends a `#split:<canonical>` suffix so file-split sibling
88
+ * tasks sharing a {unit_id, lens, pass_id} coordinate diverge into distinct
89
+ * idempotencyKeys instead of colliding through the INV-2 gate.
54
90
  */
55
91
  export declare function buildResultContentDiscriminator(input: ResultContentDiscriminatorInput): string;
92
+ /**
93
+ * Derive the per-split discriminator component from a task_id (N-IDEMPOTENCY).
94
+ * Split sibling task_ids are `${scope}:${lens}:part-N` or `${scope}:${lens}:<filePath>`;
95
+ * a lone (non-split) task is exactly `${scope}:${lens}`. The component is the
96
+ * suffix AFTER the trailing `:${lens}` segment — empty for a lone task (⇒
97
+ * byte-identical lone-base key), the split-distinguishing tail otherwise. Returns
98
+ * empty when the task_id/lens are missing or the expected shape is absent (fail
99
+ * safe to the legacy lone key rather than mint a spurious split). The result is
100
+ * the RAW tail; `buildResultContentDiscriminator` canonicalizes it.
101
+ */
102
+ export declare function splitDiscriminatorFromTaskId(task_id: string | undefined, lens: string | undefined): string;
56
103
  /**
57
104
  * sha256 over the canonical {unit_id, lens, pass_id} tuple (INV-CK-3). EXCLUDES
58
105
  * task_id and all volatile fields. ONE-TO-MANY grouping key (INV-CK-4) — never a
@@ -1 +1 @@
1
- {"version":3,"file":"contentKey.d.ts","sourceRoot":"","sources":["../../src/shared/contentKey.ts"],"names":[],"mappings":"AA8DA,gEAAgE;AAChE,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,YAAY,CAAC;AAE/E,mDAAmD;AACnD,MAAM,WAAW,+BAA+B;IAC9C,MAAM,EAAE,gBAAgB,CAAC;IACzB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,sFAAsF;AACtF,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,4BAA4B,EAAE,MAAM,CAAC;CACtC;AAED,sFAAsF;AACtF,MAAM,WAAW,eAAgB,SAAQ,mBAAmB;IAC1D,sBAAsB,EAAE,MAAM,CAAC;CAChC;AAoBD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,yBAAyB,GAC/B,MAAM,CAcR;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,+BAA+B,GACrC,MAAM,CAmBR;AAaD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CAK3D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CASjE;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,CASzD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
1
+ {"version":3,"file":"contentKey.d.ts","sourceRoot":"","sources":["../../src/shared/contentKey.ts"],"names":[],"mappings":"AA8DA,gEAAgE;AAChE,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,YAAY,CAAC;AAE/E,mDAAmD;AACnD,MAAM,WAAW,+BAA+B;IAC9C,MAAM,EAAE,gBAAgB,CAAC;IACzB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;;;;;;;;OAgBG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,sFAAsF;AACtF,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,4BAA4B,EAAE,MAAM,CAAC;CACtC;AAED,sFAAsF;AACtF,MAAM,WAAW,eAAgB,SAAQ,mBAAmB;IAC1D,sBAAsB,EAAE,MAAM,CAAC;CAChC;AAoBD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,yBAAyB,GAC/B,MAAM,CAcR;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAKjF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,+BAA+B,GACrC,MAAM,CAIR;AAuBD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,MAAM,CAWR;AAaD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CAK3D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CASjE;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,CASzD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
@@ -88,13 +88,43 @@ export function buildTaskContentSignature(input) {
88
88
  const content = Object.fromEntries(Object.entries(input).filter(([key]) => !NON_CONTENT_SIGNATURE_FIELDS.has(key)));
89
89
  return sha256(stableStringify(normalizeForMetadataHash(TASK_SIGNATURE_ARTIFACT, content)));
90
90
  }
91
+ /**
92
+ * Canonicalize a split-discriminator component OS-agnostically (N-IDEMPOTENCY).
93
+ * A large-file split task_id embeds the file path (`…:<filePath>`), so the raw
94
+ * value carries the host's path separator — `unit/a.ts` on POSIX vs `unit\a.ts`
95
+ * on win32 for the SAME logical split. Backslashes are normalized to forward
96
+ * slashes so the idempotencyKey is byte-identical cross-platform (a win32 run and
97
+ * a POSIX run of the same split must NOT mint two records). An empty/whitespace
98
+ * component canonicalizes to the empty string (the lone-base sentinel). This is
99
+ * the SOLE canonicalization point — callers pass the raw component.
100
+ */
101
+ export function canonicalSplitDiscriminator(component) {
102
+ if (typeof component !== 'string')
103
+ return '';
104
+ const trimmed = component.trim();
105
+ if (trimmed.length === 0)
106
+ return '';
107
+ return trimmed.replace(/\\/g, '/');
108
+ }
91
109
  /**
92
110
  * TOOL-OWNED result-content discriminator (C-002 / fail-3). The discriminator
93
111
  * string is derived from the emit-source enum (plus the attempt counter for a
94
112
  * re-dispatch), never chosen by a caller — because it feeds the signature-STABLE
95
113
  * idempotencyKey, an operator-chosen value would be a correctness hazard.
114
+ *
115
+ * The per-split component (N-IDEMPOTENCY) folds in identically for every emit
116
+ * source: an EMPTY canonical component reproduces the legacy lone-base /
117
+ * lone-source string BYTE-FOR-BYTE (no key churn for non-split tasks), while a
118
+ * non-empty component appends a `#split:<canonical>` suffix so file-split sibling
119
+ * tasks sharing a {unit_id, lens, pass_id} coordinate diverge into distinct
120
+ * idempotencyKeys instead of colliding through the INV-2 gate.
96
121
  */
97
122
  export function buildResultContentDiscriminator(input) {
123
+ const base = baseDiscriminator(input);
124
+ const split = canonicalSplitDiscriminator(input?.split_discriminator);
125
+ return split.length === 0 ? base : `${base}#split:${split}`;
126
+ }
127
+ function baseDiscriminator(input) {
98
128
  const source = input?.source;
99
129
  if (source === 'base' || source === 'deepening' || source === 'steward') {
100
130
  return source;
@@ -110,6 +140,30 @@ export function buildResultContentDiscriminator(input) {
110
140
  }
111
141
  throw new Error(`buildResultContentDiscriminator: unknown emit source ${JSON.stringify(source)}`);
112
142
  }
143
+ /**
144
+ * Derive the per-split discriminator component from a task_id (N-IDEMPOTENCY).
145
+ * Split sibling task_ids are `${scope}:${lens}:part-N` or `${scope}:${lens}:<filePath>`;
146
+ * a lone (non-split) task is exactly `${scope}:${lens}`. The component is the
147
+ * suffix AFTER the trailing `:${lens}` segment — empty for a lone task (⇒
148
+ * byte-identical lone-base key), the split-distinguishing tail otherwise. Returns
149
+ * empty when the task_id/lens are missing or the expected shape is absent (fail
150
+ * safe to the legacy lone key rather than mint a spurious split). The result is
151
+ * the RAW tail; `buildResultContentDiscriminator` canonicalizes it.
152
+ */
153
+ export function splitDiscriminatorFromTaskId(task_id, lens) {
154
+ if (typeof task_id !== 'string' || typeof lens !== 'string' || lens.length === 0) {
155
+ return '';
156
+ }
157
+ const marker = `:${lens}`;
158
+ const at = task_id.lastIndexOf(marker);
159
+ if (at < 0)
160
+ return '';
161
+ const tail = task_id.slice(at + marker.length);
162
+ // Lone task ends exactly at the lens segment ⇒ no split suffix.
163
+ if (!tail.startsWith(':'))
164
+ return '';
165
+ return tail.slice(1);
166
+ }
113
167
  function requireField(value, name) {
114
168
  if (typeof value !== 'string' || value.length === 0) {
115
169
  // No silent colliding key (fail-3): a missing component would otherwise hash