proofscan 0.3.0 → 0.3.2

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 (73) hide show
  1. package/dist/analyzers/IAnalyzer.d.ts +87 -0
  2. package/dist/analyzers/IAnalyzer.d.ts.map +1 -0
  3. package/dist/analyzers/IAnalyzer.js +48 -0
  4. package/dist/analyzers/IAnalyzer.js.map +1 -0
  5. package/dist/analyzers/NoopAnalyzer.d.ts +24 -0
  6. package/dist/analyzers/NoopAnalyzer.d.ts.map +1 -0
  7. package/dist/analyzers/NoopAnalyzer.js +50 -0
  8. package/dist/analyzers/NoopAnalyzer.js.map +1 -0
  9. package/dist/analyzers/index.d.ts +13 -0
  10. package/dist/analyzers/index.d.ts.map +1 -0
  11. package/dist/analyzers/index.js +23 -0
  12. package/dist/analyzers/index.js.map +1 -0
  13. package/dist/cli.js +20 -5
  14. package/dist/cli.js.map +1 -1
  15. package/dist/commands/events.d.ts +7 -0
  16. package/dist/commands/events.d.ts.map +1 -0
  17. package/dist/commands/events.js +185 -0
  18. package/dist/commands/events.js.map +1 -0
  19. package/dist/commands/index.d.ts +1 -0
  20. package/dist/commands/index.d.ts.map +1 -1
  21. package/dist/commands/index.js +1 -0
  22. package/dist/commands/index.js.map +1 -1
  23. package/dist/commands/monitor.d.ts +1 -0
  24. package/dist/commands/monitor.d.ts.map +1 -1
  25. package/dist/commands/monitor.js +70 -12
  26. package/dist/commands/monitor.js.map +1 -1
  27. package/dist/commands/scan.d.ts.map +1 -1
  28. package/dist/commands/scan.js +12 -7
  29. package/dist/commands/scan.js.map +1 -1
  30. package/dist/commands/view.d.ts.map +1 -1
  31. package/dist/commands/view.js +69 -2
  32. package/dist/commands/view.js.map +1 -1
  33. package/dist/db/connection.d.ts.map +1 -1
  34. package/dist/db/connection.js +45 -4
  35. package/dist/db/connection.js.map +1 -1
  36. package/dist/db/events-store.d.ts +3 -0
  37. package/dist/db/events-store.d.ts.map +1 -1
  38. package/dist/db/events-store.js +6 -3
  39. package/dist/db/events-store.js.map +1 -1
  40. package/dist/db/schema.d.ts +8 -2
  41. package/dist/db/schema.d.ts.map +1 -1
  42. package/dist/db/schema.js +29 -3
  43. package/dist/db/schema.js.map +1 -1
  44. package/dist/db/types.d.ts +3 -0
  45. package/dist/db/types.d.ts.map +1 -1
  46. package/dist/eventline/normalizer.d.ts +19 -1
  47. package/dist/eventline/normalizer.d.ts.map +1 -1
  48. package/dist/eventline/normalizer.js +120 -0
  49. package/dist/eventline/normalizer.js.map +1 -1
  50. package/dist/eventline/types.d.ts +24 -0
  51. package/dist/eventline/types.d.ts.map +1 -1
  52. package/dist/eventline/types.js.map +1 -1
  53. package/dist/protocols/A2aAdapter.d.ts +39 -0
  54. package/dist/protocols/A2aAdapter.d.ts.map +1 -0
  55. package/dist/protocols/A2aAdapter.js +48 -0
  56. package/dist/protocols/A2aAdapter.js.map +1 -0
  57. package/dist/protocols/IProtocolAdapter.d.ts +106 -0
  58. package/dist/protocols/IProtocolAdapter.d.ts.map +1 -0
  59. package/dist/protocols/IProtocolAdapter.js +57 -0
  60. package/dist/protocols/IProtocolAdapter.js.map +1 -0
  61. package/dist/protocols/McpAdapter.d.ts +23 -0
  62. package/dist/protocols/McpAdapter.d.ts.map +1 -0
  63. package/dist/protocols/McpAdapter.js +162 -0
  64. package/dist/protocols/McpAdapter.js.map +1 -0
  65. package/dist/protocols/index.d.ts +14 -0
  66. package/dist/protocols/index.d.ts.map +1 -0
  67. package/dist/protocols/index.js +24 -0
  68. package/dist/protocols/index.js.map +1 -0
  69. package/dist/scanner/index.d.ts +1 -0
  70. package/dist/scanner/index.d.ts.map +1 -1
  71. package/dist/scanner/index.js +97 -60
  72. package/dist/scanner/index.js.map +1 -1
  73. package/package.json +1 -1
