@emilia-protocol/gate 0.15.2 → 0.16.1

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":"authority-allocation.js","sourceRoot":"","sources":["../src/authority-allocation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,226 @@
1
+ /**
2
+ * Complete-mediation boundary for provider effects.
3
+ *
4
+ * Gate presents a short-lived signed execution envelope. The actuator verifies
5
+ * every binding under immutable local pins, atomically reserves the envelope,
6
+ * and only then enters a provider callback that owns its credential. Provider
7
+ * credentials are deliberately absent from every public type in this module.
8
+ */
9
+ import { type KeyObject } from 'node:crypto';
10
+ export declare const CONSEQUENCE_ACTUATOR_ENVELOPE_VERSION = "EP-CONSEQUENCE-ACTUATOR-ENVELOPE-v1";
11
+ export declare const CONSEQUENCE_ACTUATOR_SIGNATURE_ALGORITHM = "Ed25519";
12
+ export declare const CONSEQUENCE_ACTUATOR_SIGNATURE_DOMAIN = "EP-CONSEQUENCE-ACTUATOR-ENVELOPE-v1";
13
+ export declare const DEFAULT_CONSEQUENCE_ACTUATOR_MAX_TTL_MS = 60000;
14
+ export declare const DEFAULT_CONSEQUENCE_ACTUATOR_CLOCK_SKEW_MS = 2000;
15
+ export declare const CONSEQUENCE_ACTUATOR_STORE_TABLE = "public.consequence_actuator_envelopes";
16
+ export declare const CONSEQUENCE_ACTUATOR_EXECUTOR_ROLE = "consequence_actuator_executor";
17
+ export declare const CONSEQUENCE_ACTUATOR_STORE_OWNER_ROLE = "consequence_actuator_store_owner";
18
+ export declare const CONSEQUENCE_ACTUATOR_SQL: {
19
+ reserve: string;
20
+ consume: string;
21
+ };
22
+ type KeyMaterial = KeyObject | string | Buffer;
23
+ export interface ConsequenceExecutionEnvelopePayload {
24
+ '@version': typeof CONSEQUENCE_ACTUATOR_ENVELOPE_VERSION;
25
+ issuer_id: string;
26
+ tenant_id: string;
27
+ attempt_id: string;
28
+ action_digest: string;
29
+ caid: string;
30
+ provider_account_id: string;
31
+ target_digest: string;
32
+ operation: string;
33
+ idempotency_key: string;
34
+ nonce: string;
35
+ issued_at: string;
36
+ expires_at: string;
37
+ }
38
+ export interface ConsequenceExecutionEnvelopeSignature {
39
+ algorithm: typeof CONSEQUENCE_ACTUATOR_SIGNATURE_ALGORITHM;
40
+ key_id: string;
41
+ value: string;
42
+ }
43
+ export interface SignedConsequenceExecutionEnvelope {
44
+ payload: ConsequenceExecutionEnvelopePayload;
45
+ signature: ConsequenceExecutionEnvelopeSignature;
46
+ }
47
+ export interface ConsequenceActuatorPins {
48
+ tenantId: string;
49
+ caid: string;
50
+ providerAccountId: string;
51
+ targetDigest: string;
52
+ operation: string;
53
+ envelopeIssuerId: string;
54
+ envelopeKeyId: string;
55
+ envelopePublicKey: KeyMaterial;
56
+ maxEnvelopeTtlMs?: number;
57
+ clockSkewMs?: number;
58
+ }
59
+ export interface VisibleConsequenceActuatorPins {
60
+ readonly tenantId: string;
61
+ readonly caid: string;
62
+ readonly providerAccountId: string;
63
+ readonly targetDigest: string;
64
+ readonly operation: string;
65
+ readonly envelopeIssuerId: string;
66
+ readonly envelopeKeyId: string;
67
+ readonly envelopePublicKeyFingerprint: string;
68
+ readonly maxEnvelopeTtlMs: number;
69
+ readonly clockSkewMs: number;
70
+ }
71
+ export interface ConsequenceActuatorReservation {
72
+ readonly tenantId: string;
73
+ readonly attemptId: string;
74
+ readonly actionDigest: string;
75
+ readonly caid: string;
76
+ readonly providerAccountId: string;
77
+ readonly targetDigest: string;
78
+ readonly operation: string;
79
+ readonly idempotencyKey: string;
80
+ readonly nonce: string;
81
+ readonly issuedAt: string;
82
+ readonly expiresAt: string;
83
+ readonly envelopeDigest: string;
84
+ }
85
+ export type ConsequenceActuatorOutcome = 'COMMITTED' | 'INDETERMINATE';
86
+ export interface ConsequenceActuatorConsumption extends ConsequenceActuatorReservation {
87
+ readonly outcome: ConsequenceActuatorOutcome;
88
+ }
89
+ export interface ConsequenceActuatorStore {
90
+ /** Explicit marker for the built-in non-production test store. */
91
+ readonly testOnly?: true;
92
+ readonly durable: boolean;
93
+ readonly atomic: boolean;
94
+ readonly ownershipFenced: boolean;
95
+ readonly permanentConsumption: boolean;
96
+ reserve(reservation: ConsequenceActuatorReservation): Promise<boolean>;
97
+ consume(consumption: ConsequenceActuatorConsumption): Promise<boolean>;
98
+ }
99
+ export interface ConsequenceActuatorPgQueryResult {
100
+ readonly rowCount: number | null;
101
+ readonly rows: readonly unknown[];
102
+ }
103
+ /**
104
+ * A dedicated pool wrapper must label the login principal configured in its
105
+ * connection string. PostgreSQL independently enforces that SESSION_USER is a
106
+ * tenant-mapped member of consequence_actuator_executor.
107
+ */
108
+ export interface DedicatedConsequenceActuatorExecutorPool {
109
+ readonly principal: string;
110
+ query(text: string, values: readonly unknown[]): Promise<ConsequenceActuatorPgQueryResult>;
111
+ }
112
+ export interface PostgresConsequenceActuatorStoreOptions {
113
+ readonly tenantId: string;
114
+ readonly executorPrincipal: string;
115
+ readonly executorPool: DedicatedConsequenceActuatorExecutorPool;
116
+ }
117
+ export interface ConsequenceActuatorExecutionInput {
118
+ envelope: unknown;
119
+ attemptId: string;
120
+ actionDigest: string;
121
+ idempotencyKey: string;
122
+ }
123
+ export type ConsequenceActuatorRefusalReason = 'malformed_envelope' | 'unsupported_version' | 'signer_key_mismatch' | 'issuer_mismatch' | 'tenant_mismatch' | 'caid_mismatch' | 'provider_account_mismatch' | 'target_mismatch' | 'operation_mismatch' | 'attempt_mismatch' | 'action_digest_mismatch' | 'idempotency_key_mismatch' | 'envelope_not_yet_valid' | 'envelope_expired' | 'envelope_ttl_exceeded' | 'signature_invalid' | 'store_reserve_failed' | 'envelope_replayed' | 'provider_outcome_indeterminate' | 'store_consume_unconfirmed';
124
+ export type ConsequenceActuatorExecutionResult<TResult> = {
125
+ readonly ok: true;
126
+ readonly invoked: true;
127
+ readonly result: TResult;
128
+ readonly envelopeDigest: string;
129
+ } | {
130
+ readonly ok: false;
131
+ readonly invoked: boolean;
132
+ readonly reason: ConsequenceActuatorRefusalReason;
133
+ readonly envelopeDigest?: string;
134
+ };
135
+ export type ConsequenceEnvelopeVerification = {
136
+ readonly ok: true;
137
+ readonly payload: Readonly<ConsequenceExecutionEnvelopePayload>;
138
+ readonly envelopeDigest: string;
139
+ } | {
140
+ readonly ok: false;
141
+ readonly reason: Exclude<ConsequenceActuatorRefusalReason, 'store_reserve_failed' | 'envelope_replayed' | 'provider_outcome_indeterminate' | 'store_consume_unconfirmed'>;
142
+ };
143
+ interface VerifyExpectedBinding {
144
+ attemptId: string;
145
+ actionDigest: string;
146
+ idempotencyKey: string;
147
+ }
148
+ interface VerifyOptions {
149
+ pins: ConsequenceActuatorPins;
150
+ expected: VerifyExpectedBinding;
151
+ now?: number | (() => number);
152
+ }
153
+ interface ConsequenceActuatorOptions<TResult> {
154
+ pins: ConsequenceActuatorPins;
155
+ store: ConsequenceActuatorStore;
156
+ readonly testOnly?: true;
157
+ perform: (binding: Readonly<ConsequenceExecutionEnvelopePayload>) => TResult | Promise<TResult>;
158
+ now?: number | (() => number);
159
+ }
160
+ interface SignEnvelopeOptions {
161
+ privateKey: KeyMaterial;
162
+ keyId: string;
163
+ }
164
+ export interface MemoryConsequenceActuatorSnapshot extends ConsequenceActuatorReservation {
165
+ readonly state: 'RESERVED' | 'CONSUMED';
166
+ readonly outcome: ConsequenceActuatorOutcome | null;
167
+ readonly reservedAt: string;
168
+ readonly consumedAt: string | null;
169
+ }
170
+ /** Create a closed Ed25519 execution envelope for an already-authorized effect. */
171
+ export declare function signConsequenceExecutionEnvelope(payload: ConsequenceExecutionEnvelopePayload, options: SignEnvelopeOptions): SignedConsequenceExecutionEnvelope;
172
+ /** Verify an envelope without invoking a provider or mutating replay state. */
173
+ export declare function verifyConsequenceExecutionEnvelope(envelope: unknown, options: VerifyOptions): ConsequenceEnvelopeVerification;
174
+ /**
175
+ * Credential-owning actuator. `perform` captures the provider credential in
176
+ * the actuator process; callers cannot submit or replace that credential.
177
+ */
178
+ export declare class ConsequenceActuator<TResult = unknown> {
179
+ #private;
180
+ readonly pins: VisibleConsequenceActuatorPins;
181
+ constructor(options: ConsequenceActuatorOptions<TResult>);
182
+ execute(input: ConsequenceActuatorExecutionInput): Promise<ConsequenceActuatorExecutionResult<TResult>>;
183
+ }
184
+ /**
185
+ * Race-safe, process-local reference store for tests. Map mutations occur
186
+ * before each async method yields, so concurrent calls have one reservation
187
+ * winner. Production must use the RPC-only durable store from the migration.
188
+ */
189
+ export declare class MemoryConsequenceActuatorStore implements ConsequenceActuatorStore {
190
+ #private;
191
+ readonly testOnly: true;
192
+ readonly durable = false;
193
+ readonly atomic = true;
194
+ readonly ownershipFenced = false;
195
+ readonly permanentConsumption = false;
196
+ constructor(options?: {
197
+ now?: number | (() => number);
198
+ });
199
+ reserve(reservation: ConsequenceActuatorReservation): Promise<boolean>;
200
+ consume(consumption: ConsequenceActuatorConsumption): Promise<boolean>;
201
+ snapshot(tenantId: string, nonce: string): MemoryConsequenceActuatorSnapshot | null;
202
+ get size(): number;
203
+ }
204
+ export declare function createMemoryConsequenceActuatorStore(options?: {
205
+ now?: number | (() => number);
206
+ }): MemoryConsequenceActuatorStore;
207
+ /**
208
+ * Production adapter for the RPC-only PostgreSQL store. The supplied pool must
209
+ * be dedicated to one tenant-mapped executor login; the adapter never emits
210
+ * direct table SQL.
211
+ */
212
+ export declare class PostgresConsequenceActuatorStore implements ConsequenceActuatorStore {
213
+ #private;
214
+ readonly durable = true;
215
+ readonly atomic = true;
216
+ readonly ownershipFenced = true;
217
+ readonly permanentConsumption = true;
218
+ readonly tenantId: string;
219
+ readonly executorPrincipal: string;
220
+ constructor(options: PostgresConsequenceActuatorStoreOptions);
221
+ reserve(reservation: ConsequenceActuatorReservation): Promise<boolean>;
222
+ consume(consumption: ConsequenceActuatorConsumption): Promise<boolean>;
223
+ }
224
+ export declare function createPostgresConsequenceActuatorStore(options: PostgresConsequenceActuatorStoreOptions): PostgresConsequenceActuatorStore;
225
+ export {};
226
+ //# sourceMappingURL=consequence-actuator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consequence-actuator.d.ts","sourceRoot":"","sources":["../src/consequence-actuator.ts"],"names":[],"mappings":"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"}