codex-workflow-v2 2.0.0-alpha.6 → 2.0.0-alpha.6.2

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.
@@ -642,6 +642,11 @@ export interface ContextEnvelope {
642
642
  stepId: string;
643
643
  expectedRevision: number;
644
644
  writerToken: string | null;
645
+ remediation?: {
646
+ attemptOrdinal: number;
647
+ mode: RemediationMode;
648
+ correctiveDecisionEventId: string | null;
649
+ };
645
650
  knowledgeMap: {
646
651
  revision: number;
647
652
  hash: string;
@@ -2,7 +2,9 @@ import { type WriterLease } from '../contracts.js';
2
2
  export declare class WriterLockManager {
3
3
  private readonly locksRoot;
4
4
  private readonly now;
5
- constructor(locksRoot: string, now?: () => Date);
5
+ constructor(locksRoot: string, now?: () => Date, options?: {
6
+ ensureRoot?: boolean;
7
+ });
6
8
  acquire(entityId: string, owner: string, leaseMs?: number): WriterLease;
7
9
  heartbeat(entityId: string, token: string, leaseMs?: number): WriterLease;
8
10
  release(entityId: string, token: string): void;
@@ -9,10 +9,11 @@ const DEFAULT_LEASE_MS = 30 * 60 * 1000;
9
9
  export class WriterLockManager {
10
10
  locksRoot;
11
11
  now;
12
- constructor(locksRoot, now = () => new Date()) {
12
+ constructor(locksRoot, now = () => new Date(), options = {}) {
13
13
  this.locksRoot = locksRoot;
14
14
  this.now = now;
15
- ensureDirectory(locksRoot);
15
+ if (options.ensureRoot !== false)
16
+ ensureDirectory(locksRoot);
16
17
  }
17
18
  acquire(entityId, owner, leaseMs = DEFAULT_LEASE_MS) {
18
19
  const file = this.file(entityId);
@@ -69,6 +70,8 @@ export class WriterLockManager {
69
70
  return existsSync(file) ? readJson(file) : null;
70
71
  }
71
72
  list() {
73
+ if (!existsSync(this.locksRoot))
74
+ return [];
72
75
  return readdirSync(this.locksRoot, { withFileTypes: true })
73
76
  .filter((entry) => entry.isFile() && /^(TASK|MS)-[0-9A-HJKMNP-TV-Z]{26}\.json$/.test(entry.name))
74
77
  .map((entry) => readJson(path.join(this.locksRoot, entry.name)))
@@ -1 +1 @@
1
- {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../src/state/lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../src/state/lock.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-alpha.6";
2
+ export declare const PACKAGE_VERSION = "2.0.0-alpha.6.2";
@@ -1,3 +1,3 @@
1
1
  export const PACKAGE_NAME = 'codex-workflow-v2';
2
- export const PACKAGE_VERSION = '2.0.0-alpha.6';
2
+ export const PACKAGE_VERSION = '2.0.0-alpha.6.2';
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 DelegationGrant, type DelegationGrantGate, type DelegationPolicyInput, type DiscoveryState, type MilestonePlanInput, type MilestoneState, type KnowledgeSelection, type GraphBinding, type GraphKind, type GraphMode, type GraphRefreshEvidence, type GraphRefreshRequest, type PlanRiskAuditEvent, type ProjectKnowledgeMap, type ReviewInput, type TaskPlanInput, type TaskContextRefreshResult, type TaskState, type UpdatePreflightResult, type WriterLease, type WorkflowRole, type WorkspaceOwner } from './contracts.js';
1
+ import { type AdoptionPostureEvent, type ContextEnvelope, type CorrectiveDecisionEvent, type CorrectivePlanAuditInput, type DelegationGrant, type DelegationGrantGate, type DelegationPolicyInput, type DiscoveryState, type MilestonePlanInput, type MilestoneState, type KnowledgeSelection, type GraphBinding, type GraphKind, type GraphMode, type GraphRefreshEvidence, type GraphRefreshRequest, type PlanRiskAuditEvent, type ProjectKnowledgeMap, type ReviewInput, type TaskPlanInput, type TaskContextRefreshResult, type TaskState, type UpdatePreflightResult, type WriterLease, 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';
@@ -45,10 +45,78 @@ export interface MilestoneScopeChangePreparation {
45
45
  memberships: MilestoneState['memberships'];
46
46
  };
47
47
  }
48
+ export interface Alpha6C1StrictReviewRescuePreflight {
49
+ eligible: boolean;
50
+ mutationFree: true;
51
+ runnerPackageVersion: string;
52
+ requiredProjectPackageVersion: '2.0.0-alpha.6';
53
+ declaredProjectPackageVersion: string | null;
54
+ projectId: string;
55
+ repositoryRoot: string;
56
+ clean: boolean;
57
+ candidate: {
58
+ taskId: string;
59
+ taskRevision: number;
60
+ stepId: string;
61
+ completionCommit: string;
62
+ currentHead: string;
63
+ knowledgeBindingStale: boolean;
64
+ claimant: string | null;
65
+ handoffExpiresAt: string | null;
66
+ lease: {
67
+ entityId: string;
68
+ owner: string;
69
+ pid: number;
70
+ hostname: string;
71
+ acquiredAt: string;
72
+ heartbeatAt: string;
73
+ expiresAt: string;
74
+ stale: boolean;
75
+ tokenBound: boolean;
76
+ } | null;
77
+ } | null;
78
+ blockers: string[];
79
+ requiredAction: {
80
+ action: 'update rescue-review';
81
+ taskId: string;
82
+ stepId: string;
83
+ expectedRevision: number;
84
+ actor: string;
85
+ requiresBoundWriterToken: true;
86
+ } | null;
87
+ }
88
+ export interface Alpha6CorrectiveRescuePreflight {
89
+ eligible: boolean;
90
+ mutationFree: true;
91
+ runnerPackageVersion: string;
92
+ requiredProjectPackageVersion: '2.0.0-alpha.6';
93
+ declaredProjectPackageVersion: string | null;
94
+ requiredHead: string;
95
+ currentHead: string;
96
+ clean: boolean;
97
+ candidate: {
98
+ taskId: string;
99
+ taskRevision: 14;
100
+ taskStatus: 'ready';
101
+ stepId: 'STEP-001';
102
+ stepStatus: 'failed';
103
+ attemptCount: 2;
104
+ briefHash: string;
105
+ planHash: string;
106
+ claimant: string;
107
+ lease: Omit<WriterLease, 'token'> & {
108
+ stale: boolean;
109
+ tokenBound: true;
110
+ };
111
+ milestoneScopeHash: string | null;
112
+ } | null;
113
+ blockers: string[];
114
+ }
48
115
  export declare class WorkflowService {
49
116
  readonly store: FileStateStore;
50
117
  private readonly now;
51
- constructor(store?: FileStateStore, now?: () => Date);
118
+ private readonly alpha6CorrectiveRescueHead;
119
+ constructor(store?: FileStateStore, now?: () => Date, alpha6CorrectiveRescueHead?: string);
52
120
  context(repository: string): WorkflowContext;
53
121
  prepareDelegation(repository: string, input: DelegationPolicyInput): DelegationGrantGate;
54
122
  grantDelegation(repository: string, input: DelegationPolicyInput, confirmationCode: string): DelegationGrant;
@@ -102,12 +170,15 @@ export declare class WorkflowService {
102
170
  lease: WriterLease;
103
171
  envelope: ContextEnvelope;
104
172
  };
105
- taskContext(repository: string, taskId: string, role: Exclude<WorkflowRole, 'scope-lead' | 'worker'>): ContextEnvelope;
173
+ taskContext(repository: string, taskId: string, role: Exclude<WorkflowRole, 'scope-lead' | 'worker'>, allowHistoricalStrictReview?: boolean): ContextEnvelope;
106
174
  completeStep(repository: string, taskId: string, stepId: string, expectedRevision: number, writerToken: string, notes: string[], actor?: string): TaskState;
175
+ alpha6C1StrictReviewRescuePreflight(repository: string): Alpha6C1StrictReviewRescuePreflight;
176
+ alpha6C1StrictReviewRescue(repository: string, taskId: string, stepId: string, expectedRevision: number, actor: string, writerToken: string, runner?: ReviewerCommandRunner): TaskState;
107
177
  reviewStep(repository: string, taskId: string, stepId: string, expectedRevision: number, runner?: ReviewerCommandRunner, actor?: string, writerToken?: string | null): TaskState;
178
+ private reviewStepWithKnowledgePolicy;
108
179
  submitTask(repository: string, taskId: string, expectedRevision: number, writerToken: string, actor?: string): TaskState;
109
180
  recordReview(repository: string, taskId: string, expectedRevision: number, review: ReviewInput, actor?: string, writerToken?: string | null): TaskState;
110
- recordStepCorrectiveDecision(repository: string, taskId: string, stepId: string, expectedRevision: number, correctiveAudit: CorrectivePlanAuditInput, actor?: string, writerToken?: string | null): import("./contracts.js").CorrectiveDecisionEvent;
181
+ recordStepCorrectiveDecision(repository: string, taskId: string, stepId: string, expectedRevision: number, correctiveAudit: CorrectivePlanAuditInput, actor?: string, writerToken?: string | null): CorrectiveDecisionEvent;
111
182
  setTaskResult(repository: string, taskId: string, expectedRevision: number, summary: string, limitations: string[]): TaskState;
112
183
  acceptTask(repository: string, taskId: string, expectedRevision: number, actor: string, delegationGrantId?: string | null): TaskState;
113
184
  syncTaskBase(repository: string, taskId: string, expectedRevision: number): TaskState;
@@ -130,6 +201,14 @@ export declare class WorkflowService {
130
201
  updatePreflight(repository: string): UpdatePreflightResult & {
131
202
  adoption: AdoptionPreparation;
132
203
  };
204
+ alpha6CorrectiveRescuePreflight(repository: string): Alpha6CorrectiveRescuePreflight;
205
+ alpha6CorrectiveRescueApply(repository: string, taskId: string, expectedRevision: number, actor: string, writerToken: string, plan: TaskPlanInput, decisionAudit: CorrectivePlanAuditInput, correctivePlanAudit: CorrectivePlanAuditInput): {
206
+ task: TaskState;
207
+ decision: CorrectiveDecisionEvent;
208
+ lease: Omit<WriterLease, 'token'> & {
209
+ tokenRetained: true;
210
+ };
211
+ };
133
212
  scanKnowledgeMap(repository: string): ProjectKnowledgeMap;
134
213
  showKnowledgeMap(repository: string): ProjectKnowledgeMap;
135
214
  knowledgeMapStatus(repository: string): ProjectKnowledgeMap;
@@ -160,6 +239,7 @@ export declare class WorkflowService {
160
239
  private assertTaskMutationAllowedByHandoff;
161
240
  private readGraphBindingOrNull;
162
241
  private requireActiveKnowledgeMap;
242
+ private strictReviewKnowledgeMap;
163
243
  private inspectAdoptionPreparation;
164
244
  private computeAdoptionBoundaryBlockers;
165
245
  private collectAdoptionSidecarInventory;