codex-workflow-v2 2.0.0-beta.11 → 2.0.0-beta.12.1

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 (45) hide show
  1. package/README.md +7 -6
  2. package/dist/src/alpha6/remediation.d.ts +7 -2
  3. package/dist/src/alpha6/remediation.js +361 -64
  4. package/dist/src/alpha6/remediation.js.map +1 -1
  5. package/dist/src/alpha6/review.d.ts +5 -0
  6. package/dist/src/alpha6/review.js +110 -2
  7. package/dist/src/alpha6/review.js.map +1 -1
  8. package/dist/src/cli.js +19 -1
  9. package/dist/src/cli.js.map +1 -1
  10. package/dist/src/contracts.d.ts +55 -0
  11. package/dist/src/dependency-provenance.js +5 -3
  12. package/dist/src/dependency-provenance.js.map +1 -1
  13. package/dist/src/reviewer.d.ts +26 -0
  14. package/dist/src/reviewer.js +54 -1
  15. package/dist/src/reviewer.js.map +1 -1
  16. package/dist/src/version.d.ts +1 -1
  17. package/dist/src/version.js +1 -1
  18. package/dist/src/version.js.map +1 -1
  19. package/dist/src/workflow.d.ts +4 -1
  20. package/dist/src/workflow.js +163 -71
  21. package/dist/src/workflow.js.map +1 -1
  22. package/docs/autonomy-guardrails.md +43 -34
  23. package/docs/decisions.md +5 -4
  24. package/docs/delegated-approval.md +5 -4
  25. package/docs/development-flow.md +7 -6
  26. package/docs/lifecycle/state-machine-stabilization.md +1 -1
  27. package/docs/pdf/codex-workflow-v2-architecture-ru.pdf +0 -0
  28. package/docs/pdf/codex-workflow-v2-chat-only-guide-ru.pdf +0 -0
  29. package/docs/pdf/codex-workflow-v2-technical-reference-ru.pdf +0 -0
  30. package/docs/pdf/sources/codex-workflow-v2-architecture-ru.md +21 -9
  31. package/docs/pdf/sources/codex-workflow-v2-chat-only-guide-ru.md +15 -13
  32. package/docs/pdf/sources/codex-workflow-v2-technical-reference-ru.md +39 -24
  33. package/docs/release.md +8 -1
  34. package/docs/updating-existing-project.md +25 -0
  35. package/docs/validation-report.md +90 -115
  36. package/package.json +1 -1
  37. package/plugins/codex-workflow-gateway/.codex-plugin/plugin.json +1 -1
  38. package/plugins/codex-workflow-gateway/references/protocol.md +27 -8
  39. package/plugins/codex-workflow-gateway/skills/codex-workflow-gateway/SKILL.md +23 -3
  40. package/references/state-machine.md +9 -8
  41. package/references/validation-and-review.md +11 -4
  42. package/schemas/review-result.schema.json +17 -1
  43. package/schemas/step-review-event.schema.json +15 -0
  44. package/schemas/stop-escalate-override-event.schema.json +45 -0
  45. package/scripts/generate-pdf-docs.py +2 -1
@@ -29,6 +29,22 @@ const REVIEW_SCHEMA = {
29
29
  summary: { type: 'string', minLength: 1 },
30
30
  evidence: { type: 'string', minLength: 1 },
31
31
  requiredAction: { type: 'string', minLength: 1 },
32
+ route: { enum: ['fix', 'replan'] },
33
+ planConflict: {
34
+ anyOf: [
35
+ { type: 'null' },
36
+ {
37
+ type: 'object',
38
+ additionalProperties: false,
39
+ required: ['planClause', 'whyFixCannotFit', 'minimalPlanChange'],
40
+ properties: {
41
+ planClause: { type: 'string', minLength: 1 },
42
+ whyFixCannotFit: { type: 'string', minLength: 1 },
43
+ minimalPlanChange: { type: 'string', minLength: 1 },
44
+ },
45
+ },
46
+ ],
47
+ },
32
48
  },
33
49
  },
34
50
  },
@@ -47,6 +63,7 @@ export function launchStrictReviewer(repositoryRoot, task, taskRoot, envelope, r
47
63
  'Act only as the independent reviewer described by the context envelope.',
48
64
  'Before reviewing, attempt to create .codex-reviewer-write-probe in the repository.',
49
65
  'The attempt must be denied by the sandbox. Report isolationProbe="denied" only when it was denied.',
66
+ 'For each finding use route="fix" by default. Use route="replan" only when the current Plan prevents the required correction, and include the exact planConflict proof.',
50
67
  'Do not modify any repository file. Return only the requested JSON result.',
51
68
  ],
52
69
  envelope,
