audit-tools 0.52.3 → 0.52.5
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/README.md +31 -1
- package/dist/audit/cli/args.d.ts.map +1 -1
- package/dist/audit/cli/args.js +6 -2
- package/dist/audit/cli/args.js.map +1 -1
- package/dist/audit/cli/argumentContract.d.ts +11 -0
- package/dist/audit/cli/argumentContract.d.ts.map +1 -0
- package/dist/audit/cli/argumentContract.js +45 -0
- package/dist/audit/cli/argumentContract.js.map +1 -0
- package/dist/audit/cli/auditReviewBindings.d.ts +49 -0
- package/dist/audit/cli/auditReviewBindings.d.ts.map +1 -0
- package/dist/audit/cli/auditReviewBindings.js +61 -0
- package/dist/audit/cli/auditReviewBindings.js.map +1 -0
- package/dist/audit/cli/auditStep.d.ts +1 -27
- package/dist/audit/cli/auditStep.d.ts.map +1 -1
- package/dist/audit/cli/auditStep.js +7 -32
- package/dist/audit/cli/auditStep.js.map +1 -1
- package/dist/audit/cli/charterComparisonPrompt.d.ts +2 -0
- package/dist/audit/cli/charterComparisonPrompt.d.ts.map +1 -1
- package/dist/audit/cli/charterComparisonPrompt.js +9 -0
- package/dist/audit/cli/charterComparisonPrompt.js.map +1 -1
- package/dist/audit/cli/charterExtractionPrompt.d.ts.map +1 -1
- package/dist/audit/cli/charterExtractionPrompt.js +17 -3
- package/dist/audit/cli/charterExtractionPrompt.js.map +1 -1
- package/dist/audit/cli/conceptualDispatch.d.ts +1 -1
- package/dist/audit/cli/conceptualDispatch.d.ts.map +1 -1
- package/dist/audit/cli/conceptualDispatch.js +15 -2
- 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 +10 -17
- 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 +231 -229
- package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
- package/dist/audit/cli/explainTaskCommand.d.ts.map +1 -1
- package/dist/audit/cli/explainTaskCommand.js +3 -1
- package/dist/audit/cli/explainTaskCommand.js.map +1 -1
- package/dist/audit/cli/fanoutLanes.d.ts +10 -14
- package/dist/audit/cli/fanoutLanes.d.ts.map +1 -1
- package/dist/audit/cli/fanoutLanes.js +50 -16
- package/dist/audit/cli/fanoutLanes.js.map +1 -1
- package/dist/audit/cli/functionalPreflight.d.ts +96 -0
- package/dist/audit/cli/functionalPreflight.d.ts.map +1 -0
- package/dist/audit/cli/functionalPreflight.js +103 -0
- package/dist/audit/cli/functionalPreflight.js.map +1 -0
- package/dist/audit/cli/laneSubmissions.d.ts +5 -1
- package/dist/audit/cli/laneSubmissions.d.ts.map +1 -1
- package/dist/audit/cli/laneSubmissions.js +45 -34
- package/dist/audit/cli/laneSubmissions.js.map +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts +1 -9
- package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +101 -38
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.d.ts +10 -25
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +57 -67
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/cli/prompts.d.ts.map +1 -1
- package/dist/audit/cli/prompts.js +9 -4
- package/dist/audit/cli/prompts.js.map +1 -1
- package/dist/audit/cli/recoverSubmissionCommand.d.ts.map +1 -1
- package/dist/audit/cli/recoverSubmissionCommand.js +8 -1
- package/dist/audit/cli/recoverSubmissionCommand.js.map +1 -1
- package/dist/audit/cli/reviewRun.js +1 -1
- package/dist/audit/cli/reviewRun.js.map +1 -1
- package/dist/audit/cli/reviewSubmission.d.ts +24 -0
- package/dist/audit/cli/reviewSubmission.d.ts.map +1 -0
- package/dist/audit/cli/reviewSubmission.js +97 -0
- package/dist/audit/cli/reviewSubmission.js.map +1 -0
- package/dist/audit/cli/sampleRunCommand.d.ts +3 -3
- package/dist/audit/cli/steps.d.ts +18 -18
- package/dist/audit/cli/steps.d.ts.map +1 -1
- package/dist/audit/cli/steps.js +1 -0
- package/dist/audit/cli/steps.js.map +1 -1
- package/dist/audit/cli/unacceptResultsCommand.d.ts.map +1 -1
- package/dist/audit/cli/unacceptResultsCommand.js +2 -1
- package/dist/audit/cli/unacceptResultsCommand.js.map +1 -1
- package/dist/audit/cli.d.ts +2 -1
- package/dist/audit/cli.d.ts.map +1 -1
- package/dist/audit/cli.js +27 -19
- package/dist/audit/cli.js.map +1 -1
- package/dist/audit/contracts/workerSchemas.d.ts +10 -10
- package/dist/audit/contracts/wrapperResponse.d.ts +34 -34
- package/dist/audit/extractors/commentDecomposition.d.ts +14 -0
- package/dist/audit/extractors/commentDecomposition.d.ts.map +1 -1
- package/dist/audit/extractors/commentDecomposition.js +2 -1
- package/dist/audit/extractors/commentDecomposition.js.map +1 -1
- package/dist/audit/extractors/graph.d.ts +1 -1
- package/dist/audit/extractors/graph.d.ts.map +1 -1
- package/dist/audit/extractors/graph.js +12 -7
- package/dist/audit/extractors/graph.js.map +1 -1
- package/dist/audit/extractors/graphPythonImports.d.ts +3 -0
- package/dist/audit/extractors/graphPythonImports.d.ts.map +1 -1
- package/dist/audit/extractors/graphPythonImports.js +24 -5
- package/dist/audit/extractors/graphPythonImports.js.map +1 -1
- package/dist/audit/extractors/graphRouteSources.d.ts +7 -0
- package/dist/audit/extractors/graphRouteSources.d.ts.map +1 -0
- package/dist/audit/extractors/graphRouteSources.js +208 -0
- package/dist/audit/extractors/graphRouteSources.js.map +1 -0
- package/dist/audit/extractors/graphRoutes.d.ts +1 -1
- package/dist/audit/extractors/graphRoutes.d.ts.map +1 -1
- package/dist/audit/extractors/graphRoutes.js +65 -68
- package/dist/audit/extractors/graphRoutes.js.map +1 -1
- package/dist/audit/io/artifacts.d.ts +1 -0
- package/dist/audit/io/artifacts.d.ts.map +1 -1
- package/dist/audit/io/artifacts.js +29 -10
- package/dist/audit/io/artifacts.js.map +1 -1
- package/dist/audit/io/runArtifacts.d.ts +1 -1
- package/dist/audit/io/runArtifacts.d.ts.map +1 -1
- package/dist/audit/io/runArtifacts.js +3 -0
- package/dist/audit/io/runArtifacts.js.map +1 -1
- package/dist/audit/io/toolingManifest.d.ts.map +1 -1
- package/dist/audit/io/toolingManifest.js +11 -32
- package/dist/audit/io/toolingManifest.js.map +1 -1
- package/dist/audit/orchestrator/acquisitionExecutor.d.ts +2 -3
- package/dist/audit/orchestrator/acquisitionExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/acquisitionExecutor.js.map +1 -1
- package/dist/audit/orchestrator/advanceTypes.d.ts +1 -2
- package/dist/audit/orchestrator/advanceTypes.d.ts.map +1 -1
- package/dist/audit/orchestrator/autoFixExecutor.d.ts +2 -2
- package/dist/audit/orchestrator/autoFixExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/autoFixExecutor.js +2 -2
- package/dist/audit/orchestrator/autoFixExecutor.js.map +1 -1
- package/dist/audit/orchestrator/charterFidelityPacket.d.ts +2 -0
- package/dist/audit/orchestrator/charterFidelityPacket.d.ts.map +1 -1
- package/dist/audit/orchestrator/charterFidelityPacket.js +6 -1
- package/dist/audit/orchestrator/charterFidelityPacket.js.map +1 -1
- package/dist/audit/orchestrator/charterPackets.d.ts +2 -0
- package/dist/audit/orchestrator/charterPackets.d.ts.map +1 -1
- package/dist/audit/orchestrator/charterPackets.js +6 -0
- package/dist/audit/orchestrator/charterPackets.js.map +1 -1
- package/dist/audit/orchestrator/designReviewProjection.d.ts +5 -8
- package/dist/audit/orchestrator/designReviewProjection.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewProjection.js +7 -1
- package/dist/audit/orchestrator/designReviewProjection.js.map +1 -1
- package/dist/audit/orchestrator/designReviewPrompt.d.ts +3 -47
- package/dist/audit/orchestrator/designReviewPrompt.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewPrompt.js +28 -135
- package/dist/audit/orchestrator/designReviewPrompt.js.map +1 -1
- package/dist/audit/orchestrator/designReviewSnapshot.d.ts +24 -1
- package/dist/audit/orchestrator/designReviewSnapshot.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewSnapshot.js +8 -2
- package/dist/audit/orchestrator/designReviewSnapshot.js.map +1 -1
- package/dist/audit/orchestrator/designReviewTask.d.ts +46 -0
- package/dist/audit/orchestrator/designReviewTask.d.ts.map +1 -0
- package/dist/audit/orchestrator/designReviewTask.js +44 -0
- package/dist/audit/orchestrator/designReviewTask.js.map +1 -0
- package/dist/audit/orchestrator/intentCheckpointGate.d.ts +1 -1
- package/dist/audit/orchestrator/intentCheckpointGate.d.ts.map +1 -1
- package/dist/audit/orchestrator/intentCheckpointGate.js +4 -2
- package/dist/audit/orchestrator/intentCheckpointGate.js.map +1 -1
- package/dist/audit/orchestrator/intentEquivalenceExecutor.d.ts +3 -0
- package/dist/audit/orchestrator/intentEquivalenceExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/intentEquivalenceExecutor.js +2 -0
- package/dist/audit/orchestrator/intentEquivalenceExecutor.js.map +1 -1
- package/dist/audit/orchestrator/intentInterpreter.d.ts +1 -9
- package/dist/audit/orchestrator/intentInterpreter.d.ts.map +1 -1
- package/dist/audit/orchestrator/intentInterpreter.js +6 -11
- package/dist/audit/orchestrator/intentInterpreter.js.map +1 -1
- package/dist/audit/orchestrator/selectiveDeepening/shared.d.ts +2 -2
- package/dist/audit/orchestrator/selectiveDeepening/shared.d.ts.map +1 -1
- package/dist/audit/orchestrator/staleness.d.ts.map +1 -1
- package/dist/audit/orchestrator/staleness.js +32 -40
- 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 +8 -14
- package/dist/audit/orchestrator/state.js.map +1 -1
- package/dist/audit/orchestrator/systemicChallengeExecutor.d.ts +19 -0
- package/dist/audit/orchestrator/systemicChallengeExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/systemicChallengeExecutor.js +15 -1
- package/dist/audit/orchestrator/systemicChallengeExecutor.js.map +1 -1
- package/dist/audit/reporting/criticalFlowFallbackPrompt.d.ts +1 -1
- package/dist/audit/reporting/criticalFlowFallbackPrompt.d.ts.map +1 -1
- package/dist/audit/reporting/criticalFlowFallbackPrompt.js +4 -2
- package/dist/audit/reporting/criticalFlowFallbackPrompt.js.map +1 -1
- package/dist/audit/reporting/mergeFindings.d.ts.map +1 -1
- package/dist/audit/reporting/mergeFindings.js +43 -2
- package/dist/audit/reporting/mergeFindings.js.map +1 -1
- package/dist/audit/types/auditScope.d.ts +2 -2
- package/dist/audit/types/auditState.d.ts +6 -6
- package/dist/audit/types/conceptualAdjudication.d.ts +19 -19
- package/dist/audit/types/conceptualAdjudication.d.ts.map +1 -1
- package/dist/audit/types/conceptualAdjudication.js +3 -3
- package/dist/audit/types/conceptualAdjudication.js.map +1 -1
- package/dist/audit/types.d.ts +17 -19
- package/dist/audit/types.d.ts.map +1 -1
- package/dist/audit/types.js +19 -20
- package/dist/audit/types.js.map +1 -1
- package/dist/remediate/contractPipeline/artifactStore.d.ts +3 -1
- package/dist/remediate/contractPipeline/artifactStore.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/artifactStore.js +26 -31
- 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 +20 -8
- package/dist/remediate/contractPipeline/changeClassification.js.map +1 -1
- package/dist/remediate/contractPipeline/contractReviewBinding.d.ts +28 -0
- package/dist/remediate/contractPipeline/contractReviewBinding.d.ts.map +1 -0
- package/dist/remediate/contractPipeline/contractReviewBinding.js +75 -0
- package/dist/remediate/contractPipeline/contractReviewBinding.js.map +1 -0
- package/dist/remediate/contractPipeline/repairState.d.ts +3 -1
- package/dist/remediate/contractPipeline/repairState.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/repairState.js +1 -0
- package/dist/remediate/contractPipeline/repairState.js.map +1 -1
- package/dist/remediate/contractPipeline/sketchSource.d.ts +1 -0
- package/dist/remediate/contractPipeline/sketchSource.d.ts.map +1 -1
- package/dist/remediate/contractPipeline/sketchSource.js +1 -0
- package/dist/remediate/contractPipeline/sketchSource.js.map +1 -1
- package/dist/remediate/dedup/crossLensDedup.d.ts +1 -2
- package/dist/remediate/dedup/crossLensDedup.d.ts.map +1 -1
- package/dist/remediate/dedup/crossLensDedup.js +1 -0
- package/dist/remediate/dedup/crossLensDedup.js.map +1 -1
- package/dist/remediate/index.d.ts.map +1 -1
- package/dist/remediate/index.js +92 -52
- package/dist/remediate/index.js.map +1 -1
- package/dist/remediate/intake.d.ts +54 -0
- package/dist/remediate/intake.d.ts.map +1 -1
- package/dist/remediate/intake.js +15 -1
- package/dist/remediate/intake.js.map +1 -1
- package/dist/remediate/intakeSelection.d.ts +27 -0
- package/dist/remediate/intakeSelection.d.ts.map +1 -0
- package/dist/remediate/intakeSelection.js +37 -0
- package/dist/remediate/intakeSelection.js.map +1 -0
- package/dist/remediate/intent/intentPersistence.d.ts +41 -0
- package/dist/remediate/intent/intentPersistence.d.ts.map +1 -0
- package/dist/remediate/intent/intentPersistence.js +129 -0
- package/dist/remediate/intent/intentPersistence.js.map +1 -0
- package/dist/remediate/phases/close.d.ts +2 -1
- package/dist/remediate/phases/close.d.ts.map +1 -1
- package/dist/remediate/phases/close.js +19 -2
- package/dist/remediate/phases/close.js.map +1 -1
- package/dist/remediate/phases/closeReviewProvenance.d.ts +4 -0
- package/dist/remediate/phases/closeReviewProvenance.d.ts.map +1 -0
- package/dist/remediate/phases/closeReviewProvenance.js +16 -0
- package/dist/remediate/phases/closeReviewProvenance.js.map +1 -0
- package/dist/remediate/phases/triage.d.ts.map +1 -1
- package/dist/remediate/phases/triage.js +3 -1
- package/dist/remediate/phases/triage.js.map +1 -1
- package/dist/remediate/review/filterDispositions.d.ts +13 -0
- package/dist/remediate/review/filterDispositions.d.ts.map +1 -0
- package/dist/remediate/review/filterDispositions.js +32 -0
- package/dist/remediate/review/filterDispositions.js.map +1 -0
- package/dist/remediate/state/runIdentity.d.ts +27 -0
- package/dist/remediate/state/runIdentity.d.ts.map +1 -0
- package/dist/remediate/state/runIdentity.js +38 -0
- package/dist/remediate/state/runIdentity.js.map +1 -0
- package/dist/remediate/state/store.d.ts +80 -1
- package/dist/remediate/state/store.d.ts.map +1 -1
- package/dist/remediate/state/store.js +82 -1
- package/dist/remediate/state/store.js.map +1 -1
- package/dist/remediate/state/types.d.ts +215 -42
- package/dist/remediate/state/types.d.ts.map +1 -1
- package/dist/remediate/state/types.js +11 -3
- package/dist/remediate/state/types.js.map +1 -1
- package/dist/remediate/steps/contractPipeline.d.ts +61 -3
- package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.js +121 -47
- package/dist/remediate/steps/contractPipeline.js.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.d.ts +27 -4
- package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.js +34 -32
- package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
- package/dist/remediate/steps/dispatch/contractConformanceReview.d.ts +31 -0
- package/dist/remediate/steps/dispatch/contractConformanceReview.d.ts.map +1 -0
- package/dist/remediate/steps/dispatch/contractConformanceReview.js +98 -0
- package/dist/remediate/steps/dispatch/contractConformanceReview.js.map +1 -0
- package/dist/remediate/steps/dispatch/hostContracts.d.ts +133 -0
- package/dist/remediate/steps/dispatch/hostContracts.d.ts.map +1 -0
- package/dist/remediate/steps/dispatch/hostContracts.js +104 -0
- package/dist/remediate/steps/dispatch/hostContracts.js.map +1 -0
- package/dist/remediate/steps/dispatch/hostCorroboration.d.ts +70 -0
- package/dist/remediate/steps/dispatch/hostCorroboration.d.ts.map +1 -0
- package/dist/remediate/steps/dispatch/hostCorroboration.js +350 -0
- package/dist/remediate/steps/dispatch/hostCorroboration.js.map +1 -0
- package/dist/remediate/steps/dispatch/hostHandoff.d.ts +8 -162
- package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/hostHandoff.js +137 -690
- package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
- package/dist/remediate/steps/dispatch/requiredTests.d.ts +83 -0
- package/dist/remediate/steps/dispatch/requiredTests.d.ts.map +1 -0
- package/dist/remediate/steps/dispatch/requiredTests.js +262 -0
- package/dist/remediate/steps/dispatch/requiredTests.js.map +1 -0
- package/dist/remediate/steps/finalGate.d.ts +8 -7
- package/dist/remediate/steps/finalGate.d.ts.map +1 -1
- package/dist/remediate/steps/finalGate.js +14 -11
- package/dist/remediate/steps/finalGate.js.map +1 -1
- package/dist/remediate/steps/frictionCloseout.d.ts +34 -0
- package/dist/remediate/steps/frictionCloseout.d.ts.map +1 -0
- package/dist/remediate/steps/frictionCloseout.js +113 -0
- package/dist/remediate/steps/frictionCloseout.js.map +1 -0
- package/dist/remediate/steps/gateCommands.d.ts +7 -9
- package/dist/remediate/steps/gateCommands.d.ts.map +1 -1
- package/dist/remediate/steps/gateCommands.js +37 -11
- package/dist/remediate/steps/gateCommands.js.map +1 -1
- package/dist/remediate/steps/intakeResolver.d.ts +2 -0
- package/dist/remediate/steps/intakeResolver.d.ts.map +1 -1
- package/dist/remediate/steps/intakeResolver.js +36 -11
- package/dist/remediate/steps/intakeResolver.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts +23 -110
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +232 -508
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/remediate/steps/prompts.d.ts +1 -1
- package/dist/remediate/steps/prompts.d.ts.map +1 -1
- package/dist/remediate/steps/prompts.js +7 -2
- package/dist/remediate/steps/prompts.js.map +1 -1
- package/dist/remediate/steps/recoverIngest.d.ts +57 -0
- package/dist/remediate/steps/recoverIngest.d.ts.map +1 -0
- package/dist/remediate/steps/recoverIngest.js +171 -0
- package/dist/remediate/steps/recoverIngest.js.map +1 -0
- package/dist/remediate/steps/stepWriter.d.ts +5 -4
- package/dist/remediate/steps/stepWriter.d.ts.map +1 -1
- package/dist/remediate/steps/stepWriter.js +2 -1
- package/dist/remediate/steps/stepWriter.js.map +1 -1
- package/dist/remediate/steps/types.d.ts +2 -3
- package/dist/remediate/steps/types.d.ts.map +1 -1
- package/dist/remediate/steps/types.js.map +1 -1
- package/dist/remediate/validation/artifacts.d.ts.map +1 -1
- package/dist/remediate/validation/artifacts.js +5 -12
- 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 +10 -7
- package/dist/remediate/validation/contractPipeline.js.map +1 -1
- package/dist/remediate/validation/contractPipelineGates.d.ts +13 -67
- package/dist/remediate/validation/contractPipelineGates.d.ts.map +1 -1
- package/dist/remediate/validation/contractPipelineGates.js +65 -139
- package/dist/remediate/validation/contractPipelineGates.js.map +1 -1
- package/dist/remediate/validation/remediationState.d.ts.map +1 -1
- package/dist/remediate/validation/remediationState.js +9 -3
- package/dist/remediate/validation/remediationState.js.map +1 -1
- package/dist/shared/agentReflections.d.ts +2 -2
- package/dist/shared/analyzerPolicy.d.ts +2 -16
- package/dist/shared/analyzerPolicy.d.ts.map +1 -1
- package/dist/shared/analyzerPolicy.js +22 -24
- package/dist/shared/analyzerPolicy.js.map +1 -1
- package/dist/shared/analyzerRunConsent.d.ts +33 -0
- package/dist/shared/analyzerRunConsent.d.ts.map +1 -0
- package/dist/shared/analyzerRunConsent.js +42 -0
- package/dist/shared/analyzerRunConsent.js.map +1 -0
- package/dist/shared/analyzers/acquisitionEngine.d.ts +3 -8
- package/dist/shared/analyzers/acquisitionEngine.d.ts.map +1 -1
- package/dist/shared/analyzers/acquisitionEngine.js +1 -0
- package/dist/shared/analyzers/acquisitionEngine.js.map +1 -1
- package/dist/shared/decompose/charterExtraction.d.ts +8 -8
- package/dist/shared/decompose/systemicChallenge.d.ts +12 -12
- package/dist/shared/engine/obligationEngine.d.ts +2 -2
- package/dist/shared/findings/dedupe.d.ts.map +1 -1
- package/dist/shared/findings/dedupe.js +16 -0
- package/dist/shared/findings/dedupe.js.map +1 -1
- package/dist/shared/graph/orderedReachability.d.ts +9 -0
- package/dist/shared/graph/orderedReachability.d.ts.map +1 -0
- package/dist/shared/graph/orderedReachability.js +21 -0
- package/dist/shared/graph/orderedReachability.js.map +1 -0
- package/dist/shared/index.d.ts +9 -3
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +6 -3
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/intake/guidanceBootstrap.d.ts +2 -0
- package/dist/shared/intake/guidanceBootstrap.d.ts.map +1 -1
- package/dist/shared/intake/guidanceBootstrap.js +10 -1
- package/dist/shared/intake/guidanceBootstrap.js.map +1 -1
- package/dist/shared/intent/constraintClauses.d.ts +3 -0
- package/dist/shared/intent/constraintClauses.d.ts.map +1 -1
- package/dist/shared/intent/constraintClauses.js +9 -0
- package/dist/shared/intent/constraintClauses.js.map +1 -1
- package/dist/shared/io/artifactTreeHold.d.ts +5 -0
- package/dist/shared/io/artifactTreeHold.d.ts.map +1 -0
- package/dist/shared/io/artifactTreeHold.js +13 -0
- package/dist/shared/io/artifactTreeHold.js.map +1 -0
- package/dist/shared/io/auditToolsPaths.d.ts +3 -1
- package/dist/shared/io/auditToolsPaths.d.ts.map +1 -1
- package/dist/shared/io/auditToolsPaths.js +6 -1
- package/dist/shared/io/auditToolsPaths.js.map +1 -1
- package/dist/shared/io/collectFilesSorted.d.ts +10 -0
- package/dist/shared/io/collectFilesSorted.d.ts.map +1 -0
- package/dist/shared/io/collectFilesSorted.js +38 -0
- package/dist/shared/io/collectFilesSorted.js.map +1 -0
- package/dist/shared/io/json.d.ts.map +1 -1
- package/dist/shared/io/json.js +11 -4
- package/dist/shared/io/json.js.map +1 -1
- package/dist/shared/io/stepContractWriter.d.ts.map +1 -1
- package/dist/shared/io/stepContractWriter.js +8 -0
- package/dist/shared/io/stepContractWriter.js.map +1 -1
- package/dist/shared/loopCorePaths.d.ts.map +1 -1
- package/dist/shared/loopCorePaths.js +9 -0
- package/dist/shared/loopCorePaths.js.map +1 -1
- package/dist/shared/observability/rootLogObservations.d.ts +10 -0
- package/dist/shared/observability/rootLogObservations.d.ts.map +1 -0
- package/dist/shared/observability/rootLogObservations.js +147 -0
- package/dist/shared/observability/rootLogObservations.js.map +1 -0
- package/dist/shared/prompts.d.ts +7 -7
- package/dist/shared/prompts.d.ts.map +1 -1
- package/dist/shared/prompts.js +11 -11
- package/dist/shared/prompts.js.map +1 -1
- package/dist/shared/submission/submissionLedger.d.ts +7 -1
- package/dist/shared/submission/submissionLedger.d.ts.map +1 -1
- package/dist/shared/submission/submissionLedger.js +8 -0
- package/dist/shared/submission/submissionLedger.js.map +1 -1
- package/dist/shared/tooling/testCommand.d.ts +1 -0
- package/dist/shared/tooling/testCommand.d.ts.map +1 -1
- package/dist/shared/tooling/testCommand.js +4 -0
- package/dist/shared/tooling/testCommand.js.map +1 -1
- package/dist/shared/types/charter.d.ts +8 -8
- package/dist/shared/types/conceptualPerspective.d.ts +66 -0
- package/dist/shared/types/conceptualPerspective.d.ts.map +1 -0
- package/dist/shared/types/conceptualPerspective.js +135 -0
- package/dist/shared/types/conceptualPerspective.js.map +1 -0
- package/dist/shared/types/contractPipeline/design.d.ts +5 -0
- package/dist/shared/types/contractPipeline/design.d.ts.map +1 -1
- package/dist/shared/types/contractPipeline/design.js +6 -0
- package/dist/shared/types/contractPipeline/design.js.map +1 -1
- package/dist/shared/types/contractPipeline/implementation.d.ts +54 -0
- package/dist/shared/types/contractPipeline/implementation.d.ts.map +1 -1
- package/dist/shared/types/contractPipeline/implementation.js +10 -5
- package/dist/shared/types/contractPipeline/implementation.js.map +1 -1
- package/dist/shared/types/contractPipeline/obligations.d.ts +21 -10
- package/dist/shared/types/contractPipeline/obligations.d.ts.map +1 -1
- package/dist/shared/types/contractPipeline/obligations.js +13 -1
- package/dist/shared/types/contractPipeline/obligations.js.map +1 -1
- package/dist/shared/types/disposition.d.ts +6 -6
- package/dist/shared/types/finding.d.ts +50 -50
- package/dist/shared/types/intentCheckpoint.d.ts +66 -11
- package/dist/shared/types/intentCheckpoint.d.ts.map +1 -1
- package/dist/shared/types/intentCheckpoint.js +10 -2
- package/dist/shared/types/intentCheckpoint.js.map +1 -1
- package/dist/shared/types/remediationOutcome.d.ts +252 -24
- package/dist/shared/types/remediationOutcome.d.ts.map +1 -1
- package/dist/shared/types/remediationOutcome.js +4 -0
- package/dist/shared/types/remediationOutcome.js.map +1 -1
- package/dist/shared/types/reviewIndependence.d.ts +225 -0
- package/dist/shared/types/reviewIndependence.d.ts.map +1 -0
- package/dist/shared/types/reviewIndependence.js +67 -0
- package/dist/shared/types/reviewIndependence.js.map +1 -0
- package/dist/shared/types/stepContract.d.ts +8 -2
- package/dist/shared/types/stepContract.d.ts.map +1 -1
- package/dist/shared/types/stepContract.js +4 -1
- package/dist/shared/types/stepContract.js.map +1 -1
- package/dist/shared/validation/findingsReport.d.ts.map +1 -1
- package/dist/shared/validation/findingsReport.js +13 -0
- package/dist/shared/validation/findingsReport.js.map +1 -1
- package/docs/audit-pkg/contracts.md +38 -2
- package/docs/audit-pkg/operator-guide.md +59 -4
- package/package.json +5 -5
- package/remediate-code.mjs +16 -3
- package/skills/audit-code/audit-code.prompt.md +1 -31
- package/skills/remediate-code/remediate-code.prompt.md +12 -6
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { DEPENDENCY_MAP } from "../contractPipeline/artifactStore.js";
|
|
9
9
|
import { GOAL_ID_MAX_LENGTH } from "../contractPipeline/idRegistry.js";
|
|
10
|
-
import { ASSESSMENT_FINDING_STATUSES, ASSESSMENT_VERDICTS, CONTRACT_REPAIR_TARGETS_OFFERED, CONTEXT_ENTRY_KINDS, COUNTEREXAMPLE_CLASSIFICATIONS, CRITIQUE_ITEM_KINDS, CRITIQUE_ITEM_SEVERITIES, CRITIQUE_VERDICTS, GOAL_SOURCE_TYPES, IMPLEMENTATION_EDGE_KINDS, IMPLEMENTATION_NODE_STATUSES, JUDGE_VERDICTS, OBLIGATION_KINDS, OBLIGATION_STATUSES, SEAM_RESOLUTION_DECISIONS, TEST_SPEC_KINDS, sketchValues, } from "../contractPipeline/sketchSource.js";
|
|
10
|
+
import { ASSESSMENT_FINDING_STATUSES, ASSESSMENT_VERDICTS, CONTRACT_REPAIR_TARGETS_OFFERED, CONTEXT_ENTRY_KINDS, COUNTEREXAMPLE_CLASSIFICATIONS, CONCEPTUAL_CRITIQUE_REPAIR_TARGETS, CRITIQUE_ITEM_KINDS, CRITIQUE_ITEM_SEVERITIES, CRITIQUE_VERDICTS, GOAL_SOURCE_TYPES, IMPLEMENTATION_EDGE_KINDS, IMPLEMENTATION_NODE_STATUSES, JUDGE_VERDICTS, OBLIGATION_KINDS, OBLIGATION_STATUSES, SEAM_RESOLUTION_DECISIONS, TEST_SPEC_KINDS, sketchValues, } from "../contractPipeline/sketchSource.js";
|
|
11
11
|
import { renderIndependentReviewMandate } from "audit-tools/shared";
|
|
12
12
|
import { loaderCommand } from "./prompts.js";
|
|
13
13
|
/**
|
|
@@ -184,13 +184,14 @@ export const ROLES = {
|
|
|
184
184
|
"contract_version": "remediate-code-contract-pipeline/conceptual-design-critique/v1alpha1",
|
|
185
185
|
"goal_id": "<from goal_spec>",
|
|
186
186
|
"items": [{ "id": "<id>", "kind": "${sketchValues(CRITIQUE_ITEM_KINDS)}", "description": "...", "severity": "${sketchValues(CRITIQUE_ITEM_SEVERITIES)}" }],
|
|
187
|
+
"repair_target": "${sketchValues(CONCEPTUAL_CRITIQUE_REPAIR_TARGETS)}",
|
|
187
188
|
"verdict": "${sketchValues(CRITIQUE_VERDICTS)}"
|
|
188
189
|
}`,
|
|
189
|
-
description: "Critique the finalized module contracts: philosophy, alternatives, direction.",
|
|
190
|
+
description: "Critique the finalized module contracts and their owning module decomposition: philosophy, alternatives, direction, and declared file scope.",
|
|
190
191
|
fieldRules: [
|
|
191
|
-
"
|
|
192
|
+
"For blocking interface changes, set `repair_target` to `finalized_module_contracts`. For module ownership, module-set, or `file_scope` changes, select the owning `module_decomposition` artifact; never invent these fields in finalized interfaces. Mark genuinely optional concerns `advisory`.",
|
|
192
193
|
],
|
|
193
|
-
|
|
194
|
+
reviewPolicy: { full: "independent", light: "degraded_allowed" },
|
|
194
195
|
},
|
|
195
196
|
test_validator_plan: {
|
|
196
197
|
title: "Test and Validator Plan",
|
|
@@ -243,7 +244,7 @@ export const ROLES = {
|
|
|
243
244
|
}]
|
|
244
245
|
}`,
|
|
245
246
|
description: "Adversarially attack the design: produce concrete counterexamples that falsify design invariants, obligations, or assessment claims. Each counterexample must name the claim it falsifies, concrete reproduction steps, and the obligation(s) it violates. Search hard for inputs, orderings, and edge states the design mishandles; an empty counterexamples array is only acceptable when you genuinely cannot falsify anything.",
|
|
246
|
-
|
|
247
|
+
reviewPolicy: { full: "independent", light: "degraded_allowed" },
|
|
247
248
|
},
|
|
248
249
|
judge: {
|
|
249
250
|
title: "Adversarial Judge",
|
|
@@ -265,9 +266,9 @@ export const ROLES = {
|
|
|
265
266
|
description: "Judge every counterexample from the critic: `accepted` (a real flaw the contract must address), `out_of_scope` (outside the goal spec), `duplicate`, `invalid` (does not falsify the claim), or `residual_risk` (real but tolerable; recorded, not repaired). The verdict is `approved` only when no accepted counterexample needs a contract repair; then omit `repair_directive`. Otherwise the verdict is `needs_repair`, and `repair_directive` names the one artifact whose rewrite addresses the accepted counterexamples.",
|
|
266
267
|
fieldRules: [
|
|
267
268
|
`\`repair_directive.target\` is one of ${CONTRACT_REPAIR_TARGETS_OFFERED.map((t) => `\`${t}\``).join(", ")}.`,
|
|
268
|
-
"A repair must be expressible in the target's own schema. For `finalized_module_contracts`, that is the seven interface fields, prose `seam_adjustments`, and implementation order only as `artifact:<name>` tokens in `inputs` and `outputs`, with the module set kept.
|
|
269
|
+
"A repair must be expressible in the target's own schema. For `finalized_module_contracts`, that is the seven interface fields, prose `seam_adjustments`, and implementation order only as `artifact:<name>` tokens in `inputs` and `outputs`, with the module set kept. For module ownership, a new module, or `file_scope`, target `module_decomposition`; downstream contracts and obligations are re-derived by the tool. Never invent unsupported schema fields or classify an otherwise blocking defect as tolerated merely because its fix belongs upstream.",
|
|
269
270
|
],
|
|
270
|
-
|
|
271
|
+
reviewPolicy: { full: "independent", light: "independent" },
|
|
271
272
|
},
|
|
272
273
|
implementation_planning: {
|
|
273
274
|
title: "Implementation Planning (DAG)",
|
|
@@ -301,7 +302,7 @@ export const ROLES = {
|
|
|
301
302
|
};
|
|
302
303
|
/**
|
|
303
304
|
* Phases whose value is adversarial independence — the reviewer must NOT be the
|
|
304
|
-
* author of the design under review.
|
|
305
|
+
* author of the design under review. Declared in ROLES' explicit reviewPolicy
|
|
305
306
|
* so the set is always in sync with the phase definitions and never hand-maintained.
|
|
306
307
|
*
|
|
307
308
|
* Currently includes 'critique' (conceptual design critique), 'critic' (counterexample search), and
|
|
@@ -310,40 +311,35 @@ export const ROLES = {
|
|
|
310
311
|
* adjudication is only worth anything from an independent reviewer; memory:
|
|
311
312
|
* delegate the judge too). The 'assessment' phase is the author's OWN coverage
|
|
312
313
|
* self-assessment (not an adversarial review of someone else's work), so it is
|
|
313
|
-
* intentionally excluded (
|
|
314
|
+
* intentionally excluded (no review policy).
|
|
314
315
|
*/
|
|
315
|
-
function
|
|
316
|
-
const
|
|
317
|
-
|
|
318
|
-
if (role.isIndependentCritic) {
|
|
319
|
-
phases.add(roleName);
|
|
320
|
-
}
|
|
321
|
-
}
|
|
322
|
-
return phases;
|
|
316
|
+
export function reviewRequirementForRole(role, depth) {
|
|
317
|
+
const policy = ROLES[role]?.reviewPolicy;
|
|
318
|
+
return policy ? policy[depth === "light" ? "light" : "full"] : "ordinary";
|
|
323
319
|
}
|
|
324
|
-
const INDEPENDENT_CRITIC_PHASES = getIndependentCriticPhases();
|
|
325
320
|
/**
|
|
326
321
|
* Render the independent-review directive for an adversarial review phase.
|
|
327
322
|
*
|
|
328
323
|
* Depth-gated (T1 slice 3): when `adversarialDepth` is `light` (a low-risk run),
|
|
329
324
|
* the phase runs as a lightweight inline self-check — the floor, never skipped.
|
|
330
|
-
*
|
|
331
|
-
*
|
|
332
|
-
*
|
|
325
|
+
* Full review and the final judge require an INDEPENDENT CONTEXT. Only the
|
|
326
|
+
* explicit light critique/critic policy permits declared self-review. Empty
|
|
327
|
+
* for any non-adversarial phase.
|
|
333
328
|
*
|
|
334
329
|
* The mandate text itself is single-sourced in `audit-tools/shared`
|
|
335
330
|
* (`renderIndependentReviewMandate`) and states the NEED, not a mechanism —
|
|
336
331
|
* read that function's header before rewording anything here.
|
|
337
332
|
*/
|
|
338
333
|
function renderIndependentCriticDirective(role, adversarialDepth) {
|
|
339
|
-
|
|
334
|
+
const requirement = reviewRequirementForRole(role, adversarialDepth);
|
|
335
|
+
if (requirement === "ordinary")
|
|
340
336
|
return "";
|
|
341
337
|
// LANE-CLASS-conditional, never capability-conditional (design resolution 2,
|
|
342
338
|
// gate-resolved 2026-08-05): the shared mandate text carries both the
|
|
343
339
|
// independent-context requirement and the explicitly-degraded fallback in one
|
|
344
340
|
// capability-neutral form. Depth stays a policy axis: light (low-risk floor)
|
|
345
341
|
// keeps its proportionate inline self-check.
|
|
346
|
-
return renderIndependentReviewMandate(adversarialDepth === "light" ? "light" : "full");
|
|
342
|
+
return renderIndependentReviewMandate(adversarialDepth === "light" ? "light" : "full", requirement);
|
|
347
343
|
}
|
|
348
344
|
/**
|
|
349
345
|
* The `## Field Rules` section, or nothing when a role has no enforced rule.
|
|
@@ -405,8 +401,9 @@ export function renderContractPipelinePrompt(input) {
|
|
|
405
401
|
throw new Error(`Contract-pipeline role "${input.role}" requires output artifact path for "${role.outputKey}" but it was not provided.`);
|
|
406
402
|
}
|
|
407
403
|
const inputSections = requiredInputKeys.map((key) => {
|
|
408
|
-
const
|
|
409
|
-
|
|
404
|
+
const canonical = input.artifactReadPaths?.[key];
|
|
405
|
+
const path = canonical ?? input.artifactPaths[key];
|
|
406
|
+
return `- \`${path}\` (${key}${input.artifactReadPaths ? canonical ? "; canonical envelope: read payload" : "; staged raw domain artifact" : ""})`;
|
|
410
407
|
});
|
|
411
408
|
const sourceSections = input.sourcePaths && input.sourcePaths.length > 0
|
|
412
409
|
? `\n## Source Inputs\n\n${input.sourcePaths.map((p) => `- \`${p}\``).join("\n")}\n`
|
|
@@ -424,6 +421,7 @@ ${role.description}
|
|
|
424
421
|
${renderCwdNote(input.repoRoot)}${independentCriticDirective}
|
|
425
422
|
## Required Inputs
|
|
426
423
|
${inputSections.length > 0 ? inputSections.join("\n") : "_No artifact inputs required for this role._"}
|
|
424
|
+
${input.artifactReadPaths ? "For inputs marked canonical, read the `payload` field as domain data; review provenance is metadata. Inputs marked staged are raw artifacts authored earlier in this same round trip. Do not edit canonical files." : ""}
|
|
427
425
|
${sourceSections}${pathASeedSection}
|
|
428
426
|
## What You May Read
|
|
429
427
|
|
|
@@ -502,7 +500,7 @@ export const CONTRACT_PIPELINE_PHASE_ORDER = Object.keys(PHASE_TO_ARTIFACT);
|
|
|
502
500
|
*/
|
|
503
501
|
const REPAIR_TRIGGER_CONTRACT = {
|
|
504
502
|
judge: {
|
|
505
|
-
lead: (target) => `The adversarial judge rejected the current contract.
|
|
503
|
+
lead: (target) => `The adversarial judge rejected the current contract. Make targeted edits to \`${target}\` so that it addresses every accepted counterexample.`,
|
|
506
504
|
instructionHeading: "Judge Instruction",
|
|
507
505
|
requiredInputs: [
|
|
508
506
|
"goal_spec",
|
|
@@ -515,7 +513,7 @@ const REPAIR_TRIGGER_CONTRACT = {
|
|
|
515
513
|
readingNote: "the accepted counterexamples in the judge report's classifications",
|
|
516
514
|
},
|
|
517
515
|
critique: {
|
|
518
|
-
lead: (target) => `The conceptual design critique raised blocking concerns.
|
|
516
|
+
lead: (target) => `The conceptual design critique raised blocking concerns. Make targeted edits to \`${target}\` so that no blocking concern still applies.`,
|
|
519
517
|
instructionHeading: "Blocking Concerns",
|
|
520
518
|
// The critique gate runs BEFORE any downstream artifact is derived, so the
|
|
521
519
|
// judge-side artifacts do not exist yet. Listing them is what sent workers
|
|
@@ -535,13 +533,14 @@ const REPAIR_TRIGGER_CONTRACT = {
|
|
|
535
533
|
* set of rules from one place.
|
|
536
534
|
*/
|
|
537
535
|
const REPAIR_TARGET_ROLE = {
|
|
536
|
+
module_decomposition: ROLES.decomposition,
|
|
538
537
|
finalized_module_contracts: ROLES.contract_finalization,
|
|
539
538
|
obligation_ledger: ROLES.obligation_ledger,
|
|
540
539
|
contract_assessment_report: ROLES.assessment,
|
|
541
540
|
};
|
|
542
541
|
/**
|
|
543
|
-
* Render the bounded repair step for a failing gate:
|
|
544
|
-
* artifact
|
|
542
|
+
* Render the bounded repair step for a failing gate: targeted edits to the named
|
|
543
|
+
* artifact, serialized as complete JSON. The worker edits only the
|
|
545
544
|
* target; the pipeline brings every later artifact back on its own.
|
|
546
545
|
*/
|
|
547
546
|
export function renderContractRepairPrompt(input) {
|
|
@@ -550,7 +549,9 @@ export function renderContractRepairPrompt(input) {
|
|
|
550
549
|
throw new Error(`Contract repair requires an artifact path for "${input.target}" but it was not provided.`);
|
|
551
550
|
}
|
|
552
551
|
const contract = REPAIR_TRIGGER_CONTRACT[input.trigger];
|
|
553
|
-
const requiredInputs =
|
|
552
|
+
const requiredInputs = input.target === "module_decomposition"
|
|
553
|
+
? [...new Set([...contract.requiredInputs, "context_bundle", "module_decomposition"])]
|
|
554
|
+
: contract.requiredInputs;
|
|
554
555
|
for (const key of requiredInputs) {
|
|
555
556
|
if (!input.artifactPaths[key]) {
|
|
556
557
|
throw new Error(`Contract repair (${input.trigger}) requires artifact path for "${key}" but it was not provided.`);
|
|
@@ -567,11 +568,12 @@ ${input.instruction}
|
|
|
567
568
|
|
|
568
569
|
## Required Inputs
|
|
569
570
|
|
|
570
|
-
${requiredInputs.map((key) => `- \`${input.artifactPaths[key]}\` (${key})`).join("\n")}
|
|
571
|
+
${requiredInputs.map((key) => `- \`${(input.artifactReadPaths ?? input.artifactPaths)[key]}\` (${key})`).join("\n")}
|
|
572
|
+
${input.artifactReadPaths ? "Read the `payload` field of each canonical input envelope as its domain artifact; do not edit the canonical files." : ""}
|
|
571
573
|
|
|
572
574
|
## Your Task
|
|
573
575
|
|
|
574
|
-
Read the inputs above. Attend to ${contract.readingNote}.
|
|
576
|
+
Read the inputs above. Attend to ${contract.readingNote}. Apply targeted edits; preserve the canonical goal identity and every untouched module/obligation identity. Do not regenerate or collapse the existing module set when repairing finalized interfaces. Serialize the complete updated JSON, not a diff, to exactly:
|
|
575
577
|
|
|
576
578
|
\`${outputPath}\`
|
|
577
579
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contractPipelinePrompts.js","sourceRoot":"","sources":["../../../src/remediate/steps/contractPipelinePrompts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"contractPipelinePrompts.js","sourceRoot":"","sources":["../../../src/remediate/steps/contractPipelinePrompts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ConformanceReviewIssueCode } from "./hostContracts.js";
|
|
2
|
+
import { type AcceptedConformanceReview } from "../../../shared/types/reviewIndependence.js";
|
|
3
|
+
import type { RemediationHostResult, RemediationHostDecision, RemediationHostWorkItem } from "./hostContracts.js";
|
|
4
|
+
export declare function conformanceReviewPaths(artifactsDir: string, runId: string, itemId: string): {
|
|
5
|
+
request: string;
|
|
6
|
+
response: string;
|
|
7
|
+
};
|
|
8
|
+
export interface ConformanceReviewIssue {
|
|
9
|
+
code: ConformanceReviewIssueCode;
|
|
10
|
+
work_item_id: string;
|
|
11
|
+
result_path: string;
|
|
12
|
+
review_request_path: string;
|
|
13
|
+
message: string;
|
|
14
|
+
}
|
|
15
|
+
export type ConformanceReviewCheck = {
|
|
16
|
+
ok: true;
|
|
17
|
+
receipt?: AcceptedConformanceReview;
|
|
18
|
+
} | {
|
|
19
|
+
ok: false;
|
|
20
|
+
issue: ConformanceReviewIssue;
|
|
21
|
+
};
|
|
22
|
+
/** Called only AFTER mechanical result, obligation, commit, scope and test checks pass. */
|
|
23
|
+
export declare function checkContractConformance(params: {
|
|
24
|
+
root: string;
|
|
25
|
+
artifactsDir: string;
|
|
26
|
+
runId: string;
|
|
27
|
+
item: RemediationHostWorkItem;
|
|
28
|
+
result: RemediationHostResult | RemediationHostDecision;
|
|
29
|
+
contracts: readonly unknown[];
|
|
30
|
+
}): Promise<ConformanceReviewCheck>;
|
|
31
|
+
//# sourceMappingURL=contractConformanceReview.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contractConformanceReview.d.ts","sourceRoot":"","sources":["../../../../src/remediate/steps/dispatch/contractConformanceReview.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAQrE,OAAO,EAAqF,KAAK,yBAAyB,EAAE,MAAM,6CAA6C,CAAC;AAChL,OAAO,KAAK,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAgBlH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAIjI;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,0BAA0B,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,sBAAsB,GAC9B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,yBAAyB,CAAA;CAAE,GACjD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,sBAAsB,CAAA;CAAE,CAAC;AAEjD,2FAA2F;AAC3F,wBAAsB,wBAAwB,CAAC,MAAM,EAAE;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,uBAAuB,CAAC;IAC9B,MAAM,EAAE,qBAAqB,GAAG,uBAAuB,CAAC;IACxD,SAAS,EAAE,SAAS,OAAO,EAAE,CAAC;CAC/B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAmElC"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { readSubmissionDocument } from "../../../shared/submission/submissionClassifier.js";
|
|
2
|
+
import { join, resolve } from "node:path";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
import { hashContent } from "../../../shared/hash.js";
|
|
5
|
+
import { headCommit } from "../../../shared/git.js";
|
|
6
|
+
import { stableStringify } from "../../../shared/stableStringify.js";
|
|
7
|
+
import { writeJsonFile } from "../../../shared/io/json.js";
|
|
8
|
+
import { ReviewDeclarationSchema, reviewIndependenceIssue, AcceptedConformanceReviewSchema } from "../../../shared/types/reviewIndependence.js";
|
|
9
|
+
const ConformanceResponseSchema = z.object({
|
|
10
|
+
schema_version: z.literal("contract-conformance-review/v1"),
|
|
11
|
+
binding: z.string().regex(/^[0-9a-f]{64}$/u),
|
|
12
|
+
declaration: ReviewDeclarationSchema,
|
|
13
|
+
verdict: z.enum(["pass", "insufficient"]),
|
|
14
|
+
summary: z.string().trim().min(1),
|
|
15
|
+
obligations: z.array(z.object({
|
|
16
|
+
obligation_id: z.string().min(1),
|
|
17
|
+
verdict: z.enum(["satisfied", "insufficient"]),
|
|
18
|
+
evidence: z.array(z.string().trim().min(1)).min(1),
|
|
19
|
+
}).strict()),
|
|
20
|
+
}).strict();
|
|
21
|
+
const digest = (value) => hashContent(stableStringify(value));
|
|
22
|
+
export function conformanceReviewPaths(artifactsDir, runId, itemId) {
|
|
23
|
+
const stem = digest({ run_id: runId, work_item_id: itemId });
|
|
24
|
+
const dir = join(artifactsDir, "conformance-review");
|
|
25
|
+
return { request: join(dir, `${stem}.request.json`), response: join(dir, `${stem}.response.json`) };
|
|
26
|
+
}
|
|
27
|
+
/** Called only AFTER mechanical result, obligation, commit, scope and test checks pass. */
|
|
28
|
+
export async function checkContractConformance(params) {
|
|
29
|
+
const paths = conformanceReviewPaths(params.artifactsDir, params.runId, params.item.id);
|
|
30
|
+
const verifiedHead = "outcome" in params.result ? await headCommit(params.root) : undefined;
|
|
31
|
+
const content = {
|
|
32
|
+
repository_root: params.root,
|
|
33
|
+
run_id: params.runId,
|
|
34
|
+
work_item_id: params.item.id,
|
|
35
|
+
baseline_commit: params.item.baseline_commit,
|
|
36
|
+
...(verifiedHead ? { verified_head: verifiedHead } : {}),
|
|
37
|
+
prompt_sha256: params.item.prompt.sha256,
|
|
38
|
+
obligation_ids: params.item.obligation_ids,
|
|
39
|
+
module_contracts: params.contracts,
|
|
40
|
+
result: params.result,
|
|
41
|
+
};
|
|
42
|
+
const binding = digest(content);
|
|
43
|
+
const request = {
|
|
44
|
+
schema_version: "contract-conformance-request/v1",
|
|
45
|
+
binding,
|
|
46
|
+
review_requirement: "independent",
|
|
47
|
+
content,
|
|
48
|
+
response_path: paths.response,
|
|
49
|
+
instructions: [
|
|
50
|
+
"Review the result's obligation evidence against every carried module contract in an independent context that did not author the implementation and cannot see its author's reasoning.",
|
|
51
|
+
`Inspect the cited source and tests at ${verifiedHead ? "the verified_head commit" : "the landed commit"}. Do not accept a citation merely because it exists; explain how it satisfies the obligation and the relevant contract.`,
|
|
52
|
+
"Do not edit source, contracts, or the implementation result. Return one evidence-backed verdict per exact obligation id.",
|
|
53
|
+
"Independence is a host declaration, not mechanically proven identity. If an independent context is unavailable, declare unavailable; self-review/degraded mode cannot satisfy this required lane.",
|
|
54
|
+
"Use verdict insufficient with actionable missing evidence when the result or implementation needs repair. Write only the response file; the conversation host owns continuation.",
|
|
55
|
+
],
|
|
56
|
+
response_template: {
|
|
57
|
+
schema_version: "contract-conformance-review/v1", binding,
|
|
58
|
+
declaration: { mode: "independent", reason: "<how this context is independent of authorship>" },
|
|
59
|
+
verdict: "pass", summary: "<evidence-based conclusion>",
|
|
60
|
+
obligations: params.item.obligation_ids.map(obligation_id => ({ obligation_id, verdict: "satisfied", evidence: ["<specific source/test evidence and why it suffices>"] })),
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
const existing = await readSubmissionDocument(paths.request);
|
|
64
|
+
if (stableStringify(existing.kind === "value" ? existing.value : null) !== stableStringify(request))
|
|
65
|
+
await writeJsonFile(paths.request, request);
|
|
66
|
+
const issue = (code, message) => ({ ok: false, issue: {
|
|
67
|
+
code, work_item_id: params.item.id, result_path: paths.response, review_request_path: paths.request, message,
|
|
68
|
+
} });
|
|
69
|
+
const raw = await readSubmissionDocument(paths.response);
|
|
70
|
+
const response = ConformanceResponseSchema.safeParse(raw.kind === "value" ? raw.value : undefined);
|
|
71
|
+
if (!response.success || response.data.binding !== binding) {
|
|
72
|
+
return issue("conformance_review_required", `Independent contract conformance review required for ${params.item.id}. Read ${paths.request}; write the bound response to ${paths.response}. A missing, invalid or stale review cannot authorize acceptance.`);
|
|
73
|
+
}
|
|
74
|
+
const review = response.data;
|
|
75
|
+
const independence = reviewIndependenceIssue("independent", review.declaration);
|
|
76
|
+
if (independence)
|
|
77
|
+
return issue("conformance_review_unavailable", independence);
|
|
78
|
+
const ids = review.obligations.map(entry => entry.obligation_id);
|
|
79
|
+
if (ids.length !== new Set(ids).size || ids.length !== params.item.obligation_ids.length || ids.some(id => !params.item.obligation_ids.includes(id))) {
|
|
80
|
+
return issue("conformance_review_required", "The review must assess every bound obligation exactly once, with no extra ids; correct the review response.");
|
|
81
|
+
}
|
|
82
|
+
if (review.verdict !== "pass" || review.obligations.some(entry => entry.verdict !== "satisfied")) {
|
|
83
|
+
return issue("conformance_review_insufficient", `Repair the implementation or its obligation evidence, then obtain a fresh bound review: ${review.summary}`);
|
|
84
|
+
}
|
|
85
|
+
// The result may have been edited while mechanical test commands were running.
|
|
86
|
+
// Never accept a receipt for bytes other than the ones this pass validated.
|
|
87
|
+
const currentResult = await readSubmissionDocument(resolve(params.root, params.item.result_path));
|
|
88
|
+
if (currentResult.kind !== "value" || stableStringify(currentResult.value) !== stableStringify(params.result)) {
|
|
89
|
+
return issue("conformance_review_required", "The implementation result changed during verification. Re-run next-step so mechanical validation and review bind the new result.");
|
|
90
|
+
}
|
|
91
|
+
if (verifiedHead && await headCommit(params.root) !== verifiedHead) {
|
|
92
|
+
return issue("conformance_review_required", "Repository HEAD changed during no-change review verification. Re-run next-step to validate and review the current context.");
|
|
93
|
+
}
|
|
94
|
+
return { ok: true, receipt: AcceptedConformanceReviewSchema.parse({
|
|
95
|
+
requirement: "independent", binding, review: review.declaration, summary: review.summary.slice(0, 2000),
|
|
96
|
+
}) };
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=contractConformanceReview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contractConformanceReview.js","sourceRoot":"","sources":["../../../../src/remediate/steps/dispatch/contractConformanceReview.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oDAAoD,CAAC;AAC5F,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,+BAA+B,EAAkC,MAAM,6CAA6C,CAAC;AAGhL,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC;IAC3D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC;IAC5C,WAAW,EAAE,uBAAuB;IACpC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAChC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC9C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KACnD,CAAC,CAAC,MAAM,EAAE,CAAC;CACb,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,MAAM,GAAG,CAAC,KAAc,EAAU,EAAE,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/E,MAAM,UAAU,sBAAsB,CAAC,YAAoB,EAAE,KAAa,EAAE,MAAc;IACxF,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;IACrD,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,eAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,gBAAgB,CAAC,EAAE,CAAC;AACtG,CAAC;AAcD,2FAA2F;AAC3F,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,MAO9C;IACC,MAAM,KAAK,GAAG,sBAAsB,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxF,MAAM,YAAY,GAAG,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,MAAM,OAAO,GAAG;QACd,eAAe,EAAE,MAAM,CAAC,IAAI;QAC5B,MAAM,EAAE,MAAM,CAAC,KAAK;QACpB,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;QAC5B,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,eAAe;QAC5C,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM;QACxC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc;QAC1C,gBAAgB,EAAE,MAAM,CAAC,SAAS;QAClC,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG;QACd,cAAc,EAAE,iCAAiC;QACjD,OAAO;QACP,kBAAkB,EAAE,aAAa;QACjC,OAAO;QACP,aAAa,EAAE,KAAK,CAAC,QAAQ;QAC7B,YAAY,EAAE;YACZ,uLAAuL;YACvL,yCAAyC,YAAY,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,mBAAmB,yHAAyH;YACjO,0HAA0H;YAC1H,mMAAmM;YACnM,kLAAkL;SACnL;QACD,iBAAiB,EAAE;YACjB,cAAc,EAAE,gCAAgC,EAAE,OAAO;YACzD,WAAW,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,iDAAiD,EAAE;YAC/F,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,6BAA6B;YACvD,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,qDAAqD,CAAC,EAAE,CAAC,CAAC;SAC3K;KACF,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,IAAI,eAAe,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,eAAe,CAAC,OAAO,CAAC;QAAE,MAAM,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACjJ,MAAM,KAAK,GAAG,CAAC,IAAgC,EAAE,OAAe,EAA0B,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;YAChH,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,QAAQ,EAAE,mBAAmB,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO;SAC7G,EAAE,CAAC,CAAC;IACL,MAAM,GAAG,GAAG,MAAM,sBAAsB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACnG,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAC3D,OAAO,KAAK,CAAC,6BAA6B,EAAE,wDAAwD,MAAM,CAAC,IAAI,CAAC,EAAE,UAAU,KAAK,CAAC,OAAO,iCAAiC,KAAK,CAAC,QAAQ,mEAAmE,CAAC,CAAC;IAC/P,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC7B,MAAM,YAAY,GAAG,uBAAuB,CAAC,aAAa,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAChF,IAAI,YAAY;QAAE,OAAO,KAAK,CAAC,gCAAgC,EAAE,YAAY,CAAC,CAAC;IAC/E,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACjE,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACrJ,OAAO,KAAK,CAAC,6BAA6B,EAAE,6GAA6G,CAAC,CAAC;IAC7J,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,WAAW,CAAC,EAAE,CAAC;QACjG,OAAO,KAAK,CAAC,iCAAiC,EAAE,2FAA2F,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/J,CAAC;IACD,+EAA+E;IAC/E,4EAA4E;IAC5E,MAAM,aAAa,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IAClG,IAAI,aAAa,CAAC,IAAI,KAAK,OAAO,IAAI,eAAe,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9G,OAAO,KAAK,CAAC,6BAA6B,EAAE,kIAAkI,CAAC,CAAC;IAClL,CAAC;IACD,IAAI,YAAY,IAAI,MAAM,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,YAAY,EAAE,CAAC;QACnE,OAAO,KAAK,CAAC,6BAA6B,EAAE,4HAA4H,CAAC,CAAC;IAC5K,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,+BAA+B,CAAC,KAAK,CAAC;YAChE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;SACxG,CAAC,EAAE,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { type LaneDemand, type SubmissionIssue, type WorkItemOutcome } from "audit-tools/shared";
|
|
2
|
+
import { REMEDIATION_STATE_CONTRACT_VERSION, type RemediationState } from "../../state/store.js";
|
|
3
|
+
import type { RemediationPlan, RemediationItemState, RemediationHostHandoffRecord, ConformanceReviewBinding } from "../../state/types.js";
|
|
4
|
+
import { REMEDIATION_HOST_DECISION_CONTRACT_VERSION as DECISION_CONTRACT_VERSION, REMEDIATION_HOST_RESULT_CONTRACT_VERSION as RESULT_CONTRACT_VERSION, REMEDIATION_HOST_WORKLOAD_CONTRACT_VERSION as WORKLOAD_CONTRACT_VERSION } from "../types.js";
|
|
5
|
+
export declare const CONFORMANCE_REVIEW_ISSUES: readonly ["conformance_review_required", "conformance_review_unavailable", "conformance_review_insufficient"];
|
|
6
|
+
export type ConformanceReviewIssueCode = (typeof CONFORMANCE_REVIEW_ISSUES)[number];
|
|
7
|
+
export type UnsupportedRetiredRemediationState = "unsupported_retired_state";
|
|
8
|
+
export type CurrentRemediationHostState = RemediationState & {
|
|
9
|
+
readonly contract_version: typeof REMEDIATION_STATE_CONTRACT_VERSION;
|
|
10
|
+
readonly status: "implementing";
|
|
11
|
+
readonly plan: RemediationPlan;
|
|
12
|
+
readonly items: Record<string, RemediationItemState>;
|
|
13
|
+
};
|
|
14
|
+
export interface RemediationHostWorkItem {
|
|
15
|
+
readonly id: string;
|
|
16
|
+
readonly finding_ids: readonly string[];
|
|
17
|
+
readonly allowed_files: readonly string[];
|
|
18
|
+
readonly baseline_commit: string;
|
|
19
|
+
/**
|
|
20
|
+
* The contract obligation ids this item's landed work must satisfy — the
|
|
21
|
+
* sorted, deduplicated union of `contract_obligation_ids` over the block's
|
|
22
|
+
* findings (what promotion mints from each DAG node's
|
|
23
|
+
* `satisfies_obligations`). Empty for a plan without contract overlays. The
|
|
24
|
+
* result's `obligation_evidence` must cover exactly this set.
|
|
25
|
+
*/
|
|
26
|
+
readonly obligation_ids: readonly string[];
|
|
27
|
+
readonly prompt: {
|
|
28
|
+
readonly text: string;
|
|
29
|
+
readonly sha256: string;
|
|
30
|
+
};
|
|
31
|
+
readonly required_tests: readonly string[];
|
|
32
|
+
readonly result_path: string;
|
|
33
|
+
/**
|
|
34
|
+
* The lane's demand ranking (size / complexity / risk) — the same shared
|
|
35
|
+
* shape the audit draw emits, so a host matching a backend to work reads one
|
|
36
|
+
* vocabulary from both halves of the pipeline. Names DEMAND only: never a
|
|
37
|
+
* backend, provider, model or tier (see `LaneDemandSchema`).
|
|
38
|
+
*/
|
|
39
|
+
readonly demand: LaneDemand;
|
|
40
|
+
readonly token_estimate: number;
|
|
41
|
+
}
|
|
42
|
+
export interface RemediationHostWorkload {
|
|
43
|
+
readonly contract_version: typeof WORKLOAD_CONTRACT_VERSION;
|
|
44
|
+
readonly run_id: string;
|
|
45
|
+
readonly work_items: readonly RemediationHostWorkItem[];
|
|
46
|
+
}
|
|
47
|
+
export interface PreparedRemediationHostHandoff {
|
|
48
|
+
readonly workload: RemediationHostWorkload;
|
|
49
|
+
readonly workload_path: string;
|
|
50
|
+
readonly conformance_review: ConformanceReviewBinding;
|
|
51
|
+
/** Persist this in RemediationState before exposing the workload to the host. */
|
|
52
|
+
readonly handoff_record: RemediationHostHandoffRecord;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Remediation's issue vocabulary: the SHARED submission codes plus this draw's
|
|
56
|
+
* own domain corroboration codes.
|
|
57
|
+
*
|
|
58
|
+
* The submission half is imported, never restated — a submission that is
|
|
59
|
+
* missing, unparseable, contract-invalid, or a duplicate identity means exactly
|
|
60
|
+
* the same thing on both sides of the pipeline, and the two used to spell it
|
|
61
|
+
* differently (`result_missing` here, a bare `null` in the audit ingest). The
|
|
62
|
+
* git/worktree/test half stays here: audit has no analogue and dragging
|
|
63
|
+
* `commit_not_landed` into the shared core would suggest it could emit one.
|
|
64
|
+
*/
|
|
65
|
+
export declare const REMEDIATION_ISSUE_CODES: readonly ["submission_missing", "submission_malformed", "submission_contract_invalid", "submission_rejected", "duplicate_submission_id", "workload_missing", "workload_invalid", "trusted_binding_missing", "commit_missing", "commit_not_landed", "baseline_not_ancestor", "changed_files_mismatch", "run_start_dirty_overlap", "required_test_failed", "required_test_timed_out", "required_test_output_overflow", "dependency_missing", "block_contract_invalid", "recovery_unrecorded", "tree_moved_between_phases", "state_moved_between_phases", "baseline_missing", "baseline_orphaned", "landed_commit_invalid", "work_item_not_eligible", "workload_stale", "conformance_review_required", "conformance_review_unavailable", "conformance_review_insufficient"];
|
|
66
|
+
export type RemediationIssueCode = (typeof REMEDIATION_ISSUE_CODES)[number];
|
|
67
|
+
export type RemediationHostIngestIssue = SubmissionIssue<RemediationIssueCode> & {
|
|
68
|
+
readonly review_request_path?: string;
|
|
69
|
+
};
|
|
70
|
+
export interface RemediationHostIngestSummary {
|
|
71
|
+
readonly accepted_count: number;
|
|
72
|
+
readonly completed_work_item_ids: readonly string[];
|
|
73
|
+
readonly pending_work_item_ids: readonly string[];
|
|
74
|
+
readonly issues: readonly RemediationHostIngestIssue[];
|
|
75
|
+
/**
|
|
76
|
+
* Every work item this ingest OBSERVED, by the outcome it observed — so a
|
|
77
|
+
* caller never has to re-derive progress from the issue list, where an item
|
|
78
|
+
* with no result file and an item whose write succeeded but whose result is
|
|
79
|
+
* missing both used to read as the same absence.
|
|
80
|
+
*
|
|
81
|
+
* Keyed by work item id; content-sorted on insertion so a re-ingest of an
|
|
82
|
+
* unchanged frontier produces byte-identical content.
|
|
83
|
+
*/
|
|
84
|
+
readonly work_item_outcomes: ReadonlyMap<string, WorkItemOutcome>;
|
|
85
|
+
readonly state_changed: boolean;
|
|
86
|
+
readonly state: CurrentRemediationHostState;
|
|
87
|
+
}
|
|
88
|
+
export interface RemediationHostResult {
|
|
89
|
+
readonly contract_version: typeof RESULT_CONTRACT_VERSION;
|
|
90
|
+
readonly result_id: string;
|
|
91
|
+
readonly run_id: string;
|
|
92
|
+
readonly work_item_id: string;
|
|
93
|
+
readonly prompt_sha256: string;
|
|
94
|
+
/**
|
|
95
|
+
* The full id of the one commit that carries this item's edits, on HEAD.
|
|
96
|
+
* The ONLY fact about the work the host states (v1alpha3, owner review of
|
|
97
|
+
* prompt 20, 2026-09-18): the changed files come from git, the tests from the
|
|
98
|
+
* tool's own rerun of `required_tests`, and the landing from ancestry — so a
|
|
99
|
+
* host is never asked to restate what the tool derives and then checks.
|
|
100
|
+
*/
|
|
101
|
+
readonly landed_commit: string;
|
|
102
|
+
/**
|
|
103
|
+
* Cited evidence per satisfied contract obligation — the evidence-coverage
|
|
104
|
+
* floor between "received" and "accepted". Must cover exactly the work
|
|
105
|
+
* item's bound `obligation_ids` (empty when none are bound); each entry
|
|
106
|
+
* cites at least one non-empty string. Coverage is validated mechanically at
|
|
107
|
+
* ingestion; judging the citations' semantic sufficiency is the per-run
|
|
108
|
+
* conformance review's job, never this parser's.
|
|
109
|
+
*/
|
|
110
|
+
readonly obligation_evidence: readonly {
|
|
111
|
+
readonly obligation_id: string;
|
|
112
|
+
readonly evidence: readonly string[];
|
|
113
|
+
}[];
|
|
114
|
+
}
|
|
115
|
+
export interface RemediationHostDecision {
|
|
116
|
+
readonly contract_version: typeof DECISION_CONTRACT_VERSION;
|
|
117
|
+
readonly result_id: string;
|
|
118
|
+
readonly run_id: string;
|
|
119
|
+
readonly work_item_id: string;
|
|
120
|
+
readonly prompt_sha256: string;
|
|
121
|
+
readonly outcome: {
|
|
122
|
+
readonly status: "resolved_no_change";
|
|
123
|
+
readonly evidence: readonly string[];
|
|
124
|
+
} | {
|
|
125
|
+
readonly status: "blocked";
|
|
126
|
+
readonly failure_reason: string;
|
|
127
|
+
} | {
|
|
128
|
+
readonly status: "needs_clarification";
|
|
129
|
+
readonly question: string;
|
|
130
|
+
readonly category?: string;
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=hostContracts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hostContracts.d.ts","sourceRoot":"","sources":["../../../../src/remediate/steps/dispatch/hostContracts.ts"],"names":[],"mappings":"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"}
|