codex-workflow-v2 2.0.0-beta.13.9 → 2.0.0-beta.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/README.md +27 -388
  2. package/dist/reviewer-runtime-build.json +89 -29
  3. package/dist/src/alpha6/adoption.d.ts +2 -0
  4. package/dist/src/alpha6/adoption.js +22 -0
  5. package/dist/src/alpha6/adoption.js.map +1 -1
  6. package/dist/src/alpha6/captured-check-evidence.d.ts +51 -0
  7. package/dist/src/alpha6/captured-check-evidence.js +152 -0
  8. package/dist/src/alpha6/captured-check-evidence.js.map +1 -0
  9. package/dist/src/alpha6/component-owner.d.ts +15 -1
  10. package/dist/src/alpha6/component-owner.js +44 -2
  11. package/dist/src/alpha6/component-owner.js.map +1 -1
  12. package/dist/src/alpha6/corrective-decision-boundary.d.ts +4 -0
  13. package/dist/src/alpha6/corrective-decision-boundary.js +47 -0
  14. package/dist/src/alpha6/corrective-decision-boundary.js.map +1 -0
  15. package/dist/src/alpha6/downstream-proof.d.ts +1 -25
  16. package/dist/src/alpha6/downstream-proof.js +0 -171
  17. package/dist/src/alpha6/downstream-proof.js.map +1 -1
  18. package/dist/src/alpha6/literal-test-invocation.d.ts +2 -0
  19. package/dist/src/alpha6/literal-test-invocation.js +106 -0
  20. package/dist/src/alpha6/literal-test-invocation.js.map +1 -0
  21. package/dist/src/alpha6/milestone.d.ts +2 -0
  22. package/dist/src/alpha6/milestone.js +10 -1
  23. package/dist/src/alpha6/milestone.js.map +1 -1
  24. package/dist/src/alpha6/navigation-dirty-carryover.d.ts +11 -0
  25. package/dist/src/alpha6/navigation-dirty-carryover.js +130 -0
  26. package/dist/src/alpha6/navigation-dirty-carryover.js.map +1 -0
  27. package/dist/src/alpha6/plan-integrity.js +7 -5
  28. package/dist/src/alpha6/plan-integrity.js.map +1 -1
  29. package/dist/src/alpha6/remediation.d.ts +6 -21
  30. package/dist/src/alpha6/remediation.js +161 -476
  31. package/dist/src/alpha6/remediation.js.map +1 -1
  32. package/dist/src/alpha6/root-cause-replan-carryover.d.ts +4 -1
  33. package/dist/src/alpha6/root-cause-replan-carryover.js +29 -5
  34. package/dist/src/alpha6/root-cause-replan-carryover.js.map +1 -1
  35. package/dist/src/beta1/project-transaction.d.ts +3 -1
  36. package/dist/src/beta1/project-transaction.js +6 -2
  37. package/dist/src/beta1/project-transaction.js.map +1 -1
  38. package/dist/src/checks/runner.d.ts +26 -0
  39. package/dist/src/checks/runner.js +223 -0
  40. package/dist/src/checks/runner.js.map +1 -0
  41. package/dist/src/checks/task-sync.d.ts +10 -0
  42. package/dist/src/checks/task-sync.js +41 -0
  43. package/dist/src/checks/task-sync.js.map +1 -0
  44. package/dist/src/checks/worker.d.ts +1 -0
  45. package/dist/src/checks/worker.js +154 -0
  46. package/dist/src/checks/worker.js.map +1 -0
  47. package/dist/src/cli-actions.d.ts +2 -2
  48. package/dist/src/cli-actions.js +3 -15
  49. package/dist/src/cli-actions.js.map +1 -1
  50. package/dist/src/cli.js +14 -98
  51. package/dist/src/cli.js.map +1 -1
  52. package/dist/src/contracts.d.ts +35 -32
  53. package/dist/src/dependency-provenance.d.ts +2 -2
  54. package/dist/src/dependency-provenance.js +12 -69
  55. package/dist/src/dependency-provenance.js.map +1 -1
  56. package/dist/src/domain/base-sync-conflict.d.ts +13 -0
  57. package/dist/src/domain/base-sync-conflict.js +32 -0
  58. package/dist/src/domain/base-sync-conflict.js.map +1 -0
  59. package/dist/src/domain/step-start-admission.d.ts +4 -0
  60. package/dist/src/domain/step-start-admission.js +9 -0
  61. package/dist/src/domain/step-start-admission.js.map +1 -0
  62. package/dist/src/domain/virgin-registration.d.ts +3 -0
  63. package/dist/src/domain/virgin-registration.js +65 -0
  64. package/dist/src/domain/virgin-registration.js.map +1 -0
  65. package/dist/src/errors.d.ts +1 -1
  66. package/dist/src/errors.js.map +1 -1
  67. package/dist/src/gateway-handshake.js +0 -8
  68. package/dist/src/gateway-handshake.js.map +1 -1
  69. package/dist/src/git.d.ts +3 -1
  70. package/dist/src/git.js +41 -14
  71. package/dist/src/git.js.map +1 -1
  72. package/dist/src/graph.js +25 -3
  73. package/dist/src/graph.js.map +1 -1
  74. package/dist/src/index.d.ts +1 -0
  75. package/dist/src/navigation-actions.d.ts +9 -0
  76. package/dist/src/navigation-actions.js +72 -0
  77. package/dist/src/navigation-actions.js.map +1 -0
  78. package/dist/src/navigation-update-artifact.d.ts +5 -0
  79. package/dist/src/navigation-update-artifact.js +227 -0
  80. package/dist/src/navigation-update-artifact.js.map +1 -0
  81. package/dist/src/navigation-update.d.ts +39 -0
  82. package/dist/src/navigation-update.js +82 -0
  83. package/dist/src/navigation-update.js.map +1 -0
  84. package/dist/src/observation.js +52 -29
  85. package/dist/src/observation.js.map +1 -1
  86. package/dist/src/observed-routes.js +5 -6
  87. package/dist/src/observed-routes.js.map +1 -1
  88. package/dist/src/pending-review-update.d.ts +0 -13
  89. package/dist/src/pending-review-update.js +1 -6
  90. package/dist/src/pending-review-update.js.map +1 -1
  91. package/dist/src/reviewer.d.ts +1 -1
  92. package/dist/src/reviewer.js +20 -17
  93. package/dist/src/reviewer.js.map +1 -1
  94. package/dist/src/runtime.d.ts +3 -0
  95. package/dist/src/runtime.js +6 -0
  96. package/dist/src/runtime.js.map +1 -0
  97. package/dist/src/state/corrective-replan-executor.d.ts +10 -0
  98. package/dist/src/state/corrective-replan-executor.js +37 -1
  99. package/dist/src/state/corrective-replan-executor.js.map +1 -1
  100. package/dist/src/state/corrective-replan-public-schema.js +15 -2
  101. package/dist/src/state/corrective-replan-public-schema.js.map +1 -1
  102. package/dist/src/state/corrective-replan-public.js +1 -1
  103. package/dist/src/state/corrective-replan-public.js.map +1 -1
  104. package/dist/src/state/corrective-replan-transaction.d.ts +1 -0
  105. package/dist/src/state/corrective-replan-transaction.js +12 -11
  106. package/dist/src/state/corrective-replan-transaction.js.map +1 -1
  107. package/dist/src/state/corrective-yield-transaction.d.ts +1 -0
  108. package/dist/src/state/corrective-yield-transaction.js +11 -10
  109. package/dist/src/state/corrective-yield-transaction.js.map +1 -1
  110. package/dist/src/state/lock.d.ts +4 -0
  111. package/dist/src/state/lock.js +21 -0
  112. package/dist/src/state/lock.js.map +1 -1
  113. package/dist/src/version.d.ts +1 -1
  114. package/dist/src/version.js +1 -1
  115. package/dist/src/version.js.map +1 -1
  116. package/dist/src/workflow-blocker-route.d.ts +8 -0
  117. package/dist/src/workflow-blocker-route.js +106 -0
  118. package/dist/src/workflow-blocker-route.js.map +1 -0
  119. package/dist/src/workflow.d.ts +48 -63
  120. package/dist/src/workflow.js +666 -1460
  121. package/dist/src/workflow.js.map +1 -1
  122. package/docs/autonomy-guardrails.md +26 -304
  123. package/docs/decisions.md +14 -112
  124. package/docs/development-flow.md +35 -238
  125. package/docs/project-memory.md +31 -50
  126. package/docs/release-app-evidence.md +190 -0
  127. package/docs/release.md +95 -388
  128. package/docs/updating-existing-project.md +19 -717
  129. package/package.json +11 -13
  130. package/plugins/codex-workflow-gateway/.codex-plugin/plugin.json +2 -2
  131. package/plugins/codex-workflow-gateway/references/chat-dispatch.md +73 -197
  132. package/plugins/codex-workflow-gateway/references/codebase-memory-routing.md +57 -0
  133. package/plugins/codex-workflow-gateway/references/protocol.md +42 -445
  134. package/plugins/codex-workflow-gateway/scripts/chat-dispatch.mjs +7 -1
  135. package/plugins/codex-workflow-gateway/scripts/chat-model-policy.mjs +10 -8
  136. package/plugins/codex-workflow-gateway/scripts/chat-registry.mjs +23 -5
  137. package/plugins/codex-workflow-gateway/skills/codex-workflow-gateway/SKILL.md +66 -757
  138. package/references/state-machine.md +4 -4
  139. package/roles/technical-planner.md +1 -1
  140. package/schemas/corrective-decision-event.schema.json +3 -1
  141. package/schemas/project-knowledge-map.schema.json +3 -1
  142. package/schemas/remediation-event.schema.json +10 -1
  143. package/schemas/task.schema.json +46 -2
  144. package/schemas/transition-payloads.schema.json +16 -1
  145. package/src/alpha6/adoption.ts +1123 -0
  146. package/src/alpha6/captured-check-evidence.ts +132 -0
  147. package/src/alpha6/check-support-anchor.ts +128 -0
  148. package/src/alpha6/component-owner.ts +168 -0
  149. package/src/alpha6/corrective-decision-boundary.ts +39 -0
  150. package/src/alpha6/downstream-proof.ts +520 -0
  151. package/src/alpha6/failed-step-planning-recovery.ts +88 -0
  152. package/src/alpha6/handoff.ts +1443 -0
  153. package/src/alpha6/journal.ts +473 -0
  154. package/src/alpha6/literal-test-invocation.ts +84 -0
  155. package/src/alpha6/mechanical-feasibility.ts +488 -0
  156. package/src/alpha6/milestone.ts +2192 -0
  157. package/src/alpha6/navigation-dirty-carryover.ts +154 -0
  158. package/src/alpha6/npm-check-contract.ts +47 -0
  159. package/src/alpha6/plan-integrity.ts +298 -0
  160. package/src/alpha6/plan-risk.ts +1480 -0
  161. package/src/alpha6/preexecution-replan.ts +187 -0
  162. package/src/alpha6/remediation-cause.ts +98 -0
  163. package/src/alpha6/remediation.ts +2438 -0
  164. package/src/alpha6/review.ts +1198 -0
  165. package/src/alpha6/root-cause-replan-carryover.ts +491 -0
  166. package/src/alpha6/store-sidecars.ts +335 -0
  167. package/src/alpha7/autonomy.ts +411 -0
  168. package/src/alpha7/corrective-recovery.ts +1332 -0
  169. package/src/artifacts.ts +130 -0
  170. package/src/beta1/project-transaction.ts +355 -0
  171. package/src/change-explanation.ts +153 -0
  172. package/src/checks/runner.ts +245 -0
  173. package/src/checks/task-sync.ts +41 -0
  174. package/src/checks/worker.ts +149 -0
  175. package/src/cli-actions.ts +107 -0
  176. package/src/cli.ts +1457 -0
  177. package/src/contracts.ts +1494 -0
  178. package/src/credential-output.ts +89 -0
  179. package/src/credential-transport.ts +215 -0
  180. package/src/delegation.ts +190 -0
  181. package/src/dependency-provenance.ts +472 -0
  182. package/src/diagnostics.ts +93 -0
  183. package/src/domain/base-sync-conflict.ts +35 -0
  184. package/src/domain/completed-step-carryover.ts +76 -0
  185. package/src/domain/discovery.ts +27 -0
  186. package/src/domain/plan-semantics.ts +58 -0
  187. package/src/domain/step-start-admission.ts +10 -0
  188. package/src/domain/validation.ts +177 -0
  189. package/src/domain/virgin-registration.ts +46 -0
  190. package/src/errors.ts +24 -0
  191. package/src/fs-utils.ts +61 -0
  192. package/src/gateway-handshake.ts +95 -0
  193. package/src/git.ts +183 -0
  194. package/src/graph.ts +342 -0
  195. package/src/historical-step-provenance.ts +136 -0
  196. package/src/index.ts +23 -0
  197. package/src/lifecycle/canonical-hash.ts +28 -0
  198. package/src/lifecycle/catalog.ts +202 -0
  199. package/src/lifecycle/compiler-inspection.ts +29 -0
  200. package/src/lifecycle/core-static-readiness.ts +132 -0
  201. package/src/lifecycle/corrective-replan-authority.ts +136 -0
  202. package/src/lifecycle/corrective-replan-binding-manifest.ts +51 -0
  203. package/src/lifecycle/corrective-replan-credential-core.ts +408 -0
  204. package/src/lifecycle/corrective-replan-credential-schema.ts +54 -0
  205. package/src/lifecycle/corrective-replan-credentials.ts +48 -0
  206. package/src/lifecycle/corrective-replan.ts +843 -0
  207. package/src/lifecycle/evaluator.ts +48 -0
  208. package/src/lifecycle/fingerprint.ts +488 -0
  209. package/src/lifecycle/immutable.ts +8 -0
  210. package/src/lifecycle/implementation-table.ts +118 -0
  211. package/src/lifecycle/index.ts +8 -0
  212. package/src/lifecycle/schema-artifact.ts +263 -0
  213. package/src/lifecycle/semantic-registry.ts +572 -0
  214. package/src/lifecycle/types.ts +838 -0
  215. package/src/memory.ts +273 -0
  216. package/src/migration.ts +161 -0
  217. package/src/navigation-actions.ts +70 -0
  218. package/src/navigation-update-artifact.ts +198 -0
  219. package/src/navigation-update.ts +121 -0
  220. package/src/observation.ts +225 -0
  221. package/src/observed-routes.ts +660 -0
  222. package/src/operational-contract.ts +125 -0
  223. package/src/pending-review-update.ts +175 -0
  224. package/src/repository.ts +99 -0
  225. package/src/reviewer.ts +1879 -0
  226. package/src/runtime.ts +6 -0
  227. package/src/state/corrective-replan-executor.ts +818 -0
  228. package/src/state/corrective-replan-public-schema.ts +83 -0
  229. package/src/state/corrective-replan-public.ts +908 -0
  230. package/src/state/corrective-replan-transaction.ts +949 -0
  231. package/src/state/corrective-yield-executor.ts +327 -0
  232. package/src/state/corrective-yield-transaction.ts +730 -0
  233. package/src/state/lock.ts +902 -0
  234. package/src/state/store.ts +567 -0
  235. package/src/transition-core.ts +330 -0
  236. package/src/ulid.ts +24 -0
  237. package/src/version.ts +2 -0
  238. package/src/workflow-blocker-route.ts +109 -0
  239. package/src/workflow.ts +10172 -0
  240. package/docs/alpha7.1-implementation-brief.md +0 -268
  241. package/docs/alpha7.2-corrective-context-refresh-brief.md +0 -484
  242. package/docs/alpha7.2.1-remediation-recovery-brief.md +0 -86
  243. package/docs/beta1-stabilization-brief.md +0 -165
  244. package/docs/beta11-plan-integrity-recovery-brief.md +0 -38
  245. package/docs/beta13.2-signal-review-recovery.md +0 -38
  246. package/docs/beta2-initial-assembly-navigation-brief.md +0 -616
  247. package/docs/change-model.md +0 -118
  248. package/docs/delegated-approval.md +0 -254
  249. package/docs/lifecycle/state-machine-stabilization.md +0 -641
  250. package/docs/pdf/README.md +0 -24
  251. package/docs/pdf/codex-workflow-v2-architecture-ru.pdf +0 -0
  252. package/docs/pdf/codex-workflow-v2-chat-only-guide-ru.pdf +0 -0
  253. package/docs/pdf/codex-workflow-v2-technical-reference-ru.pdf +0 -0
  254. package/docs/pdf/requirements.txt +0 -1
  255. package/docs/pdf/sources/codex-workflow-v2-architecture-ru.md +0 -478
  256. package/docs/pdf/sources/codex-workflow-v2-chat-only-guide-ru.md +0 -506
  257. package/docs/pdf/sources/codex-workflow-v2-technical-reference-ru.md +0 -778
  258. package/docs/pending-review-update.md +0 -15
  259. package/docs/problem-briefs/01-pre-implementation-integrity.md +0 -482
  260. package/docs/problem-briefs/02-minimal-step-integrity.md +0 -411
  261. package/docs/problem-briefs/03-minimal-agent-context-integrity.md +0 -358
  262. package/docs/problem-briefs/04-task-dependency-and-structural-replacement-integrity.md +0 -573
  263. package/docs/problem-briefs/BRIEF-TEMPLATE.md +0 -56
  264. package/docs/problem-briefs/README.md +0 -120
  265. package/docs/problem-briefs/evidence/p01-mechanical-feasibility-corpus.md +0 -90
  266. package/docs/problem-briefs/evidence/signal-v4-pre-m3-replay.md +0 -246
  267. package/docs/split-required-recovery.md +0 -47
  268. package/docs/stable-release-defect-register.md +0 -730
  269. package/docs/validation-report.md +0 -182
  270. package/scripts/generate-pdf-docs.py +0 -524
  271. package/scripts/run-pdf-docs.mjs +0 -62
