@sentropic/track 0.16.0 → 0.18.0

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 (62) hide show
  1. package/dist/events/store.d.ts +11 -0
  2. package/dist/events/store.d.ts.map +1 -1
  3. package/dist/events/store.js +7 -0
  4. package/dist/events/store.js.map +1 -1
  5. package/dist/events/types.d.ts +2 -2
  6. package/dist/events/types.d.ts.map +1 -1
  7. package/dist/events/types.js +15 -1
  8. package/dist/events/types.js.map +1 -1
  9. package/dist/index.d.ts +1 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +3 -0
  12. package/dist/index.js.map +1 -1
  13. package/dist/ingest/contract.d.ts +4 -2
  14. package/dist/ingest/contract.d.ts.map +1 -1
  15. package/dist/ingest/contract.js +82 -1
  16. package/dist/ingest/contract.js.map +1 -1
  17. package/dist/ingest/ingest.d.ts.map +1 -1
  18. package/dist/ingest/ingest.js +40 -0
  19. package/dist/ingest/ingest.js.map +1 -1
  20. package/dist/ingest/map.d.ts.map +1 -1
  21. package/dist/ingest/map.js +29 -0
  22. package/dist/ingest/map.js.map +1 -1
  23. package/dist/lease/index.d.ts +2 -0
  24. package/dist/lease/index.d.ts.map +1 -0
  25. package/dist/lease/index.js +5 -0
  26. package/dist/lease/index.js.map +1 -0
  27. package/dist/lease/store.d.ts +91 -0
  28. package/dist/lease/store.d.ts.map +1 -0
  29. package/dist/lease/store.js +168 -0
  30. package/dist/lease/store.js.map +1 -0
  31. package/dist/model/demand.d.ts +70 -0
  32. package/dist/model/demand.d.ts.map +1 -0
  33. package/dist/model/demand.js +131 -0
  34. package/dist/model/demand.js.map +1 -0
  35. package/dist/model/index.d.ts +2 -0
  36. package/dist/model/index.d.ts.map +1 -1
  37. package/dist/model/index.js +3 -0
  38. package/dist/model/index.js.map +1 -1
  39. package/dist/model/item.d.ts +24 -1
  40. package/dist/model/item.d.ts.map +1 -1
  41. package/dist/model/item.js.map +1 -1
  42. package/dist/read/contract.d.ts +119 -5
  43. package/dist/read/contract.d.ts.map +1 -1
  44. package/dist/read/contract.js +195 -1
  45. package/dist/read/contract.js.map +1 -1
  46. package/dist/read/index.d.ts +8 -1
  47. package/dist/read/index.d.ts.map +1 -1
  48. package/dist/read/index.js +26 -0
  49. package/dist/read/index.js.map +1 -1
  50. package/dist/state/fold.d.ts +9 -0
  51. package/dist/state/fold.d.ts.map +1 -1
  52. package/dist/state/fold.js +60 -0
  53. package/dist/state/fold.js.map +1 -1
  54. package/dist/state/snapshot.d.ts +2 -0
  55. package/dist/state/snapshot.d.ts.map +1 -1
  56. package/dist/state/snapshot.js +2 -0
  57. package/dist/state/snapshot.js.map +1 -1
  58. package/dist/track.d.ts +140 -1
  59. package/dist/track.d.ts.map +1 -1
  60. package/dist/track.js +275 -2
  61. package/dist/track.js.map +1 -1
  62. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/read/index.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,GAkBZ,MAAM,eAAe,CAAA;AACtB,OAAO,EAKN,MAAM,oBAAoB,CAAA;AAC3B,gGAAgG;AAChG,OAAO,EAAwD,MAAM,8BAA8B,CAAA;AACnG,OAAO,EAAsC,MAAM,0BAA0B,CAAA;AAC7E,0DAA0D;AAC1D,OAAO,EASN,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/read/index.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,GA0BZ,MAAM,eAAe,CAAA;AACtB,0GAA0G;AAC1G,oFAAoF;AACpF,OAAO,EAAkD,MAAM,mBAAmB,CAAA;AAClF,OAAO,EAKN,MAAM,oBAAoB,CAAA;AAC3B,gGAAgG;AAChG,OAAO,EAAwD,MAAM,8BAA8B,CAAA;AACnG,OAAO,EAAsC,MAAM,0BAA0B,CAAA;AAC7E,0DAA0D;AAC1D,OAAO,EASN,MAAM,qBAAqB,CAAA;AAC5B,2GAA2G;AAC3G,4GAA4G;AAC5G,2GAA2G;AAC3G,0GAA0G;AAC1G,4GAA4G;AAC5G,sEAAsE;AACtE,OAAO,EAON,MAAM,sBAAsB,CAAA;AAC7B,8GAA8G;AAC9G,OAAO,EAA2B,MAAM,sBAAsB,CAAA;AAC9D,yGAAyG;AACzG,kEAAkE;AAClE,OAAO,EAAe,MAAM,kBAAkB,CAAA;AAC9C,uGAAuG;AACvG,iGAAiG;AACjG,OAAO,EAON,MAAM,oBAAoB,CAAA;AAC3B,4GAA4G;AAC5G,0GAA0G;AAC1G,6DAA6D;AAC7D,OAAO,EAA8D,MAAM,oBAAoB,CAAA;AAC/F,6GAA6G;AAC7G,uGAAuG;AACvG,iFAAiF;AACjF,OAAO,EAAsB,MAAM,uBAAuB,CAAA"}
