@dsh-enhanced/event-triggers 0.1.24 → 0.1.31

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source.js","sourceRoot":"","sources":["../src/source.ts"],"names":[],"mappings":""}
package/lib/sqlite.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { DatabaseSync } from 'node:sqlite';
2
2
  export declare class EventTriggerDatabaseError extends Error {
3
- readonly code: 'invalid-path' | 'schema-too-new';
4
- constructor(code: 'invalid-path' | 'schema-too-new', message: string);
3
+ readonly code: 'invalid-path' | 'invalid-schema' | 'schema-too-new';
4
+ constructor(code: 'invalid-path' | 'invalid-schema' | 'schema-too-new', message: string);
5
5
  }
6
6
  export declare function openEventTriggerDatabase(path: string): DatabaseSync;
7
7
  //# sourceMappingURL=sqlite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../src/sqlite.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,qBAAa,yBAA0B,SAAQ,KAAK;IACtC,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB;gBAAvC,IAAI,EAAE,cAAc,GAAG,gBAAgB,EAAE,OAAO,EAAE,MAAM;CAI9E;AAoFD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAuBnE"}
1
+ {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../src/sqlite.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,qBAAa,yBAA0B,SAAQ,KAAK;IACtC,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB,GAAG,gBAAgB;gBAA1D,IAAI,EAAE,cAAc,GAAG,gBAAgB,GAAG,gBAAgB,EAAE,OAAO,EAAE,MAAM;CAIjG;AAwLD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAuBnE"}
package/lib/sqlite.js CHANGED
@@ -9,13 +9,49 @@ export class EventTriggerDatabaseError extends Error {
9
9
  this.name = 'EventTriggerDatabaseError';
10
10
  }
11
11
  }