@@ -0,0 +1,11 @@
1
+ import type { PlanIntegrityUpdateCompatibility, TaskState } from '../contracts.js';
2
+ import type { FileStateStore } from '../state/store.js';
3
+ export interface NavigationDirtyCarryoverAssessment {
4
+ applicable: boolean;
5
+ eligible: boolean;
6
+ compatibility: PlanIntegrityUpdateCompatibility | null;
7
+ blockers: string[];
8
+ requiredActor?: string;
9
+ }
10
+ /** Validate an existing native checkpoint; this never grants writes or execution authority. */
11
+ export declare function assessNavigationDirtyCarryover(store: FileStateStore, repositoryRoot: string, task: TaskState, stepId?: string, historyBoundary?: string, authorizationBoundary?: string): NavigationDirtyCarryoverAssessment;
@@ -0,0 +1,130 @@
1
+ import { inspectBoundedWorkflowDependencyCommit } from '../dependency-provenance.js';
2
+ import { assertKnowledgeBindingOnlyPlanChange, readVerifiedPlanArtifact } from '../domain/plan-semantics.js';
3
+ import { pathAllowed } from '../domain/validation.js';
4
+ import { validateTaskHistory } from '../git.js';
5
+ import { changedFiles, currentBranch, gitIsAncestor, headCommit, runGit } from '../repository.js';
6
+ import { hashDirtyWorktree } from './downstream-proof.js';
7
+ import { readTaskC1Posture, readTaskHandoffEvents } from './handoff.js';
8
+ import { assertMechanicalFeasibilityFresh, hashMechanicalFeasibilityEvidence } from './mechanical-feasibility.js';
9
+ import { readCurrentPlanRiskAudit, readPlanRiskAuditEvents } from './plan-risk.js';
10
+ import { verifiedHistoricalStepReviewBindings } from './review.js';
11
+ import { readRemediationEvents } from './remediation.js';
12
+ /** Validate an existing native checkpoint; this never grants writes or execution authority. */
13
+ export function assessNavigationDirtyCarryover(store, repositoryRoot, task, stepId, historyBoundary = headCommit(repositoryRoot), authorizationBoundary = headCommit(repositoryRoot)) {
14
+ const records = (task.dependencyProvenanceRecoveries ?? []).filter(record => record.planIntegrity?.mode === 'navigation-fix-dirty-carryover'
15
+ && (!stepId || record.planIntegrity.stepId === stepId));
16
+ const record = records.at(-1);
17
+ if (!record)
18
+ return { applicable: false, eligible: false, compatibility: null, blockers: [] };
19
+ const binding = record.planIntegrity;
20
+ const blockers = [];
21
+ const require = (condition, message) => { if (!condition)
22
+ blockers.push(message); };
23
+ let requiredActor;
24
+ try {
25
+ const step = task.steps.find(candidate => candidate.id === binding.stepId);
26
+ require(task.status === 'ready' && task.workspaceOwner === 'local', 'Navigation checkpoint requires a ready local Task.');
27
+ require(task.taskBranch && currentBranch(repositoryRoot) === task.taskBranch, 'Navigation checkpoint requires the owned Task branch.');
28
+ require(step?.status === 'planned' && step.evidence === null, 'The checkpoint Step must remain planned without evidence.');
29
+ require(!task.steps.some(candidate => candidate.status === 'in_progress'), 'No Step may be in progress.');
30
+ require(task.systemCommits.includes(record.commitSha)
31
+ && (task.dependencyProvenanceRecoveries ?? []).filter(item => item.commitSha === record.commitSha).length === 1
32
+ && record.packageName === 'codex-workflow-v2'
33
+ && JSON.stringify(record.files) === JSON.stringify(['package-lock.json', 'package.json']), 'The checkpoint must have one exact registered Workflow dependency record.');
34
+ const inspected = inspectBoundedWorkflowDependencyCommit(repositoryRoot, record.commitSha);
35
+ require(inspected?.parentCommitSha === record.parentCommitSha && inspected?.packageVersion === record.packageVersion, 'The checkpoint is not the exact recorded dependency-only commit.');
36
+ require(gitIsAncestor(repositoryRoot, record.commitSha, historyBoundary), 'The checkpoint must precede the assessed history boundary.');
37
+ validateTaskHistory(repositoryRoot, task, historyBoundary);
38
+ const suffix = runGit(repositoryRoot, ['rev-list', '--reverse', `${record.commitSha}..${historyBoundary}`]).split('\n').filter(Boolean);
39
+ let parent = record.commitSha;
40
+ for (const commit of suffix) {
41
+ const inspectedCommit = inspectBoundedWorkflowDependencyCommit(repositoryRoot, commit);
42
+ const matches = (task.dependencyProvenanceRecoveries ?? []).filter(item => item.commitSha === commit);
43
+ require(inspectedCommit?.parentCommitSha === parent && matches.length === 1
44
+ && matches[0].parentCommitSha === parent && matches[0].packageVersion === inspectedCommit?.packageVersion
45
+ && task.systemCommits.includes(commit), 'Checkpoint continuation requires exact registered dependency-only continuity.');
46
+ parent = commit;
47
+ }
48
+ const dirty = changedFiles(repositoryRoot).sort();
49
+ require(dirty.length > 0 && JSON.stringify(dirty) === JSON.stringify([...binding.dirtyFiles].sort())
50
+ && hashDirtyWorktree(repositoryRoot, dirty) === binding.dirtyWorktreeHash, 'Navigation checkpoint dirty paths or bytes changed.');
51
+ if (step) {
52
+ require(dirty.every(file => pathAllowed(file, step.allowedWrites) && !pathAllowed(file, step.forbiddenScope)), 'Checkpoint dirty files must remain inside allowedWrites and outside forbiddenScope.');
53
+ require(step.dependencies.every(id => task.steps.find(item => item.id === id)?.status === 'completed'), 'Checkpoint Step dependencies must be complete.');
54
+ }
55
+ const events = readRemediationEvents(store, task).filter(event => event.stepId === binding.stepId && event.failureKind === 'checks-failed');
56
+ require(events.length > 0 && JSON.stringify(events.map(event => event.eventId)) === JSON.stringify(binding.remediationEventIds), 'Checkpoint remediation IDs must equal the complete ordered native Step check-failure history.');
57
+ const terminal = events.at(-1);
58
+ require(terminal?.failureEvidence.dirtyWorktreeHash === binding.dirtyWorktreeHash
59
+ && terminal?.failureEvidence.completionCommit === record.parentCommitSha, 'The terminal native failure must bind the checkpoint parent and exact dirty bytes.');
60
+ require(terminal && Number.isFinite(Date.parse(record.recordedAt)) && Date.parse(record.recordedAt) >= Date.parse(terminal.recordedAt), 'The checkpoint timestamp must follow its native failure.');
61
+ const root = store.taskRoot(task.projectId, task.id);
62
+ require(task.planHash && task.briefHash && store.hashArtifact(root, 'brief.md') === task.briefHash, 'Current Brief authority does not match its artifact.');
63
+ if (!task.planHash)
64
+ throw new Error('Current Plan is missing.');
65
+ let expected = binding.planHash;
66
+ readVerifiedPlanArtifact(root, expected, task.planHash);
67
+ const planHashes = [expected];
68
+ if (expected !== task.planHash) {
69
+ const start = task.knowledgeRebinds.findIndex(item => item.previousPlanHash === expected);
70
+ require(start >= 0, 'Checkpoint Plan requires an exact Knowledge-rebind chain.');
71
+ let previousTime = Number.NEGATIVE_INFINITY;
72
+ for (const item of start < 0 ? [] : task.knowledgeRebinds.slice(start)) {
73
+ require(item.previousPlanHash === expected && !planHashes.includes(item.reboundPlanHash)
74
+ && Number.isFinite(Date.parse(item.recordedAt)) && Date.parse(item.recordedAt) > previousTime, 'Checkpoint Knowledge-rebind chain forks, cycles, or has invalid timestamps.');
75
+ assertKnowledgeBindingOnlyPlanChange(readVerifiedPlanArtifact(root, item.previousPlanHash, task.planHash), readVerifiedPlanArtifact(root, item.reboundPlanHash, task.planHash));
76
+ expected = item.reboundPlanHash;
77
+ previousTime = Date.parse(item.recordedAt);
78
+ planHashes.push(expected);
79
+ }
80
+ }
81
+ require(expected === task.planHash, 'Checkpoint Plan chain does not terminate at the current Plan.');
82
+ const audit = readCurrentPlanRiskAudit(store, task);
83
+ require(audit && ['approved', 'approved-with-rationale'].includes(audit.audit.decision), 'Current approved Plan Risk Audit is required.');
84
+ const audits = readPlanRiskAuditEvents(store, task);
85
+ const reviews = verifiedHistoricalStepReviewBindings(store, task);
86
+ for (const completed of task.steps.filter(item => item.status === 'completed')) {
87
+ require(completed.evidence, 'Every completed Step must retain execution evidence.');
88
+ const guarded = audits.some(item => item.stepClassifications.some(classification => classification.stepId === completed.id && classification.reviewRequired));
89
+ if (guarded)
90
+ require(completed.evidence && reviews.some(review => review.stepId === completed.id && review.commitSha === completed.evidence.commitSha), 'Completed guarded Step must retain verified strict-review evidence.');
91
+ }
92
+ const selected = planHashes.map(hash => audits.filter(item => item.planHash === hash));
93
+ require(selected.every(matches => matches.length === 1), 'Checkpoint Plan audit chain is missing or ambiguous.');
94
+ if (selected.every(matches => matches.length === 1)) {
95
+ const chain = selected.map(matches => matches[0]);
96
+ require(chain.at(-1)?.eventHash === audit?.audit.eventHash, 'Checkpoint audit chain must reach the current audit.');
97
+ chain.forEach((item, index) => {
98
+ require(item.briefHash === task.briefHash, 'Checkpoint audit Brief authority changed.');
99
+ if (index) {
100
+ const before = chain[index - 1];
101
+ require(item.previousEventHash === before.eventHash && item.planner === before.planner
102
+ && item.auditor !== item.planner && item.decision === before.decision
103
+ && item.splitRationale === before.splitRationale
104
+ && JSON.stringify(item.stepClassifications) === JSON.stringify(before.stepClassifications), 'Checkpoint Plan Risk Audit changed beyond its Knowledge binding.');
105
+ }
106
+ });
107
+ }
108
+ const authorization = [...task.authorizations].reverse().find(item => item.kind === 'execution' && item.decision === 'approved');
109
+ require(authorization && authorization.planHash === task.planHash && authorization.briefHash === task.briefHash
110
+ && authorization.headCommit === authorizationBoundary
111
+ && gitIsAncestor(repositoryRoot, authorizationBoundary, headCommit(repositoryRoot)), 'Current execution authorization must bind the exact Brief, Plan and HEAD.');
112
+ if (!authorization?.mechanicalFeasibility)
113
+ throw new Error('Checkpoint requires current mechanical-feasibility evidence.');
114
+ require(authorization.evidenceHash === hashMechanicalFeasibilityEvidence(authorization.mechanicalFeasibility)
115
+ && authorization.headCommit === authorization.mechanicalFeasibility.evaluatedHead, 'Mechanical-feasibility evidence hash or HEAD does not match authorization.');
116
+ assertMechanicalFeasibilityFresh(repositoryRoot, task, authorization.mechanicalFeasibility, task.briefHash, task.planHash);
117
+ const posture = readTaskC1Posture(store, task);
118
+ const claim = readTaskHandoffEvents(store, task).filter(event => event.eventType === 'claim').at(-1);
119
+ requiredActor = claim?.actor;
120
+ require(posture.state === 'claimed' && claim && posture.claimant === claim.actor
121
+ && planHashes.includes(claim.planHash ?? '') && claim.briefHash === task.briefHash, 'Checkpoint requires its original actor with a current immutable claimed C1 boundary.');
122
+ }
123
+ catch (error) {
124
+ blockers.push(error instanceof Error ? error.message : String(error));
125
+ }
126
+ return { applicable: true, eligible: blockers.length === 0,
127
+ compatibility: blockers.length ? null : { ...structuredClone(binding), planHash: task.planHash },
128
+ blockers: [...new Set(blockers)], ...(requiredActor ? { requiredActor } : {}) };
129
+ }
130
+ //# sourceMappingURL=navigation-dirty-carryover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-dirty-carryover.js","sourceRoot":"","sources":["../../../src/alpha6/navigation-dirty-carryover.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import { changedFiles, headCommit } from '../repository.js';
9
9
  import { hasRequiredSelector, inspectRequiredSelectorContract, parseNpmRunCheck, } from './npm-check-contract.js';
