@senpi/runtime 3.0.6-dev.runtime-phase-2.20260630134451 → 3.0.6-dev.runtime-phase-2.20260630134536

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 (141) hide show
  1. package/dist/actions/action-events.d.ts.map +1 -1
  2. package/dist/actions/action-events.js +39 -5
  3. package/dist/actions/action-events.js.map +1 -1
  4. package/dist/actions/event-derivation.d.ts +2 -0
  5. package/dist/actions/event-derivation.d.ts.map +1 -1
  6. package/dist/actions/event-derivation.js +2 -0
  7. package/dist/actions/event-derivation.js.map +1 -1
  8. package/dist/cli/guide-commands.d.ts.map +1 -1
  9. package/dist/cli/guide-commands.js +61 -0
  10. package/dist/cli/guide-commands.js.map +1 -1
  11. package/dist/cli/senpi-commands.d.ts +14 -0
  12. package/dist/cli/senpi-commands.d.ts.map +1 -1
  13. package/dist/cli/senpi-commands.js +386 -2
  14. package/dist/cli/senpi-commands.js.map +1 -1
  15. package/dist/dsl/events/initial-state.d.ts.map +1 -1
  16. package/dist/dsl/events/initial-state.js +1 -0
  17. package/dist/dsl/events/initial-state.js.map +1 -1
  18. package/dist/dsl/monitor/dsl-failure-events.d.ts +42 -0
  19. package/dist/dsl/monitor/dsl-failure-events.d.ts.map +1 -0
  20. package/dist/dsl/monitor/dsl-failure-events.js +73 -0
  21. package/dist/dsl/monitor/dsl-failure-events.js.map +1 -0
  22. package/dist/dsl/monitor/process-one-position.d.ts.map +1 -1
  23. package/dist/dsl/monitor/process-one-position.js +46 -37
  24. package/dist/dsl/monitor/process-one-position.js.map +1 -1
  25. package/dist/dsl/plugin/index.d.ts.map +1 -1
  26. package/dist/dsl/plugin/index.js +6 -0
  27. package/dist/dsl/plugin/index.js.map +1 -1
  28. package/dist/health/types.d.ts +14 -0
  29. package/dist/health/types.d.ts.map +1 -1
  30. package/dist/health/types.js.map +1 -1
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +220 -7
  33. package/dist/index.js.map +1 -1
  34. package/dist/risk/risk-audit-log.d.ts +7 -0
  35. package/dist/risk/risk-audit-log.d.ts.map +1 -1
  36. package/dist/risk/risk-audit-log.js +48 -1
  37. package/dist/risk/risk-audit-log.js.map +1 -1
  38. package/dist/runtime/lifecycle-events.d.ts +43 -0
  39. package/dist/runtime/lifecycle-events.d.ts.map +1 -1
  40. package/dist/runtime/lifecycle-events.js +61 -0
  41. package/dist/runtime/lifecycle-events.js.map +1 -1
  42. package/dist/runtime/runtime-schema.d.ts +63 -9
  43. package/dist/runtime/runtime-schema.d.ts.map +1 -1
  44. package/dist/runtime/runtime-schema.js +8 -1
  45. package/dist/runtime/runtime-schema.js.map +1 -1
  46. package/dist/runtime/runtime.d.ts +8 -0
  47. package/dist/runtime/runtime.d.ts.map +1 -1
  48. package/dist/runtime/runtime.js +104 -5
  49. package/dist/runtime/runtime.js.map +1 -1
  50. package/dist/runtime/supervisor/long-running-supervisor.d.ts +3 -0
  51. package/dist/runtime/supervisor/long-running-supervisor.d.ts.map +1 -1
  52. package/dist/runtime/supervisor/long-running-supervisor.js +27 -53
  53. package/dist/runtime/supervisor/long-running-supervisor.js.map +1 -1
  54. package/dist/runtime-api/intake/intake-events.d.ts +44 -0
  55. package/dist/runtime-api/intake/intake-events.d.ts.map +1 -0
  56. package/dist/runtime-api/intake/intake-events.js +131 -0
  57. package/dist/runtime-api/intake/intake-events.js.map +1 -0
  58. package/dist/runtime-api/intake/scanner-launcher.d.ts +2 -0
  59. package/dist/runtime-api/intake/scanner-launcher.d.ts.map +1 -1
  60. package/dist/runtime-api/intake/scanner-launcher.js +58 -15
  61. package/dist/runtime-api/intake/scanner-launcher.js.map +1 -1
  62. package/dist/runtime-api/intake/scanner-registry.d.ts +3 -0
  63. package/dist/runtime-api/intake/scanner-registry.d.ts.map +1 -1
  64. package/dist/runtime-api/intake/scanner-registry.js +3 -0
  65. package/dist/runtime-api/intake/scanner-registry.js.map +1 -1
  66. package/dist/runtime-api/intake/supervisor-events.d.ts +61 -0
  67. package/dist/runtime-api/intake/supervisor-events.d.ts.map +1 -0
  68. package/dist/runtime-api/intake/supervisor-events.js +173 -0
  69. package/dist/runtime-api/intake/supervisor-events.js.map +1 -0
  70. package/dist/runtime-api/routes/signals.d.ts.map +1 -1
  71. package/dist/runtime-api/routes/signals.js +119 -27
  72. package/dist/runtime-api/routes/signals.js.map +1 -1
  73. package/dist/runtime-api/server.d.ts.map +1 -1
  74. package/dist/runtime-api/server.js +10 -1
  75. package/dist/runtime-api/server.js.map +1 -1
  76. package/dist/scanners/engine/engine.d.ts.map +1 -1
  77. package/dist/scanners/engine/engine.js +3 -0
  78. package/dist/scanners/engine/engine.js.map +1 -1
  79. package/dist/scanners/runtime-module.d.ts.map +1 -1
  80. package/dist/scanners/runtime-module.js +6 -0
  81. package/dist/scanners/runtime-module.js.map +1 -1
  82. package/dist/senpi/client.d.ts.map +1 -1
  83. package/dist/senpi/client.js +50 -5
  84. package/dist/senpi/client.js.map +1 -1
  85. package/dist/state/state-events.d.ts +13 -0
  86. package/dist/state/state-events.d.ts.map +1 -0
  87. package/dist/state/state-events.js +22 -0
  88. package/dist/state/state-events.js.map +1 -0
  89. package/dist/state/state-manager.d.ts.map +1 -1
  90. package/dist/state/state-manager.js +14 -1
  91. package/dist/state/state-manager.js.map +1 -1
  92. package/dist/telemetry/event-builders.d.ts +0 -2
  93. package/dist/telemetry/event-builders.d.ts.map +1 -1
  94. package/dist/telemetry/event-builders.js.map +1 -1
  95. package/dist/telemetry/event-store.d.ts +66 -0
  96. package/dist/telemetry/event-store.d.ts.map +1 -0
  97. package/dist/telemetry/event-store.js +202 -0
  98. package/dist/telemetry/event-store.js.map +1 -0
  99. package/dist/telemetry/identity.d.ts +10 -0
  100. package/dist/telemetry/identity.d.ts.map +1 -1
  101. package/dist/telemetry/identity.js +1 -0
  102. package/dist/telemetry/identity.js.map +1 -1
  103. package/dist/telemetry/metrics.d.ts +137 -15
  104. package/dist/telemetry/metrics.d.ts.map +1 -1
  105. package/dist/telemetry/metrics.js +357 -74
  106. package/dist/telemetry/metrics.js.map +1 -1
  107. package/dist/telemetry/otel-sdk.d.ts +1 -1
  108. package/dist/telemetry/otel-sdk.js +1 -1
  109. package/dist/telemetry/spans/gen-ai.d.ts +4 -0
  110. package/dist/telemetry/spans/gen-ai.d.ts.map +1 -1
  111. package/dist/telemetry/spans/gen-ai.js +9 -0
  112. package/dist/telemetry/spans/gen-ai.js.map +1 -1
  113. package/dist/telemetry/spans/redact-pii.d.ts.map +1 -1
  114. package/dist/telemetry/spans/redact-pii.js +4 -1
  115. package/dist/telemetry/spans/redact-pii.js.map +1 -1
  116. package/dist/telemetry/spans/span-hooks.d.ts +7 -0
  117. package/dist/telemetry/spans/span-hooks.d.ts.map +1 -1
  118. package/dist/telemetry/spans/span-hooks.js +179 -24
  119. package/dist/telemetry/spans/span-hooks.js.map +1 -1
  120. package/dist/telemetry/tool-plane.d.ts +31 -0
  121. package/dist/telemetry/tool-plane.d.ts.map +1 -0
  122. package/dist/telemetry/tool-plane.js +70 -0
  123. package/dist/telemetry/tool-plane.js.map +1 -0
  124. package/dist/telemetry/trace-identity.d.ts.map +1 -1
  125. package/dist/telemetry/trace-identity.js +3 -0
  126. package/dist/telemetry/trace-identity.js.map +1 -1
  127. package/dist/types/dsl/index.d.ts +6 -0
  128. package/dist/types/dsl/index.d.ts.map +1 -1
  129. package/dist/utils/event-catalog.d.ts +237 -0
  130. package/dist/utils/event-catalog.d.ts.map +1 -1
  131. package/dist/utils/event-catalog.js +51 -0
  132. package/dist/utils/event-catalog.js.map +1 -1
  133. package/dist/utils/logger.d.ts +5 -0
  134. package/dist/utils/logger.d.ts.map +1 -1
  135. package/dist/utils/logger.js +24 -22
  136. package/dist/utils/logger.js.map +1 -1
  137. package/dist/utils/wallet-address.d.ts +3 -0
  138. package/dist/utils/wallet-address.d.ts.map +1 -0
  139. package/dist/utils/wallet-address.js +17 -0
  140. package/dist/utils/wallet-address.js.map +1 -0
  141. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -14,6 +14,7 @@