@@ -5,6 +5,7 @@ import type { DecisionState } from '../model/decision.js';
5
5
  import type { BlockerId, ItemId, ItemState } from '../model/item.js';
6
6
  import type { VerificationRun } from '../model/verification.js';
7
7
  import type { SpecAmendment } from '../model/spec-amend.js';
8
+ import type { DemandId, DemandState } from '../model/demand.js';
8
9
  /**
9
10
  * Materialized state (SPEC §2). The fold *mechanism* (replay in stream order, per-aggregate by
10
11
  * `seq`) is the frozen part (Lot 1); the *shape* below grows per lot. Acceptance *status* is a
@@ -31,6 +32,14 @@ export interface State {
31
32
  * full prov-tagged human/machine trace is reconstructed by `TrackReader.amendmentTrace` over the raw log.
32
33
  */
33
34
  specAmendments: Map<ItemId, SpecAmendment[]>;
35
+ /**
36
+ * Demand lifecycle (Mode A) — the `demand` aggregate's materialized state, keyed by DemandId. PURE
37
+ * last-writer-wins in stream order: legality (the lifecycle machine + duplicateOf containment) is checked
38
+ * AT APPEND in the facade, NEVER in the fold (the established pattern — cf. decision.outcome). The
39
+ * spec-attempt facts (`spec.started`/`spec.abandoned`) are NOT folded into a state field in Build 1; they
40
+ * are durable handler-log facts read raw from the log (the lease side-store + reads come in Build 2).
41
+ */
42
+ demands: Map<DemandId, DemandState>;
34
43
  }
35
44
  export declare function fold(events: ReadonlyArray<TrackEvent>): State;
36
45
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"fold.d.ts","sourceRoot":"","sources":["../../src/state/fold.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EACV,cAAc,EAEd,aAAa,EAEd,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAwB,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAC7E,OAAO,KAAK,EAEV,aAAa,EAId,MAAM,sBAAsB,CAAA;AAG7B,OAAO,KAAK,EACV,SAAS,EAIT,MAAM,EACN,SAAS,EAIV,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAA+B,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC5F,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,wBAAwB,CAAA;AAE7E;;;;;;GAMG;AACH,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAC7B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACrC,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IACtC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IACrC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACpC;;;;OAIG;IACH,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC9C;;;;;OAKG;IACH,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAA;CAC7C;AAcD,wBAAgB,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,KAAK,CAS7D;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,EAAE,CAEzD;AAED,qGAAqG;AACrG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAEhF"}
1
+ {"version":3,"file":"fold.d.ts","sourceRoot":"","sources":["../../src/state/fold.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EACV,cAAc,EAEd,aAAa,EAEd,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAwB,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAC7E,OAAO,KAAK,EAEV,aAAa,EAId,MAAM,sBAAsB,CAAA;AAG7B,OAAO,KAAK,EACV,SAAS,EAIT,MAAM,EACN,SAAS,EAIV,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAA+B,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC5F,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,wBAAwB,CAAA;AAC7E,OAAO,KAAK,EACV,QAAQ,EAER,WAAW,EAGZ,MAAM,oBAAoB,CAAA;AAE3B;;;;;;GAMG;AACH,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAC7B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACrC,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IACtC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IACrC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACpC;;;;OAIG;IACH,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAC9C;;;;;OAKG;IACH,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAA;IAC5C;;;;;;OAMG;IACH,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;CACpC;AAeD,wBAAgB,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,KAAK,CAS7D;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,EAAE,CAEzD;AAED,qGAAqG;AACrG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY,EAAE,CAEhF"}
@@ -8,6 +8,7 @@ function emptyState() {
8
8
  evidence: new Map(),
9
9
  verificationRuns: new Map(),
10
10
  specAmendments: new Map(),
11
+ demands: new Map(),
11
12
  };
12
13
  }
