codex-orchestrator 2.0.5 → 2.0.7

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 (72) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/README.md +6 -2
  3. package/dist/src/v2/acceptance-proof.d.ts +7 -0
  4. package/dist/src/v2/acceptance-proof.d.ts.map +1 -1
  5. package/dist/src/v2/acceptance-proof.js +111 -5
  6. package/dist/src/v2/acceptance-proof.js.map +1 -1
  7. package/dist/src/v2/adapters/command.d.ts +2 -0
  8. package/dist/src/v2/adapters/command.d.ts.map +1 -1
  9. package/dist/src/v2/adapters/command.js +67 -8
  10. package/dist/src/v2/adapters/command.js.map +1 -1
  11. package/dist/src/v2/adapters/gh-issue-adapter.js +16 -5
  12. package/dist/src/v2/adapters/gh-issue-adapter.js.map +1 -1
  13. package/dist/src/v2/android-proof-runner.d.ts +93 -0
  14. package/dist/src/v2/android-proof-runner.d.ts.map +1 -0
  15. package/dist/src/v2/android-proof-runner.js +921 -0
  16. package/dist/src/v2/android-proof-runner.js.map +1 -0
  17. package/dist/src/v2/checked-change.d.ts +1 -1
  18. package/dist/src/v2/checked-change.d.ts.map +1 -1
  19. package/dist/src/v2/checked-change.js +3 -2
  20. package/dist/src/v2/checked-change.js.map +1 -1
  21. package/dist/src/v2/code-review-report.d.ts +1 -2
  22. package/dist/src/v2/code-review-report.d.ts.map +1 -1
  23. package/dist/src/v2/code-review-report.js +6 -11
  24. package/dist/src/v2/code-review-report.js.map +1 -1
  25. package/dist/src/v2/config.d.ts +13 -0
  26. package/dist/src/v2/config.d.ts.map +1 -1
  27. package/dist/src/v2/config.js +57 -1
  28. package/dist/src/v2/config.js.map +1 -1
  29. package/dist/src/v2/containment.d.ts +0 -52
  30. package/dist/src/v2/containment.d.ts.map +1 -1
  31. package/dist/src/v2/containment.js +1 -195
  32. package/dist/src/v2/containment.js.map +1 -1
  33. package/dist/src/v2/direct-delivery.d.ts +11 -2
  34. package/dist/src/v2/direct-delivery.d.ts.map +1 -1
  35. package/dist/src/v2/direct-delivery.js +62 -17
  36. package/dist/src/v2/direct-delivery.js.map +1 -1
  37. package/dist/src/v2/immutable-workflow-publisher.js +6 -1
  38. package/dist/src/v2/immutable-workflow-publisher.js.map +1 -1
  39. package/dist/src/v2/implementation-reviewer.d.ts +1 -1
  40. package/dist/src/v2/implementation-reviewer.d.ts.map +1 -1
  41. package/dist/src/v2/implementation-reviewer.js +1 -2
  42. package/dist/src/v2/implementation-reviewer.js.map +1 -1
  43. package/dist/src/v2/mobile-lease.d.ts +9 -0
  44. package/dist/src/v2/mobile-lease.d.ts.map +1 -1
  45. package/dist/src/v2/mobile-lease.js +27 -3
  46. package/dist/src/v2/mobile-lease.js.map +1 -1
  47. package/dist/src/v2/proof-report.d.ts +1 -1
  48. package/dist/src/v2/proof-report.d.ts.map +1 -1
  49. package/dist/src/v2/proof-report.js +6 -4
  50. package/dist/src/v2/proof-report.js.map +1 -1
  51. package/dist/src/v2/run-issue.d.ts +18 -1
  52. package/dist/src/v2/run-issue.d.ts.map +1 -1
  53. package/dist/src/v2/run-issue.js +504 -109
  54. package/dist/src/v2/run-issue.js.map +1 -1
  55. package/dist/src/v2/run-store.d.ts +17 -1
  56. package/dist/src/v2/run-store.d.ts.map +1 -1
  57. package/dist/src/v2/run-store.js +30 -4
  58. package/dist/src/v2/run-store.js.map +1 -1
  59. package/dist/src/v2/runtime.d.ts.map +1 -1
  60. package/dist/src/v2/runtime.js +84 -27
  61. package/dist/src/v2/runtime.js.map +1 -1
  62. package/docs/deep-dive.md +25 -11
  63. package/internal-workflow/manifest.json +1 -1
  64. package/internal-workflow/schemas/proof-report-v1.json +1 -1
  65. package/internal-workflow/skills/acceptance-proof/SKILL.md +1 -1
  66. package/internal-workflow/skills/acceptance-proof/references/android.md +6 -6
  67. package/internal-workflow/skills/implementation-spec-maker/SKILL.md +10 -8
  68. package/internal-workflow/skills/implementation-spec-review/SKILL.md +17 -3
  69. package/internal-workflow/skills/implementation-spec-review/evals/evals.json +30 -0
  70. package/internal-workflow/skills/implementation-spec-review/references/review-loop.md +30 -6
  71. package/package.json +1 -2
  72. package/internal-workflow/skills/acceptance-proof/tools/android-lease.mjs +0 -280
