audit-tools 0.53.0 → 0.55.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.
- package/dist/audit/cli/auditStep.js +2 -2
- package/dist/audit/cli/auditStep.js.map +1 -1
- package/dist/audit/cli/conceptualDispatch.d.ts +2 -2
- package/dist/audit/cli/conceptualDispatch.d.ts.map +1 -1
- package/dist/audit/cli/conceptualDispatch.js +6 -5
- package/dist/audit/cli/conceptualDispatch.js.map +1 -1
- package/dist/audit/cli/confirmIntentStep.d.ts.map +1 -1
- package/dist/audit/cli/confirmIntentStep.js +3 -16
- package/dist/audit/cli/confirmIntentStep.js.map +1 -1
- package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/hostHandoff.js +53 -10
- package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
- package/dist/audit/cli/functionalPreflight.d.ts.map +1 -1
- package/dist/audit/cli/functionalPreflight.js +6 -3
- package/dist/audit/cli/functionalPreflight.js.map +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +15 -14
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +2 -2
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/contracts/findingContractPrompt.d.ts.map +1 -1
- package/dist/audit/contracts/findingContractPrompt.js +13 -11
- package/dist/audit/contracts/findingContractPrompt.js.map +1 -1
- package/dist/audit/contracts/workerSchemas.d.ts +21 -124
- package/dist/audit/contracts/workerSchemas.d.ts.map +1 -1
- package/dist/audit/contracts/workerSchemas.js +19 -3
- package/dist/audit/contracts/workerSchemas.js.map +1 -1
- package/dist/audit/orchestrator/advance.d.ts.map +1 -1
- package/dist/audit/orchestrator/advance.js +21 -1
- package/dist/audit/orchestrator/advance.js.map +1 -1
- package/dist/audit/orchestrator/architectureDiscovery.d.ts +15 -1
- package/dist/audit/orchestrator/architectureDiscovery.d.ts.map +1 -1
- package/dist/audit/orchestrator/architectureDiscovery.js +30 -11
- package/dist/audit/orchestrator/architectureDiscovery.js.map +1 -1
- package/dist/audit/orchestrator/dependencyMap.d.ts +20 -0
- package/dist/audit/orchestrator/dependencyMap.d.ts.map +1 -1
- package/dist/audit/orchestrator/dependencyMap.js +47 -0
- package/dist/audit/orchestrator/dependencyMap.js.map +1 -1
- package/dist/audit/orchestrator/dependencySlices.d.ts.map +1 -1
- package/dist/audit/orchestrator/dependencySlices.js +37 -3
- package/dist/audit/orchestrator/dependencySlices.js.map +1 -1
- package/dist/audit/orchestrator/designReviewPrompt.d.ts +2 -2
- package/dist/audit/orchestrator/designReviewPrompt.js +2 -2
- package/dist/audit/orchestrator/executors.js +1 -1
- package/dist/audit/orchestrator/executors.js.map +1 -1
- package/dist/audit/orchestrator/ingestionExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/ingestionExecutors.js +38 -37
- package/dist/audit/orchestrator/ingestionExecutors.js.map +1 -1
- package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
- package/dist/audit/orchestrator/nextStep.js +0 -1
- package/dist/audit/orchestrator/nextStep.js.map +1 -1
- package/dist/audit/orchestrator/staleness.d.ts.map +1 -1
- package/dist/audit/orchestrator/staleness.js +14 -10
- package/dist/audit/orchestrator/staleness.js.map +1 -1
- package/dist/audit/orchestrator/state.d.ts.map +1 -1
- package/dist/audit/orchestrator/state.js +1 -3
- package/dist/audit/orchestrator/state.js.map +1 -1
- package/dist/audit/types.d.ts +12 -1
- package/dist/audit/types.d.ts.map +1 -1
- package/dist/audit/types.js +92 -11
- package/dist/audit/types.js.map +1 -1
- package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.js +11 -3
- package/dist/remediate/steps/contractPipeline.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +8 -23
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/remediate/steps/prompts.js +4 -4
- package/dist/shared/findings/dedupe.d.ts.map +1 -1
- package/dist/shared/findings/dedupe.js +14 -2
- package/dist/shared/findings/dedupe.js.map +1 -1
- package/dist/shared/index.d.ts +2 -2
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +2 -2
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/loopCorePaths.d.ts.map +1 -1
- package/dist/shared/loopCorePaths.js +31 -5
- package/dist/shared/loopCorePaths.js.map +1 -1
- package/dist/shared/prompts.d.ts +23 -8
- package/dist/shared/prompts.d.ts.map +1 -1
- package/dist/shared/prompts.js +26 -11
- package/dist/shared/prompts.js.map +1 -1
- package/dist/shared/types/finding.d.ts +4 -14
- package/dist/shared/types/finding.d.ts.map +1 -1
- package/dist/shared/types/finding.js +6 -16
- package/dist/shared/types/finding.js.map +1 -1
- package/dist/shared/validation/designFindingGrounding.d.ts +3 -2
- package/dist/shared/validation/designFindingGrounding.d.ts.map +1 -1
- package/dist/shared/validation/designFindingGrounding.js +12 -2
- package/dist/shared/validation/designFindingGrounding.js.map +1 -1
- package/dist/shared/validation/findingGrounding.d.ts +18 -6
- package/dist/shared/validation/findingGrounding.d.ts.map +1 -1
- package/dist/shared/validation/findingGrounding.js +107 -24
- package/dist/shared/validation/findingGrounding.js.map +1 -1
- package/package.json +2 -1
- package/schemas/audit_result.schema.json +0 -8
- package/schemas/audit_results.schema.json +0 -8
- package/schemas/finding.schema.json +0 -8
- package/scripts/shared/primitives.mjs +20 -0
- package/skills/audit-code/SKILL.md +5 -12
- package/skills/audit-code/audit-code.prompt.md +5 -8
- package/skills/audit-code/opencode-command-template.txt +2 -2
- package/skills/remediate-code/SKILL.md +5 -7
- package/skills/remediate-code/remediate-code.prompt.md +5 -5
- package/dispatch/lens-definitions.json +0 -46
|
@@ -159,12 +159,10 @@ export interface FindingLocationLineIssue {
|
|
|
159
159
|
* all, the span is 1-based integers with `line_start <= line_end`. Returns
|
|
160
160
|
* every violated rule with its statement.
|
|
161
161
|
*
|
|
162
|
-
*
|
|
163
|
-
*
|
|
164
|
-
*
|
|
165
|
-
*
|
|
166
|
-
* that validator WITHOUT a worker-projection parse, so the check has to live
|
|
167
|
-
* there too, not only behind the parse.
|
|
162
|
+
* The audit-results validator walks it over raw per-location records: a
|
|
163
|
+
* persisted or re-validated result carries the TOOL's derived lines (a reviewer
|
|
164
|
+
* may not supply any — `WORKER_REFUSED_LOCATION_FIELDS`), and this is what
|
|
165
|
+
* catches a span corrupted after derivation.
|
|
168
166
|
*
|
|
169
167
|
* The fields stay `unknown`: callers hold everything from fully-parsed
|
|
170
168
|
* locations to raw JSON payloads, and the guards below are exactly what makes
|
|
@@ -174,14 +172,6 @@ export declare function findingLocationLineIssues(location: {
|
|
|
174
172
|
line_start?: unknown;
|
|
175
173
|
line_end?: unknown;
|
|
176
174
|
}): readonly FindingLocationLineIssue[];
|
|
177
|
-
/**
|
|
178
|
-
* Applies {@link findingLocationLineIssues} as a zod refinement. Exported so
|
|
179
|
-
* every projection applies the SAME refinement — `.superRefine` wraps in
|
|
180
|
-
* ZodEffects, which cannot be re-`extend`ed, so each projection composes
|
|
181
|
-
* object + refinement itself rather than this file baking them together and
|
|
182
|
-
* freezing the shape.
|
|
183
|
-
*/
|
|
184
|
-
export declare const refineFindingLocationLines: (location: z.infer<typeof FindingLocationObjectSchema>, context: z.RefinementCtx) => void;
|
|
185
175
|
export declare const FindingLocationSchema: z.ZodEffects<z.ZodObject<{
|
|
186
176
|
path: z.ZodString;
|
|
187
177
|
line_start: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finding.d.ts","sourceRoot":"","sources":["../../../src/shared/types/finding.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,iEAAiE;AACjE,eAAO,MAAM,qBAAqB,0DAMhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,sEAAsE;AACtE,eAAO,MAAM,uBAAuB,sCAAoC,CAAC;AACzE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAGxE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,yBAAyB,oDAGpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,wBAAwB;IAEjC,mFAAmF;;IAEnF;;;;OAIG;;IAEH;;;;;OAKG;;;;;;;;;;EAGI,CAAC;AACZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,2BAA2B;;;;;IAKtC;;;;;;OAMG;;IAEH;;;;;;;;;;;;;;;;OAgBG;;IAEH,0EAA0E;;;;;;;;;;;;;;;;;;EAE1E,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,yDACY,CAAC;AACzD,eAAO,MAAM,6BAA6B,uDACY,CAAC;AACvD,eAAO,MAAM,uBAAuB,iGAC4D,CAAC;AAEjG;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,uCAAuC,QAIyB,CAAC;AAE9E,sEAAsE;AACtE,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,YAAY,GAAG,UAAU,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED
|
|
1
|
+
{"version":3,"file":"finding.d.ts","sourceRoot":"","sources":["../../../src/shared/types/finding.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,iEAAiE;AACjE,eAAO,MAAM,qBAAqB,0DAMhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,sEAAsE;AACtE,eAAO,MAAM,uBAAuB,sCAAoC,CAAC;AACzE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAGxE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,yBAAyB,oDAGpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,wBAAwB;IAEjC,mFAAmF;;IAEnF;;;;OAIG;;IAEH;;;;;OAKG;;;;;;;;;;EAGI,CAAC;AACZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,2BAA2B;;;;;IAKtC;;;;;;OAMG;;IAEH;;;;;;;;;;;;;;;;OAgBG;;IAEH,0EAA0E;;;;;;;;;;;;;;;;;;EAE1E,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,yDACY,CAAC;AACzD,eAAO,MAAM,6BAA6B,uDACY,CAAC;AACvD,eAAO,MAAM,uBAAuB,iGAC4D,CAAC;AAEjG;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,uCAAuC,QAIyB,CAAC;AAE9E,sEAAsE;AACtE,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,YAAY,GAAG,UAAU,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE;IAClD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,SAAS,wBAAwB,EAAE,CA4BtC;AAED,eAAO,MAAM,qBAAqB;;;;;IAnHhC;;;;;;OAMG;;IAEH;;;;;;;;;;;;;;;;OAgBG;;IAEH,0EAA0E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmG3E,CAAC;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB;;IAEjC,mEAAmE;;;;;;;;EAEnE,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,+BAA+B,+DAI1C,CAAC;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,+BAA+B,CACvC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGjC,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAErE,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,aAAa;;;;;IAKxB;;;;;;;;;;;;OAYG;;;IAKH,gEAAgE;;;;;;;;QA9OhE;;;;;;WAMG;;QAEH;;;;;;;;;;;;;;;;WAgBG;;QAEH,0EAA0E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8N1E,yDAAyD;;IAEzD;;;;;;;;OAQG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;;QA7HH,mEAAmE;;;;;;;;;IA+HnE;;;;;;;OAOG;;IAEH;;;;;;;OAOG;;IAEH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAtFH,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4FrE,4EAA4E;;IAE5E,iFAAiF;;IAEjF,0EAA0E;;IAE1E,+EAA+E;;IAE/E;;;;;OAKG;;;;;;;;;;;;;;;;;IAIH;;;;;;;;;;;;;;;OAeG;;QAvWD,mFAAmF;;QAEnF;;;;WAIG;;QAEH;;;;;WAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8VL,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,2EAA2E;AAC3E,eAAO,MAAM,eAAe;;;;;IAK1B,wEAAwE;;;;;IAKxE,gFAAgF;;;;;;;;;;;;;;;;;;;;;;EAEhF,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB;;IAG5B,yDAAyD;;IAEzD;;;;OAIG;;;IAGH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYH,CAAC;AACL,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,2EAA2E;AAC3E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;EAM7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;GAIG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAInC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,eAAe,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,eAAe,EAAE,CAAC;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,eAAe,CASjE;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB;;IAGhC,sEAAsE;;;;;;;;;;;;;;EAK/D,CAAC;AACZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,0BAA0B;;;;;;;;IAQrC;;;;;;;OAOG;;IAEH;;;;;;;;;;;;OAYG;;IAEH;;;;;;;OAOG;;;QA9CD,sEAAsE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgDxE,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;;;GAIG;AACH;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,eAAe;;;;;;;;;EAKjB,CAAC;AACZ,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;QAnEpC;;;;;;;WAOG;;QAEH;;;;;;;;;;;;WAYG;;QAEH;;;;;;;WAOG;;;YA9CD,sEAAsE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAnQxE;;;;;;;;;;;;WAYG;;;QAKH,gEAAgE;;;;;;;;YA9OhE;;;;;;eAMG;;YAEH;;;;;;;;;;;;;;;;eAgBG;;YAEH,0EAA0E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA8N1E,yDAAyD;;QAEzD;;;;;;;;WAQG;;QAEH;;;;WAIG;;QAEH;;;;WAIG;;;YA7HH,mEAAmE;;;;;;;;;QA+HnE;;;;;;;WAOG;;QAEH;;;;;;;WAOG;;QAEH;;;;;;;WAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAtFH,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4FrE,4EAA4E;;QAE5E,iFAAiF;;QAEjF,0EAA0E;;QAE1E,+EAA+E;;QAE/E;;;;;WAKG;;;;;;;;;;;;;;;;;QAIH;;;;;;;;;;;;;;;WAeG;;YAvWD,mFAAmF;;YAEnF;;;;eAIG;;YAEH;;;;;eAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuWL,wEAAwE;;;;;QAKxE,gFAAgF;;;;;;;;;;;;;;;;;;;;;;;;;QAmB9E,yDAAyD;;QAEzD;;;;WAIG;;;QAGH;;;;;WAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0LH;;;;OAIG;;;;;;QAnWL;;;;;;;;;;;;WAYG;;;QAKH,gEAAgE;;;;;;;;YA9OhE;;;;;;eAMG;;YAEH;;;;;;;;;;;;;;;;eAgBG;;YAEH,0EAA0E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA8N1E,yDAAyD;;QAEzD;;;;;;;;WAQG;;QAEH;;;;WAIG;;QAEH;;;;WAIG;;;YA7HH,mEAAmE;;;;;;;;;QA+HnE;;;;;;;WAOG;;QAEH;;;;;;;WAOG;;QAEH;;;;;;;WAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAtFH,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4FrE,4EAA4E;;QAE5E,iFAAiF;;QAEjF,0EAA0E;;QAE1E,+EAA+E;;QAE/E;;;;;WAKG;;;;;;;;;;;;;;;;;QAIH;;;;;;;;;;;;;;;WAeG;;YAvWD,mFAAmF;;YAEnF;;;;eAIG;;YAEH;;;;;eAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6kBH,6EAA6E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkD7E,CAAC;AACL,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
|
|
@@ -157,12 +157,10 @@ export const AUDIT_FINDING_QUOTE_OR_DECLARATION_RULE = "affected_files: every en
|
|
|
157
157
|
* all, the span is 1-based integers with `line_start <= line_end`. Returns
|
|
158
158
|
* every violated rule with its statement.
|
|
159
159
|
*
|
|
160
|
-
*
|
|
161
|
-
*
|
|
162
|
-
*
|
|
163
|
-
*
|
|
164
|
-
* that validator WITHOUT a worker-projection parse, so the check has to live
|
|
165
|
-
* there too, not only behind the parse.
|
|
160
|
+
* The audit-results validator walks it over raw per-location records: a
|
|
161
|
+
* persisted or re-validated result carries the TOOL's derived lines (a reviewer
|
|
162
|
+
* may not supply any — `WORKER_REFUSED_LOCATION_FIELDS`), and this is what
|
|
163
|
+
* catches a span corrupted after derivation.
|
|
166
164
|
*
|
|
167
165
|
* The fields stay `unknown`: callers hold everything from fully-parsed
|
|
168
166
|
* locations to raw JSON payloads, and the guards below are exactly what makes
|
|
@@ -193,14 +191,7 @@ export function findingLocationLineIssues(location) {
|
|
|
193
191
|
}
|
|
194
192
|
return issues;
|
|
195
193
|
}
|
|
196
|
-
|
|
197
|
-
* Applies {@link findingLocationLineIssues} as a zod refinement. Exported so
|
|
198
|
-
* every projection applies the SAME refinement — `.superRefine` wraps in
|
|
199
|
-
* ZodEffects, which cannot be re-`extend`ed, so each projection composes
|
|
200
|
-
* object + refinement itself rather than this file baking them together and
|
|
201
|
-
* freezing the shape.
|
|
202
|
-
*/
|
|
203
|
-
export const refineFindingLocationLines = (location, context) => {
|
|
194
|
+
export const FindingLocationSchema = FindingLocationObjectSchema.superRefine((location, context) => {
|
|
204
195
|
for (const issue of findingLocationLineIssues(location)) {
|
|
205
196
|
context.addIssue({
|
|
206
197
|
code: z.ZodIssueCode.custom,
|
|
@@ -208,8 +199,7 @@ export const refineFindingLocationLines = (location, context) => {
|
|
|
208
199
|
message: issue.message,
|
|
209
200
|
});
|
|
210
201
|
}
|
|
211
|
-
};
|
|
212
|
-
export const FindingLocationSchema = FindingLocationObjectSchema.superRefine(refineFindingLocationLines);
|
|
202
|
+
});
|
|
213
203
|
/**
|
|
214
204
|
* Result of re-verifying a finding's cited verbatim span against disk. Attached
|
|
215
205
|
* by the auditor's grounding pass at ingest; a hallucinated or stale finding
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finding.js","sourceRoot":"","sources":["../../../src/shared/types/finding.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"finding.js","sourceRoot":"","sources":["../../../src/shared/types/finding.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,7 +25,8 @@ import type { Finding, FindingGrounding } from "../types/finding.js";
|
|
|
25
25
|
export declare function groundDesignFinding(finding: Finding, knownPaths: ReadonlySet<string>): FindingGrounding;
|
|
26
26
|
/**
|
|
27
27
|
* Annotate each design finding with its lane and its grounding verdict, and
|
|
28
|
-
* remove the
|
|
28
|
+
* remove the tool-owned fields a submission can forge: `lead_lineage`, and the
|
|
29
|
+
* `line_start`/`line_end` this path has no quote to derive.
|
|
29
30
|
*
|
|
30
31
|
* The LANE stamp is unconditional and comes first: every finding reaching this
|
|
31
32
|
* function arrived on a design-review lane (that is what the call sites are —
|
|
@@ -55,7 +56,7 @@ export declare function groundDesignFinding(finding: Finding, knownPaths: Readon
|
|
|
55
56
|
* A host that legitimately re-emits a lead is unaffected in substance: the
|
|
56
57
|
* provenance it could not have verified is exactly the part the tool refuses to
|
|
57
58
|
* take on its word, and its own `evidence` and `affected_files` ride through
|
|
58
|
-
* unchanged.
|
|
59
|
+
* unchanged apart from their unverified line numbers.
|
|
59
60
|
*
|
|
60
61
|
* The GROUNDING verdict is conditional. When no repo manifest is available the
|
|
61
62
|
* findings cannot be grounded against a known file set, so they are returned
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"designFindingGrounding.d.ts","sourceRoot":"","sources":["../../../src/shared/validation/designFindingGrounding.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQrE;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,GAC9B,gBAAgB,CA2BlB;AAED
|
|
1
|
+
{"version":3,"file":"designFindingGrounding.d.ts","sourceRoot":"","sources":["../../../src/shared/validation/designFindingGrounding.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAQrE;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,GAC9B,gBAAgB,CA2BlB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,GAAG,SAAS,GAC5D,OAAO,EAAE,CAsBX;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,GAAG,SAAS,GAC5D,WAAW,CAAC,MAAM,CAAC,CAMrB"}
|
|
@@ -33,7 +33,8 @@ export function groundDesignFinding(finding, knownPaths) {
|
|
|
33
33
|
}
|
|
34
34
|
/**
|
|
35
35
|
* Annotate each design finding with its lane and its grounding verdict, and
|
|
36
|
-
* remove the
|
|
36
|
+
* remove the tool-owned fields a submission can forge: `lead_lineage`, and the
|
|
37
|
+
* `line_start`/`line_end` this path has no quote to derive.
|
|
37
38
|
*
|
|
38
39
|
* The LANE stamp is unconditional and comes first: every finding reaching this
|
|
39
40
|
* function arrived on a design-review lane (that is what the call sites are —
|
|
@@ -63,7 +64,7 @@ export function groundDesignFinding(finding, knownPaths) {
|
|
|
63
64
|
* A host that legitimately re-emits a lead is unaffected in substance: the
|
|
64
65
|
* provenance it could not have verified is exactly the part the tool refuses to
|
|
65
66
|
* take on its word, and its own `evidence` and `affected_files` ride through
|
|
66
|
-
* unchanged.
|
|
67
|
+
* unchanged apart from their unverified line numbers.
|
|
67
68
|
*
|
|
68
69
|
* The GROUNDING verdict is conditional. When no repo manifest is available the
|
|
69
70
|
* findings cannot be grounded against a known file set, so they are returned
|
|
@@ -72,8 +73,17 @@ export function groundDesignFinding(finding, knownPaths) {
|
|
|
72
73
|
* it.
|
|
73
74
|
*/
|
|
74
75
|
export function groundDesignFindings(findings, repoManifest) {
|
|
76
|
+
// Line numbers are tool-owned (`groundFinding` derives them from a located
|
|
77
|
+
// quote). This lane grounds by path alone and never reads a file, so it has
|
|
78
|
+
// nothing to derive them from: a submitted span would reach the report
|
|
79
|
+
// unchecked beside spans that were, so it is dropped.
|
|
75
80
|
const marked = findings.map(({ lead_lineage: _forged, ...finding }) => ({
|
|
76
81
|
...finding,
|
|
82
|
+
...(finding.affected_files === undefined
|
|
83
|
+
? {}
|
|
84
|
+
: {
|
|
85
|
+
affected_files: finding.affected_files.map(({ line_start: _start, line_end: _end, ...location }) => location),
|
|
86
|
+
}),
|
|
77
87
|
evidence_lane: "design-review-lane",
|
|
78
88
|
}));
|
|
79
89
|
const known = repoPathUniverse(repoManifest);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"designFindingGrounding.js","sourceRoot":"","sources":["../../../src/shared/validation/designFindingGrounding.ts"],"names":[],"mappings":"AAoBA,+EAA+E;AAC/E,qCAAqC;AACrC,OAAO,EACL,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,uBAAuB,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAAgB,EAChB,UAA+B;IAE/B,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;SACzC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;SAC5C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,8CAA8C;SACvD,CAAC;IACJ,CAAC;IACD,8EAA8E;IAC9E,yEAAyE;IACzE,0EAA0E;IAC1E,iDAAiD;IACjD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CACvB,CAAC,CAAC,EAAE,EAAE,CACJ,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;QACjB,4BAA4B,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,SAAS,CAC5D,CAAC;IACF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,mDAAmD,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SAC1F,CAAC;IACJ,CAAC;IACD,sCAAsC;IACtC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;AAChC,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"designFindingGrounding.js","sourceRoot":"","sources":["../../../src/shared/validation/designFindingGrounding.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ export declare function normalizeForMatch(text: string): string;
|
|
|
8
8
|
* The single path normalizer (drift-plan P7) shared by the conceptual-review
|
|
9
9
|
* grounding and any other consumer that matches a cited `affected_files` path
|
|
10
10
|
* against a repo manifest. (Quote-and-verify resolves a cited path against the
|
|
11
|
-
* filesystem instead, so it does not lowercase — see `
|
|
11
|
+
* filesystem instead, so it does not lowercase — see `groundFinding`.)
|
|
12
12
|
*
|
|
13
13
|
* INV-B3-1: strips a leading `./` ONLY — it must NEVER strip the leading dot of a
|
|
14
14
|
* dotfile-directory segment (`.claude/…`, `.github/…`). The regex is anchored to
|
|
@@ -85,12 +85,24 @@ export type SourceReader = (absolutePath: string) => Promise<string>;
|
|
|
85
85
|
*/
|
|
86
86
|
export declare function createMemoizedSourceReader(): SourceReader;
|
|
87
87
|
/**
|
|
88
|
-
*
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
*
|
|
88
|
+
* Ground a finding against disk: re-read each cited verbatim span, and let the
|
|
89
|
+
* code it quotes — never a number the reviewer typed — say where it is.
|
|
90
|
+
*
|
|
91
|
+
* Line numbers are TOOL-OWNED. Every `affected_files` entry loses whatever
|
|
92
|
+
* `line_start`/`line_end` it arrived with; an entry whose quote occurs exactly
|
|
93
|
+
* once in its file gets that occurrence's lines written back. A quote that
|
|
94
|
+
* occurs nowhere names nothing, and one that occurs more than once names no
|
|
95
|
+
* single place, so neither carries lines. A typed number used to pass every
|
|
96
|
+
* check while pointing anywhere in the file; a span derived from content the
|
|
97
|
+
* tool has just found cannot.
|
|
98
|
+
*
|
|
99
|
+
* The finding is `grounded` as soon as ONE entry's quote occurs exactly once;
|
|
100
|
+
* otherwise `ungrounded`, with a reason naming each entry that failed and why.
|
|
101
|
+
* The verdict is written to `finding.grounding` and also returned. It never
|
|
102
|
+
* refuses: an unlocatable quote is surfaced as unconfirmed, not discarded with
|
|
103
|
+
* its sibling findings.
|
|
92
104
|
*/
|
|
93
|
-
export declare function
|
|
105
|
+
export declare function groundFinding(repoRoot: string, finding: Finding, readSource?: SourceReader): Promise<FindingGrounding>;
|
|
94
106
|
/**
|
|
95
107
|
* INV-GND-02 (total function): classify a finding's grounding as a verdict that
|
|
96
108
|
* is ALWAYS defined. A finding whose `grounding` is undefined/absent is treated
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findingGrounding.d.ts","sourceRoot":"","sources":["../../../src/shared/validation/findingGrounding.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"findingGrounding.d.ts","sourceRoot":"","sources":["../../../src/shared/validation/findingGrounding.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAErE,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAGjD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,GAC9B,MAAM,GAAG,SAAS,CAapB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CA0BtB;AAsDD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAE7E;AAED,qFAAqF;AACrF,MAAM,MAAM,YAAY,GAAG,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAKrE;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,IAAI,YAAY,CASzD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,EAChB,UAAU,GAAE,YAAkC,GAC7C,OAAO,CAAC,gBAAgB,CAAC,CAoD3B;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,OAAO,CAE9E;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,GAClC,OAAO,CAET"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
// sites-pinned: tests/audit/quote-grounding.test.ts, tests/shared/finding-grounding.test.ts, tests/audit/host-ingest-grounding.test.ts
|
|
1
2
|
/**
|
|
2
3
|
* Finding grounding primitives — single source for both orchestrators.
|
|
3
4
|
*
|
|
@@ -10,11 +11,13 @@
|
|
|
10
11
|
*
|
|
11
12
|
* Matching is on *content*, normalized for whitespace/CRLF, not on line numbers
|
|
12
13
|
* — later edits that shift line numbers do not false-fail a still-valid quote,
|
|
13
|
-
* while a quote naming code that does not exist cannot match.
|
|
14
|
+
* while a quote naming code that does not exist cannot match. The line numbers
|
|
15
|
+
* a finding carries are DERIVED from where its quote occurs (`groundFinding`),
|
|
16
|
+
* never taken from the reviewer.
|
|
14
17
|
*
|
|
15
18
|
* Before this module the auditor (`quoteGrounding.ts`) and the conceptual-review
|
|
16
19
|
* grounding (`designFindingGrounding.ts`) each carried their own copy of
|
|
17
|
-
* `normalizeForMatch` / `quoteMatches` /
|
|
20
|
+
* `normalizeForMatch` / `quoteMatches` / the quote verifier and a near-
|
|
18
21
|
* identical path normalizer; this is the one authority both consume (drift-plan
|
|
19
22
|
* E3 + P7).
|
|
20
23
|
*/
|
|
@@ -32,7 +35,7 @@ export function normalizeForMatch(text) {
|
|
|
32
35
|
* The single path normalizer (drift-plan P7) shared by the conceptual-review
|
|
33
36
|
* grounding and any other consumer that matches a cited `affected_files` path
|
|
34
37
|
* against a repo manifest. (Quote-and-verify resolves a cited path against the
|
|
35
|
-
* filesystem instead, so it does not lowercase — see `
|
|
38
|
+
* filesystem instead, so it does not lowercase — see `groundFinding`.)
|
|
36
39
|
*
|
|
37
40
|
* INV-B3-1: strips a leading `./` ONLY — it must NEVER strip the leading dot of a
|
|
38
41
|
* dotfile-directory segment (`.claude/…`, `.github/…`). The regex is anchored to
|
|
@@ -135,15 +138,59 @@ export async function enumerateTrackedFilePaths(root) {
|
|
|
135
138
|
}
|
|
136
139
|
return known;
|
|
137
140
|
}
|
|
141
|
+
/**
|
|
142
|
+
* Every place the (normalized) quote occurs in the (normalized) file content,
|
|
143
|
+
* each mapped back to the raw file's lines. Overlapping occurrences count: the
|
|
144
|
+
* question is how many LOCATIONS the quote could name, and `aa` names two places
|
|
145
|
+
* in `aaa`. An empty quote occurs nowhere (an empty quote grounds nothing).
|
|
146
|
+
*
|
|
147
|
+
* The normalized text is built here character by character, recording the raw
|
|
148
|
+
* line of each kept character, and it is the same text {@link normalizeForMatch}
|
|
149
|
+
* returns: CR dropped first (so `a\rb` joins to `ab`, exactly as the regex
|
|
150
|
+
* pass does), each whitespace run collapsed to one space, the ends trimmed. A
|
|
151
|
+
* collapsed run takes the line of its first character; an occurrence never
|
|
152
|
+
* starts or ends on a space, because the trimmed needle cannot.
|
|
153
|
+
*/
|
|
154
|
+
function locateQuote(fileContent, quotedText) {
|
|
155
|
+
const needle = normalizeForMatch(quotedText);
|
|
156
|
+
if (needle.length === 0)
|
|
157
|
+
return [];
|
|
158
|
+
let text = "";
|
|
159
|
+
const lineOf = [];
|
|
160
|
+
let line = 1;
|
|
161
|
+
let pendingSpaceLine;
|
|
162
|
+
for (const char of fileContent) {
|
|
163
|
+
if (char === "\r")
|
|
164
|
+
continue;
|
|
165
|
+
if (/\s/u.test(char)) {
|
|
166
|
+
if (pendingSpaceLine === undefined && text.length > 0)
|
|
167
|
+
pendingSpaceLine = line;
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
if (pendingSpaceLine !== undefined) {
|
|
171
|
+
text += " ";
|
|
172
|
+
lineOf.push(pendingSpaceLine);
|
|
173
|
+
pendingSpaceLine = undefined;
|
|
174
|
+
}
|
|
175
|
+
text += char;
|
|
176
|
+
for (let unit = 0; unit < char.length; unit += 1)
|
|
177
|
+
lineOf.push(line);
|
|
178
|
+
}
|
|
179
|
+
if (char === "\n")
|
|
180
|
+
line += 1;
|
|
181
|
+
}
|
|
182
|
+
const spans = [];
|
|
183
|
+
for (let at = text.indexOf(needle); at !== -1; at = text.indexOf(needle, at + 1)) {
|
|
184
|
+
spans.push({ line_start: lineOf[at], line_end: lineOf[at + needle.length - 1] });
|
|
185
|
+
}
|
|
186
|
+
return spans;
|
|
187
|
+
}
|
|
138
188
|
/**
|
|
139
189
|
* True when the (normalized) quoted span appears anywhere in the (normalized)
|
|
140
190
|
* file content. An empty quote never matches (an empty quote grounds nothing).
|
|
141
191
|
*/
|
|
142
192
|
export function quoteMatches(fileContent, quotedText) {
|
|
143
|
-
|
|
144
|
-
if (needle.length === 0)
|
|
145
|
-
return false;
|
|
146
|
-
return normalizeForMatch(fileContent).includes(needle);
|
|
193
|
+
return locateQuote(fileContent, quotedText).length > 0;
|
|
147
194
|
}
|
|
148
195
|
const defaultSourceReader = (absolutePath) => readFile(absolutePath, "utf8");
|
|
149
196
|
/**
|
|
@@ -168,21 +215,39 @@ export function createMemoizedSourceReader() {
|
|
|
168
215
|
};
|
|
169
216
|
}
|
|
170
217
|
/**
|
|
171
|
-
*
|
|
172
|
-
*
|
|
173
|
-
*
|
|
174
|
-
*
|
|
218
|
+
* Ground a finding against disk: re-read each cited verbatim span, and let the
|
|
219
|
+
* code it quotes — never a number the reviewer typed — say where it is.
|
|
220
|
+
*
|
|
221
|
+
* Line numbers are TOOL-OWNED. Every `affected_files` entry loses whatever
|
|
222
|
+
* `line_start`/`line_end` it arrived with; an entry whose quote occurs exactly
|
|
223
|
+
* once in its file gets that occurrence's lines written back. A quote that
|
|
224
|
+
* occurs nowhere names nothing, and one that occurs more than once names no
|
|
225
|
+
* single place, so neither carries lines. A typed number used to pass every
|
|
226
|
+
* check while pointing anywhere in the file; a span derived from content the
|
|
227
|
+
* tool has just found cannot.
|
|
228
|
+
*
|
|
229
|
+
* The finding is `grounded` as soon as ONE entry's quote occurs exactly once;
|
|
230
|
+
* otherwise `ungrounded`, with a reason naming each entry that failed and why.
|
|
231
|
+
* The verdict is written to `finding.grounding` and also returned. It never
|
|
232
|
+
* refuses: an unlocatable quote is surfaced as unconfirmed, not discarded with
|
|
233
|
+
* its sibling findings.
|
|
175
234
|
*/
|
|
176
|
-
export async function
|
|
177
|
-
const
|
|
178
|
-
if (quoted.length === 0) {
|
|
179
|
-
return {
|
|
180
|
-
status: "ungrounded",
|
|
181
|
-
reason: "no affected_files entry carries a verbatim quoted_text span to re-verify",
|
|
182
|
-
};
|
|
183
|
-
}
|
|
235
|
+
export async function groundFinding(repoRoot, finding, readSource = defaultSourceReader) {
|
|
236
|
+
const entries = Array.isArray(finding.affected_files) ? finding.affected_files : [];
|
|
184
237
|
const misses = [];
|
|
185
|
-
|
|
238
|
+
let quotedCount = 0;
|
|
239
|
+
let located = false;
|
|
240
|
+
for (const loc of entries) {
|
|
241
|
+
if (typeof loc !== "object" || loc === null)
|
|
242
|
+
continue;
|
|
243
|
+
delete loc.line_start;
|
|
244
|
+
delete loc.line_end;
|
|
245
|
+
if (typeof loc.path !== "string" ||
|
|
246
|
+
typeof loc.quoted_text !== "string" ||
|
|
247
|
+
loc.quoted_text.trim().length === 0) {
|
|
248
|
+
continue;
|
|
249
|
+
}
|
|
250
|
+
quotedCount += 1;
|
|
186
251
|
const absolutePath = isAbsolute(loc.path) ? loc.path : join(repoRoot, loc.path);
|
|
187
252
|
let content;
|
|
188
253
|
try {
|
|
@@ -192,12 +257,30 @@ export async function verifyFindingGrounding(repoRoot, finding, readSource = def
|
|
|
192
257
|
misses.push(`${loc.path}: file could not be read on disk`);
|
|
193
258
|
continue;
|
|
194
259
|
}
|
|
195
|
-
|
|
196
|
-
|
|
260
|
+
const spans = locateQuote(content, loc.quoted_text);
|
|
261
|
+
if (spans.length === 1) {
|
|
262
|
+
loc.line_start = spans[0].line_start;
|
|
263
|
+
loc.line_end = spans[0].line_end;
|
|
264
|
+
located = true;
|
|
265
|
+
}
|
|
266
|
+
else if (spans.length === 0) {
|
|
267
|
+
misses.push(`${loc.path}: quoted_text not found on disk`);
|
|
268
|
+
}
|
|
269
|
+
else {
|
|
270
|
+
misses.push(`${loc.path}: quoted_text occurs ${spans.length} times, so it names no single ` +
|
|
271
|
+
"location; quote a span that occurs once");
|
|
197
272
|
}
|
|
198
|
-
misses.push(`${loc.path}: quoted_text not found on disk`);
|
|
199
273
|
}
|
|
200
|
-
|
|
274
|
+
const grounding = quotedCount === 0
|
|
275
|
+
? {
|
|
276
|
+
status: "ungrounded",
|
|
277
|
+
reason: "no affected_files entry carries a verbatim quoted_text span to re-verify",
|
|
278
|
+
}
|
|
279
|
+
: located
|
|
280
|
+
? { status: "grounded" }
|
|
281
|
+
: { status: "ungrounded", reason: misses.join("; ") };
|
|
282
|
+
finding.grounding = grounding;
|
|
283
|
+
return grounding;
|
|
201
284
|
}
|
|
202
285
|
/**
|
|
203
286
|
* INV-GND-02 (total function): classify a finding's grounding as a verdict that
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findingGrounding.js","sourceRoot":"","sources":["../../../src/shared/validation/findingGrounding.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"findingGrounding.js","sourceRoot":"","sources":["../../../src/shared/validation/findingGrounding.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "audit-tools",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.55.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "ISC",
|
|
6
6
|
"description": "Provider-neutral code auditing and remediation workflows for arbitrary repositories.",
|
|
@@ -116,6 +116,7 @@
|
|
|
116
116
|
"generate:shard-baseline": "node scripts/shared/generate-vitest-shard-baseline.mjs",
|
|
117
117
|
"check:orphan-modules": "node scripts/check-orphan-modules.mjs",
|
|
118
118
|
"check:loop-core-closure": "node scripts/check-loop-core-closure.mjs",
|
|
119
|
+
"check:loop-core-attestations": "node scripts/check-loop-core-attestations.mjs",
|
|
119
120
|
"check:pin-obligations": "node scripts/check-pin-obligations.mjs",
|
|
120
121
|
"check:contract-sites": "node --import tsx/esm scripts/check-contract-sites.mjs",
|
|
121
122
|
"check:sites-pinned": "node scripts/check-sites-pinned.mjs",
|
|
@@ -21,6 +21,10 @@
|
|
|
21
21
|
// The gate's rule tables list BOTH homes, so a re-roll anywhere in either tree
|
|
22
22
|
// is red. Change one and change the other — the rules treat them as one home in
|
|
23
23
|
// two files, which is what makes the divergence impossible to miss.
|
|
24
|
+
//
|
|
25
|
+
// `processAlive` is not a twin: it is the governance tree's one liveness probe,
|
|
26
|
+
// imported by the prebuild guard and the dispatch lane and re-exported to the
|
|
27
|
+
// test helpers.
|
|
24
28
|
import { createHash } from "node:crypto";
|
|
25
29
|
import { isAbsolute, relative, resolve, sep } from "node:path";
|
|
26
30
|
|
|
@@ -87,3 +91,19 @@ export function resolveWithinRoot(root, candidate, options = {}) {
|
|
|
87
91
|
if (rel === ".." || rel.startsWith(`..${sep}`) || rel.startsWith("../")) return null;
|
|
88
92
|
return absolutePath;
|
|
89
93
|
}
|
|
94
|
+
|
|
95
|
+
// sites-pinned: tests/shared/dispatch-lane-worktree.test.ts
|
|
96
|
+
/**
|
|
97
|
+
* Whether a process with this pid exists. `kill(pid, 0)` sends no signal; it
|
|
98
|
+
* reports deliverability, so an EPERM answer still means the process EXISTS.
|
|
99
|
+
* A pid that is not a positive integer names no process.
|
|
100
|
+
*/
|
|
101
|
+
export function processAlive(pid) {
|
|
102
|
+
if (typeof pid !== "number" || !Number.isInteger(pid) || pid <= 0) return false;
|
|
103
|
+
try {
|
|
104
|
+
process.kill(pid, 0);
|
|
105
|
+
return true;
|
|
106
|
+
} catch (err) {
|
|
107
|
+
return /** @type {any} */ (err).code === "EPERM";
|
|
108
|
+
}
|
|
109
|
+
}
|