@rubytech/create-maxy-code 0.1.417 → 0.1.423

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 (165) hide show
  1. package/dist/__tests__/brand-port-uniqueness.test.js +74 -0
  2. package/dist/known-brands.js +1 -0
  3. package/package.json +1 -1
  4. package/payload/platform/config/brand-registry.json +8 -0
  5. package/payload/platform/lib/active-rules/dist/index.d.ts +35 -0
  6. package/payload/platform/lib/active-rules/dist/index.d.ts.map +1 -0
  7. package/payload/platform/lib/active-rules/dist/index.js +94 -0
  8. package/payload/platform/lib/active-rules/dist/index.js.map +1 -0
  9. package/payload/platform/lib/active-rules/package.json +7 -0
  10. package/payload/platform/lib/active-rules/src/index.test.ts +89 -0
  11. package/payload/platform/lib/active-rules/src/index.ts +133 -0
  12. package/payload/platform/lib/active-rules/tsconfig.json +9 -0
  13. package/payload/platform/package-lock.json +5158 -2922
  14. package/payload/platform/package.json +4 -3
  15. package/payload/platform/plugins/admin/hooks/__tests__/prompt-optimiser-compliance.test.sh +22 -0
  16. package/payload/platform/plugins/admin/hooks/prompt-optimiser-compliance.sh +14 -1
  17. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +16 -2
  18. package/payload/platform/plugins/docs/references/internals.md +10 -0
  19. package/payload/platform/plugins/docs/references/memory-guide.md +4 -0
  20. package/payload/platform/plugins/docs/references/outlook-guide.md +1 -1
  21. package/payload/platform/plugins/memory/PLUGIN.md +3 -0
  22. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-read-active-rules.test.d.ts +2 -0
  23. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-read-active-rules.test.d.ts.map +1 -0
  24. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-read-active-rules.test.js +49 -0
  25. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-read-active-rules.test.js.map +1 -0
  26. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-reconcile.test.d.ts +2 -0
  27. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-reconcile.test.d.ts.map +1 -0
  28. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-reconcile.test.js +99 -0
  29. package/payload/platform/plugins/memory/mcp/dist/tools/__tests__/profile-update-reconcile.test.js.map +1 -0
  30. package/payload/platform/plugins/memory/mcp/dist/tools/profile-read.d.ts +3 -0
  31. package/payload/platform/plugins/memory/mcp/dist/tools/profile-read.d.ts.map +1 -1
  32. package/payload/platform/plugins/memory/mcp/dist/tools/profile-read.js +11 -3
  33. package/payload/platform/plugins/memory/mcp/dist/tools/profile-read.js.map +1 -1
  34. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.d.ts +21 -0
  35. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.d.ts.map +1 -1
  36. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.js +106 -14
  37. package/payload/platform/plugins/memory/mcp/dist/tools/profile-update.js.map +1 -1
  38. package/payload/platform/plugins/memory/skills/conversational-memory/SKILL.md +30 -1
  39. package/payload/platform/plugins/memory/skills/preference-audit/SKILL.md +50 -0
  40. package/payload/platform/plugins/outlook/mcp/dist/__tests__/calendar-write.test.js +24 -0
  41. package/payload/platform/plugins/outlook/mcp/dist/__tests__/calendar-write.test.js.map +1 -1
  42. package/payload/platform/plugins/outlook/mcp/dist/tools/calendar-create.d.ts +15 -2
  43. package/payload/platform/plugins/outlook/mcp/dist/tools/calendar-create.d.ts.map +1 -1
  44. package/payload/platform/plugins/outlook/mcp/dist/tools/calendar-create.js +16 -7
  45. package/payload/platform/plugins/outlook/mcp/dist/tools/calendar-create.js.map +1 -1
  46. package/payload/platform/plugins/whatsapp/PLUGIN.md +3 -1
  47. package/payload/platform/plugins/whatsapp/mcp/dist/__tests__/resolve-read-account.test.d.ts +2 -0
  48. package/payload/platform/plugins/whatsapp/mcp/dist/__tests__/resolve-read-account.test.d.ts.map +1 -0
  49. package/payload/platform/plugins/whatsapp/mcp/dist/__tests__/resolve-read-account.test.js +15 -0
  50. package/payload/platform/plugins/whatsapp/mcp/dist/__tests__/resolve-read-account.test.js.map +1 -0
  51. package/payload/platform/plugins/whatsapp/mcp/dist/index.js +14 -8
  52. package/payload/platform/plugins/whatsapp/mcp/dist/index.js.map +1 -1
  53. package/payload/platform/plugins/whatsapp/mcp/dist/resolve-read-account.d.ts +7 -0
  54. package/payload/platform/plugins/whatsapp/mcp/dist/resolve-read-account.d.ts.map +1 -0
  55. package/payload/platform/plugins/whatsapp/mcp/dist/resolve-read-account.js +13 -0
  56. package/payload/platform/plugins/whatsapp/mcp/dist/resolve-read-account.js.map +1 -0
  57. package/payload/platform/plugins/whatsapp/references/channels-whatsapp.md +9 -1
  58. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-raised-by-env.test.d.ts +2 -0
  59. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-raised-by-env.test.d.ts.map +1 -0
  60. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-raised-by-env.test.js +66 -0
  61. package/payload/platform/plugins/work/mcp/dist/__tests__/work-create-raised-by-env.test.js.map +1 -0
  62. package/payload/platform/plugins/work/mcp/dist/tools/work-create.d.ts.map +1 -1
  63. package/payload/platform/plugins/work/mcp/dist/tools/work-create.js +8 -1
  64. package/payload/platform/plugins/work/mcp/dist/tools/work-create.js.map +1 -1
  65. package/payload/platform/scripts/__tests__/provision-role-stamp.test.sh +3 -0
  66. package/payload/platform/scripts/lib/provision-account-dir.sh +9 -1
  67. package/payload/platform/services/claude-session-manager/dist/agent-identity-locator.d.ts +1 -1
  68. package/payload/platform/services/claude-session-manager/dist/agent-identity-locator.d.ts.map +1 -1
  69. package/payload/platform/services/claude-session-manager/dist/agent-identity-locator.js +5 -1
  70. package/payload/platform/services/claude-session-manager/dist/agent-identity-locator.js.map +1 -1
  71. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts +1 -0
  72. package/payload/platform/services/claude-session-manager/dist/http-server.d.ts.map +1 -1
  73. package/payload/platform/services/claude-session-manager/dist/http-server.js +65 -4
  74. package/payload/platform/services/claude-session-manager/dist/http-server.js.map +1 -1
  75. package/payload/platform/services/claude-session-manager/dist/index.js +53 -0
  76. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  77. package/payload/platform/services/claude-session-manager/dist/passive-dispatch-prune.d.ts +37 -0
  78. package/payload/platform/services/claude-session-manager/dist/passive-dispatch-prune.d.ts.map +1 -0
  79. package/payload/platform/services/claude-session-manager/dist/passive-dispatch-prune.js +80 -0
  80. package/payload/platform/services/claude-session-manager/dist/passive-dispatch-prune.js.map +1 -0
  81. package/payload/platform/services/claude-session-manager/dist/passive-intake-audit.d.ts +70 -0
  82. package/payload/platform/services/claude-session-manager/dist/passive-intake-audit.d.ts.map +1 -0
  83. package/payload/platform/services/claude-session-manager/dist/passive-intake-audit.js +129 -0
  84. package/payload/platform/services/claude-session-manager/dist/passive-intake-audit.js.map +1 -0
  85. package/payload/platform/services/claude-session-manager/dist/preference-reconciliation-audit.d.ts +46 -0
  86. package/payload/platform/services/claude-session-manager/dist/preference-reconciliation-audit.d.ts.map +1 -0
  87. package/payload/platform/services/claude-session-manager/dist/preference-reconciliation-audit.js +96 -0
  88. package/payload/platform/services/claude-session-manager/dist/preference-reconciliation-audit.js.map +1 -0
  89. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts +39 -0
  90. package/payload/platform/services/claude-session-manager/dist/pty-spawner.d.ts.map +1 -1
  91. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js +66 -5
  92. package/payload/platform/services/claude-session-manager/dist/pty-spawner.js.map +1 -1
  93. package/payload/platform/services/claude-session-manager/dist/public-agent-reachability.d.ts.map +1 -1
  94. package/payload/platform/services/claude-session-manager/dist/public-agent-reachability.js +5 -1
  95. package/payload/platform/services/claude-session-manager/dist/public-agent-reachability.js.map +1 -1
  96. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts +6 -0
  97. package/payload/platform/services/claude-session-manager/dist/system-prompt.d.ts.map +1 -1
  98. package/payload/platform/services/claude-session-manager/dist/system-prompt.js +20 -0
  99. package/payload/platform/services/claude-session-manager/dist/system-prompt.js.map +1 -1
  100. package/payload/platform/services/telegram-channel/dist/instructions.d.ts +9 -0
  101. package/payload/platform/services/telegram-channel/dist/instructions.d.ts.map +1 -0
  102. package/payload/platform/services/telegram-channel/dist/instructions.js +80 -0
  103. package/payload/platform/services/telegram-channel/dist/instructions.js.map +1 -0
  104. package/payload/platform/services/telegram-channel/dist/notification.d.ts +93 -0
  105. package/payload/platform/services/telegram-channel/dist/notification.d.ts.map +1 -0
  106. package/payload/platform/services/telegram-channel/dist/notification.js +119 -0
  107. package/payload/platform/services/telegram-channel/dist/notification.js.map +1 -0
  108. package/payload/platform/services/telegram-channel/dist/server.d.ts +40 -0
  109. package/payload/platform/services/telegram-channel/dist/server.d.ts.map +1 -0
  110. package/payload/platform/services/telegram-channel/dist/server.js +291 -0
  111. package/payload/platform/services/telegram-channel/dist/server.js.map +1 -0
  112. package/payload/platform/services/telegram-channel/dist/turn-follow.d.ts +28 -0
  113. package/payload/platform/services/telegram-channel/dist/turn-follow.d.ts.map +1 -0
  114. package/payload/platform/services/telegram-channel/dist/turn-follow.js +188 -0
  115. package/payload/platform/services/telegram-channel/dist/turn-follow.js.map +1 -0
  116. package/payload/platform/services/webchat-channel/dist/instructions.d.ts.map +1 -1
  117. package/payload/platform/services/webchat-channel/dist/instructions.js +37 -78
  118. package/payload/platform/services/webchat-channel/dist/instructions.js.map +1 -1
  119. package/payload/platform/services/webchat-channel/dist/notification.d.ts +5 -0
  120. package/payload/platform/services/webchat-channel/dist/notification.d.ts.map +1 -1
  121. package/payload/platform/services/webchat-channel/dist/notification.js +6 -1
  122. package/payload/platform/services/webchat-channel/dist/notification.js.map +1 -1
  123. package/payload/platform/services/whatsapp-channel/dist/notification.d.ts +20 -36
  124. package/payload/platform/services/whatsapp-channel/dist/notification.d.ts.map +1 -1
  125. package/payload/platform/services/whatsapp-channel/dist/notification.js +43 -81
  126. package/payload/platform/services/whatsapp-channel/dist/notification.js.map +1 -1
  127. package/payload/platform/templates/agents/admin/IDENTITY.md +2 -1
  128. package/payload/platform/templates/agents/passive/IDENTITY.md +21 -0
  129. package/payload/platform/templates/specialists/agents/content-producer.md +4 -0
  130. package/payload/server/public/assets/{AdminLoginScreens-CBTx7ZPK.js → AdminLoginScreens-B1P6PrZ3.js} +1 -1
  131. package/payload/server/public/assets/AdminShell-Y1fHQApK.js +2 -0
  132. package/payload/server/public/assets/{Checkbox-BHTxekRB.js → Checkbox-CgCqOslz.js} +1 -1
  133. package/payload/server/public/assets/{Transcript-5kLbBInN.js → Transcript-DZzFjhoq.js} +1 -1
  134. package/payload/server/public/assets/{admin-BWCLE32N.js → admin-BRBjJEci.js} +1 -1
  135. package/payload/server/public/assets/{browser-CRvCPsvV.js → browser-ID7iqIi4.js} +1 -1
  136. package/payload/server/public/assets/{calendar-BI-kd-QP.js → calendar-BEQPMTtd.js} +1 -1
  137. package/payload/server/public/assets/chat-D0GDSWM-.js +1 -0
  138. package/payload/server/public/assets/chevron-left-A0HYKwGY.js +1 -0
  139. package/payload/server/public/assets/data-CV38dClT.js +1 -0
  140. package/payload/server/public/assets/{graph-BFSyW_5i.js → graph-BK0MjKRy.js} +1 -1
  141. package/payload/server/public/assets/{graph-labels-DEjD_qJh.js → graph-labels-BfG6FO25.js} +1 -1
  142. package/payload/server/public/assets/{maximize-2-BcMJNeCB.js → maximize-2-DrBaKD3z.js} +1 -1
  143. package/payload/server/public/assets/{operator-Dtvm9ero.js → operator-CnpNyIJ8.js} +1 -1
  144. package/payload/server/public/assets/page-DC_L-IS1.js +32 -0
  145. package/payload/server/public/assets/{page-TXi9dmaB.js → page-DKHLflh7.js} +1 -1
  146. package/payload/server/public/assets/{public-DBx3U0r8.js → public-ByUJr48E.js} +1 -1
  147. package/payload/server/public/assets/{rotate-ccw-8ti3QkeY.js → rotate-ccw-D45TbeAI.js} +1 -1
  148. package/payload/server/public/assets/useSubAccountSwitcher-CCn22f98.css +1 -0
  149. package/payload/server/public/assets/useSubAccountSwitcher-CprHkBnZ.js +9 -0
  150. package/payload/server/public/browser.html +4 -4
  151. package/payload/server/public/calendar.html +5 -5
  152. package/payload/server/public/chat.html +9 -9
  153. package/payload/server/public/data.html +8 -8
  154. package/payload/server/public/graph.html +9 -9
  155. package/payload/server/public/index.html +11 -11
  156. package/payload/server/public/operator.html +11 -11
  157. package/payload/server/public/public.html +9 -9
  158. package/payload/server/server.js +406 -99
  159. package/payload/server/public/assets/AdminShell-DPHUeXea.js +0 -2
  160. package/payload/server/public/assets/chat-DFy8hb1y.js +0 -1
  161. package/payload/server/public/assets/chevron-left-Bggm5B5U.js +0 -1
  162. package/payload/server/public/assets/data-HvZ69Ya1.js +0 -1
  163. package/payload/server/public/assets/page-C_pm3hl3.js +0 -32
  164. package/payload/server/public/assets/useSubAccountSwitcher-BUvlETHN.css +0 -1
  165. package/payload/server/public/assets/useSubAccountSwitcher-Bc5dOBdI.js +0 -9
