@sentropic/track 0.2.2 → 0.4.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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAoBA,MAAM,WAAW,KAAK;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACxB,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACzB;AA6ID,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM,CAwCxD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAmCA,MAAM,WAAW,KAAK;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACxB,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACzB;AAsID,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM,CA0CxD"}
package/dist/cli/index.js CHANGED
@@ -7,6 +7,8 @@ import { validate } from '../events/validate.js';
7
7
  import { DomainError } from '../model/item.js';
8
8
  import { formatRows } from '../report/format.js';
9
9
  import { Track } from '../track.js';
10
+ import { BLOCKER_KINDS, DECISION_KINDS, DISPOSITIONS, EVIDENCE_KINDS, GATES, ITEM_KINDS, OUTCOMES, REALIZE_TARGETS, RESOLUTION_RULES, RESULTS, SPEC_TARGETS, } from '../ingest/contract.js';
11
+ import { ingest } from '../ingest/ingest.js';
10
12
  import { TrackReader } from '../read/contract.js';
11
13
  import { queryText, reportText } from '../read/commands.js';
12
14
  import { VERSION } from '../version.js';
@@ -35,21 +37,14 @@ const USAGE = `usage: track <command>
35
37
  query [--kind <k>] [--workspace <w>] [--bucket <AWAITED|DROPPED|DONE|TO-DO>] [--realization <r>] [--acceptance <a>] [--format json|text|md] [--commit <sha>]
36
38
  validate [--commit <sha>]
37
39
  branch import <BRANCH.md> [--commit <sha>]
40
+ ingest <file.jsonl> --workspace <w>
38
41
  `;
39
- const ITEM_KINDS = ['feature', 'bug', 'chore'];
40
- const SPEC_TARGETS = ['to-specify', 'specified'];
41
- const REALIZE_TARGETS = ['in-progress', 'done', 'cancelled'];
42
+ // Write enums (ITEM_KINDS, SPEC_TARGETS, REALIZE_TARGETS, DECISION_KINDS, OUTCOMES, GATES, DISPOSITIONS,
43
+ // BLOCKER_KINDS, RESOLUTION_RULES, EVIDENCE_KINDS, RESULTS) are sourced from the ingest contract — the
44
+ // SINGLE source, so the CLI's `oneOf` checks and the WorkEvent mapper cannot diverge on accepted values.
45
+ // (`linked-accepted` openness is DERIVED at report/query time vs `--commit`, v2.2a hybrid-A; see
46
+ // src/report/blocker-status.ts.) Only CLI/read-projection enums stay local:
42
47
  const REALIZATIONS = ['to-do', 'in-progress', 'done', 'cancelled', 'rejected'];
43
- const DECISION_KINDS = ['orientation', 'commitment'];
44
- const OUTCOMES = ['go', 'no-go', 'deferred'];
45
- const GATES = ['orientation', 'commitment'];
46
- const DISPOSITIONS = ['required', 'skipped', 'not-applicable'];
47
- const BLOCKER_KINDS = ['decision', 'dependency'];
48
- // `linked-accepted` openness is DERIVED at report/query time vs `--commit` (v2.2a hybrid-A):
49
- // the gate re-opens when the ref regresses. See src/report/blocker-status.ts.
50
- const RESOLUTION_RULES = ['linked-done', 'linked-accepted', 'manual'];
51
- const EVIDENCE_KINDS = ['unit', 'integration', 'e2e', 'manual'];
52
- const RESULTS = ['pass', 'fail'];
53
48
  const FROM_FORMATS = ['junit', 'json'];
54
49
  const BUCKETS_ARG = ['AWAITED', 'DROPPED', 'DONE', 'TO-DO'];
55
50
  // `n/a` is decision-only; `query` projects non-decision rows, so it would never match.