13
14
  export function fold(events) {
@@ -55,6 +56,9 @@ function applyEvent(state, event) {
55
56
  ...(payload.accountable !== undefined ? { accountable: payload.accountable } : {}),
56
57
  ...(payload.responsible !== undefined ? { responsible: payload.responsible } : {}),
57
58
  ...(payload.engagementRef !== undefined ? { engagementRef: payload.engagementRef } : {}),
59
+ // Demand lifecycle (Mode A, additive) — the parent demand back-link, set ONLY by the atomic
60
+ // agreeDemand promotion batch; absent on a directly-created item (drop-when-absent).
61
+ ...(payload.demandId !== undefined ? { demandId: payload.demandId } : {}),
58
62
  };
59
63
  state.items.set(item.id, item);
60
64
  break;
@@ -296,6 +300,62 @@ function applyEvent(state, event) {
296
300
  item.priority = payload; // latest in stream order = live priority (SPEC §2.8)
297
301
  break;
298
302
  }
303
+ case 'demand.raised': {
304
+ // Demand lifecycle (Mode A) — materialize a new demand in status `raised`. The t=0 `raw`/`source` are
305
+ // the immutable capture; `handler` is a payload field (NOT folded into demand state in Build 1 — the
306
+ // per-step handler log is read raw from the events). Legality (none→raised) is implicit (a fresh id).
307
+ const payload = event.payload;
308
+ const demand = {
309
+ id: event.aggregateId,
310
+ workspace: payload.workspace,
311
+ type: payload.type,
312
+ raw: payload.raw,
313
+ source: payload.source,
314
+ status: 'raised',
315
+ ...(payload.sourceKey !== undefined ? { sourceKey: payload.sourceKey } : {}),
316
+ ...(payload.concerns !== undefined ? { concerns: payload.concerns } : {}),
317
+ ...(payload.links !== undefined ? { links: payload.links } : {}),
318
+ };
319
+ state.demands.set(demand.id, demand);
320
+ break;
321
+ }
322
+ case 'demand.qualifying-started': {
323
+ // raised|parked → qualifying (claim). PURE last-writer-wins; legality checked at append.
324
+ const demand = state.demands.get(event.aggregateId);
325
+ if (demand)
326
+ demand.status = 'qualifying';
327
+ break;
328
+ }
329
+ case 'demand.agreed': {
330
+ // The PIVOT — the demand is agreed and PROMOTED to its item(s) (the item.created siblings land in the
331
+ // SAME atomic batch). Record the agreed status + the promoted itemIds back-link. Legality (qualifying→
332
+ // agreed) checked at append.
333
+ const demand = state.demands.get(event.aggregateId);
334
+ if (demand) {
335
+ demand.status = 'agreed';
336
+ const itemIds = event.payload.itemIds;
337
+ if (itemIds !== undefined)
338
+ demand.itemIds = itemIds;
339
+ }
340
+ break;
341
+ }
342
+ case 'demand.disposition': {
343
+ // qualifying → rejected|duplicate|parked (the recorded qualification off-ramp). PURE last-writer-wins;
344
+ // legality (transition + duplicateOf containment) is checked at append. Records the outcome status +
345
+ // the reason on the matching field (rejectReason/parkReason) + the duplicateOf survivor.
346
+ const demand = state.demands.get(event.aggregateId);
347
+ if (demand) {
348
+ const payload = event.payload;
349
+ demand.status = payload.outcome;
350
+ if (payload.outcome === 'rejected' && payload.reason !== undefined)
351
+ demand.rejectReason = payload.reason;
352
+ if (payload.outcome === 'parked' && payload.reason !== undefined)
353
+ demand.parkReason = payload.reason;
354
+ if (payload.outcome === 'duplicate' && payload.duplicateOf !== undefined)
355
+ demand.duplicateOf = payload.duplicateOf;
356
+ }
357
+ break;
358
+ }
299
359
  default:
300
360
  // `branch.imported` carries provenance only — not folded into state; read raw from the
301
361
  // event log by the v2.0 read contract (TrackReader.branchProvenance / freshness).
@@ -1 +1 @@
1
- {"version":3,"file":"fold.js","sourceRoot":"","sources":["../../src/state/fold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fold.js","sourceRoot":"","sources":["../../src/state/fold.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import type { DecisionState } from '../model/decision.js';
5
5
  import type { ItemState } from '../model/item.js';
6
6
  import type { VerificationRun } from '../model/verification.js';
7
7
  import type { SpecAmendment } from '../model/spec-amend.js';
8
+ import type { DemandState } from '../model/demand.js';
8
9
  import { type State } from './fold.js';
9
10
  /**
10
11
  * Snapshots are NON-AUTHORITATIVE caches of `fold(events)` keyed by stream length
@@ -19,6 +20,7 @@ export interface SerializedState {
19
20
  evidence: EvidenceState[];
20
21
  verificationRuns?: VerificationRun[];
21
22
  specAmendments?: Array<[string, SpecAmendment[]]>;
23
+ demands?: DemandState[];
22
24
  }
23
25
  export interface Snapshot {
24
26
  streamLength: number;
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/state/snapshot.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EAAQ,KAAK,KAAK,EAAE,MAAM,WAAW,CAAA;AAE5C;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,SAAS,EAAE,aAAa,EAAE,CAAA;IAC1B,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;IAGpC,cAAc,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,CAAA;CAClD;AAED,MAAM,WAAW,QAAQ;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,eAAe,CAAA;CACvB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe,CAW5D;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,KAAK,CAY5E;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,QAAQ,CAS1F;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAWpE"}
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/state/snapshot.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAQ,KAAK,KAAK,EAAE,MAAM,WAAW,CAAA;AAE5C;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,SAAS,EAAE,aAAa,EAAE,CAAA;IAC1B,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;IAGpC,cAAc,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,CAAA;IAGjD,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,eAAe,CAAA;CACvB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe,CAY5D;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,KAAK,CAa5E;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,QAAQ,CAS1F;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAWpE"}
@@ -11,6 +11,7 @@ export function serializeState(state) {
11
11
  evidence: [...state.evidence.values()].map((e) => structuredClone(e)),
12
12
  verificationRuns: [...state.verificationRuns.values()].map((v) => structuredClone(v)),
13
13
  specAmendments: [...state.specAmendments.entries()].map(([id, list]) => [id, structuredClone(list)]),
14
+ demands: [...state.demands.values()].map((d) => structuredClone(d)),
14
15
  };
15
16
  }
16
17
  export function deserializeState(serialized) {
@@ -24,6 +25,7 @@ export function deserializeState(serialized) {
24
25
  evidence: new Map((serialized.evidence ?? []).map((e) => [e.id, e])),
25
26
  verificationRuns: new Map((serialized.verificationRuns ?? []).map((v) => [v.runId, v])),
26
27
  specAmendments: new Map(serialized.specAmendments ?? []),
28
+ demands: new Map((serialized.demands ?? []).map((d) => [d.id, d])),
27
29
  };
28
30
  }
29
31
  export function saveSnapshot(trackDir, events) {
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/state/snapshot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/state/snapshot.ts"],"names":[],"mappings":"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"}
package/dist/track.d.ts CHANGED
@@ -6,10 +6,12 @@ import type { EvidenceKind, RunResult } from './model/acceptance.js';
6
6
  import { type PriorityAssessment, type WsjfInputs } from './model/priority.js';
7
7
  import { type BlockerKind, type BlockerScope, type ResolutionRule } from './model/blocker.js';
8
8
  import { type DecisionCreatedPayload, type DossierArtifact, type Dossier, type Outcome } from './model/decision.js';
9
- import { type BlockerId, type Disposition, type Gate, type ItemCreatedPayload, type ItemId, type Realization, type ScopeDecl, type SpecStatus } from './model/item.js';
9
+ import { type BlockerId, type Disposition, type Gate, type ItemCreatedPayload, type ItemId, type Link, type Realization, type ScopeDecl, type SpecStatus } from './model/item.js';
10
10
  import { type VerificationRecordedPayload } from './model/verification.js';
11
11
  import { type SpecAmendPayload } from './model/spec-amend.js';
12
+ import { type DemandId, type DemandRaisedPayload, type DemandRef, type DemandStatus } from './model/demand.js';
12
13
  import { type State } from './state/fold.js';
14
+ import { type LeaseStore } from './lease/store.js';
13
15
  export interface ImportResult {
14
16
  branchSlug: string;
15
17
  featureId: ItemId;
@@ -22,6 +24,13 @@ export interface ImportResult {
22
24
  * return them verbatim) or `null` to append normally. See `EventStore.appendCommand`'s `dedupe` opt.
23
25
  */
24
26
  export type DedupeHook = (inputs: ReadonlyArray<CommandEvent>, existing: readonly TrackEvent[]) => TrackEvent[] | null;
27
+ /**
28
+ * Under-lock DOMAIN-LEGALITY recheck (demand-lifecycle Mode A, F2). Receives a command's `inputs` and the
29
+ * just-read `existing` log UNDER THE STORE LOCK; re-folds it and re-asserts the demand transition (+ the
30
+ * duplicateOf containment); MUST THROW (a DomainError) when the command is no longer legal against the
31
+ * now-current state. Scoped to the new Mode A demand commands. See `EventStore.appendCommand`'s `recheck` opt.
32
+ */
33
+ export type RecheckHook = (inputs: ReadonlyArray<CommandEvent>, existing: readonly TrackEvent[]) => void;
25
34
  export interface TrackOptions {
26
35
  /** Injectable clock (ISO-8601 ms). Defaults to wall clock. */
27
36
  now?: () => string;
@@ -31,6 +40,13 @@ export interface TrackOptions {
31
40
  by?: ActorId;
32
41
  /** D3 provenance stamped on every emitted event (transport/trust). Omitted ⇒ no `prov` field. */
33
42
  prov?: Provenance;
43
+ /**
44
+ * Demand lifecycle (Mode A, Build 2) — the ADVISORY ephemeral lease side-store. When supplied, a lifecycle
45
+ * transition on a subject that has a LIVE lease defaults the recorded `handler` to the lease HOLDER (the
46
+ * top of the resolution precedence). Omitted ⇒ no lease lookup (handler = ctx.handler ?? prov.principal ??
47
+ * by). The lease NEVER gates an append — it only sources the default handler.
48
+ */
49
+ leases?: LeaseStore;
34
50
  }
35
51
  /** Resolution scope for `resolveExternalDependency` — REQUIRED so unscoped resolution is never implicit.
36
52
  * `{workspace}` = pin to one workspace (the ingest channel's containment); `'all-workspaces'` = a local
@@ -70,6 +86,8 @@ export declare class Track {
70
86
  private readonly newId;
71
87
  private readonly actor;
72
88
  private readonly prov;
89
+ /** Demand lifecycle (Mode A, Build 2) — the optional advisory lease store (sources the default handler). */
90
+ private readonly leases;
73
91
  /** Delivery idempotency token stamped on emitted events for the duration of a `withClientToken` scope. */
74
92
  private activeClientToken;
75
93
  /**
@@ -79,6 +97,14 @@ export declare class Track {
79
97
  * across a re-minted aggregateId. Absent ⇒ the store's default `(clientToken, aggregateId)` backstop.
80
98
  */
81
99
  private activeDedupe;
100
+ /**
101
+ * Under-lock DOMAIN-LEGALITY recheck for the active scope (demand-lifecycle Mode A, F2 semantic-race
102
+ * guard). SCOPED to the new Mode A demand commands: when set (via `withDemandRecheck`), it is passed to
103
+ * `EventStore.appendCommand`'s `recheck` opt so the demand transition (+ duplicateOf containment) is
104
+ * re-asserted UNDER THE LOCK against the now-current folded log — rejecting a cross-actor race the
105
+ * per-aggregate lock does not cover. Absent for every existing append path (unchanged).
106
+ */
107
+ private activeRecheck;
82
108
  constructor(store: EventStore, opts?: TrackOptions);
83
109
  /** Materialized state from a full replay of the log. */
84
110
  state(): State;
@@ -170,6 +196,102 @@ export declare class Track {
170
196
  * dedup / the seam fast-path). Returns nothing — the effect is the appended events.
171
197
  */
172
198
  consolidate(itemIds: ItemId[], mergeCommit: string, clientToken?: string): void;
199
+ /**
200
+ * Raise a demand (`demand.raise` → `demand.raised`) — the durable t=0 capture (the "nothing untracked"
201
+ * guarantee). NON-BINDING (any channel may capture an issue). Creates a new `demand` aggregate in status
202
+ * `raised`. The `raw`/`source` are the immutable capture; the `handler` (who is handling, resolved by
203
+ * precedence `ctx.handler ?? prov.principal ?? by`) is logged on this and every later lifecycle step. The
204
+ * payload is validated fail-closed (assertDemandRaised). Returns the new DemandId.
205
+ */
206
+ raiseDemand(input: {
207
+ type: DemandRaisedPayload['type'];
208
+ raw: DemandRaisedPayload['raw'];
209
+ source: DemandRaisedPayload['source'];
210
+ workspace: string;
211
+ handler?: ActorId;
212
+ sourceKey?: string;
213
+ concerns?: DemandRaisedPayload['concerns'];
214
+ links?: DemandRaisedPayload['links'];
215
+ }): DemandId;
216
+ /**
217
+ * Claim a demand into qualifying (`demand.claim` → `demand.qualifying-started`) — `raised|parked →
218
+ * qualifying`, the mandatory step before any off-ramp (every outcome is attributable to a handler).
219
+ * BINDING. Asserts the transition AT APPEND (the facade fold) AND under the lock (F2 race guard). The
220
+ * `handler` is logged. Re-entrant from `parked` (a re-claim is a new handler attempt / handover).
221
+ */
222
+ claimDemand(demandId: DemandId, opts?: {
223
+ handler?: ActorId;
224
+ leaseId?: string;
225
+ }): void;
226
+ /**
227
+ * Agree a demand — the ATOMIC PROMOTION (`demand.agree`): emits `demand.agreed` + one `item.created` per
228
+ * promoted item (1..N) as ONE atomic cmdId batch (mirrors createDecision's decision.created+blocker batch)
229
+ * — no window where a demand is agreed without its item(s). BINDING. The transition `qualifying → agreed`
230
+ * is asserted at append AND under the lock (F2). Each promoted item back-links `demandId` and takes the
231
+ * demand's `type` as its `kind` (a defect demand ⇒ a `kind:'defect'` item). The `handler` is logged on the
232
+ * `demand.agreed` fact. Returns the promoted ItemIds (in input order).
233
+ */
234
+ agreeDemand(demandId: DemandId, input: {
235
+ handler?: ActorId;
236
+ items: Array<{
237
+ title: string;
238
+ body?: string;
239
+ sourceKey?: string;
240
+ links?: Link[];
241
+ }>;
242
+ qualification?: string;
243
+ leaseId?: string;
244
+ }): ItemId[];
245
+ /**
246
+ * Dispose a demand (`demand.disposition`) — the recorded qualification off-ramp `qualifying →
247
+ * rejected|duplicate|parked`. BINDING. `rejected`/`duplicate` are terminal; `parked` is re-claimable. A
248
+ * `duplicate` MUST carry a `duplicateOf` survivor that is SAME-WORKSPACE and NON-SELF (asserted at append
249
+ * AND under the lock — the cross-demand DEDUP race the per-subject lease does not cover). The `handler` +
250
+ * `reason` are logged.
251
+ */
252
+ disposeDemand(demandId: DemandId, input: {
253
+ outcome: DemandStatus;
254
+ handler?: ActorId;
255
+ reason: string;
256
+ duplicateOf?: DemandRef;
257
+ parkedUntil?: string;
258
+ leaseId?: string;
259
+ }): void;
260
+ /**
261
+ * Start a spec attempt on a promoted item (`spec.claim` → `spec.started`) — a durable fact of WHO is
262
+ * attempting the item's spec (the `specifying` overlay). BINDING. Recorded on the EXISTING item aggregate
263
+ * (next seq). The `handler` (+ optional `leaseId`/`attemptId`) is logged. Does NOT change specStatus
264
+ * (the spec axis is still driven by `spec.transition`); it is the durable handler/lease fact.
265
+ */
266
+ startSpec(itemId: ItemId, opts: {
267
+ handler?: ActorId;
268
+ leaseId?: string;
269
+ attemptId?: string;
270
+ }): void;
271
+ /**
272
+ * Abandon a spec attempt (`spec.abandon` → `spec.abandoned`) — the DURABLE explicit-abandon fact
273
+ * (who/when/why), distinct from a silent lease timeout (ephemeral, Build 2). BINDING. Recorded on the
274
+ * EXISTING item aggregate (next seq). The `handler` + `reason` are logged.
275
+ */
276
+ abandonSpec(itemId: ItemId, opts: {
277
+ handler?: ActorId;
278
+ reason: string;
279
+ leaseId?: string;
280
+ }): void;
281
+ /** Demand lifecycle (Mode A) — the shared single-event transition emitter (claim today; handover later). */
282
+ private transitionDemand;
283
+ /**
284
+ * Demand lifecycle (Mode A) — the `duplicateOf` containment for a `duplicate` disposition: the survivor
285
+ * must exist (a same-workspace demand or item), be SAME-WORKSPACE as the duplicate, be NON-SELF, AND — when
286
+ * it is a DEMAND — be an actual survivor (its OWN status must NOT itself be terminal `duplicate`/`rejected`).
287
+ * The last guard closes the mutual-duplicate-no-survivor RACE: two actors folding the same pre-lock state can
288
+ * race `dispose A duplicateOf B` and `dispose B duplicateOf A` → both terminal `duplicate` pointing at each
289
+ * other, with NO survivor (real work lost). Re-asserting under the lock (F2) on the now-current fold catches
290
+ * the second writer: when its target has just become terminal-`duplicate`, it is a non-survivor ⇒ reject.
291
+ * An `item` target, or a demand in `qualifying`/`agreed`/`parked`/`raised`, is a valid survivor. `state`
292
+ * defaults to the live fold; the under-lock recheck passes the re-folded log.
293
+ */
294
+ private assertDuplicateContainment;
173
295
  /**
174
296
  * Create a Decision (SPEC §2.5): emits `decision.created` + one `blocker.opened` (kind:decision)
175
297
  * per target as ONE atomic batch (A7). Targets must be existing non-decision items (A3 recursion
@@ -282,5 +404,22 @@ export declare class Track {
282
404
  * freshly-minted (never-persisted) id.
283
405
  */
284
406
  private emitBatch;
407
+ /**
408
+ * Run `fn` (one demand command) with `recheck` installed as the under-lock domain-legality guard (F2).
409
+ * Scoped (restored in `finally`), so it applies to exactly this command's append and nothing else. Used
410
+ * ONLY by the new Mode A demand commands — existing append paths never set it.
411
+ */
412
+ private withDemandRecheck;
413
+ /**
414
+ * Demand lifecycle (Mode A) — resolve the handler ("qui traite", the h2a instance id) for a lifecycle
415
+ * step. Precedence (DESIGN §Handler logging): `activeLease.holder ?? ctx.handler ?? prov.principal ?? by`.
416
+ * When a `subject` is given AND a lease store is configured AND a LIVE (non-abandoned vs `now`) lease
417
+ * covers that subject, the lease holder is the CURRENT handler ⇒ it defaults the recorded handler (Build 2).
418
+ * An explicit `handler` still wins over the lease (an explicit handover override). The lease is advisory:
419
+ * it sources the default handler, it NEVER gates the append.
420
+ */
421
+ private resolveHandler;
422
+ /** The holder of the LIVE (non-abandoned vs the injected clock) lease on `subject`, or undefined. */
423
+ private liveLeaseHolder;
285
424
  }
286
425
  //# sourceMappingURL=track.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../src/track.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../src/track.ts"],"names":[],"mappings":"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"}