14
14
  import { readFileSync } from "node:fs";
15
15
  import { join, dirname } from "node:path";
16
16
  import { SenpiClient } from "./senpi/client.js";
17
+ import { AuditQueryError } from "./runtime/audit-query.types.js";
17
18
  import { buildRuntimeStateDir, archiveStateDir } from "./runtime/state-layout.js";
18
19
  import { registerSenpiCli } from "./cli/senpi-commands.js";
19
20
  import { readSenpiCliStore, resolveSenpiApiKeyFromStore, resolveSenpiBaseStateDir, resolveTelegramChatIdFromStore, } from "./cli/senpi-cli-config.js";
@@ -27,6 +28,8 @@ import { createScannerProvidersForRun } from "./runtime/create-scanner-providers
27
28
  import { initDsl } from "./dsl/index.js";
28
29
  import { initHealth } from "./health/index.js";
29
30
  import { initRisk } from "./risk/index.js";
31
+ import { readRiskAuditEntries } from "./risk/risk-audit-log.js";
32
+ import { readEvents } from "./telemetry/event-store.js";
30
33
  import { VERSION } from "./version.js";
31
34
  import { resolvePackageName } from "./runtime/auto-update/resolve-package-name.js";
32
35
  import { runOpenClawPluginsUpdate } from "./runtime/auto-update/run-update-command.js";