@@ -179,6 +174,8 @@ export function runCli(argv, io) {
179
174
  return cmdValidate(rest, io);
180
175
  case 'branch':
181
176
  return cmdBranch(rest, io);
177
+ case 'ingest':
178
+ return cmdIngest(rest, io);
182
179
  default:
183
180
  io.err(USAGE);
184
181
  return 2;
@@ -422,4 +419,41 @@ function cmdBranch(args, io) {
422
419
  io.out(`Imported ${result.branchSlug}: ${result.created} created, ${result.updated} updated\n`);
423
420
  return 0;
424
421
  }
422
+ /**
423
+ * `track ingest <file.jsonl> --workspace <w>` — apply a neutral WorkEvent stream (M2b channel ①). A
424
+ * local-user channel pinned to one workspace; provenance is `transport:'import'` to keep batch ingest
425
+ * distinguishable from interactive CLI writes in the audit log. Same shape as `branch import` /
426
+ * `accept run --from`: a local-file adapter, not a network transport.
427
+ */
428
+ function cmdIngest(args, io) {
429
+ const { positional, flags } = parseFlags(args);
430
+ const file = positional[0];
431
+ if (file === undefined) {
432
+ io.err('usage: track ingest <file.jsonl> --workspace <w>\n');
433
+ return 2;
434
+ }
435
+ const workspace = req(flags, 'workspace');
436
+ const raw = readFileSync(isAbsolute(file) ? file : join(io.cwd, file), 'utf8');
437
+ const events = [];
438
+ raw.split('\n').forEach((line, i) => {
439
+ const trimmed = line.trim();
440
+ if (trimmed.length === 0)
441
+ return;
442
+ try {
443
+ events.push(JSON.parse(trimmed));
444
+ }
445
+ catch {
446
+ throw new DomainError(`ingest: malformed JSON on line ${i + 1}`);
447
+ }
448
+ });
449
+ const ctx = {
450
+ by: cliActor(io.cwd),
451
+ workspace,
452
+ prov: { transport: 'import', proposed: false, auth: 'local-user' },
453
+ };
454
+ const result = ingest(events, ctx, store(io.cwd));
455
+ for (const id of result.ids)
456
+ io.out(`${id ?? '-'}\n`);
457
+ return 0;
458
+ }
425
459
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,15 @@ export interface EventCore {
49
49
  payload: Readonly<Record<string, unknown>>;
50
50
  /** D3 provenance — present on D3+ writes, absent on older events (additive, hash-covered). */
51
51
  prov?: Provenance;
52
+ /**
53
+ * Delivery idempotency key (v2.3c). A producer-supplied token; ingest stamps it on every event of a
54
+ * WorkEvent and SKIPS a WorkEvent whose token is already in the log — so a retry is a safe no-op.
55
+ * Additive + hash-covered (absent on older events, which hash identically; `canonicalize` drops
56
+ * `undefined`). Hash-covered because a tampered token would change replay/skip behavior. Unlike `prov`
57
+ * (a per-channel snapshot) this is per-event-varying — correct for a delivery key, and carries no
58
+ * authority (a forged/colliding token only skips the producer's own write).
59
+ */
60
+ clientToken?: string;
52
61
  cmdId?: Ulid;
53
62
  cmd?: CmdPosition;
54
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/events/types.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,IAAI,GAAG,MAAM,CAAA;AACzB,MAAM,MAAM,OAAO,GAAG,MAAM,CAAA;AAC5B,MAAM,MAAM,MAAM,GAAG,UAAU,MAAM,EAAE,CAAA;AAEvC,eAAO,MAAM,UAAU,0CAA2C,CAAA;AAClE,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnD,eAAO,MAAM,WAAW,4UAgBd,CAAA;AACV,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAEpD;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,yCAAyC;IACzC,SAAS,EAAE,KAAK,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAA;IACtD,4DAA4D;IAC5D,QAAQ,EAAE,OAAO,CAAA;IACjB;;;;OAIG;IACH,IAAI,EAAE,YAAY,GAAG,iBAAiB,CAAA;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,IAAI,CAAA;IACR,IAAI,EAAE,SAAS,CAAA;IACf,SAAS,EAAE,SAAS,CAAA;IACpB,WAAW,EAAE,IAAI,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;IACV,EAAE,EAAE,OAAO,CAAA;IACX,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAC1C,8FAA8F;IAC9F,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,KAAK,CAAC,EAAE,IAAI,CAAA;IACZ,GAAG,CAAC,EAAE,WAAW,CAAA;CAClB;AAED,6EAA6E;AAC7E,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,KAAK,CAAC,CAAA;AAE3D,mEAAmE;AACnE,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;CACpB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/events/types.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,IAAI,GAAG,MAAM,CAAA;AACzB,MAAM,MAAM,OAAO,GAAG,MAAM,CAAA;AAC5B,MAAM,MAAM,MAAM,GAAG,UAAU,MAAM,EAAE,CAAA;AAEvC,eAAO,MAAM,UAAU,0CAA2C,CAAA;AAClE,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnD,eAAO,MAAM,WAAW,4UAgBd,CAAA;AACV,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAEpD;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,yCAAyC;IACzC,SAAS,EAAE,KAAK,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAA;IACtD,4DAA4D;IAC5D,QAAQ,EAAE,OAAO,CAAA;IACjB;;;;OAIG;IACH,IAAI,EAAE,YAAY,GAAG,iBAAiB,CAAA;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,IAAI,CAAA;IACR,IAAI,EAAE,SAAS,CAAA;IACf,SAAS,EAAE,SAAS,CAAA;IACpB,WAAW,EAAE,IAAI,CAAA;IACjB,EAAE,EAAE,MAAM,CAAA;IACV,EAAE,EAAE,OAAO,CAAA;IACX,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAC1C,8FAA8F;IAC9F,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,IAAI,CAAA;IACZ,GAAG,CAAC,EAAE,WAAW,CAAA;CAClB;AAED,6EAA6E;AAC7E,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,KAAK,CAAC,CAAA;AAE3D,mEAAmE;AACnE,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;CACpB"}
@@ -0,0 +1,55 @@
1
+ export declare const INGEST_CONTRACT_VERSION = "1.0.0";
2
+ export declare const ITEM_KINDS: readonly ["feature", "bug", "chore"];
3
+ export declare const SPEC_TARGETS: readonly ["to-specify", "specified"];
4
+ export declare const REALIZE_TARGETS: readonly ["in-progress", "done", "cancelled"];
5
+ export declare const DECISION_KINDS: readonly ["orientation", "commitment"];
6
+ export declare const OUTCOMES: readonly ["go", "no-go", "deferred"];
7
+ export declare const GATES: readonly ["orientation", "commitment"];
8
+ export declare const DISPOSITIONS: readonly ["required", "skipped", "not-applicable"];
9
+ export declare const BLOCKER_KINDS: readonly ["decision", "dependency"];
10
+ export declare const RESOLUTION_RULES: readonly ["linked-done", "linked-accepted", "manual"];
11
+ export declare const EVIDENCE_KINDS: readonly ["unit", "integration", "e2e", "manual"];
12
+ export declare const RESULTS: readonly ["pass", "fail"];
13
+ export declare const WORK_EVENT_KINDS: readonly ["item.create", "item.spec", "item.realize", "decision.create", "decision.dossier", "decision.outcome", "decision.disposition", "acceptance.criterion", "acceptance.link", "acceptance.run", "acceptance.waive", "priority.assess", "blocker.raise", "blocker.resolve"];
14
+ export type WorkEventKind = (typeof WORK_EVENT_KINDS)[number];
15
+ export interface WorkEvent {
16
+ /** Contract major. Unknown major ⇒ fail-closed reject; unknown minor degrades to "unknown kind". */
17
+ v: 1;
18
+ kind: WorkEventKind;
19
+ /** Validated per-kind by WORK_EVENT_SCHEMA (required + type + enum + NO unknown fields). */
20
+ payload: Record<string, unknown>;
21
+ /**
22
+ * Optional delivery idempotency key (v2.3c). If a prior event with this token is already in the log,
23
+ * ingest SKIPS this WorkEvent (returning its original assigned id). The producer owns token uniqueness.
24
+ * This is a delivery key, not a WHO/trust field — so it is allowed on the envelope (unlike actor/sponsor).
25
+ */
26
+ clientToken?: string;
27
+ }
28
+ /** The only allowed envelope keys — any other (actor/sponsor/proposed/…) is rejected fail-closed: the
29
+ * WHO and the trust level come from the ingest CONTEXT (channel), never per-event (v2.3b-DESIGN.md §2).
30
+ * `clientToken` is the one exception — a delivery idempotency key, not a trust field (v2.3c). */
31
+ export declare const WORK_EVENT_ENVELOPE_KEYS: readonly ["v", "kind", "payload", "clientToken"];
32
+ export type FieldType = 'string' | 'number' | 'string[]' | 'object';
33
+ export interface FieldSpec {
34
+ type: FieldType;
35
+ required: boolean;
36
+ /** Allowed values for a string field (else any string). */
37
+ enum?: readonly string[];
38
+ }
39
+ /**
40
+ * How a kind settles state — drives the binding gate in `ingest` (v2.3b-2):
41
+ * - `never` non-binding (creation/preparation)
42
+ * - `always` binding — requires `auth ∈ {local-user, signed}`
43
+ * - `realize-terminal` binding iff `payload.to ∈ {done, cancelled}` (a false `done` is a false-green)
44
+ * - `evidence` machine evidence (a CI run) — gated like binding on an unauthenticated channel
45
+ * (which denies all settling writes), allowed on local-user/signed
46
+ */
47
+ export type Settles = 'never' | 'always' | 'realize-terminal' | 'evidence';
48
+ export interface KindSchema {
49
+ /** The Track facade method this kind maps to (1:1). */
50
+ method: string;
51
+ settles: Settles;
52
+ fields: Record<string, FieldSpec>;
53
+ }
54
+ export declare const WORK_EVENT_SCHEMA: Record<WorkEventKind, KindSchema>;
55
+ //# sourceMappingURL=contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../src/ingest/contract.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,uBAAuB,UAAU,CAAA;AAG9C,eAAO,MAAM,UAAU,sCAAuC,CAAA;AAC9D,eAAO,MAAM,YAAY,sCAAuC,CAAA;AAChE,eAAO,MAAM,eAAe,+CAAgD,CAAA;AAC5E,eAAO,MAAM,cAAc,wCAAyC,CAAA;AACpE,eAAO,MAAM,QAAQ,sCAAuC,CAAA;AAC5D,eAAO,MAAM,KAAK,wCAAyC,CAAA;AAC3D,eAAO,MAAM,YAAY,oDAAqD,CAAA;AAC9E,eAAO,MAAM,aAAa,qCAAsC,CAAA;AAChE,eAAO,MAAM,gBAAgB,uDAAwD,CAAA;AACrF,eAAO,MAAM,cAAc,mDAAoD,CAAA;AAC/E,eAAO,MAAM,OAAO,2BAA4B,CAAA;AAGhD,eAAO,MAAM,gBAAgB,kRAenB,CAAA;AACV,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D,MAAM,WAAW,SAAS;IACxB,oGAAoG;IACpG,CAAC,EAAE,CAAC,CAAA;IACJ,IAAI,EAAE,aAAa,CAAA;IACnB,4FAA4F;IAC5F,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;kGAEkG;AAClG,eAAO,MAAM,wBAAwB,kDAAmD,CAAA;AAGxF,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAA;AAEnE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAA;IACf,QAAQ,EAAE,OAAO,CAAA;IACjB,2DAA2D;IAC3D,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CACzB;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,kBAAkB,GAAG,UAAU,CAAA;AAE1E,MAAM,WAAW,UAAU;IACzB,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;CAClC;AAMD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,aAAa,EAAE,UAAU,CA+G/D,CAAA"}
@@ -0,0 +1,155 @@
1
+ // Lot v2.3b-1 — the neutral `WorkEvent` ingest contract (M2b write seam, channel ①).
2
+ //
3
+ // A WorkEvent is a transport-agnostic envelope: it carries the WHAT (kind + payload); the WHO
4
+ // (by/workspace/prov/capability) comes from the ingest CONTEXT, never the event (see v2.3b-DESIGN.md §2).
5
+ // One WorkEvent ⇒ one Track command. This module is the SINGLE SOURCE of the write enums (so the CLI's
6
+ // `oneOf` checks and the mapper cannot diverge on accepted values) and of the per-kind payload schema.
7
+ export const INGEST_CONTRACT_VERSION = '1.0.0';
8
+ // --- write enums (shared with src/cli/index.ts) ------------------------------------------------------
9
+ export const ITEM_KINDS = ['feature', 'bug', 'chore'];
10
+ export const SPEC_TARGETS = ['to-specify', 'specified'];
11
+ export const REALIZE_TARGETS = ['in-progress', 'done', 'cancelled'];
12
+ export const DECISION_KINDS = ['orientation', 'commitment'];
13
+ export const OUTCOMES = ['go', 'no-go', 'deferred'];
14
+ export const GATES = ['orientation', 'commitment'];
15
+ export const DISPOSITIONS = ['required', 'skipped', 'not-applicable'];
16
+ export const BLOCKER_KINDS = ['decision', 'dependency'];
17
+ export const RESOLUTION_RULES = ['linked-done', 'linked-accepted', 'manual'];
18
+ export const EVIDENCE_KINDS = ['unit', 'integration', 'e2e', 'manual'];
19
+ export const RESULTS = ['pass', 'fail'];
20
+ // --- kinds -------------------------------------------------------------------------------------------
21
+ export const WORK_EVENT_KINDS = [
22
+ 'item.create',
23
+ 'item.spec',
24
+ 'item.realize',
25
+ 'decision.create',
26
+ 'decision.dossier',
27
+ 'decision.outcome',
28
+ 'decision.disposition',
29
+ 'acceptance.criterion',
30
+ 'acceptance.link',
31
+ 'acceptance.run',
32
+ 'acceptance.waive',
33
+ 'priority.assess',
34
+ 'blocker.raise',
35
+ 'blocker.resolve',
36
+ ];
37
+ /** The only allowed envelope keys — any other (actor/sponsor/proposed/…) is rejected fail-closed: the
38
+ * WHO and the trust level come from the ingest CONTEXT (channel), never per-event (v2.3b-DESIGN.md §2).
39
+ * `clientToken` is the one exception — a delivery idempotency key, not a trust field (v2.3c). */
40
+ export const WORK_EVENT_ENVELOPE_KEYS = ['v', 'kind', 'payload', 'clientToken'];
41
+ const str = (required, e) => e ? { type: 'string', required, enum: e } : { type: 'string', required };
42
+ const num = (required) => ({ type: 'number', required });
43
+ export const WORK_EVENT_SCHEMA = {
44
+ 'item.create': {
45
+ method: 'createItem',
46
+ settles: 'never',
47
+ fields: {
48
+ kind: str(true, ITEM_KINDS),
49
+ title: str(true),
50
+ workspace: str(true),
51
+ parentId: str(false),
52
+ body: str(false),
53
+ sourceKey: str(false),
54
+ },
55
+ },
56
+ 'item.spec': {
57
+ method: 'setSpec',
58
+ settles: 'never',
59
+ fields: { itemId: str(true), to: str(true, SPEC_TARGETS) },
60
+ },
61
+ 'item.realize': {
62
+ method: 'setRealization',
63
+ settles: 'realize-terminal',
64
+ fields: { itemId: str(true), to: str(true, REALIZE_TARGETS) },
65
+ },
66
+ 'decision.create': {
67
+ method: 'createDecision',
68
+ settles: 'never',
69
+ fields: {
70
+ decisionKind: str(true, DECISION_KINDS),
71
+ title: str(true),
72
+ workspace: str(true),
73
+ targets: { type: 'string[]', required: true },
74
+ dossier: { type: 'object', required: true },
75
+ parentId: str(false),
76
+ body: str(false),
77
+ sourceKey: str(false),
78
+ },
79
+ },
80
+ 'decision.dossier': {
81
+ method: 'reviseDossier',
82
+ settles: 'never',
83
+ fields: { decisionId: str(true), dossier: { type: 'object', required: true } },
84
+ },
85
+ 'decision.outcome': {
86
+ method: 'setOutcome',
87
+ settles: 'always',
88
+ fields: { decisionId: str(true), to: str(true, OUTCOMES) },
89
+ },
90
+ 'decision.disposition': {
91
+ method: 'setDisposition',
92
+ settles: 'never',
93
+ fields: {
94
+ itemId: str(true),
95
+ gate: str(true, GATES),
96
+ disposition: str(true, DISPOSITIONS),
97
+ reason: str(false),
98
+ },
99
+ },
100
+ 'acceptance.criterion': {
101
+ method: 'addCriterion',
102
+ settles: 'never',
103
+ fields: { itemId: str(true), statement: str(true) },
104
+ },
105
+ 'acceptance.link': {
106
+ method: 'linkEvidence',
107
+ settles: 'never',
108
+ fields: { criterionId: str(true), kind: str(true, EVIDENCE_KINDS), locator: str(true) },
109
+ },
110
+ 'acceptance.run': {
111
+ method: 'recordRun',
112
+ settles: 'evidence',
113
+ fields: {
114
+ evidenceId: str(true),
115
+ commit: str(true),
116
+ env: str(true),
117
+ runner: str(true),
118
+ result: str(true, RESULTS),
119
+ },
120
+ },
121
+ 'acceptance.waive': {
122
+ method: 'waive',
123
+ settles: 'always',
124
+ fields: { criterionId: str(true), reason: str(true) },
125
+ },
126
+ 'priority.assess': {
127
+ method: 'assessPriority',
128
+ settles: 'never',
129
+ fields: {
130
+ itemId: str(true),
131
+ userBusinessValue: num(true),
132
+ timeCriticality: num(true),
133
+ riskReductionOpportunityEnablement: num(true),
134
+ jobSize: num(true),
135
+ },
136
+ },
137
+ 'blocker.raise': {
138
+ method: 'openBlocker',
139
+ settles: 'never',
140
+ fields: {
141
+ targetId: str(true),
142
+ kind: str(true, BLOCKER_KINDS),
143
+ ref: str(true),
144
+ reason: str(false),
145
+ resolutionRule: str(false, RESOLUTION_RULES),
146
+ owner: str(false),
147
+ },
148
+ },
149
+ 'blocker.resolve': {
150
+ method: 'resolveBlocker',
151
+ settles: 'always',
152
+ fields: { blockerId: str(true) },
153
+ },
154
+ };
155
+ //# sourceMappingURL=contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/ingest/contract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import type { ActorId, Provenance, Ulid } from '../events/types.js';
2
+ import type { EventStore } from '../events/store.js';
3
+ import type { WorkEvent, WorkEventKind } from './contract.js';
4
+ export interface IngestContext {
5
+ /** Actor recorded as `by`, fixed for the channel (CLI: cliActor; M3 HTTP: verified principal). */
6
+ by: ActorId;
7
+ /** The pinned workspace — containment is verified against folded state. */
8
+ workspace: string;
9
+ /** Provenance stamped on every write (its `auth` gates binding kinds). */
10
+ prov: Provenance;
11
+ /** Capability allowlist of permitted kinds; default = all. */
12
+ allowedKinds?: ReadonlySet<WorkEventKind>;
13
+ now?: () => string;
14
+ newId?: () => Ulid;
15
+ }
16
+ export interface IngestResult {
17
+ /** Assigned id per event (null for a non-creating kind), in input order. */
18
+ ids: Array<string | null>;
19
+ count: number;
20
+ }
21
+ /**
22
+ * Apply a WorkEvent stream to the store under channel authorization. Each event maps 1:1 to a Track
23
+ * command (its own locked, atomic append).
24
+ *
25
+ * IDEMPOTENCY (v2.3c): a WorkEvent carrying a `clientToken` already present in the log is SKIPPED
26
+ * (nothing applied) and returns its ORIGINAL assigned id — so a retry of a partial/duplicate stream is a
27
+ * safe no-op with stable ids. A WorkEvent WITHOUT a token keeps the at-least-once behavior (re-applies on
28
+ * re-ingest). The skip is single-process-correct (the M2b consumer — a human or sequential CI ingest — is
29
+ * not concurrent); the CONCURRENT-retry race (two parallel ingests both seeing "absent") is deferred to M3
30
+ * (an in-`appendCommand` token recheck under the existing lock + the authenticated channel's request-level
31
+ * idempotency). Note: the loop is still non-atomic (a mid-stream throw leaves earlier events committed),
32
+ * but with tokens a retry skips that committed prefix and resumes.
33
+ */
34
+ export declare function ingest(events: readonly WorkEvent[], ctx: IngestContext, store: EventStore): IngestResult;
35
+ //# sourceMappingURL=ingest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ingest.d.ts","sourceRoot":"","sources":["../../src/ingest/ingest.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAc,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAGpD,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAG7D,MAAM,WAAW,aAAa;IAC5B,kGAAkG;IAClG,EAAE,EAAE,OAAO,CAAA;IACX,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAA;IACjB,0EAA0E;IAC1E,IAAI,EAAE,UAAU,CAAA;IAChB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,WAAW,CAAC,aAAa,CAAC,CAAA;IACzC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,GAAG,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;CACd;AA6MD;;;;;;;;;;;;GAYG;AACH,wBAAgB,MAAM,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,YAAY,CAqBxG"}
@@ -0,0 +1,240 @@
1
+ // Lot v2.3b-2 — apply a neutral WorkEvent stream through the Track facade, under channel-bound
2
+ // authorization. The WHO/trust come from the IngestContext (fixed when the channel opens), never the
3
+ // event. Two gates run before every apply, against FRESHLY FOLDED state:
4
+ // 1. workspace containment — the affected aggregate's workspace must equal ctx.workspace. For existing
5
+ // aggregates this is resolved from folded state (payload carries no workspace for them); a channel
6
+ // pinned to W can therefore never mutate workspace V. This is the load-bearing security property.
7
+ // 2. binding gate — a settling write (decision.outcome, waive, realize→done/cancelled, blocker.resolve,
8
+ // acceptance.run) is allowed only on an authenticated channel (auth ∈ {local-user, signed}); an
9
+ // unauthenticated channel may only create/prepare.
10
+ // State is re-folded each iteration, so an id created earlier in the same batch resolves to ctx.workspace.
11
+ import { Track } from '../track.js';
12
+ import { IngestError, mapWorkEvent } from './map.js';
13
+ // Allowlist (not `!== 'unauthenticated'`, which would admit any future enum value). `'signed'` is
14
+ // pre-listed so M3 adding it to Provenance['auth'] unlocks binding with no change here; today the only
15
+ // valid authenticated value is 'local-user'.
16
+ const BINDING_AUTH = new Set(['local-user', 'signed']);
17
+ /** Does this command settle state (⇒ requires an authenticated channel)? */
18
+ function isBinding(cmd) {
19
+ switch (cmd.settles) {
20
+ case 'never':
21
+ return false;
22
+ case 'always':
23
+ case 'evidence':
24
+ return true;
25
+ case 'realize-terminal': {
26
+ const to = cmd.payload['to'];
27
+ return to === 'done' || to === 'cancelled';
28
+ }
29
+ }
30
+ }
31
+ /**
32
+ * The workspace of the aggregate this command affects. `create` kinds carry it in the payload; all
33
+ * others address a pre-existing aggregate whose workspace is resolved from folded state (undefined if the
34
+ * aggregate does not exist — the Track method will then throw its own domain error, so no write happens).
35
+ */
36
+ function resolveWorkspace(cmd, state) {
37
+ const p = cmd.payload;
38
+ const item = (id) => state.items.get(id)?.workspace;
39
+ switch (cmd.kind) {
40
+ case 'item.create':
41
+ case 'decision.create':
42
+ return { create: true, workspace: p['workspace'] };
43
+ case 'item.realize':
44
+ // setRealization resolves items ∪ decisions (a decision has a prep/realization axis); resolving
45
+ // only against items would leave a foreign-workspace DECISION reachable — a containment bypass.
46
+ return { create: false, workspace: item(p['itemId']) ?? state.decisions.get(p['itemId'])?.workspace };
47
+ case 'item.spec':
48
+ case 'acceptance.criterion':
49
+ case 'priority.assess':
50
+ case 'decision.disposition':
51
+ return { create: false, workspace: item(p['itemId']) };
52
+ case 'decision.outcome':
53
+ case 'decision.dossier':
54
+ return { create: false, workspace: state.decisions.get(p['decisionId'])?.workspace };
55
+ case 'acceptance.link':
56
+ case 'acceptance.waive': {
57
+ const crit = state.criteria.get(p['criterionId']);
58
+ return { create: false, workspace: crit ? item(crit.itemId) : undefined };
59
+ }
60
+ case 'acceptance.run': {
61
+ const ev = state.evidence.get(p['evidenceId']);
62
+ const crit = ev ? state.criteria.get(ev.criterionId) : undefined;
63
+ return { create: false, workspace: crit ? item(crit.itemId) : undefined };
64
+ }
65
+ case 'blocker.raise':
66
+ return { create: false, workspace: item(p['targetId']) };
67
+ case 'blocker.resolve': {
68
+ const b = state.blockers.get(p['blockerId']);
69
+ return { create: false, workspace: b ? item(b.targetId) : undefined };
70
+ }
71
+ }
72
+ }
73
+ /**
74
+ * Workspaces of the OTHER aggregates a command affects beyond its primary target. A decision opens a
75
+ * blocker on each of its targets (at create) and resolves/`rejected`-flips them (at outcome), so those
76
+ * target items are mutated too — each must be in the channel's workspace, or a W-pinned channel could
77
+ * reach a V-item by targeting it.
78
+ */
79
+ function affectedTargetWorkspaces(cmd, state) {
80
+ const wsOf = (id) => state.items.get(id)?.workspace;
81
+ switch (cmd.kind) {
82
+ case 'decision.create':
83
+ return cmd.payload['targets'].map((t) => wsOf(t));
84
+ case 'decision.outcome': {
85
+ const dec = state.decisions.get(cmd.payload['decisionId']);
86
+ return dec ? dec.targets.map((t) => wsOf(t)) : [];
87
+ }
88
+ default:
89
+ return [];
90
+ }
91
+ }
92
+ /** Channel authorization: capability allowlist, workspace containment, binding-trust. Throws IngestError. */
93
+ function authorize(cmd, ctx, state) {
94
+ if (ctx.allowedKinds && !ctx.allowedKinds.has(cmd.kind)) {
95
+ throw new IngestError(`kind "${cmd.kind}" is not permitted by this channel's capability`);
96
+ }
97
+ const ws = resolveWorkspace(cmd, state);
98
+ if (ws.create) {
99
+ if (ws.workspace !== ctx.workspace) {
100
+ throw new IngestError(`${cmd.kind}: payload.workspace "${String(ws.workspace)}" must equal the channel workspace "${ctx.workspace}"`);
101
+ }
102
+ }
103
+ else if (ws.workspace !== undefined && ws.workspace !== ctx.workspace) {
104
+ throw new IngestError(`${cmd.kind}: target belongs to workspace "${ws.workspace}", not the channel workspace "${ctx.workspace}"`);
105
+ }
106
+ // Every additionally-affected target (a decision's targets) must also be contained.
107
+ for (const tw of affectedTargetWorkspaces(cmd, state)) {
108
+ if (tw !== undefined && tw !== ctx.workspace) {
109
+ throw new IngestError(`${cmd.kind}: affects an aggregate in workspace "${tw}", not the channel workspace "${ctx.workspace}"`);
110
+ }
111
+ }
112
+ if (isBinding(cmd) && !BINDING_AUTH.has(ctx.prov.auth)) {
113
+ throw new IngestError(`${cmd.kind} is a binding write and requires an authenticated channel (auth="${ctx.prov.auth}")`);
114
+ }
115
+ }
116
+ /** Typed dispatch to the Track facade. Args were validated/normalized by `mapWorkEvent`. Returns an
117
+ * assigned id for the creating kinds, else undefined. */
118
+ function applyCommand(track, cmd) {
119
+ const a = cmd.args;
120
+ switch (cmd.kind) {
121
+ case 'item.create':
122
+ return track.createItem(a[0]);
123
+ case 'item.spec':
124
+ track.setSpec(a[0], a[1]);
125
+ return undefined;
126
+ case 'item.realize':
127
+ track.setRealization(a[0], a[1]);
128
+ return undefined;
129
+ case 'decision.create':
130
+ return track.createDecision(a[0]);
131
+ case 'decision.dossier':
132
+ track.reviseDossier(a[0], a[1]);
133
+ return undefined;
134
+ case 'decision.outcome':
135
+ track.setOutcome(a[0], a[1]);
136
+ return undefined;
137
+ case 'decision.disposition':
138
+ track.setDisposition(a[0], a[1], a[2], a[3]);
139
+ return undefined;
140
+ case 'acceptance.criterion':
141
+ return track.addCriterion(a[0], a[1]);
142
+ case 'acceptance.link':
143
+ return track.linkEvidence(a[0], a[1], a[2]);
144
+ case 'acceptance.run':
145
+ track.recordRun(a[0], a[1]);
146
+ return undefined;
147
+ case 'acceptance.waive':
148
+ track.waive(a[0], a[1]);
149
+ return undefined;
150
+ case 'priority.assess':
151
+ track.assessPriority(a[0], a[1]);
152
+ return undefined;
153
+ case 'blocker.raise':
154
+ return track.openBlocker(a[0]);
155
+ case 'blocker.resolve':
156
+ track.resolveBlocker(a[0]);
157
+ return undefined;
158
+ }
159
+ }
160
+ /** The id `applyCommand` originally returned for an event carrying a clientToken (for stable retry ids). */
161
+ function resultIdOf(e) {
162
+ switch (e.type) {
163
+ case 'item.created':
164
+ case 'decision.created':
165
+ case 'blocker.opened':
166
+ return e.aggregateId;
167
+ case 'acceptance.criterion.added':
168
+ return e.payload.criterionId ?? null;
169
+ case 'acceptance.evidence.linked':
170
+ return e.payload.evidenceId ?? null;
171
+ default:
172
+ return null;
173
+ }
174
+ }
175
+ /** The workspace of the aggregate a stored event belongs to (for scoping the token index). */
176
+ function eventWorkspace(e, state) {
177
+ switch (e.aggregate) {
178
+ case 'item':
179
+ return state.items.get(e.aggregateId)?.workspace;
180
+ case 'decision':
181
+ return state.decisions.get(e.aggregateId)?.workspace;
182
+ case 'blocker': {
183
+ const b = state.blockers.get(e.aggregateId);
184
+ return b ? state.items.get(b.targetId)?.workspace : undefined;
185
+ }
186
+ }
187
+ }
188
+ /**
189
+ * Index clientToken → original result id, from the FIRST (primary) event carrying each token — SCOPED to
190
+ * `workspace`. The namespace is per-workspace so a token used in workspace V cannot suppress (skip) a
191
+ * write on a channel pinned to W, nor disclose V's id to W. (Without this, a shared global namespace would
192
+ * be a cross-tenant write-suppression vector once M3 admits multiple principals onto one log.)
193
+ */
194
+ function tokenIndex(events, state, workspace) {
195
+ const idx = new Map();
196
+ for (const e of events) {
197
+ if (e.clientToken === undefined || idx.has(e.clientToken))
198
+ continue;
199
+ if (eventWorkspace(e, state) === workspace)
200
+ idx.set(e.clientToken, resultIdOf(e));
201
+ }
202
+ return idx;
203
+ }
204
+ /**
205
+ * Apply a WorkEvent stream to the store under channel authorization. Each event maps 1:1 to a Track
206
+ * command (its own locked, atomic append).
207
+ *
208
+ * IDEMPOTENCY (v2.3c): a WorkEvent carrying a `clientToken` already present in the log is SKIPPED
209
+ * (nothing applied) and returns its ORIGINAL assigned id — so a retry of a partial/duplicate stream is a
210
+ * safe no-op with stable ids. A WorkEvent WITHOUT a token keeps the at-least-once behavior (re-applies on
211
+ * re-ingest). The skip is single-process-correct (the M2b consumer — a human or sequential CI ingest — is
212
+ * not concurrent); the CONCURRENT-retry race (two parallel ingests both seeing "absent") is deferred to M3
213
+ * (an in-`appendCommand` token recheck under the existing lock + the authenticated channel's request-level
214
+ * idempotency). Note: the loop is still non-atomic (a mid-stream throw leaves earlier events committed),
215
+ * but with tokens a retry skips that committed prefix and resumes.
216
+ */
217
+ export function ingest(events, ctx, store) {
218
+ const track = new Track(store, {
219
+ by: ctx.by,
220
+ prov: ctx.prov,
221
+ ...(ctx.now !== undefined ? { now: ctx.now } : {}),
222
+ ...(ctx.newId !== undefined ? { newId: ctx.newId } : {}),
223
+ });
224
+ const seen = tokenIndex(store.readAll(), track.state(), ctx.workspace);
225
+ const ids = [];
226
+ for (const ev of events) {
227
+ const cmd = mapWorkEvent(ev);
228
+ if (cmd.clientToken !== undefined && seen.has(cmd.clientToken)) {
229
+ ids.push(seen.get(cmd.clientToken) ?? null); // already applied — skip, return the original id
230
+ continue;
231
+ }
232
+ authorize(cmd, ctx, track.state()); // fresh fold each iteration (re-fold after each apply)
233
+ const id = track.withClientToken(cmd.clientToken, () => applyCommand(track, cmd)) ?? null;
234
+ if (cmd.clientToken !== undefined)
235
+ seen.set(cmd.clientToken, id); // intra-stream duplicates also skip
236
+ ids.push(id);
237
+ }
238
+ return { ids, count: events.length };
239
+ }
240
+ //# sourceMappingURL=ingest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../src/ingest/ingest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { type Settles, type WorkEvent, type WorkEventKind } from './contract.js';
2
+ /** A validated, normalized command ready for `ingest` to authorize and apply. */
3
+ export interface MappedCommand {
4
+ kind: WorkEventKind;
5
+ method: string;
6
+ settles: Settles;
7
+ /** The validated payload (only schema-allowed fields, correct types). */
8
+ payload: Readonly<Record<string, unknown>>;
9
+ /** Positional arguments to spread into the Track method. */
10
+ args: readonly unknown[];
11
+ /** Optional delivery idempotency key (v2.3c). */
12
+ clientToken?: string;
13
+ }
14
+ /** A fail-closed rejection of a malformed/illegal WorkEvent (distinct from a domain error). */
15
+ export declare class IngestError extends Error {
16
+ readonly name = "IngestError";
17
+ }
18
+ /** Validate a WorkEvent and produce its mapped Track command. Pure; throws IngestError on any violation. */
19
+ export declare function mapWorkEvent(ev: WorkEvent): MappedCommand;
20
+ //# sourceMappingURL=map.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.d.ts","sourceRoot":"","sources":["../../src/ingest/map.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,aAAa,EACnB,MAAM,eAAe,CAAA;AAEtB,iFAAiF;AACjF,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,aAAa,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,yEAAyE;IACzE,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAC1C,4DAA4D;IAC5D,IAAI,EAAE,SAAS,OAAO,EAAE,CAAA;IACxB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAID,+FAA+F;AAC/F,qBAAa,WAAY,SAAQ,KAAK;IACpC,SAAkB,IAAI,iBAAgB;CACvC;AAwED,4GAA4G;AAC5G,wBAAgB,YAAY,CAAC,EAAE,EAAE,SAAS,GAAG,aAAa,CAwEzD"}
@@ -0,0 +1,154 @@
1
+ // Lot v2.3b-1 — pure `WorkEvent` → Track-command mapper. Validates an envelope against the shared
2
+ // schema (fail-closed: unknown major / kind / field, missing required, wrong type, bad enum) and builds
3
+ // the positional argument tuple for the Track method. Pure and total: no I/O, no state, no append. The
4
+ // application + workspace/binding authorization (which need folded state) live in `ingest` (v2.3b-2).
5
+ import { WORK_EVENT_ENVELOPE_KEYS, WORK_EVENT_SCHEMA, } from './contract.js';
6
+ const MAX_CLIENT_TOKEN = 256;
7
+ /** A fail-closed rejection of a malformed/illegal WorkEvent (distinct from a domain error). */
8
+ export class IngestError extends Error {
9
+ name = 'IngestError';
10
+ }
11
+ function isPlainObject(v) {
12
+ return typeof v === 'object' && v !== null && !Array.isArray(v);
13
+ }
14
+ function checkType(kind, field, spec, v) {
15
+ const bad = (want) => {
16
+ throw new IngestError(`${kind}.${field}: expected ${want}`);
17
+ };
18
+ switch (spec.type) {
19
+ case 'string':
20
+ if (typeof v !== 'string')
21
+ bad('a string');
22
+ if (spec.enum && !spec.enum.includes(v)) {
23
+ throw new IngestError(`${kind}.${field}: must be one of ${spec.enum.join('|')} (got "${String(v)}")`);
24
+ }
25
+ return;
26
+ case 'number':
27
+ if (typeof v !== 'number' || !Number.isFinite(v))
28
+ bad('a finite number');
29
+ return;
30
+ case 'string[]':
31
+ if (!Array.isArray(v) || !v.every((x) => typeof x === 'string'))
32
+ bad('a string[]');
33
+ return;
34
+ case 'object':
35
+ if (!isPlainObject(v))
36
+ bad('an object');
37
+ return;
38
+ }
39
+ }
40
+ /** Validate envelope + payload against the schema. Throws IngestError on any violation. */
41
+ function validate(ev) {
42
+ if (!isPlainObject(ev))
43
+ throw new IngestError('WorkEvent must be an object');
44
+ // Reject unknown envelope keys (fail-closed): no per-event actor/sponsor/proposed — the WHO/trust come
45
+ // from the channel context, not the event.
46
+ for (const key of Object.keys(ev)) {
47
+ if (!WORK_EVENT_ENVELOPE_KEYS.includes(key)) {
48
+ throw new IngestError(`unknown WorkEvent envelope key "${key}" (allowed: ${WORK_EVENT_ENVELOPE_KEYS.join(', ')})`);
49
+ }
50
+ }
51
+ if (ev.v !== 1) {
52
+ throw new IngestError(`unsupported WorkEvent contract major (expected v:1, got ${String(ev.v)})`);
53
+ }
54
+ const clientToken = ev.clientToken;
55
+ if (clientToken !== undefined && (typeof clientToken !== 'string' || clientToken.length === 0 || clientToken.length > MAX_CLIENT_TOKEN)) {
56
+ throw new IngestError(`clientToken must be a non-empty string of at most ${MAX_CLIENT_TOKEN} chars`);
57
+ }
58
+ const kind = ev.kind;
59
+ const schema = WORK_EVENT_SCHEMA[kind];
60
+ if (schema === undefined)
61
+ throw new IngestError(`unknown WorkEvent kind "${String(kind)}"`);
62
+ const payload = ev.payload;
63
+ if (!isPlainObject(payload))
64
+ throw new IngestError(`${kind}: payload must be an object`);
65
+ // Reject unknown fields (fail-closed — never silently forward).
66
+ for (const key of Object.keys(payload)) {
67
+ if (!(key in schema.fields))
68
+ throw new IngestError(`${kind}: unknown payload field "${key}"`);
69
+ }
70
+ // Required presence + type + enum.
71
+ for (const [field, spec] of Object.entries(schema.fields)) {
72
+ const v = payload[field];
73
+ if (v === undefined) {
74
+ if (spec.required)
75
+ throw new IngestError(`${kind}: missing required field "${field}"`);
76
+ continue;
77
+ }
78
+ checkType(kind, field, spec, v);
79
+ }
80
+ return { kind, payload, clientToken: clientToken };
81
+ }
82
+ /** Validate a WorkEvent and produce its mapped Track command. Pure; throws IngestError on any violation. */
83
+ export function mapWorkEvent(ev) {
84
+ const { kind, payload: p, clientToken } = validate(ev);
85
+ const { method, settles } = WORK_EVENT_SCHEMA[kind];
86
+ const opt = (k) => (p[k] !== undefined ? { [k]: p[k] } : {});
87
+ let args;
88
+ switch (kind) {
89
+ case 'item.create':
90
+ // createItem(ItemCreatedPayload) — validated payload already IS the (links-free) shape.
91
+ args = [{ ...p }];
92
+ break;
93
+ case 'item.spec':
94
+ args = [p['itemId'], p['to']];
95
+ break;
96
+ case 'item.realize':
97
+ args = [p['itemId'], p['to']];
98
+ break;
99
+ case 'decision.create':
100
+ args = [{ ...p }];
101
+ break;
102
+ case 'decision.dossier':
103
+ args = [p['decisionId'], p['dossier']];
104
+ break;
105
+ case 'decision.outcome':
106
+ args = [p['decisionId'], p['to']];
107
+ break;
108
+ case 'decision.disposition':
109
+ // setDisposition(itemId, gate, disposition, reason?) — pass reason as-is (undefined if absent).
110
+ args = [p['itemId'], p['gate'], p['disposition'], p['reason']];
111
+ break;
112
+ case 'acceptance.criterion':
113
+ args = [p['itemId'], p['statement']];
114
+ break;
115
+ case 'acceptance.link':
116
+ args = [p['criterionId'], p['kind'], p['locator']];
117
+ break;
118
+ case 'acceptance.run':
119
+ args = [p['evidenceId'], { commit: p['commit'], env: p['env'], runner: p['runner'], result: p['result'] }];
120
+ break;
121
+ case 'acceptance.waive':
122
+ args = [p['criterionId'], p['reason']];
123
+ break;
124
+ case 'priority.assess':
125
+ args = [
126
+ p['itemId'],
127
+ {
128
+ userBusinessValue: p['userBusinessValue'],
129
+ timeCriticality: p['timeCriticality'],
130
+ riskReductionOpportunityEnablement: p['riskReductionOpportunityEnablement'],
131
+ jobSize: p['jobSize'],
132
+ },
133
+ ];
134
+ break;
135
+ case 'blocker.raise':
136
+ // openBlocker(OpenBlockerInput) — reason defaults to '' to match the CLI (`opt(reason) ?? ''`).
137
+ args = [
138
+ {
139
+ targetId: p['targetId'],
140
+ kind: p['kind'],
141
+ ref: p['ref'],
142
+ reason: p['reason'] ?? '',
143
+ ...opt('resolutionRule'),
144
+ ...opt('owner'),
145
+ },
146
+ ];
147
+ break;
148
+ case 'blocker.resolve':
149
+ args = [p['blockerId']];
150
+ break;
151
+ }
152
+ return { kind, method, settles, payload: p, args, ...(clientToken !== undefined ? { clientToken } : {}) };
153
+ }
154
+ //# sourceMappingURL=map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/ingest/map.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,wGAAwG;AACxG,uGAAuG;AACvG,sGAAsG;AAEtG,OAAO,EACL,wBAAwB,EACxB,iBAAiB,GAKlB,MAAM,eAAe,CAAA;AAetB,MAAM,gBAAgB,GAAG,GAAG,CAAA;AAE5B,+FAA+F;AAC/F,MAAM,OAAO,WAAY,SAAQ,KAAK;IAClB,IAAI,GAAG,aAAa,CAAA;CACvC;AAED,SAAS,aAAa,CAAC,CAAU;IAC/B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AACjE,CAAC;AAED,SAAS,SAAS,CAAC,IAAmB,EAAE,KAAa,EAAE,IAAe,EAAE,CAAU;IAChF,MAAM,GAAG,GAAG,CAAC,IAAY,EAAS,EAAE;QAClC,MAAM,IAAI,WAAW,CAAC,GAAG,IAAI,IAAI,KAAK,cAAc,IAAI,EAAE,CAAC,CAAA;IAC7D,CAAC,CAAA;IACD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,QAAQ;YACX,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,GAAG,CAAC,UAAU,CAAC,CAAA;YAC1C,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAW,CAAC,EAAE,CAAC;gBAClD,MAAM,IAAI,WAAW,CAAC,GAAG,IAAI,IAAI,KAAK,oBAAoB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACvG,CAAC;YACD,OAAM;QACR,KAAK,QAAQ;YACX,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,GAAG,CAAC,iBAAiB,CAAC,CAAA;YACxE,OAAM;QACR,KAAK,UAAU;YACb,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBAAE,GAAG,CAAC,YAAY,CAAC,CAAA;YAClF,OAAM;QACR,KAAK,QAAQ;YACX,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;gBAAE,GAAG,CAAC,WAAW,CAAC,CAAA;YACvC,OAAM;IACV,CAAC;AACH,CAAC;AAED,2FAA2F;AAC3F,SAAS,QAAQ,CAAC,EAAa;IAK7B,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QAAE,MAAM,IAAI,WAAW,CAAC,6BAA6B,CAAC,CAAA;IAC5E,uGAAuG;IACvG,2CAA2C;IAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QAClC,IAAI,CAAE,wBAA8C,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,WAAW,CAAC,mCAAmC,GAAG,eAAe,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACpH,CAAC;IACH,CAAC;IACD,IAAK,EAAsB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,WAAW,CAAC,2DAA2D,MAAM,CAAE,EAAsB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IACxH,CAAC;IACD,MAAM,WAAW,GAAI,EAAgC,CAAC,WAAW,CAAA;IACjE,IAAI,WAAW,KAAK,SAAS,IAAI,CAAC,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,gBAAgB,CAAC,EAAE,CAAC;QACxI,MAAM,IAAI,WAAW,CAAC,qDAAqD,gBAAgB,QAAQ,CAAC,CAAA;IACtG,CAAC;IACD,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAA;IACpB,MAAM,MAAM,GAAI,iBAA+E,CAAC,IAAI,CAAC,CAAA;IACrG,IAAI,MAAM,KAAK,SAAS;QAAE,MAAM,IAAI,WAAW,CAAC,2BAA2B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC3F,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAA;IAC1B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,IAAI,6BAA6B,CAAC,CAAA;IAExF,gEAAgE;IAChE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,WAAW,CAAC,GAAG,IAAI,4BAA4B,GAAG,GAAG,CAAC,CAAA;IAC/F,CAAC;IACD,mCAAmC;IACnC,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;QACxB,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,WAAW,CAAC,GAAG,IAAI,6BAA6B,KAAK,GAAG,CAAC,CAAA;YACtF,SAAQ;QACV,CAAC;QACD,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACjC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,WAAiC,EAAE,CAAA;AAC1E,CAAC;AAED,4GAA4G;AAC5G,MAAM,UAAU,YAAY,CAAC,EAAa;IACxC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACtD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IACnD,MAAM,GAAG,GAAG,CAAC,CAAS,EAA2B,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAE7F,IAAI,IAAwB,CAAA;IAC5B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,aAAa;YAChB,wFAAwF;YACxF,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;YACjB,MAAK;QACP,KAAK,WAAW;YACd,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;YAC7B,MAAK;QACP,KAAK,cAAc;YACjB,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;YAC7B,MAAK;QACP,KAAK,iBAAiB;YACpB,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;YACjB,MAAK;QACP,KAAK,kBAAkB;YACrB,IAAI,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;YACtC,MAAK;QACP,KAAK,kBAAkB;YACrB,IAAI,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;YACjC,MAAK;QACP,KAAK,sBAAsB;YACzB,gGAAgG;YAChG,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;YAC9D,MAAK;QACP,KAAK,sBAAsB;YACzB,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;YACpC,MAAK;QACP,KAAK,iBAAiB;YACpB,IAAI,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;YAClD,MAAK;QACP,KAAK,gBAAgB;YACnB,IAAI,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;YAC1G,MAAK;QACP,KAAK,kBAAkB;YACrB,IAAI,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;YACtC,MAAK;QACP,KAAK,iBAAiB;YACpB,IAAI,GAAG;gBACL,CAAC,CAAC,QAAQ,CAAC;gBACX;oBACE,iBAAiB,EAAE,CAAC,CAAC,mBAAmB,CAAC;oBACzC,eAAe,EAAE,CAAC,CAAC,iBAAiB,CAAC;oBACrC,kCAAkC,EAAE,CAAC,CAAC,oCAAoC,CAAC;oBAC3E,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC;iBACtB;aACF,CAAA;YACD,MAAK;QACP,KAAK,eAAe;YAClB,gGAAgG;YAChG,IAAI,GAAG;gBACL;oBACE,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC;oBACvB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;oBACf,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC;oBACb,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE;oBACzB,GAAG,GAAG,CAAC,gBAAgB,CAAC;oBACxB,GAAG,GAAG,CAAC,OAAO,CAAC;iBAChB;aACF,CAAA;YACD,MAAK;QACP,KAAK,iBAAiB;YACpB,IAAI,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;YACvB,MAAK;IACT,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;AAC3G,CAAC"}
package/dist/track.d.ts CHANGED
@@ -43,9 +43,17 @@ export declare class Track {
43
43
  private readonly newId;
44
44
  private readonly actor;
45
45
  private readonly prov;
46
+ /** Delivery idempotency token stamped on emitted events for the duration of a `withClientToken` scope. */
47
+ private activeClientToken;
46
48
  constructor(store: EventStore, opts?: TrackOptions);
47
49
  /** Materialized state from a full replay of the log. */
48
50
  state(): State;
51
+ /**
52
+ * Run `fn` (one command) with `token` stamped on every event it emits — the delivery idempotency key
53
+ * (v2.3c). Scoped (restored in `finally`), so it stamps exactly this command's batch and nothing else.
54
+ * `undefined` ⇒ no token (today's behavior). Not nested by the ingest seam.
55
+ */
56
+ withClientToken<T>(token: string | undefined, fn: () => T): T;
49
57
  createItem(input: ItemCreatedPayload): ItemId;
50
58
  setSpec(itemId: ItemId, to: SpecStatus): void;
51
59
  /**
@@ -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":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,EAAE,OAAO,EAAsC,UAAU,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACtG,OAAO,EAAkB,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAIzE,OAAO,EAGL,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACpE,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,cAAc,EACpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,OAAO,EACZ,KAAK,OAAO,EACb,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,IAAI,EACT,KAAK,kBAAkB,EACvB,KAAK,MAAM,EAGX,KAAK,WAAW,EAChB,KAAK,UAAU,EAChB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAQ,KAAK,KAAK,EAAE,MAAM,iBAAiB,CAAA;AASlD,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,8DAA8D;IAC9D,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;IAClB,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;IAClB,wCAAwC;IACxC,EAAE,CAAC,EAAE,OAAO,CAAA;IACZ,iGAAiG;IACjG,IAAI,CAAC,EAAE,UAAU,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,WAAW,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED;;;;GAIG;AACH,qBAAa,KAAK;IASd,OAAO,CAAC,QAAQ,CAAC,KAAK;IARxB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAwB;IAC7C,0GAA0G;IAC1G,OAAO,CAAC,iBAAiB,CAAoB;gBAG1B,KAAK,EAAE,UAAU,EAClC,IAAI,GAAE,YAAiB;IAUzB,wDAAwD;IACxD,KAAK,IAAI,KAAK;IAId;;;;OAIG;IACH,eAAe,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;IAU7D,UAAU,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM;IAS7C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,GAAG,IAAI;IAK7C;;;;;OAKG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI;IAiBrD;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM;IAuCrD;;;;;OAKG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,GAAG,IAAI;IA2CjD,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAOzD;;;OAGG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAe3F,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,SAAS;IA6B/C,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAU1C,8FAA8F;IAC9F,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAWvD,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAa9E,SAAS,CACP,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,SAAS,CAAA;KAAE,GACtE,IAAI;IAIP,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAUhD;;;OAGG;IACH,UAAU,CACR,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,eAAe,EACvB,GAAG,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GACnD,MAAM;IA+DT,wFAAwF;IACxF,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,kBAAkB;IAgBtE,iEAAiE;IACjE,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM;IAItC,2DAA2D;IAC3D,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,GAAG,SAAS,EAAE;IAM/D;;;;;OAKG;IACH,YAAY,CACV,OAAO,EAAE,MAAM,EACf,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5D,YAAY;IA0Gf,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,IAAI;IASZ,8FAA8F;IAC9F,OAAO,CAAC,SAAS;CAmBlB"}
package/dist/track.js CHANGED
@@ -21,6 +21,8 @@ export class Track {
21
21
  newId;
22
22
  actor;
23
23
  prov;
24
+ /** Delivery idempotency token stamped on emitted events for the duration of a `withClientToken` scope. */
25
+ activeClientToken;
24
26
  constructor(store, opts = {}) {
25
27
  this.store = store;
26
28
  this.clock = opts.now ?? (() => new Date().toISOString());
@@ -34,6 +36,21 @@ export class Track {
34
36
  state() {
35
37
  return fold(this.store.readAll());
36
38
  }
39
+ /**
40
+ * Run `fn` (one command) with `token` stamped on every event it emits — the delivery idempotency key
41
+ * (v2.3c). Scoped (restored in `finally`), so it stamps exactly this command's batch and nothing else.
42
+ * `undefined` ⇒ no token (today's behavior). Not nested by the ingest seam.
43
+ */
44
+ withClientToken(token, fn) {
45
+ const prev = this.activeClientToken;
46
+ this.activeClientToken = token;
47
+ try {
48
+ return fn();
49
+ }
50
+ finally {
51
+ this.activeClientToken = prev;
52
+ }
53
+ }
37
54
  createItem(input) {
38
55
  if (input.kind === 'decision') {
39
56
  throw new DomainError('use createDecision for kind:"decision" (Lot 3) — it needs targets, a dossier, and an atomic blocker batch (SPEC §2.5)');
@@ -475,6 +492,7 @@ export class Track {
475
492
  at,
476
493
  by: this.actor,
477
494
  ...(this.prov !== undefined ? { prov: this.prov } : {}),
495
+ ...(this.activeClientToken !== undefined ? { clientToken: this.activeClientToken } : {}),
478
496
  payload: part.payload,
479
497
  }));
480
498
  if (events.length > 1) {
package/dist/track.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"track.js","sourceRoot":"","sources":["../src/track.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"track.js","sourceRoot":"","sources":["../src/track.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentropic/track",
3
- "version": "0.2.2",
3
+ "version": "0.4.0",
4
4
  "description": "Typed product-backlog and spec/plan/UAT system of record for the sentropic ecosystem (record-only MVP).",
5
5
  "license": "MIT",
6
6
  "author": "Fabien Antoine",