@allocator-one/rcl 4.5.7 → 4.5.9

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 (84) hide show
  1. package/README.md +5 -4
  2. package/dist/consensus/semantic-deduper.d.ts +2 -1
  3. package/dist/consensus/semantic-deduper.js +21 -10
  4. package/dist/consensus/semantic-deduper.js.map +1 -1
  5. package/dist/converge/attempt-budget.d.ts +11 -0
  6. package/dist/converge/attempt-budget.js +119 -61
  7. package/dist/converge/attempt-budget.js.map +1 -1
  8. package/dist/converge/delivery-reconciliation.d.ts +2 -1
  9. package/dist/converge/delivery-reconciliation.js +17 -9
  10. package/dist/converge/delivery-reconciliation.js.map +1 -1
  11. package/dist/converge/guarded-input-retention.d.ts +23 -0
  12. package/dist/converge/guarded-input-retention.js +179 -0
  13. package/dist/converge/guarded-input-retention.js.map +1 -0
  14. package/dist/converge/launch-guard.d.ts +3 -0
  15. package/dist/converge/launch-guard.js +53 -17
  16. package/dist/converge/launch-guard.js.map +1 -1
  17. package/dist/converge/ordinary-pending-export.js +74 -40
  18. package/dist/converge/ordinary-pending-export.js.map +1 -1
  19. package/dist/converge/ordinary-pending-package.d.ts +16 -2
  20. package/dist/converge/ordinary-pending-package.js +77 -4
  21. package/dist/converge/ordinary-pending-package.js.map +1 -1
  22. package/dist/converge/recovered-production.d.ts +14 -0
  23. package/dist/converge/recovered-production.js +61 -0
  24. package/dist/converge/recovered-production.js.map +1 -0
  25. package/dist/converge/recovery-launch.js +82 -35
  26. package/dist/converge/recovery-launch.js.map +1 -1
  27. package/dist/converge/run-state.d.ts +2 -0
  28. package/dist/converge/run-state.js +26 -12
  29. package/dist/converge/run-state.js.map +1 -1
  30. package/dist/converge/semantic-state.js +18 -4
  31. package/dist/converge/semantic-state.js.map +1 -1
  32. package/dist/coordination/registry-lock.d.ts +2 -0
  33. package/dist/coordination/registry-lock.js +42 -13
  34. package/dist/coordination/registry-lock.js.map +1 -1
  35. package/dist/evidence/claim-recovery/delivery.d.ts +25 -0
  36. package/dist/evidence/claim-recovery/delivery.js +100 -0
  37. package/dist/evidence/claim-recovery/delivery.js.map +1 -0
  38. package/dist/evidence/claim-recovery/public-adoption.d.ts +31 -0
  39. package/dist/evidence/claim-recovery/public-adoption.js +177 -0
  40. package/dist/evidence/claim-recovery/public-adoption.js.map +1 -0
  41. package/dist/evidence/claim-recovery/public-manifest.d.ts +114 -0
  42. package/dist/evidence/claim-recovery/public-manifest.js +11 -0
  43. package/dist/evidence/claim-recovery/public-manifest.js.map +1 -0
  44. package/dist/evidence/claim-recovery/public-model.d.ts +85 -0
  45. package/dist/evidence/claim-recovery/public-model.js +177 -0
  46. package/dist/evidence/claim-recovery/public-model.js.map +1 -0
  47. package/dist/evidence/original-run/journal.d.ts +10 -0
  48. package/dist/evidence/original-run/journal.js +55 -3
  49. package/dist/evidence/original-run/journal.js.map +1 -1
  50. package/dist/evidence/original-run/lock.js +22 -9
  51. package/dist/evidence/original-run/lock.js.map +1 -1
  52. package/dist/evidence/recover-claim.d.ts +21 -0
  53. package/dist/evidence/recover-claim.js +504 -0
  54. package/dist/evidence/recover-claim.js.map +1 -0
  55. package/dist/index.js +234 -139
  56. package/dist/index.js.map +1 -1
  57. package/dist/report/assembly.d.ts +2 -0
  58. package/dist/report/assembly.js +1 -0
  59. package/dist/report/assembly.js.map +1 -1
  60. package/dist/report/consensus-assembly.d.ts +2 -0
  61. package/dist/report/consensus-assembly.js +6 -3
  62. package/dist/report/consensus-assembly.js.map +1 -1
  63. package/dist/report/reviewer-artifact.js +3 -1
  64. package/dist/report/reviewer-artifact.js.map +1 -1
  65. package/dist/report/run-header.js +2 -0
  66. package/dist/report/run-header.js.map +1 -1
  67. package/dist/telemetry/deliver.d.ts +8 -0
  68. package/dist/telemetry/deliver.js +55 -8
  69. package/dist/telemetry/deliver.js.map +1 -1
  70. package/dist/telemetry/events.js +2 -0
  71. package/dist/telemetry/events.js.map +1 -1
  72. package/dist/telemetry/outbox.d.ts +20 -0
  73. package/dist/telemetry/outbox.js +324 -103
  74. package/dist/telemetry/outbox.js.map +1 -1
  75. package/dist/telemetry/reviewer-delivery.d.ts +95 -3
  76. package/dist/telemetry/reviewer-delivery.js +600 -12
  77. package/dist/telemetry/reviewer-delivery.js.map +1 -1
  78. package/dist/telemetry/sink.d.ts +14 -0
  79. package/dist/telemetry/sink.js +44 -2
  80. package/dist/telemetry/sink.js.map +1 -1
  81. package/dist/telemetry/terminal-reviewer-delivery.d.ts +154 -5
  82. package/dist/telemetry/terminal-reviewer-delivery.js +196 -21
  83. package/dist/telemetry/terminal-reviewer-delivery.js.map +1 -1
  84. package/package.json +1 -1