@@ -36,6 +39,10 @@ import { initOtelSdk, shutdownOtelSdk } from "./telemetry/otel-sdk.js";
36
39
  import { getLogLevel, getLogLevelSource, parseLogLevel, setErrorNotifier, setLogLevel, } from "./utils/logger.js";
37
40
  import { ExternalScannerIngestError, } from "./scanners/external-scanner-receiver.js";
38
41
  import { createLogger } from "./utils/logger.js";
42
+ import { EVENT_NAME, eventAttrs } from "./utils/event-catalog.js";
43
+ import { emitEvent } from "./actions/event-derivation.js";
44
+ import { buildRuntimeCreatedEvent, buildRuntimeDeletedEvent } from "./runtime/lifecycle-events.js";
45
+ import { isWalletAddress } from "./utils/wallet-address.js";
39
46
  import { fileURLToPath } from "node:url";
40
47
  import { loadApiConfig } from "./runtime-api/config.js";
41
48
  import { startApi } from "./runtime-api/lifecycle.js";
@@ -325,6 +332,24 @@ const senpiRuntimePlugin = {
325
332
  // PluginLogger surface (info/warn/error) lacks `debug`, while the
326
333
  // Logger contract used by `runtime-api/` includes it.
327
334
  const apiLogger = createLogger("[senpi-core][api]");
335
+ // A gateway seam failed to wire/launch a runtime's external scanner stack: the runtime is up but
336
+ // runs blind on internal scanners only. Two records, by design: a first-class `runtime.scanners_unwired`
337
+ // event (the queryable/alertable fact, by phase) and the migrated exception-form `logger.error`
338
+ // (carries the stack + trace context, and fans the error notifier so a blind runtime still pages).
339
+ const eventScannersUnwired = (phase, runtimeId, wallet, message, error) => {
340
+ apiLogger.event(EVENT_NAME.runtimeScannersUnwired, "error", {
341
+ body: message,
342
+ attributes: eventAttrs({
343
+ "senpi.runtime.id": runtimeId,
344
+ "senpi.strategy.address": wallet ? wallet.toLowerCase() : undefined,
345
+ "senpi.scanners.launch_phase": phase,
346
+ }),
347
+ });
348
+ apiLogger.error(message, error, {
349
+ "senpi.runtime.id": runtimeId,
350
+ "senpi.scanners.launch_phase": phase,
351
+ });
352
+ };
328
353
  const lifecycleChatId = resolveTelegramChatIdFromStore(senpiCliStore);
329
354
  const lifecycleNotifications = lifecycleChatId
330
355
  ? createNotificationService({
@@ -528,8 +553,8 @@ const senpiRuntimePlugin = {
528
553
  }
529
554
  catch (mountErr) {
530
555
  // Mount failure is non-fatal: the runtime itself is already up.
531
- // Log and skip the launcher for this runtime.
532
- apiLogger.error("[senpi-runtime] scanner mount failed — runtime running without supervised scanners", { runtimeId: entry.id, err: mountErr });
556
+ // Event it and skip the launcher for this runtime.
557
+ eventScannersUnwired("mount", entry.id, entry.wallet, "[senpi-runtime] scanner mount failed — runtime running without supervised scanners", mountErr);
533
558
  }
534
559
  }
535
560
  }
@@ -608,7 +633,7 @@ const senpiRuntimePlugin = {
608
633
  catch (startErr) {
609
634
  await launcher.stop().catch(() => { });
610
635
  launchers.delete(id);
611
- apiLogger.error("[senpi-runtime] supervised scanner launch failed — runtime running without it", { err: startErr });
636
+ eventScannersUnwired("launch", id, runtimeHandles.get(id)?.wallet, "[senpi-runtime] supervised scanner launch failed — runtime running without it", startErr);
612
637
  }
613
638
  }
614
639
  }
