@allocator-one/rcl 4.5.4 → 4.5.6

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 (64) hide show
  1. package/README.md +5 -4
  2. package/dist/converge/attempt-budget.d.ts +14 -0
  3. package/dist/converge/attempt-budget.js +216 -1
  4. package/dist/converge/attempt-budget.js.map +1 -1
  5. package/dist/converge/launch-guard.js +23 -6
  6. package/dist/converge/launch-guard.js.map +1 -1
  7. package/dist/converge/launch-record.d.ts +36 -0
  8. package/dist/converge/launch-record.js +9 -3
  9. package/dist/converge/launch-record.js.map +1 -1
  10. package/dist/converge/legacy-launch-health.d.ts +36 -0
  11. package/dist/converge/native-lock.d.ts +3 -1
  12. package/dist/converge/native-lock.js +4 -4
  13. package/dist/converge/native-lock.js.map +1 -1
  14. package/dist/converge/ordinary-pending-export.d.ts +3 -0
  15. package/dist/converge/ordinary-pending-export.js +64 -17
  16. package/dist/converge/ordinary-pending-export.js.map +1 -1
  17. package/dist/converge/ordinary-pending-package.d.ts +11 -0
  18. package/dist/converge/ordinary-pending-package.js +18 -4
  19. package/dist/converge/ordinary-pending-package.js.map +1 -1
  20. package/dist/converge/pending-finalization-receipt.d.ts +4 -0
  21. package/dist/converge/pending-finalization-receipt.js +102 -0
  22. package/dist/converge/pending-finalization-receipt.js.map +1 -0
  23. package/dist/converge/pending-legacy-resume.d.ts +48 -3
  24. package/dist/converge/pending-legacy-resume.js +215 -35
  25. package/dist/converge/pending-legacy-resume.js.map +1 -1
  26. package/dist/converge/pending-recovery-source.d.ts +114 -0
  27. package/dist/converge/pending-recovery-source.js +36 -1
  28. package/dist/converge/pending-recovery-source.js.map +1 -1
  29. package/dist/converge/process-identity.d.ts +51 -0
  30. package/dist/converge/process-identity.js +190 -0
  31. package/dist/converge/process-identity.js.map +1 -0
  32. package/dist/converge/recovery-launch.js +39 -17
  33. package/dist/converge/recovery-launch.js.map +1 -1
  34. package/dist/converge/recovery-state.d.ts +55 -0
  35. package/dist/converge/recovery-state.js +306 -0
  36. package/dist/converge/recovery-state.js.map +1 -0
  37. package/dist/converge/run-state.d.ts +39 -1
  38. package/dist/converge/run-state.js +246 -18
  39. package/dist/converge/run-state.js.map +1 -1
  40. package/dist/converge/semantic-state.d.ts +55 -0
  41. package/dist/converge/semantic-state.js +666 -0
  42. package/dist/converge/semantic-state.js.map +1 -0
  43. package/dist/converge/stale-report.d.ts +36 -0
  44. package/dist/dispatch/async-lane.d.ts +12 -0
  45. package/dist/dispatch/async-lane.js +98 -12
  46. package/dist/dispatch/async-lane.js.map +1 -1
  47. package/dist/evidence/claim-recovery/validation/native-state.d.ts +22 -0
  48. package/dist/evidence/claim-recovery/validation/native-state.js +91 -9
  49. package/dist/evidence/claim-recovery/validation/native-state.js.map +1 -1
  50. package/dist/evidence/claim-recovery/validation/obligations.js +2 -1
  51. package/dist/evidence/claim-recovery/validation/obligations.js.map +1 -1
  52. package/dist/evidence/claim-recovery/validation/semantic-validation.d.ts +11 -0
  53. package/dist/evidence/claim-recovery/validation/semantic-validation.js +105 -28
  54. package/dist/evidence/claim-recovery/validation/semantic-validation.js.map +1 -1
  55. package/dist/evidence/claim-recovery/validation/types.d.ts +10 -0
  56. package/dist/evidence/original-run/lock-scope.d.ts +12 -6
  57. package/dist/evidence/original-run/lock-scope.js +12 -9
  58. package/dist/evidence/original-run/lock-scope.js.map +1 -1
  59. package/dist/index.js +59 -13
  60. package/dist/index.js.map +1 -1
  61. package/dist/telemetry/recovery/files.d.ts +4 -0
  62. package/dist/telemetry/recovery/files.js +15 -5
  63. package/dist/telemetry/recovery/files.js.map +1 -1
  64. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"native-state.js","sourceRoot":"","sources":["../../../../src/evidence/claim-recovery/validation/native-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native-state.js","sourceRoot":"","sources":["../../../../src/evidence/claim-recovery/validation/native-state.ts"],"names":[],"mappings":"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"}