@@ -145,6 +162,7 @@ export function prepareExternalStrictTaskReviewPacket(repositoryRoot, task, task
145
162
  instruction: [
146
163
  'Act only as the independent reviewer described by the context envelope.',
147
164
  'Review the supplied Task result and bind every finding to reviewedCommit.',
165
+ 'For each finding use route="fix" by default. Use route="replan" only with an exact Plan clause, obstruction, and minimal Plan change.',
148
166
  'Do not modify any repository or Workflow state. Return one ReviewInput JSON object.',
149
167
  ],
150
168
  envelope,
@@ -176,6 +194,7 @@ function strictStepReviewPayload(repositoryRoot, task, taskRoot, envelope, step,
176
194
  instruction: [
177
195
  'Act only as the independent reviewer described by the context envelope.',
178
196
  'Review only the supplied Task Step and bind findings to reviewedCommit.',
197
+ 'For each finding set route="fix" unless the required correction cannot fit the current Plan. Use route="replan" only with an exact planConflict naming the Plan clause, why a fix cannot fit, and the minimal Plan change.',
179
198
  'Do not modify any repository or Workflow state. Return one ReviewInput JSON object.',
180
199
  ],
181
200
  envelope,
@@ -238,7 +257,7 @@ function validateExternalReviewEnvelope(value, expected) {
238
257
  throw new Error('invalid external strict review');
239
258
  }
240
259
  const findings = review.findings.map((candidate) => {
241
- if (!isExactRecord(candidate, ['id', 'severity', 'requirement', 'summary', 'evidence', 'requiredAction'])
260
+ if (!isReviewFindingRecord(candidate)
242
261
  || typeof candidate.id !== 'string' || !candidate.id.trim()
243
262
  || !['critical', 'major', 'minor'].includes(String(candidate.severity))
244
263
  || (candidate.requirement !== null && typeof candidate.requirement !== 'string')
@@ -247,6 +266,10 @@ function validateExternalReviewEnvelope(value, expected) {
247
266
  || typeof candidate.requiredAction !== 'string' || !candidate.requiredAction.trim()) {
248
267
  throw new Error('invalid external strict review finding');
249
268
  }
269
+ const route = (candidate.route === undefined ? 'fix' : candidate.route);
270
+ if (route !== 'fix' && route !== 'replan')
271
+ throw new Error('invalid external strict review finding route');
272
+ const planConflict = validatePlanConflict(candidate.planConflict, route);
250
273
  return {
251
274
  id: candidate.id,
252
275
  severity: candidate.severity,
@@ -254,6 +277,8 @@ function validateExternalReviewEnvelope(value, expected) {
254
277
  summary: candidate.summary,
255
278
  evidence: candidate.evidence,
256
279
  requiredAction: candidate.requiredAction,
280
+ route,
281
+ planConflict,
257
282
  };
258
283
  });
259
284
  if ((review.status === 'passed' && findings.length > 0) || (review.status === 'failed' && findings.length === 0)) {
@@ -266,6 +291,34 @@ function validateExternalReviewEnvelope(value, expected) {
266
291
  findings,
267
292
  };
268
293
  }
294
+ function isReviewFindingRecord(value) {
295
+ if (!value || typeof value !== 'object' || Array.isArray(value))
296
+ return false;
297
+ const required = ['id', 'severity', 'requirement', 'summary', 'evidence', 'requiredAction'];
298
+ const allowed = new Set([...required, 'route', 'planConflict']);
299
+ return required.every((key) => key in value)
300
+ && Object.keys(value).every((key) => allowed.has(key));
301
+ }
302
+ function validatePlanConflict(value, route) {
303
+ if (route === 'fix') {
304
+ if (value !== undefined && value !== null)
305
+ throw new Error('fix findings cannot carry planConflict');
306
+ return null;
307
+ }
308
+ if (!isExactRecord(value, ['planClause', 'whyFixCannotFit', 'minimalPlanChange'])) {
309
+ throw new Error('replan findings require an exact planConflict');
310
+ }
311
+ for (const key of ['planClause', 'whyFixCannotFit', 'minimalPlanChange']) {
312
+ if (typeof value[key] !== 'string' || !value[key].trim()) {
313
+ throw new Error('replan findings require non-empty planConflict fields');
314
+ }
315
+ }
316
+ return {
317
+ planClause: value.planClause,
318
+ whyFixCannotFit: value.whyFixCannotFit,
319
+ minimalPlanChange: value.minimalPlanChange,
320
+ };
321
+ }
269
322
  function isExactRecord(value, keys) {
270
323
  if (!value || typeof value !== 'object' || Array.isArray(value))
271
324
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"reviewer.js","sourceRoot":"","sources":["../../src/reviewer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewer.js","sourceRoot":"","sources":["../../src/reviewer.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  export declare const PACKAGE_NAME = "codex-workflow-v2";
2
- export declare const PACKAGE_VERSION = "2.0.0-beta.11";
2
+ export declare const PACKAGE_VERSION = "2.0.0-beta.12.1";
@@ -1,3 +1,3 @@
1
1
  export const PACKAGE_NAME = 'codex-workflow-v2';
2
- export const PACKAGE_VERSION = '2.0.0-beta.11';
2
+ export const PACKAGE_VERSION = '2.0.0-beta.12.1';
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,mBAAmB,CAAC;AAChD,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,mBAAmB,CAAC;AAChD,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type AdoptionPostureEvent, type ContextEnvelope, type CorrectivePlanAuditInput, type DependencyProvenanceRecoveryPreflight, type DelegationGrant, type DelegationGrantGate, type DelegationPolicyInput, type DiscoveryState, type MilestonePlanInput, type MilestoneProgressProjection, type MilestoneState, type KnowledgeSelection, type GraphBinding, type GraphKind, type GraphMode, type GraphRefreshEvidence, type GraphRefreshRequest, type PlanRiskAuditEvent, type PublicWriterLease, type PublicWriterLeaseDiagnostic, type PublicWriterLeaseRepairResult, type ProjectKnowledgeMap, type ReviewInput, type TaskPlanInput, type TaskContextRefreshResult, type TaskState, type UpdatePreflightResult, type WriterCredentialResult, type WriterCredentialStatus, type WorkflowObservation, type WorkflowRole, type WorkspaceOwner } from './contracts.js';
1
+ import { type AdoptionPostureEvent, type ContextEnvelope, type CorrectivePlanAuditInput, type DependencyProvenanceRecoveryPreflight, type DelegationGrant, type DelegationGrantGate, type DelegationPolicyInput, type DiscoveryState, type MilestonePlanInput, type MilestoneProgressProjection, type MilestoneState, type KnowledgeSelection, type GraphBinding, type GraphKind, type GraphMode, type GraphRefreshEvidence, type GraphRefreshRequest, type PlanRiskAuditEvent, type PublicWriterLease, type PublicWriterLeaseDiagnostic, type PublicWriterLeaseRepairResult, type ProjectKnowledgeMap, type ReviewInput, type StopEscalateOverrideEvent, type StopEscalateOverridePreparation, type TaskPlanInput, type TaskContextRefreshResult, type TaskState, type UpdatePreflightResult, type WriterCredentialResult, type WriterCredentialStatus, type WorkflowObservation, type WorkflowRole, type WorkspaceOwner } from './contracts.js';
2
2
  import { appendTaskClaim, appendTaskHandback, readTaskC1Posture } from './alpha6/handoff.js';
3
3
  import { type AdoptionPreparation } from './alpha6/adoption.js';
4
4
  import { type RecordPlanRiskAuditInput } from './alpha6/plan-risk.js';
@@ -99,6 +99,8 @@ export declare class WorkflowService {
99
99
  constructor(store?: FileStateStore, now?: () => Date);
100
100
  inspectWriterLease(repository: string, entityId: string): PublicWriterLeaseDiagnostic | null;
101
101
  repairStaleWriterLease(repository: string, entityId: string): PublicWriterLeaseRepairResult;
102
+ prepareTaskStopOverride(repository: string, taskId: string, stepId: string, expectedRevision: number, actor: string, reason: string): StopEscalateOverridePreparation;
103
+ applyTaskStopOverride(repository: string, taskId: string, stepId: string, expectedRevision: number, actor: string, reason: string, confirmationCode: string): StopEscalateOverrideEvent;
102
104
  prepareCorrectiveReplan(repository: string, taskId: string, candidate: CorrectiveReplanPublicCandidate): CorrectiveReplanHumanGateResult;
103
105
  confirmCorrectiveReplan(repository: string, taskId: string, candidate: CorrectiveReplanPublicCandidate, gate: CorrectiveReplanHumanGate, confirmationCode: string): CorrectiveReplanPublicCredential;
104
106
  executeCorrectiveReplan(repository: string, taskId: string, candidate: CorrectiveReplanPublicCandidate, credential: CorrectiveReplanPublicCredential): CorrectiveReplanExecutionResult;
@@ -246,6 +248,7 @@ export declare class WorkflowService {
246
248
  private assertTaskContextChangeAllowed;
247
249
  private taskHasTerminalCorrectiveDecision;
248
250
  private taskTerminalCorrectivePosture;
251
+ private assertStopOverrideRepositoryBoundary;
249
252
  private delegatedApprovalOptions;
250
253
  private delegatedContextRefreshOptions;
251
254
  private findDelegatedContextRefreshOwner;
@@ -13,12 +13,12 @@ import { inspectLocalDependency, inspectWorkflowVersions } from './diagnostics.j
13
13
  import { appendTaskClaim, appendTaskHandback, appendTaskHandoff, appendTaskWriterCredentialReplacement, assertTaskClaimAllowed, assertTaskMutationAllowedByC1, defaultTaskWorkerActor, readTaskC1Posture, } from './alpha6/handoff.js';
14
14
  import { applyAdoptionPosture, assertAdoptionBaselinePreserved, buildAdoptionPreparation, initializeProjectRegistrationAdoption, readCurrentAdoptionPosture, } from './alpha6/adoption.js';
15
15
  import { appendCurrentPlanRiskAudit, appendReboundPlanRiskAudit, readCurrentPlanRiskAudit, validatePlanRiskAuditCandidate, } from './alpha6/plan-risk.js';
16
- import { appendCorrectiveDecisionEvent, appendPlanIntegrityRecoveryDecision, appendRemediationEvent, appendRemediationModeRecovery, assertCorrectiveAuditorIndependence, assertGuardedRemediationAttemptAllowed, defaultCorrectiveAuditorActor, findCurrentGuardedRemediationPosture, findRemediationModeRecoveryCandidate, findFailedGuardedStepRequiringCorrectiveDecision, readGuardedRemediationPostureForStep, readCorrectiveDecisionEvents, readRemediationEvents, } from './alpha6/remediation.js';
16
+ import { appendCorrectiveDecisionEvent, appendPlanIntegrityRecoveryDecision, appendRemediationEvent, appendRemediationModeRecovery, appendStopEscalateOverride, assertCorrectiveAuditorIndependence, assertGuardedRemediationAttemptAllowed, defaultCorrectiveAuditorActor, findCurrentGuardedRemediationPosture, findRemediationModeRecoveryCandidate, findFailedGuardedStepRequiringCorrectiveDecision, readGuardedRemediationPostureForStep, readCorrectiveDecisionEvents, readRemediationEvents, prepareStopEscalateOverride, stopEscalateOverrideDecisionEventIds, } from './alpha6/remediation.js';
17
17
  import { assessPlanIntegrityRecovery, defaultPlanIntegrityRecoveryActor, } from './alpha6/plan-integrity.js';
18
18
  import { assertMechanicalFeasibilityFresh, evaluateMechanicalFeasibility, hashMechanicalFeasibilityEvidence, } from './alpha6/mechanical-feasibility.js';
19
19
  import { assessMilestoneInitialAssembly, applyInitialMilestonePlanTransaction, applyMilestoneScopeChangeTransaction, assertMilestoneDependenciesDeclared, assertMilestoneTaskRunnable, assessMilestoneTaskDependencies, assertMilestoneMembershipIntegrity, assertMilestoneScopeChangeStatusAllowed, inspectMilestoneWithIntegrity, normalizeMilestonePlan, prepareMilestoneScopeChangeCandidate, prepareMilestoneScopeChangeBundle, readMilestoneForScopeChange, readMilestoneWithIntegrity, } from './alpha6/milestone.js';
20
20
  import { applyProjectTransaction, recoverProjectTransactions, runRollbackProjectTransaction, } from './beta1/project-transaction.js';
21
- import { buildCurrentStrictStepReviewCycle, countUnverifiedStrictStepReviews, ensurePendingStrictStepReview, isStepReviewRequired, latestPassedVerifiedStepReviewEvent, recordStrictStepReview, verifiedHistoricalStepReviewCommits, } from './alpha6/review.js';
21
+ import { buildCurrentStrictStepReviewCycle, countUnverifiedStrictStepReviews, ensurePendingStrictStepReview, isStepReviewRequired, latestFailedStepReviewRouting, latestPassedVerifiedStepReviewEvent, recordStrictStepReview, verifiedHistoricalStepReviewCommits, } from './alpha6/review.js';
22
22
  import { applyMilestoneAutonomyContract, assertAutonomousPlanEvolution, prepareMilestoneAutonomyContract, readMilestoneAutonomyEvents, requireActiveMilestoneAutonomy, } from './alpha7/autonomy.js';
23
23
  import { appendCorrectiveDecisionRecovery, readValidatedCorrectiveDecisionRecoveryForNavigation, requireCorrectiveDecisionRecoveryForRun, } from './alpha7/corrective-recovery.js';
24
24
  import { applyKnowledgeSelections, hashKnowledgeMap, inspectKnowledgeMap, normalizeRelativePath, reconcileKnowledgeMap, scanProjectKnowledge, selectKnowledgeSources, } from './memory.js';
@@ -110,6 +110,31 @@ export class WorkflowService {
110
110
  repaired: true,
111
111
  };
112
112
  }
113
+ prepareTaskStopOverride(repository, taskId, stepId, expectedRevision, actor, reason) {
114
+ const snapshot = this.observationSnapshot(repository);
115
+ if (snapshot.observation.kind !== 'assessment') {
116
+ throw new WorkflowError('TRANSITION_BLOCKED', 'Stop override requires a coherent observation boundary.', {
117
+ observation: snapshot.observation,
118
+ });
119
+ }
120
+ const task = snapshot.tasks.find((candidate) => candidate.id === taskId) ?? null;
121
+ if (!task)
122
+ throw new WorkflowError('NOT_FOUND', `Task ${taskId} was not found in this repository.`);
123
+ this.assertStopOverrideRepositoryBoundary(snapshot.identity, task);
124
+ return prepareStopEscalateOverride(this.store, task, stepId, expectedRevision, actor, reason, headCommit(snapshot.identity.repositoryRoot));
125
+ }
126
+ applyTaskStopOverride(repository, taskId, stepId, expectedRevision, actor, reason, confirmationCode) {
127
+ const snapshot = this.observationSnapshot(repository);
128
+ if (snapshot.observation.kind !== 'assessment') {
129
+ throw new WorkflowError('TRANSITION_BLOCKED', 'Stop override requires a coherent observation boundary.', {
130
+ observation: snapshot.observation,
131
+ });
132
+ }
133
+ const context = this.#mutationContext(repository);
134
+ const task = context.store.readTask(context.identity.projectId, taskId);
135
+ this.assertStopOverrideRepositoryBoundary(context.identity, task, context.locks.list());
136
+ return appendStopEscalateOverride(context.store, task, stepId, expectedRevision, actor, reason, headCommit(context.identity.repositoryRoot), confirmationCode, this.now());
137
+ }
113
138
  prepareCorrectiveReplan(repository, taskId, candidate) {
114
139
  return this.correctiveReplanController(repository).prepare({ taskId, candidate });
115
140
  }
@@ -1038,7 +1063,9 @@ export class WorkflowService {
1038
1063
  const passedBoundary = latestPassedVerifiedStepReviewEvent(this.store, task, event.stepId);
1039
1064
  return !passedBoundary || passedBoundary.recordedAt <= event.recordedAt;
1040
1065
  });
1041
- const currentHardBlockingDecisions = currentPlanCorrectiveDecisions.filter((event) => event.decision === 'split-required' || event.decision === 'stop-escalate');
1066
+ const overriddenStopDecisionEventIds = stopEscalateOverrideDecisionEventIds(this.store, task);
1067
+ const currentHardBlockingDecisions = currentPlanCorrectiveDecisions.filter((event) => event.decision === 'split-required'
1068
+ || (event.decision === 'stop-escalate' && !overriddenStopDecisionEventIds.has(event.eventId)));
1042
1069
  const currentPlanRiskAudit = task.status === 'needs_fix' || currentReplanDecisions.length > 0
1043
1070
  ? readCurrentPlanRiskAudit(this.store, task)
1044
1071
  : null;
@@ -1105,9 +1132,6 @@ export class WorkflowService {
1105
1132
  });
1106
1133
  }
1107
1134
  const failedReviewAttempts = countFailedReviewAttempts(this.store.taskRoot(identity.projectId, taskId));
1108
- if (task.status === 'needs_fix' && task.review.status === 'failed' && failedReviewAttempts >= 2) {
1109
- validateCorrectivePlanAudit(task, correctiveAudit, failedReviewAttempts);
1110
- }
1111
1135
  const guardedRemediationGate = task.status === 'needs_fix' && currentPlanRiskAudit
1112
1136
  ? findFailedGuardedStepRequiringCorrectiveDecision(this.store, task, currentPlanRiskAudit)
1113
1137
  : null;
@@ -1145,6 +1169,23 @@ export class WorkflowService {
1145
1169
  throw new WorkflowError('TRANSITION_BLOCKED', `Plan omits Task acceptance ${acceptance}.`);
1146
1170
  }
1147
1171
  }
1172
+ if (task.planHash && task.status === 'needs_fix') {
1173
+ if (task.planObjective !== null && plan.objective !== task.planObjective) {
1174
+ throw new WorkflowError('TRANSITION_BLOCKED', 'Remediation may change the implementation Plan but not the Task objective.', {
1175
+ taskId: task.id,
1176
+ currentObjective: task.planObjective,
1177
+ requestedObjective: plan.objective,
1178
+ requiredAction: 'Obtain an explicit Task scope decision instead of changing the objective through remediation.',
1179
+ });
1180
+ }
1181
+ if (JSON.stringify(plan.requirements) !== JSON.stringify(task.requirements)
1182
+ || JSON.stringify(plan.acceptance) !== JSON.stringify(task.acceptance)) {
1183
+ throw new WorkflowError('TRANSITION_BLOCKED', 'Remediation cannot change Task requirements or acceptance.', {
1184
+ taskId: task.id,
1185
+ requiredAction: 'Obtain an explicit Task scope decision; replan may change only implementation Steps.',
1186
+ });
1187
+ }
1188
+ }
1148
1189
  const root = this.store.taskRoot(identity.projectId, taskId);
1149
1190
  const preparedPlan = prepareCorrectiveReplanCandidate(task, plan);
1150
1191
  const authorizations = task.authorizations.map((authorization) => authorization.kind === 'execution' && authorization.decision === 'approved'
@@ -1744,8 +1785,11 @@ export class WorkflowService {
1744
1785
  throw new WorkflowError('TRANSITION_BLOCKED', `Task ${taskId} cannot run a Step while ${task.status}.`);
1745
1786
  }
1746
1787
  this.assertExecutionAuthorizationFresh(task, context.identity.repositoryRoot);
1788
+ const overriddenStopDecisionEventIds = stopEscalateOverrideDecisionEventIds(this.store, task);
1747
1789
  const currentPlanBlockingDecisions = readCorrectiveDecisionEvents(this.store, task)
1748
- .filter((event) => event.planHash === task.planHash && event.decision !== 'continue-fix');
1790
+ .filter((event) => event.planHash === task.planHash
1791
+ && event.decision !== 'continue-fix'
1792
+ && !(event.decision === 'stop-escalate' && overriddenStopDecisionEventIds.has(event.eventId)));
1749
1793
  if (currentPlanBlockingDecisions.length > 0) {
1750
1794
  throw new WorkflowError('TRANSITION_BLOCKED', `Task ${taskId} cannot run any Step while the current Plan has active blocking corrective decisions.`, {
1751
1795
  taskId,
@@ -3658,7 +3702,6 @@ export class WorkflowService {
3658
3702
  const delegatedApprovalOptions = transition
3659
3703
  ? this.delegatedApprovalOptions(projectId, transition, task)
3660
3704
  : [];
3661
- const failedReviewAttempts = countFailedReviewAttempts(this.store.taskRoot(projectId, task.id));
3662
3705
  let remediationModeRecovery = null;
3663
3706
  let guardedCorrectivePosture = null;
3664
3707
  if (planRiskAudit) {
@@ -3735,6 +3778,9 @@ export class WorkflowService {
3735
3778
  }
3736
3779
  const handoffPosture = readTaskC1Posture(this.store, task);
3737
3780
  const failedStep = task.steps.find((step) => step.status === 'failed') ?? null;
3781
+ const failedStepReviewRouting = failedStep
3782
+ ? latestFailedStepReviewRouting(this.store, task, failedStep.id)
3783
+ : null;
3738
3784
  const planIntegrityAssessment = !remediationModeRecovery && planRiskAudit && failedStep
3739
3785
  ? assessPlanIntegrityRecovery(this.store, repositoryRoot, task, failedStep.id)
3740
3786
  : null;
@@ -3964,21 +4010,6 @@ export class WorkflowService {
3964
4010
  },
3965
4011
  };
3966
4012
  break;
3967
- case 'hard-stop':
3968
- guardedCorrectiveOverlay = {
3969
- action: 'task corrective-decision',
3970
- stepId: guardedCorrectivePosture.stepId,
3971
- correctiveDecisionGate: {
3972
- attemptCount: guardedCorrectivePosture.attemptCount,
3973
- recommendedAuditor: defaultCorrectiveAuditorActor(task.id),
3974
- auditorDerived: true,
3975
- auditorMustDifferFromLatestStrictReviewer: true,
3976
- allowedDecisions: ['split-required', 'stop-escalate'],
3977
- hardStop: true,
3978
- humanApprovalRequired: false,
3979
- },
3980
- };
3981
- break;
3982
4013
  case 'replan-required':
3983
4014
  guardedCorrectiveOverlay = correctiveReplanOverlay(guardedCorrectivePosture);
3984
4015
  break;
@@ -4038,16 +4069,50 @@ export class WorkflowService {
4038
4069
  }
4039
4070
  break;
4040
4071
  case 'stop-escalate':
4041
- guardedCorrectiveOverlay = {
4042
- action: 'doctor',
4043
- stepId: guardedCorrectivePosture.stepId,
4044
- correctiveDecisionGate: {
4045
- attemptCount: guardedCorrectivePosture.attemptCount,
4046
- decision: guardedCorrectivePosture.correctiveDecision?.decision ?? null,
4047
- decisionEventId: guardedCorrectivePosture.correctiveDecision?.eventId ?? null,
4048
- humanApprovalRequired: false,
4049
- },
4050
- };
4072
+ try {
4073
+ this.assertStopOverrideRepositoryBoundary(resolveRepositoryIdentity(repositoryRoot), task);
4074
+ prepareStopEscalateOverride(this.store, task, guardedCorrectivePosture.stepId, task.revision, 'user', 'navigation eligibility probe', headCommit(repositoryRoot));
4075
+ guardedCorrectiveOverlay = {
4076
+ action: 'task stop-override-prepare',
4077
+ blockedAction: 'task run',
4078
+ stepId: guardedCorrectivePosture.stepId,
4079
+ correctiveDecisionGate: {
4080
+ attemptCount: guardedCorrectivePosture.attemptCount,
4081
+ decision: guardedCorrectivePosture.correctiveDecision?.decision ?? null,
4082
+ decisionEventId: guardedCorrectivePosture.correctiveDecision?.eventId ?? null,
4083
+ humanApprovalRequired: true,
4084
+ delegatedApprovalAllowed: false,
4085
+ },
4086
+ stopOverride: {
4087
+ state: 'eligible',
4088
+ policy: 'beta11-attempt4-stop-compatibility-v1',
4089
+ prepareCommand: 'task stop-override-prepare',
4090
+ applyCommand: 'task stop-override-apply',
4091
+ expectedRevision: task.revision,
4092
+ appendOnly: true,
4093
+ preservesOriginalDecision: true,
4094
+ requiredAction: 'Prepare with an explicit human actor and reason, then apply the exact confirmation code in a later user turn.',
4095
+ },
4096
+ };
4097
+ }
4098
+ catch (error) {
4099
+ guardedCorrectiveOverlay = {
4100
+ action: 'doctor',
4101
+ blockedAction: 'task stop-override-prepare',
4102
+ stepId: guardedCorrectivePosture.stepId,
4103
+ correctiveDecisionGate: {
4104
+ attemptCount: guardedCorrectivePosture.attemptCount,
4105
+ decision: guardedCorrectivePosture.correctiveDecision?.decision ?? null,
4106
+ decisionEventId: guardedCorrectivePosture.correctiveDecision?.eventId ?? null,
4107
+ humanApprovalRequired: true,
4108
+ },
4109
+ stopOverride: {
4110
+ state: 'blocked',
4111
+ policy: 'beta11-attempt4-stop-compatibility-v1',
4112
+ reason: error instanceof Error ? error.message : String(error),
4113
+ },
4114
+ };
4115
+ }
4051
4116
  break;
4052
4117
  default:
4053
4118
  break;
@@ -4105,19 +4170,20 @@ export class WorkflowService {
4105
4170
  },
4106
4171
  }
4107
4172
  : {}),
4108
- ...(task.status === 'needs_fix' && task.review.status === 'failed' && failedReviewAttempts >= 2
4173
+ ...guardedCorrectiveOverlay,
4174
+ ...(failedStepReviewRouting?.route === 'replan' && next.action === 'task run'
4109
4175
  ? {
4110
- action: 'task plan-set with independent corrective audit',
4111
- correctivePlanGate: {
4112
- failedReviewAttempts,
4113
- auditFileRequired: true,
4114
- auditorMustDifferFromFailedReviewer: true,
4115
- allowedDecision: 'continue-fix',
4116
- escalationDecisions: ['replan-required', 'split-required', 'stop-escalate'],
4176
+ action: 'task plan-set',
4177
+ blockedAction: 'task run',
4178
+ reviewRemediation: {
4179
+ route: 'replan',
4180
+ source: 'strict-step-review',
4181
+ stepId: failedStep?.id ?? null,
4182
+ planConflicts: failedStepReviewRouting.planConflicts,
4183
+ boundary: 'Task objective, requirements, and acceptance remain immutable; only implementation Steps may change.',
4117
4184
  },
4118
4185
  }
4119
4186
  : {}),
4120
- ...guardedCorrectiveOverlay,
4121
4187
  ...mechanicalFeasibilityOverlay,
4122
4188
  ...(delegatedApprovalOptions.length > 0 ? { delegatedApprovalOptions } : {}),
4123
4189
  };
@@ -4128,7 +4194,7 @@ export class WorkflowService {
4128
4194
  blockedAction: next.action,
4129
4195
  });
4130
4196
  }
4131
- const navigableResult = ['task plan-set', 'task plan-set with independent corrective audit']
4197
+ const navigableResult = ['task plan-set']
4132
4198
  .includes(String(result.action))
4133
4199
  ? {
4134
4200
  ...result,
@@ -4182,6 +4248,42 @@ export class WorkflowService {
4182
4248
  ? posture
4183
4249
  : null;
4184
4250
  }
4251
+ assertStopOverrideRepositoryBoundary(identity, task, observedLeases) {
4252
+ const blockers = [];
4253
+ const dirty = changedFiles(identity.repositoryRoot);
4254
+ if (dirty.length > 0)
4255
+ blockers.push('Repository checkout must be clean.');
4256
+ if (task.workspaceOwner !== 'local')
4257
+ blockers.push('Stop override is limited to a local Task workspace.');
4258
+ if (!task.taskBranch || currentBranch(identity.repositoryRoot) !== task.taskBranch) {
4259
+ blockers.push('The current branch must be the recorded Task branch.');
4260
+ }
4261
+ if (task.steps.some((step) => step.status === 'in_progress'))
4262
+ blockers.push('No Step may be in progress.');
4263
+ const leases = observedLeases
4264
+ ?? new WriterLockManager(this.store.lockRoot(identity.projectId), this.now, this.store.root).list();
4265
+ if (leases.some((lease) => lease.entityId === task.id))
4266
+ blockers.push('No active or stale Task writer lease may exist.');
4267
+ const projectRoot = this.store.projectRoot(identity.projectId);
4268
+ const replanTransactions = inspectCorrectiveReplanTaskTransactions(projectRoot, this.store.root);
4269
+ const yieldTransactions = inspectCorrectiveYieldTaskTransactions(projectRoot, this.store.root);
4270
+ if (replanTransactions.pending.some((transaction) => transaction.taskId === task.id)
4271
+ || replanTransactions.corrupt.some((transaction) => transaction.taskId === task.id)
4272
+ || yieldTransactions.pending.some((transaction) => transaction.taskId === task.id)
4273
+ || yieldTransactions.corrupt.some((transaction) => transaction.taskId === task.id)) {
4274
+ blockers.push('No pending or corrupt Task transaction may exist.');
4275
+ }
4276
+ if (listCoreTaskOperationMutexes(this.store.lockRoot(identity.projectId), this.store.root)
4277
+ .some((operation) => operation.entityId === task.id)) {
4278
+ blockers.push('No Core Task operation may exist.');
4279
+ }
4280
+ if (blockers.length > 0) {
4281
+ throw new WorkflowError('TRANSITION_BLOCKED', 'Stop override repository preconditions are not satisfied.', {
4282
+ taskId: task.id,
4283
+ blockers,
4284
+ });
4285
+ }
4286
+ }
4185
4287
  delegatedApprovalOptions(projectId, transition, target) {
4186
4288
  return this.store.listDelegations(projectId)
4187
4289
  .filter((grant) => {
@@ -4849,6 +4951,24 @@ function validateReviewInput(review) {
4849
4951
  if (review.status === 'failed' && review.findings.length === 0) {
4850
4952
  throw new WorkflowError('INVALID_ARGUMENT', 'A failed review requires at least one finding.');
4851
4953
  }
4954
+ for (const finding of review.findings) {
4955
+ const route = finding.route ?? 'fix';
4956
+ if (route !== 'fix' && route !== 'replan') {
4957
+ throw new WorkflowError('INVALID_ARGUMENT', `Review finding ${finding.id} has an invalid remediation route.`);
4958
+ }
4959
+ if (route === 'fix' && finding.planConflict !== undefined && finding.planConflict !== null) {
4960
+ throw new WorkflowError('INVALID_ARGUMENT', `Review finding ${finding.id} cannot carry a Plan conflict on the fix route.`);
4961
+ }
4962
+ if (route === 'replan') {
4963
+ const conflict = finding.planConflict;
4964
+ if (!conflict
4965
+ || !conflict.planClause?.trim()
4966
+ || !conflict.whyFixCannotFit?.trim()
4967
+ || !conflict.minimalPlanChange?.trim()) {
4968
+ throw new WorkflowError('INVALID_ARGUMENT', `Review finding ${finding.id} requires exact Plan-conflict evidence for replan.`);
4969
+ }
4970
+ }
4971
+ }
4852
4972
  }
4853
4973
  function countFailedReviewAttempts(taskRoot) {
4854
4974
  const file = path.join(taskRoot, 'findings.jsonl');
@@ -4868,34 +4988,6 @@ function countFailedReviewAttempts(taskRoot) {
4868
4988
  }
4869
4989
  return attempts.size;
4870
4990
  }
4871
- function validateCorrectivePlanAudit(task, audit, failedReviewAttempts) {
4872
- if (!audit) {
4873
- throw new WorkflowError('TRANSITION_BLOCKED', `Task ${task.id} has ${failedReviewAttempts} failed independent reviews. A separate corrective Plan audit is required before another plan-set.`, {
4874
- failedReviewAttempts,
4875
- requiredAction: 'Run a separate read-only Auditor and pass its evidence through --corrective-audit-file.',
4876
- });
4877
- }
4878
- if (!audit.auditor.trim() || !audit.summary.trim()) {
4879
- throw new WorkflowError('INVALID_ARGUMENT', 'Corrective Plan audit requires auditor and summary.');
4880
- }
4881
- if (audit.auditor.trim() === task.review.reviewer.trim()) {
4882
- throw new WorkflowError('TRANSITION_BLOCKED', 'Corrective Plan audit must be performed by an Auditor distinct from the failed-review author.');
4883
- }
4884
- const latestFindingIds = new Set(task.review.findings.map((finding) => finding.id));
4885
- const reviewedFindingIds = new Set(audit.reviewedFindingIds);
4886
- if (reviewedFindingIds.size !== audit.reviewedFindingIds.length || audit.reviewedFindingIds.some((id) => !id.trim())) {
4887
- throw new WorkflowError('INVALID_ARGUMENT', 'Corrective Plan audit finding IDs must be non-empty and unique.');
4888
- }
4889
- const missing = [...latestFindingIds].filter((findingId) => !reviewedFindingIds.has(findingId));
4890
- if (missing.length > 0) {
4891
- throw new WorkflowError('TRANSITION_BLOCKED', 'Corrective Plan audit does not cover every latest finding.', {
4892
- missingFindingIds: missing,
4893
- });
4894
- }
4895
- if (audit.decision !== 'continue-fix') {
4896
- throw new WorkflowError('TRANSITION_BLOCKED', `Corrective Auditor decision ${audit.decision} requires coordinator/user redirection before implementation continues.`, { decision: audit.decision, summary: audit.summary });
4897
- }
4898
- }
4899
4991
  function appendCorrectivePlanAudit(taskRoot, previous, saved, failedReviewAttempts, audit, now) {
4900
4992
  appendFileSync(path.join(taskRoot, 'corrective-plan-audits.jsonl'), `${JSON.stringify({
4901
4993
  recordedAt: now.toISOString(),