@@ -836,6 +861,9 @@ const senpiRuntimePlugin = {
836
861
  runtimeId: resolvedId,
837
862
  });
838
863
  runtimeHandles.set(resolvedId, handle);
864
+ // Registry create fact — distinct from the runtime.started boot transition (which also fires
865
+ // on a transient restart). Emitted inside emitEvent's guard so telemetry never fails the install.
866
+ emitEvent(apiLogger, () => buildRuntimeCreatedEvent({ runtimeId: resolvedId, address: wallet, recipeName: runtimeName }));
839
867
  // ── hot-install supervised scanner wire ───────────────────────────────
840
868
  // Live-install path: used when a runtime is registered after boot via
841
869
  // senpi.installRuntime, while the API is already listening — the
@@ -876,13 +904,13 @@ const senpiRuntimePlugin = {
876
904
  }
877
905
  catch (startErr) {
878
906
  await hotLauncher.stop().catch(() => { });
879
- apiLogger.error("[senpi-runtime] hot-install supervised scanner launch failed — runtime running without it", { runtimeId: resolvedId, err: startErr });
907
+ eventScannersUnwired("install_launch", resolvedId, wallet, "[senpi-runtime] hot-install supervised scanner launch failed — runtime running without it", startErr);
880
908
  }
881
909
  }