12
+ function assertColumns(database, table, expected) {
13
+ const columns = database.prepare(`PRAGMA table_info(${table})`).all();
14
+ if (columns.length !== expected.length || columns.some((column, index) => column.name !== expected[index])) {
15
+ throw new EventTriggerDatabaseError('invalid-schema', `event trigger ${table} schema is invalid`);
16
+ }
17
+ }
18
+ function assertSchema(database) {
19
+ assertColumns(database, 'trigger_state', [
20
+ 'trigger_id', 'first_observed_at', 'last_observed_at', 'last_fingerprint', 'last_truthy', 'edge_revision',
21
+ 'pending_fingerprint', 'pending_since', 'pending_revision', 'last_fire_at', 'fire_count',
22
+ ]);
23
+ assertColumns(database, 'event_outbox', [
24
+ 'id', 'sequence', 'trigger_id', 'event_id', 'occurred_at', 'status', 'attempts', 'delivered_at', 'created_at',
25
+ 'next_attempt_at', 'last_attempt_at', 'last_error', 'envelope_canonical', 'envelope_digest',
26
+ ]);
27
+ assertColumns(database, 'trigger_health', [
28
+ 'trigger_id', 'consecutive_failures', 'last_error', 'last_failed_at', 'last_success_at',
29
+ ]);
30
+ assertColumns(database, 'event_sequence', ['sequence']);
31
+ assertColumns(database, 'goal_source_claims', [
32
+ 'trigger_id', 'scope_json', 'goal_id', 'definition_version', 'definition_digest',
33
+ 'session_id', 'native_goal_id', 'native_revision', 'config_digest', 'automation_id', 'retired_at',
34
+ ]);
35
+ const sequenceSql = database.prepare(`SELECT sql FROM sqlite_master WHERE type = 'table' AND name = 'event_sequence'`)
36
+ .get();
37
+ const outboxSql = database.prepare(`SELECT sql FROM sqlite_master WHERE type = 'table' AND name = 'event_outbox'`)
38
+ .get();
39
+ const sourceIndex = database.prepare(`SELECT 1 AS present FROM sqlite_master WHERE type = 'index' AND name = 'event_outbox_source'`)
40
+ .get();
41
+ if (sequenceSql === undefined || outboxSql === undefined || sourceIndex === undefined
42
+ || !/AUTOINCREMENT/u.test(sequenceSql.sql) || !/STRICT/u.test(outboxSql.sql)
43
+ || !/sequence\s+INTEGER\s+NOT\s+NULL\s+UNIQUE\s+CHECK\s*\(sequence\s*>\s*0\)/iu.test(outboxSql.sql)) {
44
+ throw new EventTriggerDatabaseError('invalid-schema', 'event trigger source sequence schema is invalid');
45
+ }
46
+ }
12
47
  function migrate(database) {
13
48
  database.exec('BEGIN IMMEDIATE');
14
49
  try {
15
50
  const version = database.prepare('PRAGMA user_version').get().user_version;
16
- if (version > 2)
51
+ if (version > 5)
17
52
  throw new EventTriggerDatabaseError('schema-too-new', `event trigger schema ${version} is too new`);
18
- if (version === 2) {
53
+ if (version === 5) {
54
+ assertSchema(database);
19
55
  database.exec('COMMIT');
20
56
  return;
21
57
  }
@@ -45,7 +81,11 @@ function migrate(database) {
45
81
  created_at INTEGER NOT NULL,
46
82
  next_attempt_at INTEGER NOT NULL,
47
83
  last_attempt_at INTEGER,
48
- last_error TEXT
84
+ last_error TEXT,
85
+ envelope_canonical TEXT,
86
+ envelope_digest TEXT,
87
+ CHECK ((envelope_canonical IS NULL AND envelope_digest IS NULL)
88
+ OR (envelope_canonical IS NOT NULL AND envelope_digest IS NOT NULL))
49
89
  ) STRICT;
50
90
  CREATE TABLE trigger_health (
51
91
  trigger_id TEXT PRIMARY KEY,
@@ -89,7 +129,69 @@ function migrate(database) {
89
129
  ) STRICT;
90
130
  CREATE INDEX event_outbox_pending ON event_outbox(status, next_attempt_at, created_at, id);
91
131
  `);
92
- database.exec('PRAGMA user_version = 2');
132
+ if (version === 1 || version === 2)
133
+ database.exec(`
134
+ ALTER TABLE event_outbox ADD COLUMN envelope_canonical TEXT;
135
+ ALTER TABLE event_outbox ADD COLUMN envelope_digest TEXT;
136
+ `);
137
+ if (version <= 3)
138
+ database.exec(`
139
+ DROP INDEX IF EXISTS event_outbox_pending;
140
+ ALTER TABLE event_outbox RENAME TO event_outbox_v3;
141
+ CREATE TABLE event_outbox (
142
+ id TEXT PRIMARY KEY,
143
+ sequence INTEGER NOT NULL UNIQUE CHECK (sequence > 0),
144
+ trigger_id TEXT NOT NULL,
145
+ event_id TEXT NOT NULL UNIQUE,
146
+ occurred_at INTEGER NOT NULL,
147
+ status TEXT NOT NULL CHECK (status IN ('pending', 'delivered', 'quarantined')),
148
+ attempts INTEGER NOT NULL DEFAULT 0,
149
+ delivered_at INTEGER,
150
+ created_at INTEGER NOT NULL,
151
+ next_attempt_at INTEGER NOT NULL,
152
+ last_attempt_at INTEGER,
153
+ last_error TEXT,
154
+ envelope_canonical TEXT,
155
+ envelope_digest TEXT,
156
+ CHECK ((envelope_canonical IS NULL AND envelope_digest IS NULL)
157
+ OR (envelope_canonical IS NOT NULL AND envelope_digest IS NOT NULL))
158
+ ) STRICT;
159
+ CREATE TABLE event_sequence (
160
+ sequence INTEGER PRIMARY KEY AUTOINCREMENT
161
+ ) STRICT;
162
+ INSERT INTO event_sequence(sequence)
163
+ SELECT sequence FROM (
164
+ SELECT ROW_NUMBER() OVER (ORDER BY created_at, id) AS sequence FROM event_outbox_v3
165
+ );
166
+ INSERT INTO event_outbox(
167
+ id, sequence, trigger_id, event_id, occurred_at, status, attempts, delivered_at, created_at,
168
+ next_attempt_at, last_attempt_at, last_error, envelope_canonical, envelope_digest
169
+ ) SELECT
170
+ id, ROW_NUMBER() OVER (ORDER BY created_at, id), trigger_id, event_id, occurred_at, status, attempts,
171
+ delivered_at, created_at, next_attempt_at, last_attempt_at, last_error, envelope_canonical, envelope_digest
172
+ FROM event_outbox_v3;
173
+ DROP TABLE event_outbox_v3;
174
+ CREATE INDEX event_outbox_pending ON event_outbox(status, next_attempt_at, created_at, id);
175
+ CREATE INDEX event_outbox_source ON event_outbox(trigger_id, sequence);
176
+ `);
177
+ if (version <= 4)
178
+ database.exec(`
179
+ CREATE TABLE goal_source_claims (
180
+ trigger_id TEXT PRIMARY KEY,
181
+ scope_json TEXT NOT NULL,
182
+ goal_id TEXT NOT NULL,
183
+ definition_version INTEGER NOT NULL,
184
+ definition_digest TEXT NOT NULL,
185
+ session_id TEXT NOT NULL,
186
+ native_goal_id TEXT NOT NULL,
187
+ native_revision INTEGER NOT NULL,
188
+ config_digest TEXT NOT NULL,
189
+ automation_id TEXT NOT NULL,
190
+ retired_at INTEGER
191
+ ) STRICT;
192
+ `);
193
+ database.exec('PRAGMA user_version = 5');
194
+ assertSchema(database);
93
195
  database.exec('COMMIT');
94
196
  }
95
197
  catch (error) {
package/lib/sqlite.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../src/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IAC7B;IAArB,YAAqB,IAAuC,EAAE,OAAe;QAC3E,KAAK,CAAC,OAAO,CAAC,CAAA;QADK,SAAI,GAAJ,IAAI,CAAmC;QAE1D,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAA;IACzC,CAAC;CACF;AAED,SAAS,OAAO,CAAC,QAAsB;IACrC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;IAChC,IAAI,CAAC;QACH,MAAM,OAAO,GAAI,QAAQ,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,GAAG,EAA+B,CAAC,YAAY,CAAA;QACxG,IAAI,OAAO,GAAG,CAAC;YAAE,MAAM,IAAI,yBAAyB,CAAC,gBAAgB,EAAE,wBAAwB,OAAO,aAAa,CAAC,CAAA;QACpH,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAAC,OAAM;QAAC,CAAC;QACtD,IAAI,OAAO,KAAK,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmChC,CAAC,CAAA;QACF,IAAI,OAAO,KAAK,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+BhC,CAAC,CAAA;QACF,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;QACxC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC;YAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QAC1C,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,IAAI,IAAI,KAAK,UAAU,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,yBAAyB,CAAC,cAAc,EAAE,8CAA8C,CAAC,CAAA;IACrG,CAAC;IACD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;QAC1D,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAA;IACjC,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;IACvC,IAAI,CAAC;QACH,QAAQ,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;QACzC,QAAQ,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;QAC3C,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAA;QAC1C,OAAO,CAAC,QAAQ,CAAC,CAAA;QACjB,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAA;YAC1C,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACxB,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,QAAQ,CAAC,KAAK,EAAE,CAAA;QAChB,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../src/sqlite.ts"],"names":[],"mappings":"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"}
package/lib/store.d.ts CHANGED
@@ -1,11 +1,13 @@
1
1
  import type { FireWhen } from './config.js';
2
- export type EventTriggerStoreErrorCode = 'invalid-input' | 'invalid-path' | 'schema-too-new';
2
+ export type EventTriggerStoreErrorCode = 'invalid-input' | 'invalid-path' | 'invalid-schema' | 'schema-too-new';
3
3
  export declare class EventTriggerStoreError extends Error {
4
4
  readonly code: EventTriggerStoreErrorCode;
5
5
  constructor(code: EventTriggerStoreErrorCode, message: string);
6
6
  }
7
7
  export interface TriggerOutboxEvent {
8
8
  id: string;
9
+ /** Durable, never-reused event-source cursor. */
10
+ sequence: number;
9
11
  triggerId: string;
10
12
  eventId: string;
11
13
  occurredAt: number;
@@ -16,6 +18,43 @@ export interface TriggerOutboxEvent {
16
18
  lastAttemptAt?: number;
17
19
  lastError?: string;
18
20
  createdAt: number;
21
+ /** Undefined only for rows written before provenance envelopes were introduced. */
22
+ envelope?: Readonly<{
23
+ canonical: string;
24
+ digest: string;
25
+ }>;
26
+ }
27
+ /** Internal raw source row. Provenance parsing remains at the host boundary. */
28
+ export interface EventSourceCandidate {
29
+ sequence: number;
30
+ eventId: string;
31
+ canonical: string;
32
+ digest: string;
33
+ }
34
+ export interface GoalSourceClaim {
35
+ triggerId: string;
36
+ scope: {
37
+ principalId: string;
38
+ principalRecordId: string;
39
+ principalVersion: number;
40
+ workspace: string;
41
+ preset: string;
42
+ };
43
+ goalId: string;
44
+ definition: {
45
+ version: number;
46
+ digest: string;
47
+ };
48
+ native: {
49
+ sessionId: string;
50
+ goalId: string;
51
+ revision: number;
52
+ };
53
+ configDigest: string;
54
+ automationId: string;
55
+ }
56
+ export interface StoredGoalSourceClaim extends GoalSourceClaim {
57
+ retiredAt?: number;
19
58
  }
20
59
  export type WebhookAcceptance = {
21
60
  accepted: true;
@@ -44,6 +83,11 @@ export declare class EventTriggerStore {
44
83
  cooldownMs: number;
45
84
  maxFires: number;
46
85
  ttlMs?: number;
86
+ /** Creates an immutable provenance snapshot after the stable outbox event id is known. */
87
+ envelope?: (eventId: string, revision: string) => Readonly<{
88
+ canonical: string;
89
+ digest: string;
90
+ }>;
47
91
  }): TriggerOutboxEvent[];
48
92
  acceptWebhook(input: {
49
93
  triggerId: string;
@@ -54,9 +98,29 @@ export declare class EventTriggerStore {
54
98
  cooldownMs?: number;
55
99
  maxFires: number;
56
100
  ttlMs?: number;
101
+ envelope?: (eventId: string, revision: string) => Readonly<{
102
+ canonical: string;
103
+ digest: string;
104
+ }>;
57
105
  }): WebhookAcceptance;
58
106
  hasWebhookEvent(triggerId: string, externalEventId: string): boolean;
59
107
  pending(limit?: number): TriggerOutboxEvent[];
108
+ /** Returns a bounded raw page; malformed provenance is validated by the reader. */
109
+ sourceCandidatesAfter(input: {
110
+ triggerId: string;
111
+ afterSequence: number;
112
+ throughSequence: number;
113
+ deadlineAt: number;
114
+ sourceId: string;
115
+ kind: 'file' | 'http-json' | 'webhook' | 'github-repository' | 'lark-calendar';
116
+ version: string;
117
+ configDigest: string;
118
+ automationId: string;
119
+ }, limit?: number): EventSourceCandidate[];
120
+ sourceHighWaterSequence(): number;
121
+ claimGoalSource(input: GoalSourceClaim): StoredGoalSourceClaim;
122
+ goalSourceClaim(triggerId: string): StoredGoalSourceClaim | undefined;
123
+ retireGoalSource(input: GoalSourceClaim): StoredGoalSourceClaim;
60
124
  markAttempt(id: string): void;
61
125
  markRetry(id: string, error: unknown, nextAttemptAt: number): void;
62
126
  quarantine(id: string, reason: unknown): void;
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
package/lib/store.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { createHash } from 'node:crypto';
2
+ import { externalEventDigest, parseExternalEventEnvelope } from '@dsh-enhanced/assistant-automations/external-event';
2
3
  import { EventTriggerDatabaseError, openEventTriggerDatabase } from './sqlite.js';
3
4
  export class EventTriggerStoreError extends Error {
4
5
  code;
@@ -8,15 +9,39 @@ export class EventTriggerStoreError extends Error {
8
9
  this.name = 'EventTriggerStoreError';
9
10
  }
10
11
  }
12
+ function validateEnvelope(canonical, digest, binding) {
13
+ try {
14
+ const envelope = parseExternalEventEnvelope(JSON.parse(canonical));
15
+ if (externalEventDigest(envelope) !== digest
16
+ || envelope.source.id !== `event-triggers:${binding.triggerId}`
17
+ || envelope.event.id !== binding.eventId
18
+ || envelope.event.occurredAt !== binding.occurredAt) {
19
+ throw new Error('mismatch');
20
+ }
21
+ }
22
+ catch {
23
+ throw new EventTriggerStoreError('invalid-input', 'event outbox provenance is invalid or does not bind its row');
24
+ }
25
+ }
11
26
  function event(row) {
27
+ const hasEnvelope = row.envelope_canonical !== null || row.envelope_digest !== null;
28
+ if (hasEnvelope) {
29
+ if (row.envelope_canonical === null || row.envelope_digest === null) {
30
+ throw new EventTriggerStoreError('invalid-input', 'event outbox provenance is invalid or does not bind its row');
31
+ }
32
+ validateEnvelope(row.envelope_canonical, row.envelope_digest, {
33
+ triggerId: row.trigger_id, eventId: row.event_id, occurredAt: row.occurred_at,
34
+ });
35
+ }
12
36
  return Object.freeze({
13
- id: row.id, triggerId: row.trigger_id, eventId: row.event_id, occurredAt: row.occurred_at,
37
+ id: row.id, sequence: row.sequence, triggerId: row.trigger_id, eventId: row.event_id, occurredAt: row.occurred_at,
14
38
  status: row.status, attempts: row.attempts,
15
39
  ...(row.delivered_at === null ? {} : { deliveredAt: row.delivered_at }),
16
40
  nextAttemptAt: row.next_attempt_at,
17
41
  ...(row.last_attempt_at === null ? {} : { lastAttemptAt: row.last_attempt_at }),
18
42
  ...(row.last_error === null ? {} : { lastError: row.last_error }),
19
43
  createdAt: row.created_at,
44
+ ...(hasEnvelope ? { envelope: Object.freeze({ canonical: row.envelope_canonical, digest: row.envelope_digest }) } : {}),
20
45
  });
21
46
  }
22
47
  function stableEventId(triggerId, key) {
@@ -26,6 +51,25 @@ function validTime(value, field) {
26
51
  if (!Number.isSafeInteger(value) || value < 0)
27
52
  throw new EventTriggerStoreError('invalid-input', `${field} is invalid`);
28
53
  }
54
+ const identifier = (value, max = 512) => typeof value === 'string' && value.length > 0 && value.length <= max;
55
+ const sha256 = (value) => typeof value === 'string' && /^[a-f0-9]{64}$/u.test(value);
56
+ function validClaim(value) {
57
+ if (!value || typeof value !== 'object')
58
+ return false;
59
+ const claim = value;
60
+ const scope = claim.scope;
61
+ return identifier(claim.triggerId, 200) && identifier(claim.goalId) && Number.isSafeInteger(claim.definition?.version) && claim.definition.version > 0
62
+ && sha256(claim.definition?.digest) && identifier(claim.native?.sessionId) && identifier(claim.native?.goalId)
63
+ && Number.isSafeInteger(claim.native?.revision) && claim.native.revision >= 0 && sha256(claim.configDigest)
64
+ && identifier(claim.automationId, 200) && !!scope && identifier(scope.principalId) && identifier(scope.principalRecordId)
65
+ && Number.isSafeInteger(scope.principalVersion) && scope.principalVersion > 0 && identifier(scope.workspace, 4_096) && identifier(scope.preset);
66
+ }
67
+ function sameClaim(left, right) {
68
+ const key = (value) => [value.triggerId, value.scope.principalId, value.scope.principalRecordId,
69
+ value.scope.principalVersion, value.scope.workspace, value.scope.preset, value.goalId, value.definition.version,
70
+ value.definition.digest, value.native.sessionId, value.native.goalId, value.configDigest, value.automationId];
71
+ return JSON.stringify(key(left)) === JSON.stringify(key(right)) && right.native.revision >= left.native.revision;
72
+ }
29
73
  function errorText(value) {
30
74
  try {
31
75
  const candidate = value instanceof Error ? value.message : value;
@@ -96,7 +140,7 @@ export class EventTriggerStore {
96
140
  return [];
97
141
  if (state.last_fire_at !== null && input.occurredAt < state.last_fire_at + input.cooldownMs)
98
142
  return [];
99
- const created = this.insertOutbox(input.triggerId, `edge:${state.pending_revision}`, input.occurredAt);
143
+ const created = this.insertOutbox(input.triggerId, `edge:${state.pending_revision}`, input.occurredAt, input.envelope);
100
144
  this.database.prepare(`
101
145
  UPDATE trigger_state SET pending_fingerprint = NULL, pending_since = NULL, pending_revision = NULL,
102
146
  last_fire_at = ?, fire_count = fire_count + 1 WHERE trigger_id = ?
@@ -130,7 +174,7 @@ export class EventTriggerStore {
130
174
  if (state.last_fire_at !== null && acceptedAt < state.last_fire_at + (input.cooldownMs ?? 0)) {
131
175
  return { accepted: false, reason: 'cooldown' };
132
176
  }
133
- const created = this.insertOutbox(input.triggerId, `webhook:${input.eventId}`, input.occurredAt);
177
+ const created = this.insertOutbox(input.triggerId, `webhook:${input.eventId}`, input.occurredAt, input.envelope);
134
178
  if (created === undefined)
135
179
  return { accepted: false, reason: 'replay' };
136
180
  this.database.prepare(`
@@ -150,6 +194,88 @@ export class EventTriggerStore {
150
194
  ORDER BY next_attempt_at, created_at, id LIMIT ?
151
195
  `).all(this.now(), limit).map(event);
152
196
  }
197
+ /** Returns a bounded raw page; malformed provenance is validated by the reader. */
198
+ sourceCandidatesAfter(input, limit = 100) {
199
+ validTime(input.afterSequence, 'afterSequence');
200
+ validTime(input.throughSequence, 'throughSequence');
201
+ validTime(input.deadlineAt, 'deadlineAt');
202
+ if (!Number.isSafeInteger(limit) || limit < 1 || limit > 1_000) {
203
+ throw new EventTriggerStoreError('invalid-input', 'source candidate limit is invalid');
204
+ }
205
+ const rows = this.database.prepare(`
206
+ SELECT sequence, event_id AS eventId, envelope_canonical AS canonical, envelope_digest AS digest
207
+ FROM event_outbox
208
+ WHERE trigger_id = ? AND sequence > ? AND sequence <= ?
209
+ AND envelope_canonical IS NOT NULL AND envelope_digest IS NOT NULL
210
+ AND CASE WHEN json_valid(envelope_canonical) THEN json_extract(envelope_canonical, '$.source.id') END = ?
211
+ AND CASE WHEN json_valid(envelope_canonical) THEN json_extract(envelope_canonical, '$.source.kind') END = ?
212
+ AND CASE WHEN json_valid(envelope_canonical) THEN json_extract(envelope_canonical, '$.source.version') END = ?
213
+ AND CASE WHEN json_valid(envelope_canonical) THEN json_extract(envelope_canonical, '$.source.configDigest') END = ?
214
+ AND CASE WHEN json_valid(envelope_canonical) THEN json_extract(envelope_canonical, '$.target.automationId') END = ?
215
+ AND CASE WHEN json_valid(envelope_canonical) THEN json_extract(envelope_canonical, '$.event.receivedAt') END <= ?
216
+ ORDER BY sequence LIMIT ?
217
+ `).all(input.triggerId, input.afterSequence, input.throughSequence, input.sourceId, input.kind, input.version, input.configDigest, input.automationId, input.deadlineAt, limit);
218
+ return rows;
219
+ }
220
+ sourceHighWaterSequence() {
221
+ return this.database.prepare(`
222
+ SELECT COALESCE((SELECT seq FROM sqlite_sequence WHERE name = 'event_sequence'), 0) AS sequence
223
+ `).get().sequence;
224
+ }
225
+ claimGoalSource(input) {
226
+ if (!validClaim(input))
227
+ throw new EventTriggerStoreError('invalid-input', 'event goal source claim is invalid');
228
+ return this.transaction(() => {
229
+ const prior = this.goalSourceClaim(input.triggerId);
230
+ if (prior !== undefined) {
231
+ if (!sameClaim(prior, input))
232
+ throw new EventTriggerStoreError('invalid-input', 'event goal source is already claimed by another goal');
233
+ return prior;
234
+ }
235
+ this.database.prepare(`INSERT INTO goal_source_claims(
236
+ trigger_id, scope_json, goal_id, definition_version, definition_digest, session_id, native_goal_id,
237
+ native_revision, config_digest, automation_id, retired_at
238
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NULL)`).run(input.triggerId, JSON.stringify(input.scope), input.goalId, input.definition.version, input.definition.digest, input.native.sessionId, input.native.goalId, input.native.revision, input.configDigest, input.automationId);
239
+ return this.goalSourceClaim(input.triggerId);
240
+ });
241
+ }
242
+ goalSourceClaim(triggerId) {
243
+ const row = this.database.prepare(`SELECT trigger_id, scope_json, goal_id, definition_version, definition_digest,
244
+ session_id, native_goal_id, native_revision, config_digest, automation_id, retired_at
245
+ FROM goal_source_claims WHERE trigger_id = ?`).get(triggerId);
246
+ if (!row)
247
+ return undefined;
248
+ let scope;
249
+ try {
250
+ scope = JSON.parse(row.scope_json);
251
+ }
252
+ catch {
253
+ throw new EventTriggerStoreError('invalid-schema', 'event goal source claim is malformed');
254
+ }
255
+ const value = { triggerId: row.trigger_id, scope, goalId: row.goal_id,
256
+ definition: { version: row.definition_version, digest: row.definition_digest },
257
+ native: { sessionId: row.session_id, goalId: row.native_goal_id, revision: row.native_revision },
258
+ configDigest: row.config_digest, automationId: row.automation_id,
259
+ ...(row.retired_at === null ? {} : { retiredAt: row.retired_at }) };
260
+ if (!validClaim(value) || (value.retiredAt !== undefined && (!Number.isSafeInteger(value.retiredAt) || value.retiredAt < 0))) {
261
+ throw new EventTriggerStoreError('invalid-schema', 'event goal source claim is invalid');
262
+ }
263
+ return Object.freeze(value);
264
+ }
265
+ retireGoalSource(input) {
266
+ if (!validClaim(input))
267
+ throw new EventTriggerStoreError('invalid-input', 'event goal source claim is invalid');
268
+ return this.transaction(() => {
269
+ const prior = this.goalSourceClaim(input.triggerId);
270
+ if (!prior || !sameClaim(prior, input))
271
+ throw new EventTriggerStoreError('invalid-input', 'event goal source claim does not match');
272
+ if (prior.retiredAt !== undefined)
273
+ return prior;
274
+ this.database.prepare('UPDATE goal_source_claims SET retired_at = ? WHERE trigger_id = ? AND retired_at IS NULL')
275
+ .run(this.now(), input.triggerId);
276
+ return this.goalSourceClaim(input.triggerId);
277
+ });
278
+ }
153
279
  markAttempt(id) {
154
280
  this.database.prepare(`
155
281
  UPDATE event_outbox SET attempts = attempts + 1, last_attempt_at = ?
@@ -230,15 +356,24 @@ export class EventTriggerStore {
230
356
  const row = this.database.prepare('SELECT * FROM event_outbox WHERE event_id = ?').get(eventId);
231
357
  return row === undefined ? undefined : event(row);
232
358
  }
233
- insertOutbox(triggerId, key, occurredAt) {
359
+ insertOutbox(triggerId, key, occurredAt, provenance) {
234
360
  const eventId = stableEventId(triggerId, key);
235
361
  const id = `outbox-${eventId.slice('event-'.length)}`;
362
+ const envelope = provenance?.(eventId, key);
363
+ if (envelope !== undefined) {
364
+ validateEnvelope(envelope.canonical, envelope.digest, { triggerId, eventId, occurredAt });
365
+ }
366
+ const allocation = this.database.prepare('INSERT INTO event_sequence DEFAULT VALUES').run();
367
+ const sequence = Number(allocation.lastInsertRowid);
368
+ if (!Number.isSafeInteger(sequence) || sequence < 1) {
369
+ throw new EventTriggerStoreError('invalid-input', 'event sequence allocation is invalid');
370
+ }
236
371
  const result = this.database.prepare(`
237
372
  INSERT OR IGNORE INTO event_outbox(
238
- id, trigger_id, event_id, occurred_at, status, attempts, delivered_at, created_at,
239
- next_attempt_at, last_attempt_at, last_error
240
- ) VALUES (?, ?, ?, ?, 'pending', 0, NULL, ?, ?, NULL, NULL)
241
- `).run(id, triggerId, eventId, occurredAt, this.now(), this.now());
373
+ id, sequence, trigger_id, event_id, occurred_at, status, attempts, delivered_at, created_at,
374
+ next_attempt_at, last_attempt_at, last_error, envelope_canonical, envelope_digest
375
+ ) VALUES (?, ?, ?, ?, ?, 'pending', 0, NULL, ?, ?, NULL, NULL, ?, ?)
376
+ `).run(id, sequence, triggerId, eventId, occurredAt, this.now(), this.now(), envelope?.canonical ?? null, envelope?.digest ?? null);
242
377
  if (result.changes === 0)
243
378
  return undefined;
244
379
  return this.byEventId(eventId);
package/lib/store.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAIjF,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC1B;IAArB,YAAqB,IAAgC,EAAE,OAAe;QACpE,KAAK,CAAC,OAAO,CAAC,CAAA;QADK,SAAI,GAAJ,IAAI,CAA4B;QAEnD,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAA;IACtC,CAAC;CACF;AAgDD,SAAS,KAAK,CAAC,GAAc;IAC3B,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,CAAC,WAAW;QACzF,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ;QAC1C,GAAG,CAAC,GAAG,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC;QACvE,aAAa,EAAE,GAAG,CAAC,eAAe;QAClC,GAAG,CAAC,GAAG,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC;QAC/E,GAAG,CAAC,GAAG,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;QACjE,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,SAAiB,EAAE,GAAW;IACnD,OAAO,SAAS,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,KAAK,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;AACrF,CAAC;AAED,SAAS,SAAS,CAAC,KAAa,EAAE,KAAa;IAC7C,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;QAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,GAAG,KAAK,aAAa,CAAC,CAAA;AACzH,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,CAAC;QACH,MAAM,SAAS,GAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;QACzE,MAAM,IAAI,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAA;QAC1E,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YAC3E,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;YAC3C,OAAO,SAAS,IAAI,IAAI,IAAI,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;QAClE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACX,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,iBAAiB,CAAA;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,iBAAiB,CAAA;IAC1B,CAAC;AACH,CAAC;AAED,MAAM,OAAO,iBAAiB;IACX,QAAQ,CAAc;IACtB,GAAG,CAAc;IAC1B,MAAM,GAAG,KAAK,CAAA;IAEtB,YAAY,OAA6C;QACvD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;QAClC,IAAI,CAAC;YAAC,IAAI,CAAC,QAAQ,GAAG,wBAAwB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAAC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAC5E,IAAI,KAAK,YAAY,yBAAyB;gBAAE,MAAM,IAAI,sBAAsB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;YAC3G,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,KAAW,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;IAAC,CAAC,CAAC,CAAC;IAEjF,OAAO,CAAC,KAUP;QACC,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;QACzC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;YAC3B,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;;;SAKrB,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACpG,OAAO,EAAE,CAAA;YACX,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC;mBACvF,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,QAAQ;gBAAE,OAAO,EAAE,CAAA;YAClD,IAAI,KAAK,CAAC,gBAAgB,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;gBACjD,MAAM,QAAQ,GAAG,KAAK,CAAC,aAAa,GAAG,CAAC,CAAA;gBACxC,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,WAAW,KAAK,CAAC,CAAC,CAAA;gBAC3F,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;;;SAKrB,CAAC,CAAC,GAAG,CACJ,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EACnE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EACtG,KAAK,CAAC,SAAS,CAChB,CAAA;gBACD,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAE,CAAA;YACtC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,oEAAoE,CAAC;qBACxF,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;YAC3C,CAAC;YACD,IAAI,KAAK,CAAC,gBAAgB,KAAK,IAAI,IAAI,KAAK,CAAC,aAAa,KAAK,IAAI;gBAAE,OAAO,EAAE,CAAA;YAC9E,IAAI,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,UAAU;gBAAE,OAAO,EAAE,CAAA;YACxE,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI,IAAI,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,UAAU;gBAAE,OAAO,EAAE,CAAA;YACtG,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,KAAK,CAAC,gBAAgB,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;YACtG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;OAGrB,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;YACzC,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,aAAa,CAAC,KASb;QACC,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;QACzC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAA;QACvD,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;QACnC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;YAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;YACxF,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;YACnF,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;;;SAKrB,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,CAAA;gBAC/C,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAE,CAAA;YACtC,CAAC;YACD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,UAAU,IAAI,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;gBACrF,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;YAC3C,CAAC;YACD,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,QAAQ;gBAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;YACnF,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI,IAAI,UAAU,GAAG,KAAK,CAAC,YAAY,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC7F,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;YAChD,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;YAChG,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;YACvE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;OAGrB,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;YAC/C,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAA;QAC3C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,eAAe,CAAC,SAAiB,EAAE,eAAuB;QACxD,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,eAAe,EAAE,CAAC,CAAC,KAAK,SAAS,CAAA;IAC7F,CAAC;IAED,OAAO,CAAC,KAAK,GAAG,KAAK;QACnB,OAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;;KAI7B,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,CAA4B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACjE,CAAC;IAED,WAAW,CAAC,EAAU;QACpB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;KAGrB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;IACxB,CAAC;IAED,SAAS,CAAC,EAAU,EAAE,KAAc,EAAE,aAAqB;QACzD,SAAS,CAAC,aAAa,EAAE,eAAe,CAAC,CAAA;QACzC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;KAGrB,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;IAC7C,CAAC;IAED,UAAU,CAAC,EAAU,EAAE,MAAe;QACpC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;;KAIrB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAA;IAC3C,CAAC;IAED,aAAa,CAAC,EAAU;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;;KAIrB,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC,GAAG,CAAC,EAAE,CAA0B,CAAA;QAC7G,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,IAAI,sBAAsB,CAAC,eAAe,EAAE,gCAAgC,CAAC,CAAA;QAC1G,OAAO,KAAK,CAAC,GAAG,CAAC,CAAA;IACnB,CAAC;IAED,kBAAkB,CAAC,SAAiB,EAAE,KAAc,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE;QACzE,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;QAC/B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;;;;;KAOrB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAA;IAC/C,CAAC;IAED,kBAAkB,CAAC,SAAiB,EAAE,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE;QAC5D,SAAS,CAAC,WAAW,EAAE,aAAa,CAAC,CAAA;QACrC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;;;KAKrB,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;IAChC,CAAC;IAED,MAAM;QAUJ,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,EAAE,CAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAwB,CAAC,KAAK,CAAA;QAC5F,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;KAGzC,CAAC,CAAC,GAAG,EAAwC,CAAA;QAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;KAG1C,CAAC,CAAC,GAAG,EAAwC,CAAA;QAC9C,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,aAAa,EAAE,KAAK,CAAC,qEAAqE,CAAC;YAC3F,cAAc,EAAE,KAAK,CAAC,sFAAsF,CAAC;YAC7G,iBAAiB,EAAE,KAAK,CAAC,yEAAyE,CAAC;YACnG,eAAe,EAAE,KAAK,CAAC,uEAAuE,CAAC;YAC/F,gBAAgB,EAAE,KAAK,CAAC,6CAA6C,CAAC;YACtE,eAAe,EAAE,KAAK,CAAC,6EAA6E,CAAC;YACrG,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC;YACjF,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC;SACrF,CAAC,CAAA;IACJ,CAAC;IAEO,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC,GAAG,CAAC,EAAE,CAAyB,CAAA;IAClH,CAAC;IAEO,SAAS,CAAC,OAAe;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC,GAAG,CAAC,OAAO,CAA0B,CAAA;QACxH,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACnD,CAAC;IAEO,YAAY,CAAC,SAAiB,EAAE,GAAW,EAAE,UAAkB;QACrE,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;QAC7C,MAAM,EAAE,GAAG,UAAU,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAA;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;;;;;KAKpC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;QAClE,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC;YAAE,OAAO,SAAS,CAAA;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;IAChC,CAAC;IAEO,WAAW,CAAI,SAAkB;QACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QACrC,IAAI,CAAC;YAAC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAAC,OAAO,MAAM,CAAA;QAAC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAC7F,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAAC,MAAM,KAAK,CAAA;QAC7C,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
package/lib/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "0.1.24";
1
+ export declare const version = "0.1.31";
2
2
  //# sourceMappingURL=version.d.ts.map
package/lib/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '0.1.24';
1
+ export const version = '0.1.31';
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dsh-enhanced/event-triggers",
3
- "version": "0.1.24",
3
+ "version": "0.1.31",
4
4
  "description": "Durable bounded file, HTTP/JSON, and HMAC webhook triggers for DSH automations.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -42,13 +42,15 @@
42
42
  }
43
43
  },
44
44
  "dependencies": {
45
- "@deepseek-ai/schemastery": "3.18.1"
45
+ "@deepseek-ai/schemastery": "3.18.2"
46
46
  },
47
47
  "peerDependencies": {
48
48
  "@deepseek-ai/cordis": "^4.0.1",
49
- "@dsh-enhanced/assistant-automations": ">=0.1.0 <0.2.0",
49
+ "@dsh-enhanced/assistant-automations": ">=0.1.24 <0.2.0",
50
50
  "@dsh-enhanced/assistant-policy": ">=0.1.0 <0.2.0",
51
- "@dsh-enhanced/credentials-keychain": ">=0.1.0 <0.2.0"
51
+ "@dsh-enhanced/credentials-keychain": ">=0.1.0 <0.2.0",
52
+ "@dsh-enhanced/assistant-delivery": ">=0.1.24 <0.2.0",
53
+ "@dsh-enhanced/lark-channel": ">=0.1.24 <0.2.0"
52
54
  },
53
55
  "peerDependenciesMeta": {
54
56
  "@deepseek-ai/cordis": {
@@ -62,16 +64,24 @@
62
64
  },
63
65
  "@dsh-enhanced/credentials-keychain": {
64
66
  "optional": true
67
+ },
68
+ "@dsh-enhanced/assistant-delivery": {
69
+ "optional": true
70
+ },
71
+ "@dsh-enhanced/lark-channel": {
72
+ "optional": true
65
73
  }
66
74
  },
67
75
  "devDependencies": {
68
- "@deepseek-ai/cordis": "4.0.1",
76
+ "@deepseek-ai/cordis": "4.0.2",
69
77
  "@types/node": "22.20.0",
70
78
  "typescript": "6.0.3",
71
79
  "vitest": "4.1.8",
72
- "@dsh-enhanced/assistant-automations": "0.1.24",
73
- "@dsh-enhanced/credentials-keychain": "0.1.24",
74
- "@dsh-enhanced/assistant-policy": "0.1.24"
80
+ "@dsh-enhanced/assistant-policy": "0.1.31",
81
+ "@dsh-enhanced/assistant-automations": "0.1.31",
82
+ "@dsh-enhanced/credentials-keychain": "0.1.31",
83
+ "@dsh-enhanced/assistant-delivery": "0.1.31",
84
+ "@dsh-enhanced/lark-channel": "0.1.31"
75
85
  },
76
86
  "scripts": {
77
87
  "build": "tsc -p tsconfig.build.json",