10
10
  import { inspectCheckSupportAnchors } from './check-support-anchor.js';
11
11
  import { inspectFailedCheckComponentOwners, semanticBoundaryHash } from './component-owner.js';
12
- import { readCorrectiveDecisionEvents, readRemediationEvents, } from './remediation.js';
12
+ import { readCorrectiveDecisionEvents, readRemediationEvents, selectPlanIntegrityRemediations, } from './remediation.js';
13
13
  const ROOT_MANIFEST = 'package.json';
14
14
  const TASK_ID = /^TASK-[0-9A-HJKMNP-TV-Z]{26}$/;
15
15
  export function defaultPlanIntegrityRecoveryActor(taskId) {
@@ -29,11 +29,10 @@ export function assessPlanIntegrityRecovery(store, repositoryRoot, task, stepId)
29
29
  if (!step || task.status !== 'needs_fix' || step.status !== 'failed' || !task.planHash) {
30
30
  return { ...base, applicable: false, eligible: false, blockers: [], evidence: null };
31
31
  }
32
- const remediations = readRemediationEvents(store, task).filter((event) => event.stepId === stepId);
32
+ const allRemediations = readRemediationEvents(store, task).filter((event) => event.stepId === stepId);
33
33
  const decisions = readCorrectiveDecisionEvents(store, task).filter((event) => event.stepId === stepId);
34
- if (remediations.length === 0
35
- || remediations.some((event, index) => event.attemptOrdinal !== index + 1 || event.failureKind !== 'checks-failed')
36
- || decisions.length !== 0) {
34
+ const remediations = selectPlanIntegrityRemediations(store, task, allRemediations, decisions);
35
+ if (!remediations || remediations.some(event => event.failureKind !== 'checks-failed')) {
37
36
  return { ...base, applicable: false, eligible: false, blockers: [], evidence: null };
38
37
  }
39
38
  const manifest = inspectRootManifest(repositoryRoot);
@@ -100,6 +99,7 @@ export function assessPlanIntegrityRecovery(store, repositoryRoot, task, stepId)
100
99
  ? inspectFailedCheckComponentOwners({
101
100
  step,
102
101
  scripts: manifest.scripts,
102
+ isTracked: (relativePath) => gitPathExists(repositoryRoot, headCommit(repositoryRoot), relativePath),
103
103
  readFile: (relativePath) => {
104
104
  const inspected = inspectRepositoryFile(repositoryRoot, relativePath);
105
105
  return { content: inspected.content, hash: inspected.hash };
@@ -109,6 +109,8 @@ export function assessPlanIntegrityRecovery(store, repositoryRoot, task, stepId)
109
109
  if (conflicts.length === 0 && supportConflicts.length === 0 && componentOwnerConflicts.length === 0) {
110
110
  return { ...base, applicable: false, eligible: false, blockers: [], evidence: null };
111
111
  }
112
+ if (remediations.length !== allRemediations.length && conflicts.length > 0)
113
+ return { ...base, applicable: false, eligible: false, blockers: [], evidence: null };
112
114
  const files = [...changedFiles(repositoryRoot)].sort();
113
115
  const outsideAllowedWrites = files.filter((file) => !pathAllowed(file, step.allowedWrites));
114
116
  const forbiddenChanges = files.filter((file) => pathAllowed(file, step.forbiddenScope));
@@ -1 +1 @@
1
- {"version":3,"file":"plan-integrity.js","sourceRoot":"","sources":["../../../src/alpha6/plan-integrity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-integrity.js","sourceRoot":"","sources":["../../../src/alpha6/plan-integrity.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { CorrectiveDecisionEvent, CorrectiveDecisionRecoveryEvent, CorrectivePlanAuditInput, GuardedRiskCategory, PlanIntegrityConflictEvidence, RemediationEvent, RemediationCauseBinding, RemediationFailureEvidence, RemediationFailureKind, RemediationMode, RemediationModeRecoveryEvent, StopEscalateOverrideEvent, StopEscalateOverridePreparation, TaskState } from '../contracts.js';
1
+ import type { CorrectiveDecisionEvent, CorrectivePlanAuditInput, GuardedRiskCategory, PlanIntegrityConflictEvidence, RemediationEvent, RemediationCauseBinding, RemediationFailureEvidence, RemediationFailureKind, RemediationMode, RemediationModeRecoveryEvent, StopEscalateOverrideEvent, TaskState } from '../contracts.js';
2
2
  import type { FileStateStore } from '../state/store.js';
3
3
  import { type CurrentPlanRiskAudit } from './plan-risk.js';
4
4
  export declare const REMEDIATION_EVENTS_SIDECAR = "remediation-events.jsonl";
@@ -15,17 +15,6 @@ export interface GuardedRemediationAttemptGate {
15
15
  correctiveDecision: CorrectiveDecisionEvent | null;
16
16
  posture: 'ordinary' | 'decision-required' | 'continue-fix' | 'replan-required' | 'replan-ready' | 'split-required' | 'stop-escalate';
17
17
  }
18
- export interface RemediationModeRecoveryAssessment {
19
- task: TaskState;
20
- remediation: RemediationEvent;
21
- decision: CorrectiveDecisionEvent;
22
- correctiveRecovery: CorrectiveDecisionRecoveryEvent;
23
- existingRecovery: RemediationModeRecoveryEvent | null;
24
- actor: string;
25
- c1ClaimEventHash: string | null;
26
- writerLeaseTokenHash: string | null;
27
- evidenceFingerprint: string;
28
- }
29
18
  export interface PreparedRemediationEvent {
30
19
  event: RemediationEvent;
31
20
  postimage: string | null;
@@ -39,22 +28,18 @@ export declare function readStopEscalateOverrideEvents(store: FileStateStore, ta
39
28
  export declare function stopEscalateOverrideDecisionEventIds(store: FileStateStore, task: TaskState): ReadonlySet<string>;
40
29
  export declare function appendRemediationEvent(store: FileStateStore, task: TaskState, stepId: string, failureKind: RemediationFailureKind, failureEvidence: RemediationFailureEvidence, planRiskAudit: CurrentPlanRiskAudit, now: Date, reboundStopOverrideDecisionEventId?: string | null, causeBindings?: readonly RemediationCauseBinding[]): RemediationEvent;
41
30
  export declare function prepareRemediationEvent(store: FileStateStore, task: TaskState, stepId: string, failureKind: RemediationFailureKind, failureEvidence: RemediationFailureEvidence, planRiskAudit: CurrentPlanRiskAudit, now: Date, reboundStopOverrideDecisionEventId?: string | null, causeBindings?: readonly RemediationCauseBinding[]): PreparedRemediationEvent;
42
- export declare function findRemediationModeRecoveryCandidate(store: FileStateStore, task: TaskState, options?: {
43
- authorityMode?: 'enforce' | 'observe';
44
- }): RemediationModeRecoveryAssessment | null;
45
- export declare function assessRemediationModeRecovery(store: FileStateStore, task: TaskState, stepId: string, actor: string, writerToken: string | null, options?: {
46
- authorityMode?: 'enforce' | 'observe';
47
- }): RemediationModeRecoveryAssessment;
48
- export declare function appendRemediationModeRecovery(store: FileStateStore, task: TaskState, stepId: string, expectedRevision: number, actor: string, writerToken: string | null, now: Date): RemediationModeRecoveryEvent;
49
31
  export declare function appendCorrectiveDecisionEvent(store: FileStateStore, task: TaskState, stepId: string, correctiveAudit: CorrectivePlanAuditInput, planRiskAudit: CurrentPlanRiskAudit, planHash: string, now: Date): CorrectiveDecisionEvent;
50
- export declare function prepareStopEscalateOverride(store: FileStateStore, task: TaskState, stepId: string, expectedRevision: number, actor: string, reason: string, headCommit: string): StopEscalateOverridePreparation;
51
- export declare function appendStopEscalateOverride(store: FileStateStore, task: TaskState, stepId: string, expectedRevision: number, actor: string, reason: string, headCommit: string, confirmationCode: string, now: Date): StopEscalateOverrideEvent;
52
32
  export declare function appendPlanIntegrityRecoveryDecision(store: FileStateStore, task: TaskState, stepId: string, auditor: string, evidence: PlanIntegrityConflictEvidence, now: Date): CorrectiveDecisionEvent;
53
33
  export declare function assertGuardedRemediationAttemptAllowed(store: FileStateStore, task: TaskState, stepId: string, planRiskAudit: CurrentPlanRiskAudit, recoveredDecisionEventId?: string | null, reboundStopOverrideDecisionEventId?: string | null): GuardedRemediationAttemptGate;
54
34
  export declare function readGuardedRemediationPostureForStep(store: FileStateStore, task: TaskState, stepId: string, planRiskAudit: CurrentPlanRiskAudit): GuardedRemediationAttemptGate | null;
35
+ /** Scope mechanical support evidence only; global corrective authority is never discarded. */
36
+ export declare function selectPlanIntegrityRemediations(store: FileStateStore, task: TaskState, events: readonly RemediationEvent[], decisions: readonly CorrectiveDecisionEvent[], canonicalPlanHash?: string | null): RemediationEvent[] | null;
55
37
  export declare function deriveCurrentCauseDecisionForTask(store: FileStateStore, task: TaskState, stepId: string, remediationEvents: readonly RemediationEvent[]): 'same-task-fix' | 'root-cause-replan' | null;
56
38
  export declare function findCurrentGuardedRemediationPosture(store: FileStateStore, task: TaskState, planRiskAudit: CurrentPlanRiskAudit): GuardedRemediationAttemptGate | null;
57
39
  export declare function findFailedGuardedStepRequiringCorrectiveDecision(store: FileStateStore, task: TaskState, planRiskAudit: CurrentPlanRiskAudit): GuardedRemediationAttemptGate | null;
58
40
  export declare function deriveCurrentCauseDecision(remediationEvents: readonly RemediationEvent[], priorRemediationEvents?: readonly RemediationEvent[]): 'same-task-fix' | 'root-cause-replan' | null;
59
41
  export declare function deriveRollingCauseDecision(remediationEvents: readonly RemediationEvent[], priorRemediationEvents?: readonly RemediationEvent[]): 'same-task-fix' | 'root-cause-replan' | null;
42
+ /** A validated support decision survives only a hash-verified Knowledge-only Plan chain.
43
+ * This preserves scope evidence, never execution authorization or a semantic replan. */
44
+ export declare function isKnowledgeReboundSupportDecision(store: FileStateStore, task: TaskState, event: CorrectiveDecisionEvent): boolean;
60
45
  export declare function effectiveStepAllowedWrites(store: FileStateStore, task: TaskState, stepId: string): string[];