@dsh-enhanced/assistant-policy 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +136 -0
  3. package/cordis.patch.yml +13 -0
  4. package/lib/approval-reviewer.d.ts +39 -0
  5. package/lib/approval-reviewer.d.ts.map +1 -0
  6. package/lib/approval-reviewer.js +119 -0
  7. package/lib/approval-reviewer.js.map +1 -0
  8. package/lib/auto-review.d.ts +22 -0
  9. package/lib/auto-review.d.ts.map +1 -0
  10. package/lib/auto-review.js +442 -0
  11. package/lib/auto-review.js.map +1 -0
  12. package/lib/evaluator.d.ts +4 -0
  13. package/lib/evaluator.d.ts.map +1 -0
  14. package/lib/evaluator.js +127 -0
  15. package/lib/evaluator.js.map +1 -0
  16. package/lib/index.d.ts +20 -0
  17. package/lib/index.d.ts.map +1 -0
  18. package/lib/index.js +16 -0
  19. package/lib/index.js.map +1 -0
  20. package/lib/ledger.d.ts +253 -0
  21. package/lib/ledger.d.ts.map +1 -0
  22. package/lib/ledger.js +891 -0
  23. package/lib/ledger.js.map +1 -0
  24. package/lib/redaction.d.ts +2 -0
  25. package/lib/redaction.d.ts.map +1 -0
  26. package/lib/redaction.js +21 -0
  27. package/lib/redaction.js.map +1 -0
  28. package/lib/service.d.ts +124 -0
  29. package/lib/service.d.ts.map +1 -0
  30. package/lib/service.js +773 -0
  31. package/lib/service.js.map +1 -0
  32. package/lib/session-event-registration.d.ts +23 -0
  33. package/lib/session-event-registration.d.ts.map +1 -0
  34. package/lib/session-event-registration.js +384 -0
  35. package/lib/session-event-registration.js.map +1 -0
  36. package/lib/settlement.d.ts +30 -0
  37. package/lib/settlement.d.ts.map +1 -0
  38. package/lib/settlement.js +54 -0
  39. package/lib/settlement.js.map +1 -0
  40. package/lib/sqlite.d.ts +9 -0
  41. package/lib/sqlite.d.ts.map +1 -0
  42. package/lib/sqlite.js +276 -0
  43. package/lib/sqlite.js.map +1 -0
  44. package/lib/tool-risk.d.ts +10 -0
  45. package/lib/tool-risk.d.ts.map +1 -0
  46. package/lib/tool-risk.js +321 -0
  47. package/lib/tool-risk.js.map +1 -0
  48. package/lib/types.d.ts +73 -0
  49. package/lib/types.d.ts.map +1 -0
  50. package/lib/types.js +2 -0
  51. package/lib/types.js.map +1 -0
  52. package/lib/version.d.ts +2 -0
  53. package/lib/version.d.ts.map +1 -0
  54. package/lib/version.js +2 -0
  55. package/lib/version.js.map +1 -0
  56. package/package.json +98 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ import { type Session } from '@deepseek-ai/dsh-session';
