sentinelayer-cli 0.39.2 → 0.41.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.
Files changed (62) hide show
  1. package/README.md +4 -4
  2. package/package.json +2 -3
  3. package/src/agents/ai-governance/tools/base.js +19 -166
  4. package/src/agents/backend/tools/base.js +33 -186
  5. package/src/agents/code-quality/tools/base.js +27 -154
  6. package/src/agents/data-layer/tools/base.js +35 -180
  7. package/src/agents/documentation/tools/base.js +18 -146
  8. package/src/agents/infrastructure/tools/base.js +17 -164
  9. package/src/agents/observability/tools/base.js +35 -180
  10. package/src/agents/performance/tools/base.js +35 -205
  11. package/src/agents/release/tools/base.js +35 -180
  12. package/src/agents/reliability/tools/base.js +35 -180
  13. package/src/agents/security/tools/base.js +33 -187
  14. package/src/agents/shared-tools/domain-base.js +246 -0
  15. package/src/agents/supply-chain/tools/base.js +15 -144
  16. package/src/agents/testing/tools/base.js +33 -184
  17. package/src/cli.js +5 -0
  18. package/src/commands/mcp.js +1 -1
  19. package/src/commands/ring-owner.js +58 -0
  20. package/src/commands/session.js +703 -263
  21. package/src/engram/governance.js +67 -0
  22. package/src/engram/index.js +64 -0
  23. package/src/engram/namespace.js +89 -0
  24. package/src/engram/observations.js +34 -0
  25. package/src/engram/sla.js +104 -0
  26. package/src/engram/store.js +115 -0
  27. package/src/engram/tools.js +146 -0
  28. package/src/engram/trust.js +105 -0
  29. package/src/legacy-cli.js +6 -3
  30. package/src/mcp/registry.js +27 -10
  31. package/src/mcp/session-stdio-server.js +209 -18
  32. package/src/mcp/smoke.js +9 -8
  33. package/src/pocket/ring-owner.js +97 -0
  34. package/src/review/local-review.js +9 -5
  35. package/src/review/omargate-orchestrator.js +111 -14
  36. package/src/review/spec-binding.js +16 -1
  37. package/src/scan/generator.js +1 -1
  38. package/src/session/agent-registry.js +22 -63
  39. package/src/session/checkpoints.js +194 -0
  40. package/src/session/coordination-guidance.js +6 -6
  41. package/src/session/daemon.js +19 -124
  42. package/src/session/file-lease-integrations.js +1300 -0
  43. package/src/session/file-locks.js +967 -464
  44. package/src/session/listener.js +243 -20
  45. package/src/session/listeners.js +71 -80
  46. package/src/session/paths.js +2 -0
  47. package/src/session/recall/embedder.js +181 -0
  48. package/src/session/recall/entities.js +0 -0
  49. package/src/session/recall/index-build.js +38 -0
  50. package/src/session/recall/index-core.js +108 -0
  51. package/src/session/recall/index.js +131 -0
  52. package/src/session/recall/needle-eval.js +279 -0
  53. package/src/session/recall/observation-core.js +183 -0
  54. package/src/session/recall/observations.js +21 -0
  55. package/src/session/recall/provenance.js +153 -0
  56. package/src/session/recall/retrieve.js +374 -0
  57. package/src/session/recall/text.js +0 -0
  58. package/src/session/recall/token-stats.js +81 -0
  59. package/src/session/recap.js +29 -23
  60. package/src/session/remote-hydrate.js +5 -1
  61. package/src/session/sync.js +661 -11
  62. package/src/session/wake/pump.js +8 -3
@@ -10,13 +10,17 @@
10
10
  // daemon and make this untestable. The thin sentid runtime entrypoint adapts
11
11
  // the real pollSessionEvents to the contract below; tests inject a fake.
12
12
  //
13
- // At-least-once end to end: the fetch cursor advances only to the cursor of the
14
- // last COMMITTED event (one whose seq the dispatcher actually advanced past). A
13
+ // At-least-once end to end: when semantic events are present, the fetch cursor
14
+ // advances only to the cursor of the last COMMITTED event (one whose seq the
15
+ // dispatcher actually advanced past). An empty page may advance across a range
16
+ // the server proved contains no visible semantic events; this transport-only
17
+ // progress never advances the persisted committed-sequence cursor. A
15
18
  // retryable/uncommitted failure stops the batch, the fetch cursor stays behind
16
19
  // it, and the next poll re-delivers that event — so a transient wake failure is
17
20
  // retried, never silently skipped.
18
21
 
19
22
  import { readWakeCursor, writeWakeCursor } from "./cursor-store.js";
23
+ import { cursorAdvances } from "../sync-cursor.js";
20
24
 
21
25
  function seqOf(event) {
22
26
  const raw = event?.sequenceId ?? event?.seq ?? event?.payload?.sequenceId;
@@ -98,7 +102,8 @@ export function createWakePump({
98
102
  await ensureSeeded();
99
103
  const { events = [], cursor: latestCursor = null } = (await pollEvents(sessionId, { afterCursor: fetchCursor })) || {};
100
104
  if (!Array.isArray(events) || events.length === 0) {
101
- return { fetchCursor, results: [], idle: true };
105
+ const next = cursorAdvances(latestCursor, fetchCursor) ? latestCursor : fetchCursor;
106
+ return { fetchCursor: next, results: [], idle: true };
102
107
  }
103
108
  const results = await dispatcher.dispatchBatch(events, deps);
104
109
  const committedSeq = dispatcher.getCursor();