@@ -27,6 +27,9 @@ import { createReaper } from './reaper.js';
27
27
  import { createReachabilityAudit } from './public-agent-reachability.js';
28
28
  import { createPtyCensus } from './pty-census.js';
29
29
  import { emitRootlessCensus, createRootlessAudit } from './rootless-client-audit.js';
30
+ import { createPreferenceAudit } from './preference-reconciliation-audit.js';
31
+ import { createPassiveIntakeAudit } from './passive-intake-audit.js';
32
+ import { createPassiveDispatchPrune } from './passive-dispatch-prune.js';
30
33
  import { createXacctCensus } from './cross-account-census.js';
31
34
  import { createSessionCapAudit } from './session-cap-audit.js';
32
35
  import { projectsDirForCwd, sessionsDir, jsonlPathForSessionId, slugForExistingJsonl, jsonlPathForSlug, sidecarPathForSlug } from './jsonl-path.js';
@@ -580,6 +583,55 @@ async function main() {
580
583
  intervalMs: 300_000,
581
584
  });
582
585
  rootlessAudit.start();
586
+ // Task 1486 — standing preference-reconciliation audit. Flags any account
587
+ // whose stored active-rule count diverges from what per-turn injection would
588
+ // surface (unreconciled same-subject duplicates). The no-event detector for
589
+ // the standing-rules memory: nothing to hang a per-write log on, so an
590
+ // independent periodic read is the only drift signal. Best-effort Neo4j.
591
+ const preferenceAudit = createPreferenceAudit({
592
+ neo4jUri: process.env.NEO4J_URI ?? '',
593
+ neo4jUser: process.env.NEO4J_USER ?? 'neo4j',
594
+ neo4jPassword: process.env.NEO4J_PASSWORD ?? '',
595
+ logger: log,
596
+ intervalMs: 300_000,
597
+ });
598
+ preferenceAudit.start();
599
+ // Task 1488 — standing passive-intake audit-gap reconcile. A passive WhatsApp
600
+ // spawn (1483) has no reply server and so no turn follower, so a passive
601
+ // message that filed no :Task emits no event. This periodic read is the
602
+ // substitute: it counts :PassiveDispatch ledger rows whose sub-account gained
603
+ // no backing :Task within the turn window. grace 5 min lets a running turn
604
+ // settle before it counts; horizon 30 min ages a dispatch out so it is not
605
+ // re-alarmed forever. `unbacked>0` on op=audit-gap is the alarm. Best-effort Neo4j.
606
+ const passiveIntakeAudit = createPassiveIntakeAudit({
607
+ // Use the manager's already-resolved brand-local creds (which fall back to
608
+ // config/.neo4j-password on installs where NEO4J_PASSWORD is not in the
609
+ // systemd env), not a raw env re-read — else the audit goes dark exactly
610
+ // where the manager itself booted fine off the file.
611
+ neo4jUri: brandedNeo4jUri,
612
+ neo4jUser: process.env.NEO4J_USER ?? 'neo4j',
613
+ neo4jPassword: brandedNeo4jPassword,
614
+ logger: log,
615
+ graceMs: 300_000,
616
+ windowMs: 1_800_000,
617
+ intervalMs: 300_000,
618
+ });
619
+ passiveIntakeAudit.start();
620
+ // Task 1494 — retention prune for the 1488 :PassiveDispatch ledger. The audit
621
+ // above only ever reads rows inside its 30-min window, so every older row is
622
+ // dead weight the ledger never sheds. This standing sweep deletes rows older
623
+ // than the retention horizon (24 h, comfortably beyond the audit window, so it
624
+ // can never delete a row the audit still evaluates). Low-frequency (hourly),
625
+ // best-effort Neo4j, same branded creds as the audit.
626
+ const passiveDispatchPrune = createPassiveDispatchPrune({
627
+ neo4jUri: brandedNeo4jUri,
628
+ neo4jUser: process.env.NEO4J_USER ?? 'neo4j',
629
+ neo4jPassword: brandedNeo4jPassword,
630
+ logger: log,
631
+ retentionMs: 86_400_000,
632
+ intervalMs: 3_600_000,
633
+ });
634
+ passiveDispatchPrune.start();
583
635
  // Task 1440 — standing cross-account census. Flags any live house-scoped
