@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.
- package/README.md +49 -4
- package/lib/config.d.ts +43 -4
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js +42 -0
- package/lib/config.js.map +1 -1
- package/lib/github-sensor.d.ts +17 -0
- package/lib/github-sensor.d.ts.map +1 -0
- package/lib/github-sensor.js +87 -0
- package/lib/github-sensor.js.map +1 -0
- package/lib/index.d.ts +9 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +15 -3
- package/lib/index.js.map +1 -1
- package/lib/lark-calendar-sensor.d.ts +29 -0
- package/lib/lark-calendar-sensor.d.ts.map +1 -0
- package/lib/lark-calendar-sensor.js +99 -0
- package/lib/lark-calendar-sensor.js.map +1 -0
- package/lib/observer.d.ts +63 -0
- package/lib/observer.d.ts.map +1 -0
- package/lib/observer.js +350 -0
- package/lib/observer.js.map +1 -0
- package/lib/sensors.d.ts +14 -0
- package/lib/sensors.d.ts.map +1 -1
- package/lib/sensors.js +19 -21
- package/lib/sensors.js.map +1 -1
- package/lib/service.d.ts +38 -2
- package/lib/service.d.ts.map +1 -1
- package/lib/service.js +338 -40
- package/lib/service.js.map +1 -1
- package/lib/source.d.ts +24 -0
- package/lib/source.d.ts.map +1 -0
- package/lib/source.js +2 -0
- package/lib/source.js.map +1 -0
- package/lib/sqlite.d.ts +2 -2
- package/lib/sqlite.d.ts.map +1 -1
- package/lib/sqlite.js +106 -4
- package/lib/sqlite.js.map +1 -1
- package/lib/store.d.ts +65 -1
- package/lib/store.d.ts.map +1 -1
- package/lib/store.js +143 -8
- package/lib/store.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +18 -8
|
@@ -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
|
package/lib/sqlite.d.ts.map
CHANGED
|
@@ -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;
|
|
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 >
|
|
51
|
+
if (version > 5)
|
|
17
52
|
throw new EventTriggerDatabaseError('schema-too-new', `event trigger schema ${version} is too new`);
|
|
18
|
-
if (version ===
|
|
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
|
-
|
|
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,
|
|
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;
|
package/lib/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"
|
|
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":"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"}
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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-
|
|
73
|
-
"@dsh-enhanced/
|
|
74
|
-
"@dsh-enhanced/
|
|
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",
|