@@ -55,7 +55,8 @@ export function migratedLegacyPendingRound(entry, state) {
55
55
  pendingRound = criticalSighting;
56
56
  }
57
57
  const regating = state.lastAnnotations?.identities.some(a => a.identity === entry.key && a.status === 'regating' && a.gating !== 'none');
58
- if (regating && !verdictClearsPending(state, entry.key, state.lastAnnotations.round, entry.verdictRound ?? 0, verdictSeverity)) {
58
+ const regatingCleared = verdictSeverity === 'critical' && (entry.verdictRound ?? 0) >= (state.lastAnnotations?.round ?? Infinity);
59
+ if (regating && !regatingCleared) {
59
60
  if (pendingRound === undefined || verdictClearsPending(state, entry.key, pendingRound, entry.verdictRound ?? 0, verdictSeverity)) {
60
61
  pendingRound = state.lastAnnotations.round;
61
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"obligations.js","sourceRoot":"","sources":["../../../../src/evidence/claim-recovery/validation/obligations.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IACrC,IAAI,GAAG,wBAAwB,CAAC;IAEzC,YAAY,OAAe,EAAE,OAAsB;QACjD,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED,MAAM,UAAU,mBAAmB,CAAC,CAAoD;IACtF,IAAI,CAAC,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,OAAO,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC;AAC9F,CAAC;AACD,2FAA2F;AAC3F,MAAM,UAAU,oBAAoB,CAAC,KAAuB,EAAE,GAAW,EAAE,YAAoB,EAC7F,YAAoB,EAAE,eAAmC;IACzD,wEAAwE;IACxE,yEAAyE;IACzE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC;IAC9H,OAAO,YAAY,IAAI,YAAY,IAAI,CAAC,QAAQ,KAAK,UAAU,IAAI,eAAe,KAAK,UAAU,CAAC,CAAC;AACrG,CAAC;AACD,oFAAoF;AACpF,MAAM,UAAU,0BAA0B,CAAC,KAAmB,EAAE,KAAuB;IACrF,IAAI,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IACtC,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,QAAQ,CAAC;IAChE,IAAI,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS;QAC/E,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,eAAe,CAAC,EAAE,CAAC;QAC9F,YAAY,GAAG,SAAS,CAAC;IAC3B,CAAC;IACD,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,UAAU;QACjH,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IAChG,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IAClG,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,eAAe,EAAE,KAAK;QAC9G,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IACxE,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,IAAI,CAAC,eAAe;YAAE,YAAY,KAAK,KAAK,CAAC,UAAU,CAAC;IAC1D,CAAC;IACD,IAAI,gBAAoC,CAAC;IACzC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC,uEAAuE;QACvE,4EAA4E;QAC5E,IAAI,eAAe,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,UAAU;YAAE,SAAS;QAClE,0EAA0E;QAC1E,yEAAyE;QACzE,+CAA+C;QAC/C,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,UAAU;YAC5C,CAAC,CAAC,eAAe,KAAK,UAAU,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAClF,gBAAgB,GAAG,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC;IACD,0EAA0E;IAC1E,8EAA8E;IAC9E,IAAI,gBAAgB,KAAK,SAAS,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,gBAAgB,GAAG,YAAY;QAChG,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC;QACpG,YAAY,GAAG,gBAAgB,CAAC;IAClC,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IACzI,IAAI,QAAQ,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,eAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC;QAChI,IAAI,YAAY,KAAK,SAAS,IAAI,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC;YACjI,YAAY,GAAG,KAAK,CAAC,eAAgB,CAAC,KAAK,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"obligations.js","sourceRoot":"","sources":["../../../../src/evidence/claim-recovery/validation/obligations.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,16 @@
1
1
  import type { ConvergeRunState, ReportBinding, RetainedReport } from './types.js';
2
2
  import type { RetainedSources } from './sources.js';
3
+ /** Index immutable sightings once so every validator shares linear traversal. */
4
+ export declare function indexSemanticSightings<T extends {
5
+ round: number;
6
+ canonicalIdentity: string;
7
+ }>(sightings: readonly T[]): {
8
+ byRound: Map<number, T[]>;
9
+ byIdentity: Map<string, T[]>;
10
+ byIdentityAndRound: Map<string, Map<number, T[]>>;
11
+ };
12
+ /** Use an authenticated admission snapshot, or fall back to the validated current obligations. */
13
+ export declare function admittedActionableBeforeTriage(state: ConvergeRunState, round?: number | undefined): string[];
3
14
  export declare function verifyRoundBinding(binding: ReportBinding, target: string, round: number, runId: string, raw: string): RetainedReport;
4
15
  /** All native consumers validate the same immutable sighting membership before effects. */
5
16
  export declare function validateSemanticState(state: ConvergeRunState, sources: RetainedSources, recoveryLegacy?: ConvergeRunState, recoveryDismissalsByRound?: Map<number, ReadonlyMap<string, string>>): void;
@@ -3,12 +3,40 @@ import { isDeepStrictEqual } from 'node:util';
3
3
  import { z } from 'zod';
4
4
  import { claimDescriptorSchema, compareClaims } from './claims.js';
5
5
  import { decodeOriginalReport, decodeRecoveryDocument } from '../../original-run/decode.js';
6
- import { recoveryAnchors } from './native-state.js';
6
+ import { effectivePendingIdentities, recoveryAnchors } from './native-state.js';
7
+ import { occurrencePendingIdentities } from './native-occurrences.js';
7
8
  import { ConvergeRunStateError, findingGatingReason, migratedLegacyPendingRound, verdictClearsPending } from './obligations.js';
8
9
  import { DEFAULT_SEVERITY_ORDER } from '../../../config/defaults.js';
9
10
  import { semanticCacheMatches } from './semantic-cache.js';
10
11
  import { object } from './primitives.js';
11
12
  const sha = (bytes) => createHash('sha256').update(bytes).digest('hex');
13
+ /** Index immutable sightings once so every validator shares linear traversal. */
14
+ export function indexSemanticSightings(sightings) {
15
+ const byRound = new Map();
16
+ const byIdentity = new Map();
17
+ const byIdentityAndRound = new Map();
18
+ for (const sighting of sightings) {
19
+ const { round, canonicalIdentity } = sighting;
20
+ const roundMembers = byRound.get(round) ?? [];
21
+ roundMembers.push(sighting);
22
+ byRound.set(round, roundMembers);
23
+ const identityMembers = byIdentity.get(canonicalIdentity) ?? [];
24
+ identityMembers.push(sighting);
25
+ byIdentity.set(canonicalIdentity, identityMembers);
26
+ const identityRounds = byIdentityAndRound.get(canonicalIdentity) ?? new Map();
27
+ const identityRoundMembers = identityRounds.get(round) ?? [];
28
+ identityRoundMembers.push(sighting);
29
+ identityRounds.set(round, identityRoundMembers);
30
+ byIdentityAndRound.set(canonicalIdentity, identityRounds);
31
+ }
32
+ return { byRound, byIdentity, byIdentityAndRound };
33
+ }
34
+ /** Use an authenticated admission snapshot, or fall back to the validated current obligations. */
35
+ export function admittedActionableBeforeTriage(state, round = state.lastAnnotations?.round) {
36
+ const reviewedRound = state.rounds.find(row => row.round === round);
37
+ const retained = reviewedRound?.admission?.actionableIdentities;
38
+ return retained ? [...retained] : effectivePendingIdentities(state);
39
+ }
12
40
  export function verifyRoundBinding(binding, target, round, runId, raw) {
13
41
  const bytes = Buffer.from(raw);
14
42
  let report;
@@ -68,23 +96,8 @@ function validateSemanticMembership(state, sources, recoveryLegacy, recoveryDism
68
96
  requireIntegrity(Array.isArray(state.sightings));
69
97
  const sightings = state.sightings;
70
98
  const originalTitles = new Map();
71
- const sightingsByRound = new Map();
72
- const sightingsByIdentity = new Map();
73
- const sightingsByIdentityAndRound = new Map();
74
99
  requireIntegrity(sightings.every(s => sightingSchema.safeParse(s).success));
75
- for (const sighting of sightings) {
76
- const roundMembers = sightingsByRound.get(sighting.round) ?? [];
77
- roundMembers.push(sighting);
78
- sightingsByRound.set(sighting.round, roundMembers);
79
- const identityMembers = sightingsByIdentity.get(sighting.canonicalIdentity) ?? [];
80
- identityMembers.push(sighting);
81
- sightingsByIdentity.set(sighting.canonicalIdentity, identityMembers);
82
- const identityRounds = sightingsByIdentityAndRound.get(sighting.canonicalIdentity) ?? new Map();
83
- const identityRoundMembers = identityRounds.get(sighting.round) ?? [];
84
- identityRoundMembers.push(sighting);
85
- identityRounds.set(sighting.round, identityRoundMembers);
86
- sightingsByIdentityAndRound.set(sighting.canonicalIdentity, identityRounds);
87
- }
100
+ const { byRound: sightingsByRound, byIdentity: sightingsByIdentity, byIdentityAndRound: sightingsByIdentityAndRound } = indexSemanticSightings(sightings);
88
101
  for (const anchor of recoveryAnchors(state)) {
89
102
  requireIntegrity((sightingsByIdentity.get(anchor.identity) ?? []).every(sighting => sighting.file === anchor.source.file && sighting.category === anchor.source.category &&
90
103
  compareClaims(sighting.claimDescriptor, anchor.descriptor) !== undefined));
@@ -114,6 +127,7 @@ function validateSemanticMembership(state, sources, recoveryLegacy, recoveryDism
114
127
  }
115
128
  }
116
129
  const rounds = new Set();
130
+ const reportsByRound = new Map();
117
131
  for (const round of state.rounds) {
118
132
  requireIntegrity(!!round && Number.isSafeInteger(round.round) && round.round > 0 && !rounds.has(round.round));
119
133
  rounds.add(round.round);
@@ -131,6 +145,7 @@ function validateSemanticMembership(state, sources, recoveryLegacy, recoveryDism
131
145
  requireIntegrity(bindingSchema.safeParse(round.reportBinding).success && round.runId === round.reportBinding?.runId);
132
146
  const binding = round.reportBinding;
133
147
  const report = readBoundReport(binding, state.target, round.round, round.runId, sources);
148
+ reportsByRound.set(round.round, report);
134
149
  // Later semantic rounds must agree with the native cycle (including none).
135
150
  // Original legacy rounds remain bounded by their exact predecessor bytes.
136
151
  const cycleRun = report.run;
@@ -225,7 +240,7 @@ function validateSemanticMembership(state, sources, recoveryLegacy, recoveryDism
225
240
  let latestGatedRound = null;
226
241
  let latestGatedRoundAfterVerdict = null;
227
242
  for (const [round, group] of [...byRound].sort(([a], [b]) => a - b)) {
228
- if (group.some(s => s.gating !== 'none')) {
243
+ if (group.some(s => s.gating !== 'none' && s.status !== 'suppressed')) {
229
244
  latestGatedRound = round;
230
245
  if (entry.verdict === undefined || !verdictClearsPending(state, key, round, entry.verdictRound, entry.verdictSeverity)) {
231
246
  latestGatedRoundAfterVerdict = round;
@@ -233,7 +248,9 @@ function validateSemanticMembership(state, sources, recoveryLegacy, recoveryDism
233
248
  }
234
249
  requireIntegrity(group.every(s => s.pendingRound === group[0].pendingRound));
235
250
  const capturedPending = group[0].pendingRound;
236
- requireIntegrity(capturedPending === null || byRound.get(capturedPending)?.some(s => s.gating !== 'none') === true);
251
+ requireIntegrity(capturedPending === null || byRound.get(capturedPending)?.some(s => s.gating !== 'none' && s.status !== 'suppressed') === true);
252
+ if (group.every(s => s.status === 'suppressed'))
253
+ continue;
237
254
  // A verdict is recorded after its round's sightings, so it can clear the
238
255
  // obligation carried by later sightings without rewriting that round's
239
256
  // immutable capture. A weaker verdict cannot clear a critical source.
@@ -246,10 +263,66 @@ function validateSemanticMembership(state, sources, recoveryLegacy, recoveryDism
246
263
  !(entry.verdict !== undefined && verdictClearsPending(state, key, latestPending, entry.verdictRound, entry.verdictSeverity)) ? latestPending : undefined;
247
264
  requireIntegrity(entry.pendingRound === expectedPending);
248
265
  }
266
+ for (const roundEntry of state.rounds) {
267
+ const admission = roundEntry.admission;
268
+ if (!admission)
269
+ continue;
270
+ requireIntegrity(admission.version === 1 && Number.isSafeInteger(admission.recoveryOperationCount) &&
271
+ admission.recoveryOperationCount >= 0 && admission.recoveryOperationCount <= (state.recovery?.operations.length ?? 0));
272
+ const retainedSet = new Set(admission.actionableIdentities);
273
+ const roundSightings = sightingsByRound.get(roundEntry.round) ?? [];
274
+ const report = reportsByRound.get(roundEntry.round);
275
+ const recoverySource = report?.run?.converge?.recovery_source;
276
+ requireIntegrity(recoverySource?.version === 1 && recoverySource.native_sha256 === admission.sourceStateSha256);
277
+ const predecessorRaw = sources.snapshots.get(admission.sourceStateSha256);
278
+ requireIntegrity(predecessorRaw !== undefined && sha(predecessorRaw) === admission.sourceStateSha256);
279
+ const predecessor = decodeRecoveryDocument(predecessorRaw);
280
+ requireIntegrity(predecessor.target === state.target && predecessor.version === 3 &&
281
+ admission.recoveryOperationCount === predecessor.recovery?.operations.length);
282
+ const expectedAdmission = new Set(effectivePendingIdentities(predecessor));
283
+ for (const sighting of roundSightings) {
284
+ if (sighting.gating !== 'none' && sighting.status !== 'suppressed' && sighting.pendingRound !== null) {
285
+ expectedAdmission.add(sighting.canonicalIdentity);
286
+ }
287
+ }
288
+ requireIntegrity(isDeepStrictEqual(admission.actionableIdentities, [...expectedAdmission].sort()));
289
+ sources.pathRequirements.push({ kind: 'native-predecessor', sha256: admission.sourceStateSha256,
290
+ nativePathSuffix: `.recovery-sources/${admission.sourceStateSha256}.json` });
291
+ requireIntegrity(roundSightings.every(sighting => sighting.pendingRound === null || retainedSet.has(sighting.canonicalIdentity)));
292
+ requireIntegrity(Object.values(state.findings).every(entry => entry.firstRound > roundEntry.round ||
293
+ entry.pendingRound === undefined || entry.pendingRound > roundEntry.round || retainedSet.has(entry.key)));
294
+ const admittedOperations = state.recovery?.operations.slice(0, admission.recoveryOperationCount) ?? [];
295
+ const operationPending = new Set(admittedOperations.flatMap(operation => [
296
+ ...operation.anchors.filter(anchor => anchor.source.gating !== 'none').map(anchor => anchor.identity),
297
+ ...occurrencePendingIdentities(operation.occurrences),
298
+ ...(operation.material?.pendingIdentities ?? []),
299
+ ]));
300
+ requireIntegrity(admission.actionableIdentities.every(identity => {
301
+ const entry = state.findings[identity];
302
+ const latestSighting = (sightingsByIdentity.get(identity) ?? [])
303
+ .filter(sighting => sighting.round <= roundEntry.round).at(-1);
304
+ const legacyEntry = legacy?.findings[identity];
305
+ return operationPending.has(identity) ||
306
+ legacyEntry !== undefined && migratedLegacyPendingRound(legacyEntry, legacy) !== undefined ||
307
+ latestSighting !== undefined && latestSighting.pendingRound !== null;
308
+ }));
309
+ }
249
310
  const latest = Math.max(0, ...rounds);
250
311
  if (latest && !legacy?.rounds.some(r => r.round === latest)) {
251
- requireIntegrity(isDeepStrictEqual(state.lastAnnotations, { round: latest, identities: (sightingsByRound.get(latest) ?? [])
252
- .map(s => ({ identity: s.canonicalIdentity, status: s.status, gating: s.gating })) }));
312
+ const expected = { round: latest, identities: (sightingsByRound.get(latest) ?? [])
313
+ .map(s => ({ identity: s.canonicalIdentity, status: s.status, gating: s.gating })) };
314
+ requireIntegrity(state.lastAnnotations !== undefined && state.lastAnnotations.round === expected.round &&
315
+ isDeepStrictEqual(state.lastAnnotations.identities, expected.identities));
316
+ const admission = state.rounds.find(row => row.round === latest)?.admission;
317
+ if (admission)
318
+ requireIntegrity(state.lastAnnotations.actionableBeforeTriage !== undefined &&
319
+ isDeepStrictEqual(admission.actionableIdentities, state.lastAnnotations.actionableBeforeTriage));
320
+ if (state.lastAnnotations.actionableBeforeTriage !== undefined) {
321
+ const retained = state.lastAnnotations.actionableBeforeTriage;
322
+ const retainedSet = new Set(retained);
323
+ requireIntegrity((sightingsByRound.get(latest) ?? []).every(sighting => sighting.pendingRound === null || retainedSet.has(sighting.canonicalIdentity)));
324
+ requireIntegrity(state.lastAnnotations.identities.every(row => row.gating === 'none' || row.status === 'suppressed' || retainedSet.has(row.identity)));
325
+ }
253
326
  }
254
327
  }
255
328
  /** @internal Pure retained-history projection used by validation regressions. */
@@ -304,16 +377,20 @@ function validateSightingClassification(state, sightingsByIdentityAndRound, requ
304
377
  const firstRound = Math.min(...byRound.keys());
305
378
  for (const [round, group] of byRound) {
306
379
  const ordinaryVerdict = (entry.verdictRound ?? Infinity) < round;
380
+ const verdictRecordedForThisSightingOrLater = entry.verdict !== undefined && entry.verdictRound >= round;
307
381
  const recoveryDismissal = recoveryDismissalsForRound(round, key);
308
- const recoveredEscalation = !ordinaryVerdict && group.some(row => row.severity === 'critical') &&
382
+ const overwrittenRecoveredEscalation = verdictRecordedForThisSightingOrLater &&
383
+ group.some(row => row.severity === 'critical') && recoveryDismissal !== undefined && recoveryDismissal !== 'critical';
384
+ const recoveredEscalation = entry.verdict === undefined && group.some(row => row.severity === 'critical') &&
309
385
  recoveryDismissal !== undefined && recoveryDismissal !== 'critical';
310
386
  const expectedStatus = state.version === 2 ? round === firstRound ? 'new' : undefined
311
- : recoveredEscalation ? 'regating' : round === firstRound
312
- ? anchored.has(key) ? 'repeat' : 'new'
313
- : entry.verdict === undefined ? 'repeat'
314
- : ordinaryVerdict ? entry.verdict === 'dismissed' && group.some(row => row.severity === 'critical') && entry.verdictSeverity !== 'critical'
315
- ? 'regating' : entry.verdict === 'dismissed' ? 'suppressed' : 'repeat'
316
- : undefined;
387
+ : overwrittenRecoveredEscalation ? undefined
388
+ : recoveredEscalation ? 'regating' : round === firstRound
389
+ ? anchored.has(key) ? 'repeat' : 'new'
390
+ : entry.verdict === undefined ? 'repeat'
391
+ : ordinaryVerdict ? entry.verdict === 'dismissed' && group.some(row => row.severity === 'critical') && entry.verdictSeverity !== 'critical'
392
+ ? 'regating' : entry.verdict === 'dismissed' ? 'suppressed' : 'repeat'
393
+ : undefined;
317
394
  if (expectedStatus !== undefined) {
318
395
  requireIntegrity(group.every(row => row.status === expectedStatus));
319
396
  if (expectedStatus === 'suppressed') {
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-validation.js","sourceRoot":"","sources":["../../../../src/evidence/claim-recovery/validation/semantic-validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-validation.js","sourceRoot":"","sources":["../../../../src/evidence/claim-recovery/validation/semantic-validation.ts"],"names":[],"mappings":"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"}
@@ -55,6 +55,13 @@ export interface RoundCounts {
55
55
  suppressed: number;
56
56
  regating: number;
57
57
  }
58
+ export interface RoundAdmissionSnapshot {
59
+ version: 1;
60
+ recoveryOperationCount: number;
61
+ /** Exact pre-admission native bytes authenticated by the bound report. */
62
+ sourceStateSha256: string;
63
+ actionableIdentities: string[];
64
+ }
58
65
  export interface ConvergeRunState {
59
66
  version: 1 | 2 | 3;
60
67
  /** Released cycle-v2 and its recovered successors retain original cycle/accounting metadata. */
@@ -74,6 +81,8 @@ export interface ConvergeRunState {
74
81
  counts: RoundCounts;
75
82
  runId?: string;
76
83
  reportBinding?: ReportBinding;
84
+ /** Immutable obligations at semantic admission, before verdict or later recovery mutation. */
85
+ admission?: RoundAdmissionSnapshot;
77
86
  /** Strongest sighting per identity in this round, including for delayed verdicts. Absent in legacy state. */
78
87
  severities?: Record<string, ConsensusFinding['severity']>;
79
88
  }>;
@@ -92,6 +101,7 @@ export interface ConvergeRunState {
92
101
  status: FindingStatus;
93
102
  gating: string;
94
103
  }>;
104
+ actionableBeforeTriage?: string[];
95
105
  };
96
106
  }
97
107
  export type FindingStatus = 'new' | 'repeat' | 'suppressed' | 'regating';
@@ -1,11 +1,17 @@
1
+ import { z } from 'zod';
1
2
  export declare const LOCK_UUID: RegExp;
2
- export interface LockScope {
3
- platform: 'darwin' | 'linux';
4
- boot: string;
5
- namespace: string;
6
- }
3
+ export declare const lockScopeSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
4
+ platform: z.ZodLiteral<"darwin">;
5
+ boot: z.ZodString;
6
+ namespace: z.ZodLiteral<"native">;
7
+ }, z.core.$strict>, z.ZodObject<{
8
+ platform: z.ZodLiteral<"linux">;
9
+ boot: z.ZodString;
10
+ namespace: z.ZodString;
11
+ }, z.core.$strict>], "platform">;
12
+ export type LockScope = z.infer<typeof lockScopeSchema>;
7
13
  /** Absolute system utilities only; no shell, caller environment or unbounded output. */
8
- export declare function lockSystemCommand(file: string, args: string[]): Promise<string>;
14
+ export declare function lockSystemCommand(file: string, args: string[], timeoutMs?: number): Promise<string>;
9
15
  interface ScopeIO {
10
16
  platform: string;
11
17
  command: typeof lockSystemCommand;
@@ -1,13 +1,21 @@
1
1
  import { execFile } from 'node:child_process';
2
2
  import { open, stat } from 'node:fs/promises';
3
3
  import { promisify } from 'node:util';
4
+ import { z } from 'zod';
4
5
  const exec = promisify(execFile);
5
6
  export const LOCK_UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;
7
+ export const lockScopeSchema = z.discriminatedUnion('platform', [
8
+ z.object({ platform: z.literal('darwin'), boot: z.string().regex(LOCK_UUID), namespace: z.literal('native') }).strict(),
9
+ z.object({ platform: z.literal('linux'), boot: z.string().regex(LOCK_UUID), namespace: z.string().regex(/^\d+:[1-9]\d*$/) }).strict(),
10
+ ]);
6
11
  /** Absolute system utilities only; no shell, caller environment or unbounded output. */
7
- export async function lockSystemCommand(file, args) {
12
+ export async function lockSystemCommand(file, args, timeoutMs = 1_000) {
13
+ const env = process.platform === 'win32' && process.env.SystemRoot
14
+ ? { SystemRoot: process.env.SystemRoot, WINDIR: process.env.SystemRoot }
15
+ : { PATH: '/usr/bin:/bin:/usr/sbin:/sbin', LC_ALL: 'C' };
8
16
  const { stdout } = await exec(file, args, {
9
- encoding: 'utf8', timeout: 1000, maxBuffer: 1024 * 1024,
10
- env: { PATH: '/usr/bin:/bin:/usr/sbin:/sbin', LC_ALL: 'C' },
17
+ encoding: 'utf8', timeout: timeoutMs, maxBuffer: 1024 * 1024,
18
+ env,
11
19
  });
12
20
  return stdout;
13
21
  }
@@ -24,12 +32,7 @@ async function linuxBoot() {
24
32
  }
25
33
  }
26
34
  export function validLockScope(value) {
27
- if (!value || typeof value !== 'object')
28
- return false;
29
- const scope = value;
30
- return typeof scope.boot === 'string' && LOCK_UUID.test(scope.boot) &&
31
- ((scope.platform === 'darwin' && scope.namespace === 'native') ||
32
- (scope.platform === 'linux' && typeof scope.namespace === 'string' && /^\d+:[1-9]\d*$/.test(scope.namespace)));
35
+ return lockScopeSchema.safeParse(value).success;
33
36
  }
34
37
  /** PID absence proves death only on this kernel boot and PID namespace. */
35
38
  export async function localLockScope(overrides = {}) {