@@ -1,13 +1,5 @@
1
1
  import { createHash } from 'node:crypto';
2
- import { readFile, rm } from 'node:fs/promises';
3
- import { homedir, platform } from 'node:os';
4
- import { isAbsolute, join, resolve } from 'node:path';
5
- import { writeDurableAtomicFile } from './adapters/durable-atomic-file.js';
6
- export const CONTAINMENT_PLATFORM = 'darwin';
7
- export const CONTAINMENT_SCHEMA = 'codex-orchestrator.containment';
8
- const CERTIFICATE_FILE = 'containment.json';
9
- const SHA256_PATTERN = /^[0-9a-f]{64}$/;
10
- const MAX_CERTIFICATE_BYTES = 1024 * 1024;
2
+ import { homedir } from 'node:os';
11
3
  const DENIED_TOOL_ENV_KEYS = [
12
4
  'GH_TOKEN',
13
5
  'GITHUB_TOKEN',
@@ -27,9 +19,6 @@ const DENIED_TOOL_ENV_KEYS = [
27
19
  'AZURE_CONFIG_DIR',
28
20
  'AZURE_CLIENT_SECRET',
29
21
  ];
30
- export function containmentCertificatePath(orchestratorHome = resolve(process.env.CODEX_ORCHESTRATOR_HOME ?? join(homedir(), '.codex-orchestrator'))) {
31
- return join(orchestratorHome, 'v2', 'certifications', CERTIFICATE_FILE);
32
- }
33
22
  export function buildContainmentCodexArgs(input) {
34
23
  const operationPolicy = input.operationPolicy ?? defaultContainmentOperationPolicy();
35
24
  validateContainmentOperationPolicy(operationPolicy);
@@ -115,132 +104,6 @@ export function buildContainmentCodexEnvironment(input) {
115
104
  };
116
105
  return env;
117
106
  }
118
- export function containmentArgvPolicySha256() {
119
- const args = buildContainmentCodexArgs({
120
- schemaPath: '<snapshot-schema>',
121
- reportPath: '<attempt-report>',
122
- toolHome: '<isolated-tool-home>',
123
- tmpDir: '<attempt-tmp>',
124
- safePath: '<fixed-safe-path>',
125
- });
126
- return sha256(canonicalJson({ command: 'codex', args, promptTransport: 'stdin' }));
127
- }
128
- export function createContainmentCertificate(input) {
129
- assertCodexVersion(input.codexVersion);
130
- assertAbsolutePath(input.codexExecutablePath, 'codexExecutablePath');
131
- assertSha256(input.codexExecutableSha256, 'codexExecutableSha256');
132
- assertNonEmptyString(input.packageVersion, 'packageVersion');
133
- assertSha256(input.argvPolicySha256, 'argvPolicySha256');
134
- validateProbeResult(input.root, 'root');
135
- validateProbeResult(input.nativeChild, 'nativeChild');
136
- assertIsoTimestamp(input.completedAt);
137
- assert.equalPlatform();
138
- const unsigned = {
139
- schema: CONTAINMENT_SCHEMA,
140
- version: 2,
141
- codexVersion: input.codexVersion,
142
- codexExecutablePath: input.codexExecutablePath,
143
- codexExecutableSha256: input.codexExecutableSha256,
144
- platform: CONTAINMENT_PLATFORM,
145
- packageVersion: input.packageVersion,
146
- argvPolicySha256: input.argvPolicySha256,
147
- root: input.root,
148
- nativeChild: input.nativeChild,
149
- completedAt: input.completedAt,
150
- };
151
- return { ...unsigned, resultSha256: sha256(canonicalJson(unsigned)) };
152
- }
153
- export function validateContainmentCertificate(value) {
154
- assertExactObject(value, [
155
- 'schema',
156
- 'version',
157
- 'codexVersion',
158
- 'codexExecutablePath',
159
- 'codexExecutableSha256',
160
- 'platform',
161
- 'packageVersion',
162
- 'argvPolicySha256',
163
- 'root',
164
- 'nativeChild',
165
- 'completedAt',
166
- 'resultSha256',
167
- ], 'containment certificate');
168
- if (value.schema !== CONTAINMENT_SCHEMA)
169
- throw new Error('invalid containment schema');
170
- if (value.version !== 2)
171
- throw new Error('invalid containment version');
172
- assertCodexVersion(value.codexVersion);
173
- assertAbsolutePath(value.codexExecutablePath, 'codexExecutablePath');
174
- assertSha256(value.codexExecutableSha256, 'codexExecutableSha256');
175
- if (value.platform !== CONTAINMENT_PLATFORM)
176
- throw new Error('invalid containment platform');
177
- assertNonEmptyString(value.packageVersion, 'packageVersion');
178
- assertSha256(value.argvPolicySha256, 'argvPolicySha256');
179
- validateProbeResult(value.root, 'root');
180
- validateProbeResult(value.nativeChild, 'nativeChild');
181
- assertIsoTimestamp(value.completedAt);
182
- assertSha256(value.resultSha256, 'resultSha256');
183
- const unsigned = {
184
- schema: value.schema,
185
- version: value.version,
186
- codexVersion: value.codexVersion,
187
- codexExecutablePath: value.codexExecutablePath,
188
- codexExecutableSha256: value.codexExecutableSha256,
189
- platform: value.platform,
190
- packageVersion: value.packageVersion,
191
- argvPolicySha256: value.argvPolicySha256,
192
- root: value.root,
193
- nativeChild: value.nativeChild,
194
- completedAt: value.completedAt,
195
- };
196
- if (sha256(canonicalJson(unsigned)) !== value.resultSha256) {
197
- throw new Error('containment result digest mismatch');
198
- }
199
- return value;
200
- }
201
- export function assertContainmentCertificateMatchesRuntime(certificate, runtime) {
202
- if (certificate.argvPolicySha256 !== runtime.argvPolicySha256) {
203
- throw new Error('containment argv policy mismatch');
204
- }
205
- if (runtime.codexVersion !== certificate.codexVersion) {
206
- throw new Error('Codex version does not match the containment certificate');
207
- }
208
- if (runtime.codexExecutablePath !== certificate.codexExecutablePath
209
- || runtime.codexExecutableSha256 !== certificate.codexExecutableSha256) {
210
- throw new Error('Codex executable does not match the containment certificate');
211
- }
212
- if (runtime.packageVersion !== certificate.packageVersion) {
213
- throw new Error('orchestrator package version does not match the containment certificate');
214
- }
215
- }
216
- export async function writeContainmentCertificate(path, certificate) {
217
- validateContainmentCertificate(certificate);
218
- await writeDurableAtomicFile(path, `${canonicalJson(certificate)}\n`);
219
- }
220
- export async function readContainmentCertificate(path) {
221
- const bytes = await readFile(path);
222
- if (bytes.length > MAX_CERTIFICATE_BYTES)
223
- throw new Error('containment certificate exceeds 1 MiB');
224
- return validateContainmentCertificate(parseJsonWithoutDuplicateKeys(bytes.toString('utf8')));
225
- }
226
- export async function removeMatchingContainmentCertificate(path, expected) {
227
- let certificate;
228
- try {
229
- certificate = await readContainmentCertificate(path);
230
- }
231
- catch (error) {
232
- if (error.code === 'ENOENT')
233
- return;
234
- return;
235
- }
236
- if (certificate.codexVersion === expected.codexVersion
237
- && certificate.codexExecutablePath === expected.codexExecutablePath
238
- && certificate.codexExecutableSha256 === expected.codexExecutableSha256
239
- && certificate.packageVersion === expected.packageVersion
240
- && certificate.argvPolicySha256 === expected.argvPolicySha256) {
241
- await rm(path, { force: true });
242
- }
243
- }
244
107
  export function canonicalJson(value) {
245
108
  if (value === null || typeof value === 'boolean' || typeof value === 'string')
246
109
  return JSON.stringify(value);
@@ -274,63 +137,6 @@ export function containsCredentialEvidence(value) {
274
137
  /["']?(?:api[_-]?key|access[_-]?token|refresh[_-]?token|password|secret)["']?\s*[:=]\s*["']?[A-Za-z0-9_./+=-]{8,}/iu,
275
138
  ].some((pattern) => pattern.test(value));
276
139
  }
277
- function validateProbeResult(value, field) {
278
- assertExactObject(value, [
279
- 'parentAuthReadable',
280
- 'parentAuthUsable',
281
- 'externalCredentialsUsable',
282
- 'deniedSecretReadable',
283
- 'productionSentinelExecuted',
284
- ], field);
285
- if (value.parentAuthReadable !== true)
286
- throw new Error(`${field}.parentAuthReadable must be true`);
287
- if (value.parentAuthUsable !== true)
288
- throw new Error(`${field}.parentAuthUsable must be true`);
289
- if (value.deniedSecretReadable !== true)
290
- throw new Error(`${field}.deniedSecretReadable must be true`);
291
- for (const key of ['externalCredentialsUsable', 'productionSentinelExecuted']) {
292
- if (value[key] !== false)
293
- throw new Error(`${field}.${key} must be false`);
294
- }
295
- }
296
- function assertExactObject(value, expectedKeys, field) {
297
- if (typeof value !== 'object' || value === null || Array.isArray(value))
298
- throw new Error(`${field} must be an object`);
299
- const actualKeys = Object.keys(value).sort();
300
- const sortedExpected = [...expectedKeys].sort();
301
- if (actualKeys.length !== sortedExpected.length || actualKeys.some((key, index) => key !== sortedExpected[index])) {
302
- throw new Error(`${field} has unknown or missing keys`);
303
- }
304
- }
305
- function assertNonEmptyString(value, field) {
306
- if (typeof value !== 'string' || value.length === 0)
307
- throw new Error(`${field} must be a non-empty string`);
308
- }
309
- function assertAbsolutePath(value, field) {
310
- assertNonEmptyString(value, field);
311
- if (!isAbsolute(value) || resolve(value) !== value)
312
- throw new Error(`${field} must be a canonical absolute path`);
313
- }
314
- function assertCodexVersion(value) {
315
- if (typeof value !== 'string' || !/^codex-cli \S+$/u.test(value)) {
316
- throw new Error('codexVersion must be the exact installed Codex version');
317
- }
318
- }
319
- function assertSha256(value, field) {
320
- if (typeof value !== 'string' || !SHA256_PATTERN.test(value))
321
- throw new Error(`${field} must be lowercase SHA-256`);
322
- }
323
- function assertIsoTimestamp(value) {
324
- if (typeof value !== 'string' || Number.isNaN(Date.parse(value)) || new Date(value).toISOString() !== value) {
325
- throw new Error('completedAt must be an ISO timestamp');
326
- }
327
- }
328
- const assert = {
329
- equalPlatform() {
330
- if (platform() !== CONTAINMENT_PLATFORM)
331
- throw new Error('containment certificate requires darwin');
332
- },
333
- };
334
140
  function tomlString(value) {
335
141
  return JSON.stringify(value);
336
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"containment.js","sourceRoot":"","sources":["../../../src/v2/containment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"containment.js","sourceRoot":"","sources":["../../../src/v2/containment.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import { type CodeReviewDefectV1, type CodeReviewReportV1, type ReviewMode, type ReviewOperation } from './code-review-report.js';
2
+ export declare const MAX_DIRECT_REVIEW_REPORT_REPAIRS = 4;
3
+ export type DirectReviewReportRepairCount = 0 | 1 | 2 | 3 | 4;
2
4
  export type DirectReviewStage = 'review-full' | 'review-repair' | 'review-closure';
3
5
  export interface ReviewInvocationV1 {
4
6
  attemptId: string;
@@ -18,7 +20,7 @@ export interface ReviewTrackV1 {
18
20
  profile: 'simple' | 'medium' | 'high';
19
21
  reviewerSessionId: string | null;
20
22
  mode: ReviewMode | null;
21
- reportRepairs: 0 | 1;
23
+ reportRepairs: DirectReviewReportRepairCount;
22
24
  transportRetries: 0 | 1;
23
25
  coverage: string[];
24
26
  defects: CodeReviewDefectV1[];
@@ -43,6 +45,7 @@ export interface DirectReviewV1 {
43
45
  review: ReviewTrackV1;
44
46
  invocation?: ReviewInvocationV1;
45
47
  repairFindings: DirectRepairFindingV1[];
48
+ terminalCode?: string;
46
49
  terminalOutcome?: {
47
50
  status: 'blocked';
48
51
  kind: 'external' | 'safety' | 'exhausted';
@@ -87,7 +90,13 @@ export declare function prepareDirectReviewClosure(state: DirectReviewV1, target
87
90
  closureRequestSha256: string;
88
91
  };
89
92
  export declare function directReviewClosureRequestSha256(state: DirectReviewV1): string;
90
- export declare function projectTerminalDirectReview(state: DirectReviewV1, terminalOutcome: NonNullable<DirectReviewV1['terminalOutcome']>): DirectReviewV1;
93
+ export declare function projectTerminalDirectReview(state: DirectReviewV1, terminalOutcome: NonNullable<DirectReviewV1['terminalOutcome']>, terminalCode?: string): DirectReviewV1;
94
+ export declare function canRecoverTerminalDirectReviewReport(state: DirectReviewV1, options?: {
95
+ allowLegacyMalformed?: boolean;
96
+ }): boolean;
97
+ export declare function recoverTerminalDirectReviewReport(state: DirectReviewV1, options?: {
98
+ allowLegacyMalformed?: boolean;
99
+ }): DirectReviewV1;
91
100
  export declare function createInitialDirectReview(input: {
92
101
  targetFingerprint: string;
93
102
  codeReviewerSessionId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"direct-delivery.d.ts","sourceRoot":"","sources":["../../../src/v2/direct-delivery.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiD,KAAK,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,KAAK,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAKjL,MAAM,MAAM,iBAAiB,GACzB,aAAa,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAEvD,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,eAAe,CAAC;IAC3B,IAAI,EAAE,UAAU,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;IAC9C,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,CAAC,CAAC;IACX,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC;IAChC,OAAO,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;IACtC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC;IACrB,gBAAgB,EAAE,CAAC,GAAG,CAAC,CAAC;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,WAAW,CAAC;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC;CACpD;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,CAAC;IACX,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;IACxC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,cAAc,EAAE,qBAAqB,EAAE,CAAC;IACxC,eAAe,CAAC,EACZ;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,IAAI,EAAE,UAAU,GAAG,QAAQ,GAAG,WAAW,CAAA;KAAE,GAChE;QAAE,MAAM,EAAE,kBAAkB,GAAG,WAAW,GAAG,gBAAgB,CAAA;KAAE,CAAC;CACrE;AAED,MAAM,WAAW,6BAA6B;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACpD,OAAO,CAAC,EAAE;QACR,OAAO,EAAE,OAAO,GAAG,gBAAgB,GAAG,aAAa,GAAG,OAAO,CAAC;QAC9D,eAAe,EAAE,MAAM,CAAC;QACxB,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAC;KAC7C,CAAC;CACH;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,QAAQ,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,sBAAsB,EAAE,MAAM,CAAC;QAC/B,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,OAAO,EAAE,CAAC;CAC3B,GAAG,MAAM,CAaT;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,cAAc,EACrB,UAAU,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,KAAK,GAAG,gBAAgB,CAAC,GACxE,cAAc,CAWhB;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAChE,cAAc,CAShB;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,kBAAkB,EAC1B,cAAc,EAAE,MAAM,GACrB,cAAc,CAiChB;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,kBAAkB,EAC1B,cAAc,EAAE,MAAM,GACrB,cAAc,CA8BhB;AAqCD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,cAAc,EACrB,QAAQ,EAAE,qBAAqB,EAAE,GAChC,cAAc,CAWhB;AAkBD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,cAAc,EACrB,iBAAiB,EAAE,MAAM,GACxB;IAAE,KAAK,EAAE,cAAc,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAA;CAAE,CAgCzD;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAa9E;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,cAAc,EACrB,eAAe,EAAE,WAAW,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,GAC9D,cAAc,CAIhB;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;CAC/B,GAAG,cAAc,CAYjB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,6BAA6B,GAAG,cAAc,CAyC3G"}
1
+ {"version":3,"file":"direct-delivery.d.ts","sourceRoot":"","sources":["../../../src/v2/direct-delivery.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { canonicalJson } from './containment.js';
3
3
  import { hashClosureRequest, validateCodeReviewDefects } from './code-review-report.js';
4
4
  const SHA256 = /^[0-9a-f]{64}$/u;
5
5
  const MAX_ITEMS = 256;
6
+ export const MAX_DIRECT_REVIEW_REPORT_REPAIRS = 4;
6
7
  export function directReviewTargetFingerprint(input) {
7
8
  const changedFiles = sortedUniqueStrings(input.changedFiles, 'direct review changed files');
8
9
  assertSha256(input.routeDecisionSha256, 'direct review route decision hash');
@@ -121,19 +122,21 @@ function mergeDefectLedger(state, report) {
121
122
  return structuredClone(existing);
122
123
  return { ...structuredClone(existing), status: 'reopened', statusTargetRevision: state.targetRevision, supersededBy: null };
123
124
  }
124
- for (const field of ['id', 'class', 'invariant', 'failure', 'introducedTargetRevision']) {
125
- if (canonicalJson(existing[field]) !== canonicalJson(next[field]))
126
- throw new Error(`review defect immutable field changed: ${field}`);
127
- }
128
- if (!affected.has(existing.id) && canonicalJson(existing) !== canonicalJson(next)) {
129
- throw new Error('Closure changed an unaffected defect');
130
- }
125
+ reported.delete(existing.id);
126
+ if (!affected.has(existing.id))
127
+ return structuredClone(existing);
131
128
  if (affected.has(existing.id) && existing.status === 'fixed'
132
129
  && !['verified', 'reopened', 'superseded'].includes(next.status)) {
133
130
  throw new Error('Closure defect transition is invalid');
134
131
  }
135
- reported.delete(existing.id);
136
- return structuredClone(next);
132
+ return {
133
+ ...structuredClone(next),
134
+ id: existing.id,
135
+ class: existing.class,
136
+ invariant: existing.invariant,
137
+ failure: existing.failure,
138
+ introducedTargetRevision: existing.introducedTargetRevision,
139
+ };
137
140
  });
138
141
  for (const added of reported.values()) {
139
142
  if (added.status !== 'open' || added.introducedTargetRevision !== state.targetRevision
@@ -194,7 +197,14 @@ export function prepareDirectReviewClosure(state, targetFingerprint) {
194
197
  stage: 'review-closure',
195
198
  targetRevision,
196
199
  targetFingerprint,
197
- review: { ...structuredClone(state.review), mode: 'closure', defects, affectedDefectIds: affectedIds },
200
+ review: {
201
+ ...structuredClone(state.review),
202
+ mode: 'closure',
203
+ reportRepairs: 0,
204
+ transportRetries: 0,
205
+ defects,
206
+ affectedDefectIds: affectedIds,
207
+ },
198
208
  repairFindings,
199
209
  };
200
210
  const closureRequestSha256 = directReviewClosureRequestSha256(nextState);
@@ -214,14 +224,40 @@ export function directReviewClosureRequestSha256(state) {
214
224
  affectedDefectIds: state.review.affectedDefectIds,
215
225
  fixedRepairFindings: state.repairFindings.filter((finding) => finding.status === 'fixed')
216
226
  .map((finding) => ({ id: finding.id, affectedContracts: finding.affectedContracts })),
217
- mandatoryCoverage: state.review.coverage,
227
+ reviewFocus: ['acceptance-criteria', 'correctness', 'test-quality'],
218
228
  });
219
229
  }
220
- export function projectTerminalDirectReview(state, terminalOutcome) {
230
+ export function projectTerminalDirectReview(state, terminalOutcome, terminalCode) {
221
231
  if (state.status === 'terminal')
222
232
  throw new Error('direct review terminal projection is immutable');
223
- const { invocation: _invocation, terminalOutcome: _priorOutcome, ...preserved } = structuredClone(state);
224
- return { ...preserved, status: 'terminal', terminalOutcome: structuredClone(terminalOutcome) };
233
+ if (terminalCode !== undefined)
234
+ assertText(terminalCode, 'direct review terminal code');
235
+ const { invocation: _invocation, terminalCode: _priorCode, terminalOutcome: _priorOutcome, ...preserved } = structuredClone(state);
236
+ return {
237
+ ...preserved,
238
+ status: 'terminal',
239
+ ...(terminalCode ? { terminalCode } : {}),
240
+ terminalOutcome: structuredClone(terminalOutcome),
241
+ };
242
+ }
243
+ export function canRecoverTerminalDirectReviewReport(state, options = {}) {
244
+ return state.status === 'terminal' && state.terminalOutcome?.status === 'internal-error'
245
+ && !state.invocation && state.stage !== null && state.stage !== 'review-repair'
246
+ && state.review.disposition === 'active' && state.review.reportRepairs > 0
247
+ && state.review.reportRepairs < MAX_DIRECT_REVIEW_REPORT_REPAIRS
248
+ && (state.terminalCode === 'direct-review-report-malformed'
249
+ || (state.terminalCode === undefined && options.allowLegacyMalformed === true));
250
+ }
251
+ export function recoverTerminalDirectReviewReport(state, options = {}) {
252
+ if (!canRecoverTerminalDirectReviewReport(state, options)) {
253
+ throw new Error('direct review terminal report is not recoverable');
254
+ }
255
+ const { terminalCode: _terminalCode, terminalOutcome: _terminalOutcome, ...withoutTerminal } = structuredClone(state);
256
+ return {
257
+ ...withoutTerminal,
258
+ status: 'active',
259
+ review: { ...withoutTerminal.review, transportRetries: 0 },
260
+ };
225
261
  }
226
262
  export function createInitialDirectReview(input) {
227
263
  assertSha256(input.targetFingerprint, 'direct review target fingerprint');
@@ -239,6 +275,7 @@ export function createInitialDirectReview(input) {
239
275
  export function validateDirectReview(value, context) {
240
276
  const optional = [
241
277
  ...(hasOwn(value, 'invocation') ? ['invocation'] : []),
278
+ ...(hasOwn(value, 'terminalCode') ? ['terminalCode'] : []),
242
279
  ...(hasOwn(value, 'terminalOutcome') ? ['terminalOutcome'] : []),
243
280
  ];
244
281
  assertExactObject(value, [
@@ -255,6 +292,9 @@ export function validateDirectReview(value, context) {
255
292
  const review = validateTrack(value.review, 'review', value.targetRevision);
256
293
  const invocation = hasOwn(value, 'invocation') ? validateInvocation(value.invocation) : undefined;
257
294
  const repairFindings = validateRepairFindings(value.repairFindings, value.targetRevision);
295
+ const terminalCode = hasOwn(value, 'terminalCode') ? value.terminalCode : undefined;
296
+ if (terminalCode !== undefined)
297
+ assertText(terminalCode, 'direct review terminal code');
258
298
  const terminalOutcome = hasOwn(value, 'terminalOutcome') ? validateTerminalProjection(value.terminalOutcome, context.lifecycle) : undefined;
259
299
  if (terminalOutcome && context.terminalOutcome && canonicalJson(terminalOutcome) !== canonicalJson(context.terminalOutcome)) {
260
300
  throw new Error('direct review terminal outcome does not match run terminal outcome');
@@ -266,6 +306,7 @@ export function validateDirectReview(value, context) {
266
306
  review,
267
307
  invocation,
268
308
  repairFindings,
309
+ terminalCode: terminalCode,
269
310
  terminalOutcome,
270
311
  }, context);
271
312
  return {
@@ -277,6 +318,7 @@ export function validateDirectReview(value, context) {
277
318
  review,
278
319
  ...(invocation ? { invocation } : {}),
279
320
  repairFindings,
321
+ ...(terminalCode ? { terminalCode: terminalCode } : {}),
280
322
  ...(terminalOutcome ? { terminalOutcome } : {}),
281
323
  };
282
324
  }
@@ -288,7 +330,7 @@ function validateComposite(value, context) {
288
330
  }
289
331
  return;
290
332
  }
291
- if (value.terminalOutcome)
333
+ if (value.terminalOutcome || value.terminalCode)
292
334
  throw new Error('non-terminal direct review has terminal projection');
293
335
  if (value.stage === null || value.targetRevision < 1)
294
336
  throw new Error('active direct review requires a stage and revision');
@@ -365,7 +407,7 @@ function validateTrack(value, field, targetRevision) {
365
407
  ], `direct review ${field} track`);
366
408
  if (value.version !== 1 || !['active', 'clear'].includes(value.disposition)
367
409
  || !['simple', 'medium', 'high'].includes(value.profile)
368
- || !isBit(value.reportRepairs) || !isBit(value.transportRetries))
410
+ || !isReportRepairCount(value.reportRepairs) || !isBit(value.transportRetries))
369
411
  throw new Error(`direct review ${field} track is invalid`);
370
412
  if (value.reviewerSessionId !== null)
371
413
  assertText(value.reviewerSessionId, `${field} reviewer session ID`);
@@ -379,7 +421,7 @@ function validateTrack(value, field, targetRevision) {
379
421
  if (value.disposition === 'active' && (value.reviewerSessionId === null || value.mode === null))
380
422
  throw new Error(`${field} active track lacks identity`);
381
423
  if (value.disposition === 'clear' && (value.reviewerSessionId === null || value.mode === null || value.acceptedReportSha256 === null
382
- || affectedDefectIds.length !== 0 || coverage.length === 0 || defects.some((defect) => (defect.class === 'blocker' || defect.class === 'execution-risk')
424
+ || affectedDefectIds.length !== 0 || defects.some((defect) => (defect.class === 'blocker' || defect.class === 'execution-risk')
383
425
  && defect.status !== 'verified' && defect.status !== 'superseded')))
384
426
  throw new Error(`${field} clear track is invalid`);
385
427
  return {
@@ -453,6 +495,9 @@ function isStage(value) {
453
495
  return ['review-full', 'review-repair', 'review-closure'].includes(value);
454
496
  }
455
497
  function isBit(value) { return value === 0 || value === 1; }
498
+ function isReportRepairCount(value) {
499
+ return Number.isSafeInteger(value) && value >= 0 && value <= MAX_DIRECT_REVIEW_REPORT_REPAIRS;
500
+ }
456
501
  function sortedUniqueStrings(value, field) {
457
502
  if (!Array.isArray(value) || value.length > MAX_ITEMS)
458
503
  throw new Error(`${field} is invalid`);
@@ -1 +1 @@
1
- {"version":3,"file":"direct-delivery.js","sourceRoot":"","sources":["../../../src/v2/direct-delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"direct-delivery.js","sourceRoot":"","sources":["../../../src/v2/direct-delivery.ts"],"names":[],"mappings":"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"}