codex-workflow-v2 2.0.0-beta.13 → 2.0.0-beta.13.10

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 (86) hide show
  1. package/README.md +6 -1
  2. package/dist/reviewer-runtime-build.json +44 -20
  3. package/dist/src/alpha6/failed-step-planning-recovery.d.ts +10 -0
  4. package/dist/src/alpha6/failed-step-planning-recovery.js +93 -0
  5. package/dist/src/alpha6/failed-step-planning-recovery.js.map +1 -0
  6. package/dist/src/alpha6/plan-risk.d.ts +4 -0
  7. package/dist/src/alpha6/plan-risk.js +50 -13
  8. package/dist/src/alpha6/plan-risk.js.map +1 -1
  9. package/dist/src/alpha6/preexecution-replan.d.ts +38 -0
  10. package/dist/src/alpha6/preexecution-replan.js +130 -0
  11. package/dist/src/alpha6/preexecution-replan.js.map +1 -0
  12. package/dist/src/alpha6/remediation.d.ts +4 -2
  13. package/dist/src/alpha6/remediation.js +155 -20
  14. package/dist/src/alpha6/remediation.js.map +1 -1
  15. package/dist/src/alpha6/root-cause-replan-carryover.d.ts +18 -0
  16. package/dist/src/alpha6/root-cause-replan-carryover.js +396 -0
  17. package/dist/src/alpha6/root-cause-replan-carryover.js.map +1 -0
  18. package/dist/src/alpha7/autonomy.d.ts +3 -0
  19. package/dist/src/alpha7/autonomy.js +89 -42
  20. package/dist/src/alpha7/autonomy.js.map +1 -1
  21. package/dist/src/change-explanation.d.ts +64 -0
  22. package/dist/src/change-explanation.js +150 -0
  23. package/dist/src/change-explanation.js.map +1 -0
  24. package/dist/src/cli-actions.d.ts +3 -2
  25. package/dist/src/cli-actions.js +6 -0
  26. package/dist/src/cli-actions.js.map +1 -1
  27. package/dist/src/cli.js +73 -1
  28. package/dist/src/cli.js.map +1 -1
  29. package/dist/src/contracts.d.ts +38 -0
  30. package/dist/src/dependency-provenance.d.ts +3 -2
  31. package/dist/src/dependency-provenance.js +33 -2
  32. package/dist/src/dependency-provenance.js.map +1 -1
  33. package/dist/src/domain/plan-semantics.d.ts +11 -0
  34. package/dist/src/domain/plan-semantics.js +49 -0
  35. package/dist/src/domain/plan-semantics.js.map +1 -0
  36. package/dist/src/gateway-handshake.js +2 -0
  37. package/dist/src/gateway-handshake.js.map +1 -1
  38. package/dist/src/lifecycle/corrective-replan.js +3 -3
  39. package/dist/src/lifecycle/corrective-replan.js.map +1 -1
  40. package/dist/src/observed-routes.js +1 -0
  41. package/dist/src/observed-routes.js.map +1 -1
  42. package/dist/src/pending-review-update.d.ts +49 -0
  43. package/dist/src/pending-review-update.js +132 -0
  44. package/dist/src/pending-review-update.js.map +1 -0
  45. package/dist/src/repository.js +16 -4
  46. package/dist/src/repository.js.map +1 -1
  47. package/dist/src/reviewer.js +4 -1
  48. package/dist/src/reviewer.js.map +1 -1
  49. package/dist/src/state/corrective-replan-executor.js +3 -1
  50. package/dist/src/state/corrective-replan-executor.js.map +1 -1
  51. package/dist/src/state/corrective-replan-public.js +5 -4
  52. package/dist/src/state/corrective-replan-public.js.map +1 -1
  53. package/dist/src/state/corrective-yield-executor.js +12 -3
  54. package/dist/src/state/corrective-yield-executor.js.map +1 -1
  55. package/dist/src/state/store.d.ts +1 -1
  56. package/dist/src/state/store.js +17 -3
  57. package/dist/src/state/store.js.map +1 -1
  58. package/dist/src/version.d.ts +1 -1
  59. package/dist/src/version.js +1 -1
  60. package/dist/src/version.js.map +1 -1
  61. package/dist/src/workflow.d.ts +84 -1
  62. package/dist/src/workflow.js +1616 -355
  63. package/dist/src/workflow.js.map +1 -1
  64. package/docs/beta13.2-signal-review-recovery.md +38 -0
  65. package/docs/change-model.md +118 -0
  66. package/docs/delegated-approval.md +26 -0
  67. package/docs/pdf/codex-workflow-v2-architecture-ru.pdf +0 -0
  68. package/docs/pdf/codex-workflow-v2-chat-only-guide-ru.pdf +0 -0
  69. package/docs/pdf/codex-workflow-v2-technical-reference-ru.pdf +0 -0
  70. package/docs/pdf/sources/codex-workflow-v2-architecture-ru.md +9 -1
  71. package/docs/pdf/sources/codex-workflow-v2-chat-only-guide-ru.md +9 -5
  72. package/docs/pdf/sources/codex-workflow-v2-technical-reference-ru.md +18 -3
  73. package/docs/pending-review-update.md +15 -0
  74. package/docs/release.md +267 -2
  75. package/docs/updating-existing-project.md +36 -6
  76. package/docs/validation-report.md +30 -9
  77. package/package.json +2 -1
  78. package/plugins/codex-workflow-gateway/references/chat-dispatch.md +204 -0
  79. package/plugins/codex-workflow-gateway/references/protocol.md +11 -0
  80. package/plugins/codex-workflow-gateway/scripts/chat-dispatch.mjs +298 -0
  81. package/plugins/codex-workflow-gateway/scripts/chat-model-policy.mjs +43 -0
  82. package/plugins/codex-workflow-gateway/scripts/chat-registry.mjs +55 -3
  83. package/plugins/codex-workflow-gateway/skills/codex-workflow-gateway/SKILL.md +218 -21
  84. package/schemas/plan-risk-audit-event.schema.json +1 -0
  85. package/schemas/preexecution-replan-event.schema.json +45 -0
  86. package/schemas/task.schema.json +55 -0