882
910
  }
883
911
  catch (wireErr) {
884
912
  // Wire failure must NOT fail the install — the runtime is already up.
885
- apiLogger.error("[senpi-runtime] hot-install wiring failed — runtime running without supervised scanners", { runtimeId: resolvedId, err: wireErr });
913
+ eventScannersUnwired("install_wire", resolvedId, wallet, "[senpi-runtime] hot-install wiring failed — runtime running without supervised scanners", wireErr);
886
914
  }
887
915
  }
888
916
  // ──────────────────────────────────────────────────────────────────────
@@ -971,6 +999,14 @@ const senpiRuntimePlugin = {
971
999
  const next = registry.runtimes.filter((e) => e.id !== targetId);
972
1000
  await writeRegistry(baseStateDir, { ...registry, runtimes: next });
973
1001
  }
1002
+ // Registry delete fact — the permanent-removal discriminator a transient runtime.stopped can't
1003
+ // give. Unconditional (a never-booted runtime stops no handle, so emits no runtime.stopped) and
1004
+ // inside emitEvent's guard so telemetry never fails the delete.
1005
+ emitEvent(apiLogger, () => buildRuntimeDeletedEvent({
1006
+ runtimeId: targetId,
1007
+ address: deletedEntry?.wallet,
1008
+ hadLiveHandle: Boolean(handle),
1009
+ }));
974
1010
  respond(true, { id: targetId });
975
1011
  }, { scope: "operator.write" });
