@cello-protocol/daemon 0.0.169 → 0.0.170

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 (47) hide show
  1. package/dist/agent-id-migration.d.ts.map +1 -1
  2. package/dist/agent-id-migration.js +16 -0
  3. package/dist/agent-id-migration.js.map +1 -1
  4. package/dist/away-detection.d.ts +62 -15
  5. package/dist/away-detection.d.ts.map +1 -1
  6. package/dist/away-detection.js +77 -20
  7. package/dist/away-detection.js.map +1 -1
  8. package/dist/close-session-handler.d.ts.map +1 -1
  9. package/dist/close-session-handler.js +69 -3
  10. package/dist/close-session-handler.js.map +1 -1
  11. package/dist/daemon.d.ts.map +1 -1
  12. package/dist/daemon.js +291 -38
  13. package/dist/daemon.js.map +1 -1
  14. package/dist/delivery-open-registry.d.ts +92 -0
  15. package/dist/delivery-open-registry.d.ts.map +1 -0
  16. package/dist/delivery-open-registry.js +121 -0
  17. package/dist/delivery-open-registry.js.map +1 -0
  18. package/dist/document-delivery-transport.d.ts +10 -1
  19. package/dist/document-delivery-transport.d.ts.map +1 -1
  20. package/dist/document-delivery-transport.js +10 -1
  21. package/dist/document-delivery-transport.js.map +1 -1
  22. package/dist/document-layer.d.ts +21 -0
  23. package/dist/document-layer.d.ts.map +1 -1
  24. package/dist/document-layer.js +34 -1
  25. package/dist/document-layer.js.map +1 -1
  26. package/dist/document-reconcile-scheduler.d.ts +33 -0
  27. package/dist/document-reconcile-scheduler.d.ts.map +1 -1
  28. package/dist/document-reconcile-scheduler.js +73 -0
  29. package/dist/document-reconcile-scheduler.js.map +1 -1
  30. package/dist/inbound-sessions.d.ts +7 -0
  31. package/dist/inbound-sessions.d.ts.map +1 -1
  32. package/dist/inbound-sessions.js +27 -6
  33. package/dist/inbound-sessions.js.map +1 -1
  34. package/dist/notification-handlers.d.ts.map +1 -1
  35. package/dist/notification-handlers.js +39 -2
  36. package/dist/notification-handlers.js.map +1 -1
  37. package/dist/session-content-handlers.d.ts.map +1 -1
  38. package/dist/session-content-handlers.js +134 -8
  39. package/dist/session-content-handlers.js.map +1 -1
  40. package/dist/session-node-manager.d.ts +153 -8
  41. package/dist/session-node-manager.d.ts.map +1 -1
  42. package/dist/session-node-manager.js +1376 -35
  43. package/dist/session-node-manager.js.map +1 -1
  44. package/dist/types.d.ts +64 -2
  45. package/dist/types.d.ts.map +1 -1
  46. package/dist/types.js.map +1 -1
  47. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"agent-id-migration.d.ts","sourceRoot":"","sources":["../src/agent-id-migration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAqJ5E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,iEAAiE;IACjE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACtD;AAyDD;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,sBAAsB,CAyIxG"}
