@vorionsys/proof-plane 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/events/event-emitter.d.ts +140 -0
- package/dist/events/event-emitter.d.ts.map +1 -0
- package/dist/events/event-emitter.js +235 -0
- package/dist/events/event-emitter.js.map +1 -0
- package/dist/events/event-signatures.d.ts +154 -0
- package/dist/events/event-signatures.d.ts.map +1 -0
- package/dist/events/event-signatures.js +302 -0
- package/dist/events/event-signatures.js.map +1 -0
- package/dist/events/event-store.d.ts +159 -0
- package/dist/events/event-store.d.ts.map +1 -0
- package/dist/events/event-store.js +36 -0
- package/dist/events/event-store.js.map +1 -0
- package/dist/events/hash-chain.d.ts +63 -0
- package/dist/events/hash-chain.d.ts.map +1 -0
- package/dist/events/hash-chain.js +135 -0
- package/dist/events/hash-chain.js.map +1 -0
- package/dist/events/index.d.ts +9 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +9 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/memory-store.d.ts +82 -0
- package/dist/events/memory-store.d.ts.map +1 -0
- package/dist/events/memory-store.js +215 -0
- package/dist/events/memory-store.js.map +1 -0
- package/dist/index.d.ts +36 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +41 -0
- package/dist/index.js.map +1 -0
- package/dist/proof-plane/index.d.ts +6 -0
- package/dist/proof-plane/index.d.ts.map +1 -0
- package/dist/proof-plane/index.js +6 -0
- package/dist/proof-plane/index.js.map +1 -0
- package/dist/proof-plane/logger.d.ts +47 -0
- package/dist/proof-plane/logger.d.ts.map +1 -0
- package/dist/proof-plane/logger.js +48 -0
- package/dist/proof-plane/logger.js.map +1 -0
- package/dist/proof-plane/proof-plane.d.ts +263 -0
- package/dist/proof-plane/proof-plane.d.ts.map +1 -0
- package/dist/proof-plane/proof-plane.js +431 -0
- package/dist/proof-plane/proof-plane.js.map +1 -0
- package/package.json +48 -0
|
@@ -0,0 +1,431 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Proof Plane - High-level interface for the Vorion audit system
|
|
3
|
+
*
|
|
4
|
+
* The Proof Plane provides a unified API for:
|
|
5
|
+
* - Emitting proof events
|
|
6
|
+
* - Querying the event trail
|
|
7
|
+
* - Verifying chain integrity
|
|
8
|
+
* - Subscribing to events
|
|
9
|
+
* - Hook integration for EVENT_EMITTED notifications
|
|
10
|
+
*/
|
|
11
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
12
|
+
import { ProofEventType, TrustBand, } from '@vorion/contracts';
|
|
13
|
+
import { createInMemoryEventStore } from '../events/memory-store.js';
|
|
14
|
+
import { createEventEmitter, } from '../events/event-emitter.js';
|
|
15
|
+
import { verifyChainWithDetails, } from '../events/hash-chain.js';
|
|
16
|
+
import { verifyEventSignatures, } from '../events/event-signatures.js';
|
|
17
|
+
/**
|
|
18
|
+
* Proof Plane - The Vorion audit trail system
|
|
19
|
+
*/
|
|
20
|
+
export class ProofPlane {
|
|
21
|
+
store;
|
|
22
|
+
emitter;
|
|
23
|
+
signedBy;
|
|
24
|
+
hookManager;
|
|
25
|
+
enableHooks;
|
|
26
|
+
shadowMode;
|
|
27
|
+
environment;
|
|
28
|
+
signingService;
|
|
29
|
+
enableSignatures;
|
|
30
|
+
constructor(config = {}) {
|
|
31
|
+
this.store = config.store ?? createInMemoryEventStore();
|
|
32
|
+
this.signedBy = config.signedBy ?? 'orion-proof-plane';
|
|
33
|
+
this.hookManager = config.hookManager;
|
|
34
|
+
this.enableHooks = config.enableHooks ?? (config.hookManager !== undefined);
|
|
35
|
+
this.shadowMode = config.shadowMode ?? 'production';
|
|
36
|
+
this.environment = config.environment ?? 'production';
|
|
37
|
+
this.signingService = config.signingService;
|
|
38
|
+
this.enableSignatures = config.enableSignatures ?? false;
|
|
39
|
+
this.emitter = createEventEmitter({
|
|
40
|
+
store: this.store,
|
|
41
|
+
signedBy: this.signedBy,
|
|
42
|
+
enableSignatures: this.enableSignatures,
|
|
43
|
+
signingService: this.signingService,
|
|
44
|
+
privateKey: config.privateKey,
|
|
45
|
+
shadowMode: this.shadowMode,
|
|
46
|
+
});
|
|
47
|
+
// Set up hook listener if hooks are enabled
|
|
48
|
+
if (this.enableHooks && this.hookManager) {
|
|
49
|
+
this.setupHookListener();
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Set up internal listener for hook notifications
|
|
54
|
+
*/
|
|
55
|
+
setupHookListener() {
|
|
56
|
+
this.emitter.addListener((event) => {
|
|
57
|
+
// Fire hook asynchronously (don't block event emission)
|
|
58
|
+
this.fireEventEmittedHook(event).catch((error) => {
|
|
59
|
+
console.error('[ProofPlane] Failed to fire EVENT_EMITTED hook:', error);
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Fire the EVENT_EMITTED hook
|
|
65
|
+
*/
|
|
66
|
+
async fireEventEmittedHook(event) {
|
|
67
|
+
if (!this.hookManager)
|
|
68
|
+
return;
|
|
69
|
+
await this.hookManager.executeEventEmitted({
|
|
70
|
+
correlationId: event.correlationId,
|
|
71
|
+
event,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
// ============================================================
|
|
75
|
+
// Event Emission - Type-safe helpers for common events
|
|
76
|
+
// ============================================================
|
|
77
|
+
/**
|
|
78
|
+
* Log an intent received event
|
|
79
|
+
*/
|
|
80
|
+
async logIntentReceived(intent, correlationId) {
|
|
81
|
+
const payload = {
|
|
82
|
+
type: 'intent_received',
|
|
83
|
+
intentId: intent.intentId,
|
|
84
|
+
action: intent.action,
|
|
85
|
+
actionType: intent.actionType,
|
|
86
|
+
resourceScope: intent.resourceScope,
|
|
87
|
+
};
|
|
88
|
+
return this.emitter.emitTyped(ProofEventType.INTENT_RECEIVED, correlationId ?? intent.correlationId, payload, intent.agentId);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Log an authorization decision event
|
|
92
|
+
*/
|
|
93
|
+
async logDecisionMade(decision, correlationId) {
|
|
94
|
+
const payload = {
|
|
95
|
+
type: 'decision_made',
|
|
96
|
+
decisionId: decision.decisionId,
|
|
97
|
+
intentId: decision.intentId,
|
|
98
|
+
permitted: decision.permitted,
|
|
99
|
+
trustBand: TrustBand[decision.trustBand],
|
|
100
|
+
trustScore: decision.trustScore,
|
|
101
|
+
reasoning: decision.reasoning,
|
|
102
|
+
};
|
|
103
|
+
return this.emitter.emitTyped(ProofEventType.DECISION_MADE, correlationId ?? decision.correlationId, payload, decision.agentId);
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Log a trust score change event
|
|
107
|
+
*/
|
|
108
|
+
async logTrustDelta(agentId, previousProfile, newProfile, reason, correlationId) {
|
|
109
|
+
const payload = {
|
|
110
|
+
type: 'trust_delta',
|
|
111
|
+
deltaId: uuidv4(),
|
|
112
|
+
previousScore: previousProfile.adjustedScore,
|
|
113
|
+
newScore: newProfile.adjustedScore,
|
|
114
|
+
previousBand: TrustBand[previousProfile.band],
|
|
115
|
+
newBand: TrustBand[newProfile.band],
|
|
116
|
+
reason,
|
|
117
|
+
};
|
|
118
|
+
return this.emitter.emitTyped(ProofEventType.TRUST_DELTA, correlationId ?? uuidv4(), payload, agentId);
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Log execution started event
|
|
122
|
+
*/
|
|
123
|
+
async logExecutionStarted(executionId, actionId, decisionId, adapterId, agentId, correlationId) {
|
|
124
|
+
const payload = {
|
|
125
|
+
type: 'execution_started',
|
|
126
|
+
executionId,
|
|
127
|
+
actionId,
|
|
128
|
+
decisionId,
|
|
129
|
+
adapterId,
|
|
130
|
+
};
|
|
131
|
+
return this.emitter.emitTyped(ProofEventType.EXECUTION_STARTED, correlationId, payload, agentId);
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Log execution completed event
|
|
135
|
+
*/
|
|
136
|
+
async logExecutionCompleted(executionId, actionId, durationMs, outputHash, agentId, correlationId, status = 'success') {
|
|
137
|
+
const payload = {
|
|
138
|
+
type: 'execution_completed',
|
|
139
|
+
executionId,
|
|
140
|
+
actionId,
|
|
141
|
+
status,
|
|
142
|
+
durationMs,
|
|
143
|
+
outputHash,
|
|
144
|
+
};
|
|
145
|
+
return this.emitter.emitTyped(ProofEventType.EXECUTION_COMPLETED, correlationId, payload, agentId);
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Log execution failed event
|
|
149
|
+
*/
|
|
150
|
+
async logExecutionFailed(executionId, actionId, error, durationMs, retryable, agentId, correlationId) {
|
|
151
|
+
const payload = {
|
|
152
|
+
type: 'execution_failed',
|
|
153
|
+
executionId,
|
|
154
|
+
actionId,
|
|
155
|
+
error,
|
|
156
|
+
durationMs,
|
|
157
|
+
retryable,
|
|
158
|
+
};
|
|
159
|
+
return this.emitter.emitTyped(ProofEventType.EXECUTION_FAILED, correlationId, payload, agentId);
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Log a generic proof event
|
|
163
|
+
*/
|
|
164
|
+
async logEvent(eventType, correlationId, payload, agentId) {
|
|
165
|
+
return this.emitter.emitTyped(eventType, correlationId, payload, agentId);
|
|
166
|
+
}
|
|
167
|
+
// ============================================================
|
|
168
|
+
// Event Queries
|
|
169
|
+
// ============================================================
|
|
170
|
+
/**
|
|
171
|
+
* Get an event by ID
|
|
172
|
+
*/
|
|
173
|
+
async getEvent(eventId) {
|
|
174
|
+
return this.store.get(eventId);
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Get the latest event
|
|
178
|
+
*/
|
|
179
|
+
async getLatestEvent() {
|
|
180
|
+
return this.store.getLatest();
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Query events with filters
|
|
184
|
+
*/
|
|
185
|
+
async queryEvents(filter, options) {
|
|
186
|
+
return this.store.query(filter, options);
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Get all events for a correlation ID (trace a request)
|
|
190
|
+
*/
|
|
191
|
+
async getTrace(correlationId) {
|
|
192
|
+
return this.store.getByCorrelationId(correlationId, { order: 'asc' });
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Get all events for an agent
|
|
196
|
+
*/
|
|
197
|
+
async getAgentHistory(agentId, options) {
|
|
198
|
+
return this.store.getByAgentId(agentId, options);
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Get events by type
|
|
202
|
+
*/
|
|
203
|
+
async getEventsByType(eventType, options) {
|
|
204
|
+
return this.store.getByType(eventType, options);
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Get event statistics
|
|
208
|
+
*/
|
|
209
|
+
async getStats() {
|
|
210
|
+
return this.store.getStats();
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Get event count
|
|
214
|
+
*/
|
|
215
|
+
async getEventCount(filter) {
|
|
216
|
+
return this.store.count(filter);
|
|
217
|
+
}
|
|
218
|
+
// ============================================================
|
|
219
|
+
// Chain Verification
|
|
220
|
+
// ============================================================
|
|
221
|
+
/**
|
|
222
|
+
* Verify the entire event chain
|
|
223
|
+
*/
|
|
224
|
+
async verifyChain(fromEventId, limit) {
|
|
225
|
+
const events = await this.store.getChain(fromEventId, limit);
|
|
226
|
+
return verifyChainWithDetails(events);
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Verify chain integrity for a specific correlation ID
|
|
230
|
+
*/
|
|
231
|
+
async verifyCorrelationChain(correlationId) {
|
|
232
|
+
const events = await this.store.getByCorrelationId(correlationId, { order: 'asc' });
|
|
233
|
+
return verifyChainWithDetails(events);
|
|
234
|
+
}
|
|
235
|
+
// ============================================================
|
|
236
|
+
// Signature Verification
|
|
237
|
+
// ============================================================
|
|
238
|
+
/**
|
|
239
|
+
* Check if signature verification is available
|
|
240
|
+
*/
|
|
241
|
+
isSignatureVerificationEnabled() {
|
|
242
|
+
return this.signingService !== undefined;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Check if this proof plane is configured for signing
|
|
246
|
+
*/
|
|
247
|
+
isSigningEnabled() {
|
|
248
|
+
return this.enableSignatures && this.emitter.isSigningEnabled();
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Get the signing service (if configured)
|
|
252
|
+
*/
|
|
253
|
+
getSigningService() {
|
|
254
|
+
return this.signingService;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Verify signature on a single event
|
|
258
|
+
*
|
|
259
|
+
* Requires a signing service with trusted keys configured.
|
|
260
|
+
*/
|
|
261
|
+
async verifyEventSignature(event) {
|
|
262
|
+
if (!this.signingService) {
|
|
263
|
+
return {
|
|
264
|
+
valid: false,
|
|
265
|
+
error: 'No signing service configured for verification',
|
|
266
|
+
verifiedAt: new Date(),
|
|
267
|
+
};
|
|
268
|
+
}
|
|
269
|
+
return this.signingService.verify(event);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Verify signatures for multiple events
|
|
273
|
+
*
|
|
274
|
+
* Returns detailed results for each event.
|
|
275
|
+
*/
|
|
276
|
+
async verifySignatures(events) {
|
|
277
|
+
if (!this.signingService) {
|
|
278
|
+
return {
|
|
279
|
+
totalEvents: events.length,
|
|
280
|
+
validCount: 0,
|
|
281
|
+
invalidCount: 0,
|
|
282
|
+
unsignedCount: events.length,
|
|
283
|
+
results: events.map(e => ({
|
|
284
|
+
eventId: e.eventId,
|
|
285
|
+
result: {
|
|
286
|
+
valid: false,
|
|
287
|
+
error: 'No signing service configured for verification',
|
|
288
|
+
verifiedAt: new Date(),
|
|
289
|
+
},
|
|
290
|
+
})),
|
|
291
|
+
success: false,
|
|
292
|
+
};
|
|
293
|
+
}
|
|
294
|
+
return verifyEventSignatures(events, this.signingService);
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Verify signatures for all events in a correlation chain
|
|
298
|
+
*/
|
|
299
|
+
async verifyCorrelationSignatures(correlationId) {
|
|
300
|
+
const events = await this.store.getByCorrelationId(correlationId, { order: 'asc' });
|
|
301
|
+
return this.verifySignatures(events);
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Verify both chain integrity AND signatures
|
|
305
|
+
*
|
|
306
|
+
* Returns combined verification results.
|
|
307
|
+
*/
|
|
308
|
+
async verifyChainAndSignatures(fromEventId, limit) {
|
|
309
|
+
const events = await this.store.getChain(fromEventId, limit);
|
|
310
|
+
const chain = await verifyChainWithDetails(events);
|
|
311
|
+
const signatures = await this.verifySignatures(events);
|
|
312
|
+
return {
|
|
313
|
+
chain,
|
|
314
|
+
signatures,
|
|
315
|
+
fullyVerified: chain.valid && signatures.success,
|
|
316
|
+
};
|
|
317
|
+
}
|
|
318
|
+
// ============================================================
|
|
319
|
+
// Subscriptions
|
|
320
|
+
// ============================================================
|
|
321
|
+
/**
|
|
322
|
+
* Subscribe to new events
|
|
323
|
+
*/
|
|
324
|
+
subscribe(listener) {
|
|
325
|
+
this.emitter.addListener(listener);
|
|
326
|
+
return () => this.emitter.removeListener(listener);
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* Subscribe to events of a specific type
|
|
330
|
+
*/
|
|
331
|
+
subscribeToType(eventType, listener) {
|
|
332
|
+
const filteredListener = (event) => {
|
|
333
|
+
if (event.eventType === eventType) {
|
|
334
|
+
return listener(event);
|
|
335
|
+
}
|
|
336
|
+
};
|
|
337
|
+
this.emitter.addListener(filteredListener);
|
|
338
|
+
return () => this.emitter.removeListener(filteredListener);
|
|
339
|
+
}
|
|
340
|
+
// ============================================================
|
|
341
|
+
// Utilities
|
|
342
|
+
// ============================================================
|
|
343
|
+
/**
|
|
344
|
+
* Get the underlying event store
|
|
345
|
+
*/
|
|
346
|
+
getStore() {
|
|
347
|
+
return this.store;
|
|
348
|
+
}
|
|
349
|
+
/**
|
|
350
|
+
* Get the event emitter
|
|
351
|
+
*/
|
|
352
|
+
getEmitter() {
|
|
353
|
+
return this.emitter;
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* Get the hook manager
|
|
357
|
+
*/
|
|
358
|
+
getHookManager() {
|
|
359
|
+
return this.hookManager;
|
|
360
|
+
}
|
|
361
|
+
/**
|
|
362
|
+
* Check if hooks are enabled
|
|
363
|
+
*/
|
|
364
|
+
isHooksEnabled() {
|
|
365
|
+
return this.enableHooks;
|
|
366
|
+
}
|
|
367
|
+
// ============================================================
|
|
368
|
+
// Shadow Mode (T0 Sandbox Support)
|
|
369
|
+
// ============================================================
|
|
370
|
+
/**
|
|
371
|
+
* Check if this proof plane is in shadow mode
|
|
372
|
+
*/
|
|
373
|
+
isShadowMode() {
|
|
374
|
+
return this.shadowMode !== 'production';
|
|
375
|
+
}
|
|
376
|
+
/**
|
|
377
|
+
* Get the current shadow mode status
|
|
378
|
+
*/
|
|
379
|
+
getShadowMode() {
|
|
380
|
+
return this.shadowMode;
|
|
381
|
+
}
|
|
382
|
+
/**
|
|
383
|
+
* Get the environment tag
|
|
384
|
+
*/
|
|
385
|
+
getEnvironment() {
|
|
386
|
+
return this.environment;
|
|
387
|
+
}
|
|
388
|
+
/**
|
|
389
|
+
* Query shadow/testnet events that need HITL verification
|
|
390
|
+
*/
|
|
391
|
+
async getUnverifiedShadowEvents(agentId, options) {
|
|
392
|
+
const result = await this.store.query({ agentId }, { ...options, shadowModeOnly: ['shadow', 'testnet'] });
|
|
393
|
+
return result.events;
|
|
394
|
+
}
|
|
395
|
+
/**
|
|
396
|
+
* Mark a shadow event as verified by HITL
|
|
397
|
+
* Note: This creates a new verification event, not modifying the original
|
|
398
|
+
*/
|
|
399
|
+
async verifyShadowEvent(eventId, verificationId, verifiedBy, approved) {
|
|
400
|
+
const event = await this.store.get(eventId);
|
|
401
|
+
if (!event) {
|
|
402
|
+
throw new Error(`Event ${eventId} not found`);
|
|
403
|
+
}
|
|
404
|
+
if (event.shadowMode !== 'shadow' && event.shadowMode !== 'testnet') {
|
|
405
|
+
throw new Error(`Event ${eventId} is not a shadow event (status: ${event.shadowMode ?? 'production'})`);
|
|
406
|
+
}
|
|
407
|
+
// Log verification as a new event
|
|
408
|
+
return this.logEvent(ProofEventType.COMPONENT_UPDATED, event.correlationId, {
|
|
409
|
+
type: 'shadow_verification',
|
|
410
|
+
eventId,
|
|
411
|
+
verificationId,
|
|
412
|
+
verifiedBy,
|
|
413
|
+
approved,
|
|
414
|
+
newStatus: approved ? 'verified' : 'rejected',
|
|
415
|
+
previousStatus: event.shadowMode,
|
|
416
|
+
}, event.agentId);
|
|
417
|
+
}
|
|
418
|
+
/**
|
|
419
|
+
* Clear all events (for testing only)
|
|
420
|
+
*/
|
|
421
|
+
async clear() {
|
|
422
|
+
await this.store.clear();
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
/**
|
|
426
|
+
* Create a Proof Plane instance
|
|
427
|
+
*/
|
|
428
|
+
export function createProofPlane(config) {
|
|
429
|
+
return new ProofPlane(config);
|
|
430
|
+
}
|
|
431
|
+
//# sourceMappingURL=proof-plane.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proof-plane.js","sourceRoot":"","sources":["../../src/proof-plane/proof-plane.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@vorionsys/proof-plane",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Vorion Proof Plane - Immutable audit trail for AI agent operations",
|
|
5
|
+
"publishConfig": {
|
|
6
|
+
"access": "public"
|
|
7
|
+
},
|
|
8
|
+
"type": "module",
|
|
9
|
+
"main": "./dist/index.js",
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"exports": {
|
|
12
|
+
".": {
|
|
13
|
+
"types": "./dist/index.d.ts",
|
|
14
|
+
"import": "./dist/index.js"
|
|
15
|
+
},
|
|
16
|
+
"./events": {
|
|
17
|
+
"types": "./dist/events/index.d.ts",
|
|
18
|
+
"import": "./dist/events/index.js"
|
|
19
|
+
},
|
|
20
|
+
"./proof-plane": {
|
|
21
|
+
"types": "./dist/proof-plane/index.d.ts",
|
|
22
|
+
"import": "./dist/proof-plane/index.js"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"files": [
|
|
26
|
+
"dist"
|
|
27
|
+
],
|
|
28
|
+
"scripts": {
|
|
29
|
+
"build": "tsc",
|
|
30
|
+
"dev": "tsc --watch",
|
|
31
|
+
"test": "vitest run",
|
|
32
|
+
"test:watch": "vitest",
|
|
33
|
+
"test:coverage": "vitest run --coverage",
|
|
34
|
+
"typecheck": "tsc --noEmit",
|
|
35
|
+
"lint": "eslint src",
|
|
36
|
+
"clean": "rm -rf dist"
|
|
37
|
+
},
|
|
38
|
+
"dependencies": {
|
|
39
|
+
"@vorionsys/contracts": "*",
|
|
40
|
+
"uuid": "^11.0.4"
|
|
41
|
+
},
|
|
42
|
+
"devDependencies": {
|
|
43
|
+
"@types/node": "^22.10.5",
|
|
44
|
+
"@types/uuid": "^10.0.0",
|
|
45
|
+
"typescript": "^5.7.2",
|
|
46
|
+
"vitest": "^2.1.8"
|
|
47
|
+
}
|
|
48
|
+
}
|