976
1012
  /**
@@ -1193,7 +1229,9 @@ const senpiRuntimePlugin = {
1193
1229
  try {
1194
1230
  const state = await handle.getSystemState();
1195
1231
  respond(true, {
1196
- state: state ? { ...state, runtimeId } : null,
1232
+ state: state
1233
+ ? enrichScannerLiveness({ ...state, runtimeId }, sharedIntakeContext)
1234
+ : null,
1197
1235
  updater,
1198
1236
  });
1199
1237
  }
@@ -1206,7 +1244,7 @@ const senpiRuntimePlugin = {
1206
1244
  }
1207
1245
  return;
1208
1246
  }
1209
- const states = await collectRuntimeSystemStates(runtimeHandles, api.logger, baseStateDir);
1247
+ const states = (await collectRuntimeSystemStates(runtimeHandles, api.logger, baseStateDir)).map((s) => enrichScannerLiveness(s, sharedIntakeContext));
1210
1248
  respond(true, { states, updater });
1211
1249
  }, { scope: "operator.read" });
1212
1250
  /**
@@ -1359,6 +1397,157 @@ const senpiRuntimePlugin = {
1359
1397
  });
1360
1398
  }
1361
1399
  }, { scope: "operator.read" });
1400
+ // Backend trade-audit trail (MCP tool calls + AI reasoning), already
1401
+ // reachable on HTTP `/audit`. Passes through the caller-controlled subset
1402
+ // of the audit_query contract; resource scoping (wallet → strategyId) is
1403
+ // owned by handle.auditQuery, never the caller.
1404
+ api.registerGatewayMethod("senpi.auditQuery", async (ctx) => {
1405
+ const respond = ctx.respond;
1406
+ const runtimeId = typeof ctx.params?.runtimeId === "string" ? ctx.params.runtimeId : undefined;
1407
+ if (!runtimeId) {
1408
+ respond(false, undefined, { code: "INVALID_REQUEST", message: "runtimeId is required" });
1409
+ return;
1410
+ }
1411
+ const handle = getRuntimeHandleOrRespond(runtimeHandles, runtimeId, respond);
1412
+ if (!handle) {
1413
+ return;
1414
+ }
1415
+ const p = ctx.params ?? {};
1416
+ const args = {};
1417
+ if (typeof p.tool_name === "string")
1418
+ args.tool_name = p.tool_name;
1419
+ if (p.action_type === "read" || p.action_type === "create" || p.action_type === "update" || p.action_type === "delete") {
1420
+ args.action_type = p.action_type;
1421
+ }
1422
+ if (typeof p.success === "boolean")
1423
+ args.success = p.success;
1424
+ if (typeof p.start_time === "string")
1425
+ args.start_time = p.start_time;
1426
+ if (typeof p.end_time === "string")
1427
+ args.end_time = p.end_time;
1428
+ if (typeof p.limit === "number")
1429
+ args.limit = p.limit;
1430
+ if (typeof p.offset === "number")
1431
+ args.offset = p.offset;
1432
+ try {
1433
+ const result = await handle.auditQuery(args);
1434
+ respond(true, { result, strategyId: handle.getStrategyId() });
1435
+ }
1436
+ catch (err) {
1437
+ if (err instanceof AuditQueryError) {
1438
+ respond(false, undefined, { code: err.code, message: err.message });
1439
+ return;
1440
+ }
1441
+ api.logger.warn("[senpi-runtime] auditQuery error", { runtimeId, err });
1442
+ respond(false, undefined, {
1443
+ code: "INTERNAL_ERROR",
1444
+ message: `Failed to query audit trail: ${formatGatewayError(err)}`,
1445
+ });
1446
+ }
1447
+ }, { scope: "operator.read" });
1448
+ // Per-wallet risk gate-check audit log (on-disk JSONL). The Runtime keeps
1449
+ // its state root private, so re-derive it from baseStateDir + the handle's
1450
+ // wallet (same helper the writer's stateDir was built with); the writer
1451
+ // nests entries under `<root>/<address>/risk-guard/audit.jsonl`.
1452
+ api.registerGatewayMethod("senpi.getRiskAudit", async (ctx) => {
1453
+ const respond = ctx.respond;
1454
+ const runtimeId = typeof ctx.params?.runtimeId === "string" ? ctx.params.runtimeId : undefined;
1455
+ if (!runtimeId) {
1456
+ respond(false, undefined, { code: "INVALID_REQUEST", message: "runtimeId is required" });
1457
+ return;
1458
+ }
1459
+ const handle = getRuntimeHandleOrRespond(runtimeHandles, runtimeId, respond);
1460
+ if (!handle) {
1461
+ return;
1462
+ }
1463
+ const resolvedAddress = typeof ctx.params?.address === "string" && ctx.params.address.length > 0
1464
+ ? ctx.params.address
1465
+ : handle.wallet;
1466
+ if (!resolvedAddress) {
1467
+ respond(false, undefined, {
1468
+ code: "INVALID_REQUEST",
1469
+ message: "address is required when the runtime wallet is unknown",
1470
+ });
1471
+ return;
1472
+ }
1473
+ // Path safety: the address builds the on-disk audit path; reject a non-wallet before the read.
1474
+ if (!isWalletAddress(resolvedAddress)) {
1475
+ respond(false, undefined, { code: "INVALID_REQUEST", message: "address is not a valid wallet" });
1476
+ return;
1477
+ }
1478
+ const limit = typeof ctx.params?.limit === "number" && ctx.params.limit > 0 ? ctx.params.limit : 100;
1479
+ const stateDir = buildRuntimeStateDir(baseStateDir, runtimeId, handle.wallet ?? "");
1480
+ try {
1481
+ const entries = await readRiskAuditEntries(stateDir, resolvedAddress, limit);
1482
+ respond(true, { entries, address: resolvedAddress });
1483
+ }
1484
+ catch (err) {
1485
+ api.logger.warn("[senpi-runtime] getRiskAudit error", { runtimeId, err });
1486
+ respond(false, undefined, {
1487
+ code: "INTERNAL_ERROR",
1488
+ message: `Failed to read risk audit: ${formatGatewayError(err)}`,
1489
+ });
1490
+ }
1491
+ }, { scope: "operator.read" });
1492
+ // Per-strategy local domain-event ring (on-disk JSONL) — the trade narrative, queryable locally.
1493
+ // Same state-root re-derivation as getRiskAudit: the Runtime keeps its root private, so rebuild it
1494
+ // from baseStateDir + the handle's wallet; the writer nests rows under `<root>/strategies/<address>/events/`.
1495
+ api.registerGatewayMethod("senpi.getEvents", async (ctx) => {
1496
+ const respond = ctx.respond;
1497
+ const runtimeId = typeof ctx.params?.runtimeId === "string" ? ctx.params.runtimeId : undefined;
1498
+ if (!runtimeId) {
1499
+ respond(false, undefined, { code: "INVALID_REQUEST", message: "runtimeId is required" });
1500
+ return;
1501
+ }
1502
+ const handle = getRuntimeHandleOrRespond(runtimeHandles, runtimeId, respond);
1503
+ if (!handle) {
1504
+ return;
1505
+ }
1506
+ const p = ctx.params ?? {};
1507
+ const resolvedAddress = typeof p.address === "string" && p.address.length > 0 ? p.address : handle.wallet;
1508
+ if (!resolvedAddress) {
1509
+ respond(false, undefined, {
1510
+ code: "INVALID_REQUEST",
1511
+ message: "address is required when the runtime wallet is unknown",
1512
+ });
1513
+ return;
1514
+ }
1515
+ // Path safety: the address builds the on-disk events path; reject a non-wallet before the read.
1516
+ if (!isWalletAddress(resolvedAddress)) {
1517
+ respond(false, undefined, { code: "INVALID_REQUEST", message: "address is not a valid wallet" });
1518
+ return;
1519
+ }
1520
+ const query = {};
1521
+ if (typeof p.name === "string")
1522
+ query.name = p.name;
1523
+ if (typeof p.asset === "string")
1524
+ query.asset = p.asset;
1525
+ if (p.level === "debug" || p.level === "info" || p.level === "warn" || p.level === "error") {
1526
+ query.level = p.level;
1527
+ }
1528
+ // ISO 8601 (or epoch-ms) time bounds → epoch ms; Date.parse returns NaN (not undefined) on
1529
+ // unparseable input, so Number.isFinite is the carry — no separate undefined check needed.
1530
+ const sinceMs = typeof p.since === "string" ? Date.parse(p.since) : NaN;
1531
+ if (Number.isFinite(sinceMs))
1532
+ query.sinceMs = sinceMs;
1533
+ const untilMs = typeof p.until === "string" ? Date.parse(p.until) : NaN;
1534
+ if (Number.isFinite(untilMs))
1535
+ query.untilMs = untilMs;
1536
+ if (typeof p.limit === "number" && p.limit > 0)
1537
+ query.limit = p.limit;
1538
+ const stateDir = buildRuntimeStateDir(baseStateDir, runtimeId, handle.wallet ?? "");
1539
+ try {
1540
+ const entries = await readEvents(stateDir, resolvedAddress, query);
1541
+ respond(true, { entries, address: resolvedAddress });
1542
+ }
1543
+ catch (err) {
1544
+ api.logger.warn("[senpi-runtime] getEvents error", { runtimeId, err });
1545
+ respond(false, undefined, {
1546
+ code: "INTERNAL_ERROR",
1547
+ message: `Failed to read events: ${formatGatewayError(err)}`,
1548
+ });
1549
+ }
1550
+ }, { scope: "operator.read" });
1362
1551
  // ─── Skills manager — read + mutate ──────────────────────────────────────
1363
1552
  api.registerGatewayMethod("senpi.skills.status", async (ctx) => {
1364
1553
  const respond = ctx.respond;
@@ -1473,6 +1662,30 @@ async function collectRuntimeHealthStatuses(runtimeHandles, logger) {
1473
1662
  }
1474
1663
  }))).filter((status) => status !== null);
1475
1664
  }
1665
+ /**
1666
+ * Stamps external-scanner `lastAliveAt` onto the scanners component from the shared intake
1667
+ * liveness clock. Liveness is keyed by the ephemeral scanner_id; the registry resolves it back
1668
+ * to the stable scanner name (which matches the system-state row's scannerId). Interval/internal
1669
+ * scanners never POST, so they keep the module's `null`. Mutates the freshly-built rows in place.
1670
+ */
1671
+ function enrichScannerLiveness(state, intake) {
1672
+ const rows = state.components?.scanners?.state?.scanners;
1673
+ if (!intake || !Array.isArray(rows) || rows.length === 0) {
1674
+ return state;
1675
+ }
1676
+ const liveByName = new Map();
1677
+ for (const entry of intake.registry.entries()) {
1678
+ if (entry.runtimeId === state.runtimeId) {
1679
+ liveByName.set(entry.scannerName, intake.liveness.lastAliveAt(entry.scannerId));
1680
+ }
1681
+ }
1682
+ for (const row of rows) {
1683
+ if (row.scheduleMode === "external") {
1684
+ row.lastAliveAt = liveByName.get(row.scannerId) ?? null;
1685
+ }
1686
+ }
1687
+ return state;
1688
+ }
1476
1689
  async function collectRuntimeSystemStates(runtimeHandles, logger, baseStateDir) {
1477
1690
  return (await Promise.all(Array.from(runtimeHandles, async ([runtimeId, handle]) => {
1478
1691
  try {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -21,5 +21,12 @@ export interface RiskAuditEntry {
21
21
  export interface RiskAuditLog {
22
22
  append(entry: RiskAuditEntry): Promise<void>;
23
23
  }
24
+ /**
25
+ * Read the most recent `limit` audit entries for an address, oldest-first.
26
+ * Reads only the trailing `MAX_TAIL_BYTES` of the file, drops a possibly
27
+ * truncated leading line, and skips malformed JSON. Returns `[]` when the
28
+ * file does not exist (no gate checks have run yet).
29
+ */
30
+ export declare function readRiskAuditEntries(stateDir: string, address: string, limit: number): Promise<RiskAuditEntry[]>;
24
31
  export declare function createRiskAuditLog(stateDir: string): RiskAuditLog;
25
32
  //# sourceMappingURL=risk-audit-log.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"risk-audit-log.d.ts","sourceRoot":"","sources":["../../src/risk/risk-audit-log.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAItE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;QACvC,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,WAAW,CAAC,EAAE,eAAe,CAAC;KAC/B,CAAC,CAAC;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAUD,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAajE"}
1
+ {"version":3,"file":"risk-audit-log.d.ts","sourceRoot":"","sources":["../../src/risk/risk-audit-log.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAItE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;QACvC,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,WAAW,CAAC,EAAE,eAAe,CAAC;KAC/B,CAAC,CAAC;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAUD,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C;AAKD;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,cAAc,EAAE,CAAC,CA+B3B;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAajE"}