@@ -24,17 +24,31 @@ export function milestoneSemanticScopeHash(milestone) {
24
24
  checks: milestone.checks,
25
25
  }));
26
26
  }
27
+ function autonomyAuthoritySnapshot(store, projectId, milestoneId) {
28
+ const event = readMilestoneAutonomyEvents(store, projectId, milestoneId).at(-1);
29
+ if (!event)
30
+ return null;
31
+ try {
32
+ const grant = store.readDelegation(projectId, event.delegationGrantId);
33
+ return { eventHash: event.eventHash, grant };
34
+ }
35
+ catch (error) {
36
+ if (!(error instanceof WorkflowError) || error.code !== 'NOT_FOUND')
37
+ throw error;
38
+ return { eventHash: event.eventHash, grant: null };
39
+ }
40
+ }
27
41
  export function prepareMilestoneAutonomyContract(options) {
28
42
  const { projectId, milestone, now } = options;
29
- if (milestone.status !== 'awaiting_execution_authorization' || !milestone.planHash) {
30
- throw new WorkflowError('TRANSITION_BLOCKED', 'Milestone autonomy may be granted only after the complete initial Plan is recorded and before execution.', { milestoneId: milestone.id, status: milestone.status });
43
+ if (!['awaiting_execution_authorization', 'active'].includes(milestone.status) || !milestone.planHash) {
44
+ throw new WorkflowError('TRANSITION_BLOCKED', 'Milestone autonomy requires a complete Plan and an awaiting-authorization or active Milestone.', { milestoneId: milestone.id, status: milestone.status });
31
45
  }
32
46
  const principal = options.principal.trim();
33
47
  const delegate = options.delegate.trim();
34
48
  if (!principal || principal.startsWith('agent:')) {
35
49
  throw new WorkflowError('INVALID_ARGUMENT', 'Milestone autonomy principal must be an explicit human actor.');
36
50
  }
37
- if (!delegate.startsWith('agent:') || delegate === principal) {
51
+ if (!delegate.startsWith('agent:') || !delegate.slice(6).trim() || delegate === principal) {
38
52
  throw new WorkflowError('INVALID_ARGUMENT', 'Milestone autonomy delegate must be a distinct agent actor.');
39
53
  }
40
54
  const expiry = new Date(options.expiresAt);
@@ -55,7 +69,9 @@ export function prepareMilestoneAutonomyContract(options) {
55
69
  const delegationPolicyHash = hashDelegationPolicy(projectId, delegationPolicy);
56
70
  const semanticScopeHash = milestoneSemanticScopeHash(milestone);
57
71
  const confirmationCodeBindingHash = sha256Hex(canonicalJsonStringify({
58
- version: 'milestone-autonomy-contract-v1',
72
+ version: 'milestone-autonomy-contract-v2',
73
+ milestoneStatus: milestone.status,
74
+ priorAuthority: autonomyAuthoritySnapshot(options.store, projectId, milestone.id),
59
75
  projectId,
60
76
  milestoneId: milestone.id,
61
77
  milestoneRevision: milestone.revision,
@@ -80,53 +96,72 @@ export function prepareMilestoneAutonomyContract(options) {
80
96
  }
81
97
  export function applyMilestoneAutonomyContract(options) {
82
98
  const prepared = prepareMilestoneAutonomyContract(options);
83
- if (options.confirmationCode.trim() !== prepared.confirmationCode) {
99
+ const root = options.store.milestoneRoot(options.projectId, options.milestone.id);
100
+ const existing = readMilestoneAutonomyEvents(options.store, options.projectId, options.milestone.id);
101
+ let event = existing.at(-1) ?? null;
102
+ // The original confirmation remains usable only for an exact successful retry or
103
+ // completion of its event-first interrupted write, never to undo a revocation.
104
+ // Legacy event-first writes retain their original v1 retry code. They can only
105
+ // finish at the original pre-execution revision, never reopen revoked authority.
106
+ const retryBindingHash = event?.confirmationCodeBindingHash ?? (event ? sha256Hex(canonicalJsonStringify({
107
+ version: 'milestone-autonomy-contract-v1',
108
+ projectId: options.projectId,
109
+ milestoneId: options.milestone.id,
110
+ milestoneRevision: options.milestone.revision,
111
+ planHash: options.milestone.planHash,
112
+ semanticScopeHash: event.semanticScopeHash,
113
+ delegationPolicyHash: event.delegationPolicyHash,
114
+ })) : null);
115
+ const retry = event !== null && retryBindingHash !== null
116
+ && options.confirmationCode.trim() === `MAC-${retryBindingHash.slice(0, 24).toUpperCase()}`
117
+ && event.delegationPolicyHash === prepared.delegationPolicyHash
118
+ && event.milestoneRevision === options.milestone.revision
119
+ && (event.issuedMilestoneStatus ?? 'awaiting_execution_authorization') === options.milestone.status
120
+ && event.principal === options.principal.trim()
121
+ && event.delegate === options.delegate.trim()
122
+ && event.expiresAt === prepared.expiresAt
123
+ && event.semanticScopeHash === milestoneSemanticScopeHash(options.milestone);
124
+ if (retry && event) {
125
+ if (Date.parse(event.expiresAt) <= options.now.getTime()) {
126
+ throw new WorkflowError('TRANSITION_BLOCKED', 'Expired autonomy confirmation cannot be replayed.');
127
+ }
128
+ try {
129
+ options.store.readDelegation(options.projectId, event.delegationGrantId);
130
+ return requireActiveMilestoneAutonomy({ ...options, actor: options.delegate });
131
+ }
132
+ catch (error) {
133
+ if (!(error instanceof WorkflowError) || error.code !== 'NOT_FOUND')
134
+ throw error;
135
+ // Only this exact confirmed event may finish its missing grant write below.
136
+ }
137
+ }
138
+ if (!retry && options.confirmationCode.trim() !== prepared.confirmationCode) {
84
139
  throw new WorkflowError('TRANSITION_BLOCKED', 'Milestone autonomy confirmation does not match the exact bounded contract.', {
85
140
  milestoneId: options.milestone.id,
86
141
  confirmationCodeBindingHash: prepared.confirmationCodeBindingHash,
87
142
  });
88
143
  }
89
- const root = options.store.milestoneRoot(options.projectId, options.milestone.id);
90
- const existing = readMilestoneAutonomyEvents(options.store, options.projectId, options.milestone.id);
91
- let event = existing.at(-1) ?? null;
92
- if (event) {
93
- const exactRetry = event.milestoneRevision === options.milestone.revision
94
- && event.principal === prepared.principal
95
- && event.delegate === prepared.delegate
96
- && event.expiresAt === prepared.expiresAt
97
- && event.semanticScopeHash === prepared.semanticScopeHash
98
- && event.delegationPolicyHash === prepared.delegationPolicyHash;
144
+ if (event && !retry) {
145
+ let previousGrant = null;
99
146
  try {
100
- const previousGrant = options.store.readDelegation(options.projectId, event.delegationGrantId);
101
- if (exactRetry && previousGrant.status === 'active') {
102
- return requireActiveMilestoneAutonomy({
103
- store: options.store,
104
- projectId: options.projectId,
105
- milestone: options.milestone,
106
- actor: prepared.delegate,
107
- now: options.now,
108
- });
109
- }
110
- if (!exactRetry
111
- && previousGrant.status === 'active'
112
- && Date.parse(previousGrant.expiresAt) > options.now.getTime()
113
- && event.semanticScopeHash === milestoneSemanticScopeHash(options.milestone)) {
114
- throw new WorkflowError('TRANSITION_BLOCKED', 'Milestone already has an active autonomy contract.', {
115
- eventId: event.eventId,
116
- delegationGrantId: event.delegationGrantId,
117
- expiresAt: previousGrant.expiresAt,
118
- });
119
- }
120
- // An expired, revoked, or semantically invalidated contract may be replaced only by
121
- // another exact human-confirmed MAC binding.
122
- event = null;
147
+ previousGrant = options.store.readDelegation(options.projectId, event.delegationGrantId);
123
148
  }
124
149
  catch (error) {
125
- if (!(error instanceof WorkflowError) || error.code !== 'NOT_FOUND' || !exactRetry)
150
+ if (!(error instanceof WorkflowError) || error.code !== 'NOT_FOUND')
126
151
  throw error;
127
- // The append-only contract is written before its grant. An exact retry may finish a
128
- // crash-interrupted issuance; the contract remains inert until this write succeeds.
152
+ // A fresh confirmation binds the missing grant and may supersede an inert
153
+ // interrupted issuance. Preserve its event; never recreate its authority.
154
+ }
155
+ if (previousGrant?.status === 'active'
156
+ && Date.parse(previousGrant.expiresAt) > options.now.getTime()
157
+ && event.semanticScopeHash === milestoneSemanticScopeHash(options.milestone)) {
158
+ throw new WorkflowError('TRANSITION_BLOCKED', 'Milestone already has an active autonomy contract.', {
159
+ eventId: event.eventId,
160
+ delegationGrantId: event.delegationGrantId,
161
+ expiresAt: previousGrant.expiresAt,
162
+ });
129
163
  }
164
+ event = null;
130
165
  }
131
166
  if (!event) {
132
167
  const grantId = createEntityId('DGR', options.now.getTime());
@@ -134,6 +169,8 @@ export function applyMilestoneAutonomyContract(options) {
134
169
  eventId: `MAC-${createUlid(options.now.getTime())}`,
135
170
  recordedAt: options.now.toISOString(),
136
171
  eventType: 'issued',
172
+ confirmationCodeBindingHash: prepared.confirmationCodeBindingHash,
173
+ issuedMilestoneStatus: options.milestone.status,
137
174
  projectId: options.projectId,
138
175
  milestoneId: options.milestone.id,
139
176
  milestoneRevision: options.milestone.revision,
@@ -149,7 +186,7 @@ export function applyMilestoneAutonomyContract(options) {
149
186
  });
150
187
  }
151
188
  const grantId = event.delegationGrantId;
152
- const timestamp = options.now.toISOString();
189
+ const timestamp = event.issuedAt;
153
190
  const grant = options.store.writeDelegation({
154
191
  schemaVersion: STATE_SCHEMA_VERSION,
155
192
  revision: 0,
@@ -199,6 +236,11 @@ export function requireActiveMilestoneAutonomy(options) {
199
236
  expiresAt: grant.expiresAt,
200
237
  });
201
238
  if (grant.status !== 'active'
239
+ || grant.principal !== contract.principal
240
+ || grant.delegate !== contract.delegate
241
+ || grant.expiresAt !== contract.expiresAt
242
+ || grant.scope.kind !== 'milestone'
243
+ || grant.scope.id !== options.milestone.id
202
244
  || grant.policyHash !== expectedPolicyHash
203
245
  || grant.policyHash !== contract.delegationPolicyHash) {
204
246
  throw new WorkflowError('TRANSITION_BLOCKED', 'Milestone autonomy delegation is revoked or invalid.');
@@ -249,6 +291,11 @@ function validateMilestoneAutonomyEvent(event, expectedProjectId, expectedMilest
249
291
  if (Date.parse(event.expiresAt) <= Date.parse(event.issuedAt)) {
250
292
  throw new WorkflowError('STATE_CORRUPT', 'Milestone autonomy expiry must follow issuance.');
251
293
  }
294
+ if (event.confirmationCodeBindingHash !== undefined
295
+ && (!/^[a-f0-9]{64}$/.test(event.confirmationCodeBindingHash)
296
+ || !['awaiting_execution_authorization', 'active'].includes(event.issuedMilestoneStatus ?? ''))) {
297
+ throw new WorkflowError('STATE_CORRUPT', 'Milestone autonomy confirmation binding is invalid.');
298
+ }
252
299
  if (!Number.isInteger(event.milestoneRevision) || event.milestoneRevision < 1) {
253
300
  throw new WorkflowError('STATE_CORRUPT', 'Milestone autonomy revision is invalid.');
254
301
  }
@@ -1 +1 @@
1
- {"version":3,"file":"autonomy.js","sourceRoot":"","sources":["../../../src/alpha7/autonomy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autonomy.js","sourceRoot":"","sources":["../../../src/alpha7/autonomy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ import type { TaskState } from './contracts.js';
2
+ export interface ChangeExplanationInput {
3
+ reason: string;
4
+ paths: string[];
5
+ intent?: 'implementation' | 'membership' | 'semantic-scope';
6
+ expectedRevision?: number;
7
+ expectedPlanHash?: string;
8
+ executionContext?: {
9
+ cwd: string;
10
+ writeRoot: string;
11
+ expectedBranch: string;
12
+ };
13
+ externalDecision?: 'denied' | 'unknown';
14
+ }
15
+ type Blocker = {
16
+ layer: string;
17
+ code: string;
18
+ resolution: string;
19
+ };
20
+ /** Explanation only: never issues a credential, writes state, or grants permission to apply a patch. */
21
+ export declare function explainChange(input: ChangeExplanationInput, repository: string, task: TaskState | undefined, next: Record<string, unknown>): {
22
+ kind: string;
23
+ version: number;
24
+ readOnly: boolean;
25
+ authority: string;
26
+ changeKind: string;
27
+ decisionBasis: string;
28
+ binding: {
29
+ projectId: string;
30
+ repositoryRoot: string;
31
+ taskId: string | null;
32
+ revision: number | null;
33
+ planHash: string | null;
34
+ head: string;
35
+ proposedPaths: string[];
36
+ observedDirtyPaths: string[];
37
+ proposedPathBytesHash: string | null;
38
+ requestHash: string;
39
+ existingAction: string;
40
+ };
41
+ proposalHash: string;
42
+ executionContext: {
43
+ state: string;
44
+ externallyEnforced: boolean;
45
+ };
46
+ blockers: Blocker[];
47
+ existingRoute: {
48
+ action: string;
49
+ blockedByExplanation: boolean;
50
+ recheckNextBeforeMutation: boolean;
51
+ };
52
+ proposedPaths: string[];
53
+ outsideCurrentStep: string[];
54
+ boundedAmendment: {
55
+ route: string;
56
+ prerequisite: string | null;
57
+ scopeExtensions: string[];
58
+ effect: unknown;
59
+ } | null;
60
+ requiresUser: boolean | null;
61
+ validationNeeded: string[];
62
+ limitations: string[];
63
+ };
64
+ export {};
@@ -0,0 +1,150 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { existsSync, lstatSync, realpathSync } from 'node:fs';
3
+ import path from 'node:path';
4
+ import { pathAllowed } from './domain/validation.js';
5
+ import { WorkflowError } from './errors.js';
6
+ import { currentBranch, headCommit, resolveRepositoryIdentity, runGit } from './repository.js';
7
+ import { hashDirtyWorktree } from './alpha6/downstream-proof.js';
8
+ const object = (value) => value !== null && typeof value === 'object'
9
+ && !Array.isArray(value) ? value : {};
10
+ function validate(input) {
11
+ const keys = ['reason', 'paths', 'intent', 'expectedRevision', 'expectedPlanHash', 'executionContext', 'externalDecision'];
12
+ if (!input || typeof input !== 'object' || Object.keys(input).some(key => !keys.includes(key))
13
+ || typeof input.reason !== 'string' || !input.reason.trim() || input.reason.length > 4000
14
+ || !Array.isArray(input.paths) || input.paths.length > 256
15
+ || input.paths.some(p => typeof p !== 'string' || !p || p.includes('\\') || p.includes('\0')
16
+ || /[*?\[\]{}]/.test(p) || path.isAbsolute(p) || p.split('/').some(x => !x || x === '.' || x === '..'))
17
+ || (input.intent !== undefined && !['implementation', 'membership', 'semantic-scope'].includes(input.intent))
18
+ || (input.externalDecision !== undefined && !['denied', 'unknown'].includes(input.externalDecision))
19
+ || (input.expectedRevision !== undefined && (!Number.isSafeInteger(input.expectedRevision) || input.expectedRevision < 1))
20
+ || (input.expectedPlanHash !== undefined && !/^[a-f0-9]{64}$/.test(input.expectedPlanHash))) {
21
+ throw new WorkflowError('INVALID_ARGUMENT', 'Expected a closed change explanation with reason and normalized repository-relative paths.');
22
+ }
23
+ const ctx = input.executionContext;
24
+ if (ctx !== undefined && (!ctx || typeof ctx !== 'object'
25
+ || Object.keys(ctx).sort().join(',') !== 'cwd,expectedBranch,writeRoot'
26
+ || [ctx.cwd, ctx.writeRoot, ctx.expectedBranch].some(x => typeof x !== 'string' || !x.trim())
27
+ || !path.isAbsolute(ctx.cwd) || !path.isAbsolute(ctx.writeRoot))) {
28
+ throw new WorkflowError('INVALID_ARGUMENT', 'executionContext requires absolute cwd/writeRoot and expectedBranch.');
29
+ }
30
+ }
31
+ // Resolve existing ancestors as well as non-existing destinations; do not read through symlinks.
32
+ function outsideRoot(root, file) {
33
+ let ancestor = path.join(root, file);
34
+ while (!existsSync(ancestor)) {
35
+ try {
36
+ if (lstatSync(ancestor).isSymbolicLink())
37
+ return true;
38
+ }
39
+ catch { /* missing path */ }
40
+ const parent = path.dirname(ancestor);
41
+ if (parent === ancestor)
42
+ return true;
43
+ ancestor = parent;
44
+ }
45
+ const relative = path.relative(root, realpathSync(ancestor));
46
+ return relative === '..' || relative.startsWith(`..${path.sep}`) || path.isAbsolute(relative);
47
+ }
48
+ /** Explanation only: never issues a credential, writes state, or grants permission to apply a patch. */
49
+ export function explainChange(input, repository, task, next) {
50
+ validate(input);
51
+ const identity = resolveRepositoryIdentity(repository);
52
+ const root = realpathSync(identity.repositoryRoot);
53
+ const blockers = [];
54
+ const add = (layer, code, resolution) => blockers.push({ layer, code, resolution });
55
+ const dirty = [...new Set([
56
+ ...runGit(root, ['diff', 'HEAD', '--name-only', '-z']).split('\0'),
57
+ ...runGit(root, ['ls-files', '--others', '--exclude-standard', '-z']).split('\0'),
58
+ ].filter(Boolean))].sort();
59
+ const paths = [...new Set([...input.paths, ...dirty])].sort();
60
+ const escaped = paths.filter(p => outsideRoot(root, p));
61
+ if (escaped.length)
62
+ add('execution-context', 'WRITE_PATH_ESCAPES_CHECKOUT', 'Resolve the symlink or target mismatch before proposing a write.');
63
+ let contextState = 'not-supplied';
64
+ if (input.executionContext) {
65
+ contextState = 'matched';
66
+ try {
67
+ const ctx = input.executionContext;
68
+ const observed = resolveRepositoryIdentity(ctx.cwd);
69
+ if (realpathSync(observed.repositoryRoot) !== root || realpathSync(ctx.writeRoot) !== root
70
+ || currentBranch(root) !== ctx.expectedBranch
71
+ || (task?.taskBranch !== null && task?.taskBranch !== undefined && ctx.expectedBranch !== task.taskBranch)) {
72
+ contextState = 'mismatch';
73
+ add('execution-context', 'EXECUTION_CONTEXT_MISMATCH', 'Reconcile the existing Worker checkout and fresh Task branch; do not retry in another chat or silently change the target.');
74
+ }
75
+ }
76
+ catch {
77
+ contextState = 'unverified';
78
+ add('execution-context', 'EXECUTION_CONTEXT_UNVERIFIED', 'Obtain a readable current checkout observation.');
79
+ }
80
+ }
81
+ if (input.externalDecision === 'denied')
82
+ add('external-approval', 'EXTERNAL_OPERATION_DENIED', 'Preserve the denial. Prepare safe evidence or obtain the exact external authorization; a Workflow grant does not override it.');
83
+ if (input.expectedRevision !== undefined && input.expectedRevision !== task?.revision
84
+ || input.expectedPlanHash !== undefined && input.expectedPlanHash !== task?.planHash) {
85
+ add('integrity', 'STALE_CHANGE_BINDING', 'Refresh the proposal from the current Task revision and Plan.');
86
+ }
87
+ const action = typeof next.action === 'string' ? next.action : 'blocked';
88
+ if (next.status === 'observation-blocked' || next.status === 'repair-required') {
89
+ add('integrity', 'CORE_OBSERVATION_UNAVAILABLE', 'Complete the exact Core observation/recovery route before changing work.');
90
+ }
91
+ const step = task?.steps.find(s => s.id === next.stepId)
92
+ ?? task?.steps.find(s => s.status === 'in_progress' || s.status === 'failed');
93
+ const outOfPlan = paths.filter(p => !step || !pathAllowed(p, step.allowedWrites) || pathAllowed(p, step.forbiddenScope));
94
+ const recovery = object(next.planIntegrityRecovery);
95
+ const supporting = recovery.state === 'eligible'
96
+ && (action === 'task plan-integrity-recover' || next.blockedAction === 'task plan-integrity-recover')
97
+ && recovery.boundedEffect === 'record-machine-derived-check-support-scope';
98
+ const evidence = object(recovery.evidence);
99
+ const scope = Array.isArray(evidence.scopeExtensions) ? evidence.scopeExtensions.filter((x) => typeof x === 'string') : [];
100
+ const bounded = supporting && outOfPlan.every(p => scope.includes(p));
101
+ let kind = 'implementation';
102
+ let decisionBasis = 'No automatic conclusion about semantic safety; follow the current Core route.';
103
+ if (input.intent === 'semantic-scope') {
104
+ kind = 'semantic-scope';
105
+ add('workflow', 'HUMAN_SEMANTIC_DECISION', 'Resolve the changed outcome or acceptance with the user through the scope-change route.');
106
+ }
107
+ else if (input.intent === 'membership' || next.auditedRemediation) {
108
+ kind = 'membership';
109
+ decisionBasis = 'Membership is separate from Step implementation. Use only the advertised bounded topology route or a separately confirmed scope change.';
110
+ }
111
+ else if (bounded) {
112
+ kind = 'bounded-plan-amendment';
113
+ decisionBasis = 'Core derived an exact check-support extension. Use its existing recovery; do not edit allowedWrites or grant authority manually.';
114
+ }
115
+ else if (/replan|corrective-yield|downstream-proof/.test(action) || recovery.boundedEffect === 'record-replan-required-decision') {
116
+ kind = 'corrective-plan';
117
+ decisionBasis = 'Core identified a Plan/recovery conflict; preserve historical evidence and the existing Task.';
118
+ }
119
+ else if (action === 'task context-refresh' || action === 'task knowledge-rebind') {
120
+ kind = 'context-refresh';
121
+ decisionBasis = 'Context refresh is independent of Plan correction and cannot acknowledge a Plan conflict.';
122
+ }
123
+ else if (outOfPlan.length) {
124
+ kind = 'plan-review';
125
+ add('workflow', 'UNPROVED_SCOPE_EXTENSION', 'Establish a Core-supported extension or revise the Plan. File count and user-declared intent are not safety evidence.');
126
+ }
127
+ const delegated = Array.isArray(next.delegatedApprovalOptions) && next.delegatedApprovalOptions.length > 0;
128
+ const derived = object(next.correctiveDerivedApproval).humanApprovalRequired === false;
129
+ const humanGate = !!next.requiredHumanGate || ['task authorize', 'task accept', 'milestone authorize', 'milestone accept', 'project-memory approve'].includes(action);
130
+ if (humanGate && !delegated && !derived)
131
+ add('workflow', 'CURRENT_HUMAN_GATE', 'Use the current exact human gate; this explanation issues no authority.');
132
+ const head = headCommit(root);
133
+ const binding = { projectId: identity.projectId, repositoryRoot: root, taskId: task?.id ?? null,
134
+ revision: task?.revision ?? null, planHash: task?.planHash ?? null, head,
135
+ proposedPaths: [...new Set(input.paths)].sort(), observedDirtyPaths: dirty, proposedPathBytesHash: escaped.length ? null : hashDirtyWorktree(root, paths),
136
+ requestHash: createHash('sha256').update(JSON.stringify(input)).digest('hex'), existingAction: action };
137
+ return { kind: 'change-explanation', version: 1, readOnly: true, authority: 'none', changeKind: kind,
138
+ decisionBasis, binding, proposalHash: createHash('sha256').update(JSON.stringify(binding)).digest('hex'),
139
+ executionContext: { state: contextState, externallyEnforced: false }, blockers,
140
+ existingRoute: { action, blockedByExplanation: blockers.length > 0, recheckNextBeforeMutation: true },
141
+ proposedPaths: paths, outsideCurrentStep: outOfPlan,
142
+ boundedAmendment: bounded && kind === 'bounded-plan-amendment' ? { route: 'task plan-integrity-recover', prerequisite: action === 'task plan-integrity-recover' ? null : action, scopeExtensions: scope, effect: recovery.boundedEffect } : null,
143
+ requiresUser: blockers.some(b => ['EXTERNAL_OPERATION_DENIED', 'HUMAN_SEMANTIC_DECISION', 'CURRENT_HUMAN_GATE'].includes(b.code)) ? true : null,
144
+ validationNeeded: ['Fresh status and next; current revision, Plan, HEAD and file bytes.',
145
+ 'Current Worker checkout, branch and writer credential; external approval remains independent.',
146
+ 'Preserve requirements, acceptance, checks and historical evidence; review the exact diff.'],
147
+ limitations: ['Not an apply command or proof of external permission.',
148
+ 'Unspecified risks and blockers may remain. No inference of semantic safety from paths or diff size.'] };
149
+ }
150
+ //# sourceMappingURL=change-explanation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change-explanation.js","sourceRoot":"","sources":["../../src/change-explanation.ts"],"names":[],"mappings":"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"}
@@ -6,13 +6,14 @@
6
6
  */
7
7
  declare const CLI_ACTIONS_LITERAL: {
8
8
  readonly gateway: readonly ["handshake"];
9
- readonly update: readonly ["preflight", "rescue-preflight", "dependency-provenance-preflight", "dependency-provenance-recover", "historical-step-dependency-preflight", "historical-step-dependency-recover", "downstream-proof-dependency-preflight", "downstream-proof-dependency-recover", "downstream-proof-replan-update-preflight", "downstream-proof-replan-dependency-preflight", "downstream-proof-replan-dependency-recover", "plan-integrity-update-preflight", "plan-integrity-dependency-preflight", "plan-integrity-dependency-recover"];
9
+ readonly change: readonly ["explain"];
10
+ readonly update: readonly ["preflight", "pending-review-source-preflight", "pending-review-dependency-preflight", "pending-review-dependency-recover", "rescue-preflight", "dependency-provenance-preflight", "corrective-carryover-preflight", "dependency-provenance-recover", "historical-step-dependency-preflight", "historical-step-dependency-recover", "downstream-proof-dependency-preflight", "downstream-proof-dependency-recover", "downstream-proof-replan-update-preflight", "downstream-proof-replan-dependency-preflight", "downstream-proof-replan-dependency-recover", "plan-integrity-update-preflight", "plan-integrity-dependency-preflight", "plan-integrity-dependency-recover"];
10
11
  readonly delegation: readonly ["prepare", "grant", "list", "show", "revoke"];
11
12
  readonly 'project-memory': readonly ["scan", "show", "status", "approve", "reconcile"];
12
13
  readonly state: readonly ["migrate", "adoption-prepare", "adoption-apply"];
13
14
  readonly graph: readonly ["prepare", "status", "refresh-request", "bind", "fallback"];
14
15
  readonly discovery: readonly ["start", "update", "show", "materialize"];
15
- readonly task: readonly ["show", "replacement-materialize", "plan-set", "knowledge-rebind", "context-refresh", "authorize", "plan-risk-audit", "start", "run", "step-complete", "submit", "review-record", "review-launch", "review-packet", "review-sealed-record", "step-review", "step-review-packet", "step-review-record", "corrective-decision-recover", "remediation-mode-recover", "plan-integrity-recover", "downstream-proof-recover", "downstream-proof-replan-recover", "stop-override-prepare", "stop-override-apply", "corrective-decision", "corrective-yield", "corrective-yield-recover", "corrective-replan-prepare", "corrective-replan-confirm", "corrective-replan-execute", "corrective-replan-recover", "historical-step-provenance-preflight", "historical-step-provenance-recover", "handoff", "handoff-prepare", "handoff-replace", "handoff-show", "claim", "writer-credential-replace", "handback", "handback-create", "result-set", "accept", "sync-base", "merge", "merge-confirm"];
16
+ readonly task: readonly ["show", "replacement-materialize", "preexecution-replan", "plan-set", "knowledge-rebind", "context-refresh", "authorize", "plan-risk-audit", "start", "run", "step-complete", "submit", "review-record", "review-launch", "review-packet", "review-sealed-record", "step-review", "step-review-packet", "step-review-record", "corrective-decision-recover", "remediation-mode-recover", "plan-integrity-recover", "downstream-proof-recover", "downstream-proof-replan-recover", "stop-override-prepare", "stop-override-apply", "corrective-decision", "corrective-yield", "corrective-yield-recover", "corrective-replan-prepare", "corrective-replan-confirm", "corrective-replan-execute", "corrective-replan-recover", "historical-step-provenance-preflight", "historical-step-provenance-recover", "handoff", "handoff-prepare", "handoff-replace", "handoff-show", "claim", "writer-credential-replace", "handback", "handback-create", "result-set", "accept", "sync-base", "merge", "merge-confirm"];
16
17
  readonly milestone: readonly ["recover", "show", "progress", "plan-set", "remediation-materialize", "scope-change-prepare", "scope-change-apply", "autonomy-prepare", "autonomy-grant", "autonomy-evolve", "authorize", "validate", "accept", "cancel"];
17
18
  readonly locks: readonly ["inspect", "repair"];
18
19
  };
@@ -6,10 +6,15 @@
6
6
  */
7
7
  const CLI_ACTIONS_LITERAL = {
8
8
  gateway: ['handshake'],
9
+ change: ['explain'],
9
10
  update: [
10
11
  'preflight',
12
+ 'pending-review-source-preflight',
13
+ 'pending-review-dependency-preflight',
14
+ 'pending-review-dependency-recover',
11
15
  'rescue-preflight',
12
16
  'dependency-provenance-preflight',
17
+ 'corrective-carryover-preflight',
13
18
  'dependency-provenance-recover',
14
19
  'historical-step-dependency-preflight',
15
20
  'historical-step-dependency-recover',
@@ -30,6 +35,7 @@ const CLI_ACTIONS_LITERAL = {
30
35
  task: [
31
36
  'show',
32
37
  'replacement-materialize',
38
+ 'preexecution-replan',
33
39
  'plan-set',
34
40
  'knowledge-rebind',
35
41
  'context-refresh',
@@ -1 +1 @@
1
- {"version":3,"file":"cli-actions.js","sourceRoot":"","sources":["../../src/cli-actions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG;IAC1B,OAAO,EAAE,CAAC,WAAW,CAAC;IACtB,MAAM,EAAE;QACN,WAAW;QACX,kBAAkB;QAClB,iCAAiC;QACjC,+BAA+B;QAC/B,sCAAsC;QACtC,oCAAoC;QACpC,uCAAuC;QACvC,qCAAqC;QACrC,0CAA0C;QAC1C,8CAA8C;QAC9C,4CAA4C;QAC5C,iCAAiC;QACjC,qCAAqC;QACrC,mCAAmC;KACpC;IACD,UAAU,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC;IAC1D,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC;IACpE,KAAK,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,gBAAgB,CAAC;IACxD,KAAK,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,CAAC;IACnE,SAAS,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC;IACrD,IAAI,EAAE;QACJ,MAAM;QACN,yBAAyB;QACzB,UAAU;QACV,kBAAkB;QAClB,iBAAiB;QACjB,WAAW;QACX,iBAAiB;QACjB,OAAO;QACP,KAAK;QACL,eAAe;QACf,QAAQ;QACR,eAAe;QACf,eAAe;QACf,eAAe;QACf,sBAAsB;QACtB,aAAa;QACb,oBAAoB;QACpB,oBAAoB;QACpB,6BAA6B;QAC7B,0BAA0B;QAC1B,wBAAwB;QACxB,0BAA0B;QAC1B,iCAAiC;QACjC,uBAAuB;QACvB,qBAAqB;QACrB,qBAAqB;QACrB,kBAAkB;QAClB,0BAA0B;QAC1B,2BAA2B;QAC3B,2BAA2B;QAC3B,2BAA2B;QAC3B,2BAA2B;QAC3B,sCAAsC;QACtC,oCAAoC;QACpC,SAAS;QACT,iBAAiB;QACjB,iBAAiB;QACjB,cAAc;QACd,OAAO;QACP,2BAA2B;QAC3B,UAAU;QACV,iBAAiB;QACjB,YAAY;QACZ,QAAQ;QACR,WAAW;QACX,OAAO;QACP,eAAe;KAChB;IACD,SAAS,EAAE;QACT,SAAS;QACT,MAAM;QACN,UAAU;QACV,UAAU;QACV,yBAAyB;QACzB,sBAAsB;QACtB,oBAAoB;QACpB,kBAAkB;QAClB,gBAAgB;QAChB,iBAAiB;QACjB,WAAW;QACX,UAAU;QACV,QAAQ;QACR,QAAQ;KACT;IACD,KAAK,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEX,MAAM,CAAC,MAAM,WAAW,GAAgD,mBAAmB,CAAC;AAO5F,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACpF,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvC,IAAI,SAAS,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAChC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAY,CAAC;IACpD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAkC,CAAC;IACrE,OAAO,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"cli-actions.js","sourceRoot":"","sources":["../../src/cli-actions.ts"],"names":[],"mappings":"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"}