audit-tools 0.51.7 → 0.51.9
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/clarification/blastRadius.d.ts +17 -16
- package/dist/audit/clarification/blastRadius.d.ts.map +1 -1
- package/dist/audit/clarification/blastRadius.js +48 -44
- package/dist/audit/clarification/blastRadius.js.map +1 -1
- package/dist/audit/clarification/dials.d.ts +4 -4
- package/dist/audit/clarification/dials.d.ts.map +1 -1
- package/dist/audit/clarification/dials.js +1 -0
- package/dist/audit/clarification/dials.js.map +1 -1
- package/dist/audit/clarification/partition.d.ts +12 -21
- package/dist/audit/clarification/partition.d.ts.map +1 -1
- package/dist/audit/clarification/partition.js +52 -59
- package/dist/audit/clarification/partition.js.map +1 -1
- package/dist/audit/clarification/riskGate.d.ts +2 -2
- package/dist/audit/clarification/riskGate.d.ts.map +1 -1
- package/dist/audit/clarification/riskGate.js +1 -0
- package/dist/audit/clarification/riskGate.js.map +1 -1
- package/dist/audit/clarification/voiQueue.d.ts +3 -3
- package/dist/audit/clarification/voiQueue.d.ts.map +1 -1
- package/dist/audit/clarification/voiQueue.js +1 -0
- package/dist/audit/clarification/voiQueue.js.map +1 -1
- package/dist/audit/cli/auditStep.d.ts +14 -2
- package/dist/audit/cli/auditStep.d.ts.map +1 -1
- package/dist/audit/cli/auditStep.js +13 -5
- package/dist/audit/cli/auditStep.js.map +1 -1
- package/dist/audit/cli/charterClarificationPrompt.d.ts +6 -9
- package/dist/audit/cli/charterClarificationPrompt.d.ts.map +1 -1
- package/dist/audit/cli/charterClarificationPrompt.js +35 -47
- package/dist/audit/cli/charterClarificationPrompt.js.map +1 -1
- package/dist/audit/cli/charterComparisonPrompt.d.ts +14 -0
- package/dist/audit/cli/charterComparisonPrompt.d.ts.map +1 -0
- package/dist/audit/cli/charterComparisonPrompt.js +111 -0
- package/dist/audit/cli/charterComparisonPrompt.js.map +1 -0
- package/dist/audit/cli/charterExtractionPrompt.d.ts +14 -17
- package/dist/audit/cli/charterExtractionPrompt.d.ts.map +1 -1
- package/dist/audit/cli/charterExtractionPrompt.js +81 -104
- package/dist/audit/cli/charterExtractionPrompt.js.map +1 -1
- package/dist/audit/cli/charterFidelityPrompt.d.ts +14 -0
- package/dist/audit/cli/charterFidelityPrompt.d.ts.map +1 -0
- package/dist/audit/cli/charterFidelityPrompt.js +58 -0
- package/dist/audit/cli/charterFidelityPrompt.js.map +1 -0
- package/dist/audit/cli/conceptualDispatch.d.ts +39 -6
- package/dist/audit/cli/conceptualDispatch.d.ts.map +1 -1
- package/dist/audit/cli/conceptualDispatch.js +59 -12
- 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 +46 -2
- package/dist/audit/cli/confirmIntentStep.js.map +1 -1
- package/dist/audit/cli/dispatch/hostHandoff.d.ts +18 -6
- package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/hostHandoff.js +525 -67
- package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
- package/dist/audit/cli/fanoutLanes.d.ts +24 -0
- package/dist/audit/cli/fanoutLanes.d.ts.map +1 -1
- package/dist/audit/cli/fanoutLanes.js +9 -1
- package/dist/audit/cli/fanoutLanes.js.map +1 -1
- package/dist/audit/cli/foldTransaction.d.ts.map +1 -1
- package/dist/audit/cli/foldTransaction.js +14 -3
- package/dist/audit/cli/foldTransaction.js.map +1 -1
- package/dist/audit/cli/forceSynthesisCommand.d.ts.map +1 -1
- package/dist/audit/cli/forceSynthesisCommand.js +4 -1
- package/dist/audit/cli/forceSynthesisCommand.js.map +1 -1
- package/dist/audit/cli/intakeCommand.d.ts.map +1 -1
- package/dist/audit/cli/intakeCommand.js +1 -0
- package/dist/audit/cli/intakeCommand.js.map +1 -1
- package/dist/audit/cli/laneSubmissions.d.ts +18 -12
- package/dist/audit/cli/laneSubmissions.d.ts.map +1 -1
- package/dist/audit/cli/laneSubmissions.js +40 -4
- package/dist/audit/cli/laneSubmissions.js.map +1 -1
- package/dist/audit/cli/laneValidators.d.ts.map +1 -1
- package/dist/audit/cli/laneValidators.js +14 -14
- package/dist/audit/cli/laneValidators.js.map +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts +7 -0
- package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +206 -31
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.d.ts +92 -28
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +363 -126
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/cli/prompts.d.ts +10 -0
- package/dist/audit/cli/prompts.d.ts.map +1 -1
- package/dist/audit/cli/prompts.js +3 -1
- package/dist/audit/cli/prompts.js.map +1 -1
- package/dist/audit/cli/reviewRun.d.ts +12 -0
- package/dist/audit/cli/reviewRun.d.ts.map +1 -1
- package/dist/audit/cli/reviewRun.js +242 -29
- package/dist/audit/cli/reviewRun.js.map +1 -1
- package/dist/audit/cli/sampleRunCommand.d.ts +12 -4
- package/dist/audit/cli/sampleRunCommand.d.ts.map +1 -1
- package/dist/audit/cli/semanticReviewStep.d.ts +9 -0
- package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
- package/dist/audit/cli/semanticReviewStep.js +71 -30
- package/dist/audit/cli/semanticReviewStep.js.map +1 -1
- package/dist/audit/cli/statusCommand.d.ts.map +1 -1
- package/dist/audit/cli/statusCommand.js +29 -66
- package/dist/audit/cli/statusCommand.js.map +1 -1
- package/dist/audit/cli/stepScaffold.d.ts +43 -2
- package/dist/audit/cli/stepScaffold.d.ts.map +1 -1
- package/dist/audit/cli/stepScaffold.js +24 -10
- package/dist/audit/cli/stepScaffold.js.map +1 -1
- package/dist/audit/cli/steps.d.ts +52 -29
- package/dist/audit/cli/steps.d.ts.map +1 -1
- package/dist/audit/cli/steps.js +44 -14
- package/dist/audit/cli/steps.js.map +1 -1
- package/dist/audit/cli/synthesizeCommand.d.ts.map +1 -1
- package/dist/audit/cli/synthesizeCommand.js +4 -1
- package/dist/audit/cli/synthesizeCommand.js.map +1 -1
- package/dist/audit/contracts/workerSchemas.d.ts +65 -16
- package/dist/audit/contracts/workerSchemas.d.ts.map +1 -1
- package/dist/audit/contracts/workerSchemas.js +89 -8
- package/dist/audit/contracts/workerSchemas.js.map +1 -1
- package/dist/audit/contracts/wrapperResponse.d.ts +14 -21
- package/dist/audit/contracts/wrapperResponse.d.ts.map +1 -1
- package/dist/audit/contracts/wrapperResponse.js +0 -1
- package/dist/audit/contracts/wrapperResponse.js.map +1 -1
- package/dist/audit/decompose/findings.d.ts.map +1 -1
- package/dist/audit/decompose/findings.js +10 -2
- package/dist/audit/decompose/findings.js.map +1 -1
- package/dist/audit/extractors/designAssessment.d.ts.map +1 -1
- package/dist/audit/extractors/designAssessment.js +13 -4
- package/dist/audit/extractors/designAssessment.js.map +1 -1
- package/dist/audit/extractors/disposition.d.ts.map +1 -1
- package/dist/audit/extractors/disposition.js +17 -5
- package/dist/audit/extractors/disposition.js.map +1 -1
- package/dist/audit/extractors/graph.d.ts +1 -1
- package/dist/audit/extractors/graph.js +1 -1
- package/dist/audit/extractors/graphRoutes.d.ts.map +1 -1
- package/dist/audit/extractors/graphRoutes.js +224 -17
- package/dist/audit/extractors/graphRoutes.js.map +1 -1
- package/dist/audit/extractors/leadLineage.d.ts +10 -0
- package/dist/audit/extractors/leadLineage.d.ts.map +1 -0
- package/dist/audit/extractors/leadLineage.js +44 -0
- package/dist/audit/extractors/leadLineage.js.map +1 -0
- package/dist/audit/io/artifacts.d.ts.map +1 -1
- package/dist/audit/io/artifacts.js +25 -8
- package/dist/audit/io/artifacts.js.map +1 -1
- package/dist/audit/io/runArtifacts.d.ts +76 -1
- package/dist/audit/io/runArtifacts.d.ts.map +1 -1
- package/dist/audit/io/runArtifacts.js +113 -20
- package/dist/audit/io/runArtifacts.js.map +1 -1
- package/dist/audit/io/toolingManifest.d.ts +15 -0
- package/dist/audit/io/toolingManifest.d.ts.map +1 -1
- package/dist/audit/io/toolingManifest.js +158 -11
- package/dist/audit/io/toolingManifest.js.map +1 -1
- package/dist/audit/orchestrator/advance.d.ts.map +1 -1
- package/dist/audit/orchestrator/advance.js +30 -4
- package/dist/audit/orchestrator/advance.js.map +1 -1
- package/dist/audit/orchestrator/advanceTypes.d.ts +28 -5
- package/dist/audit/orchestrator/advanceTypes.d.ts.map +1 -1
- package/dist/audit/orchestrator/artifactMetadata.d.ts.map +1 -1
- package/dist/audit/orchestrator/artifactMetadata.js +39 -1
- package/dist/audit/orchestrator/artifactMetadata.js.map +1 -1
- package/dist/audit/orchestrator/auditTaskUtils.d.ts.map +1 -1
- package/dist/audit/orchestrator/auditTaskUtils.js +4 -1
- package/dist/audit/orchestrator/auditTaskUtils.js.map +1 -1
- package/dist/audit/orchestrator/charterClarificationExecutor.d.ts +11 -17
- package/dist/audit/orchestrator/charterClarificationExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/charterClarificationExecutor.js +61 -93
- package/dist/audit/orchestrator/charterClarificationExecutor.js.map +1 -1
- package/dist/audit/orchestrator/charterComparisonExecutor.d.ts +24 -0
- package/dist/audit/orchestrator/charterComparisonExecutor.d.ts.map +1 -0
- package/dist/audit/orchestrator/charterComparisonExecutor.js +110 -0
- package/dist/audit/orchestrator/charterComparisonExecutor.js.map +1 -0
- package/dist/audit/orchestrator/charterExtractionExecutor.d.ts +34 -20
- package/dist/audit/orchestrator/charterExtractionExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/charterExtractionExecutor.js +80 -106
- package/dist/audit/orchestrator/charterExtractionExecutor.js.map +1 -1
- package/dist/audit/orchestrator/charterFidelityExecutor.d.ts +20 -0
- package/dist/audit/orchestrator/charterFidelityExecutor.d.ts.map +1 -0
- package/dist/audit/orchestrator/charterFidelityExecutor.js +76 -0
- package/dist/audit/orchestrator/charterFidelityExecutor.js.map +1 -0
- package/dist/audit/orchestrator/charterFidelityPacket.d.ts +7 -0
- package/dist/audit/orchestrator/charterFidelityPacket.d.ts.map +1 -0
- package/dist/audit/orchestrator/charterFidelityPacket.js +68 -0
- package/dist/audit/orchestrator/charterFidelityPacket.js.map +1 -0
- package/dist/audit/orchestrator/dependencyMap.d.ts.map +1 -1
- package/dist/audit/orchestrator/dependencyMap.js +9 -8
- 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 +7 -6
- package/dist/audit/orchestrator/dependencySlices.js.map +1 -1
- package/dist/audit/orchestrator/designReviewProjection.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewProjection.js +7 -0
- package/dist/audit/orchestrator/designReviewProjection.js.map +1 -1
- package/dist/audit/orchestrator/designReviewPrompt.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewPrompt.js +58 -19
- package/dist/audit/orchestrator/designReviewPrompt.js.map +1 -1
- package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
- package/dist/audit/orchestrator/executorRunners.js +6 -2
- package/dist/audit/orchestrator/executorRunners.js.map +1 -1
- package/dist/audit/orchestrator/executors.d.ts.map +1 -1
- package/dist/audit/orchestrator/executors.js +22 -8
- package/dist/audit/orchestrator/executors.js.map +1 -1
- package/dist/audit/orchestrator/hostInputPause.js +1 -0
- package/dist/audit/orchestrator/hostInputPause.js.map +1 -1
- package/dist/audit/orchestrator/intentCheckpointExecutor.d.ts +40 -0
- package/dist/audit/orchestrator/intentCheckpointExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/intentCheckpointExecutor.js +32 -2
- package/dist/audit/orchestrator/intentCheckpointExecutor.js.map +1 -1
- package/dist/audit/orchestrator/intentCheckpointGate.d.ts +5 -3
- package/dist/audit/orchestrator/intentCheckpointGate.d.ts.map +1 -1
- package/dist/audit/orchestrator/intentCheckpointGate.js +34 -5
- package/dist/audit/orchestrator/intentCheckpointGate.js.map +1 -1
- package/dist/audit/orchestrator/intentEquivalenceExecutor.d.ts +2 -2
- package/dist/audit/orchestrator/intentInterpreter.d.ts +1 -1
- package/dist/audit/orchestrator/intentInterpreter.js +1 -1
- package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
- package/dist/audit/orchestrator/nextStep.js +3 -1
- package/dist/audit/orchestrator/nextStep.js.map +1 -1
- package/dist/audit/orchestrator/obligationPolicy.d.ts +2 -1
- package/dist/audit/orchestrator/obligationPolicy.d.ts.map +1 -1
- package/dist/audit/orchestrator/obligationPolicy.js +19 -7
- package/dist/audit/orchestrator/obligationPolicy.js.map +1 -1
- package/dist/audit/orchestrator/partitionTaskGraph.d.ts.map +1 -1
- package/dist/audit/orchestrator/partitionTaskGraph.js +1 -0
- package/dist/audit/orchestrator/partitionTaskGraph.js.map +1 -1
- package/dist/audit/orchestrator/resultIngestion.d.ts.map +1 -1
- package/dist/audit/orchestrator/resultIngestion.js +3 -1
- package/dist/audit/orchestrator/resultIngestion.js.map +1 -1
- package/dist/audit/orchestrator/runtimeCommand.d.ts +72 -0
- package/dist/audit/orchestrator/runtimeCommand.d.ts.map +1 -1
- package/dist/audit/orchestrator/runtimeCommand.js +177 -20
- package/dist/audit/orchestrator/runtimeCommand.js.map +1 -1
- package/dist/audit/orchestrator/scopeIndexBaseline.d.ts +56 -0
- package/dist/audit/orchestrator/scopeIndexBaseline.d.ts.map +1 -0
- package/dist/audit/orchestrator/scopeIndexBaseline.js +114 -0
- package/dist/audit/orchestrator/scopeIndexBaseline.js.map +1 -0
- package/dist/audit/orchestrator/staleness.d.ts +70 -1
- package/dist/audit/orchestrator/staleness.d.ts.map +1 -1
- package/dist/audit/orchestrator/staleness.js +171 -21
- 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 +49 -25
- package/dist/audit/orchestrator/state.js.map +1 -1
- package/dist/audit/orchestrator/structureExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/structureExecutors.js +7 -5
- package/dist/audit/orchestrator/structureExecutors.js.map +1 -1
- package/dist/audit/orchestrator/syntaxResolutionExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/syntaxResolutionExecutor.js +1 -0
- package/dist/audit/orchestrator/syntaxResolutionExecutor.js.map +1 -1
- package/dist/audit/orchestrator/systemicChallengeExecutor.d.ts +13 -2
- package/dist/audit/orchestrator/systemicChallengeExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/systemicChallengeExecutor.js +166 -12
- package/dist/audit/orchestrator/systemicChallengeExecutor.js.map +1 -1
- package/dist/audit/reporting/mergeFindings.d.ts.map +1 -1
- package/dist/audit/reporting/mergeFindings.js +6 -5
- package/dist/audit/reporting/mergeFindings.js.map +1 -1
- package/dist/audit/reporting/synthesis.d.ts +117 -0
- package/dist/audit/reporting/synthesis.d.ts.map +1 -1
- package/dist/audit/reporting/synthesis.js +277 -10
- package/dist/audit/reporting/synthesis.js.map +1 -1
- package/dist/audit/supervisor/operatorHandoff.d.ts +0 -2
- package/dist/audit/supervisor/operatorHandoff.d.ts.map +1 -1
- package/dist/audit/supervisor/operatorHandoff.js +0 -3
- package/dist/audit/supervisor/operatorHandoff.js.map +1 -1
- package/dist/audit/systemic/coveredThemes.d.ts +28 -0
- package/dist/audit/systemic/coveredThemes.d.ts.map +1 -0
- package/dist/audit/systemic/coveredThemes.js +52 -0
- package/dist/audit/systemic/coveredThemes.js.map +1 -0
- package/dist/audit/systemic/reviewFileMap.d.ts +81 -0
- package/dist/audit/systemic/reviewFileMap.d.ts.map +1 -0
- package/dist/audit/systemic/reviewFileMap.js +169 -0
- package/dist/audit/systemic/reviewFileMap.js.map +1 -0
- package/dist/audit/systemic/secondOrderAdversaryPrompt.d.ts.map +1 -1
- package/dist/audit/systemic/secondOrderAdversaryPrompt.js +149 -26
- package/dist/audit/systemic/secondOrderAdversaryPrompt.js.map +1 -1
- package/dist/audit/systemic/systemicChallengeLoop.d.ts +44 -4
- package/dist/audit/systemic/systemicChallengeLoop.d.ts.map +1 -1
- package/dist/audit/systemic/systemicChallengeLoop.js +114 -10
- package/dist/audit/systemic/systemicChallengeLoop.js.map +1 -1
- package/dist/audit/types/auditState.d.ts +6 -6
- package/dist/audit/types/charterClarification.d.ts +9 -4
- package/dist/audit/types/charterClarification.d.ts.map +1 -1
- package/dist/audit/types/charterRegister.d.ts +48 -93
- package/dist/audit/types/charterRegister.d.ts.map +1 -1
- package/dist/audit/types/charterRegister.js +15 -26
- package/dist/audit/types/charterRegister.js.map +1 -1
- package/dist/audit/types/conceptualAdjudication.d.ts +88 -18
- package/dist/audit/types/conceptualAdjudication.d.ts.map +1 -1
- package/dist/audit/types/conceptualAdjudication.js +77 -16
- package/dist/audit/types/conceptualAdjudication.js.map +1 -1
- package/dist/audit/types/designAssessment.d.ts +8 -6
- package/dist/audit/types/designAssessment.d.ts.map +1 -1
- package/dist/audit/types/reviewPlanning.d.ts +2 -2
- package/dist/audit/types/systemicChallenge.d.ts +43 -7
- package/dist/audit/types/systemicChallenge.d.ts.map +1 -1
- package/dist/audit/types.d.ts +71 -10
- package/dist/audit/types.d.ts.map +1 -1
- package/dist/audit/types.js +23 -2
- package/dist/audit/types.js.map +1 -1
- package/dist/audit/validation/auditResults.d.ts +30 -0
- package/dist/audit/validation/auditResults.d.ts.map +1 -1
- package/dist/audit/validation/auditResults.js +50 -8
- package/dist/audit/validation/auditResults.js.map +1 -1
- package/dist/audit/validation/ingestIssueCodes.d.ts +1 -1
- package/dist/audit/validation/ingestIssueCodes.d.ts.map +1 -1
- package/dist/audit/validation/ingestIssueCodes.js +14 -0
- package/dist/audit/validation/ingestIssueCodes.js.map +1 -1
- package/dist/remediate/contractPipeline/artifactStore.d.ts +97 -2
- package/dist/remediate/contractPipeline/artifactStore.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/artifactStore.js +163 -9
- package/dist/remediate/contractPipeline/artifactStore.js.map +1 -1
- package/dist/remediate/contractPipeline/changeClassification.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/changeClassification.js +93 -3
- package/dist/remediate/contractPipeline/changeClassification.js.map +1 -1
- package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/cyclicSeamResolution.js +31 -0
- package/dist/remediate/contractPipeline/cyclicSeamResolution.js.map +1 -1
- package/dist/remediate/contractPipeline/derive.d.ts +0 -14
- package/dist/remediate/contractPipeline/derive.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/derive.js +52 -24
- package/dist/remediate/contractPipeline/derive.js.map +1 -1
- package/dist/remediate/contractPipeline/finalizedContractFields.d.ts +50 -0
- package/dist/remediate/contractPipeline/finalizedContractFields.d.ts.map +1 -0
- package/dist/remediate/contractPipeline/finalizedContractFields.js +77 -0
- package/dist/remediate/contractPipeline/finalizedContractFields.js.map +1 -0
- package/dist/remediate/contractPipeline/idRegistry.d.ts +85 -0
- package/dist/remediate/contractPipeline/idRegistry.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/idRegistry.js +147 -0
- package/dist/remediate/contractPipeline/idRegistry.js.map +1 -1
- package/dist/remediate/contractPipeline/phaseCut.d.ts +13 -16
- package/dist/remediate/contractPipeline/phaseCut.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/phaseCut.js +15 -30
- package/dist/remediate/contractPipeline/phaseCut.js.map +1 -1
- package/dist/remediate/contractPipeline/reviewSnapshot.d.ts +20 -1
- package/dist/remediate/contractPipeline/reviewSnapshot.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/reviewSnapshot.js +23 -7
- package/dist/remediate/contractPipeline/reviewSnapshot.js.map +1 -1
- package/dist/remediate/contractPipeline/semanticProjection.d.ts +17 -0
- package/dist/remediate/contractPipeline/semanticProjection.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/semanticProjection.js +6 -9
- package/dist/remediate/contractPipeline/semanticProjection.js.map +1 -1
- package/dist/remediate/contractPipeline/sketchSource.d.ts +183 -0
- package/dist/remediate/contractPipeline/sketchSource.d.ts.map +1 -0
- package/dist/remediate/contractPipeline/sketchSource.js +255 -0
- package/dist/remediate/contractPipeline/sketchSource.js.map +1 -0
- package/dist/remediate/findingFilter.d.ts.map +1 -1
- package/dist/remediate/findingFilter.js +1 -0
- package/dist/remediate/findingFilter.js.map +1 -1
- package/dist/remediate/index.d.ts +81 -0
- package/dist/remediate/index.d.ts.map +1 -1
- package/dist/remediate/index.js +162 -53
- package/dist/remediate/index.js.map +1 -1
- package/dist/remediate/intake.d.ts +43 -0
- package/dist/remediate/intake.d.ts.map +1 -1
- package/dist/remediate/intake.js +82 -13
- package/dist/remediate/intake.js.map +1 -1
- package/dist/remediate/phases/close.d.ts +33 -2
- package/dist/remediate/phases/close.d.ts.map +1 -1
- package/dist/remediate/phases/close.js +227 -13
- package/dist/remediate/phases/close.js.map +1 -1
- package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts +154 -0
- package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts.map +1 -0
- package/dist/remediate/phases/closeVerifyHeadEvidence.js +242 -0
- package/dist/remediate/phases/closeVerifyHeadEvidence.js.map +1 -0
- package/dist/remediate/state/runStatus.d.ts +35 -0
- package/dist/remediate/state/runStatus.d.ts.map +1 -0
- package/dist/remediate/state/runStatus.js +46 -0
- package/dist/remediate/state/runStatus.js.map +1 -0
- package/dist/remediate/state/store.d.ts +52 -2
- package/dist/remediate/state/store.d.ts.map +1 -1
- package/dist/remediate/state/store.js +124 -21
- package/dist/remediate/state/store.js.map +1 -1
- package/dist/remediate/state/types.d.ts +83 -13
- package/dist/remediate/state/types.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.d.ts +65 -1
- package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.js +302 -85
- package/dist/remediate/steps/contractPipeline.js.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.js +58 -21
- package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
- package/dist/remediate/steps/dispatch/hostHandoff.d.ts +87 -2
- package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/hostHandoff.js +344 -44
- package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
- package/dist/remediate/steps/finalGate.d.ts +109 -5
- package/dist/remediate/steps/finalGate.d.ts.map +1 -1
- package/dist/remediate/steps/finalGate.js +135 -27
- package/dist/remediate/steps/finalGate.js.map +1 -1
- package/dist/remediate/steps/gateCommands.d.ts +167 -0
- package/dist/remediate/steps/gateCommands.d.ts.map +1 -1
- package/dist/remediate/steps/gateCommands.js +428 -1
- package/dist/remediate/steps/gateCommands.js.map +1 -1
- package/dist/remediate/steps/intakeResolver.d.ts +2 -13
- package/dist/remediate/steps/intakeResolver.d.ts.map +1 -1
- package/dist/remediate/steps/intakeResolver.js +22 -4
- package/dist/remediate/steps/intakeResolver.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts +44 -40
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +501 -106
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/remediate/steps/stepWriter.d.ts +1 -1
- package/dist/remediate/steps/stepWriter.d.ts.map +1 -1
- package/dist/remediate/steps/stepWriter.js +1 -0
- package/dist/remediate/steps/stepWriter.js.map +1 -1
- package/dist/remediate/steps/types.d.ts +32 -1
- package/dist/remediate/steps/types.d.ts.map +1 -1
- package/dist/remediate/steps/types.js +1 -0
- package/dist/remediate/steps/types.js.map +1 -1
- package/dist/remediate/types/options.d.ts +8 -0
- package/dist/remediate/types/options.d.ts.map +1 -1
- package/dist/remediate/utils/fileIntegrity.d.ts +8 -0
- package/dist/remediate/utils/fileIntegrity.d.ts.map +1 -1
- package/dist/remediate/utils/fileIntegrity.js +12 -1
- package/dist/remediate/utils/fileIntegrity.js.map +1 -1
- package/dist/remediate/validation/artifacts.d.ts +1 -1
- package/dist/remediate/validation/artifacts.d.ts.map +1 -1
- package/dist/remediate/validation/artifacts.js +19 -2
- package/dist/remediate/validation/artifacts.js.map +1 -1
- package/dist/remediate/validation/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/validation/contractPipeline.js +26 -39
- package/dist/remediate/validation/contractPipeline.js.map +1 -1
- package/dist/remediate/validation/contractPipelineGates.d.ts +18 -1
- package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
- package/dist/remediate/validation/contractPipelineGates.js +33 -5
- package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
- package/dist/shared/analyzers/acquisitionEngine.d.ts +83 -5
- package/dist/shared/analyzers/acquisitionEngine.d.ts.map +1 -1
- package/dist/shared/analyzers/acquisitionEngine.js +46 -14
- package/dist/shared/analyzers/acquisitionEngine.js.map +1 -1
- package/dist/shared/analyzers/binaryAcquisition.d.ts +35 -2
- package/dist/shared/analyzers/binaryAcquisition.d.ts.map +1 -1
- package/dist/shared/analyzers/binaryAcquisition.js +5 -5
- package/dist/shared/analyzers/binaryAcquisition.js.map +1 -1
- package/dist/shared/analyzers/candidates.d.ts.map +1 -1
- package/dist/shared/analyzers/candidates.js +1 -0
- package/dist/shared/analyzers/candidates.js.map +1 -1
- package/dist/shared/analyzers/clippy.d.ts +9 -1
- package/dist/shared/analyzers/clippy.d.ts.map +1 -1
- package/dist/shared/analyzers/clippy.js +10 -2
- package/dist/shared/analyzers/clippy.js.map +1 -1
- package/dist/shared/analyzers/normalizeExternal.d.ts.map +1 -1
- package/dist/shared/analyzers/normalizeExternal.js +1 -0
- package/dist/shared/analyzers/normalizeExternal.js.map +1 -1
- package/dist/shared/analyzers/rubocop.d.ts +7 -1
- package/dist/shared/analyzers/rubocop.d.ts.map +1 -1
- package/dist/shared/analyzers/rubocop.js +8 -2
- package/dist/shared/analyzers/rubocop.js.map +1 -1
- package/dist/shared/analyzers/types.d.ts +24 -24
- package/dist/shared/analyzers/types.d.ts.map +1 -1
- package/dist/shared/analyzers/types.js +15 -0
- package/dist/shared/analyzers/types.js.map +1 -1
- package/dist/shared/artifactFreshness.d.ts.map +1 -1
- package/dist/shared/artifactFreshness.js +42 -7
- package/dist/shared/artifactFreshness.js.map +1 -1
- package/dist/shared/chunkByBudget.d.ts.map +1 -1
- package/dist/shared/chunkByBudget.js.map +1 -1
- package/dist/shared/continuityScore.d.ts.map +1 -1
- package/dist/shared/continuityScore.js +12 -4
- package/dist/shared/continuityScore.js.map +1 -1
- package/dist/shared/decompose/charterClarification.d.ts +49 -45
- package/dist/shared/decompose/charterClarification.d.ts.map +1 -1
- package/dist/shared/decompose/charterClarification.js +50 -57
- package/dist/shared/decompose/charterClarification.js.map +1 -1
- package/dist/shared/decompose/charterExtraction.d.ts +616 -342
- package/dist/shared/decompose/charterExtraction.d.ts.map +1 -1
- package/dist/shared/decompose/charterExtraction.js +590 -488
- package/dist/shared/decompose/charterExtraction.js.map +1 -1
- package/dist/shared/decompose/contentCoherence.d.ts +36 -2
- package/dist/shared/decompose/contentCoherence.d.ts.map +1 -1
- package/dist/shared/decompose/contentCoherence.js +45 -5
- package/dist/shared/decompose/contentCoherence.js.map +1 -1
- package/dist/shared/decompose/modularity.d.ts +98 -1
- package/dist/shared/decompose/modularity.d.ts.map +1 -1
- package/dist/shared/decompose/modularity.js +89 -8
- package/dist/shared/decompose/modularity.js.map +1 -1
- package/dist/shared/decompose/systemicChallenge.d.ts +111 -0
- package/dist/shared/decompose/systemicChallenge.d.ts.map +1 -1
- package/dist/shared/decompose/systemicChallenge.js +28 -0
- package/dist/shared/decompose/systemicChallenge.js.map +1 -1
- package/dist/shared/engine/obligationEngine.d.ts +2 -2
- package/dist/shared/engine/obligationEngine.d.ts.map +1 -1
- package/dist/shared/engine/obligationEngine.js +8 -2
- package/dist/shared/engine/obligationEngine.js.map +1 -1
- package/dist/shared/findingSimilarity.d.ts +8 -0
- package/dist/shared/findingSimilarity.d.ts.map +1 -1
- package/dist/shared/findingSimilarity.js +10 -3
- package/dist/shared/findingSimilarity.js.map +1 -1
- package/dist/shared/findings/dedupe.d.ts +15 -0
- package/dist/shared/findings/dedupe.d.ts.map +1 -1
- package/dist/shared/findings/dedupe.js +137 -1
- package/dist/shared/findings/dedupe.js.map +1 -1
- package/dist/shared/friction/frictionRecord.d.ts.map +1 -1
- package/dist/shared/friction/frictionRecord.js +14 -1
- package/dist/shared/friction/frictionRecord.js.map +1 -1
- package/dist/shared/friction/triage.d.ts +4 -0
- package/dist/shared/friction/triage.d.ts.map +1 -1
- package/dist/shared/friction/triage.js +41 -29
- package/dist/shared/friction/triage.js.map +1 -1
- package/dist/shared/git.d.ts +14 -0
- package/dist/shared/git.d.ts.map +1 -1
- package/dist/shared/git.js +22 -0
- package/dist/shared/git.js.map +1 -1
- package/dist/shared/index.d.ts +42 -38
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +35 -23
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/intent/clauseBoundaries.d.ts +75 -0
- package/dist/shared/intent/clauseBoundaries.d.ts.map +1 -0
- package/dist/shared/intent/clauseBoundaries.js +134 -0
- package/dist/shared/intent/clauseBoundaries.js.map +1 -0
- package/dist/shared/intent/clauseInterpreter.d.ts +11 -5
- package/dist/shared/intent/clauseInterpreter.d.ts.map +1 -1
- package/dist/shared/intent/clauseInterpreter.js +16 -41
- package/dist/shared/intent/clauseInterpreter.js.map +1 -1
- package/dist/shared/intent/freeFormIntentInterpreter.d.ts +11 -0
- package/dist/shared/intent/freeFormIntentInterpreter.d.ts.map +1 -1
- package/dist/shared/intent/freeFormIntentInterpreter.js +31 -17
- package/dist/shared/intent/freeFormIntentInterpreter.js.map +1 -1
- package/dist/shared/io/fileLock.d.ts.map +1 -1
- package/dist/shared/io/fileLock.js +18 -6
- package/dist/shared/io/fileLock.js.map +1 -1
- package/dist/shared/io/frictionCapture.d.ts +25 -5
- package/dist/shared/io/frictionCapture.d.ts.map +1 -1
- package/dist/shared/io/frictionCapture.js +30 -9
- package/dist/shared/io/frictionCapture.js.map +1 -1
- package/dist/shared/io/schemaVersion.d.ts +4 -3
- package/dist/shared/io/schemaVersion.d.ts.map +1 -1
- package/dist/shared/io/schemaVersion.js +27 -4
- package/dist/shared/io/schemaVersion.js.map +1 -1
- package/dist/shared/io/stepContractWriter.d.ts +38 -4
- package/dist/shared/io/stepContractWriter.d.ts.map +1 -1
- package/dist/shared/io/stepContractWriter.js +59 -1
- package/dist/shared/io/stepContractWriter.js.map +1 -1
- package/dist/shared/loopCorePaths.d.ts.map +1 -1
- package/dist/shared/loopCorePaths.js +8 -0
- package/dist/shared/loopCorePaths.js.map +1 -1
- package/dist/shared/opencodePermissions.d.ts +27 -3
- package/dist/shared/opencodePermissions.d.ts.map +1 -1
- package/dist/shared/opencodePermissions.js +77 -26
- package/dist/shared/opencodePermissions.js.map +1 -1
- package/dist/shared/prompts.d.ts +12 -1
- package/dist/shared/prompts.d.ts.map +1 -1
- package/dist/shared/prompts.js +11 -1
- package/dist/shared/prompts.js.map +1 -1
- package/dist/shared/reReview/projectionDiff.d.ts +13 -0
- package/dist/shared/reReview/projectionDiff.d.ts.map +1 -1
- package/dist/shared/reReview/projectionDiff.js +1 -1
- package/dist/shared/reReview/projectionDiff.js.map +1 -1
- package/dist/shared/reporting/findingDisplay.d.ts +7 -0
- package/dist/shared/reporting/findingDisplay.d.ts.map +1 -1
- package/dist/shared/reporting/findingDisplay.js +8 -1
- package/dist/shared/reporting/findingDisplay.js.map +1 -1
- package/dist/shared/steps/stepEmissionScaffold.d.ts +15 -3
- package/dist/shared/steps/stepEmissionScaffold.d.ts.map +1 -1
- package/dist/shared/steps/stepEmissionScaffold.js +8 -6
- package/dist/shared/steps/stepEmissionScaffold.js.map +1 -1
- package/dist/shared/submission/hostHandoffCore.d.ts +37 -12
- package/dist/shared/submission/hostHandoffCore.d.ts.map +1 -1
- package/dist/shared/submission/hostHandoffCore.js +81 -18
- package/dist/shared/submission/hostHandoffCore.js.map +1 -1
- package/dist/shared/submission/hostResultOutcomes.d.ts +70 -1
- package/dist/shared/submission/hostResultOutcomes.d.ts.map +1 -1
- package/dist/shared/submission/hostResultOutcomes.js +66 -1
- package/dist/shared/submission/hostResultOutcomes.js.map +1 -1
- package/dist/shared/submission/submissionLedger.d.ts +86 -1
- package/dist/shared/submission/submissionLedger.d.ts.map +1 -1
- package/dist/shared/submission/submissionLedger.js +108 -0
- package/dist/shared/submission/submissionLedger.js.map +1 -1
- package/dist/shared/submission/submissionScan.d.ts.map +1 -1
- package/dist/shared/submission/submissionScan.js +1 -0
- package/dist/shared/submission/submissionScan.js.map +1 -1
- package/dist/shared/tooling/analyzerDeps.d.ts +14 -0
- package/dist/shared/tooling/analyzerDeps.d.ts.map +1 -1
- package/dist/shared/tooling/analyzerDeps.js +23 -0
- package/dist/shared/tooling/analyzerDeps.js.map +1 -1
- package/dist/shared/tooling/commandShape.d.ts +35 -1
- package/dist/shared/tooling/commandShape.d.ts.map +1 -1
- package/dist/shared/tooling/commandShape.js +66 -4
- package/dist/shared/tooling/commandShape.js.map +1 -1
- package/dist/shared/tooling/exec.d.ts +62 -4
- package/dist/shared/tooling/exec.d.ts.map +1 -1
- package/dist/shared/tooling/exec.js +127 -8
- package/dist/shared/tooling/exec.js.map +1 -1
- package/dist/shared/types/charter.d.ts +674 -156
- package/dist/shared/types/charter.d.ts.map +1 -1
- package/dist/shared/types/charter.js +172 -118
- package/dist/shared/types/charter.js.map +1 -1
- package/dist/shared/types/closingActions.d.ts +25 -0
- package/dist/shared/types/closingActions.d.ts.map +1 -1
- package/dist/shared/types/closingActions.js +26 -0
- package/dist/shared/types/closingActions.js.map +1 -1
- package/dist/shared/types/contractPipeline/obligations.d.ts +63 -2
- package/dist/shared/types/contractPipeline/obligations.d.ts.map +1 -1
- package/dist/shared/types/contractPipeline/obligations.js +51 -0
- package/dist/shared/types/contractPipeline/obligations.js.map +1 -1
- package/dist/shared/types/contractPipeline.d.ts +1 -0
- package/dist/shared/types/contractPipeline.d.ts.map +1 -1
- package/dist/shared/types/contractPipeline.js +1 -0
- package/dist/shared/types/contractPipeline.js.map +1 -1
- package/dist/shared/types/contractPropertyShapes.d.ts +34 -0
- package/dist/shared/types/contractPropertyShapes.d.ts.map +1 -0
- package/dist/shared/types/contractPropertyShapes.js +255 -0
- package/dist/shared/types/contractPropertyShapes.js.map +1 -0
- package/dist/shared/types/finding.d.ts +376 -18
- package/dist/shared/types/finding.d.ts.map +1 -1
- package/dist/shared/types/finding.js +111 -0
- package/dist/shared/types/finding.js.map +1 -1
- package/dist/shared/types/intentCheckpoint.d.ts +214 -2
- package/dist/shared/types/intentCheckpoint.d.ts.map +1 -1
- package/dist/shared/types/intentCheckpoint.js +273 -0
- package/dist/shared/types/intentCheckpoint.js.map +1 -1
- package/dist/shared/types/intentInterpretation.d.ts +1 -1
- package/dist/shared/types/intentInterpretation.js +1 -1
- package/dist/shared/types/remediationOutcome.d.ts +294 -30
- package/dist/shared/types/remediationOutcome.d.ts.map +1 -1
- package/dist/shared/types/remediationOutcome.js +96 -7
- package/dist/shared/types/remediationOutcome.js.map +1 -1
- package/dist/shared/types/stepContract.d.ts +47 -0
- package/dist/shared/types/stepContract.d.ts.map +1 -1
- package/dist/shared/types/stepContract.js +113 -0
- package/dist/shared/types/stepContract.js.map +1 -1
- package/dist/shared/validation/charterGate.d.ts +13 -28
- package/dist/shared/validation/charterGate.d.ts.map +1 -1
- package/dist/shared/validation/charterGate.js +13 -35
- package/dist/shared/validation/charterGate.js.map +1 -1
- package/dist/shared/validation/contractConstructionSites.d.ts +116 -0
- package/dist/shared/validation/contractConstructionSites.d.ts.map +1 -0
- package/dist/shared/validation/contractConstructionSites.js +277 -0
- package/dist/shared/validation/contractConstructionSites.js.map +1 -0
- package/dist/shared/validation/designFindingGrounding.d.ts +33 -4
- package/dist/shared/validation/designFindingGrounding.d.ts.map +1 -1
- package/dist/shared/validation/designFindingGrounding.js +40 -6
- package/dist/shared/validation/designFindingGrounding.js.map +1 -1
- package/dist/shared/validation/findingGrounding.d.ts.map +1 -1
- package/dist/shared/validation/findingGrounding.js +11 -1
- package/dist/shared/validation/findingGrounding.js.map +1 -1
- package/dist/shared/validation/findingsReport.d.ts.map +1 -1
- package/dist/shared/validation/findingsReport.js +5 -0
- package/dist/shared/validation/findingsReport.js.map +1 -1
- package/docs/audit-pkg/contracts.md +8 -2
- package/opencode.json +29 -29
- package/package.json +16 -3
- package/schemas/audit-code-v1alpha1.schema.json +0 -4
- package/scripts/audit/postinstall.mjs +81 -96
- package/scripts/remediate/postinstall.mjs +43 -83
- package/scripts/shared/host-asset-plan.mjs +176 -0
- package/scripts/shared/install-host-assets.mjs +44 -1
- package/scripts/shared/primitives.mjs +89 -0
- package/skills/audit-code/SKILL.md +4 -4
- package/skills/audit-code/audit-code.prompt.md +14 -10
- package/skills/remediate-code/SKILL.md +9 -5
- package/skills/remediate-code/remediate-code.prompt.md +11 -4
- package/wrapper/audit-code-wrapper-build.mjs +6 -3
- package/dist/audit/cli/charterDeltaPrompt.d.ts +0 -18
- package/dist/audit/cli/charterDeltaPrompt.d.ts.map +0 -1
- package/dist/audit/cli/charterDeltaPrompt.js +0 -150
- package/dist/audit/cli/charterDeltaPrompt.js.map +0 -1
- package/dist/audit/orchestrator/charterDeltaExecutor.d.ts +0 -24
- package/dist/audit/orchestrator/charterDeltaExecutor.d.ts.map +0 -1
- package/dist/audit/orchestrator/charterDeltaExecutor.js +0 -128
- package/dist/audit/orchestrator/charterDeltaExecutor.js.map +0 -1
- package/dist/audit/supervisor/runLedger.d.ts +0 -3
- package/dist/audit/supervisor/runLedger.d.ts.map +0 -1
- package/dist/audit/supervisor/runLedger.js +0 -69
- package/dist/audit/supervisor/runLedger.js.map +0 -1
- package/dist/shared/types/executionRecord.d.ts +0 -58
- package/dist/shared/types/executionRecord.d.ts.map +0 -1
- package/dist/shared/types/executionRecord.js +0 -26
- package/dist/shared/types/executionRecord.js.map +0 -1
- package/dist/shared/types/runLedger.d.ts +0 -17
- package/dist/shared/types/runLedger.d.ts.map +0 -1
- package/dist/shared/types/runLedger.js +0 -7
- package/dist/shared/types/runLedger.js.map +0 -1
|
@@ -1,19 +1,44 @@
|
|
|
1
1
|
import { mkdir } from "node:fs/promises";
|
|
2
2
|
import { join } from "node:path";
|
|
3
|
-
import { createLockedJsonStore, LOCKED_JSON_STORE_TIMEOUT_MS, assertNotNodeWorktreeCwd, } from "audit-tools/shared";
|
|
3
|
+
import { createLockedJsonStore, LOCKED_JSON_STORE_TIMEOUT_MS, SchemaVersionMismatchError, SKIP_WRITE, assertNotNodeWorktreeCwd, } from "audit-tools/shared";
|
|
4
4
|
import { RemediationHostHandoffRecordSchema, } from "./types.js";
|
|
5
5
|
import { validateRemediationBlock } from "../validation/remediationState.js";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
import { REMEDIATION_RUN_STATUSES, isRemediationRunStatus, } from "./runStatus.js";
|
|
7
|
+
/**
|
|
8
|
+
* The schema version stamped on every persisted `state.json`.
|
|
9
|
+
*
|
|
10
|
+
* The VALUE is unchanged from the literal three modules already spelled out
|
|
11
|
+
* (the host-handoff parser, the state-shaping helper in `nextStep.ts`, and the
|
|
12
|
+
* test fixtures). What changes is that it is now ONE declaration that the store
|
|
13
|
+
* actually writes and reads back, rather than a constant a reader FABRICATED
|
|
14
|
+
* onto the loaded value to satisfy its own parser — see `parseCurrentState`'s
|
|
15
|
+
* call site in `steps/dispatch/hostHandoff.ts`. An identity that the reader
|
|
16
|
+
* supplies itself is not a check; it is the check's answer written in advance.
|
|
17
|
+
*
|
|
18
|
+
* A run's state is COSTLY / AUTHORED state in the sense
|
|
19
|
+
* `audit-tools/shared/io/schemaVersion.ts` names: it records work an operator
|
|
20
|
+
* or a host has already done, and it cannot be rebuilt from anything else on
|
|
21
|
+
* disk. That module's policy is therefore THROW on a mismatch — silently
|
|
22
|
+
* discarding a state would read as "this run never started" and destroy the
|
|
23
|
+
* plan, the item ledger and every recorded acceptance with it.
|
|
24
|
+
*
|
|
25
|
+
* ABSENT IS NOT A MISMATCH, and the distinction is deliberate here rather than
|
|
26
|
+
* inherited. Every run already in flight when this field was introduced has a
|
|
27
|
+
* `state.json` with no `contract_version`; treating its absence as a mismatch
|
|
28
|
+
* would refuse to load exactly the runs this field exists to protect. An
|
|
29
|
+
* unstamped state is read under the CURRENT version's semantics (it was written
|
|
30
|
+
* by a release whose shape this one still admits — that is what makes the field
|
|
31
|
+
* safe to add), and the next write stamps it. A stamped-but-DIFFERENT version
|
|
32
|
+
* is the case that throws, because at that point the file positively claims
|
|
33
|
+
* another release's semantics rather than merely predating the field.
|
|
34
|
+
*
|
|
35
|
+
* Same asymmetry as `intent_checkpoint` (absent ⇒ nothing to check; present
|
|
36
|
+
* and different ⇒ refuse loudly), inverted for a version that is newly added
|
|
37
|
+
* rather than newly REQUIRED.
|
|
38
|
+
*/
|
|
39
|
+
export const REMEDIATION_STATE_CONTRACT_VERSION = "remediate-code-state/v1alpha1";
|
|
40
|
+
/** The file this store owns, named once so the version error can name it too. */
|
|
41
|
+
const STATE_FILENAME = "state.json";
|
|
17
42
|
/**
|
|
18
43
|
* Statuses whose derived step decisions READ the plan/items — a state in one of
|
|
19
44
|
* these with those fields missing is unusable (the state machine would crash or,
|
|
@@ -35,15 +60,30 @@ function validateState(value) {
|
|
|
35
60
|
return errors;
|
|
36
61
|
}
|
|
37
62
|
const obj = value;
|
|
63
|
+
// The contract version, checked BEFORE anything is read off the state: a file
|
|
64
|
+
// that positively claims another release's semantics must not have its fields
|
|
65
|
+
// interpreted under this one's. ABSENT is admitted (see
|
|
66
|
+
// REMEDIATION_STATE_CONTRACT_VERSION) — this is the stamped-and-different case
|
|
67
|
+
// only, which throws rather than degrading because the state is authored,
|
|
68
|
+
// unrebuildable work.
|
|
69
|
+
if (obj["contract_version"] !== undefined &&
|
|
70
|
+
obj["contract_version"] !== REMEDIATION_STATE_CONTRACT_VERSION) {
|
|
71
|
+
throw new SchemaVersionMismatchError(STATE_FILENAME, REMEDIATION_STATE_CONTRACT_VERSION, String(obj["contract_version"]));
|
|
72
|
+
}
|
|
38
73
|
if (!("status" in obj)) {
|
|
39
74
|
errors.push("Missing required field: status");
|
|
40
75
|
return errors;
|
|
41
76
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
77
|
+
// The ONE membership test, derived from the same array the `status` type is —
|
|
78
|
+
// so the gate and the type cannot drift apart with no red build. This used to
|
|
79
|
+
// be a module-private `Set` hand-mirroring the inline union (DAT-017d52ff):
|
|
80
|
+
// adding a status to the union without updating the set compiled cleanly and
|
|
81
|
+
// then made the load gate reject every persisted state carrying it.
|
|
82
|
+
if (!isRemediationRunStatus(obj["status"])) {
|
|
83
|
+
errors.push(`Unknown status "${String(obj["status"])}"; expected one of: ${REMEDIATION_RUN_STATUSES.join(", ")}`);
|
|
45
84
|
return errors;
|
|
46
85
|
}
|
|
86
|
+
const status = obj["status"];
|
|
47
87
|
// Status-conditional completeness (INV-RSM-STATE-COMPLETE): every field the
|
|
48
88
|
// status's decision path reads must be present, or the load fails loudly
|
|
49
89
|
// instead of handing the state machine a partially-persisted state.
|
|
@@ -121,7 +161,6 @@ function validateState(value) {
|
|
|
121
161
|
}
|
|
122
162
|
return errors;
|
|
123
163
|
}
|
|
124
|
-
const STATE_FILENAME = "state.json";
|
|
125
164
|
const LOCK_FILENAME = "state.lock";
|
|
126
165
|
// Acquire timeout for the shared file lock — the STALE_LOCK_MS-minus-margin
|
|
127
166
|
// derivation is single-sourced in the shared locked JSON store (a fresh-but-held
|
|
@@ -157,12 +196,35 @@ export class StateStore {
|
|
|
157
196
|
if (raw === undefined) {
|
|
158
197
|
return null;
|
|
159
198
|
}
|
|
199
|
+
// `validateState` throws SchemaVersionMismatchError for a state stamped
|
|
200
|
+
// with another release's contract version; that propagates out of the
|
|
201
|
+
// read exactly as the policy requires (see the constant's doc).
|
|
160
202
|
const errors = validateState(raw);
|
|
161
203
|
if (errors.length > 0) {
|
|
162
204
|
throw new Error(`state.json failed schema validation: ${errors.join("; ")}`);
|
|
163
205
|
}
|
|
206
|
+
// Returned as READ. The version is stamped on the way IN (the write
|
|
207
|
+
// hook below), so a state that has been through this store carries it
|
|
208
|
+
// on disk and this read is byte-faithful: what `loadState` returns is
|
|
209
|
+
// what the file says, with no field conjured at read time. A state
|
|
210
|
+
// written before the field existed has none until its next write, and
|
|
211
|
+
// `validateState` admits that (see the constant's doc) — which is the
|
|
212
|
+
// whole reason the field is optional on the type rather than required.
|
|
164
213
|
return raw;
|
|
165
214
|
},
|
|
215
|
+
// The WRITE hook. Without it the store's own `persist` wrote whatever a
|
|
216
|
+
// caller handed it — the load gate was the only validation on the path,
|
|
217
|
+
// so a state that was never round-tripped (constructed in memory and
|
|
218
|
+
// saved, which is every transition) could reach disk carrying fields no
|
|
219
|
+
// reader would accept. The gate and the writer now share ONE validator.
|
|
220
|
+
validate: (next) => {
|
|
221
|
+
if (next === null)
|
|
222
|
+
return;
|
|
223
|
+
const errors = validateState(next);
|
|
224
|
+
if (errors.length > 0) {
|
|
225
|
+
throw new Error(`refusing to write state.json: ${errors.join("; ")}`);
|
|
226
|
+
}
|
|
227
|
+
},
|
|
166
228
|
});
|
|
167
229
|
}
|
|
168
230
|
async init() {
|
|
@@ -185,18 +247,41 @@ export class StateStore {
|
|
|
185
247
|
* current state (or null), passes it to `fn`, and writes the returned state
|
|
186
248
|
* before releasing the lock. No other holder can interleave between the load
|
|
187
249
|
* and the save. INV-remediate-state-02 + INV-remediate-state-03.
|
|
250
|
+
*
|
|
251
|
+
* Returning the shared `SKIP_WRITE` sentinel from `fn` is the no-op: the write
|
|
252
|
+
* is skipped and this resolves with the state that was READ. The skip decision
|
|
253
|
+
* is taken inside the SAME held lock as the write it avoids, so it cannot race
|
|
254
|
+
* a concurrent writer. Whole-run verbs that routinely change nothing — the
|
|
255
|
+
* `recover-ingest` retry loop is the live one — otherwise replace `state.json`
|
|
256
|
+
* with byte-identical content on every pass, which makes "did anything
|
|
257
|
+
* change?" unanswerable from the file and rewrites an artifact other readers
|
|
258
|
+
* treat as the run's ground truth.
|
|
188
259
|
*/
|
|
189
260
|
async mutate(fn) {
|
|
190
261
|
// Node-worktree guard (defense-in-depth behind the CLI-entry guard): a
|
|
191
262
|
// dispatched worker's process must never transition shared run state,
|
|
192
263
|
// whatever invocation shape reached this writer.
|
|
193
264
|
assertNotNodeWorktreeCwd("a remediation state.json transition");
|
|
194
|
-
let next;
|
|
195
|
-
await this.store.mutate(async (current) => {
|
|
196
|
-
|
|
265
|
+
let next = SKIP_WRITE;
|
|
266
|
+
const readValue = await this.store.mutate(async (current) => {
|
|
267
|
+
const produced = await fn(current);
|
|
268
|
+
// Same stamp as `saveState`, at the other write door: the version is a
|
|
269
|
+
// property of the store's writes, so no transition can produce an
|
|
270
|
+
// unstamped file. The value RESOLVED to the caller is the newly stamped
|
|
271
|
+
// state (matching what `saveState` put on disk); the SKIP_WRITE arm below
|
|
272
|
+
// still resolves with what was READ.
|
|
273
|
+
next = produced === SKIP_WRITE ? SKIP_WRITE : stampedState(produced);
|
|
197
274
|
return next;
|
|
198
275
|
});
|
|
199
|
-
|
|
276
|
+
if (next !== SKIP_WRITE)
|
|
277
|
+
return next;
|
|
278
|
+
// The store resolves a skipped write with the value it read. A skipped write
|
|
279
|
+
// over an ABSENT file has no state to resolve with — the caller asked to
|
|
280
|
+
// leave nothing there and nothing was there, so there is nothing to return.
|
|
281
|
+
if (readValue === null) {
|
|
282
|
+
throw new Error("StateStore.mutate returned SKIP_WRITE but no state.json exists to resolve with");
|
|
283
|
+
}
|
|
284
|
+
return readValue;
|
|
200
285
|
}
|
|
201
286
|
/**
|
|
202
287
|
* Save state.json unconditionally (no TOCTOU protection, no read — so a
|
|
@@ -208,7 +293,25 @@ export class StateStore {
|
|
|
208
293
|
// Same node-worktree guard as `mutate` — the unconditional-write recovery
|
|
209
294
|
// path must not be the one door a worker-context write can still use.
|
|
210
295
|
assertNotNodeWorktreeCwd("a remediation state.json write");
|
|
211
|
-
await this.store.replace(state);
|
|
296
|
+
await this.store.replace(stampedState(state));
|
|
212
297
|
}
|
|
213
298
|
}
|
|
299
|
+
/**
|
|
300
|
+
* The state as it goes to disk: its own `contract_version` when it has one,
|
|
301
|
+
* else the current constant.
|
|
302
|
+
*
|
|
303
|
+
* Stamping here — at the two write doors, not in the read path — is what keeps
|
|
304
|
+
* `loadState` byte-faithful. A version conjured at READ time would make
|
|
305
|
+
* `loadState()` return a key the file does not contain, so the round trip
|
|
306
|
+
* `saveState(x)` → `loadState()` would not equal `x`, and a caller comparing
|
|
307
|
+
* states (the ingress's `state_changed`, the tests) would see a change that
|
|
308
|
+
* never happened. A state that already carries a DIFFERENT version is left
|
|
309
|
+
* alone: the write hook's validator refuses it loudly rather than this helper
|
|
310
|
+
* silently overwriting the caller's claim.
|
|
311
|
+
*/
|
|
312
|
+
function stampedState(state) {
|
|
313
|
+
return state.contract_version === undefined
|
|
314
|
+
? { ...state, contract_version: REMEDIATION_STATE_CONTRACT_VERSION }
|
|
315
|
+
: state;
|
|
316
|
+
}
|
|
214
317
|
//# sourceMappingURL=store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/remediate/state/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAEL,qBAAqB,EACrB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAOL,kCAAkC,GACnC,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/remediate/state/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAEL,qBAAqB,EACrB,4BAA4B,EAC5B,0BAA0B,EAC1B,UAAU,EACV,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAOL,kCAAkC,GACnC,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EACL,wBAAwB,EACxB,sBAAsB,GAEvB,MAAM,gBAAgB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAC7C,+BAAwC,CAAC;AAE3C,iFAAiF;AACjF,MAAM,cAAc,GAAG,YAAY,CAAC;AAmEpC;;;;;;GAMG;AACH,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAS;IAC7C,cAAc;IACd,QAAQ;IACR,oBAAoB;IACpB,SAAS;CACV,CAAC,CAAC;AAEH,sEAAsE;AACtE,SAAS,aAAa,CAAC,KAAc;IACnC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAChD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,8EAA8E;IAC9E,8EAA8E;IAC9E,wDAAwD;IACxD,+EAA+E;IAC/E,0EAA0E;IAC1E,sBAAsB;IACtB,IACE,GAAG,CAAC,kBAAkB,CAAC,KAAK,SAAS;QACrC,GAAG,CAAC,kBAAkB,CAAC,KAAK,kCAAkC,EAC9D,CAAC;QACD,MAAM,IAAI,0BAA0B,CAClC,cAAc,EACd,kCAAkC,EAClC,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAChC,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,8EAA8E;IAC9E,8EAA8E;IAC9E,4EAA4E;IAC5E,6EAA6E;IAC7E,oEAAoE;IACpE,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,CAAC,IAAI,CACT,mBAAmB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,uBAAuB,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACrG,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE7B,4EAA4E;IAC5E,yEAAyE;IACzE,oEAAoE;IACpE,IAAI,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7D,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,6BAA6B,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,IAA+B,CAAC;YAC1C,IAAI,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClE,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,yBAAyB,CAAC,CAAC;YAC1D,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;gBAClC,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,0BAA0B,CAAC,CAAC;YAC3D,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;gBAChC,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,wBAAwB,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACN,sEAAsE;gBACtE,sEAAsE;gBACtE,yEAAyE;gBACzE,yEAAyE;gBACzE,kEAAkE;gBAClE,wEAAwE;gBACxE,wEAAwE;gBACxE,8EAA8E;gBAC9E,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAK,CAAC,CAAC,QAAQ,CAAe,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC9D,KAAK,MAAM,KAAK,IAAI,wBAAwB,CAC1C,KAAK,EACL,eAAe,CAAC,GAAG,CACpB,EAAE,CAAC;wBACF,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;4BAC/B,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;wBACjD,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,4BAA4B,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;gBAC3E,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7D,MAAM,CAAC,IAAI,CAAC,UAAU,GAAG,sBAAsB,CAAC,CAAC;oBACjD,SAAS;gBACX,CAAC;gBACD,MAAM,EAAE,GAAG,IAA+B,CAAC;gBAC3C,oEAAoE;gBACpE,IAAI,OAAO,EAAE,CAAC,YAAY,CAAC,KAAK,QAAQ,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1E,MAAM,CAAC,IAAI,CAAC,UAAU,GAAG,6CAA6C,CAAC,CAAC;gBAC1E,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,QAAQ,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtE,MAAM,CAAC,IAAI,CAAC,UAAU,GAAG,2CAA2C,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,WAAW,GAAG,GAAG,CAAC,cAAc,CAAC,CAAC;QACxC,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAClF,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IACD,IAAI,GAAG,CAAC,cAAc,CAAC,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,kCAAkC,CAAC,SAAS,CACzD,GAAG,CAAC,cAAc,CAAC,CACpB,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CACT,0CAA0C,MAAM,CAAC,KAAK,CAAC,MAAM;iBAC1D,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,cAAc,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;iBAC7E,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;QACJ,CAAC;aAAM,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;YACrC,MAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,aAAa,GAAG,YAAY,CAAC;AACnC,4EAA4E;AAC5E,iFAAiF;AACjF,2EAA2E;AAC3E,8EAA8E;AAC9E,MAAM,CAAC,MAAM,eAAe,GAAG,4BAA4B,CAAC;AAE5D,SAAS,SAAS,CAAC,YAAoB;IACrC,OAAO,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,QAAQ,CAAC,YAAoB;IACpC,OAAO,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,OAAO,UAAU;IAWX;IAES;IAZnB;;;;;;OAMG;IACc,KAAK,CAA2C;IAEjE,YACU,YAAoB;IAC5B,4EAA4E;IAC3D,cAAuB;QAFhC,iBAAY,GAAZ,YAAY,CAAQ;QAEX,mBAAc,GAAd,cAAc,CAAS;QAExC,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAA0B;YAC1D,IAAI,EAAE,SAAS,CAAC,YAAY,CAAC;YAC7B,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC;YAChC,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;gBACb,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,wEAAwE;gBACxE,sEAAsE;gBACtE,gEAAgE;gBAChE,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;gBAClC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,MAAM,IAAI,KAAK,CACb,wCAAwC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5D,CAAC;gBACJ,CAAC;gBACD,oEAAoE;gBACpE,sEAAsE;gBACtE,sEAAsE;gBACtE,mEAAmE;gBACnE,sEAAsE;gBACtE,sEAAsE;gBACtE,uEAAuE;gBACvE,OAAO,GAAuB,CAAC;YACjC,CAAC;YACD,wEAAwE;YACxE,wEAAwE;YACxE,qEAAqE;YACrE,wEAAwE;YACxE,wEAAwE;YACxE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;gBACjB,IAAI,IAAI,KAAK,IAAI;oBAAE,OAAO;gBAC1B,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;gBACnC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,MAAM,IAAI,KAAK,CACb,iCAAiC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,MAAM,CACV,EAEkD;QAElD,uEAAuE;QACvE,sEAAsE;QACtE,iDAAiD;QACjD,wBAAwB,CAAC,qCAAqC,CAAC,CAAC;QAChE,IAAI,IAAI,GAAyC,UAAU,CAAC;QAC5D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC1D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;YACnC,uEAAuE;YACvE,kEAAkE;YAClE,wEAAwE;YACxE,0EAA0E;YAC1E,qCAAqC;YACrC,IAAI,GAAG,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACrE,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;QACrC,6EAA6E;QAC7E,yEAAyE;QACzE,4EAA4E;QAC5E,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,gFAAgF,CACjF,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS,CAAC,KAAuB;QACrC,0EAA0E;QAC1E,sEAAsE;QACtE,wBAAwB,CAAC,gCAAgC,CAAC,CAAC;QAC3D,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC;CACF;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,YAAY,CAAC,KAAuB;IAC3C,OAAO,KAAK,CAAC,gBAAgB,KAAK,SAAS;QACzC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,gBAAgB,EAAE,kCAAkC,EAAE;QACpE,CAAC,CAAC,KAAK,CAAC;AACZ,CAAC"}
|
|
@@ -114,6 +114,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
114
114
|
title: z.ZodString;
|
|
115
115
|
category: z.ZodString;
|
|
116
116
|
severity: z.ZodEnum<["critical", "high", "medium", "low", "info"]>;
|
|
117
|
+
severity_downgraded_from: z.ZodOptional<z.ZodEnum<["critical", "high", "medium", "low", "info"]>>;
|
|
117
118
|
confidence: z.ZodEnum<["high", "medium", "low"]>;
|
|
118
119
|
lens: z.ZodString;
|
|
119
120
|
summary: z.ZodString;
|
|
@@ -172,6 +173,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
172
173
|
status: "grounded" | "ungrounded" | "refuted";
|
|
173
174
|
reason?: string | undefined;
|
|
174
175
|
}>>;
|
|
176
|
+
evidence_lane: z.ZodOptional<z.ZodEnum<["per-file-lane", "design-review-lane"]>>;
|
|
175
177
|
verification_status: z.ZodOptional<z.ZodEnum<["judge_confirmed", "asserted", "refuted_at_head"]>>;
|
|
176
178
|
executable_anchor: z.ZodOptional<z.ZodObject<{
|
|
177
179
|
command: z.ZodArray<z.ZodString, "many">;
|
|
@@ -256,6 +258,19 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
256
258
|
snippet_hash: string;
|
|
257
259
|
rule?: string | undefined;
|
|
258
260
|
}>>;
|
|
261
|
+
lead_lineage: z.ZodOptional<z.ZodObject<{
|
|
262
|
+
producer: z.ZodString;
|
|
263
|
+
source_hash: z.ZodString;
|
|
264
|
+
confirmation: z.ZodLiteral<"lead">;
|
|
265
|
+
}, "strict", z.ZodTypeAny, {
|
|
266
|
+
producer: string;
|
|
267
|
+
source_hash: string;
|
|
268
|
+
confirmation: "lead";
|
|
269
|
+
}, {
|
|
270
|
+
producer: string;
|
|
271
|
+
source_hash: string;
|
|
272
|
+
confirmation: "lead";
|
|
273
|
+
}>>;
|
|
259
274
|
}, "strip", z.ZodTypeAny, {
|
|
260
275
|
id: string;
|
|
261
276
|
confidence: "high" | "low" | "medium";
|
|
@@ -272,6 +287,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
272
287
|
quoted_text?: string | undefined;
|
|
273
288
|
hash_at_plan_time?: string | undefined;
|
|
274
289
|
}[];
|
|
290
|
+
severity_downgraded_from?: "high" | "low" | "critical" | "medium" | "info" | undefined;
|
|
275
291
|
impact?: string | undefined;
|
|
276
292
|
likelihood?: string | undefined;
|
|
277
293
|
evidence?: string[] | undefined;
|
|
@@ -285,6 +301,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
285
301
|
status: "grounded" | "ungrounded" | "refuted";
|
|
286
302
|
reason?: string | undefined;
|
|
287
303
|
} | undefined;
|
|
304
|
+
evidence_lane?: "per-file-lane" | "design-review-lane" | undefined;
|
|
288
305
|
verification_status?: "judge_confirmed" | "asserted" | "refuted_at_head" | undefined;
|
|
289
306
|
executable_anchor?: {
|
|
290
307
|
command: string[];
|
|
@@ -311,6 +328,11 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
311
328
|
snippet_hash: string;
|
|
312
329
|
rule?: string | undefined;
|
|
313
330
|
} | undefined;
|
|
331
|
+
lead_lineage?: {
|
|
332
|
+
producer: string;
|
|
333
|
+
source_hash: string;
|
|
334
|
+
confirmation: "lead";
|
|
335
|
+
} | undefined;
|
|
314
336
|
}, {
|
|
315
337
|
id: string;
|
|
316
338
|
confidence: "high" | "low" | "medium";
|
|
@@ -327,6 +349,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
327
349
|
quoted_text?: string | undefined;
|
|
328
350
|
hash_at_plan_time?: string | undefined;
|
|
329
351
|
}[];
|
|
352
|
+
severity_downgraded_from?: "high" | "low" | "critical" | "medium" | "info" | undefined;
|
|
330
353
|
impact?: string | undefined;
|
|
331
354
|
likelihood?: string | undefined;
|
|
332
355
|
evidence?: string[] | undefined;
|
|
@@ -340,6 +363,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
340
363
|
status: "grounded" | "ungrounded" | "refuted";
|
|
341
364
|
reason?: string | undefined;
|
|
342
365
|
} | undefined;
|
|
366
|
+
evidence_lane?: "per-file-lane" | "design-review-lane" | undefined;
|
|
343
367
|
verification_status?: "judge_confirmed" | "asserted" | "refuted_at_head" | undefined;
|
|
344
368
|
executable_anchor?: {
|
|
345
369
|
command: string[];
|
|
@@ -366,6 +390,11 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
366
390
|
snippet_hash: string;
|
|
367
391
|
rule?: string | undefined;
|
|
368
392
|
} | undefined;
|
|
393
|
+
lead_lineage?: {
|
|
394
|
+
producer: string;
|
|
395
|
+
source_hash: string;
|
|
396
|
+
confirmation: "lead";
|
|
397
|
+
} | undefined;
|
|
369
398
|
}>, "many">;
|
|
370
399
|
blocks: z.ZodArray<z.ZodObject<{
|
|
371
400
|
block_id: z.ZodString;
|
|
@@ -511,6 +540,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
511
540
|
quoted_text?: string | undefined;
|
|
512
541
|
hash_at_plan_time?: string | undefined;
|
|
513
542
|
}[];
|
|
543
|
+
severity_downgraded_from?: "high" | "low" | "critical" | "medium" | "info" | undefined;
|
|
514
544
|
impact?: string | undefined;
|
|
515
545
|
likelihood?: string | undefined;
|
|
516
546
|
evidence?: string[] | undefined;
|
|
@@ -524,6 +554,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
524
554
|
status: "grounded" | "ungrounded" | "refuted";
|
|
525
555
|
reason?: string | undefined;
|
|
526
556
|
} | undefined;
|
|
557
|
+
evidence_lane?: "per-file-lane" | "design-review-lane" | undefined;
|
|
527
558
|
verification_status?: "judge_confirmed" | "asserted" | "refuted_at_head" | undefined;
|
|
528
559
|
executable_anchor?: {
|
|
529
560
|
command: string[];
|
|
@@ -550,8 +581,13 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
550
581
|
snippet_hash: string;
|
|
551
582
|
rule?: string | undefined;
|
|
552
583
|
} | undefined;
|
|
584
|
+
lead_lineage?: {
|
|
585
|
+
producer: string;
|
|
586
|
+
source_hash: string;
|
|
587
|
+
confirmation: "lead";
|
|
588
|
+
} | undefined;
|
|
553
589
|
}[];
|
|
554
|
-
candidate_closing_actions: ("push" | "custom" | "commit" | "open-pr" | "publish" | "tag"
|
|
590
|
+
candidate_closing_actions: ("push" | "custom" | "none" | "commit" | "open-pr" | "publish" | "tag")[];
|
|
555
591
|
project_type: string;
|
|
556
592
|
blocks: {
|
|
557
593
|
items: string[];
|
|
@@ -582,7 +618,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
582
618
|
e2e_command?: string | undefined;
|
|
583
619
|
test_command_source?: "project_facts" | "explicit" | undefined;
|
|
584
620
|
e2e_command_source?: "project_facts" | "explicit" | undefined;
|
|
585
|
-
block_strategy?: "
|
|
621
|
+
block_strategy?: "file_overlap" | "manual" | "test_graph" | "git_cocommit" | undefined;
|
|
586
622
|
}, {
|
|
587
623
|
findings: {
|
|
588
624
|
id: string;
|
|
@@ -600,6 +636,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
600
636
|
quoted_text?: string | undefined;
|
|
601
637
|
hash_at_plan_time?: string | undefined;
|
|
602
638
|
}[];
|
|
639
|
+
severity_downgraded_from?: "high" | "low" | "critical" | "medium" | "info" | undefined;
|
|
603
640
|
impact?: string | undefined;
|
|
604
641
|
likelihood?: string | undefined;
|
|
605
642
|
evidence?: string[] | undefined;
|
|
@@ -613,6 +650,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
613
650
|
status: "grounded" | "ungrounded" | "refuted";
|
|
614
651
|
reason?: string | undefined;
|
|
615
652
|
} | undefined;
|
|
653
|
+
evidence_lane?: "per-file-lane" | "design-review-lane" | undefined;
|
|
616
654
|
verification_status?: "judge_confirmed" | "asserted" | "refuted_at_head" | undefined;
|
|
617
655
|
executable_anchor?: {
|
|
618
656
|
command: string[];
|
|
@@ -639,8 +677,13 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
639
677
|
snippet_hash: string;
|
|
640
678
|
rule?: string | undefined;
|
|
641
679
|
} | undefined;
|
|
680
|
+
lead_lineage?: {
|
|
681
|
+
producer: string;
|
|
682
|
+
source_hash: string;
|
|
683
|
+
confirmation: "lead";
|
|
684
|
+
} | undefined;
|
|
642
685
|
}[];
|
|
643
|
-
candidate_closing_actions: ("push" | "custom" | "commit" | "open-pr" | "publish" | "tag"
|
|
686
|
+
candidate_closing_actions: ("push" | "custom" | "none" | "commit" | "open-pr" | "publish" | "tag")[];
|
|
644
687
|
project_type: string;
|
|
645
688
|
blocks: {
|
|
646
689
|
items: string[];
|
|
@@ -671,7 +714,7 @@ export declare const RemediationPlanSchema: z.ZodObject<{
|
|
|
671
714
|
e2e_command?: string | undefined;
|
|
672
715
|
test_command_source?: "project_facts" | "explicit" | undefined;
|
|
673
716
|
e2e_command_source?: "project_facts" | "explicit" | undefined;
|
|
674
|
-
block_strategy?: "
|
|
717
|
+
block_strategy?: "file_overlap" | "manual" | "test_graph" | "git_cocommit" | undefined;
|
|
675
718
|
}>;
|
|
676
719
|
export type RemediationPlan = z.infer<typeof RemediationPlanSchema>;
|
|
677
720
|
/**
|
|
@@ -690,14 +733,14 @@ export declare const RemediationHostHandoffRecordSchema: z.ZodDiscriminatedUnion
|
|
|
690
733
|
work_item_ids: z.ZodArray<z.ZodString, "many">;
|
|
691
734
|
contract_version: z.ZodLiteral<"remediation-host-handoff-record/v1alpha1">;
|
|
692
735
|
}, "strict", z.ZodTypeAny, {
|
|
693
|
-
contract_version: "remediation-host-handoff-record/v1alpha1";
|
|
694
736
|
run_id: string;
|
|
737
|
+
contract_version: "remediation-host-handoff-record/v1alpha1";
|
|
695
738
|
baseline_commit: string;
|
|
696
739
|
workload_sha256: string;
|
|
697
740
|
work_item_ids: string[];
|
|
698
741
|
}, {
|
|
699
|
-
contract_version: "remediation-host-handoff-record/v1alpha1";
|
|
700
742
|
run_id: string;
|
|
743
|
+
contract_version: "remediation-host-handoff-record/v1alpha1";
|
|
701
744
|
baseline_commit: string;
|
|
702
745
|
workload_sha256: string;
|
|
703
746
|
work_item_ids: string[];
|
|
@@ -709,15 +752,15 @@ export declare const RemediationHostHandoffRecordSchema: z.ZodDiscriminatedUnion
|
|
|
709
752
|
contract_version: z.ZodLiteral<"remediation-host-handoff-record/v1alpha2">;
|
|
710
753
|
scope_semantics: z.ZodLiteral<"explicit-directory-markers/v1">;
|
|
711
754
|
}, "strict", z.ZodTypeAny, {
|
|
712
|
-
contract_version: "remediation-host-handoff-record/v1alpha2";
|
|
713
755
|
run_id: string;
|
|
756
|
+
contract_version: "remediation-host-handoff-record/v1alpha2";
|
|
714
757
|
baseline_commit: string;
|
|
715
758
|
workload_sha256: string;
|
|
716
759
|
work_item_ids: string[];
|
|
717
760
|
scope_semantics: "explicit-directory-markers/v1";
|
|
718
761
|
}, {
|
|
719
|
-
contract_version: "remediation-host-handoff-record/v1alpha2";
|
|
720
762
|
run_id: string;
|
|
763
|
+
contract_version: "remediation-host-handoff-record/v1alpha2";
|
|
721
764
|
baseline_commit: string;
|
|
722
765
|
workload_sha256: string;
|
|
723
766
|
work_item_ids: string[];
|
|
@@ -805,7 +848,7 @@ export declare const ClosingPlanSchema: z.ZodObject<{
|
|
|
805
848
|
leftover_files?: string[] | undefined;
|
|
806
849
|
}>>;
|
|
807
850
|
}, "strict", z.ZodTypeAny, {
|
|
808
|
-
action: "push" | "custom" | "commit" | "open-pr" | "publish" | "tag"
|
|
851
|
+
action: "push" | "custom" | "none" | "commit" | "open-pr" | "publish" | "tag";
|
|
809
852
|
custom_command?: string[] | undefined;
|
|
810
853
|
pre_authorized?: boolean | undefined;
|
|
811
854
|
closing_action_preview?: {
|
|
@@ -814,7 +857,7 @@ export declare const ClosingPlanSchema: z.ZodObject<{
|
|
|
814
857
|
leftover_files?: string[] | undefined;
|
|
815
858
|
} | undefined;
|
|
816
859
|
}, {
|
|
817
|
-
action: "push" | "custom" | "commit" | "open-pr" | "publish" | "tag"
|
|
860
|
+
action: "push" | "custom" | "none" | "commit" | "open-pr" | "publish" | "tag";
|
|
818
861
|
custom_command?: string[] | undefined;
|
|
819
862
|
pre_authorized?: boolean | undefined;
|
|
820
863
|
closing_action_preview?: {
|
|
@@ -921,6 +964,29 @@ export interface RemediationItemState {
|
|
|
921
964
|
failure_reason?: string;
|
|
922
965
|
/** Prompt-bound evidence supplied for a verified no-change host outcome. */
|
|
923
966
|
host_result_evidence?: string[];
|
|
967
|
+
/**
|
|
968
|
+
* WHAT LANDED for this item, persisted at acceptance — the corroborated
|
|
969
|
+
* worktree outcome, not the host's claim. `commit_evidence.after` was verified
|
|
970
|
+
* reachable from HEAD and its diff-tree was verified to equal
|
|
971
|
+
* {@link host_landed_files} and to lie inside the item's prompt-bound write
|
|
972
|
+
* scope, so this is ground truth by the time it is written.
|
|
973
|
+
*
|
|
974
|
+
* It is persisted PER ITEM so a later boundary — the outcomes contract, the
|
|
975
|
+
* report — can attribute the landing to this item without re-running the
|
|
976
|
+
* ingest's git probes. `applied_edit_surface` is the run-wide union of
|
|
977
|
+
* {@link host_landed_files}; this is the per-item attribution that union
|
|
978
|
+
* cannot express.
|
|
979
|
+
*
|
|
980
|
+
* ITS READER IS `hasLandedCommitFor` (`steps/dispatch/hostHandoff.ts`), which
|
|
981
|
+
* asks whether ANY finding of a work item carries one. The ingest uses that
|
|
982
|
+
* answer to tell PARTIAL PROGRESS from unfinished work: a refusal that is
|
|
983
|
+
* "nothing is at the bound path" splits on it, so an item whose edits landed
|
|
984
|
+
* but whose result file is missing is reported to the host rather than
|
|
985
|
+
* disappearing as a bare missing-result line.
|
|
986
|
+
*/
|
|
987
|
+
host_landed_commit?: string;
|
|
988
|
+
/** Repo-relative, path-sorted files the landed commit changed (see above). */
|
|
989
|
+
host_landed_files?: string[];
|
|
924
990
|
/**
|
|
925
991
|
* Item C — close-gate mechanical re-verify verdict for an analyzer-born
|
|
926
992
|
* finding (set by `verifyAnalyzerLeads`; copied into the outcomes contract).
|
|
@@ -951,9 +1017,13 @@ export interface RemediationItemState {
|
|
|
951
1017
|
* CDC-25/CDC-26 — SOURCE-SIDE SHAPE. The per-finding verification-evidence
|
|
952
1018
|
* triple (file/line/mechanism) a producing module RECORDS onto this item at
|
|
953
1019
|
* its OWN phase (INV-COVERAGE's "evidence producer" half) before the single
|
|
954
|
-
* run-terminal `runClosePhase` PERSISTS it (INV-ISC-EVIDENCE-EMITTED).
|
|
955
|
-
*
|
|
956
|
-
*
|
|
1020
|
+
* run-terminal `runClosePhase` PERSISTS it (INV-ISC-EVIDENCE-EMITTED). The
|
|
1021
|
+
* producer is `verifyHeadEvidenceAgainstFindings`
|
|
1022
|
+
* (`src/remediate/phases/closeVerifyHeadEvidence.ts`), whose own reads of the
|
|
1023
|
+
* finding's cited location — at the audit's commit and at HEAD — are what the
|
|
1024
|
+
* triple names. A runtime data flow through this already-existing state item,
|
|
1025
|
+
* not a build-phase dependency: no cross-phase artifact token is minted for
|
|
1026
|
+
* it.
|
|
957
1027
|
* This field lives here — inside item-status-partition-and-close's own
|
|
958
1028
|
* file_scope — and is therefore owned BY SCOPE, not by a clause 1(c)
|
|
959
1029
|
* declaration (that channel is only for a file outside every module's
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/remediate/state/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAM7D,OAAO,KAAK,EACV,OAAO,EACP,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,oBAAoB,CAAC;AAE5B,YAAY,EAAE,OAAO,EAAE,CAAC;AAWxB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAIzE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,sBAAsB;;;IAI/B;;;OAGG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;;;;OAQG;;IAEH;;;;;;;OAOG;;IAEH;;;;;;OAMG;;IAEH;;;OAGG;;IAEH;;;;;;;;OAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYI,CAAC;AACZ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,qBAAqB
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/remediate/state/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type ValidationIssue, type JudgeReport, type WorkBlock, type WorkBlockSeam } from "audit-tools/shared";
|
|
2
2
|
import { OBLIGATION_KIND_PRIORITY, type ObligationKind } from "../contractPipeline/obligationKinds.js";
|
|
3
3
|
import { readIntakeRiskSignal, type AdversarialDepth } from "../riskSignal.js";
|
|
4
|
+
import type { JudgeRepairTarget } from "audit-tools/shared";
|
|
4
5
|
import { type ContractPipelineCrossGateInputs, type GateOutcome } from "../validation/contractPipelineGates.js";
|
|
5
6
|
import type { ContractPipelineArtifactName } from "../contractPipeline/artifactStore.js";
|
|
6
7
|
import type { RemediationStep } from "./types.js";
|
|
@@ -187,6 +188,65 @@ export interface SeedSourceDigestMismatch {
|
|
|
187
188
|
/** The path's current sha256, or `null` when it is no longer readable. */
|
|
188
189
|
actual: string | null;
|
|
189
190
|
}
|
|
191
|
+
/**
|
|
192
|
+
* The tool-named accept lane for seed-source drift — the file an OPERATOR writes
|
|
193
|
+
* to record "this drift is reviewed and does not invalidate the findings".
|
|
194
|
+
*
|
|
195
|
+
* A digest is a whole-file byte binding, so it moves for changes no finding is
|
|
196
|
+
* about: a release `version` bump in `package.json` moves the digest of every
|
|
197
|
+
* finding that cited `package.json` and blocked the run. The alarm was right
|
|
198
|
+
* that SOMETHING moved and wrong about whether the findings still held — there
|
|
199
|
+
* was no way to say so, and the run's remaining options were re-auditing or
|
|
200
|
+
* deleting the seed.
|
|
201
|
+
*
|
|
202
|
+
* WHY THE ACCEPT IS AN OPERATOR FILE AND NOT A DERIVED VERDICT. The tempting
|
|
203
|
+
* mechanical predicate is "do the drifted file's cited locations still exist"
|
|
204
|
+
* (line N still present). It is unsound in the direction that matters: a finding
|
|
205
|
+
* asserting "the config parser returns null on malformed input" cites line 42,
|
|
206
|
+
* and rewriting that line to throw leaves line 42 present, the digest
|
|
207
|
+
* moved, and the finding FALSE — the predicate accepts and the run designs
|
|
208
|
+
* against a claim the code no longer makes. That inference cannot be made from
|
|
209
|
+
* line counts by a language-neutral tool, and a predicate that is right about
|
|
210
|
+
* version bumps and wrong about behaviour changes is worse than no predicate:
|
|
211
|
+
* it silently converts "the alarm fired" into "the alarm was satisfied". So the
|
|
212
|
+
* judgment stays where it can actually be made — with the operator, recorded,
|
|
213
|
+
* and attributable — and the tool enforces only the shape of the record.
|
|
214
|
+
*/
|
|
215
|
+
export interface SeedSourceAcceptance {
|
|
216
|
+
/** The seed-recorded source path this decision covers (repo-relative). */
|
|
217
|
+
path: string;
|
|
218
|
+
/** Why the drift does not invalidate the findings. Required, non-empty. */
|
|
219
|
+
rationale: string;
|
|
220
|
+
/**
|
|
221
|
+
* Who decided. Attributable identity, like the counterexample waiver and the
|
|
222
|
+
* loop-core review attestation — no mechanical channel can prove WHO decided,
|
|
223
|
+
* so the record names the decider rather than pretending to verify them.
|
|
224
|
+
*/
|
|
225
|
+
accepted_by: string;
|
|
226
|
+
}
|
|
227
|
+
/** The tool-named host lane: the operator's drift acceptances land here. */
|
|
228
|
+
export declare function seedSourceAcceptancesPath(artifactsDir: string): string;
|
|
229
|
+
/**
|
|
230
|
+
* Read the operator's acceptances, keyed by the same path normalization the
|
|
231
|
+
* mismatch side uses. A malformed entry is DROPPED, never widened: an acceptance
|
|
232
|
+
* missing its rationale or its decider records no decision, and treating it as
|
|
233
|
+
* one would turn a shape defect into a silent bypass of the alarm.
|
|
234
|
+
*/
|
|
235
|
+
export declare function readSeedSourceAcceptances(artifactsDir: string): Promise<Map<string, SeedSourceAcceptance>>;
|
|
236
|
+
/**
|
|
237
|
+
* The seed paths the operator's acceptance file covers, applied to the drifted
|
|
238
|
+
* set under the ONE path normalization both sides share; everything else blocks.
|
|
239
|
+
*
|
|
240
|
+
* This is the accept path and it is deliberately the ONLY automatic one: the
|
|
241
|
+
* gate cannot tell a benign drift from a falsifying one, and the one predicate
|
|
242
|
+
* that claimed to (cited line counts) was unsound — see {@link SeedSourceAcceptance}.
|
|
243
|
+
*/
|
|
244
|
+
export declare function partitionSeedSourceDrift(artifactsDir: string, mismatches: readonly SeedSourceDigestMismatch[]): Promise<{
|
|
245
|
+
accepted: Array<SeedSourceAcceptance & {
|
|
246
|
+
mismatch: SeedSourceDigestMismatch;
|
|
247
|
+
}>;
|
|
248
|
+
blocking: SeedSourceDigestMismatch[];
|
|
249
|
+
}>;
|
|
190
250
|
/**
|
|
191
251
|
* Seed source-digest binding — re-hash every path the path_a seed recorded and
|
|
192
252
|
* report the ones that moved. Pure over (root, seed): the caller decides what a
|
|
@@ -201,7 +261,7 @@ export declare function detectSeedSourceDigestMismatches(root: string, seed: Pat
|
|
|
201
261
|
* the failing classifications. Post-redesign the default is
|
|
202
262
|
* `finalized_module_contracts` (not `design_spec`).
|
|
203
263
|
*/
|
|
204
|
-
type ExtendedRepairTarget =
|
|
264
|
+
type ExtendedRepairTarget = Exclude<JudgeRepairTarget, "counterexample" | "design_spec">;
|
|
205
265
|
/**
|
|
206
266
|
* Infer the most appropriate repair target from judge classifications when no
|
|
207
267
|
* explicit repair_directive is provided. Examines only accepted classifications
|
|
@@ -501,6 +561,10 @@ export declare function collectDagWriteScopeRefusals(artifactsDir: string, root:
|
|
|
501
561
|
* an invalid `source_finding_ids` declaration takes the same bounded re-emit as
|
|
502
562
|
* every other promotion rejection, with no gate having executed past it.
|
|
503
563
|
*
|
|
564
|
+
* The checks themselves are {@link evaluatePathACanonicalGroups} — the ONE body
|
|
565
|
+
* both this gate and the promoter call, so the gate can never certify a DAG the
|
|
566
|
+
* promoter then refuses.
|
|
567
|
+
*
|
|
504
568
|
* Returns one line per violation; empty means the DAG is promotable on this
|
|
505
569
|
* axis (or Path A is not in play at all).
|
|
506
570
|
*/
|