1
+ {"version":3,"file":"agent-id-migration.d.ts","sourceRoot":"","sources":["../src/agent-id-migration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAqK5E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,iEAAiE;IACjE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACtD;AAyDD;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,sBAAsB,CAyIxG"}
@@ -40,6 +40,20 @@
40
40
  * caught by a test that asserts a MIGRATED database's schema is byte-identical to a FRESH one.
41
41
  */
42
42
  import { withForeignKeysOff } from "./sqlcipher-db.js";
43
+ /**
44
+ * EVERY COLUMN THE INLINE ALTERs ADD MUST APPEAR IN THE createSql BELOW.
45
+ *
46
+ * `initialize()` runs the ALTERs first and this rebuild second, and the rebuild carries only the
47
+ * INTERSECTION of the old and new column sets. A column the ALTERs add and a createSql omits is
48
+ * therefore DELETED on the one boot where a legacy database upgrades — silently, unrecoverably,
49
+ * on an operator's machine. `sessions.read_at` was missing for exactly that reason: every dismissal
50
+ * flag would have been dropped, after which `getEndedUnread` (which filters on `read_at IS NULL`)
51
+ * throws `no such column` for the rest of that process.
52
+ *
53
+ * The parity test guards this, but only because it replays the ALTERs BEFORE the re-key, in the
54
+ * order `initialize()` uses. Replaying them afterwards puts the column back and the comparison
55
+ * passes over the top of the loss — which is how this survived.
56
+ */
43
57
  const REKEY_TARGETS = [
44
58
  {
45
59
  table: "sessions",
@@ -60,6 +74,8 @@ const REKEY_TARGETS = [
60
74
  sealed_root_hex TEXT,
61
75
  counterparty_primary_pubkey TEXT,
62
76
  session_name TEXT,
77
+ read_at INTEGER,
78
+ counterparty_abandoned_at INTEGER,
63
79
  PRIMARY KEY (agent_id, session_id)
64
80
  )`,
65
81
  indexSql: () => [],
@@ -1 +1 @@
1
- {"version":3,"file":"agent-id-migration.js","sourceRoot":"","sources":["../src/agent-id-migration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-id-migration.js","sourceRoot":"","sources":["../src/agent-id-migration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAGH,OAAO,EAAE,kBAAkB,EAAuB,MAAM,mBAAmB,CAAC;AAkB5E;;;;;;;;;;;;;GAaG;AACH,MAAM,aAAa,GAA2B;IAC5C;QACE,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;qBACD,CAAC;;;;;;;;;;;;;;;;;;QAkBd;QACJ,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;KACnB;IACD;QACE,KAAK,EAAE,4BAA4B;QACnC,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;qBACD,CAAC;;;;;;;;;;QAUd;QACJ,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;KACnB;IACD;QACE,KAAK,EAAE,qBAAqB;QAC5B,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;qBACD,CAAC;;;;;;;;QAQd;QACJ,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;KACnB;IACD;QACE,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;qBACD,CAAC;;;;;;;;QAQd;QACJ,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;KACnB;IACD;QACE,KAAK,EAAE,oBAAoB;QAC3B,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;qBACD,CAAC;;;;;QAKd;QACJ,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;KACnB;IACD;QACE,KAAK,EAAE,UAAU;QACjB,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;qBACD,CAAC;;;;;;QAMd;QACJ,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;KACnB;IACD;QACE,6FAA6F;QAC7F,8FAA8F;QAC9F,4FAA4F;QAC5F,8FAA8F;QAC9F,sFAAsF;QACtF,EAAE;QACF,yFAAyF;QACzF,iGAAiG;QACjG,0FAA0F;QAC1F,iGAAiG;QACjG,+FAA+F;QAC/F,oEAAoE;QACpE,KAAK,EAAE,aAAa;QACpB,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;qBACD,CAAC;;;;;;;;;;;QAWd;QACJ,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;YACf,iEAAiE,CAAC,4BAA4B;YAC9F,wEAAwE,CAAC,iDAAiD;SAC3H;KACF;CACO,CAAC;AAQX,SAAS,SAAS,CAAC,EAAkB,EAAE,KAAa;IAClD,OAAQ,EAAE,CAAC,OAAO,CAAC,qBAAqB,KAAK,GAAG,CAAC,CAAC,GAAG,EAAyC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACpH,CAAC;AAED,SAAS,WAAW,CAAC,EAAkB,EAAE,KAAa;IACpD,OAAO,CACL,EAAE,CAAC,OAAO,CAAC,+DAA+D,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,CACrG,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,kBAAkB,CAAC,EAAkB;IAC5C,MAAM,IAAI,GAAG,EAAE;SACZ,OAAO,CAAC,yCAAyC,CAAC;SAClD,GAAG,EAAgE,CAAC;IAEvE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC;YAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACvD,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IACD,IAAI,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,+CAA+C,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB;YACjG,kGAAkG;YAClG,iGAAiG;YACjG,sFAAsF,CACzF,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,6FAA6F;AAC7F,SAAS,UAAU,CAAC,EAAkB,EAAE,KAAa;IACnD,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,6BAA6B,CAAC,EAAkB,EAAE,MAAc;IAC9E,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACrE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAEpE,iGAAiG;IACjG,+FAA+F;IAC/F,iEAAiE;IACjE,IAAI,QAA6B,CAAC;IAClC,IAAI,CAAC;QACH,QAAQ,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE;YACxD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;YACnC,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACzD,CAAC,CAAC;QACH,MAAM,GAAG,CAAC;IACZ,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAG,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,EAAoB,CAAC,CAAC,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,SAAS,GAA2B,EAAE,CAAC;IAE7C,0FAA0F;IAC1F,EAAE;IACF,4EAA4E;IAC5E,8FAA8F;IAC9F,gGAAgG;IAChG,gGAAgG;IAChG,sCAAsC;IACtC,EAAE;IACF,iGAAiG;IACjG,8FAA8F;IAC9F,kFAAkF;IAClF,+FAA+F;IAC/F,+DAA+D;IAC/D,OAAO,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC;YACH,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5C,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,YAAY,CAAC;gBAExC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;gBAE/B,8FAA8F;gBAC9F,8FAA8F;gBAC9F,6FAA6F;gBAC7F,MAAM,OAAO,GAAG,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBACnC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBAE/F,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;gBAC/C,IAAI,OAAO,EAAE,CAAC;oBACZ,6FAA6F;oBAC7F,yFAAyF;oBACzF,6FAA6F;oBAC7F,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC;oBACjE,EAAE,CAAC,IAAI,CACL,eAAe,GAAG,aAAa,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;gCAC1D,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;oBAChF,MAAM,CAAC,KAAK,MAAM,IAAI,0CAA0C,CACzE,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,6FAA6F;oBAC7F,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBACjC,MAAM,IAAI,KAAK,CACb,wCAAwC,MAAM,CAAC,KAAK,uCAAuC,CAC5F,CAAC;oBACJ,CAAC;oBACD,EAAE,CAAC,IAAI,CACL,eAAe,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,KAAK,IAAI,CACtH,CAAC;gBACJ,CAAC;gBAED,MAAM,KAAK,GAAI,EAAE,CAAC,OAAO,CAAC,6BAA6B,GAAG,EAAE,CAAC,CAAC,GAAG,EAAoB,CAAC,CAAC,CAAC;gBACxF,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAE,CAAC;gBAC3C,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACvB,MAAM,IAAI,KAAK,CACb,gDAAgD,MAAM,CAAC,KAAK,SAAS,QAAQ,qBAAqB;wBAChG,GAAG,KAAK,qEAAqE,MAAM,CAAC,KAAK,cAAc;wBACvG,0FAA0F,CAC7F,CAAC;gBACJ,CAAC;gBAED,+FAA+F;gBAC/F,uEAAuE;gBACvE,MAAM,UAAU,GACd,MAAM,CAAC,QAAQ,KAAK,QAAQ;oBAC1B,CAAC,CAAE,EAAE,CAAC,OAAO,CAAC,6BAA6B,GAAG,yBAAyB,CAAC,CAAC,GAAG,EAAoB,CAAC,CAAC;oBAClG,CAAC,CAAC,OAAO;wBACP,CAAC,CACG,EAAE;6BACC,OAAO,CACN,6BAA6B,MAAM,CAAC,KAAK;iGACkC,CAC5E;6BACA,GAAG,EACP,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC,CAAC;gBACV,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;oBACnB,MAAM,IAAI,KAAK,CACb,wCAAwC,MAAM,CAAC,KAAK,SAAS,UAAU,gCAAgC;wBACrG,0FAA0F,CAC7F,CAAC;gBACJ,CAAC;gBAED,EAAE,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBACtC,EAAE,CAAC,IAAI,CAAC,eAAe,GAAG,cAAc,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBACxD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;oBAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAE9D,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YAClC,CAAC;YACD,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,oGAAoG;YACpG,IAAI,CAAC;gBACH,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC;gBACP,4DAA4D;YAC9D,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE;gBACxD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;gBACnC,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACzD,CAAC,CAAC;YACH,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE;YAChD,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAC9B,SAAS;YACT,YAAY,EAAE,QAAQ,CAAC,IAAI;SAC5B,CAAC,CAAC;QAEH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -17,12 +17,30 @@
17
17
  * The one-shot rule is right about a human who keeps typing. It is wrong about another away
18
18
  * responder, which is not a caller ignoring anything.
19
19
  *
20
- * ── WHY EXACT MATCHING, AND NOT A MARKER ─────────────────────────────────────────────────────────
20
+ * ── DOD-M12B-AWAY-MARK-1 (2026-08-17): A MARKER, PLUS THE EXACT MATCHING ────────────────────────
21
21
  *
22
- * A marker in the wire frame would be cleaner and is the right long-term answer, but it is a wire
23
- * change: an older peer would not send it, and this defect fires precisely when talking to a peer we
24
- * do not control. Exact text match works today against the case that actually loops both sides
25
- * running THIS logic and needs no version agreement.
22
+ * This file used to argue against a marker, on the grounds that it is a WIRE change an older peer
23
+ * would not send. That argument holds for a marker in the wire FRAME, and `AWAY_AUTO_REPLY_MARKER`
24
+ * is not one it is a token at the front of the message TEXT, the same class of thing as
25
+ * `[[OVER]]` and `[[WRAP]]`, which already ride in the body and which the receive path already
26
+ * parses. An older peer just sends text without it. So the exact matching below did not go away; it
27
+ * became the LEGACY branch, and it is still the only thing that recognises an un-upgraded peer.
28
+ *
29
+ * The marker exists because of a defect the mutual-seal fix does not touch. This daemon's away
30
+ * responder answers when nobody is attending, and the reply goes out as an ordinary `msg` leaf at a
31
+ * real sequence with nothing on it to say a machine wrote it. To the initiator that is positive
32
+ * evidence a person is there. Measured 2026-08-17: two agents spent a morning exchanging each
33
+ * other's away responders while both operators believed a conversation was happening.
34
+ *
35
+ * PREFIX, never suffix. `[[WRAP]]` detection is end-anchored on purpose (`DOD-WRAP-SUBSTRING-1`)
36
+ * and the one-shot rejection ends with `[[WRAP]]`; a marker appended at the end would take that
37
+ * position and silently break the counterparty's close detection.
38
+ *
39
+ * The marker LABELS, it never SUPPRESSES. An in-band token is spoofable — a human can type it — so
40
+ * it must never be able to make a real message vanish. It changes what the reader is told, never
41
+ * whether the reader is told.
42
+ *
43
+ * ── WHY EXACT MATCHING IS STILL HERE ────────────────────────────────────────────────────────────
26
44
  *
27
45
  * EXACT, never substring. A human who quotes the away message must still be answered; silencing a
28
46
  * real message is a worse failure than the one being fixed, because the operator would never learn
@@ -33,14 +51,16 @@
33
51
  *
34
52
  * ── WHY A CUSTOM AWAY MESSAGE ON THE FAR SIDE DOES NOT DEFEAT THIS ───────────────────────────────
35
53
  *
36
- * An operator can set their own away wording (`resolveAwayMessage`), and the incident that produced
37
- * this defect had exactly that on one side so this detector cannot recognise the peer's reply, and
38
- * that side's one-shot still fires.
54
+ * An operator can set their own away wording (`resolveAwayMessage`). Against a marker-aware peer
55
+ * that is now solved outright the marker is applied at the single send choke point in
56
+ * `sendAwayResponse`, so a configured message carries it exactly like a default one does, and this
57
+ * is the gap exact matching could not close by construction.
39
58
  *
40
- * It does not matter, because **notarization requires TWO ctrl leaves from DISTINCT senders.**
41
- * Declining on one side is enough to break it: their one-shot posts one ctrl leaf, ours does not
42
- * post the second, and no certificate is minted. The session simply stays unsealed, which is the
43
- * correct end for an exchange nobody had.
59
+ * Against an un-upgraded peer with custom wording, the original reasoning still applies and is
60
+ * unchanged: **notarization requires TWO ctrl leaves from DISTINCT senders.** Declining on one side
61
+ * is enough to break it: their one-shot posts one ctrl leaf, ours does not post the second, and no
62
+ * certificate is minted. The session simply stays unsealed, which is the correct end for an
63
+ * exchange nobody had.
44
64
  *
45
65
  * A broader rule was tried and reverted: "never notarize a session on which this agent has only sent
46
66
  * away traffic". It disabled `DOD-INBOX-ONESHOT-1`'s designed behaviour — a REAL caller who ignores
@@ -48,21 +68,48 @@
48
68
  * correctly caught it. The narrow rule is not a weaker version of the broad one; it is the correct
49
69
  * one, because the thing to suppress is a machine answering a machine, not an away agent sealing.
50
70
  */
51
- /** The exact strings this daemon sends as away auto-replies. */
71
+ /**
72
+ * The in-band mark on every message this daemon generates without a human in the loop.
73
+ *
74
+ * DOD-M12B-AWAY-MARK-1. Prefixed, for the end-anchoring reason in the header. Deliberately shaped
75
+ * like the existing `[[…]]` signal tokens: the receive path already parses that family, an older
76
+ * peer reads it as plain text rather than choking, and a human reading the transcript can see it.
77
+ */
78
+ export declare const AWAY_AUTO_REPLY_MARKER = "[[AUTO-REPLY]]";
79
+ /**
80
+ * Prefix `text` with the auto-reply marker. IDEMPOTENT — the single send choke point in
81
+ * `sendAwayResponse` marks whatever `resolveAwayMessage` returns, which for a system default is
82
+ * already marked, and double-marking would put a stray token in front of every operator's greeting.
83
+ */
84
+ export declare function markAsAutoReply(text: string): string;
85
+ /**
86
+ * True when `text` carries the marker AT THE FRONT.
87
+ *
88
+ * Anchored, not a substring search: a message that merely mentions the marker is a person talking
89
+ * about it, and labelling that as machine traffic teaches the reader to discount a human.
90
+ */
91
+ export declare function isAutoReplyMarked(text: string): boolean;
92
+ /** The exact strings this daemon sends as away auto-replies. Marked at the source. */
52
93
  export declare const AWAY_AUTO_REPLY_TEXTS: {
53
94
  /**
54
95
  * The one-shot acknowledgement, sent when a message arrives for an unattended agent.
55
96
  * States the one-shot rule, because without it a cooperative caller has no reason to stop.
56
97
  */
57
- readonly oneShot: string;
98
+ readonly oneShot: "[[AUTO-REPLY]] Agent is currently away. Your message has been received and will be read when the operator returns. This inbox accepts one message per visit — please close the session now (send with signal: wrap) instead of sending more.";
58
99
  /** The session-offer answer, which names the away agent — so it is built, not fixed. */
59
100
  readonly offerFor: (agentName: string) => string;
60
101
  };
61
102
  /**
62
- * True when `text` is one of THIS daemon's away auto-replies — machine traffic, not a caller.
103
+ * True when `text` is away auto-reply traffic a machine, not a caller.
63
104
  *
64
105
  * The caller must neither answer it nor count it toward the one-shot rule. Answering produces the
65
106
  * ping-pong; counting it produces the seal.
107
+ *
108
+ * Two branches, and both are needed. The MARKER branch covers any marker-aware peer including one
109
+ * running a configured away message, which exact matching could never reach. The LEGACY branch
110
+ * covers a peer on the pre-marker build sending this daemon's old default wording — remove it and
111
+ * two away agents on mixed versions notarize a session nobody had, which is the whole of
112
+ * DOD-AWAY-MUTUAL-SEAL-1.
66
113
  */
67
114
  export declare function isOwnAwayAutoReply(text: string): boolean;
68
115
  //# sourceMappingURL=away-detection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"away-detection.d.ts","sourceRoot":"","sources":["../src/away-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAEH,gEAAgE;AAChE,eAAO,MAAM,qBAAqB;IAChC;;;OAGG;;IAKH,wFAAwF;mCACpE,MAAM,KAAG,MAAM;CAG3B,CAAC;AAKX;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOxD"}
1
+ {"version":3,"file":"away-detection.d.ts","sourceRoot":"","sources":["../src/away-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AAUvD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGpD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,sFAAsF;AACtF,eAAO,MAAM,qBAAqB;IAChC;;;OAGG;;IAGH,wFAAwF;mCACpE,MAAM,KAAG,MAAM;CAG3B,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQxD"}
@@ -17,12 +17,30 @@
17
17
  * The one-shot rule is right about a human who keeps typing. It is wrong about another away
18
18
  * responder, which is not a caller ignoring anything.
19
19
  *
20
- * ── WHY EXACT MATCHING, AND NOT A MARKER ─────────────────────────────────────────────────────────
20
+ * ── DOD-M12B-AWAY-MARK-1 (2026-08-17): A MARKER, PLUS THE EXACT MATCHING ────────────────────────
21
21
  *
22
- * A marker in the wire frame would be cleaner and is the right long-term answer, but it is a wire
23
- * change: an older peer would not send it, and this defect fires precisely when talking to a peer we
24
- * do not control. Exact text match works today against the case that actually loops both sides
25
- * running THIS logic and needs no version agreement.
22
+ * This file used to argue against a marker, on the grounds that it is a WIRE change an older peer
23
+ * would not send. That argument holds for a marker in the wire FRAME, and `AWAY_AUTO_REPLY_MARKER`
24
+ * is not one it is a token at the front of the message TEXT, the same class of thing as
25
+ * `[[OVER]]` and `[[WRAP]]`, which already ride in the body and which the receive path already
26
+ * parses. An older peer just sends text without it. So the exact matching below did not go away; it
27
+ * became the LEGACY branch, and it is still the only thing that recognises an un-upgraded peer.
28
+ *
29
+ * The marker exists because of a defect the mutual-seal fix does not touch. This daemon's away
30
+ * responder answers when nobody is attending, and the reply goes out as an ordinary `msg` leaf at a
31
+ * real sequence with nothing on it to say a machine wrote it. To the initiator that is positive
32
+ * evidence a person is there. Measured 2026-08-17: two agents spent a morning exchanging each
33
+ * other's away responders while both operators believed a conversation was happening.
34
+ *
35
+ * PREFIX, never suffix. `[[WRAP]]` detection is end-anchored on purpose (`DOD-WRAP-SUBSTRING-1`)
36
+ * and the one-shot rejection ends with `[[WRAP]]`; a marker appended at the end would take that
37
+ * position and silently break the counterparty's close detection.
38
+ *
39
+ * The marker LABELS, it never SUPPRESSES. An in-band token is spoofable — a human can type it — so
40
+ * it must never be able to make a real message vanish. It changes what the reader is told, never
41
+ * whether the reader is told.
42
+ *
43
+ * ── WHY EXACT MATCHING IS STILL HERE ────────────────────────────────────────────────────────────
26
44
  *
27
45
  * EXACT, never substring. A human who quotes the away message must still be answered; silencing a
28
46
  * real message is a worse failure than the one being fixed, because the operator would never learn
@@ -33,14 +51,16 @@
33
51
  *
34
52
  * ── WHY A CUSTOM AWAY MESSAGE ON THE FAR SIDE DOES NOT DEFEAT THIS ───────────────────────────────
35
53
  *
36
- * An operator can set their own away wording (`resolveAwayMessage`), and the incident that produced
37
- * this defect had exactly that on one side so this detector cannot recognise the peer's reply, and
38
- * that side's one-shot still fires.
54
+ * An operator can set their own away wording (`resolveAwayMessage`). Against a marker-aware peer
55
+ * that is now solved outright the marker is applied at the single send choke point in
56
+ * `sendAwayResponse`, so a configured message carries it exactly like a default one does, and this
57
+ * is the gap exact matching could not close by construction.
39
58
  *
40
- * It does not matter, because **notarization requires TWO ctrl leaves from DISTINCT senders.**
41
- * Declining on one side is enough to break it: their one-shot posts one ctrl leaf, ours does not
42
- * post the second, and no certificate is minted. The session simply stays unsealed, which is the
43
- * correct end for an exchange nobody had.
59
+ * Against an un-upgraded peer with custom wording, the original reasoning still applies and is
60
+ * unchanged: **notarization requires TWO ctrl leaves from DISTINCT senders.** Declining on one side
61
+ * is enough to break it: their one-shot posts one ctrl leaf, ours does not post the second, and no
62
+ * certificate is minted. The session simply stays unsealed, which is the correct end for an
63
+ * exchange nobody had.
44
64
  *
45
65
  * A broader rule was tried and reverted: "never notarize a session on which this agent has only sent
46
66
  * away traffic". It disabled `DOD-INBOX-ONESHOT-1`'s designed behaviour — a REAL caller who ignores
@@ -48,31 +68,68 @@
48
68
  * correctly caught it. The narrow rule is not a weaker version of the broad one; it is the correct
49
69
  * one, because the thing to suppress is a machine answering a machine, not an away agent sealing.
50
70
  */
51
- /** The exact strings this daemon sends as away auto-replies. */
71
+ /**
72
+ * The in-band mark on every message this daemon generates without a human in the loop.
73
+ *
74
+ * DOD-M12B-AWAY-MARK-1. Prefixed, for the end-anchoring reason in the header. Deliberately shaped
75
+ * like the existing `[[…]]` signal tokens: the receive path already parses that family, an older
76
+ * peer reads it as plain text rather than choking, and a human reading the transcript can see it.
77
+ */
78
+ export const AWAY_AUTO_REPLY_MARKER = "[[AUTO-REPLY]]";
79
+ /** The unmarked bodies. Kept separate so the legacy detector below matches an un-upgraded peer. */
80
+ const ONESHOT_BODY = "Agent is currently away. Your message has been received and will be read when the operator returns. " +
81
+ "This inbox accepts one message per visit — please close the session now (send with signal: wrap) instead of sending more.";
82
+ /** The offer text with the agent name removed, so any agent's offer is recognised. */
83
+ const OFFER_SUFFIX = " is currently away. Leave a message (send with signal: wrap to close) and it will be read when they return.";
84
+ /**
85
+ * Prefix `text` with the auto-reply marker. IDEMPOTENT — the single send choke point in
86
+ * `sendAwayResponse` marks whatever `resolveAwayMessage` returns, which for a system default is
87
+ * already marked, and double-marking would put a stray token in front of every operator's greeting.
88
+ */
89
+ export function markAsAutoReply(text) {
90
+ if (isAutoReplyMarked(text))
91
+ return text;
92
+ return `${AWAY_AUTO_REPLY_MARKER} ${text}`;
93
+ }
94
+ /**
95
+ * True when `text` carries the marker AT THE FRONT.
96
+ *
97
+ * Anchored, not a substring search: a message that merely mentions the marker is a person talking
98
+ * about it, and labelling that as machine traffic teaches the reader to discount a human.
99
+ */
100
+ export function isAutoReplyMarked(text) {
101
+ return text.startsWith(AWAY_AUTO_REPLY_MARKER);
102
+ }
103
+ /** The exact strings this daemon sends as away auto-replies. Marked at the source. */
52
104
  export const AWAY_AUTO_REPLY_TEXTS = {
53
105
  /**
54
106
  * The one-shot acknowledgement, sent when a message arrives for an unattended agent.
55
107
  * States the one-shot rule, because without it a cooperative caller has no reason to stop.
56
108
  */
57
- oneShot: "Agent is currently away. Your message has been received and will be read when the operator returns. " +
58
- "This inbox accepts one message per visit — please close the session now (send with signal: wrap) instead of sending more.",
109
+ oneShot: `${AWAY_AUTO_REPLY_MARKER} ${ONESHOT_BODY}`,
59
110
  /** The session-offer answer, which names the away agent — so it is built, not fixed. */
60
111
  offerFor(agentName) {
61
- return `${agentName} is currently away. Leave a message (send with signal: wrap to close) and it will be read when they return.`;
112
+ return `${AWAY_AUTO_REPLY_MARKER} ${agentName}${OFFER_SUFFIX}`;
62
113
  },
63
114
  };
64
- /** The offer text with the agent name removed, so any agent's offer is recognised. */
65
- const OFFER_SUFFIX = " is currently away. Leave a message (send with signal: wrap to close) and it will be read when they return.";
66
115
  /**
67
- * True when `text` is one of THIS daemon's away auto-replies — machine traffic, not a caller.
116
+ * True when `text` is away auto-reply traffic a machine, not a caller.
68
117
  *
69
118
  * The caller must neither answer it nor count it toward the one-shot rule. Answering produces the
70
119
  * ping-pong; counting it produces the seal.
120
+ *
121
+ * Two branches, and both are needed. The MARKER branch covers any marker-aware peer including one
122
+ * running a configured away message, which exact matching could never reach. The LEGACY branch
123
+ * covers a peer on the pre-marker build sending this daemon's old default wording — remove it and
124
+ * two away agents on mixed versions notarize a session nobody had, which is the whole of
125
+ * DOD-AWAY-MUTUAL-SEAL-1.
71
126
  */
72
127
  export function isOwnAwayAutoReply(text) {
73
128
  if (text.length === 0)
74
129
  return false;
75
- if (text === AWAY_AUTO_REPLY_TEXTS.oneShot)
130
+ if (isAutoReplyMarked(text))
131
+ return true;
132
+ if (text === ONESHOT_BODY)
76
133
  return true;
77
134
  // The offer names an agent, so match the invariant tail — but require a non-empty name in front
78
135
  // of it, so a bare quote of the suffix alone is not treated as machine traffic.
@@ -1 +1 @@
1
- {"version":3,"file":"away-detection.js","sourceRoot":"","sources":["../src/away-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAEH,gEAAgE;AAChE,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC;;;OAGG;IACH,OAAO,EACL,sGAAsG;QACtG,2HAA2H;IAE7H,wFAAwF;IACxF,QAAQ,CAAC,SAAiB;QACxB,OAAO,GAAG,SAAS,6GAA6G,CAAC;IACnI,CAAC;CACO,CAAC;AAEX,sFAAsF;AACtF,MAAM,YAAY,GAAG,6GAA6G,CAAC;AAEnI;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACpC,IAAI,IAAI,KAAK,qBAAqB,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACxD,gGAAgG;IAChG,gFAAgF;IAChF,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAClF,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"away-detection.js","sourceRoot":"","sources":["../src/away-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,gBAAgB,CAAC;AAEvD,mGAAmG;AACnG,MAAM,YAAY,GAChB,sGAAsG;IACtG,2HAA2H,CAAC;AAE9H,sFAAsF;AACtF,MAAM,YAAY,GAAG,6GAA6G,CAAC;AAEnI;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,IAAI,iBAAiB,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,GAAG,sBAAsB,IAAI,IAAI,EAAE,CAAC;AAC7C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;AACjD,CAAC;AAED,sFAAsF;AACtF,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC;;;OAGG;IACH,OAAO,EAAE,GAAG,sBAAsB,IAAI,YAAY,EAAE;IAEpD,wFAAwF;IACxF,QAAQ,CAAC,SAAiB;QACxB,OAAO,GAAG,sBAAsB,IAAI,SAAS,GAAG,YAAY,EAAE,CAAC;IACjE,CAAC;CACO,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACpC,IAAI,iBAAiB,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,IAAI,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC;IACvC,gGAAgG;IAChG,gFAAgF;IAChF,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAClF,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"close-session-handler.d.ts","sourceRoot":"","sources":["../src/close-session-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"close-session-handler.d.ts","sourceRoot":"","sources":["../src/close-session-handler.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,13 @@
14
14
  * that is the entire difference from a closure over 73 shared locals.
15
15
  */
16
16
  import { randomUUID } from "node:crypto";
17
+ /**
18
+ * DOD-M12B-ABANDON-NOTIFY-1 — how long the courtesy notice may delay a force-abandon.
19
+ *
20
+ * Force-abandon is the operator's escape hatch out of a session that can never seal, and it must
21
+ * always return. Telling the counterparty is worth a moment; it is not worth the escape hatch.
22
+ */
23
+ const ABANDON_NOTICE_DEADLINE_MS = 3_000;
17
24
  import { classifyOnlineResult } from "./cross-node-negotiation.js";
18
25
  import { validateSessionName } from "./session-name.js";
19
26
  export function registerCloseSessionHandler(deps) {
@@ -312,11 +319,53 @@ export function registerCloseSessionHandler(deps) {
312
319
  // on both would put the same paragraph on the ninety routine force-abandons that cost nothing
313
320
  // and the one that cost a receipt, which buries the only occurrence that matters.
314
321
  const mayHaveSealed = record.status === "interrupted" || record.status === "seal_interrupted_pending";
322
+ // ONE id for the close and every line the notice emits, so they can be joined. Minting a
323
+ // fresh one inside the notice call meant its sent/failed/skipped lines belonged to no flow.
324
+ const correlationId = randomUUID();
325
+ // DOD-M12B-ABANDON-NOTIFY-1: TELL THEM FIRST, while the session node still exists — the
326
+ // abandon tears it down, and after that there is no stream to tell them on. Awaited so the
327
+ // answer can be honest about whether they were reached, but it can only ever return: it never
328
+ // throws and never blocks the abandon, which is the operator's escape hatch and must not
329
+ // depend on the counterparty being reachable.
330
+ //
331
+ // Without this the other side keeps its half live, keeps retrying delivery into it, and keeps
332
+ // trying to re-establish — which is what produced the 2026-08-17 storm, where the operator saw
333
+ // connection requests from agents nobody was driving.
334
+ // DELIBERATELY FAIL-OPEN, and this is the one place in the milestone where that is right:
335
+ // force-abandon is the operator's escape hatch out of a session that can never seal, and it
336
+ // must not become conditional on a courtesy. The notice already handles its own failures; this
337
+ // catches the unexpected — an absent method, a throw from the transport layer — so that no
338
+ // fault in telling the counterparty can prevent the operator from ending their own session.
339
+ let notice = { told: false, reason: "not_attempted" };
340
+ try {
341
+ // A HARD DEADLINE, not just a catch. The catch covers a throw; it does not cover a hang,
342
+ // and `stream.close()` waits for the write buffer to drain with no timeout anywhere in the
343
+ // chain — so a half-dead connection could sit here indefinitely on the one call that must
344
+ // always return. Force-abandon is the escape hatch; it does not get to be slow either.
345
+ notice = await Promise.race([
346
+ sessionNodeManager.notifyCounterpartyAbandon(record.agent_name, sessionId, correlationId),
347
+ new Promise((resolve) => {
348
+ const t = setTimeout(() => resolve({ told: false, reason: "notice_timeout" }), ABANDON_NOTICE_DEADLINE_MS);
349
+ t.unref?.();
350
+ }),
351
+ ]);
352
+ }
353
+ catch (err) {
354
+ logger.warn("session.abandon.notice.threw", {
355
+ agentName: record.agent_name, sessionId, correlationId,
356
+ error: err instanceof Error ? err.message : String(err),
357
+ impact: "the counterparty was not told and may keep calling; the abandon itself proceeds",
358
+ });
359
+ }
360
+ const told = notice.told;
315
361
  await sessionNodeManager.abandonSession(record.agent_name, sessionId);
316
362
  logger.info("session.force_abandoned", {
317
363
  agentName: record.agent_name,
318
364
  sessionId,
319
365
  priorStatus: record.status,
366
+ counterpartyNotified: told,
367
+ counterpartyNoticeReason: notice.reason,
368
+ correlationId,
320
369
  // Makes the destructive case findable in a log instead of reconstructable by hand, which is
321
370
  // how the 2026-08-06 incident had to be traced.
322
371
  mayHaveForfeitedSeal: mayHaveSealed,
@@ -325,7 +374,14 @@ export function registerCloseSessionHandler(deps) {
325
374
  ok: true,
326
375
  status: "abandoned",
327
376
  reason: "force_abandoned",
377
+ counterparty_notified: told,
378
+ counterparty_notice_reason: notice.reason,
328
379
  guidance: `Session ${sessionId} was force-abandoned — marked terminal locally with no bilateral seal. Use force only for a half-open session that cannot be sealed; a normal close (no force) still attempts the seal so both parties get a notarized receipt.` +
380
+ (told
381
+ ? ` The notice was sent — a counterparty running a current client will stop calling this session. There is no acknowledgement for it, so if connection attempts keep arriving they are on an older build that does not understand it.`
382
+ : notice.reason === "no_local_node"
383
+ ? ` They were NOT told: this side had already torn the session down, so there was nothing to send the notice on. Their half stays open and they may go on retrying delivery and re-dialling until they give up. If connection attempts keep arriving from them, that is why — it is not a network fault.`
384
+ : ` They were NOT told (${notice.reason}), so their half stays open: they may go on retrying delivery and re-dialling this session until they give up. If connection attempts keep arriving from them, that is why.`) +
329
385
  (mayHaveSealed
330
386
  ? ` This session had reached a seal attempt (prior status: ${record.status}), so if the counterparty did notarize it, this side's half is now PERMANENTLY forfeited and cannot be recovered from here. Their copy, if it exists, is the only remaining one — ask them for their sealed_root and record it with the operator.`
331
387
  : ""),
@@ -350,7 +406,7 @@ export function registerCloseSessionHandler(deps) {
350
406
  const sealable = record.status === "active" || record.status === "interrupted";
351
407
  let readiness = sealable
352
408
  ? sessionNodeManager.sealReadiness(record.agent_name, sessionId)
353
- : { ready: true, treeSize: 0, highWaterSeq: -1, heldCount: 0, missingLeaves: 0 };
409
+ : { ready: true, treeSize: 0, highWaterSeq: -1, heldCount: 0, missingLeaves: 0, heldOwn: 0, heldReceived: 0 };
354
410
  // Review HIGH-1: the guidance used to promise "the daemon pulls missing content automatically"
355
411
  // while nothing on this path pulled anything — autoRecoverForAgent fires on signaling reconnect,
356
412
  // seal-upgrade and agent start, none of which a close triggers. So the operator waited for an
@@ -376,16 +432,26 @@ export function registerCloseSessionHandler(deps) {
376
432
  agentName: record.agent_name, sessionId,
377
433
  treeSize: readiness.treeSize, highWaterSeq: readiness.highWaterSeq,
378
434
  heldCount: readiness.heldCount, missingLeaves: readiness.missingLeaves,
435
+ heldOwn: readiness.heldOwn, heldReceived: readiness.heldReceived,
379
436
  });
437
+ // DOD-M12B-INDEX-1: SAY WHOSE MESSAGES ARE WAITING. Our own held sends block the seal exactly
438
+ // as received ones do, but calling them "received message(s) waiting behind a gap" tells the
439
+ // operator to wait for content that is already in hand — and the relay pull this gate performs
440
+ // first can never resolve it. They retry, get the identical refusal, and reach for force:true:
441
+ // the receipt-less exit this gate exists to prevent.
442
+ const waiting = (readiness.heldReceived > 0 ? `, and ${readiness.heldReceived} received message(s) are waiting behind a gap` : "") +
443
+ (readiness.heldOwn > 0 ? `, and ${readiness.heldOwn} of YOUR OWN message(s) are waiting for their place in the record (they were delivered — the counterparty has them)` : "");
380
444
  return {
381
445
  ok: false,
382
446
  reason: "session_incomplete",
383
447
  missing_leaves: readiness.missingLeaves,
384
448
  held_messages: readiness.heldCount,
449
+ held_own: readiness.heldOwn,
450
+ held_received: readiness.heldReceived,
385
451
  guidance: `This side of the conversation is incomplete, so sealing now would produce a chain the counterparty cannot co-sign — and that refusal is terminal, leaving a force-abandon with no notarized receipt as the only way out. ` +
386
452
  `You hold ${readiness.treeSize} message(s); the relay has witnessed ${readiness.highWaterSeq + 1}` +
387
- (readiness.heldCount > 0 ? `, and ${readiness.heldCount} received message(s) are waiting behind a gap` : "") +
388
- `. The daemon just pulled from the relay and the gap is still there, so the content is not available yet — wait a moment and close again. If it does not resolve, cello_transcript ${sessionId} shows what did arrive, and cello_close_session ${sessionId} { force: true } abandons it terminally (no receipt).`,
453
+ waiting +
454
+ `. Everything here is waiting on an earlier message from the counterparty that has not arrived; the daemon just pulled from the relay and the gap is still there, so wait a moment and close again. If it does not resolve, cello_transcript ${sessionId} shows what did arrive, and cello_close_session ${sessionId} { force: true } abandons it terminally (no receipt).`,
389
455
  };
390
456
  }
391
457
  // AC-011: seal-interrupted already in progress
@@ -1 +1 @@
1
- {"version":3,"file":"close-session-handler.js","sourceRoot":"","sources":["../src/close-session-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"close-session-handler.js","sourceRoot":"","sources":["../src/close-session-handler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAKH,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EAMrB,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAmC,KAAK,UAAU,EAAsB,MAAM,iBAAiB,CAAC;AAEvG,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAO/D,OAAO,EAAoD,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAiB7G,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAsB,MAAM,2BAA2B,CAAC;AAS5G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAIlE,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;AA2BnF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAWlD,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,SAAS,IAAI,oBAAoB,CAAC;IAClC;;;;OAIG;IACH,qBAAqB,IAAI,kBAAkB,CAAC;IAC5C;;;;OAIG;IACH,oBAAoB,IAAI,kBAAkB,CAAC;IAC3C;;;OAGG;IACH,iBAAiB,IAAI,eAAe,CAAC;IACrC;;OAEG;IACH,eAAe,IAAI,YAAY,CAAC;IAChC;;;;;;;;OAQG;IACH,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACxC;AAYD,qBAAa,4BAA6B,YAAW,mBAAmB;IAChE,UAAU,CAAC,MAAM,EAAE,iBAAiB;CA8B3C;AAID,eAAO,MAAM,sBAAsB,QAAsB,CAAC;AAE1D;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAS7E"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAKH,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EAOrB,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAmC,KAAK,UAAU,EAAsB,MAAM,iBAAiB,CAAC;AAEvG,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAO/D,OAAO,EAAoD,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAiB7G,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAsB,MAAM,2BAA2B,CAAC;AAS5G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAIlE,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;AA2BnF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAYlD,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,SAAS,IAAI,oBAAoB,CAAC;IAClC;;;;OAIG;IACH,qBAAqB,IAAI,kBAAkB,CAAC;IAC5C;;;;OAIG;IACH,oBAAoB,IAAI,kBAAkB,CAAC;IAC3C;;;OAGG;IACH,iBAAiB,IAAI,eAAe,CAAC;IACrC;;OAEG;IACH,eAAe,IAAI,YAAY,CAAC;IAChC;;;;;;;;OAQG;IACH,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACxC;AAYD,qBAAa,4BAA6B,YAAW,mBAAmB;IAChE,UAAU,CAAC,MAAM,EAAE,iBAAiB;CA8B3C;AAID,eAAO,MAAM,sBAAsB,QAAsB,CAAC;AAE1D;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAS7E"}