584
636
  // session whose account is no longer role:"house" (the escalation precursor,
585
637
  // which emits no event). target=2 is the retained coverage set after the
@@ -904,6 +956,7 @@ async function main() {
904
956
  ptyCensus.stop();
905
957
  sessionCapAudit.stop();
906
958
  rootlessAudit.stop();
959
+ passiveIntakeAudit.stop();
907
960
  xacctCensus.stop();
908
961
  stuckTurnWatch.stop();
909
962
  watcher.close();
@@ -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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"}
@@ -0,0 +1,37 @@
1
+ /** The retention boundary. A ledger row is prunable iff `dispatchedAt < cutoff`.
2
+ * Deterministic in `now` so the boundary is unit-testable; the returned ISO
3
+ * string is handed straight to the Cypher `WHERE d.dispatchedAt < $cutoff`
4
+ * clause, which is this comparison lifted into the store. */
5
+ export declare function pruneCutoffIso(now: number, retentionMs: number): string;
6
+ export interface PruneSessionLike {
7
+ run(query: string, params?: Record<string, unknown>): Promise<{
8
+ records: Array<{
9
+ get(key: string): unknown;
10
+ }>;
11
+ }>;
12
+ }
13
+ /** Delete every `:PassiveDispatch` older than `cutoffIso` and return the count
14
+ * removed. DETACH so a stray future edge can never make the cleanup throw. */
15
+ export declare function deletePrunableDispatches(session: PruneSessionLike, cutoffIso: string): Promise<number>;
16
+ export interface PassiveDispatchPruneDeps {
17
+ neo4jUri: string;
18
+ neo4jUser: string;
19
+ neo4jPassword: string;
20
+ logger: (line: string) => void;
21
+ /** Rows older than this are pruned. Must exceed the audit's windowMs. */
22
+ retentionMs: number;
23
+ }
24
+ /** Run one prune pass and log `op=ledger-prune removed=<N>`. Best-effort Neo4j —
25
+ * absent env or an erroring delete logs `op=unavailable` and never throws
26
+ * (Neo4j may not be up at boot). `removed=0` is logged for liveness. */
27
+ export declare function emitPassiveDispatchPrune(deps: PassiveDispatchPruneDeps): Promise<void>;
28
+ export interface PassiveDispatchPrune {
29
+ start(): void;
30
+ stop(): void;
31
+ }
32
+ /** Standing periodic prune. Unref'd interval so it never holds the process open;
33
+ * each tick re-emits best-effort. Mirrors createPassiveIntakeAudit. */
34
+ export declare function createPassiveDispatchPrune(deps: PassiveDispatchPruneDeps & {
35
+ intervalMs: number;
36
+ }): PassiveDispatchPrune;
37
+ //# sourceMappingURL=passive-dispatch-prune.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passive-dispatch-prune.d.ts","sourceRoot":"","sources":["../src/passive-dispatch-prune.ts"],"names":[],"mappings":"AAgBA;;;8DAG8D;AAC9D,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CACD,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC;YAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAA;CAC9D;AAED;+EAC+E;AAC/E,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,gBAAgB,EACzB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,CAajB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,yEAAyE;IACzE,WAAW,EAAE,MAAM,CAAA;CACpB;AAED;;yEAEyE;AACzE,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB5F;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,IAAI,IAAI,CAAA;IACb,IAAI,IAAI,IAAI,CAAA;CACb;AAED;wEACwE;AACxE,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,wBAAwB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GACtD,oBAAoB,CAiBtB"}
@@ -0,0 +1,80 @@
1
+ // Task 1494 — retention prune for the Task 1488 :PassiveDispatch ledger. 1488
2
+ // writes one ledger row per passive dispatch and never deletes it; the audit
3
+ // only ever reads rows inside its 30-min window, so every older row is dead
4
+ // weight. This sweep deletes rows older than the retention horizon. 1488 was
5
+ // deliberately kept read-only, so the prune lives here as a separate concern —
6
+ // a pure cutoff + an impure best-effort delete + an unref'd setInterval factory,
7
+ // the same mould as passive-intake-audit.ts.
8
+ //
9
+ // The retention horizon must exceed the audit's windowMs, so the cutoff is
10
+ // strictly older than any row the audit still evaluates: the prune can never
11
+ // mask a gap the audit would otherwise surface.
12
+ import neo4j from 'neo4j-driver';
13
+ const TAG = '[wa-passive]';
14
+ /** The retention boundary. A ledger row is prunable iff `dispatchedAt < cutoff`.
15
+ * Deterministic in `now` so the boundary is unit-testable; the returned ISO
16
+ * string is handed straight to the Cypher `WHERE d.dispatchedAt < $cutoff`
17
+ * clause, which is this comparison lifted into the store. */
18
+ export function pruneCutoffIso(now, retentionMs) {
19
+ return new Date(now - retentionMs).toISOString();
20
+ }
21
+ /** Delete every `:PassiveDispatch` older than `cutoffIso` and return the count
22
+ * removed. DETACH so a stray future edge can never make the cleanup throw. */
23
+ export async function deletePrunableDispatches(session, cutoffIso) {
24
+ const res = await session.run(`MATCH (d:PassiveDispatch)
25
+ WHERE d.dispatchedAt < $cutoff
26
+ DETACH DELETE d
27
+ RETURN count(d) AS removed`, { cutoff: cutoffIso });
28
+ const rec = res.records[0];
29
+ if (!rec)
30
+ return 0;
31
+ const removed = rec.get('removed');
32
+ // neo4j returns counts as its own Integer type; normalise to a JS number.
33
+ return typeof removed === 'number' ? removed : Number(removed ?? 0);
34
+ }
35
+ /** Run one prune pass and log `op=ledger-prune removed=<N>`. Best-effort Neo4j —
36
+ * absent env or an erroring delete logs `op=unavailable` and never throws
37
+ * (Neo4j may not be up at boot). `removed=0` is logged for liveness. */
38
+ export async function emitPassiveDispatchPrune(deps) {
39
+ if (!deps.neo4jUri || !deps.neo4jPassword) {
40
+ deps.logger(`${TAG} op=unavailable reason=no-neo4j-env`);
41
+ return;
42
+ }
43
+ const cutoffIso = pruneCutoffIso(Date.now(), deps.retentionMs);
44
+ const driver = neo4j.driver(deps.neo4jUri, neo4j.auth.basic(deps.neo4jUser, deps.neo4jPassword));
45
+ const session = driver.session();
46
+ try {
47
+ const removed = await deletePrunableDispatches(session, cutoffIso);
48
+ deps.logger(`${TAG} op=ledger-prune removed=${removed}`);
49
+ }
50
+ catch (err) {
51
+ deps.logger(`${TAG} op=unavailable reason=${err instanceof Error ? err.message : String(err)}`);
52
+ }
53
+ finally {
54
+ await session.close();
55
+ await driver.close();
56
+ }
57
+ }
58
+ /** Standing periodic prune. Unref'd interval so it never holds the process open;
59
+ * each tick re-emits best-effort. Mirrors createPassiveIntakeAudit. */
60
+ export function createPassiveDispatchPrune(deps) {
61
+ let timer = null;
62
+ return {
63
+ start() {
64
+ if (timer)
65
+ return;
66
+ timer = setInterval(() => {
67
+ void emitPassiveDispatchPrune(deps);
68
+ }, deps.intervalMs);
69
+ if (typeof timer.unref === 'function')
70
+ timer.unref();
71
+ },
72
+ stop() {
73
+ if (timer) {
74
+ clearInterval(timer);
75
+ timer = null;
76
+ }
77
+ },
78
+ };
79
+ }
80
+ //# sourceMappingURL=passive-dispatch-prune.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passive-dispatch-prune.js","sourceRoot":"","sources":["../src/passive-dispatch-prune.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ export interface AuditSessionLike {
2
+ run(query: string, params?: Record<string, unknown>): Promise<{
3
+ records: Array<{
4
+ get(key: string): unknown;
5
+ }>;
6
+ }>;
7
+ }
8
+ /** One passive dispatch as fetched from the ledger, joined to whether a backing
9
+ * :Task exists. `dispatchedAtMs` is the epoch-ms parse of the ledger row's
10
+ * `dispatchedAt` ISO string; `backed` is (backing-task-count > 0). */
11
+ export interface DispatchRow {
12
+ accountId: string;
13
+ dispatchedAtMs: number;
14
+ backed: boolean;
15
+ }
16
+ export interface PassiveIntakeFinding {
17
+ accountId: string;
18
+ /** Eligible dispatches under this account with no backing :Task. */
19
+ unbacked: number;
20
+ }
21
+ /** The turn window applied to the ledger rows. A dispatch is eligible only when
22
+ * it has settled (`age >= graceMs`, so a still-running turn does not
23
+ * false-alarm) and is still in the alarm horizon (`age <= windowMs`, so an old
24
+ * dispatch is not re-alarmed forever). */
25
+ export interface AuditWindow {
26
+ now: number;
27
+ graceMs: number;
28
+ windowMs: number;
29
+ }
30
+ /** Pure reconcile: group eligible, unbacked dispatches per account and return a
31
+ * finding (unbacked > 0) for each. Deterministic in `now` so the grace and
32
+ * horizon boundaries are unit-testable. Accounts are returned in first-seen
33
+ * order so the emitted lines are stable across a pass. */
34
+ export declare function reconcilePassiveIntake(rows: DispatchRow[], { now, graceMs, windowMs }: AuditWindow): PassiveIntakeFinding[];
35
+ /** The audit-gap line. The full account is logged (not truncated) so it
36
+ * correlates directly with the `op=dispatch account=<sub>` lines in the window;
37
+ * `unbacked>0` is the alarm. */
38
+ export declare function formatAuditLine(f: PassiveIntakeFinding): string;
39
+ /** Fetch every ledger row within the scan horizon, joined to whether a backing
40
+ * :Task exists. The `>= $windowStart` bound only limits the scan; the pure
41
+ * reconcile OWNS the semantic window — it enforces the grace floor (which the
42
+ * scan cannot, since no `now` is passed to Cypher for it) and re-checks the
43
+ * horizon under the same `now`, so an over-fetch of rows younger than grace is
44
+ * harmless. */
45
+ export declare function fetchDispatchRows(session: AuditSessionLike, windowStartIso: string): Promise<DispatchRow[]>;
46
+ export interface PassiveIntakeAuditDeps {
47
+ neo4jUri: string;
48
+ neo4jUser: string;
49
+ neo4jPassword: string;
50
+ logger: (line: string) => void;
51
+ /** Turn-settle floor: a dispatch younger than this is still in flight. */
52
+ graceMs: number;
53
+ /** Alarm horizon: a dispatch older than this has aged out of the window. */
54
+ windowMs: number;
55
+ }
56
+ /** Run one audit pass and log an `op=audit-gap` line per flagged account.
57
+ * Best-effort Neo4j — absent env or an unreachable/erroring read logs
58
+ * `op=unavailable` and never throws (Neo4j may not be up at boot). A clean pass
59
+ * logs a single `op=ok unbacked=0` line so the audit's own liveness is visible. */
60
+ export declare function emitPassiveIntakeAudit(deps: PassiveIntakeAuditDeps): Promise<void>;
61
+ export interface PassiveIntakeAudit {
62
+ start(): void;
63
+ stop(): void;
64
+ }
65
+ /** Standing periodic audit. Unref'd interval so it never holds the process open;
66
+ * each tick re-emits best-effort. */
67
+ export declare function createPassiveIntakeAudit(deps: PassiveIntakeAuditDeps & {
68
+ intervalMs: number;
69
+ }): PassiveIntakeAudit;
70
+ //# sourceMappingURL=passive-intake-audit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passive-intake-audit.d.ts","sourceRoot":"","sources":["../src/passive-intake-audit.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CACD,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC;YAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAA;CAC9D;AAED;;uEAEuE;AACvE,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;2CAG2C;AAC3C,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;2DAG2D;AAC3D,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,WAAW,EAAE,EACnB,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,WAAW,GACtC,oBAAoB,EAAE,CAaxB;AAED;;iCAEiC;AACjC,wBAAgB,eAAe,CAAC,CAAC,EAAE,oBAAoB,GAAG,MAAM,CAE/D;AAED;;;;;gBAKgB;AAChB,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,gBAAgB,EACzB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,WAAW,EAAE,CAAC,CAqBxB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAA;IACf,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;;oFAGoF;AACpF,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BxF;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,IAAI,IAAI,CAAA;IACb,IAAI,IAAI,IAAI,CAAA;CACb;AAED;sCACsC;AACtC,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,sBAAsB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GACpD,kBAAkB,CAiBpB"}
@@ -0,0 +1,129 @@
1
+ // Task 1488 — standing passive-intake audit-gap reconcile. A passive WhatsApp
2
+ // account-manager spawn (Task 1483) attaches no reply server, so it has no turn
3
+ // follower: the `whatsapp-channel` `reduceTurnFromLines` follower lives inside
4
+ // the reply-server process, and a passive spawn has none. The per-turn
5
+ // `op=turn-end created/replied` line therefore has no producer on the passive
6
+ // path. The one real failure mode — a passive message that reached the agent
7
+ // but filed NO :Task (the agent never called work-create, or the write threw) —
8
+ // is a no-event failure: nothing fires. This audit is the substitute. It counts
9
+ // passive dispatches (recorded as :PassiveDispatch ledger rows at dispatch time)
10
+ // whose sub-account gained no backing :Task within the turn window.
11
+ //
12
+ // The join is exact, not a fuzzy per-account count: work-create stamps the
13
+ // spawn's sessionId onto the :Task as the flattened `createdBySession` property,
14
+ // and the ledger row records the same sessionId, so a dispatch is "backed" iff a
15
+ // :Task {accountId, createdBySession} exists. Shape mirrors
16
+ // preference-reconciliation-audit.ts (pure reconcile + impure setInterval
17
+ // factory, unref'd, darwin-tolerant, best-effort Neo4j).
18
+ import neo4j from 'neo4j-driver';
19
+ const TAG = '[wa-passive]';
20
+ /** Pure reconcile: group eligible, unbacked dispatches per account and return a
21
+ * finding (unbacked > 0) for each. Deterministic in `now` so the grace and
22
+ * horizon boundaries are unit-testable. Accounts are returned in first-seen
23
+ * order so the emitted lines are stable across a pass. */
24
+ export function reconcilePassiveIntake(rows, { now, graceMs, windowMs }) {
25
+ const perAccount = new Map();
26
+ for (const r of rows) {
27
+ const age = now - r.dispatchedAtMs;
28
+ if (age < graceMs || age > windowMs)
29
+ continue; // not settled, or aged out
30
+ const prior = perAccount.get(r.accountId) ?? 0;
31
+ perAccount.set(r.accountId, prior + (r.backed ? 0 : 1));
32
+ }
33
+ const findings = [];
34
+ for (const [accountId, unbacked] of perAccount) {
35
+ if (unbacked > 0)
36
+ findings.push({ accountId, unbacked });
37
+ }
38
+ return findings;
39
+ }
40
+ /** The audit-gap line. The full account is logged (not truncated) so it
41
+ * correlates directly with the `op=dispatch account=<sub>` lines in the window;
42
+ * `unbacked>0` is the alarm. */
43
+ export function formatAuditLine(f) {
44
+ return `${TAG} op=audit-gap account=${f.accountId} unbacked=${f.unbacked}`;
45
+ }
46
+ /** Fetch every ledger row within the scan horizon, joined to whether a backing
47
+ * :Task exists. The `>= $windowStart` bound only limits the scan; the pure
48
+ * reconcile OWNS the semantic window — it enforces the grace floor (which the
49
+ * scan cannot, since no `now` is passed to Cypher for it) and re-checks the
50
+ * horizon under the same `now`, so an over-fetch of rows younger than grace is
51
+ * harmless. */
52
+ export async function fetchDispatchRows(session, windowStartIso) {
53
+ const res = await session.run(`MATCH (d:PassiveDispatch)
54
+ WHERE d.dispatchedAt >= $windowStart
55
+ OPTIONAL MATCH (t:Task {accountId: d.accountId, createdBySession: d.sessionId})
56
+ WITH d, count(t) AS taskCount
57
+ RETURN d.accountId AS accountId, d.dispatchedAt AS dispatchedAt, (taskCount > 0) AS backed`, { windowStart: windowStartIso });
58
+ const rows = [];
59
+ for (const rec of res.records) {
60
+ const dispatchedAt = String(rec.get('dispatchedAt'));
61
+ const dispatchedAtMs = Date.parse(dispatchedAt);
62
+ if (Number.isNaN(dispatchedAtMs))
63
+ continue; // unparseable stamp — skip, never throw
64
+ rows.push({
65
+ accountId: String(rec.get('accountId')),
66
+ dispatchedAtMs,
67
+ backed: rec.get('backed') === true,
68
+ });
69
+ }
70
+ return rows;
71
+ }
72
+ /** Run one audit pass and log an `op=audit-gap` line per flagged account.
73
+ * Best-effort Neo4j — absent env or an unreachable/erroring read logs
74
+ * `op=unavailable` and never throws (Neo4j may not be up at boot). A clean pass
75
+ * logs a single `op=ok unbacked=0` line so the audit's own liveness is visible. */
76
+ export async function emitPassiveIntakeAudit(deps) {
77
+ if (!deps.neo4jUri || !deps.neo4jPassword) {
78
+ deps.logger(`${TAG} op=unavailable reason=no-neo4j-env`);
79
+ return;
80
+ }
81
+ const now = Date.now();
82
+ const windowStartIso = new Date(now - deps.windowMs).toISOString();
83
+ const driver = neo4j.driver(deps.neo4jUri, neo4j.auth.basic(deps.neo4jUser, deps.neo4jPassword));
84
+ const session = driver.session();
85
+ try {
86
+ const rows = await fetchDispatchRows(session, windowStartIso);
87
+ const findings = reconcilePassiveIntake(rows, {
88
+ now,
89
+ graceMs: deps.graceMs,
90
+ windowMs: deps.windowMs,
91
+ });
92
+ if (findings.length === 0) {
93
+ deps.logger(`${TAG} op=ok unbacked=0`);
94
+ return;
95
+ }
96
+ for (const f of findings)
97
+ deps.logger(formatAuditLine(f));
98
+ }
99
+ catch (err) {
100
+ deps.logger(`${TAG} op=unavailable reason=${err instanceof Error ? err.message : String(err)}`);
101
+ }
102
+ finally {
103
+ await session.close();
104
+ await driver.close();
105
+ }
106
+ }
107
+ /** Standing periodic audit. Unref'd interval so it never holds the process open;
108
+ * each tick re-emits best-effort. */
109
+ export function createPassiveIntakeAudit(deps) {
110
+ let timer = null;
111
+ return {
112
+ start() {
113
+ if (timer)
114
+ return;
115
+ timer = setInterval(() => {
116
+ void emitPassiveIntakeAudit(deps);
117
+ }, deps.intervalMs);
118
+ if (typeof timer.unref === 'function')
119
+ timer.unref();
120
+ },
121
+ stop() {
122
+ if (timer) {
123
+ clearInterval(timer);
124
+ timer = null;
125
+ }
126
+ },
127
+ };
128
+ }
129
+ //# sourceMappingURL=passive-intake-audit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passive-intake-audit.js","sourceRoot":"","sources":["../src/passive-intake-audit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ export interface AuditSessionLike {
2
+ run(query: string, params?: Record<string, unknown>): Promise<{
3
+ records: Array<{
4
+ get(key: string): unknown;
5
+ }>;
6
+ }>;
7
+ }
8
+ export interface AuditFinding {
9
+ accountId: string;
10
+ /** Active (non-trashed, not-declined, above-floor) preference rows stored. */
11
+ storedActive: number;
12
+ /** Rows injection would surface after semantic de-confliction. */
13
+ injectedActive: number;
14
+ /** storedActive − injectedActive: unreconciled same-subject duplicates. */
15
+ duplicateClusters: number;
16
+ }
17
+ /** One drift line per flagged account. accountId truncated to 8 for readability;
18
+ * the three counts are greppable fields. */
19
+ export declare function formatAuditLine(f: AuditFinding): string;
20
+ /** For every account that holds active preferences, measure stored-vs-injected
21
+ * divergence. Returns a finding ONLY for accounts where the two differ (i.e.
22
+ * the store holds unreconciled same-subject duplicates). Measures against the
23
+ * exact injection definition (queryActiveRuleCandidates + deconflictBySubject),
24
+ * so the audit and injection can never disagree about what "active" means. */
25
+ export declare function auditPreferenceReconciliation(session: AuditSessionLike): Promise<AuditFinding[]>;
26
+ export interface PreferenceAuditDeps {
27
+ neo4jUri: string;
28
+ neo4jUser: string;
29
+ neo4jPassword: string;
30
+ logger: (line: string) => void;
31
+ }
32
+ /** Run one audit pass and log a drift line per flagged account. Best-effort
33
+ * Neo4j — absent env or an unreachable/erroring read logs `unavailable` and
34
+ * never throws. A clean pass logs a single `op=ok` line so the audit's own
35
+ * liveness is visible. */
36
+ export declare function emitPreferenceAudit(deps: PreferenceAuditDeps): Promise<void>;
37
+ export interface PreferenceAudit {
38
+ start(): void;
39
+ stop(): void;
40
+ }
41
+ /** Standing periodic audit. Unref'd interval so it never holds the process open;
42
+ * each tick re-emits best-effort. */
43
+ export declare function createPreferenceAudit(deps: PreferenceAuditDeps & {
44
+ intervalMs: number;
45
+ }): PreferenceAudit;
46
+ //# sourceMappingURL=preference-reconciliation-audit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preference-reconciliation-audit.d.ts","sourceRoot":"","sources":["../src/preference-reconciliation-audit.ts"],"names":[],"mappings":"AAuBA,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CACD,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC;YAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAA;CAC9D;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,8EAA8E;IAC9E,YAAY,EAAE,MAAM,CAAA;IACpB,kEAAkE;IAClE,cAAc,EAAE,MAAM,CAAA;IACtB,2EAA2E;IAC3E,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AAED;6CAC6C;AAC7C,wBAAgB,eAAe,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAEvD;AAED;;;;+EAI+E;AAC/E,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,YAAY,EAAE,CAAC,CAoBzB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/B;AAED;;;2BAG2B;AAC3B,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBlF;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,IAAI,IAAI,CAAA;IACb,IAAI,IAAI,IAAI,CAAA;CACb;AAED;sCACsC;AACtC,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,mBAAmB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GACjD,eAAe,CAiBjB"}