audit-tools 0.52.5 → 0.53.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/audit/cli/auditStep.d.ts +1 -1
- package/dist/audit/cli/dispatch/hostHandoff.d.ts +2 -0
- package/dist/audit/cli/dispatch/hostHandoff.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/hostHandoff.js +1 -1
- package/dist/audit/cli/dispatch/hostHandoff.js.map +1 -1
- package/dist/audit/cli/dispatch/packetFilter.d.ts +1 -1
- package/dist/audit/cli/dispatch/packetFilter.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/packetFilter.js +1 -1
- package/dist/audit/cli/dispatch/packetFilter.js.map +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +42 -20
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.d.ts +3 -3
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +50 -75
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/cli/prompts.d.ts +1 -2
- package/dist/audit/cli/prompts.d.ts.map +1 -1
- package/dist/audit/cli/prompts.js +2 -12
- package/dist/audit/cli/prompts.js.map +1 -1
- package/dist/audit/cli/sampleRunCommand.d.ts +2 -2
- package/dist/audit/cli/semanticReviewStep.d.ts +11 -2
- package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
- package/dist/audit/cli/semanticReviewStep.js +14 -10
- package/dist/audit/cli/semanticReviewStep.js.map +1 -1
- package/dist/audit/contracts/workerSchemas.d.ts +14 -14
- package/dist/audit/contracts/wrapperResponse.d.ts +6 -6
- package/dist/audit/extractors/graphRoutes.d.ts.map +1 -1
- package/dist/audit/extractors/graphRoutes.js +1 -3
- package/dist/audit/extractors/graphRoutes.js.map +1 -1
- package/dist/audit/io/artifacts.d.ts.map +1 -1
- package/dist/audit/io/artifacts.js +2 -3
- package/dist/audit/io/artifacts.js.map +1 -1
- package/dist/audit/orchestrator/architectureDiscovery.d.ts +11 -0
- package/dist/audit/orchestrator/architectureDiscovery.d.ts.map +1 -0
- package/dist/audit/orchestrator/architectureDiscovery.js +174 -0
- package/dist/audit/orchestrator/architectureDiscovery.js.map +1 -0
- package/dist/audit/orchestrator/designReviewProjection.d.ts +2 -6
- package/dist/audit/orchestrator/designReviewProjection.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewProjection.js +2 -6
- package/dist/audit/orchestrator/designReviewProjection.js.map +1 -1
- package/dist/audit/orchestrator/designReviewSnapshot.d.ts +2 -3
- package/dist/audit/orchestrator/designReviewSnapshot.d.ts.map +1 -1
- package/dist/audit/orchestrator/designReviewSnapshot.js +2 -3
- package/dist/audit/orchestrator/designReviewSnapshot.js.map +1 -1
- package/dist/audit/orchestrator/executorRunners.d.ts.map +1 -1
- package/dist/audit/orchestrator/executorRunners.js +1 -22
- 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 +1 -13
- package/dist/audit/orchestrator/executors.js.map +1 -1
- package/dist/audit/orchestrator/nextStep.d.ts +2 -28
- package/dist/audit/orchestrator/nextStep.d.ts.map +1 -1
- package/dist/audit/orchestrator/nextStep.js +5 -37
- package/dist/audit/orchestrator/nextStep.js.map +1 -1
- package/dist/audit/orchestrator/obligationDerive.d.ts +2 -3
- package/dist/audit/orchestrator/obligationDerive.d.ts.map +1 -1
- package/dist/audit/orchestrator/obligationDerive.js +2 -3
- package/dist/audit/orchestrator/obligationDerive.js.map +1 -1
- package/dist/audit/orchestrator/pendingTasks.d.ts +2 -0
- package/dist/audit/orchestrator/pendingTasks.d.ts.map +1 -1
- package/dist/audit/orchestrator/pendingTasks.js +5 -1
- package/dist/audit/orchestrator/pendingTasks.js.map +1 -1
- package/dist/audit/orchestrator/planningExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/planningExecutors.js +9 -0
- package/dist/audit/orchestrator/planningExecutors.js.map +1 -1
- package/dist/audit/orchestrator/requeueCommand.d.ts +1 -1
- package/dist/audit/orchestrator/resultBaseline.d.ts +5 -5
- package/dist/audit/orchestrator/resultBaseline.d.ts.map +1 -1
- package/dist/audit/orchestrator/resultBaseline.js +24 -47
- package/dist/audit/orchestrator/resultBaseline.js.map +1 -1
- package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.d.ts.map +1 -1
- package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js +2 -0
- package/dist/audit/orchestrator/selectiveDeepening/findingFollowup.js.map +1 -1
- package/dist/audit/orchestrator/state.d.ts.map +1 -1
- package/dist/audit/orchestrator/state.js +2 -0
- package/dist/audit/orchestrator/state.js.map +1 -1
- package/dist/audit/orchestrator/synthesisExecutors.d.ts.map +1 -1
- package/dist/audit/orchestrator/synthesisExecutors.js +3 -0
- package/dist/audit/orchestrator/synthesisExecutors.js.map +1 -1
- package/dist/audit/types/auditState.d.ts +6 -6
- package/dist/audit/types/flowCoverage.d.ts +6 -6
- package/dist/audit/types.d.ts +12 -12
- package/dist/remediate/contractPipeline/executionPlan.d.ts +1908 -0
- package/dist/remediate/contractPipeline/executionPlan.d.ts.map +1 -0
- package/dist/remediate/contractPipeline/executionPlan.js +467 -0
- package/dist/remediate/contractPipeline/executionPlan.js.map +1 -0
- package/dist/remediate/contractPipeline/runtimePlanAuthority.d.ts +12 -0
- package/dist/remediate/contractPipeline/runtimePlanAuthority.d.ts.map +1 -0
- package/dist/remediate/contractPipeline/runtimePlanAuthority.js +41 -0
- package/dist/remediate/contractPipeline/runtimePlanAuthority.js.map +1 -0
- package/dist/remediate/dedup/crossLensDedup.d.ts +3 -16
- package/dist/remediate/dedup/crossLensDedup.d.ts.map +1 -1
- package/dist/remediate/dedup/crossLensDedup.js +2 -32
- package/dist/remediate/dedup/crossLensDedup.js.map +1 -1
- package/dist/remediate/index.d.ts +2 -19
- package/dist/remediate/index.d.ts.map +1 -1
- package/dist/remediate/index.js +22 -138
- package/dist/remediate/index.js.map +1 -1
- package/dist/remediate/intake.d.ts +10 -10
- package/dist/remediate/intent/intentOrdering.d.ts +6 -8
- package/dist/remediate/intent/intentOrdering.d.ts.map +1 -1
- package/dist/remediate/intent/intentOrdering.js +24 -47
- package/dist/remediate/intent/intentOrdering.js.map +1 -1
- package/dist/remediate/phases/close.d.ts +25 -17
- package/dist/remediate/phases/close.d.ts.map +1 -1
- package/dist/remediate/phases/close.js +278 -218
- package/dist/remediate/phases/close.js.map +1 -1
- package/dist/remediate/phases/closeAcceptance.d.ts +42 -0
- package/dist/remediate/phases/closeAcceptance.d.ts.map +1 -0
- package/dist/remediate/phases/closeAcceptance.js +66 -0
- package/dist/remediate/phases/closeAcceptance.js.map +1 -0
- package/dist/remediate/phases/closeReviewProvenance.d.ts +1 -1
- package/dist/remediate/phases/closeReviewProvenance.d.ts.map +1 -1
- package/dist/remediate/phases/closeReviewProvenance.js +9 -8
- package/dist/remediate/phases/closeReviewProvenance.js.map +1 -1
- package/dist/remediate/phases/closeVerifyAnalyzerLeads.d.ts.map +1 -1
- package/dist/remediate/phases/closeVerifyAnalyzerLeads.js +11 -9
- package/dist/remediate/phases/closeVerifyAnalyzerLeads.js.map +1 -1
- package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts +21 -86
- package/dist/remediate/phases/closeVerifyHeadEvidence.d.ts.map +1 -1
- package/dist/remediate/phases/closeVerifyHeadEvidence.js +30 -19
- package/dist/remediate/phases/closeVerifyHeadEvidence.js.map +1 -1
- package/dist/remediate/phases/plan.d.ts +3 -60
- package/dist/remediate/phases/plan.d.ts.map +1 -1
- package/dist/remediate/phases/plan.js +3 -227
- package/dist/remediate/phases/plan.js.map +1 -1
- package/dist/remediate/phases/triage.d.ts.map +1 -1
- package/dist/remediate/phases/triage.js +19 -30
- package/dist/remediate/phases/triage.js.map +1 -1
- package/dist/remediate/riskSignal.d.ts +9 -43
- package/dist/remediate/riskSignal.d.ts.map +1 -1
- package/dist/remediate/riskSignal.js +7 -28
- package/dist/remediate/riskSignal.js.map +1 -1
- package/dist/remediate/state/disposition.d.ts +2 -1
- package/dist/remediate/state/disposition.d.ts.map +1 -1
- package/dist/remediate/state/disposition.js +37 -1
- package/dist/remediate/state/disposition.js.map +1 -1
- package/dist/remediate/state/runIdentity.d.ts +2 -13
- package/dist/remediate/state/runIdentity.d.ts.map +1 -1
- package/dist/remediate/state/runIdentity.js +3 -13
- package/dist/remediate/state/runIdentity.js.map +1 -1
- package/dist/remediate/state/store.d.ts +12 -36
- package/dist/remediate/state/store.d.ts.map +1 -1
- package/dist/remediate/state/store.js +58 -150
- package/dist/remediate/state/store.js.map +1 -1
- package/dist/remediate/state/types.d.ts +406 -504
- package/dist/remediate/state/types.d.ts.map +1 -1
- package/dist/remediate/state/types.js +24 -104
- package/dist/remediate/state/types.js.map +1 -1
- package/dist/remediate/steps/contractPipeline.d.ts +7 -661
- package/dist/remediate/steps/contractPipeline.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipeline.js +259 -3854
- package/dist/remediate/steps/contractPipeline.js.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.d.ts +20 -142
- package/dist/remediate/steps/contractPipelinePrompts.d.ts.map +1 -1
- package/dist/remediate/steps/contractPipelinePrompts.js +48 -581
- package/dist/remediate/steps/contractPipelinePrompts.js.map +1 -1
- package/dist/remediate/steps/dispatch/contractConformanceReview.d.ts +4 -1
- package/dist/remediate/steps/dispatch/contractConformanceReview.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/contractConformanceReview.js +6 -3
- package/dist/remediate/steps/dispatch/contractConformanceReview.js.map +1 -1
- package/dist/remediate/steps/dispatch/hostContracts.d.ts +1 -1
- package/dist/remediate/steps/dispatch/hostContracts.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/hostHandoff.d.ts +4 -21
- package/dist/remediate/steps/dispatch/hostHandoff.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/hostHandoff.js +161 -383
- package/dist/remediate/steps/dispatch/hostHandoff.js.map +1 -1
- package/dist/remediate/steps/finalGate.d.ts +34 -0
- package/dist/remediate/steps/finalGate.d.ts.map +1 -1
- package/dist/remediate/steps/finalGate.js +44 -4
- package/dist/remediate/steps/finalGate.js.map +1 -1
- package/dist/remediate/steps/frictionCloseout.d.ts +1 -30
- package/dist/remediate/steps/frictionCloseout.d.ts.map +1 -1
- package/dist/remediate/steps/frictionCloseout.js +6 -99
- package/dist/remediate/steps/frictionCloseout.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts +2 -15
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +255 -1028
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/remediate/steps/prompts.js +12 -12
- package/dist/remediate/steps/prompts.js.map +1 -1
- package/dist/remediate/steps/stepUtils.d.ts +1 -1
- package/dist/remediate/steps/stepUtils.d.ts.map +1 -1
- package/dist/remediate/steps/types.d.ts +1 -1
- package/dist/remediate/steps/types.d.ts.map +1 -1
- package/dist/remediate/steps/types.js +1 -1
- package/dist/remediate/steps/types.js.map +1 -1
- package/dist/remediate/types/options.d.ts +9 -0
- package/dist/remediate/types/options.d.ts.map +1 -1
- package/dist/remediate/validation/artifacts.d.ts.map +1 -1
- package/dist/remediate/validation/artifacts.js +10 -56
- package/dist/remediate/validation/artifacts.js.map +1 -1
- package/dist/remediate/validation/remediationState.d.ts +2 -2
- package/dist/remediate/validation/remediationState.d.ts.map +1 -1
- package/dist/remediate/validation/remediationState.js +17 -77
- package/dist/remediate/validation/remediationState.js.map +1 -1
- package/dist/remediate/validation/verificationReport.d.ts +3 -0
- package/dist/remediate/validation/verificationReport.d.ts.map +1 -0
- package/dist/remediate/validation/verificationReport.js +28 -0
- package/dist/remediate/validation/verificationReport.js.map +1 -0
- package/dist/shared/analyzers/types.d.ts +10 -10
- package/dist/shared/engine/obligationEngine.d.ts +2 -2
- package/dist/shared/friction/triage.d.ts +7 -28
- package/dist/shared/friction/triage.d.ts.map +1 -1
- package/dist/shared/friction/triage.js +7 -28
- package/dist/shared/friction/triage.js.map +1 -1
- package/dist/shared/graph/orderedReachability.js +1 -1
- package/dist/shared/graph/orderedReachability.js.map +1 -1
- package/dist/shared/index.d.ts +5 -6
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +3 -4
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/loopCorePaths.d.ts.map +1 -1
- package/dist/shared/loopCorePaths.js +6 -0
- package/dist/shared/loopCorePaths.js.map +1 -1
- package/dist/shared/prompts.d.ts +1 -2
- package/dist/shared/prompts.d.ts.map +1 -1
- package/dist/shared/prompts.js +1 -2
- package/dist/shared/prompts.js.map +1 -1
- package/dist/shared/reReview/projectionDiff.d.ts.map +1 -1
- package/dist/shared/reReview/projectionDiff.js +6 -14
- package/dist/shared/reReview/projectionDiff.js.map +1 -1
- package/dist/shared/types/executionPlan.d.ts +416 -0
- package/dist/shared/types/executionPlan.d.ts.map +1 -0
- package/dist/shared/types/executionPlan.js +132 -0
- package/dist/shared/types/executionPlan.js.map +1 -0
- package/dist/shared/types/remediationOutcome.d.ts +1378 -12
- package/dist/shared/types/remediationOutcome.d.ts.map +1 -1
- package/dist/shared/types/remediationOutcome.js +29 -1
- package/dist/shared/types/remediationOutcome.js.map +1 -1
- package/dist/shared/types/{contractPipeline/verification.d.ts → verificationReport.d.ts} +9 -37
- package/dist/shared/types/verificationReport.d.ts.map +1 -0
- package/dist/shared/types/verificationReport.js +4 -0
- package/dist/shared/types/verificationReport.js.map +1 -0
- package/dist/shared/validation/findingGrounding.d.ts +3 -5
- package/dist/shared/validation/findingGrounding.d.ts.map +1 -1
- package/dist/shared/validation/findingGrounding.js +4 -7
- package/dist/shared/validation/findingGrounding.js.map +1 -1
- package/package.json +1 -1
- package/dist/remediate/contractPipeline/artifactNames.d.ts +0 -8
- package/dist/remediate/contractPipeline/artifactNames.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/artifactNames.js +0 -28
- package/dist/remediate/contractPipeline/artifactNames.js.map +0 -1
- package/dist/remediate/contractPipeline/artifactStore.d.ts +0 -219
- package/dist/remediate/contractPipeline/artifactStore.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/artifactStore.js +0 -436
- package/dist/remediate/contractPipeline/artifactStore.js.map +0 -1
- package/dist/remediate/contractPipeline/changeClassification.d.ts +0 -130
- package/dist/remediate/contractPipeline/changeClassification.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/changeClassification.js +0 -446
- package/dist/remediate/contractPipeline/changeClassification.js.map +0 -1
- package/dist/remediate/contractPipeline/contractReviewBinding.d.ts +0 -28
- package/dist/remediate/contractPipeline/contractReviewBinding.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/contractReviewBinding.js +0 -75
- package/dist/remediate/contractPipeline/contractReviewBinding.js.map +0 -1
- package/dist/remediate/contractPipeline/counterexampleFingerprint.d.ts +0 -27
- package/dist/remediate/contractPipeline/counterexampleFingerprint.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/counterexampleFingerprint.js +0 -37
- package/dist/remediate/contractPipeline/counterexampleFingerprint.js.map +0 -1
- package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts +0 -131
- package/dist/remediate/contractPipeline/cyclicSeamResolution.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/cyclicSeamResolution.js +0 -257
- package/dist/remediate/contractPipeline/cyclicSeamResolution.js.map +0 -1
- package/dist/remediate/contractPipeline/derive.d.ts +0 -173
- package/dist/remediate/contractPipeline/derive.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/derive.js +0 -477
- package/dist/remediate/contractPipeline/derive.js.map +0 -1
- package/dist/remediate/contractPipeline/finalizedContractFields.d.ts +0 -50
- package/dist/remediate/contractPipeline/finalizedContractFields.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/finalizedContractFields.js +0 -77
- package/dist/remediate/contractPipeline/finalizedContractFields.js.map +0 -1
- package/dist/remediate/contractPipeline/idRegistry.d.ts +0 -144
- package/dist/remediate/contractPipeline/idRegistry.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/idRegistry.js +0 -214
- package/dist/remediate/contractPipeline/idRegistry.js.map +0 -1
- package/dist/remediate/contractPipeline/obligationKinds.d.ts +0 -27
- package/dist/remediate/contractPipeline/obligationKinds.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/obligationKinds.js +0 -18
- package/dist/remediate/contractPipeline/obligationKinds.js.map +0 -1
- package/dist/remediate/contractPipeline/phaseCut.d.ts +0 -125
- package/dist/remediate/contractPipeline/phaseCut.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/phaseCut.js +0 -339
- package/dist/remediate/contractPipeline/phaseCut.js.map +0 -1
- package/dist/remediate/contractPipeline/phaseCutArtifact.d.ts +0 -31
- package/dist/remediate/contractPipeline/phaseCutArtifact.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/phaseCutArtifact.js +0 -48
- package/dist/remediate/contractPipeline/phaseCutArtifact.js.map +0 -1
- package/dist/remediate/contractPipeline/repairState.d.ts +0 -110
- package/dist/remediate/contractPipeline/repairState.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/repairState.js +0 -185
- package/dist/remediate/contractPipeline/repairState.js.map +0 -1
- package/dist/remediate/contractPipeline/reviewSnapshot.d.ts +0 -79
- package/dist/remediate/contractPipeline/reviewSnapshot.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/reviewSnapshot.js +0 -140
- package/dist/remediate/contractPipeline/reviewSnapshot.js.map +0 -1
- package/dist/remediate/contractPipeline/semanticProjection.d.ts +0 -64
- package/dist/remediate/contractPipeline/semanticProjection.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/semanticProjection.js +0 -136
- package/dist/remediate/contractPipeline/semanticProjection.js.map +0 -1
- package/dist/remediate/contractPipeline/sketchSource.d.ts +0 -194
- package/dist/remediate/contractPipeline/sketchSource.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/sketchSource.js +0 -262
- package/dist/remediate/contractPipeline/sketchSource.js.map +0 -1
- package/dist/remediate/contractPipeline/testPlanCarry.d.ts +0 -17
- package/dist/remediate/contractPipeline/testPlanCarry.d.ts.map +0 -1
- package/dist/remediate/contractPipeline/testPlanCarry.js +0 -72
- package/dist/remediate/contractPipeline/testPlanCarry.js.map +0 -1
- package/dist/remediate/steps/dispatch/marshal.d.ts +0 -7
- package/dist/remediate/steps/dispatch/marshal.d.ts.map +0 -1
- package/dist/remediate/steps/dispatch/marshal.js +0 -11
- package/dist/remediate/steps/dispatch/marshal.js.map +0 -1
- package/dist/remediate/validation/contractPipeline.d.ts +0 -35
- package/dist/remediate/validation/contractPipeline.d.ts.map +0 -1
- package/dist/remediate/validation/contractPipeline.js +0 -613
- package/dist/remediate/validation/contractPipeline.js.map +0 -1
- package/dist/remediate/validation/contractPipelineGates.d.ts +0 -272
- package/dist/remediate/validation/contractPipelineGates.d.ts.map +0 -1
- package/dist/remediate/validation/contractPipelineGates.js +0 -1397
- package/dist/remediate/validation/contractPipelineGates.js.map +0 -1
- package/dist/shared/types/contractPipeline/design.d.ts +0 -79
- package/dist/shared/types/contractPipeline/design.d.ts.map +0 -1
- package/dist/shared/types/contractPipeline/design.js +0 -16
- package/dist/shared/types/contractPipeline/design.js.map +0 -1
- package/dist/shared/types/contractPipeline/goal.d.ts +0 -41
- package/dist/shared/types/contractPipeline/goal.d.ts.map +0 -1
- package/dist/shared/types/contractPipeline/goal.js +0 -10
- package/dist/shared/types/contractPipeline/goal.js.map +0 -1
- package/dist/shared/types/contractPipeline/implementation.d.ts +0 -118
- package/dist/shared/types/contractPipeline/implementation.d.ts.map +0 -1
- package/dist/shared/types/contractPipeline/implementation.js +0 -13
- package/dist/shared/types/contractPipeline/implementation.js.map +0 -1
- package/dist/shared/types/contractPipeline/obligations.d.ts +0 -283
- package/dist/shared/types/contractPipeline/obligations.d.ts.map +0 -1
- package/dist/shared/types/contractPipeline/obligations.js +0 -84
- package/dist/shared/types/contractPipeline/obligations.js.map +0 -1
- package/dist/shared/types/contractPipeline/verification.d.ts.map +0 -1
- package/dist/shared/types/contractPipeline/verification.js +0 -10
- package/dist/shared/types/contractPipeline/verification.js.map +0 -1
- package/dist/shared/types/contractPipeline.d.ts +0 -48
- package/dist/shared/types/contractPipeline.d.ts.map +0 -1
- package/dist/shared/types/contractPipeline.js +0 -32
- package/dist/shared/types/contractPipeline.js.map +0 -1
- package/dist/shared/types/obligationLedger.d.ts +0 -39
- package/dist/shared/types/obligationLedger.d.ts.map +0 -1
- package/dist/shared/types/obligationLedger.js +0 -49
- package/dist/shared/types/obligationLedger.js.map +0 -1
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
export { CONCEPTUAL_CRITIQUE_REPAIR_TARGETS } from "../../shared/types/contractPipeline/design.js";
|
|
2
|
-
/**
|
|
3
|
-
* The value vocabularies a step prompt's schema sketch and its VALIDATOR both
|
|
4
|
-
* read — declared once, here, so they cannot disagree.
|
|
5
|
-
*
|
|
6
|
-
* Why this module exists. A step prompt hands the worker a JSON shape to write,
|
|
7
|
-
* and a validator in `src/remediate/validation/` decides whether what came back
|
|
8
|
-
* is admissible. Those were two independent statements of the same fact: the
|
|
9
|
-
* prompt carried a hand-written sketch (`contractPipelinePrompts.ts`, plus two
|
|
10
|
-
* extra sketches in `contractPipeline.ts`) and the validator carried its own
|
|
11
|
-
* literal list. Measured drifts at HEAD before this module existed:
|
|
12
|
-
*
|
|
13
|
-
* - `cyclic_seam_resolution.status` — sketch offered 2 values, the validator
|
|
14
|
-
* admits 4 (`user_decision_required` and `blocked` were unrenderable but
|
|
15
|
-
* required by the refusal path);
|
|
16
|
-
* - `judge_report.repair_directive.target` — sketch offered 3, the validator 4
|
|
17
|
-
* (the fourth, `counterexample`, could never be asked for);
|
|
18
|
-
* - `verification_report.finding.traces[].kind` — sketch offered 5, the
|
|
19
|
-
* validator 6;
|
|
20
|
-
* - `implementation_dag.node.status` — sketch showed exactly 1 of the 4 the
|
|
21
|
-
* validator admits.
|
|
22
|
-
*
|
|
23
|
-
* Every one is the same failure: a worker reads the sketch, emits a value the
|
|
24
|
-
* sketch allowed, and the tool refuses it — or, worse in the opposite
|
|
25
|
-
* direction, never learns a legal value exists. A drift test made of "remember
|
|
26
|
-
* to update the other one" is exactly the class of guarantee this repo bans
|
|
27
|
-
* (enforce in tooling, never host — or author — discretion), so the fix is not
|
|
28
|
-
* a test that watches two lists. It is ONE declaration, with the validator and
|
|
29
|
-
* the sketch both deriving from it.
|
|
30
|
-
*
|
|
31
|
-
* What is MINED vs DECLARED. The values are declared here; they are NOT read out
|
|
32
|
-
* of the validator module, because a validator states its values as inline
|
|
33
|
-
* `requireOneOf(...)` literals inside a function body — a declaration a test can
|
|
34
|
-
* only reach by parsing source text, which is the brittle thing this replaces.
|
|
35
|
-
* Instead the exported constants are the single declaration and the VALIDATOR
|
|
36
|
-
* imports them, so the drift is impossible by construction rather than detected
|
|
37
|
-
* after the fact. The test in
|
|
38
|
-
* `tests/remediate/step-prompt-sketch-drift.test.ts` then re-derives each
|
|
39
|
-
* vocabulary from what each validator actually REFUSES (by feeding it values),
|
|
40
|
-
* and compares that to the sketch the prompt renders — so a value added to a
|
|
41
|
-
* validator without the sketch still reds, without depending on how the
|
|
42
|
-
* validator happens to spell its list.
|
|
43
|
-
*
|
|
44
|
-
* NOT A LIST. Every value vocabulary that the CONTRACT-PIPELINE role sketches
|
|
45
|
-
* render as an alternation is declared here — the four drifted ones above, the
|
|
46
|
-
* obligation/test-plan pairs, and the nine that were still hand-written literals
|
|
47
|
-
* in `contractPipelinePrompts.ts` (goal `source_type`; context-entry `kind`; the
|
|
48
|
-
* critique item `kind` and `severity`; the critique `verdict`; the assessment
|
|
49
|
-
* finding `status` and report `verdict`; the judge `verdict`; and the judge's
|
|
50
|
-
* counterexample `classification`). That is the whole point: a vocabulary kept
|
|
51
|
-
* as a literal is only safe while someone remembers, and the drift test below
|
|
52
|
-
* sweeps every rendered alternation of those sketches rather than a hand-kept
|
|
53
|
-
* field list, so the next literal to appear reds immediately instead of waiting
|
|
54
|
-
* to be noticed.
|
|
55
|
-
*
|
|
56
|
-
* The scope is those sketches, NOT every sketch in the repository, and the
|
|
57
|
-
* difference is recorded rather than implied: the sweep reaches the modules in
|
|
58
|
-
* `SKETCH_SOURCE_MODULES`, and the clarification-resolution sketch in
|
|
59
|
-
* `steps/prompts.ts` is outside them — a declared-gap row in
|
|
60
|
-
* `tests/shared/promptContractRegistry.ts`. So this module claims nothing about
|
|
61
|
-
* that one, and widening the sweep is its own change.
|
|
62
|
-
*/
|
|
63
|
-
/**
|
|
64
|
-
* `cyclic_seam_resolution.status` — what the validator admits. `no_cycles` is
|
|
65
|
-
* the tool's own record, written when the ledger has no cycle; `resolved` is the
|
|
66
|
-
* worker's record of the breaks it made. The escalation states
|
|
67
|
-
* (`user_decision_required`, `blocked`) are routes the gate takes, never a
|
|
68
|
-
* record: nothing wrote them, and a worker that wrote one moved the pipeline
|
|
69
|
-
* forward with the cycles still in the ledger.
|
|
70
|
-
*/
|
|
71
|
-
export declare const CYCLIC_SEAM_RESOLUTION_STATUSES: readonly ["no_cycles", "resolved"];
|
|
72
|
-
/**
|
|
73
|
-
* The subset of {@link CYCLIC_SEAM_RESOLUTION_STATUSES} the worker's sketch
|
|
74
|
-
* offers. The worker is emitted only when the ledger has a cycle, so its one
|
|
75
|
-
* answer is `resolved`; the re-check refuses any record while a cycle remains.
|
|
76
|
-
*/
|
|
77
|
-
export declare const CYCLIC_SEAM_RESOLUTION_STATUSES_OFFERED: readonly ["resolved"];
|
|
78
|
-
/** `cyclic_seam_resolution.cycles[].break_strategy`. */
|
|
79
|
-
export declare const CYCLIC_SEAM_BREAK_STRATEGIES: readonly ["mediator", "single_authority"];
|
|
80
|
-
/**
|
|
81
|
-
* `judge_report.repair_directive.target`, its legacy aliases, and the offered
|
|
82
|
-
* subset — DECLARED in `src/shared/types/contractPipeline/obligations.ts`,
|
|
83
|
-
* beside the `JudgeRepairTarget` type that derives from them, and re-exported
|
|
84
|
-
* here so the validator and the prompt sketches keep reading them from this
|
|
85
|
-
* module.
|
|
86
|
-
*
|
|
87
|
-
* Why they moved. `src/shared` is the base layer; this module lives in
|
|
88
|
-
* `src/remediate`. A value import from the base layer into an orchestrator is
|
|
89
|
-
* the dependency direction inverted, and the declaration had to live on the
|
|
90
|
-
* side the TYPE could reach.
|
|
91
|
-
*/
|
|
92
|
-
export { CONTRACT_REPAIR_TARGETS, CONTRACT_REPAIR_TARGETS_LEGACY, CONTRACT_REPAIR_TARGETS_OFFERED, } from "audit-tools/shared";
|
|
93
|
-
/** `verification_report` trace `kind`. */
|
|
94
|
-
export declare const VERIFICATION_TRACE_KINDS: readonly ["requirement", "invariant", "counterexample", "task", "file", "command"];
|
|
95
|
-
/** `verification_report` finding-level `overall_status` (report level excludes `skipped`). */
|
|
96
|
-
export declare const VERIFICATION_FINDING_STATUSES: readonly ["passed", "failed", "skipped"];
|
|
97
|
-
/** `verification_report` report-level `overall_status`. */
|
|
98
|
-
export declare const VERIFICATION_REPORT_STATUSES: readonly ["passed", "failed"];
|
|
99
|
-
/** `verification_report` trace `status`. */
|
|
100
|
-
export declare const VERIFICATION_TRACE_STATUSES: readonly ["passed", "failed"];
|
|
101
|
-
/** `implementation_dag.nodes[].status`. */
|
|
102
|
-
export declare const IMPLEMENTATION_NODE_STATUSES: readonly ["pending", "in_progress", "resolved", "blocked"];
|
|
103
|
-
/** `implementation_dag.edges[].kind`. */
|
|
104
|
-
export declare const IMPLEMENTATION_EDGE_KINDS: readonly ["dependency", "verification"];
|
|
105
|
-
/**
|
|
106
|
-
* `obligation_ledger.obligations[].status`. `satisfied` is reachable only
|
|
107
|
-
* through the tool's own derivation (`contractPipeline/derive.ts`) — a worker
|
|
108
|
-
* emits `pending` and the tool advances it — but the value is part of the
|
|
109
|
-
* contract the prompt describes, so it is declared here rather than implied.
|
|
110
|
-
*/
|
|
111
|
-
export declare const OBLIGATION_STATUSES: readonly ["pending", "satisfied", "failed"];
|
|
112
|
-
/** `obligation_ledger.obligations[].kind`. */
|
|
113
|
-
export declare const OBLIGATION_KINDS: readonly ["invariant", "behavioral", "structural", "test"];
|
|
114
|
-
/** `test_validator_plan.test_specs[].kind`. */
|
|
115
|
-
export declare const TEST_SPEC_KINDS: readonly ["unit", "integration", "schema", "invariant", "e2e"];
|
|
116
|
-
/** `goal_spec.source_type`. */
|
|
117
|
-
export declare const GOAL_SOURCE_TYPES: readonly ["conversation", "document", "structured_audit", "mixed"];
|
|
118
|
-
/** `context_bundle.entries[].kind`. */
|
|
119
|
-
export declare const CONTEXT_ENTRY_KINDS: readonly ["source", "test", "config", "doc"];
|
|
120
|
-
/** `conceptual_design_critique.items[].kind`. */
|
|
121
|
-
export declare const CRITIQUE_ITEM_KINDS: readonly ["concern", "alternative", "suggestion"];
|
|
122
|
-
/** `conceptual_design_critique.items[].severity`. */
|
|
123
|
-
export declare const CRITIQUE_ITEM_SEVERITIES: readonly ["blocking", "advisory"];
|
|
124
|
-
/** `conceptual_design_critique.verdict`. */
|
|
125
|
-
export declare const CRITIQUE_VERDICTS: readonly ["approved", "approved_with_concerns", "rejected"];
|
|
126
|
-
/** `contract_assessment_report.findings[].status`. */
|
|
127
|
-
export declare const ASSESSMENT_FINDING_STATUSES: readonly ["satisfied", "violated", "uncertain"];
|
|
128
|
-
/** `contract_assessment_report.verdict`. */
|
|
129
|
-
export declare const ASSESSMENT_VERDICTS: readonly ["passed", "failed", "partial"];
|
|
130
|
-
/** `judge_report.verdict`. */
|
|
131
|
-
export declare const JUDGE_VERDICTS: readonly ["approved", "needs_repair"];
|
|
132
|
-
/**
|
|
133
|
-
* `judge_report.classifications[].classification` — what the judge may decide
|
|
134
|
-
* about one counterexample.
|
|
135
|
-
*
|
|
136
|
-
* Declared here rather than in the validator that reads it, because the judge
|
|
137
|
-
* role's prompt sketch states the same five values and a sketch that renders a
|
|
138
|
-
* hand-written copy of a validator's list is the drift this module bans. The
|
|
139
|
-
* validator imports THIS declaration (it was a local `as const` beside
|
|
140
|
-
* `validateJudgeReport`), so the two are one fact.
|
|
141
|
-
*/
|
|
142
|
-
export declare const COUNTEREXAMPLE_CLASSIFICATIONS: readonly ["accepted", "out_of_scope", "duplicate", "invalid", "residual_risk"];
|
|
143
|
-
/**
|
|
144
|
-
* `seam_reconciliation_report.mismatches[].resolution.decision` — which side of
|
|
145
|
-
* a seam adjusts. Declared here beside the rest for ONE reason: the alternative
|
|
146
|
-
* would be to exclude it from the drift test by hand, and an exclusion list is
|
|
147
|
-
* the drift this module exists to make impossible (see the test's alternation
|
|
148
|
-
* sweep, which matches EVERY rendered alternation to a validator probe).
|
|
149
|
-
*/
|
|
150
|
-
export declare const SEAM_RESOLUTION_DECISIONS: readonly ["A", "B", "both"];
|
|
151
|
-
/**
|
|
152
|
-
* The vocabularies that carry a `created_at`, and the ones that do not.
|
|
153
|
-
*
|
|
154
|
-
* `created_at` asymmetry, resolved in one place. Every contract-pipeline
|
|
155
|
-
* validator ends with `requireString(v.created_at, ...)`, and NO sketch
|
|
156
|
-
* declares the field — the reconciliation is `stampToolCreatedAt`
|
|
157
|
-
* (`contractPipeline/artifactStore.ts`), which the tool calls on the payload at
|
|
158
|
-
* ingest and at the `validate-artifact` self-check. The host has no clock, so
|
|
159
|
-
* asking it for a timestamp is asking it to invent one; the tool owns the field
|
|
160
|
-
* and stamps it.
|
|
161
|
-
*
|
|
162
|
-
* The decision, stated once rather than left implicit: THE VALIDATORS KEEP
|
|
163
|
-
* REQUIRING IT AND THE SKETCHES KEEP OMITTING IT — because the requirement is
|
|
164
|
-
* enforced on the POST-STAMP payload, not on what the worker wrote. The
|
|
165
|
-
* asymmetry is not a drift to be closed in either direction: declaring
|
|
166
|
-
* `created_at` in the sketches would tell the worker to supply a value the tool
|
|
167
|
-
* then overrides (the stamp is `created_at`-wins-if-present, but a host-invented
|
|
168
|
-
* clock reading is still worse than the tool's), and dropping the requirement
|
|
169
|
-
* from the validators would let an artifact that never passed the stamp path —
|
|
170
|
-
* a hand-written file validated directly — carry no timestamp at all.
|
|
171
|
-
*
|
|
172
|
-
* This is a DECISION, not a drift (see the drift test's `created_at` block):
|
|
173
|
-
* the validators keep requiring it and the sketches keep omitting it, because
|
|
174
|
-
* the requirement is enforced on the POST-STAMP payload rather than on what the
|
|
175
|
-
* worker wrote. Closing the asymmetry in either direction is worse — declaring
|
|
176
|
-
* it in the sketches asks the host for a clock reading the tool then overrides,
|
|
177
|
-
* and dropping it from the validators lets a directly-validated hand-written
|
|
178
|
-
* file carry no timestamp at all.
|
|
179
|
-
*/
|
|
180
|
-
export declare const CREATED_AT_OWNER: "stampToolCreatedAt";
|
|
181
|
-
/**
|
|
182
|
-
* Whether `value` is one of {@link CYCLIC_SEAM_BREAK_STRATEGIES} — the ONE
|
|
183
|
-
* membership test for the vocabulary, so the tool's post-hoc cycle-break check
|
|
184
|
-
* and the prompt's sketch read the same declaration.
|
|
185
|
-
*/
|
|
186
|
-
export declare function isCyclicSeamBreakStrategy(value: unknown): value is (typeof CYCLIC_SEAM_BREAK_STRATEGIES)[number];
|
|
187
|
-
/**
|
|
188
|
-
* Render a sketch fragment for a value vocabulary: `"a | b | c"`.
|
|
189
|
-
*
|
|
190
|
-
* The ONE renderer for every `requireOneOf`-style vocabulary in the sketches,
|
|
191
|
-
* so the separators and quoting in a prompt cannot drift from each other either.
|
|
192
|
-
*/
|
|
193
|
-
export declare function sketchValues(values: readonly string[]): string;
|
|
194
|
-
//# sourceMappingURL=sketchSource.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sketchSource.d.ts","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/sketchSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAE,MAAM,+CAA+C,CAAC;AAEnG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,+BAA+B,oCAAqC,CAAC;AAElF;;;;GAIG;AACH,eAAO,MAAM,uCAAuC,uBAAwB,CAAC;AAE7E,wDAAwD;AACxD,eAAO,MAAM,4BAA4B,2CAG/B,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,OAAO,EACL,uBAAuB,EACvB,8BAA8B,EAC9B,+BAA+B,GAChC,MAAM,oBAAoB,CAAC;AAE5B,0CAA0C;AAC1C,eAAO,MAAM,wBAAwB,oFAO3B,CAAC;AAEX,8FAA8F;AAC9F,eAAO,MAAM,6BAA6B,0CAIhC,CAAC;AAEX,2DAA2D;AAC3D,eAAO,MAAM,4BAA4B,+BAAgC,CAAC;AAE1E,4CAA4C;AAC5C,eAAO,MAAM,2BAA2B,+BAAgC,CAAC;AAEzE,2CAA2C;AAC3C,eAAO,MAAM,4BAA4B,4DAK/B,CAAC;AAEX,yCAAyC;AACzC,eAAO,MAAM,yBAAyB,yCAA0C,CAAC;AAEjF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,6CAItB,CAAC;AAEX,8CAA8C;AAC9C,eAAO,MAAM,gBAAgB,4DAKnB,CAAC;AAEX,+CAA+C;AAC/C,eAAO,MAAM,eAAe,gEAMlB,CAAC;AAEX,+BAA+B;AAC/B,eAAO,MAAM,iBAAiB,oEAKpB,CAAC;AAEX,uCAAuC;AACvC,eAAO,MAAM,mBAAmB,8CAKtB,CAAC;AAEX,iDAAiD;AACjD,eAAO,MAAM,mBAAmB,mDAItB,CAAC;AAEX,qDAAqD;AACrD,eAAO,MAAM,wBAAwB,mCAAoC,CAAC;AAE1E,4CAA4C;AAC5C,eAAO,MAAM,iBAAiB,6DAIpB,CAAC;AAEX,sDAAsD;AACtD,eAAO,MAAM,2BAA2B,iDAI9B,CAAC;AAEX,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,0CAA2C,CAAC;AAE5E,8BAA8B;AAC9B,eAAO,MAAM,cAAc,uCAAwC,CAAC;AAEpE;;;;;;;;;GASG;AACH,eAAO,MAAM,8BAA8B,gFAMjC,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,6BAA8B,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,gBAAgB,EAAG,oBAA6B,CAAC;AAE9D;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,CAAC,OAAO,4BAA4B,CAAC,CAAC,MAAM,CAAC,CAKxD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAE9D"}
|
|
@@ -1,262 +0,0 @@
|
|
|
1
|
-
export { CONCEPTUAL_CRITIQUE_REPAIR_TARGETS } from "../../shared/types/contractPipeline/design.js";
|
|
2
|
-
// sites-pinned: tests/remediate/step-prompt-sketch-drift.test.ts
|
|
3
|
-
/**
|
|
4
|
-
* The value vocabularies a step prompt's schema sketch and its VALIDATOR both
|
|
5
|
-
* read — declared once, here, so they cannot disagree.
|
|
6
|
-
*
|
|
7
|
-
* Why this module exists. A step prompt hands the worker a JSON shape to write,
|
|
8
|
-
* and a validator in `src/remediate/validation/` decides whether what came back
|
|
9
|
-
* is admissible. Those were two independent statements of the same fact: the
|
|
10
|
-
* prompt carried a hand-written sketch (`contractPipelinePrompts.ts`, plus two
|
|
11
|
-
* extra sketches in `contractPipeline.ts`) and the validator carried its own
|
|
12
|
-
* literal list. Measured drifts at HEAD before this module existed:
|
|
13
|
-
*
|
|
14
|
-
* - `cyclic_seam_resolution.status` — sketch offered 2 values, the validator
|
|
15
|
-
* admits 4 (`user_decision_required` and `blocked` were unrenderable but
|
|
16
|
-
* required by the refusal path);
|
|
17
|
-
* - `judge_report.repair_directive.target` — sketch offered 3, the validator 4
|
|
18
|
-
* (the fourth, `counterexample`, could never be asked for);
|
|
19
|
-
* - `verification_report.finding.traces[].kind` — sketch offered 5, the
|
|
20
|
-
* validator 6;
|
|
21
|
-
* - `implementation_dag.node.status` — sketch showed exactly 1 of the 4 the
|
|
22
|
-
* validator admits.
|
|
23
|
-
*
|
|
24
|
-
* Every one is the same failure: a worker reads the sketch, emits a value the
|
|
25
|
-
* sketch allowed, and the tool refuses it — or, worse in the opposite
|
|
26
|
-
* direction, never learns a legal value exists. A drift test made of "remember
|
|
27
|
-
* to update the other one" is exactly the class of guarantee this repo bans
|
|
28
|
-
* (enforce in tooling, never host — or author — discretion), so the fix is not
|
|
29
|
-
* a test that watches two lists. It is ONE declaration, with the validator and
|
|
30
|
-
* the sketch both deriving from it.
|
|
31
|
-
*
|
|
32
|
-
* What is MINED vs DECLARED. The values are declared here; they are NOT read out
|
|
33
|
-
* of the validator module, because a validator states its values as inline
|
|
34
|
-
* `requireOneOf(...)` literals inside a function body — a declaration a test can
|
|
35
|
-
* only reach by parsing source text, which is the brittle thing this replaces.
|
|
36
|
-
* Instead the exported constants are the single declaration and the VALIDATOR
|
|
37
|
-
* imports them, so the drift is impossible by construction rather than detected
|
|
38
|
-
* after the fact. The test in
|
|
39
|
-
* `tests/remediate/step-prompt-sketch-drift.test.ts` then re-derives each
|
|
40
|
-
* vocabulary from what each validator actually REFUSES (by feeding it values),
|
|
41
|
-
* and compares that to the sketch the prompt renders — so a value added to a
|
|
42
|
-
* validator without the sketch still reds, without depending on how the
|
|
43
|
-
* validator happens to spell its list.
|
|
44
|
-
*
|
|
45
|
-
* NOT A LIST. Every value vocabulary that the CONTRACT-PIPELINE role sketches
|
|
46
|
-
* render as an alternation is declared here — the four drifted ones above, the
|
|
47
|
-
* obligation/test-plan pairs, and the nine that were still hand-written literals
|
|
48
|
-
* in `contractPipelinePrompts.ts` (goal `source_type`; context-entry `kind`; the
|
|
49
|
-
* critique item `kind` and `severity`; the critique `verdict`; the assessment
|
|
50
|
-
* finding `status` and report `verdict`; the judge `verdict`; and the judge's
|
|
51
|
-
* counterexample `classification`). That is the whole point: a vocabulary kept
|
|
52
|
-
* as a literal is only safe while someone remembers, and the drift test below
|
|
53
|
-
* sweeps every rendered alternation of those sketches rather than a hand-kept
|
|
54
|
-
* field list, so the next literal to appear reds immediately instead of waiting
|
|
55
|
-
* to be noticed.
|
|
56
|
-
*
|
|
57
|
-
* The scope is those sketches, NOT every sketch in the repository, and the
|
|
58
|
-
* difference is recorded rather than implied: the sweep reaches the modules in
|
|
59
|
-
* `SKETCH_SOURCE_MODULES`, and the clarification-resolution sketch in
|
|
60
|
-
* `steps/prompts.ts` is outside them — a declared-gap row in
|
|
61
|
-
* `tests/shared/promptContractRegistry.ts`. So this module claims nothing about
|
|
62
|
-
* that one, and widening the sweep is its own change.
|
|
63
|
-
*/
|
|
64
|
-
/**
|
|
65
|
-
* `cyclic_seam_resolution.status` — what the validator admits. `no_cycles` is
|
|
66
|
-
* the tool's own record, written when the ledger has no cycle; `resolved` is the
|
|
67
|
-
* worker's record of the breaks it made. The escalation states
|
|
68
|
-
* (`user_decision_required`, `blocked`) are routes the gate takes, never a
|
|
69
|
-
* record: nothing wrote them, and a worker that wrote one moved the pipeline
|
|
70
|
-
* forward with the cycles still in the ledger.
|
|
71
|
-
*/
|
|
72
|
-
export const CYCLIC_SEAM_RESOLUTION_STATUSES = ["no_cycles", "resolved"];
|
|
73
|
-
/**
|
|
74
|
-
* The subset of {@link CYCLIC_SEAM_RESOLUTION_STATUSES} the worker's sketch
|
|
75
|
-
* offers. The worker is emitted only when the ledger has a cycle, so its one
|
|
76
|
-
* answer is `resolved`; the re-check refuses any record while a cycle remains.
|
|
77
|
-
*/
|
|
78
|
-
export const CYCLIC_SEAM_RESOLUTION_STATUSES_OFFERED = ["resolved"];
|
|
79
|
-
/** `cyclic_seam_resolution.cycles[].break_strategy`. */
|
|
80
|
-
export const CYCLIC_SEAM_BREAK_STRATEGIES = [
|
|
81
|
-
"mediator",
|
|
82
|
-
"single_authority",
|
|
83
|
-
];
|
|
84
|
-
/**
|
|
85
|
-
* `judge_report.repair_directive.target`, its legacy aliases, and the offered
|
|
86
|
-
* subset — DECLARED in `src/shared/types/contractPipeline/obligations.ts`,
|
|
87
|
-
* beside the `JudgeRepairTarget` type that derives from them, and re-exported
|
|
88
|
-
* here so the validator and the prompt sketches keep reading them from this
|
|
89
|
-
* module.
|
|
90
|
-
*
|
|
91
|
-
* Why they moved. `src/shared` is the base layer; this module lives in
|
|
92
|
-
* `src/remediate`. A value import from the base layer into an orchestrator is
|
|
93
|
-
* the dependency direction inverted, and the declaration had to live on the
|
|
94
|
-
* side the TYPE could reach.
|
|
95
|
-
*/
|
|
96
|
-
export { CONTRACT_REPAIR_TARGETS, CONTRACT_REPAIR_TARGETS_LEGACY, CONTRACT_REPAIR_TARGETS_OFFERED, } from "audit-tools/shared";
|
|
97
|
-
/** `verification_report` trace `kind`. */
|
|
98
|
-
export const VERIFICATION_TRACE_KINDS = [
|
|
99
|
-
"requirement",
|
|
100
|
-
"invariant",
|
|
101
|
-
"counterexample",
|
|
102
|
-
"task",
|
|
103
|
-
"file",
|
|
104
|
-
"command",
|
|
105
|
-
];
|
|
106
|
-
/** `verification_report` finding-level `overall_status` (report level excludes `skipped`). */
|
|
107
|
-
export const VERIFICATION_FINDING_STATUSES = [
|
|
108
|
-
"passed",
|
|
109
|
-
"failed",
|
|
110
|
-
"skipped",
|
|
111
|
-
];
|
|
112
|
-
/** `verification_report` report-level `overall_status`. */
|
|
113
|
-
export const VERIFICATION_REPORT_STATUSES = ["passed", "failed"];
|
|
114
|
-
/** `verification_report` trace `status`. */
|
|
115
|
-
export const VERIFICATION_TRACE_STATUSES = ["passed", "failed"];
|
|
116
|
-
/** `implementation_dag.nodes[].status`. */
|
|
117
|
-
export const IMPLEMENTATION_NODE_STATUSES = [
|
|
118
|
-
"pending",
|
|
119
|
-
"in_progress",
|
|
120
|
-
"resolved",
|
|
121
|
-
"blocked",
|
|
122
|
-
];
|
|
123
|
-
/** `implementation_dag.edges[].kind`. */
|
|
124
|
-
export const IMPLEMENTATION_EDGE_KINDS = ["dependency", "verification"];
|
|
125
|
-
/**
|
|
126
|
-
* `obligation_ledger.obligations[].status`. `satisfied` is reachable only
|
|
127
|
-
* through the tool's own derivation (`contractPipeline/derive.ts`) — a worker
|
|
128
|
-
* emits `pending` and the tool advances it — but the value is part of the
|
|
129
|
-
* contract the prompt describes, so it is declared here rather than implied.
|
|
130
|
-
*/
|
|
131
|
-
export const OBLIGATION_STATUSES = [
|
|
132
|
-
"pending",
|
|
133
|
-
"satisfied",
|
|
134
|
-
"failed",
|
|
135
|
-
];
|
|
136
|
-
/** `obligation_ledger.obligations[].kind`. */
|
|
137
|
-
export const OBLIGATION_KINDS = [
|
|
138
|
-
"invariant",
|
|
139
|
-
"behavioral",
|
|
140
|
-
"structural",
|
|
141
|
-
"test",
|
|
142
|
-
];
|
|
143
|
-
/** `test_validator_plan.test_specs[].kind`. */
|
|
144
|
-
export const TEST_SPEC_KINDS = [
|
|
145
|
-
"unit",
|
|
146
|
-
"integration",
|
|
147
|
-
"schema",
|
|
148
|
-
"invariant",
|
|
149
|
-
"e2e",
|
|
150
|
-
];
|
|
151
|
-
/** `goal_spec.source_type`. */
|
|
152
|
-
export const GOAL_SOURCE_TYPES = [
|
|
153
|
-
"conversation",
|
|
154
|
-
"document",
|
|
155
|
-
"structured_audit",
|
|
156
|
-
"mixed",
|
|
157
|
-
];
|
|
158
|
-
/** `context_bundle.entries[].kind`. */
|
|
159
|
-
export const CONTEXT_ENTRY_KINDS = [
|
|
160
|
-
"source",
|
|
161
|
-
"test",
|
|
162
|
-
"config",
|
|
163
|
-
"doc",
|
|
164
|
-
];
|
|
165
|
-
/** `conceptual_design_critique.items[].kind`. */
|
|
166
|
-
export const CRITIQUE_ITEM_KINDS = [
|
|
167
|
-
"concern",
|
|
168
|
-
"alternative",
|
|
169
|
-
"suggestion",
|
|
170
|
-
];
|
|
171
|
-
/** `conceptual_design_critique.items[].severity`. */
|
|
172
|
-
export const CRITIQUE_ITEM_SEVERITIES = ["blocking", "advisory"];
|
|
173
|
-
/** `conceptual_design_critique.verdict`. */
|
|
174
|
-
export const CRITIQUE_VERDICTS = [
|
|
175
|
-
"approved",
|
|
176
|
-
"approved_with_concerns",
|
|
177
|
-
"rejected",
|
|
178
|
-
];
|
|
179
|
-
/** `contract_assessment_report.findings[].status`. */
|
|
180
|
-
export const ASSESSMENT_FINDING_STATUSES = [
|
|
181
|
-
"satisfied",
|
|
182
|
-
"violated",
|
|
183
|
-
"uncertain",
|
|
184
|
-
];
|
|
185
|
-
/** `contract_assessment_report.verdict`. */
|
|
186
|
-
export const ASSESSMENT_VERDICTS = ["passed", "failed", "partial"];
|
|
187
|
-
/** `judge_report.verdict`. */
|
|
188
|
-
export const JUDGE_VERDICTS = ["approved", "needs_repair"];
|
|
189
|
-
/**
|
|
190
|
-
* `judge_report.classifications[].classification` — what the judge may decide
|
|
191
|
-
* about one counterexample.
|
|
192
|
-
*
|
|
193
|
-
* Declared here rather than in the validator that reads it, because the judge
|
|
194
|
-
* role's prompt sketch states the same five values and a sketch that renders a
|
|
195
|
-
* hand-written copy of a validator's list is the drift this module bans. The
|
|
196
|
-
* validator imports THIS declaration (it was a local `as const` beside
|
|
197
|
-
* `validateJudgeReport`), so the two are one fact.
|
|
198
|
-
*/
|
|
199
|
-
export const COUNTEREXAMPLE_CLASSIFICATIONS = [
|
|
200
|
-
"accepted",
|
|
201
|
-
"out_of_scope",
|
|
202
|
-
"duplicate",
|
|
203
|
-
"invalid",
|
|
204
|
-
"residual_risk",
|
|
205
|
-
];
|
|
206
|
-
/**
|
|
207
|
-
* `seam_reconciliation_report.mismatches[].resolution.decision` — which side of
|
|
208
|
-
* a seam adjusts. Declared here beside the rest for ONE reason: the alternative
|
|
209
|
-
* would be to exclude it from the drift test by hand, and an exclusion list is
|
|
210
|
-
* the drift this module exists to make impossible (see the test's alternation
|
|
211
|
-
* sweep, which matches EVERY rendered alternation to a validator probe).
|
|
212
|
-
*/
|
|
213
|
-
export const SEAM_RESOLUTION_DECISIONS = ["A", "B", "both"];
|
|
214
|
-
/**
|
|
215
|
-
* The vocabularies that carry a `created_at`, and the ones that do not.
|
|
216
|
-
*
|
|
217
|
-
* `created_at` asymmetry, resolved in one place. Every contract-pipeline
|
|
218
|
-
* validator ends with `requireString(v.created_at, ...)`, and NO sketch
|
|
219
|
-
* declares the field — the reconciliation is `stampToolCreatedAt`
|
|
220
|
-
* (`contractPipeline/artifactStore.ts`), which the tool calls on the payload at
|
|
221
|
-
* ingest and at the `validate-artifact` self-check. The host has no clock, so
|
|
222
|
-
* asking it for a timestamp is asking it to invent one; the tool owns the field
|
|
223
|
-
* and stamps it.
|
|
224
|
-
*
|
|
225
|
-
* The decision, stated once rather than left implicit: THE VALIDATORS KEEP
|
|
226
|
-
* REQUIRING IT AND THE SKETCHES KEEP OMITTING IT — because the requirement is
|
|
227
|
-
* enforced on the POST-STAMP payload, not on what the worker wrote. The
|
|
228
|
-
* asymmetry is not a drift to be closed in either direction: declaring
|
|
229
|
-
* `created_at` in the sketches would tell the worker to supply a value the tool
|
|
230
|
-
* then overrides (the stamp is `created_at`-wins-if-present, but a host-invented
|
|
231
|
-
* clock reading is still worse than the tool's), and dropping the requirement
|
|
232
|
-
* from the validators would let an artifact that never passed the stamp path —
|
|
233
|
-
* a hand-written file validated directly — carry no timestamp at all.
|
|
234
|
-
*
|
|
235
|
-
* This is a DECISION, not a drift (see the drift test's `created_at` block):
|
|
236
|
-
* the validators keep requiring it and the sketches keep omitting it, because
|
|
237
|
-
* the requirement is enforced on the POST-STAMP payload rather than on what the
|
|
238
|
-
* worker wrote. Closing the asymmetry in either direction is worse — declaring
|
|
239
|
-
* it in the sketches asks the host for a clock reading the tool then overrides,
|
|
240
|
-
* and dropping it from the validators lets a directly-validated hand-written
|
|
241
|
-
* file carry no timestamp at all.
|
|
242
|
-
*/
|
|
243
|
-
export const CREATED_AT_OWNER = "stampToolCreatedAt";
|
|
244
|
-
/**
|
|
245
|
-
* Whether `value` is one of {@link CYCLIC_SEAM_BREAK_STRATEGIES} — the ONE
|
|
246
|
-
* membership test for the vocabulary, so the tool's post-hoc cycle-break check
|
|
247
|
-
* and the prompt's sketch read the same declaration.
|
|
248
|
-
*/
|
|
249
|
-
export function isCyclicSeamBreakStrategy(value) {
|
|
250
|
-
return (typeof value === "string" &&
|
|
251
|
-
CYCLIC_SEAM_BREAK_STRATEGIES.includes(value));
|
|
252
|
-
}
|
|
253
|
-
/**
|
|
254
|
-
* Render a sketch fragment for a value vocabulary: `"a | b | c"`.
|
|
255
|
-
*
|
|
256
|
-
* The ONE renderer for every `requireOneOf`-style vocabulary in the sketches,
|
|
257
|
-
* so the separators and quoting in a prompt cannot drift from each other either.
|
|
258
|
-
*/
|
|
259
|
-
export function sketchValues(values) {
|
|
260
|
-
return values.join(" | ");
|
|
261
|
-
}
|
|
262
|
-
//# sourceMappingURL=sketchSource.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sketchSource.js","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/sketchSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kCAAkC,EAAE,MAAM,+CAA+C,CAAC;AACnG,iEAAiE;AACjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,WAAW,EAAE,UAAU,CAAU,CAAC;AAElF;;;;GAIG;AACH,MAAM,CAAC,MAAM,uCAAuC,GAAG,CAAC,UAAU,CAAU,CAAC;AAE7E,wDAAwD;AACxD,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,UAAU;IACV,kBAAkB;CACV,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,OAAO,EACL,uBAAuB,EACvB,8BAA8B,EAC9B,+BAA+B,GAChC,MAAM,oBAAoB,CAAC;AAE5B,0CAA0C;AAC1C,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,aAAa;IACb,WAAW;IACX,gBAAgB;IAChB,MAAM;IACN,MAAM;IACN,SAAS;CACD,CAAC;AAEX,8FAA8F;AAC9F,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,QAAQ;IACR,QAAQ;IACR,SAAS;CACD,CAAC;AAEX,2DAA2D;AAC3D,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAE1E,4CAA4C;AAC5C,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAU,CAAC;AAEzE,2CAA2C;AAC3C,MAAM,CAAC,MAAM,4BAA4B,GAAG;IAC1C,SAAS;IACT,aAAa;IACb,UAAU;IACV,SAAS;CACD,CAAC;AAEX,yCAAyC;AACzC,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,YAAY,EAAE,cAAc,CAAU,CAAC;AAEjF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS;IACT,WAAW;IACX,QAAQ;CACA,CAAC;AAEX,8CAA8C;AAC9C,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,MAAM;CACE,CAAC;AAEX,+CAA+C;AAC/C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,MAAM;IACN,aAAa;IACb,QAAQ;IACR,WAAW;IACX,KAAK;CACG,CAAC;AAEX,+BAA+B;AAC/B,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,cAAc;IACd,UAAU;IACV,kBAAkB;IAClB,OAAO;CACC,CAAC;AAEX,uCAAuC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,KAAK;CACG,CAAC;AAEX,iDAAiD;AACjD,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS;IACT,aAAa;IACb,YAAY;CACJ,CAAC;AAEX,qDAAqD;AACrD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,UAAU,EAAE,UAAU,CAAU,CAAC;AAE1E,4CAA4C;AAC5C,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,UAAU;IACV,wBAAwB;IACxB,UAAU;CACF,CAAC;AAEX,sDAAsD;AACtD,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,WAAW;IACX,UAAU;IACV,WAAW;CACH,CAAC;AAEX,4CAA4C;AAC5C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAE5E,8BAA8B;AAC9B,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,UAAU,EAAE,cAAc,CAAU,CAAC;AAEpE;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,UAAU;IACV,cAAc;IACd,WAAW;IACX,SAAS;IACT,eAAe;CACP,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAU,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,oBAA6B,CAAC;AAE9D;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAc;IAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACxB,4BAAkD,CAAC,QAAQ,CAAC,KAAK,CAAC,CACpE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,MAAyB;IACpD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { PriorTestSpec } from "./derive.js";
|
|
2
|
-
export declare function testPlanCarryPath(artifactsDir: string): string;
|
|
3
|
-
/**
|
|
4
|
-
* Snapshot a freshly-ingested test-plan's authored specs (identity + assertions)
|
|
5
|
-
* keyed by obligation_id, overwriting any prior snapshot. Only specs with at
|
|
6
|
-
* least one assertion are carried (an `inapplicable_claim` spec re-authors).
|
|
7
|
-
*/
|
|
8
|
-
export declare function captureTestPlanCarry(artifactsDir: string, payload: unknown, capturedAt: string): Promise<void>;
|
|
9
|
-
/**
|
|
10
|
-
* Read the carried prior specs keyed by obligation_id; empty when none.
|
|
11
|
-
*
|
|
12
|
-
* The carry is REGENERABLE state — a carry from another schema version is
|
|
13
|
-
* discarded rather than reinterpreted, which costs one re-authoring of the
|
|
14
|
-
* affected specs and is the same fail-shape as an absent file (below).
|
|
15
|
-
*/
|
|
16
|
-
export declare function readTestPlanCarry(artifactsDir: string): Promise<Record<string, PriorTestSpec>>;
|
|
17
|
-
//# sourceMappingURL=testPlanCarry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"testPlanCarry.d.ts","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/testPlanCarry.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAajD,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE9D;AAQD;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAuBf;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAMxC"}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Diff-carry for the test-validator plan (C3).
|
|
3
|
-
*
|
|
4
|
-
* Friction: the test-plan is re-derived whole whenever the obligation ledger
|
|
5
|
-
* re-stales (e.g. a repair round changes a module contract). The host then
|
|
6
|
-
* re-authors EVERY spec's assertions — even for obligations whose premise did
|
|
7
|
-
* not change at all.
|
|
8
|
-
*
|
|
9
|
-
* Fix: when a test-plan is ingested, snapshot each authored spec's identity
|
|
10
|
-
* (`name` + `scope_anchors`) plus its assertions, keyed by obligation_id. On a
|
|
11
|
-
* later re-emit, the scaffold pre-fills assertions for every obligation whose
|
|
12
|
-
* premise is unchanged (see `buildTestValidatorPlanScaffold`), so the host only
|
|
13
|
-
* authors the genuinely new/changed specs. Enforced by the tool (the re-emitted
|
|
14
|
-
* skeleton carries the assertions), never left to the host to remember.
|
|
15
|
-
*/
|
|
16
|
-
import { mkdir } from "node:fs/promises";
|
|
17
|
-
import { join } from "node:path";
|
|
18
|
-
import { discardOnSchemaVersionMismatch, isRecord, readOptionalJsonFile, writeJsonFile, } from "audit-tools/shared";
|
|
19
|
-
import { contractPipelineDir } from "./artifactStore.js";
|
|
20
|
-
const CARRY_SCHEMA_VERSION = "remediate-code-contract-pipeline/test-plan-carry/v1alpha1";
|
|
21
|
-
export function testPlanCarryPath(artifactsDir) {
|
|
22
|
-
return join(contractPipelineDir(artifactsDir), "test-plan-carry.json");
|
|
23
|
-
}
|
|
24
|
-
function asStringArray(value) {
|
|
25
|
-
return Array.isArray(value)
|
|
26
|
-
? value.filter((x) => typeof x === "string")
|
|
27
|
-
: [];
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Snapshot a freshly-ingested test-plan's authored specs (identity + assertions)
|
|
31
|
-
* keyed by obligation_id, overwriting any prior snapshot. Only specs with at
|
|
32
|
-
* least one assertion are carried (an `inapplicable_claim` spec re-authors).
|
|
33
|
-
*/
|
|
34
|
-
export async function captureTestPlanCarry(artifactsDir, payload, capturedAt) {
|
|
35
|
-
const specsArray = isRecord(payload) ? payload.test_specs : undefined;
|
|
36
|
-
if (!Array.isArray(specsArray))
|
|
37
|
-
return;
|
|
38
|
-
const specs = {};
|
|
39
|
-
for (const raw of specsArray) {
|
|
40
|
-
if (!isRecord(raw))
|
|
41
|
-
continue;
|
|
42
|
-
const id = typeof raw.obligation_id === "string" ? raw.obligation_id : "";
|
|
43
|
-
const name = typeof raw.name === "string" ? raw.name : "";
|
|
44
|
-
const assertions = asStringArray(raw.assertions);
|
|
45
|
-
if (!id || assertions.length === 0)
|
|
46
|
-
continue;
|
|
47
|
-
specs[id] = {
|
|
48
|
-
name,
|
|
49
|
-
scope_anchors: asStringArray(raw.scope_anchors),
|
|
50
|
-
assertions,
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
const carry = {
|
|
54
|
-
schema_version: CARRY_SCHEMA_VERSION,
|
|
55
|
-
captured_at: capturedAt,
|
|
56
|
-
specs,
|
|
57
|
-
};
|
|
58
|
-
await mkdir(contractPipelineDir(artifactsDir), { recursive: true });
|
|
59
|
-
await writeJsonFile(testPlanCarryPath(artifactsDir), carry);
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Read the carried prior specs keyed by obligation_id; empty when none.
|
|
63
|
-
*
|
|
64
|
-
* The carry is REGENERABLE state — a carry from another schema version is
|
|
65
|
-
* discarded rather than reinterpreted, which costs one re-authoring of the
|
|
66
|
-
* affected specs and is the same fail-shape as an absent file (below).
|
|
67
|
-
*/
|
|
68
|
-
export async function readTestPlanCarry(artifactsDir) {
|
|
69
|
-
const carry = discardOnSchemaVersionMismatch(await readOptionalJsonFile(testPlanCarryPath(artifactsDir)), CARRY_SCHEMA_VERSION);
|
|
70
|
-
return carry?.specs ?? {};
|
|
71
|
-
}
|
|
72
|
-
//# sourceMappingURL=testPlanCarry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"testPlanCarry.js","sourceRoot":"","sources":["../../../src/remediate/contractPipeline/testPlanCarry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,8BAA8B,EAC9B,QAAQ,EACR,oBAAoB,EACpB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,MAAM,oBAAoB,GACxB,2DAAoE,CAAC;AAUvE,MAAM,UAAU,iBAAiB,CAAC,YAAoB;IACpD,OAAO,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,sBAAsB,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACzB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;QACzD,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,YAAoB,EACpB,OAAgB,EAChB,UAAkB;IAElB,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QAAE,OAAO;IACvC,MAAM,KAAK,GAAkC,EAAE,CAAC;IAChD,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,SAAS;QAC7B,MAAM,EAAE,GAAG,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC7C,KAAK,CAAC,EAAE,CAAC,GAAG;YACV,IAAI;YACJ,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC;YAC/C,UAAU;SACX,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAkB;QAC3B,cAAc,EAAE,oBAAoB;QACpC,WAAW,EAAE,UAAU;QACvB,KAAK;KACN,CAAC;IACF,MAAM,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,MAAM,aAAa,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,YAAoB;IAEpB,MAAM,KAAK,GAAG,8BAA8B,CAC1C,MAAM,oBAAoB,CAAgB,iBAAiB,CAAC,YAAY,CAAC,CAAC,EAC1E,oBAAoB,CACrB,CAAC;IACF,OAAO,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC;AAC5B,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Read the planning pipeline's handoff artifact when it exists. Implementation
|
|
3
|
-
* execution no longer has a second dispatch-plan marshalling layer: the only
|
|
4
|
-
* production implementation boundary is hostHandoff.ts.
|
|
5
|
-
*/
|
|
6
|
-
export declare function readExtractedPlanIfPresent(artifactsDir: string): Promise<unknown | undefined>;
|
|
7
|
-
//# sourceMappingURL=marshal.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"marshal.d.ts","sourceRoot":"","sources":["../../../../src/remediate/steps/dispatch/marshal.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAE9B"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { join } from "node:path";
|
|
2
|
-
import { readOptionalJsonFile } from "audit-tools/shared";
|
|
3
|
-
/**
|
|
4
|
-
* Read the planning pipeline's handoff artifact when it exists. Implementation
|
|
5
|
-
* execution no longer has a second dispatch-plan marshalling layer: the only
|
|
6
|
-
* production implementation boundary is hostHandoff.ts.
|
|
7
|
-
*/
|
|
8
|
-
export async function readExtractedPlanIfPresent(artifactsDir) {
|
|
9
|
-
return readOptionalJsonFile(join(artifactsDir, "extracted-plan.json"));
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=marshal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"marshal.js","sourceRoot":"","sources":["../../../../src/remediate/steps/dispatch/marshal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,YAAoB;IAEpB,OAAO,oBAAoB,CAAC,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,CAAC;AACzE,CAAC"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Validation helpers for contract-pipeline artifacts.
|
|
3
|
-
* Follows the ValidationIssue[] pattern used by the rest of the remediator
|
|
4
|
-
* validation layer.
|
|
5
|
-
*/
|
|
6
|
-
import { type ValidationIssue } from "audit-tools/shared";
|
|
7
|
-
import type { ContractPipelineArtifactName } from "../contractPipeline/artifactStore.js";
|
|
8
|
-
export declare const CP_CYCLIC_SEAM_RESOLUTION_VERSION: "remediate-code-contract-pipeline/cyclic-seam-resolution/v1alpha1";
|
|
9
|
-
export declare const CP_MODULE_DECOMPOSITION_VERSION: "remediate-code-contract-pipeline/module-decomposition/v1alpha1";
|
|
10
|
-
export declare const CP_MODULE_CONTRACTS_VERSION: "remediate-code-contract-pipeline/module-contracts/v1alpha1";
|
|
11
|
-
export declare const CP_SEAM_RECONCILIATION_REPORT_VERSION: "remediate-code-contract-pipeline/seam-reconciliation-report/v1alpha1";
|
|
12
|
-
export declare const CP_FINALIZED_MODULE_CONTRACTS_VERSION: "remediate-code-contract-pipeline/finalized-module-contracts/v1alpha1";
|
|
13
|
-
export declare function validateGoalSpec(value: unknown, path?: string): ValidationIssue[];
|
|
14
|
-
export declare function validateContextBundle(value: unknown, path?: string): ValidationIssue[];
|
|
15
|
-
export declare function validateModuleDecomposition(value: unknown, path?: string): ValidationIssue[];
|
|
16
|
-
export declare function validateModuleContracts(value: unknown, path?: string): ValidationIssue[];
|
|
17
|
-
export declare function validateSeamReconciliationReport(value: unknown, path?: string): ValidationIssue[];
|
|
18
|
-
export declare function validateFinalizedModuleContracts(value: unknown, path?: string): ValidationIssue[];
|
|
19
|
-
export { validateDesignSpecGates, validateGoalIdConsistency, validateImplementationDAGIntegrity, validatePairedObligations, validateEvidenceThreaded, validateDigestCoverage, validateWorkBlockSeamPreparation, validateReconciliationDerivation, validateContractCitationGrounding, validateDecompositionFileScope, validateFinalizedModuleSetPreserved, enumerateRepoTreePaths, isInsideGitWorkTree, type ContractCitationGroundingResult, type ContractPipelineCrossGateInputs, } from "./contractPipelineGates.js";
|
|
20
|
-
export declare function validateConceptualDesignCritique(value: unknown, path?: string): ValidationIssue[];
|
|
21
|
-
export declare function validateObligationLedger(value: unknown, path?: string): ValidationIssue[];
|
|
22
|
-
export declare function validateTestValidatorPlan(value: unknown, path?: string): ValidationIssue[];
|
|
23
|
-
export declare function validateContractAssessmentReport(value: unknown, path?: string): ValidationIssue[];
|
|
24
|
-
export declare function validateCounterexample(value: unknown, path?: string): ValidationIssue[];
|
|
25
|
-
export declare function validateJudgeReport(value: unknown, path?: string): ValidationIssue[];
|
|
26
|
-
export declare function validateImplementationDAG(value: unknown, path?: string): ValidationIssue[];
|
|
27
|
-
export declare function validateVerificationReport(value: unknown, path?: string): ValidationIssue[];
|
|
28
|
-
export declare function validateCyclicSeamResolution(value: unknown, path?: string): ValidationIssue[];
|
|
29
|
-
/**
|
|
30
|
-
* One validator per contract-pipeline artifact payload. Used by the driver's
|
|
31
|
-
* ingestion pass (worker-written raw payloads are untrusted until validated)
|
|
32
|
-
* and by the artifacts validation sweep.
|
|
33
|
-
*/
|
|
34
|
-
export declare const CONTRACT_PIPELINE_VALIDATORS: Record<ContractPipelineArtifactName, (value: unknown, path: string) => ValidationIssue[]>;
|
|
35
|
-
//# sourceMappingURL=contractPipeline.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contractPipeline.d.ts","sourceRoot":"","sources":["../../../src/remediate/validation/contractPipeline.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,OAAO,EACL,KAAK,eAAe,EAIrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AA0CzF,eAAO,MAAM,iCAAiC,EAC5C,kEAA2E,CAAC;AAG9E,eAAO,MAAM,+BAA+B,EAC1C,gEAAyE,CAAC;AAC5E,eAAO,MAAM,2BAA2B,EACtC,4DAAqE,CAAC;AACxE,eAAO,MAAM,qCAAqC,EAChD,sEAA+E,CAAC;AAClF,eAAO,MAAM,qCAAqC,EAChD,sEAA+E,CAAC;AAyElF,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,EACd,IAAI,SAAc,GACjB,eAAe,EAAE,CAUnB;AAID,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,EACd,IAAI,SAAmB,GACtB,eAAe,EAAE,CAoBnB;AAID,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,EACd,IAAI,SAAyB,GAC5B,eAAe,EAAE,CAiCnB;AAcD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,EACd,IAAI,SAAqB,GACxB,eAAe,EAAE,CAiBnB;AAID,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,OAAO,EACd,IAAI,SAA+B,GAClC,eAAe,EAAE,CAuCnB;AAID,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,OAAO,EACd,IAAI,SAA+B,GAClC,eAAe,EAAE,CAkCnB;AAOD,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,kCAAkC,EAClC,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,EACtB,gCAAgC,EAChC,gCAAgC,EAChC,iCAAiC,EACjC,8BAA8B,EAC9B,mCAAmC,EACnC,sBAAsB,EACtB,mBAAmB,EACnB,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,GACrC,MAAM,4BAA4B,CAAC;AAIpC,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,OAAO,EACd,IAAI,SAA+B,GAClC,eAAe,EAAE,CAwBnB;AAID,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,IAAI,SAAsB,GACzB,eAAe,EAAE,CAqBnB;AAID,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,IAAI,SAAwB,GAC3B,eAAe,EAAE,CAwDnB;AAID,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,OAAO,EACd,IAAI,SAA+B,GAClC,eAAe,EAAE,CAqBnB;AAID,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,EACd,IAAI,SAAmB,GACtB,eAAe,EAAE,CAoBnB;AAID,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO,EACd,IAAI,SAAiB,GACpB,eAAe,EAAE,CAgDnB;AAID,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,EACd,IAAI,SAAuB,GAC1B,eAAe,EAAE,CAyGnB;AAID,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,OAAO,EACd,IAAI,SAAwB,GAC3B,eAAe,EAAE,CAwCnB;AAID,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,OAAO,EACd,IAAI,SAA2B,GAC9B,eAAe,EAAE,CAyCnB;AAID;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAC/C,4BAA4B,EAC5B,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,eAAe,EAAE,CAiBpD,CAAC"}
|