@@ -1,10 +1,12 @@
1
1
  /**
2
2
  * Monitor commands - reads from SQLite
3
+ * Phase 2.1: Added --follow mode for live event streaming
3
4
  */
4
5
  import { Command } from 'commander';
5
6
  import { ConfigManager } from '../config/index.js';
6
- import { EventsStore } from '../db/events-store.js';
7
+ import { EventLineStore } from '../eventline/store.js';
7
8
  import { output, outputError, getOutputOptions } from '../utils/output.js';
9
+ import { formatTimestamp, getKindSymbol, shortenId, } from '../eventline/types.js';
8
10
  function formatEvent(event) {
9
11
  const time = new Date(event.ts).toLocaleTimeString();
10
12
  const dir = event.direction === 'client_to_server' ? '→' : '←';
@@ -51,6 +53,8 @@ export function createMonitorCommand(getConfigPath) {
51
53
  .description('Show recent events for a connector')
52
54
  .requiredOption('--id <id>', 'Connector ID')
53
55
  .option('--last <n>', 'Number of events to show', '20')
56
+ .option('-f, --follow', 'Follow mode: watch for new events')
57
+ .option('--interval <ms>', 'Poll interval in milliseconds for follow mode', '1000')
54
58
  .action(async (options) => {
55
59
  try {
56
60
  const manager = new ConfigManager(getConfigPath());
@@ -59,23 +63,65 @@ export function createMonitorCommand(getConfigPath) {
59
63
  outputError(`Connector not found: ${options.id}`);
60
64
  process.exit(1);
61
65
  }
62
- const eventsStore = new EventsStore(manager.getConfigDir());
66
+ const store = new EventLineStore(manager.getConfigDir());
63
67
  const count = parseInt(options.last, 10);
64
- const events = eventsStore.getRecentEventsByConnector(options.id, count);
65
- if (events.length === 0) {
68
+ // Get initial events
69
+ const events = store.getRecentEvents({
70
+ limit: count,
71
+ connector: options.id,
72
+ });
73
+ if (events.length === 0 && !options.follow) {
66
74
  output({ events: [] }, `No events found for connector: ${options.id}`);
67
75
  return;
68
76
  }
69
- if (getOutputOptions().json) {
77
+ if (getOutputOptions().json && !options.follow) {
70
78
  output(events);
79
+ return;
71
80
  }
72
- else {
73
- console.log(`Recent events for '${options.id}' (last ${events.length}):\n`);
74
- console.log('Time Dir Status Kind Summary');
75
- console.log('-'.repeat(70));
76
- for (const event of events) {
77
- console.log(formatEvent(event));
78
- }
81
+ // Print header
82
+ console.log(`Events for '${options.id}'${options.follow ? ' (following, Ctrl+C to stop)' : ` (last ${events.length})`}:\n`);
83
+ console.log('Time Sym Dir St Method Session');
84
+ console.log('-'.repeat(80));
85
+ // Print initial events
86
+ for (const event of events) {
87
+ console.log(formatEventLine(event));
88
+ }
89
+ // Follow mode
90
+ if (options.follow) {
91
+ let lastTs = events.length > 0 ? events[events.length - 1].ts_ms : Date.now();
92
+ const interval = parseInt(options.interval, 10);
93
+ // Handle Ctrl+C gracefully
94
+ process.on('SIGINT', () => {
95
+ console.log('\n\nStopped following.');
96
+ process.exit(0);
97
+ });
98
+ // Poll for new events
99
+ const poll = async () => {
100
+ try {
101
+ const newEvents = store.getRecentEvents({
102
+ limit: 50,
103
+ connector: options.id,
104
+ }).filter(e => e.ts_ms > lastTs);
105
+ if (newEvents.length > 0) {
106
+ for (const event of newEvents) {
107
+ if (getOutputOptions().json) {
108
+ console.log(JSON.stringify(event));
109
+ }
110
+ else {
111
+ console.log(formatEventLine(event));
112
+ }
113
+ }
114
+ lastTs = newEvents[newEvents.length - 1].ts_ms;
115
+ }
116
+ }
117
+ catch (error) {
118
+ // Ignore errors during polling
119
+ }
120
+ };
121
+ // Start polling
122
+ setInterval(poll, interval);
123
+ // Keep process alive
124
+ await new Promise(() => { });
79
125
  }
80
126
  }
81
127
  catch (error) {
@@ -85,4 +131,16 @@ export function createMonitorCommand(getConfigPath) {
85
131
  });
86
132
  return cmd;
87
133
  }
134
+ /**
135
+ * Format EventLine for terminal display
136
+ */
137
+ function formatEventLine(event) {
138
+ const ts = formatTimestamp(event.ts_ms);
139
+ const symbol = getKindSymbol(event.kind);
140
+ const status = event.status === 'OK' ? '✓' : event.status === 'ERR' ? '✗' : ' ';
141
+ const dir = event.direction || ' ';
142
+ const method = event.label.slice(0, 30).padEnd(30);
143
+ const session = event.session_id ? `ses=${shortenId(event.session_id, 6)}` : '';
144
+ return `${ts} ${symbol} ${dir} ${status} ${method} ${session}`;
145
+ }
88
146
  //# sourceMappingURL=monitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/commands/monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/commands/monitor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,MAAM,GAAG,OAAO,CAmFtE"}
1
+ {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,MAAM,GAAG,OAAO,CAyFtE"}
@@ -13,6 +13,7 @@ export function createScanCommand(getConfigPath) {
13
13
  .description('Start scanning a connector')
14
14
  .requiredOption('--id <id>', 'Connector ID')
15
15
  .option('--timeout <seconds>', 'Timeout in seconds', '30')
16
+ .option('--dry-run', 'Run scan without saving to database')
16
17
  .action(async (options) => {
17
18
  try {
18
19
  const manager = new ConfigManager(getConfigPath());
@@ -26,12 +27,14 @@ export function createScanCommand(getConfigPath) {
26
27
  process.exit(1);
27
28
  }
28
29
  const opts = getOutputOptions();
30
+ const dryRun = options.dryRun || false;
29
31
  if (!opts.json) {
30
- console.log(`Scanning connector: ${options.id}...`);
32
+ console.log(`${dryRun ? '[DRY RUN] ' : ''}Scanning connector: ${options.id}...`);
31
33
  }
32
34
  const scanner = new Scanner(manager.getConfigDir());
33
35
  const result = await scanner.scan(connector, {
34
36
  timeout: parseInt(options.timeout, 10),
37
+ dryRun,
35
38
  });
36
39
  if (result.success) {
37
40
  const toolCount = result.tools?.length || 0;
@@ -43,30 +46,32 @@ export function createScanCommand(getConfigPath) {
43
46
  }) || [];
44
47
  output({
45
48
  success: true,
49
+ dry_run: dryRun,
46
50
  connector_id: result.connectorId,
47
51
  session_id: result.sessionId,
48
52
  tools_count: toolCount,
49
53
  tools: toolNames,
50
54
  event_count: result.eventCount,
51
- }, `✓ Scan successful!\n` +
55
+ }, `✓ Scan successful!${dryRun ? ' (dry run - not saved)' : ''}\n` +
52
56
  ` Connector: ${result.connectorId}\n` +
53
- ` Session: ${result.sessionId}\n` +
57
+ (dryRun ? '' : ` Session: ${result.sessionId}\n`) +
54
58
  ` Tools found: ${toolCount}\n` +
55
59
  (toolNames.length > 0 ? ` Tool names: ${toolNames.join(', ')}\n` : '') +
56
- ` Events recorded: ${result.eventCount}`);
60
+ ` Events: ${result.eventCount}${dryRun ? ' (not recorded)' : ' recorded'}`);
57
61
  }
58
62
  else {
59
63
  output({
60
64
  success: false,
65
+ dry_run: dryRun,
61
66
  connector_id: result.connectorId,
62
67
  session_id: result.sessionId,
63
68
  error: result.error,
64
69
  event_count: result.eventCount,
65
- }, `✗ Scan failed!\n` +
70
+ }, `✗ Scan failed!${dryRun ? ' (dry run)' : ''}\n` +
66
71
  ` Connector: ${result.connectorId}\n` +
67
- ` Session: ${result.sessionId}\n` +
72
+ (dryRun ? '' : ` Session: ${result.sessionId}\n`) +
68
73
  ` Error: ${result.error}\n` +
69
- ` Events recorded: ${result.eventCount}`);
74
+ ` Events: ${result.eventCount}${dryRun ? ' (not recorded)' : ' recorded'}`);
70
75
  process.exit(1);
71
76
  }
72
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/commands/view.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiGpC,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,MAAM,GAAG,OAAO,CAgEtE;AAGD,OAAO,EAAE,iBAAiB,IAAI,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/commands/view.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2IpC,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,MAAM,GAAG,OAAO,CAwGtE;AAGD,OAAO,EAAE,iBAAiB,IAAI,cAAc,EAAE,CAAC"}
@@ -7,6 +7,7 @@ import { Command } from 'commander';
7
7
  import { ConfigManager } from '../config/index.js';
8
8
  import { EventLineStore } from '../eventline/store.js';
9
9
  import { formatTimestamp, formatDuration, formatBytes, shortenId, getKindSymbol, } from '../eventline/types.js';
10
+ import { groupEventsToPairs } from '../eventline/normalizer.js';
10
11
  import { output, getOutputOptions } from '../utils/output.js';
11
12
  /**
12
13
  * Render a single EventLine to terminal string
@@ -61,6 +62,40 @@ function renderEventLine(event, options) {
61
62
  }
62
63
  return parts.join(' ');
63
64
  }
65
+ /**
66
+ * Render an EventLinePair to terminal string
67
+ */
68
+ function renderPairLine(pair, options) {
69
+ const ts = formatTimestamp(pair.request.ts_ms, options.fulltime);
70
+ const status = pair.success ? '✓' : pair.response ? '✗' : '?';
71
+ // Build the line
72
+ const parts = [
73
+ ts,
74
+ '↔',
75
+ status,
76
+ pair.method.slice(0, 30).padEnd(30),
77
+ ];
78
+ // Session ID (shortened)
79
+ if (pair.request.session_id) {
80
+ parts.push(`ses=${shortenId(pair.request.session_id, 6)}`);
81
+ }
82
+ // Latency
83
+ if (pair.latency_ms !== undefined) {
84
+ parts.push(`lat=${pair.latency_ms}ms`);
85
+ }
86
+ else if (!pair.response) {
87
+ parts.push('(pending)');
88
+ }
89
+ // Response size
90
+ if (pair.response?.size_bytes !== undefined) {
91
+ parts.push(`size=${formatBytes(pair.response.size_bytes)}`);
92
+ }
93
+ // Error code
94
+ if (pair.response?.error_code !== undefined) {
95
+ parts.push(`err=${pair.response.error_code}`);
96
+ }
97
+ return parts.join(' ');
98
+ }
64
99
  /**
65
100
  * Print hint line
66
101
  */
@@ -91,18 +126,19 @@ export function createViewCommand(getConfigPath) {
91
126
  .option('--session <id>', 'Filter by session ID (partial match)')
92
127
  .option('--fulltime', 'Show full timestamp (YYYY-MM-DD HH:MM:SS.mmm)')
93
128
  .option('--with-sessions', 'Include session start/end events')
129
+ .option('--pairs', 'Show request/response pairs instead of individual events')
94
130
  .action(async (options) => {
95
131
  try {
96
132
  const manager = new ConfigManager(getConfigPath());
97
133
  const store = new EventLineStore(manager.getConfigDir());
98
134
  const events = store.getRecentEvents({
99
- limit: parseInt(options.limit, 10),
135
+ limit: parseInt(options.limit, 10) * (options.pairs ? 2 : 1), // Get more events for pairing
100
136
  since: options.since,
101
137
  errors: options.errors,
102
138
  method: options.method,
103
139
  connector: options.connector,
104
140
  session: options.session,
105
- includeSessionEvents: options.withSessions,
141
+ includeSessionEvents: options.withSessions && !options.pairs,
106
142
  });
107
143
  if (events.length === 0) {
108
144
  console.log('No events found.');
@@ -110,6 +146,37 @@ export function createViewCommand(getConfigPath) {
110
146
  console.log('hint: Run a scan first: pfscan scan start --id <connector>');
111
147
  return;
112
148
  }
149
+ // Pair mode
150
+ if (options.pairs) {
151
+ const pairs = groupEventsToPairs(events);
152
+ if (pairs.length === 0) {
153
+ console.log('No RPC pairs found.');
154
+ return;
155
+ }
156
+ // Limit pairs
157
+ const limitedPairs = pairs.slice(0, parseInt(options.limit, 10));
158
+ if (getOutputOptions().json) {
159
+ output(limitedPairs);
160
+ return;
161
+ }
162
+ // Print header for pairs
163
+ const header = options.fulltime
164
+ ? 'Time ↔ St Method Session Latency Size'
165
+ : 'Time ↔ St Method Session Latency Size';
166
+ console.log(header);
167
+ console.log('-'.repeat(header.length));
168
+ // Print pairs
169
+ for (const pair of limitedPairs) {
170
+ console.log(renderPairLine(pair, { fulltime: options.fulltime }));
171
+ }
172
+ // Print summary
173
+ console.log();
174
+ const successCount = limitedPairs.filter(p => p.success).length;
175
+ const errorCount = limitedPairs.filter(p => p.response && !p.success).length;
176
+ const pendingCount = limitedPairs.filter(p => !p.response).length;
177
+ console.log(`${limitedPairs.length} pairs: ${successCount} OK, ${errorCount} ERR, ${pendingCount} pending`);
178
+ return;
179
+ }
113
180
  if (getOutputOptions().json) {
114
181
  output(events);
115
182
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/commands/view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/commands/view.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAUtC;;GAEG;AACH,wBAAgB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AA2CD;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAkBjE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAkBjE;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAUlC;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAqBjF"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAUtC;;GAEG;AACH,wBAAgB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAEnD;AAsFD;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAkBjE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAkBjE;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAUlC;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAqBjF"}
@@ -4,7 +4,7 @@
4
4
  import Database from 'better-sqlite3';
5
5
  import { join } from 'path';
6
6
  import { mkdirSync, statSync } from 'fs';
7
- import { EVENTS_DB_SCHEMA, PROOFS_DB_SCHEMA, EVENTS_DB_VERSION, PROOFS_DB_VERSION } from './schema.js';
7
+ import { EVENTS_DB_SCHEMA, PROOFS_DB_SCHEMA, EVENTS_DB_VERSION, PROOFS_DB_VERSION, EVENTS_DB_MIGRATION_1_TO_2 } from './schema.js';
8
8
  import { getDefaultConfigDir } from '../utils/config-path.js';
9
9
  let eventsDb = null;
10
10
  let proofsDb = null;
@@ -16,7 +16,7 @@ export function getDbDir(configDir) {
16
16
  return configDir || getDefaultConfigDir();
17
17
  }
18
18
  /**
19
- * Initialize events.db
19
+ * Initialize events.db with migrations
20
20
  */
21
21
  function initEventsDb(dir) {
22
22
  const dbPath = join(dir, 'events.db');
@@ -25,13 +25,54 @@ function initEventsDb(dir) {
25
25
  db.pragma('foreign_keys = ON');
26
26
  // Check version
27
27
  const currentVersion = db.pragma('user_version', { simple: true });
28
- if (currentVersion < EVENTS_DB_VERSION) {
29
- // Run migrations
28
+ if (currentVersion === 0) {
29
+ // Fresh database - create full schema
30
30
  db.exec(EVENTS_DB_SCHEMA);
31
31
  db.pragma(`user_version = ${EVENTS_DB_VERSION}`);
32
32
  }
33
+ else if (currentVersion < EVENTS_DB_VERSION) {
34
+ // Run incremental migrations
35
+ runEventsMigrations(db, currentVersion);
36
+ db.pragma(`user_version = ${EVENTS_DB_VERSION}`);
37
+ }
33
38
  return db;
34
39
  }
40
+ /**
41
+ * Run incremental migrations for events.db
42
+ */
43
+ function runEventsMigrations(db, fromVersion) {
44
+ // Migration 1 → 2: Add seq, summary, payload_hash columns
45
+ if (fromVersion < 2) {
46
+ try {
47
+ // Run migration in a transaction
48
+ db.exec('BEGIN TRANSACTION');
49
+ // SQLite doesn't support multiple ALTER TABLE in one exec
50
+ // Split the migration into individual statements
51
+ const statements = EVENTS_DB_MIGRATION_1_TO_2
52
+ .split(';')
53
+ .map(s => s.trim())
54
+ .filter(s => s.length > 0 && !s.startsWith('--'));
55
+ for (const stmt of statements) {
56
+ try {
57
+ db.exec(stmt + ';');
58
+ }
59
+ catch (err) {
60
+ // Ignore "duplicate column" errors (column already exists)
61
+ if (err instanceof Error && !err.message.includes('duplicate column')) {
62
+ throw err;
63
+ }
64
+ }
65
+ }
66
+ db.exec('COMMIT');
67
+ }
68
+ catch (err) {
69
+ db.exec('ROLLBACK');
70
+ throw err;
71
+ }
72
+ }
73
+ // Future migrations go here:
74
+ // if (fromVersion < 3) { ... }
75
+ }
35
76
  /**
36
77
  * Initialize proofs.db
37
78
  */
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,9 @@ export declare class EventsStore {
15
15
  saveEvent(sessionId: string, direction: EventDirection, kind: EventKind, options?: {
16
16
  rpcId?: string;
17
17
  rawJson?: string;
18
+ seq?: number;
19
+ summary?: string;
20
+ payloadHash?: string;
18
21
  }): Event;
19
22
  getEventsBySession(sessionId: string, limit?: number): Event[];
20
23
  getRecentEventsByConnector(connectorId: string, limit?: number): Event[];
@@ -1 +1 @@
1
- {"version":3,"file":"events-store.d.ts","sourceRoot":"","sources":["../../src/db/events-store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,OAAO,EACP,UAAU,EACV,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,qBAAa,WAAW;IACtB,OAAO,CAAC,SAAS,CAAC,CAAS;gBAEf,SAAS,CAAC,EAAE,MAAM;IAI9B,OAAO,KAAK,EAAE,GAEb;IAID,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IA6B3C,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI;IAO3D,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI;IAK7C,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAgB/E,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAelD,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAOvC,SAAS,CACP,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,cAAc,EACzB,IAAI,EAAE,SAAS,EACf,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KACb,GACL,KAAK;IA6BR,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE;IAS9D,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,KAAK,EAAE;IAc5E,WAAW,CACT,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO;IA6BV,eAAe,CACb,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI;IAeP,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE;IASlD;;OAEG;IACH,kBAAkB,CAAC,OAAO,GAAE;QAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,cAAc,EAAE;IAmEzB;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM;IAc5C;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB,GAAG,MAAM;IAyBV;;OAEG;IACH,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAcjD;;OAEG;IACH,cAAc,IAAI,MAAM;IAMxB;;OAEG;IACH,MAAM,IAAI,IAAI;CAGf"}
1
+ {"version":3,"file":"events-store.d.ts","sourceRoot":"","sources":["../../src/db/events-store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,OAAO,EACP,UAAU,EACV,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,qBAAa,WAAW;IACtB,OAAO,CAAC,SAAS,CAAC,CAAS;gBAEf,SAAS,CAAC,EAAE,MAAM;IAI9B,OAAO,KAAK,EAAE,GAEb;IAID,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IA6B3C,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI;IAO3D,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI;IAK7C,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAgB/E,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAelD,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAOvC,SAAS,CACP,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,cAAc,EACzB,IAAI,EAAE,SAAS,EACf,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;KACjB,GACL,KAAK;IAmCR,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE;IAS9D,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,KAAK,EAAE;IAc5E,WAAW,CACT,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO;IA6BV,eAAe,CACb,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI;IAeP,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE;IASlD;;OAEG;IACH,kBAAkB,CAAC,OAAO,GAAE;QAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,cAAc,EAAE;IAmEzB;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM;IAc5C;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB,GAAG,MAAM;IAyBV;;OAEG;IACH,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAcjD;;OAEG;IACH,cAAc,IAAI,MAAM;IAMxB;;OAEG;IACH,MAAM,IAAI,IAAI;CAGf"}
@@ -81,13 +81,16 @@ export class EventsStore {
81
81
  direction,
82
82
  kind,
83
83
  ts: new Date().toISOString(),
84
+ seq: options.seq || null,
85
+ summary: options.summary || null,
86
+ payload_hash: options.payloadHash || null,
84
87
  raw_json: options.rawJson || null,
85
88
  };
86
89
  const stmt = this.db.prepare(`
87
- INSERT INTO events (event_id, session_id, rpc_id, direction, kind, ts, raw_json)
88
- VALUES (?, ?, ?, ?, ?, ?, ?)
90
+ INSERT INTO events (event_id, session_id, rpc_id, direction, kind, ts, seq, summary, payload_hash, raw_json)
91
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
89
92
  `);
90
- stmt.run(event.event_id, event.session_id, event.rpc_id, event.direction, event.kind, event.ts, event.raw_json);
93
+ stmt.run(event.event_id, event.session_id, event.rpc_id, event.direction, event.kind, event.ts, event.seq, event.summary, event.payload_hash, event.raw_json);
91
94
  return event;
92
95
  }
93
96
  getEventsBySession(sessionId, limit) {
@@ -1 +1 @@
1
- {"version":3,"file":"events-store.js","sourceRoot":"","sources":["../../src/db/events-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events-store.js","sourceRoot":"","sources":["../../src/db/events-store.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,14 @@
1
1
  /**
2
2
  * Database schema definitions and migrations
3
+ * Phase 2.1: Schema version 2 with seq, summary, payload_hash
3
4
  */
4
- export declare const EVENTS_DB_VERSION = 1;
5
+ export declare const EVENTS_DB_VERSION = 2;
5
6
  export declare const PROOFS_DB_VERSION = 1;
6
- export declare const EVENTS_DB_SCHEMA = "\n-- Sessions table\nCREATE TABLE IF NOT EXISTS sessions (\n session_id TEXT PRIMARY KEY,\n connector_id TEXT NOT NULL,\n started_at TEXT NOT NULL,\n ended_at TEXT,\n exit_reason TEXT CHECK(exit_reason IN ('normal', 'error', 'killed')),\n protected INTEGER DEFAULT 0,\n created_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_sessions_connector ON sessions(connector_id);\nCREATE INDEX IF NOT EXISTS idx_sessions_started ON sessions(started_at);\nCREATE INDEX IF NOT EXISTS idx_sessions_protected ON sessions(protected);\n\n-- RPC calls table\nCREATE TABLE IF NOT EXISTS rpc_calls (\n rpc_id TEXT NOT NULL,\n session_id TEXT NOT NULL,\n method TEXT NOT NULL,\n request_ts TEXT NOT NULL,\n response_ts TEXT,\n success INTEGER,\n error_code INTEGER,\n PRIMARY KEY (rpc_id, session_id),\n FOREIGN KEY (session_id) REFERENCES sessions(session_id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_rpc_calls_session ON rpc_calls(session_id);\nCREATE INDEX IF NOT EXISTS idx_rpc_calls_method ON rpc_calls(method);\n\n-- Events table\nCREATE TABLE IF NOT EXISTS events (\n event_id TEXT PRIMARY KEY,\n session_id TEXT NOT NULL,\n rpc_id TEXT,\n direction TEXT NOT NULL CHECK(direction IN ('client_to_server', 'server_to_client')),\n kind TEXT NOT NULL CHECK(kind IN ('request', 'response', 'notification', 'transport_event')),\n ts TEXT NOT NULL,\n raw_json TEXT,\n FOREIGN KEY (session_id) REFERENCES sessions(session_id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_events_session ON events(session_id);\nCREATE INDEX IF NOT EXISTS idx_events_ts ON events(ts);\nCREATE INDEX IF NOT EXISTS idx_events_rpc ON events(rpc_id);\n";
7
+ export declare const EVENTS_DB_SCHEMA = "\n-- Sessions table\nCREATE TABLE IF NOT EXISTS sessions (\n session_id TEXT PRIMARY KEY,\n connector_id TEXT NOT NULL,\n started_at TEXT NOT NULL,\n ended_at TEXT,\n exit_reason TEXT CHECK(exit_reason IN ('normal', 'error', 'killed')),\n protected INTEGER DEFAULT 0,\n created_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_sessions_connector ON sessions(connector_id);\nCREATE INDEX IF NOT EXISTS idx_sessions_started ON sessions(started_at);\nCREATE INDEX IF NOT EXISTS idx_sessions_protected ON sessions(protected);\n\n-- RPC calls table\nCREATE TABLE IF NOT EXISTS rpc_calls (\n rpc_id TEXT NOT NULL,\n session_id TEXT NOT NULL,\n method TEXT NOT NULL,\n request_ts TEXT NOT NULL,\n response_ts TEXT,\n success INTEGER,\n error_code INTEGER,\n PRIMARY KEY (rpc_id, session_id),\n FOREIGN KEY (session_id) REFERENCES sessions(session_id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_rpc_calls_session ON rpc_calls(session_id);\nCREATE INDEX IF NOT EXISTS idx_rpc_calls_method ON rpc_calls(method);\n\n-- Events table (version 2: added seq, summary, payload_hash)\nCREATE TABLE IF NOT EXISTS events (\n event_id TEXT PRIMARY KEY,\n session_id TEXT NOT NULL,\n rpc_id TEXT,\n direction TEXT NOT NULL CHECK(direction IN ('client_to_server', 'server_to_client')),\n kind TEXT NOT NULL CHECK(kind IN ('request', 'response', 'notification', 'transport_event')),\n ts TEXT NOT NULL,\n seq INTEGER,\n summary TEXT,\n payload_hash TEXT,\n raw_json TEXT,\n FOREIGN KEY (session_id) REFERENCES sessions(session_id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_events_session ON events(session_id);\nCREATE INDEX IF NOT EXISTS idx_events_ts ON events(ts);\nCREATE INDEX IF NOT EXISTS idx_events_rpc ON events(rpc_id);\nCREATE INDEX IF NOT EXISTS idx_events_seq ON events(session_id, seq);\nCREATE INDEX IF NOT EXISTS idx_events_payload_hash ON events(payload_hash);\n";
8
+ /**
9
+ * Migration from version 1 to version 2
10
+ * Adds: seq, summary, payload_hash columns to events table
11
+ */
12
+ export declare const EVENTS_DB_MIGRATION_1_TO_2 = "\n-- Add seq column (sequence number within session)\nALTER TABLE events ADD COLUMN seq INTEGER;\n\n-- Add summary column (human-readable summary)\nALTER TABLE events ADD COLUMN summary TEXT;\n\n-- Add payload_hash column (SHA-256 first 16 chars)\nALTER TABLE events ADD COLUMN payload_hash TEXT;\n\n-- Create index for seq lookups\nCREATE INDEX IF NOT EXISTS idx_events_seq ON events(session_id, seq);\n\n-- Create index for payload_hash lookups\nCREATE INDEX IF NOT EXISTS idx_events_payload_hash ON events(payload_hash);\n";
7
13
  export declare const PROOFS_DB_SCHEMA = "\n-- Proofs table (immutable, never pruned)\nCREATE TABLE IF NOT EXISTS proofs (\n proof_id TEXT PRIMARY KEY,\n connector_id TEXT NOT NULL,\n session_id TEXT,\n rpc_id TEXT,\n method TEXT,\n payload_hash TEXT NOT NULL,\n hash_algo TEXT NOT NULL,\n inscriber_type TEXT NOT NULL,\n inscriber_ref TEXT NOT NULL,\n artifact_uri TEXT,\n created_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_proofs_connector ON proofs(connector_id);\nCREATE INDEX IF NOT EXISTS idx_proofs_session ON proofs(session_id);\nCREATE INDEX IF NOT EXISTS idx_proofs_created ON proofs(created_at);\n";
8
14
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAGnC,eAAO,MAAM,gBAAgB,woDA+C5B,CAAC;AAGF,eAAO,MAAM,gBAAgB,klBAmB5B,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAGnC,eAAO,MAAM,gBAAgB,i4DAoD5B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,khBAetC,CAAC;AAGF,eAAO,MAAM,gBAAgB,klBAmB5B,CAAC"}