3
+ export interface ApprovalReviewerSessionEventRegistration {
4
+ /** Whether this registration proved the reader currently live in its Context. */
5
+ isReady(): boolean;
6
+ /** Join late provision/HMR and reject unless the resulting live reader is proven. */
7
+ assertReady(): Promise<void>;
8
+ }
9
+ /** Fail synchronously before a managed Session appends this required custom event. */
10
+ export declare function assertApprovalReviewerSessionEventReady(session: Session): void;
11
+ /** Async seam for Delivery and other durable writers that can wait for late provision/HMR. */
12
+ export declare function waitForApprovalReviewerSessionEventReady(session: Session): Promise<void>;
13
+ /**
14
+ * Register the required reviewer event for the process lifetime.
15
+ *
16
+ * rc.8 persistence can drain after downstream plugin effects dispose, and
17
+ * hot-reloaded module copies cannot safely coordinate ownership of this global
18
+ * catalog. Removing the type would therefore make a valid durable tail (or an
19
+ * already stored session) unreadable. The catalog is metadata only, so the
20
+ * safe compatibility behavior is a monotonic add until process exit.
21
+ */
22
+ export declare function registerApprovalReviewerSessionEvent(ctx: Context): ApprovalReviewerSessionEventRegistration;
23
+ //# sourceMappingURL=session-event-registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-event-registration.d.ts","sourceRoot":"","sources":["../src/session-event-registration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAqD,KAAK,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAkD1G,MAAM,WAAW,wCAAwC;IACvD,iFAAiF;IACjF,OAAO,IAAI,OAAO,CAAA;IAClB,qFAAqF;IACrF,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CAC7B;AAoBD,sFAAsF;AACtF,wBAAgB,uCAAuC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAM9E;AAED,8FAA8F;AAC9F,wBAAsB,wCAAwC,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ9F;AA0UD;;;;;;;;GAQG;AACH,wBAAgB,oCAAoC,CAClD,GAAG,EAAE,OAAO,GACX,wCAAwC,CAwE1C"}
@@ -0,0 +1,384 @@
1
+ import { KNOWN_SESSION_EVENT_TYPES, SESSION_FORMAT_VERSION } from '@deepseek-ai/dsh-session';
2
+ import { randomUUID } from 'node:crypto';
3
+ import { realpathSync } from 'node:fs';
4
+ import { createRequire } from 'node:module';
5
+ /**
6
+ * rc.8 exposes its generated known-event catalog as a ReadonlySet and defers a
7
+ * downstream registration API. Persistence nevertheless consults the same
8
+ * object for both new batches and cold reads, so a narrowly scoped runtime
9
+ * registration is the only compatible way to make this required plugin event
10
+ * durable until DSH ships that public surface.
11
+ */
12
+ const APPROVAL_REVIEWER_EVENT_TYPE = 'assistant-policy/approval-reviewer';
13
+ const READER_PROBE_EVENT_PREFIX = 'assistant-policy/__reader-probe/';
14
+ const SHIMMED_SESSION_FORMAT_VERSION = 0;
15
+ const SESSION_REGISTRATIONS_GLOBAL_KEY = '__dshEnhancedApprovalReviewerSessionRegistrationsV1__';
16
+ function sessionRegistrations() {
17
+ const shared = globalThis;
18
+ const current = shared[SESSION_REGISTRATIONS_GLOBAL_KEY];
19
+ if (current !== undefined)
20
+ return current;
21
+ const created = new WeakMap();
22
+ Object.defineProperty(shared, SESSION_REGISTRATIONS_GLOBAL_KEY, {
23
+ configurable: false,
24
+ enumerable: false,
25
+ writable: false,
26
+ value: created,
27
+ });
28
+ return created;
29
+ }
30
+ /** Fail synchronously before a managed Session appends this required custom event. */
31
+ export function assertApprovalReviewerSessionEventReady(session) {
32
+ const registration = sessionRegistrations().get(session);
33
+ if (registration === undefined || registration.isReady())
34
+ return;
35
+ throw new Error('assistant-policy: session persistence reader is not proven for the required reviewer event');
36
+ }
37
+ /** Async seam for Delivery and other durable writers that can wait for late provision/HMR. */
38
+ export async function waitForApprovalReviewerSessionEventReady(session) {
39
+ const registration = sessionRegistrations().get(session);
40
+ if (registration === undefined) {
41
+ throw new Error('assistant-policy: session is not registered with a persistence reader readiness barrier');
42
+ }
43
+ await registration.assertReady();
44
+ }
45
+ function record(value) {
46
+ return typeof value === 'object' && value !== null
47
+ ? value
48
+ : undefined;
49
+ }
50
+ function nested(value, ...keys) {
51
+ let current = value;
52
+ for (const key of keys) {
53
+ const currentRecord = record(current);
54
+ if (currentRecord === undefined)
55
+ return undefined;
56
+ current = currentRecord[key];
57
+ }
58
+ return current;
59
+ }
60
+ function errorMessage(error) {
61
+ if (error instanceof Error)
62
+ return `${error.name}: ${error.message}`;
63
+ return String(error);
64
+ }
65
+ function loadSessionCandidate(label, ownerRequire) {
66
+ let sessionEntrypoint;
67
+ try {
68
+ sessionEntrypoint = ownerRequire.resolve('@deepseek-ai/dsh-session');
69
+ }
70
+ catch (error) {
71
+ throw new Error(`cannot resolve @deepseek-ai/dsh-session for ${label}`, { cause: error });
72
+ }
73
+ let sessionModule;
74
+ try {
75
+ // Supported DSH runtimes (Node ^22.19 or >=24) synchronously require this
76
+ // ESM package because it has no top-level await. Registration must finish
77
+ // before another plugin can append or cold-read the required event.
78
+ sessionModule = ownerRequire(sessionEntrypoint);
79
+ }
80
+ catch (error) {
81
+ throw new Error(`cannot synchronously load @deepseek-ai/dsh-session at ${JSON.stringify(sessionEntrypoint)} `
82
+ + `for ${label}`, { cause: error });
83
+ }
84
+ if (record(sessionModule) === undefined) {
85
+ throw new Error(`@deepseek-ai/dsh-session at ${JSON.stringify(sessionEntrypoint)} for ${label} `
86
+ + 'has an incompatible module shape');
87
+ }
88
+ return {
89
+ label: `${label} (${sessionEntrypoint})`,
90
+ module: sessionModule,
91
+ };
92
+ }
93
+ function loaderReaderCandidate(persistence) {
94
+ // cordis-plugin-loader binds the service context to the Entry that imported
95
+ // its backend. Resolving from that same entry reproduces the dependency graph
96
+ // used by PersistenceCoordinator, including a backend-private session copy.
97
+ const entry = nested(persistence.ctx, 'fiber', 'entry');
98
+ const backendName = nested(entry, 'options', 'name');
99
+ const baseUrl = nested(entry, 'parent', 'tree', 'ctx', 'baseUrl');
100
+ if (typeof backendName !== 'string' || backendName === '') {
101
+ throw new Error('live sessionPersistence has no Cordis loader entry name');
102
+ }
103
+ if (typeof baseUrl !== 'string' || baseUrl === '') {
104
+ throw new Error('live sessionPersistence loader entry has no profile baseUrl');
105
+ }
106
+ let profileRequire;
107
+ try {
108
+ profileRequire = createRequire(new URL('.assistant-policy-reader.cjs', baseUrl));
109
+ }
110
+ catch (error) {
111
+ throw new Error(`live sessionPersistence loader baseUrl ${JSON.stringify(baseUrl)} is invalid`, { cause: error });
112
+ }
113
+ let backendEntrypoint;
114
+ try {
115
+ backendEntrypoint = profileRequire.resolve(backendName);
116
+ }
117
+ catch (error) {
118
+ throw new Error(`cannot resolve live sessionPersistence backend ${JSON.stringify(backendName)} `
119
+ + `from ${JSON.stringify(baseUrl)}`, { cause: error });
120
+ }
121
+ const backendRequire = createRequire(backendEntrypoint);
122
+ let coordinatorEntrypoint;
123
+ try {
124
+ // The JSONL service owns a PersistenceCoordinator imported from this
125
+ // package. Its closure, not the outer backend, captures the authoritative
126
+ // KNOWN_SESSION_EVENT_TYPES object.
127
+ coordinatorEntrypoint = backendRequire.resolve('@deepseek-ai/dsh-session-persistence');
128
+ }
129
+ catch (error) {
130
+ throw new Error(`cannot resolve the PersistenceCoordinator consumed by live backend `
131
+ + `${JSON.stringify(backendName)}`, { cause: error });
132
+ }
133
+ return loadSessionCandidate(`PersistenceCoordinator consumed by live backend ${JSON.stringify(backendName)}`, createRequire(coordinatorEntrypoint));
134
+ }
135
+ function launcherCandidate() {
136
+ const argvEntrypoint = process.argv[1];
137
+ if (argvEntrypoint === undefined || argvEntrypoint === '') {
138
+ throw new Error('process.argv[1] is unavailable');
139
+ }
140
+ let launcherEntrypoint;
141
+ try {
142
+ // npm/pnpm commonly expose their bin as a symlink outside the package.
143
+ // Resolve it before asking Node for the launcher's dependency graph.
144
+ launcherEntrypoint = realpathSync(argvEntrypoint);
145
+ }
146
+ catch (error) {
147
+ throw new Error(`launcher entrypoint ${JSON.stringify(argvEntrypoint)} cannot be inspected`, { cause: error });
148
+ }
149
+ return loadSessionCandidate('launcher @deepseek-ai/dsh-session', createRequire(launcherEntrypoint));
150
+ }
151
+ function validateRegistry(candidate) {
152
+ const formatVersion = candidate.module.SESSION_FORMAT_VERSION;
153
+ if (formatVersion !== SHIMMED_SESSION_FORMAT_VERSION) {
154
+ throw new Error(`${candidate.label} uses unsupported session format v${String(formatVersion)}`);
155
+ }
156
+ const registry = candidate.module.KNOWN_SESSION_EVENT_TYPES;
157
+ if (!(registry instanceof Set)
158
+ || typeof registry.add !== 'function'
159
+ || typeof registry.delete !== 'function') {
160
+ throw new Error(`${candidate.label} does not expose the mutable rc.8 session event catalog`);
161
+ }
162
+ return { label: candidate.label, registry: registry };
163
+ }
164
+ function supportOracle(persistence) {
165
+ const coordinator = record(persistence.coordinator);
166
+ if (coordinator === undefined
167
+ || typeof coordinator.assertEventsSupported !== 'function') {
168
+ throw new Error('assistant-policy: live sessionPersistence does not expose the rc.8 '
169
+ + 'PersistenceCoordinator event-support oracle; refusing unproven registration');
170
+ }
171
+ return coordinator;
172
+ }
173
+ function probeMeta() {
174
+ return {
175
+ version: SHIMMED_SESSION_FORMAT_VERSION,
176
+ id: `assistant-policy-reader-probe-${randomUUID()}`,
177
+ createdAt: 0,
178
+ cwd: '/',
179
+ delegationDepth: 0,
180
+ };
181
+ }
182
+ function probeEvent(type) {
183
+ return { type, seq: 0, time: 0, data: {} };
184
+ }
185
+ function assertRejectedUnknown(oracle, meta, type, stage) {
186
+ let rejection;
187
+ try {
188
+ oracle.assertEventsSupported(meta, [probeEvent(type)]);
189
+ }
190
+ catch (error) {
191
+ rejection = error;
192
+ }
193
+ if (rejection === undefined) {
194
+ throw new Error(`assistant-policy: PersistenceCoordinator accepted unregistered ${stage} event `
195
+ + `${JSON.stringify(type)}; its reader registry identity cannot be proven`);
196
+ }
197
+ if (!errorMessage(rejection).includes(type)) {
198
+ throw new Error(`assistant-policy: PersistenceCoordinator rejected the ${stage} probe for an unrelated `
199
+ + `reason (${errorMessage(rejection)}); its reader registry identity cannot be proven`, { cause: rejection });
200
+ }
201
+ }
202
+ function proveReaderRegistry(oracle, candidates, diagnostics) {
203
+ const registries = new Map();
204
+ for (const candidate of candidates) {
205
+ if (!registries.has(candidate.registry))
206
+ registries.set(candidate.registry, candidate);
207
+ }
208
+ let probeType;
209
+ do {
210
+ probeType = `${READER_PROBE_EVENT_PREFIX}${randomUUID()}`;
211
+ } while ([...registries.keys()].some(registry => registry.has(probeType)));
212
+ const meta = probeMeta();
213
+ assertRejectedUnknown(oracle, meta, probeType, 'baseline');
214
+ const proven = [];
215
+ for (const candidate of registries.values()) {
216
+ candidate.registry.add(probeType);
217
+ try {
218
+ oracle.assertEventsSupported(meta, [probeEvent(probeType)]);
219
+ proven.push(candidate);
220
+ }
221
+ catch (error) {
222
+ if (!errorMessage(error).includes(probeType)) {
223
+ throw new Error(`assistant-policy: PersistenceCoordinator probe through ${candidate.label} failed `
224
+ + `for an unrelated reason (${errorMessage(error)}); refusing unproven registration`, { cause: error });
225
+ }
226
+ }
227
+ finally {
228
+ candidate.registry.delete(probeType);
229
+ }
230
+ if (candidate.registry.has(probeType)) {
231
+ throw new Error(`assistant-policy: ${candidate.label} retained the temporary reader probe `
232
+ + `${JSON.stringify(probeType)}; refusing registration`);
233
+ }
234
+ }
235
+ const [reader] = proven;
236
+ if (proven.length !== 1 || reader === undefined) {
237
+ const detail = diagnostics.length === 0 ? 'none' : diagnostics.join('; ');
238
+ throw new Error(`assistant-policy: cannot prove exactly one live PersistenceCoordinator reader registry `
239
+ + `(proved ${proven.length}; candidate diagnostics: ${detail}); refusing registration `
240
+ + `of required event ${JSON.stringify(APPROVAL_REVIEWER_EVENT_TYPE)}`);
241
+ }
242
+ return reader;
243
+ }
244
+ function writerRegistry() {
245
+ return validateRegistry({
246
+ label: 'plugin-local @deepseek-ai/dsh-session',
247
+ module: { KNOWN_SESSION_EVENT_TYPES, SESSION_FORMAT_VERSION },
248
+ });
249
+ }
250
+ function installRequiredEvent(registries, oracle) {
251
+ const unique = new Map();
252
+ for (const candidate of registries)
253
+ unique.set(candidate.registry, candidate);
254
+ const added = [];
255
+ try {
256
+ for (const candidate of unique.values()) {
257
+ if (!candidate.registry.has(APPROVAL_REVIEWER_EVENT_TYPE)) {
258
+ candidate.registry.add(APPROVAL_REVIEWER_EVENT_TYPE);
259
+ added.push(candidate.registry);
260
+ }
261
+ if (!candidate.registry.has(APPROVAL_REVIEWER_EVENT_TYPE)) {
262
+ throw new Error(`assistant-policy: ${candidate.label} did not retain required session event `
263
+ + `${JSON.stringify(APPROVAL_REVIEWER_EVENT_TYPE)}`);
264
+ }
265
+ }
266
+ oracle?.assertEventsSupported(probeMeta(), [probeEvent(APPROVAL_REVIEWER_EVENT_TYPE)]);
267
+ }
268
+ catch (error) {
269
+ for (const registry of added)
270
+ registry.delete(APPROVAL_REVIEWER_EVENT_TYPE);
271
+ throw new Error(`assistant-policy: required session event registration failed for `
272
+ + `${JSON.stringify(APPROVAL_REVIEWER_EVENT_TYPE)}`, { cause: error });
273
+ }
274
+ }
275
+ function installApprovalReviewerEventType(persistence) {
276
+ const oracle = supportOracle(persistence);
277
+ const writer = writerRegistry();
278
+ const candidates = [];
279
+ const diagnostics = [];
280
+ for (const resolveCandidate of [
281
+ () => loaderReaderCandidate(persistence),
282
+ launcherCandidate,
283
+ ]) {
284
+ try {
285
+ candidates.push(resolveCandidate());
286
+ }
287
+ catch (error) {
288
+ diagnostics.push(errorMessage(error));
289
+ }
290
+ }
291
+ const registries = [writer];
292
+ for (const candidate of candidates) {
293
+ try {
294
+ registries.push(validateRegistry(candidate));
295
+ }
296
+ catch (error) {
297
+ diagnostics.push(errorMessage(error));
298
+ }
299
+ }
300
+ const reader = proveReaderRegistry(oracle, registries, diagnostics);
301
+ installRequiredEvent([writer, reader], oracle);
302
+ }
303
+ /**
304
+ * Register the required reviewer event for the process lifetime.
305
+ *
306
+ * rc.8 persistence can drain after downstream plugin effects dispose, and
307
+ * hot-reloaded module copies cannot safely coordinate ownership of this global
308
+ * catalog. Removing the type would therefore make a valid durable tail (or an
309
+ * already stored session) unreadable. The catalog is metadata only, so the
310
+ * safe compatibility behavior is a monotonic add until process exit.
311
+ */
312
+ export function registerApprovalReviewerSessionEvent(ctx) {
313
+ let active = true;
314
+ let provenOracle;
315
+ const installLiveReader = (persistence) => {
316
+ // Invalidate the prior proof before touching a replacement. A hot reload
317
+ // may reuse the same coordinator object while swapping the reader hidden
318
+ // behind it; if the new proof fails, object identity alone must not leave
319
+ // the old proof looking current.
320
+ provenOracle = undefined;
321
+ installApprovalReviewerEventType(persistence);
322
+ provenOracle = supportOracle(persistence);
323
+ };
324
+ const persistence = ctx.get('sessionPersistence');
325
+ // Keep the writer catalog usable for programmatic/no-persistence contexts.
326
+ // A live reader is always proved separately below before it can become the
327
+ // active durable backend.
328
+ if (persistence === undefined)
329
+ installRequiredEvent([writerRegistry()]);
330
+ else
331
+ installLiveReader(persistence);
332
+ const injection = ctx.inject(['sessionPersistence'], persistenceCtx => {
333
+ const live = persistenceCtx.get('sessionPersistence');
334
+ if (live === undefined) {
335
+ throw new Error('assistant-policy: injected sessionPersistence is unavailable');
336
+ }
337
+ installLiveReader(live);
338
+ const activationOracle = provenOracle;
339
+ return () => {
340
+ if (provenOracle === activationOracle)
341
+ provenOracle = undefined;
342
+ };
343
+ });
344
+ const registration = {
345
+ isReady() {
346
+ if (!active)
347
+ return false;
348
+ const live = ctx.get('sessionPersistence');
349
+ if (live === undefined)
350
+ return false;
351
+ try {
352
+ return provenOracle === supportOracle(live);
353
+ }
354
+ catch {
355
+ return false;
356
+ }
357
+ },
358
+ async assertReady() {
359
+ if (ctx.get('sessionPersistence') === undefined) {
360
+ throw new Error('assistant-policy: sessionPersistence is unavailable; refusing to append a required reviewer event');
361
+ }
362
+ // Late provision and HMR activation are asynchronous in Cordis. Joining
363
+ // the exact injected Fiber prevents an append from overtaking its reader
364
+ // proof, while a failed proof is rethrown to the fail-closed caller.
365
+ await injection.await();
366
+ if (!registration.isReady()) {
367
+ throw new Error('assistant-policy: live sessionPersistence reader is not proven for the required reviewer event');
368
+ }
369
+ },
370
+ };
371
+ const registrations = sessionRegistrations();
372
+ const bindSession = (session) => {
373
+ registrations.set(session, registration);
374
+ };
375
+ const sessions = ctx.get('sessions');
376
+ for (const session of sessions?.list() ?? [])
377
+ bindSession(session);
378
+ ctx.on('session/created', bindSession);
379
+ ctx.effect(() => () => {
380
+ active = false;
381
+ }, 'assistant-policy.session-event-readiness');
382
+ return registration;
383
+ }
384
+ //# sourceMappingURL=session-event-registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-event-registration.js","sourceRoot":"","sources":["../src/session-event-registration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import type { ApprovalProposalSnapshot } from './ledger.js';
2
+ export interface ApprovalSettlementExpectation {
3
+ proposalId: string;
4
+ requester: string;
5
+ principal: string;
6
+ action: string;
7
+ resource: Readonly<{
8
+ kind: string;
9
+ id: string;
10
+ }>;
11
+ summary: string;
12
+ diff: string;
13
+ expiresAt: number;
14
+ expectedVersion: number;
15
+ }
16
+ export type ApprovalSettlementConflictReason = 'action-mismatch' | 'decision-actor-mismatch' | 'diff-mismatch' | 'expiry-mismatch' | 'invalid-expectation' | 'missing-proposal' | 'not-terminal' | 'principal-mismatch' | 'proposal-id-mismatch' | 'requester-mismatch' | 'resource-mismatch' | 'summary-mismatch' | 'version-mismatch';
17
+ export type ValidatedApprovalSettlement = ApprovalProposalSnapshot & {
18
+ status: 'approved' | 'expired' | 'rejected';
19
+ };
20
+ export declare class ApprovalSettlementConflict extends Error {
21
+ readonly reason: ApprovalSettlementConflictReason;
22
+ readonly code: "approval-settlement-conflict";
23
+ constructor(reason: ApprovalSettlementConflictReason);
24
+ }
25
+ /**
26
+ * Validate a terminal Policy snapshot against the immutable operation owned by
27
+ * a domain before that domain commits its pending mutation.
28
+ */
29
+ export declare function validateApprovalSettlement(snapshot: ApprovalProposalSnapshot | undefined, expectation: Readonly<ApprovalSettlementExpectation>): ValidatedApprovalSettlement;
30
+ //# sourceMappingURL=settlement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settlement.d.ts","sourceRoot":"","sources":["../src/settlement.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAE3D,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,QAAQ,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAChD,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,MAAM,gCAAgC,GACxC,iBAAiB,GACjB,yBAAyB,GACzB,eAAe,GACf,iBAAiB,GACjB,qBAAqB,GACrB,kBAAkB,GAClB,cAAc,GACd,oBAAoB,GACpB,sBAAsB,GACtB,oBAAoB,GACpB,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,CAAA;AAEtB,MAAM,MAAM,2BAA2B,GAAG,wBAAwB,GAAG;IACnE,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,CAAA;CAC5C,CAAA;AAED,qBAAa,0BAA2B,SAAQ,KAAK;IAGvC,QAAQ,CAAC,MAAM,EAAE,gCAAgC;IAF7D,QAAQ,CAAC,IAAI,EAAG,8BAA8B,CAAS;gBAElC,MAAM,EAAE,gCAAgC;CAI9D;AAMD;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,wBAAwB,GAAG,SAAS,EAC9C,WAAW,EAAE,QAAQ,CAAC,6BAA6B,CAAC,GACnD,2BAA2B,CAuB7B"}
@@ -0,0 +1,54 @@
1
+ import { createHash } from 'node:crypto';
2
+ export class ApprovalSettlementConflict extends Error {
3
+ reason;
4
+ code = 'approval-settlement-conflict';
5
+ constructor(reason) {
6
+ super(`approval settlement conflict: ${reason}`);
7
+ this.reason = reason;
8
+ this.name = 'ApprovalSettlementConflict';
9
+ }
10
+ }
11
+ function conflict(reason) {
12
+ throw new ApprovalSettlementConflict(reason);
13
+ }
14
+ /**
15
+ * Validate a terminal Policy snapshot against the immutable operation owned by
16
+ * a domain before that domain commits its pending mutation.
17
+ */
18
+ export function validateApprovalSettlement(snapshot, expectation) {
19
+ if (typeof expectation.diff !== 'string'
20
+ || !Number.isSafeInteger(expectation.expectedVersion)
21
+ || expectation.expectedVersion <= 0
22
+ || expectation.expectedVersion >= Number.MAX_SAFE_INTEGER) {
23
+ conflict('invalid-expectation');
24
+ }
25
+ if (snapshot === undefined)
26
+ conflict('missing-proposal');
27
+ if (snapshot.proposalId !== expectation.proposalId)
28
+ conflict('proposal-id-mismatch');
29
+ if (snapshot.requester !== expectation.requester)
30
+ conflict('requester-mismatch');
31
+ if (snapshot.principal !== expectation.principal)
32
+ conflict('principal-mismatch');
33
+ if (snapshot.action !== expectation.action)
34
+ conflict('action-mismatch');
35
+ if (snapshot.resource.kind !== expectation.resource.kind
36
+ || snapshot.resource.id !== expectation.resource.id)
37
+ conflict('resource-mismatch');
38
+ if (snapshot.summary !== expectation.summary)
39
+ conflict('summary-mismatch');
40
+ const expectedDiffHash = createHash('sha256').update(expectation.diff).digest('hex');
41
+ if (snapshot.diffHash !== expectedDiffHash)
42
+ conflict('diff-mismatch');
43
+ if (snapshot.expiresAt !== expectation.expiresAt)
44
+ conflict('expiry-mismatch');
45
+ if (snapshot.version !== expectation.expectedVersion + 1)
46
+ conflict('version-mismatch');
47
+ if (snapshot.status === 'pending')
48
+ conflict('not-terminal');
49
+ const expectedActor = snapshot.status === 'expired' ? 'system:expiry' : expectation.principal;
50
+ if (snapshot.decidedBy !== expectedActor)
51
+ conflict('decision-actor-mismatch');
52
+ return snapshot;
53
+ }
54
+ //# sourceMappingURL=settlement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settlement.js","sourceRoot":"","sources":["../src/settlement.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAkCxC,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IAG9B;IAFZ,IAAI,GAAG,8BAAuC,CAAA;IAEvD,YAAqB,MAAwC;QAC3D,KAAK,CAAC,iCAAiC,MAAM,EAAE,CAAC,CAAA;QAD7B,WAAM,GAAN,MAAM,CAAkC;QAE3D,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAA;IAC1C,CAAC;CACF;AAED,SAAS,QAAQ,CAAC,MAAwC;IACxD,MAAM,IAAI,0BAA0B,CAAC,MAAM,CAAC,CAAA;AAC9C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAA8C,EAC9C,WAAoD;IAEpD,IAAI,OAAO,WAAW,CAAC,IAAI,KAAK,QAAQ;WACnC,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,eAAe,CAAC;WAClD,WAAW,CAAC,eAAe,IAAI,CAAC;WAChC,WAAW,CAAC,eAAe,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC5D,QAAQ,CAAC,qBAAqB,CAAC,CAAA;IACjC,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS;QAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAA;IACxD,IAAI,QAAQ,CAAC,UAAU,KAAK,WAAW,CAAC,UAAU;QAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAA;IACpF,IAAI,QAAQ,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS;QAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAA;IAChF,IAAI,QAAQ,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS;QAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAA;IAChF,IAAI,QAAQ,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM;QAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAA;IACvE,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,WAAW,CAAC,QAAQ,CAAC,IAAI;WACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,WAAW,CAAC,QAAQ,CAAC,EAAE;QAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAA;IACpF,IAAI,QAAQ,CAAC,OAAO,KAAK,WAAW,CAAC,OAAO;QAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAA;IAC1E,MAAM,gBAAgB,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACpF,IAAI,QAAQ,CAAC,QAAQ,KAAK,gBAAgB;QAAE,QAAQ,CAAC,eAAe,CAAC,CAAA;IACrE,IAAI,QAAQ,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS;QAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAA;IAC7E,IAAI,QAAQ,CAAC,OAAO,KAAK,WAAW,CAAC,eAAe,GAAG,CAAC;QAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAA;IACtF,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS;QAAE,QAAQ,CAAC,cAAc,CAAC,CAAA;IAC3D,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,CAAA;IAC7F,IAAI,QAAQ,CAAC,SAAS,KAAK,aAAa;QAAE,QAAQ,CAAC,yBAAyB,CAAC,CAAA;IAC7E,OAAO,QAAuC,CAAA;AAChD,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { DatabaseSync } from 'node:sqlite';
2
+ export declare const policySchemaVersion = 5;
3
+ export declare const legacyApprovalIntentHash = "legacy-v4-unbound";
4
+ export declare class PolicyDatabaseError extends Error {
5
+ readonly code: 'invalid-path' | 'schema-too-new';
6
+ constructor(code: 'invalid-path' | 'schema-too-new', message: string);
7
+ }
8
+ export declare function openPolicyDatabase(path: string): DatabaseSync;
9
+ //# sourceMappingURL=sqlite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../src/sqlite.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC,eAAO,MAAM,wBAAwB,sBAAsB,CAAA;AAE3D,qBAAa,mBAAoB,SAAQ,KAAK;IAE1C,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,gBAAgB;gBAAvC,IAAI,EAAE,cAAc,GAAG,gBAAgB,EAChD,OAAO,EAAE,MAAM;CAKlB;AA0PD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAuB7D"}