@@ -1,27 +1,202 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { readFile } from 'node:fs/promises';
3
+ import { isDeepStrictEqual } from 'node:util';
4
+ import { z } from 'zod';
1
5
  import { resolveGitCommonDir } from '../converge/attempt-budget.js';
6
+ import { reconcileDeliveredRun } from '../converge/delivery-reconciliation.js';
2
7
  import { loadReviewerLineage } from '../evidence/reviewer-lineage.js';
3
- import { sha256Hex } from '../report/run-header.js';
4
- import { deliverRun } from './deliver.js';
5
- /**
6
- * Reopen an immutable terminal checkpoint pair and retry only its Harness
7
- * delivery. Lineage inspection authenticates the exact report and private
8
- * artifact locally; this path never launches a reviewer or verifier.
9
- */
10
- export async function deliverTerminalReviewerRun(runtime, options) {
11
- const commonDir = options.commonDir ?? await resolveGitCommonDir(options.cwd);
12
- const lineage = await loadReviewerLineage({ commonDir, target: options.target, runId: options.runId });
8
+ import { serializeRecoveryDocument, writeExclusive, MAX_RECOVERY_DOCUMENT_BYTES } from '../evidence/original-run/journal.js';
9
+ import { declareReviewerRecovery } from './envelope.js';
10
+ import { deliverRun, noticeBefore } from './deliver.js';
11
+ import { platformPath, readStable, sha256 } from './recovery/files.js';
12
+ import { ReviewerDeliveryQueue } from './reviewer-delivery.js';
13
+ const digest = z.string().regex(/^[a-f0-9]{64}$/);
14
+ const uuid = z.string().uuid();
15
+ const reference = z.object({ sha256: digest, bytes: z.number().int().nonnegative() }).strict();
16
+ const principal = z.object({ org_id: uuid, actor_user_id: uuid,
17
+ credential_kind: z.enum(['cli', 'api_token']), api_token_id: uuid.nullable() }).strict();
18
+ const destination = z.object({ host: z.string(), credentialKind: z.enum(['login', 'env']),
19
+ activationProtocol: z.literal(1), principal }).strict();
20
+ const previewSchema = z.object({ version: z.literal(1), target: z.string().min(1), runId: uuid,
21
+ headSha: z.string().regex(/^[a-f0-9]{40}$/), host: z.string(), credentialKind: z.enum(['login', 'env']),
22
+ manifest: reference, envelope: reference, report_json: reference, report_md: reference.optional(), reviewer: reference }).strict();
23
+ const manifestSchema = z.object({ kind: z.literal('rcl-retained-reviewer-activation'), version: z.literal(1),
24
+ operation_id: uuid, created_at: z.iso.datetime(), rcl_version: z.string(), destination,
25
+ prepared: z.object({ outbox: previewSchema, lineage: z.object({ plan_sha256: digest, checkpoint_sha256: digest,
26
+ captured_inputs_sha256: digest, runs: z.array(z.object({ run_id: uuid, report_json: reference, reviewer: reference }).strict()).min(1) }).strict() }).strict(),
27
+ observation: z.object({ reviewer: z.enum(['absent', 'pending', 'verified']),
28
+ report_json: z.enum(['missing', 'verified', 'conflict']),
29
+ report_md: z.enum(['not_declared', 'missing', 'verified', 'conflict']) }).strict() }).strict();
30
+ function reviewerSource(lineage) {
31
+ const descriptor = lineage.latest.inspected.descriptor;
32
+ if (descriptor.kind === 'original')
33
+ return undefined;
34
+ const source = lineage.runs.at(-2);
35
+ if (!source || source.runId !== descriptor.source.run_id || source.terminal.reportSha256 !== descriptor.source.report_sha256) {
36
+ throw new Error('reviewer_delivery_lineage_source_mismatch');
37
+ }
38
+ return { run_id: source.runId, report_sha256: source.terminal.reportSha256,
39
+ reviewer_artifact_sha256: sha256(source.terminal.reviewerArtifactBytes) };
40
+ }
41
+ async function prepare(runtime, commonDir, target, runId) {
42
+ const lineage = await loadReviewerLineage({ commonDir, target, runId });
13
43
  const { inspected, terminal } = lineage.latest;
14
- const result = JSON.parse(terminal.reportBytes);
15
- const outcome = await deliverRun(runtime, {
16
- result,
17
- artifacts: { report_json: terminal.reportBytes },
18
- reviewerArtifact: inspected.artifact,
19
- evidenceRequired: true,
20
- });
21
- return {
22
- outcome,
23
- reportSha256: sha256Hex(terminal.reportBytes),
24
- reviewerArtifactSha256: sha256Hex(terminal.reviewerArtifactBytes),
44
+ const source = reviewerSource(lineage);
45
+ const declaration = declareReviewerRecovery({ artifact: inspected.artifact, descriptor: inspected.descriptor,
46
+ ...(source ? { source } : {}) });
47
+ const selection = {
48
+ target, runId, headSha: lineage.plan.headSha,
49
+ reportSha256: terminal.reportSha256, reportByteLength: Buffer.byteLength(terminal.reportBytes), reportBytes: terminal.reportBytes,
50
+ reviewerArtifactSha256: sha256(terminal.reviewerArtifactBytes), reviewerArtifactByteLength: Buffer.byteLength(terminal.reviewerArtifactBytes), reviewerArtifactBytes: terminal.reviewerArtifactBytes,
51
+ reviewerRecovery: declaration,
25
52
  };
53
+ const recovery = await new ReviewerDeliveryQueue(runtime.dataDir).prepareRecovery(selection);
54
+ const outbox = recovery.preview;
55
+ const prepared = { outbox, lineage: { plan_sha256: lineage.plan.digest, checkpoint_sha256: lineage.latest.proof.digest,
56
+ captured_inputs_sha256: lineage.latest.captured.digest, runs: lineage.runs.map(run => ({ run_id: run.runId,
57
+ report_json: { sha256: run.terminal.reportSha256, bytes: Buffer.byteLength(run.terminal.reportBytes) },
58
+ reviewer: { sha256: sha256(run.terminal.reviewerArtifactBytes), bytes: Buffer.byteLength(run.terminal.reviewerArtifactBytes) } })) } };
59
+ return { selection, outbox, prepared, ...(recovery.reportMarkdownBytes === undefined ? {} : { reportMarkdownBytes: recovery.reportMarkdownBytes }) };
60
+ }
61
+ function requireRuntime(runtime) {
62
+ if (runtime.level !== 'full' || !runtime.repoManaged || !runtime.sink || !runtime.credential || runtime.attested) {
63
+ throw new Error('reviewer_delivery_recovery_runtime_unsupported');
64
+ }
65
+ return runtime.sink;
66
+ }
67
+ async function currentDestination(runtime, expected) {
68
+ const sink = requireRuntime(runtime);
69
+ const capability = await sink.checkReviewerRecoveryActivation();
70
+ if (capability.kind !== 'ok')
71
+ throw new Error('reviewer_delivery_activation_unsupported');
72
+ const value = { host: sink.baseUrl,
73
+ credentialKind: sink.credentialSource, activationProtocol: 1, principal: capability.value.principal };
74
+ if (expected && !isDeepStrictEqual(value, expected))
75
+ throw new Error('reviewer_delivery_principal_mismatch');
76
+ return value;
77
+ }
78
+ async function observation(runtime, preview, selection, reportMarkdownBytes) {
79
+ const sink = requireRuntime(runtime);
80
+ const read = await sink.getReviewerArtifact(preview.runId, preview.reviewer);
81
+ let reviewer;
82
+ if (read.kind === 'ok')
83
+ reviewer = 'verified';
84
+ else if (read.kind === 'pending')
85
+ reviewer = 'pending';
86
+ else if (read.kind === 'rejected' && read.httpStatus === 404 && read.error === 'reviewer_artifact_http_404')
87
+ reviewer = 'absent';
88
+ else
89
+ throw new Error(read.kind === 'unavailable' ? 'reviewer_delivery_unavailable' : 'reviewer_delivery_refused');
90
+ const ordinary = async (kind, bytes) => {
91
+ const value = await sink.getArtifact(preview.runId, kind, Buffer.byteLength(bytes));
92
+ if (value.kind === 'ok')
93
+ return value.value.bytes.equals(Buffer.from(bytes)) ? 'verified' : 'conflict';
94
+ if (value.kind === 'rejected' && value.httpStatus === 404)
95
+ return 'missing';
96
+ throw new Error(value.kind === 'unavailable' ? 'reviewer_delivery_unavailable' : 'reviewer_delivery_refused');
97
+ };
98
+ return { reviewer, report_json: await ordinary('report_json', selection.reportBytes),
99
+ report_md: reportMarkdownBytes === undefined ? 'not_declared' : await ordinary('report_md', reportMarkdownBytes) };
100
+ }
101
+ function isLegacyDelivery(options) {
102
+ const candidate = options;
103
+ return [candidate.preview, candidate.apply, candidate.resume].filter(Boolean).length === 0 &&
104
+ candidate.manifest === undefined && candidate.manifestSha256 === undefined &&
105
+ typeof options.target === 'string' && options.target.length > 0 && uuid.safeParse(options.runId).success;
106
+ }
107
+ export async function deliverTerminalReviewerRun(runtime, options) {
108
+ const commonDir = options.commonDir ?? await resolveGitCommonDir(options.cwd);
109
+ if (isLegacyDelivery(options)) {
110
+ const lineage = await loadReviewerLineage({ commonDir, target: options.target, runId: options.runId });
111
+ const queue = new ReviewerDeliveryQueue(runtime.dataDir);
112
+ if (await queue.hasEntry(options.runId)) {
113
+ throw new Error('reviewer_delivery_explicit_activation_required: retained outboxes require --preview, then --apply or --resume');
114
+ }
115
+ const { inspected, terminal } = lineage.latest;
116
+ const result = JSON.parse(terminal.reportBytes);
117
+ const outcome = await deliverRun(runtime, { result, artifacts: { report_json: terminal.reportBytes },
118
+ reviewerArtifact: inspected.artifact, evidenceRequired: true });
119
+ return { outcome, reportSha256: sha256(terminal.reportBytes),
120
+ reviewerArtifactSha256: sha256(terminal.reviewerArtifactBytes) };
121
+ }
122
+ const activation = options;
123
+ const modes = [activation.preview, activation.apply, activation.resume].filter(Boolean).length;
124
+ const preview = activation.preview === true;
125
+ if (modes !== 1) {
126
+ throw new Error('choose_exactly_one_recovery_mode: use exactly one of --preview, --apply, or --resume');
127
+ }
128
+ const manifestOption = activation.manifest;
129
+ if (!manifestOption)
130
+ throw new Error('reviewer_delivery_manifest_required');
131
+ const manifestPath = platformPath(manifestOption);
132
+ if (preview) {
133
+ if (!activation.target || !activation.runId || activation.manifestSha256 !== undefined)
134
+ throw new Error('reviewer_delivery_invalid_preview');
135
+ const { prepared, selection, reportMarkdownBytes } = await prepare(runtime, commonDir, activation.target, activation.runId);
136
+ await noticeBefore(runtime, 'private-reviewers');
137
+ const target = await currentDestination(runtime);
138
+ if (target.host !== prepared.outbox.host || target.credentialKind !== prepared.outbox.credentialKind) {
139
+ throw new Error('reviewer_delivery_destination_mismatch');
140
+ }
141
+ const observed = await observation(runtime, prepared.outbox, selection, reportMarkdownBytes);
142
+ const manifest = { kind: 'rcl-retained-reviewer-activation', version: 1,
143
+ operation_id: randomUUID(), created_at: new Date().toISOString(), rcl_version: runtime.rclVersion,
144
+ destination: target, prepared, observation: observed };
145
+ manifestSchema.parse(manifest);
146
+ const bytes = serializeRecoveryDocument(manifest, MAX_RECOVERY_DOCUMENT_BYTES);
147
+ await writeExclusive(manifestPath, manifest, MAX_RECOVERY_DOCUMENT_BYTES);
148
+ return { status: 'prepared', manifest: manifestPath, manifest_sha256: sha256(bytes), operation_id: manifest.operation_id,
149
+ run_id: prepared.outbox.runId, observation: observed, accounting: 'unchanged; delivery is not native admission or reviewer execution' };
150
+ }
151
+ if (activation.target !== undefined || activation.runId !== undefined || !digest.safeParse(activation.manifestSha256).success) {
152
+ throw new Error('reviewer_delivery_apply_uses_only_pinned_manifest');
153
+ }
154
+ const retained = await readStable(manifestPath, MAX_RECOVERY_DOCUMENT_BYTES);
155
+ if (retained.sha256 !== activation.manifestSha256)
156
+ throw new Error('reviewer_delivery_manifest_digest_mismatch');
157
+ const manifest = manifestSchema.parse(JSON.parse(retained.text));
158
+ let current;
159
+ try {
160
+ current = await prepare(runtime, commonDir, manifest.prepared.outbox.target, manifest.prepared.outbox.runId);
161
+ }
162
+ catch {
163
+ throw new Error('reviewer_delivery_lineage_or_outbox_changed');
164
+ }
165
+ const { selection, outbox, prepared } = current;
166
+ if (!isDeepStrictEqual(prepared, manifest.prepared) || !isDeepStrictEqual(outbox, manifest.prepared.outbox)) {
167
+ throw new Error('reviewer_delivery_lineage_or_outbox_changed');
168
+ }
169
+ const queue = new ReviewerDeliveryQueue(runtime.dataDir);
170
+ const journalPath = queue.recoveryJournalPath(outbox.runId, manifest.operation_id);
171
+ const operationBase = { operationId: manifest.operation_id,
172
+ recoveryManifestSha256: retained.sha256, destination: manifest.destination };
173
+ let operation;
174
+ if (activation.resume) {
175
+ operation = { mode: 'resume', ...operationBase, manifestPath };
176
+ await queue.preflightRecoveryAcknowledgements(selection, outbox, operation);
177
+ }
178
+ else {
179
+ await queue.preflightRecoveryAcknowledgements(selection, outbox);
180
+ }
181
+ await noticeBefore(runtime, 'private-reviewers');
182
+ await currentDestination(runtime, manifest.destination);
183
+ if (activation.apply) {
184
+ operation = { mode: 'apply', ...operationBase, manifestPath };
185
+ }
186
+ if (!operation)
187
+ throw new Error('reviewer_delivery_recovery_operation_mismatch');
188
+ if (activation.apply)
189
+ await queue.applyRecovery(requireRuntime(runtime), selection, outbox, operation);
190
+ else
191
+ await queue.resumeRecovery(requireRuntime(runtime), selection, outbox, operation);
192
+ const ack = platformPath(`${runtime.dataDir}/reviewer-outbox/${outbox.runId.toLowerCase()}/recovery-acknowledged.json`);
193
+ await readFile(ack, 'utf8');
194
+ const ordinaryAck = platformPath(`${runtime.dataDir}/reviewer-outbox/${outbox.runId.toLowerCase()}/acknowledged.json`);
195
+ await readFile(ordinaryAck, 'utf8');
196
+ const deliveryReconciliation = await reconcileDeliveredRun(outbox.runId, requireRuntime(runtime), { gitCommonDir: commonDir });
197
+ return { status: 'complete', manifest: manifestPath, manifest_sha256: retained.sha256, operation_id: manifest.operation_id,
198
+ run_id: outbox.runId, journal: journalPath, recovery_acknowledgement: ack,
199
+ delivery_reconciliation: deliveryReconciliation,
200
+ accounting: 'reviewer calls, attempts, and admitted rounds unchanged; delivery-pending reconciliation is reported separately' };
26
201
  }
27
202
  //# sourceMappingURL=terminal-reviewer-delivery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-reviewer-delivery.js","sourceRoot":"","sources":["../../src/telemetry/terminal-reviewer-delivery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,UAAU,EAA+C,MAAM,cAAc,CAAC;AAevF;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAAyB,EACzB,OAAwC;IAExC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,MAAM,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IACvG,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAiB,CAAC;IAChE,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE;QACxC,MAAM;QACN,SAAS,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE;QAChD,gBAAgB,EAAE,SAAS,CAAC,QAAQ;QACpC,gBAAgB,EAAE,IAAI;KACvB,CAAC,CAAC;IACH,OAAO;QACL,OAAO;QACP,YAAY,EAAE,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC7C,sBAAsB,EAAE,SAAS,CAAC,QAAQ,CAAC,qBAAqB,CAAC;KAClE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"terminal-reviewer-delivery.js","sourceRoot":"","sources":["../../src/telemetry/terminal-reviewer-delivery.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@allocator-one/rcl",
3
- "version": "4.5.7",
3
+ "version": "4.5.9",
4
4
  "description": "Review Council — multi-model AI code review CLI",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",