@cello-protocol/daemon 0.0.186 → 0.0.188

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 (55) hide show
  1. package/dist/agent-id-migration.d.ts.map +1 -1
  2. package/dist/agent-id-migration.js +5 -0
  3. package/dist/agent-id-migration.js.map +1 -1
  4. package/dist/contact-pubkey-case.d.ts +65 -0
  5. package/dist/contact-pubkey-case.d.ts.map +1 -0
  6. package/dist/contact-pubkey-case.js +135 -0
  7. package/dist/contact-pubkey-case.js.map +1 -0
  8. package/dist/content-park.d.ts.map +1 -1
  9. package/dist/content-park.js +24 -5
  10. package/dist/content-park.js.map +1 -1
  11. package/dist/daemon.js +19 -1
  12. package/dist/daemon.js.map +1 -1
  13. package/dist/inbound-sessions.d.ts.map +1 -1
  14. package/dist/inbound-sessions.js +37 -7
  15. package/dist/inbound-sessions.js.map +1 -1
  16. package/dist/notification-handlers.d.ts.map +1 -1
  17. package/dist/notification-handlers.js +103 -2
  18. package/dist/notification-handlers.js.map +1 -1
  19. package/dist/orphan-triage.d.ts +130 -0
  20. package/dist/orphan-triage.d.ts.map +1 -0
  21. package/dist/orphan-triage.js +207 -0
  22. package/dist/orphan-triage.js.map +1 -0
  23. package/dist/quarantine-framing.d.ts +92 -0
  24. package/dist/quarantine-framing.d.ts.map +1 -0
  25. package/dist/quarantine-framing.js +111 -0
  26. package/dist/quarantine-framing.js.map +1 -0
  27. package/dist/refusal-reasons.d.ts +39 -0
  28. package/dist/refusal-reasons.d.ts.map +1 -1
  29. package/dist/refusal-reasons.js +88 -0
  30. package/dist/refusal-reasons.js.map +1 -1
  31. package/dist/seal-frontier-verify.d.ts.map +1 -1
  32. package/dist/seal-frontier-verify.js +24 -16
  33. package/dist/seal-frontier-verify.js.map +1 -1
  34. package/dist/sealed-leaf-set.d.ts +4 -4
  35. package/dist/sealed-leaf-set.d.ts.map +1 -1
  36. package/dist/sealed-leaf-set.js +11 -18
  37. package/dist/sealed-leaf-set.js.map +1 -1
  38. package/dist/session-content-handlers.d.ts.map +1 -1
  39. package/dist/session-content-handlers.js +74 -17
  40. package/dist/session-content-handlers.js.map +1 -1
  41. package/dist/session-node-manager.d.ts +185 -28
  42. package/dist/session-node-manager.d.ts.map +1 -1
  43. package/dist/session-node-manager.js +1409 -134
  44. package/dist/session-node-manager.js.map +1 -1
  45. package/dist/session-read-handlers.d.ts.map +1 -1
  46. package/dist/session-read-handlers.js +133 -4
  47. package/dist/session-read-handlers.js.map +1 -1
  48. package/dist/session-relay-client.d.ts +0 -7
  49. package/dist/session-relay-client.d.ts.map +1 -1
  50. package/dist/session-relay-client.js +52 -37
  51. package/dist/session-relay-client.js.map +1 -1
  52. package/dist/vocabulary.d.ts.map +1 -1
  53. package/dist/vocabulary.js +1 -0
  54. package/dist/vocabulary.js.map +1 -1
  55. package/package.json +5 -5
@@ -22,7 +22,7 @@
22
22
  * (Structure 1 index 4) per sender, over that sender's OWN signed leaves.
23
23
  */
24
24
  import { verify } from "@cello-protocol/crypto";
25
- import { decode } from "cbor-x";
25
+ import { decodeStructure1 } from "@cello-protocol/protocol-types";
26
26
  function bytesEqual(a, b) {
27
27
  if (a.length !== b.length)
28
28
  return false;
@@ -45,24 +45,32 @@ export function reDeriveFrontiers(leaves, expectedSessionId) {
45
45
  if (!verify(leaf.sender_pubkey, leaf.structure1_cbor, leaf.sender_signature)) {
46
46
  return { ok: false, reason: "leaf_signature_invalid" };
47
47
  }
48
- let arr;
49
- try {
50
- arr = decode(leaf.structure1_cbor);
51
- }
52
- catch {
53
- return { ok: false, reason: "leaf_malformed" };
54
- }
55
- // Structure 1 = [1, content_hash(32), sender_pubkey(32), session_id(16), last_seen_seq, ts]
56
- if (!Array.isArray(arr) || arr.length < 5)
48
+ // Structure 1 = [version, content_hash(32), sender_pubkey(32), session_id(16), last_seen_seq,
49
+ // ts], plus last_seen_hash(32) at index 6 on a v2 claim (020-ACKHASH). session_id is index 3 and
50
+ // last_seen_seq index 4 in both — the field was appended, so neither read moved.
51
+ //
52
+ // The length check was `< 5`, which admitted an array of any length ≥ 5 and lifted a frontier
53
+ // number out of it. An unnamed layout is now `leaf_malformed`, the same outcome as undecodable
54
+ // bytes: a shape this build cannot name must not contribute to a frontier it cannot interpret.
55
+ //
56
+ // TWO NARROWINGS CAME WITH THAT, both recorded because they are changes and not merely a
57
+ // tightening of the length rule (review F7):
58
+ // - a non-numeric `last_seen_seq` used to `continue` (skip this leaf, keep verifying the rest)
59
+ // and is now `leaf_malformed`, failing the whole re-derivation;
60
+ // - a `bigint` `last_seen_seq` used to be coerced with `Number(raw)` and is now refused.
61
+ // Both are unreachable in practice — the relay refuses `typeof last_seen_seq !== "number"` at
62
+ // ingest, so no leaf that reaches a seal can carry either shape — and both move in the
63
+ // fail-closed direction. A frontier is a published claim about how far a party countersigned;
64
+ // deriving one from a leaf we could not fully read is the thing worth refusing.
65
+ const s1 = decodeStructure1(leaf.structure1_cbor);
66
+ if (!s1.ok)
57
67
  return { ok: false, reason: "leaf_malformed" };
58
- const sid = arr[3];
59
- if (!(sid instanceof Uint8Array) || !bytesEqual(sid, expectedSessionId)) {
68
+ if (!bytesEqual(s1.fields.sessionId, expectedSessionId)) {
60
69
  return { ok: false, reason: "leaf_session_mismatch" };
61
70
  }
62
- const raw = arr[4];
63
- const lss = typeof raw === "bigint" ? Number(raw) : raw;
64
- if (typeof lss !== "number" || !Number.isFinite(lss))
65
- continue; // leaf carries no signed last_seen
71
+ const lss = s1.fields.lastSeenSeq;
72
+ if (!Number.isFinite(lss))
73
+ continue; // leaf carries no usable signed last_seen
66
74
  const senderHex = Buffer.from(leaf.sender_pubkey).toString("hex").toLowerCase();
67
75
  const cur = frontiers.get(senderHex) ?? 0;
68
76
  if (lss > cur)
@@ -1 +1 @@
1
- {"version":3,"file":"seal-frontier-verify.js","sourceRoot":"","sources":["../src/seal-frontier-verify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seal-frontier-verify.js","sourceRoot":"","sources":["../src/seal-frontier-verify.ts"],"names":[],"mappings":"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"}
@@ -54,10 +54,10 @@ import type { SealFrontierLeaf } from "./seal-frontier-verify.js";
54
54
  /**
55
55
  * Every leaf's content hash, hex, in the order the directory certified.
56
56
  *
57
- * Structure 1 TBS is `[protocol_version, content_hash, sender_pubkey, session_id, last_seen_seq,
58
- * timestamp]` index 1 is the content hash, and it is the same value the directory feeds to
59
- * `buildMerkleTree`. Decoded here rather than taken from any other field so the hashes are the ones
60
- * the sender's signature actually covers.
57
+ * Structure 1 TBS is `[version, content_hash, sender_pubkey, session_id, last_seen_seq, timestamp]`,
58
+ * plus `last_seen_hash` at index 6 on a v2 claim (020-ACKHASH). Index 1 is the content hash in both,
59
+ * and it is the same value the directory feeds to `buildMerkleTree`. Decoded here rather than taken
60
+ * from any other field so the hashes are the ones the sender's signature actually covers.
61
61
  *
62
62
  * Returns null on ANY undecodable or wrong-width leaf rather than skipping it. Skipping would build
63
63
  * a SHORTER leaf set that still hashes to something, and that something would then be compared to
@@ -1 +1 @@
1
- {"version":3,"file":"sealed-leaf-set.d.ts","sourceRoot":"","sources":["../src/sealed-leaf-set.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CAuBrG;AAED,sEAAsE;AACtE,eAAO,MAAM,uBAAuB;IAClC,qFAAqF;;IAErF,wFAAwF;;CAEhF,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC7B,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,OAAO,uBAAuB,CAAC,CAAC;AAEzE,MAAM,MAAM,mBAAmB,GAC3B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,GAClC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,mBAAmB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/D;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,gBAAgB,EAAE,EACnC,aAAa,EAAE,MAAM,GACpB,mBAAmB,CAmBrB"}
1
+ {"version":3,"file":"sealed-leaf-set.d.ts","sourceRoot":"","sources":["../src/sealed-leaf-set.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,CAiBrG;AAED,sEAAsE;AACtE,eAAO,MAAM,uBAAuB;IAClC,qFAAqF;;IAErF,wFAAwF;;CAEhF,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC7B,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,OAAO,uBAAuB,CAAC,CAAC;AAEzE,MAAM,MAAM,mBAAmB,GAC3B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,GAClC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,mBAAmB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/D;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,gBAAgB,EAAE,EACnC,aAAa,EAAE,MAAM,GACpB,mBAAmB,CAmBrB"}
@@ -50,15 +50,15 @@
50
50
  *
51
51
  * Crypto refs: RFC 6962 §2.1 (Merkle hash trees).
52
52
  */
53
- import { decode as cborDecode } from "cbor-x";
53
+ import { decodeStructure1 } from "@cello-protocol/protocol-types";
54
54
  import { rootOverLeafHashes } from "./inclusion-proof.js";
55
55
  /**
56
56
  * Every leaf's content hash, hex, in the order the directory certified.
57
57
  *
58
- * Structure 1 TBS is `[protocol_version, content_hash, sender_pubkey, session_id, last_seen_seq,
59
- * timestamp]` index 1 is the content hash, and it is the same value the directory feeds to
60
- * `buildMerkleTree`. Decoded here rather than taken from any other field so the hashes are the ones
61
- * the sender's signature actually covers.
58
+ * Structure 1 TBS is `[version, content_hash, sender_pubkey, session_id, last_seen_seq, timestamp]`,
59
+ * plus `last_seen_hash` at index 6 on a v2 claim (020-ACKHASH). Index 1 is the content hash in both,
60
+ * and it is the same value the directory feeds to `buildMerkleTree`. Decoded here rather than taken
61
+ * from any other field so the hashes are the ones the sender's signature actually covers.
62
62
  *
63
63
  * Returns null on ANY undecodable or wrong-width leaf rather than skipping it. Skipping would build
64
64
  * a SHORTER leaf set that still hashes to something, and that something would then be compared to
@@ -75,20 +75,13 @@ export function sealedLeafHashesFromSignedLeaves(leaves) {
75
75
  return null;
76
76
  const hashes = [];
77
77
  for (const leaf of leaves) {
78
- let arr;
79
- try {
80
- arr = cborDecode(leaf.structure1_cbor);
81
- }
82
- catch {
78
+ // `length < 2` before 020-ACKHASH, which read index 1 out of an array of ANY length — a shape
79
+ // this build cannot name would have contributed a leaf hash to a set compared against a
80
+ // certified root. An unnamed layout now returns null, exactly as an undecodable leaf does.
81
+ const s1 = decodeStructure1(leaf.structure1_cbor);
82
+ if (!s1.ok)
83
83
  return null;
84
- }
85
- if (!Array.isArray(arr) || arr.length < 2)
86
- return null;
87
- const raw = arr[1];
88
- const bytes = raw instanceof Uint8Array ? raw : Buffer.isBuffer(raw) ? new Uint8Array(raw) : null;
89
- if (bytes === null || bytes.length !== 32)
90
- return null;
91
- hashes.push(Buffer.from(bytes).toString("hex"));
84
+ hashes.push(Buffer.from(s1.fields.contentHash).toString("hex"));
92
85
  }
93
86
  return hashes;
94
87
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sealed-leaf-set.js","sourceRoot":"","sources":["../src/sealed-leaf-set.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gCAAgC,CAAC,MAAmC;IAClF,kGAAkG;IAClG,kGAAkG;IAClG,2FAA2F;IAC3F,kGAAkG;IAClG,6EAA6E;IAC7E,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,IAAI,GAAY,CAAC;QACjB,IAAI,CAAC;YACH,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACvD,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACnB,MAAM,KAAK,GACT,GAAG,YAAY,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,GAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChG,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE;YAAE,OAAO,IAAI,CAAC;QACvD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,sEAAsE;AACtE,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,qFAAqF;IACrF,gBAAgB,EAAE,yBAAyB;IAC3C,wFAAwF;IACxF,cAAc,EAAE,8BAA8B;CACtC,CAAC;AASX;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAmC,EACnC,aAAqB;IAErB,MAAM,MAAM,GAAG,gCAAgC,CAAC,MAAM,CAAC,CAAC;IACxD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,uBAAuB,CAAC,gBAAgB;YAChD,MAAM,EAAE,cAAc,MAAM,CAAC,MAAM,iFAAiF;SACrH,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;IAC7C,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,uBAAuB,CAAC,cAAc;YAC9C,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,mBAAmB,UAAU,wCAAwC,QAAQ,EAAE;SACxG,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"sealed-leaf-set.js","sourceRoot":"","sources":["../src/sealed-leaf-set.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gCAAgC,CAAC,MAAmC;IAClF,kGAAkG;IAClG,kGAAkG;IAClG,2FAA2F;IAC3F,kGAAkG;IAClG,6EAA6E;IAC7E,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,8FAA8F;QAC9F,wFAAwF;QACxF,2FAA2F;QAC3F,MAAM,EAAE,GAAG,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAClD,IAAI,CAAC,EAAE,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACxB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,sEAAsE;AACtE,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,qFAAqF;IACrF,gBAAgB,EAAE,yBAAyB;IAC3C,wFAAwF;IACxF,cAAc,EAAE,8BAA8B;CACtC,CAAC;AASX;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAmC,EACnC,aAAqB;IAErB,MAAM,MAAM,GAAG,gCAAgC,CAAC,MAAM,CAAC,CAAC;IACxD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,uBAAuB,CAAC,gBAAgB;YAChD,MAAM,EAAE,cAAc,MAAM,CAAC,MAAM,iFAAiF;SACrH,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;IAC7C,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,uBAAuB,CAAC,cAAc;YAC9C,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,mBAAmB,UAAU,wCAAwC,QAAQ,EAAE;SACxG,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAC1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"session-content-handlers.d.ts","sourceRoot":"","sources":["../src/session-content-handlers.ts"],"names":[],"mappings":"AAmBA,OAAO,EAA2C,KAAK,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAC9G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAwE5D;;;;;;;GAOG;AACH;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE;IAAE,MAAM,EAAE,IAAI,CAAC;IAAC,WAAW,CAAC,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,KAAK,CAAA;CAAE,GAAG,OAAO,CAEjG;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM,CAY3F;AAED,wBAAgB,cAAc,CAC5B,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC,GACxD;IAAE,YAAY,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,UAAU,CAAA;CAAE,GAAG,SAAS,CAUjE;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,qBAAqB,CAAC;IACvC,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,SAAS,GAAG,SAAS,CAAC;IAC9D,mBAAmB,EAAE,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACjG,yBAAyB,EAAE,OAAO,CAAC;IACnC,+EAA+E;IAC/E,mBAAmB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACzE,uBAAuB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACxF,qEAAqE;IACrE,iBAAiB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IACzG;;;;;OAKG;IACH,mBAAmB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACzE,uBAAuB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACxF,uEAAuE;IACvE,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClE,iGAAiG;IACjG,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C;;;;OAIG;IACH,YAAY,EAAE,iBAAiB,CAAC;CACjC;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAuyC7E"}
1
+ {"version":3,"file":"session-content-handlers.d.ts","sourceRoot":"","sources":["../src/session-content-handlers.ts"],"names":[],"mappings":"AAmBA,OAAO,EAA2C,KAAK,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAC9G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAoF5D;;;;;;;GAOG;AACH;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE;IAAE,MAAM,EAAE,IAAI,CAAC;IAAC,WAAW,CAAC,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,KAAK,CAAA;CAAE,GAAG,OAAO,CAEjG;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM,CAY3F;AAED,wBAAgB,cAAc,CAC5B,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC,CAAC,GACxD;IAAE,YAAY,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,UAAU,CAAA;CAAE,GAAG,SAAS,CAUjE;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,qBAAqB,CAAC;IACvC,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,SAAS,GAAG,SAAS,CAAC;IAC9D,mBAAmB,EAAE,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACjG,yBAAyB,EAAE,OAAO,CAAC;IACnC,+EAA+E;IAC/E,mBAAmB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACzE,uBAAuB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACxF,qEAAqE;IACrE,iBAAiB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IACzG;;;;;OAKG;IACH,mBAAmB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACzE,uBAAuB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACxF,uEAAuE;IACvE,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClE,iGAAiG;IACjG,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C;;;;OAIG;IACH,YAAY,EAAE,iBAAiB,CAAC;CACjC;AAED,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAi1C7E"}
@@ -19,6 +19,7 @@ import { MAX_CONTENT_BYTES } from "@cello-protocol/protocol-types";
19
19
  import { TIER } from "./contacts-tier-migration.js";
20
20
  import { GATEWAY_UNAVAILABLE, GOVERNANCE_TIMEOUT } from "@cello-protocol/gateway";
21
21
  import { isAutoReplyMarked } from "./away-detection.js";
22
+ import { REFUSAL_KIND_GUIDANCE } from "./refusal-reasons.js";
22
23
  /**
23
24
  * DOD-M12B-AWAY-MARK-1 — what a reader needs to know the moment it sees a marked message.
24
25
  *
@@ -60,12 +61,26 @@ function refusalsField(mgr, agentName, sessionId,
60
61
  */
61
62
  consumerId) {
62
63
  const refusals = mgr.takeContentRefusals(agentName, sessionId, consumerId);
63
- return refusals.length > 0 ? { refusals, refusal_guidance: REFUSAL_GUIDANCE } : {};
64
+ if (refusals.length === 0)
65
+ return {};
66
+ /**
67
+ * COMPOSED FROM THE KINDS PRESENT — review F4, and the same rule the inbox door follows.
68
+ *
69
+ * One fixed sentence said "received and REFUSED — not verified, neither ingested nor shown". True
70
+ * of the three hash-verification reasons it was written for; false of a screener block, which was
71
+ * verified, IS in the chain, and WAS acknowledged; false of a transcript write failure; and
72
+ * pointing at the wrong party entirely for `delivery_impaired`, which is this side's own send.
73
+ */
74
+ const kindsPresent = new Set(refusals.map((r) => r.kind));
75
+ const refusal_guidance = Object.keys(REFUSAL_KIND_GUIDANCE)
76
+ .filter((k) => kindsPresent.has(k))
77
+ // Prefixed with the kind (review N7) so two paragraphs that read as contradicting each other —
78
+ // "received and REFUSED" beside "NOTHING WAS REFUSED BY THIS AGENT" — can each be joined to the
79
+ // rows they are about.
80
+ .map((k) => `[kind: ${k}] ${REFUSAL_KIND_GUIDANCE[k]}`)
81
+ .join("\n\n");
82
+ return { refusals, refusal_guidance };
64
83
  }
65
- const REFUSAL_GUIDANCE = "Message(s) from this counterparty WERE received and REFUSED — they were not verified, so they " +
66
- "were neither ingested nor shown. See `refusals` for the reason and what to do. Waiting longer " +
67
- "will not help until it is resolved, and the counterparty has no way to know: from their side the " +
68
- "message was sent. If you need it, ask them to resend after the cause is fixed.";
69
84
  const AUTO_REPLY_GUIDANCE = "At least one message here is an AUTOMATIC reply generated by the counterparty's daemon because " +
70
85
  "nobody was attending that agent — no person and no agent read what you sent. Do not treat it as " +
71
86
  "an answer, do not report a conversation is happening, and do not infer anything from its " +
@@ -898,7 +913,23 @@ export function registerSessionContentHandlers(deps) {
898
913
  // NOR transcript rows is truly not found.
899
914
  let transcriptOnly = false;
900
915
  if (!record) {
901
- if (sessionNodeManager.readTranscript(agentName, sessionId).messages.length === 0) {
916
+ /**
917
+ * ⚠️ **QUARANTINED ROWS DO NOT MAKE A SESSION — review F4, and this is the clause
918
+ * `DOD-M15-REFUSEDEVIDENCE-1` names by surface.**
919
+ *
920
+ * Every other reader of this table pins `direction = 'received'`, which is what makes a
921
+ * refused message excluded by construction. This one counted rows. So after a
922
+ * `session_orphaned` retention — no `sessions` row, one quarantined row — `cello_receive`
923
+ * stopped answering `session_not_found` and began answering `session_not_live`, with guidance
924
+ * saying *"This session exists only as a durable transcript"*. Nothing deliverable is there
925
+ * and nobody opened it: the row is a probe someone aimed at an id. That is a milder shape of
926
+ * the phantom-session residue this whole design exists to avoid — a session id materialising
927
+ * in an operator surface because a stranger sent bytes at it.
928
+ */
929
+ const deliverable = sessionNodeManager
930
+ .readTranscript(agentName, sessionId)
931
+ .messages.filter((m) => m.direction !== "quarantined");
932
+ if (deliverable.length === 0) {
902
933
  return { ok: false, reason: "session_not_found", guidance: "No session found with this ID. Check cello_sessions." };
903
934
  }
904
935
  transcriptOnly = true;
@@ -1009,8 +1040,16 @@ export function registerSessionContentHandlers(deps) {
1009
1040
  // The same received-only-view mistake as DOD-COATTEND-1 review F1, made a second time
1010
1041
  // one file over: `daemon.ts` already says "every sibling send is a hole" in as many
1011
1042
  // words. `cello_get_transcript` gets this right by walking both directions; so does this
1012
- // now. What still stops the walk is a genuinely absent index — an undecryptable row or a
1013
- // screened-out leaf, which have no transcript row at all and ARE unread.
1043
+ // now. What still stops the walk is a genuinely absent index — an undecryptable row,
1044
+ // which has no transcript row at all and IS unread.
1045
+ //
1046
+ // ⚠️ **A SCREENED-OUT LEAF USED TO BE IN THAT LIST AND NO LONGER BELONGS — review F5.**
1047
+ // Corrected rather than deleted, because the sentence was true when written and its change
1048
+ // is a behaviour change worth seeing. `DOD-M15-REFUSEDEVIDENCE-1` gives a blocked message a
1049
+ // transcript row (flagged `quarantined`), so the walk now CROSSES it — which is the right
1050
+ // answer and the same one already reached for `doc` leaves below: a blocked message is not
1051
+ // unread, never will be, and can never be delivered, so wedging the watermark behind it
1052
+ // strands every later message forever. It is included deliberately, not incidentally.
1014
1053
  let frontier = sinceSeq;
1015
1054
  const presentSeqs = new Set(messages.map((m) => m.sequence));
1016
1055
  // A DOCUMENT LEAF IS NOT A HOLE — it is a frame that was never a message.
@@ -1317,7 +1356,9 @@ export function registerSessionContentHandlers(deps) {
1317
1356
  ...refusalsField(sessionNodeManager, agentName, sessionId, connectionId),
1318
1357
  taken_by_sibling: takenDetail,
1319
1358
  attendance,
1320
- guidance: `${missedText} Note the counterparty's session connection has ALSO dropped (liveness: gone), so no more content will arrive and a reply cannot reach them — call cello_close_session to seal the session once you have read the history. If the counterparty never co-closes, a unilateral seal becomes available after the directory's delivery-grace window.`,
1359
+ // Same wording rule as the standalone `counterparty_gone` exit below: name what was
1360
+ // observed (a dropped connection), never a crash, and do not lead with the seal.
1361
+ guidance: `${missedText} Note the direct connection to the counterparty's session peer has ALSO dropped (liveness: gone) — that is all that was observed, not that they crashed. No more content will arrive on the direct path and a reply cannot reach them there. Read the history first, and check \`refusals\` here and in cello_inbox before blaming the network — this side refusing their messages produces exactly this state. Sealing with cello_close_session ENDS the conversation permanently, so do it only once you are satisfied nothing is outstanding; if they never co-close, a unilateral seal becomes available after the directory's delivery-grace window.`,
1321
1362
  };
1322
1363
  }
1323
1364
  return {
@@ -1341,16 +1382,30 @@ export function registerSessionContentHandlers(deps) {
1341
1382
  ok: true,
1342
1383
  content: null,
1343
1384
  attendance: attendingNow(agentName),
1344
- // DOD-M15-REFUSED-INBOUND-SILENT-1 — the exit that does not merely stay silent, it
1345
- // MISLEADS. The guidance below blames the network ("may have crashed or gone offline")
1346
- // and tells the operator to seal, while the daemon is holding the real reason in memory.
1385
+ // DOD-M15-NO-SILENT-REFUSAL-1 — the exit that does not merely stay silent, it MISLEADS.
1347
1386
  // A version-skewed peer never gets an ACK, so it eventually drops the direct path and
1348
- // lands HERE pre-empting the quiet exit this line was written to fix. A wrong
1349
- // explanation plus an action is worse than saying nothing at all.
1387
+ // lands HERE, pre-empting the quiet exit. A wrong explanation plus an action is worse
1388
+ // than saying nothing at all.
1350
1389
  ...refusalsField(sessionNodeManager, agentName, sessionId, connectionId),
1351
1390
  reason: "counterparty_gone",
1352
1391
  liveness: "gone",
1353
- guidance: "The counterparty's session connection has dropped (liveness: gone) — it may have crashed or gone offline. No more content will arrive on the direct path. Call cello_close_session to seal the session; if the counterparty never co-closes, a unilateral seal becomes available after the directory's delivery-grace window.",
1392
+ /**
1393
+ * ⚠️ **NAMES WHAT WAS OBSERVED, AND `gone` IS A SMALLER FACT THAN IT SOUNDS.**
1394
+ *
1395
+ * The only thing that produced this state is `onPeerDisconnect` firing for the peer id
1396
+ * recorded as the counterparty's session peer — one libp2p connection went away. It
1397
+ * does not establish that they crashed, went offline, or left. The previous wording
1398
+ * said "it may have crashed or gone offline" and then told the operator to seal, which
1399
+ * is a network story for something that is very often a verification fault: a peer
1400
+ * whose messages this side keeps refusing is never acknowledged, drops the direct path,
1401
+ * and arrives here looking exactly like a crash.
1402
+ *
1403
+ * **And it must not lead with the seal.** A seal is irreversible and, taken on this
1404
+ * evidence, is precisely the truncated close DOD-M15-WITHHOLD-SEAL-1 exists to stop.
1405
+ * The refusals spread above are the thing to read first — when they are present they
1406
+ * ARE the reason, and none of them is fixed by sealing.
1407
+ */
1408
+ guidance: "The direct connection to the counterparty's session peer has dropped (liveness: gone). That is what was observed — it does not establish that they crashed or went offline. No more content will arrive on the direct path and a reply cannot reach them there. CHECK `refusals` — HERE IF PRESENT, AND IN cello_inbox EITHER WAY — BEFORE CONCLUDING ANYTHING: if this side has been refusing their messages, a refused sender is never acknowledged and eventually drops the connection, and that is a fault to fix rather than a counterparty who left. A refusal is shown once per window, so another window may already have taken it and this answer can be empty while the cause is real. Otherwise the ordinary causes are a restart, a network change, or them closing their agent — confirm out of band before concluding anything. Sealing with cello_close_session ENDS the conversation permanently and cannot be undone; do it when you have decided the conversation is over, not to clear this state. If you DO decide it is over and the counterparty never co-closes, a unilateral seal becomes available after the directory's delivery-grace window — that is the exit, not the first move.",
1354
1409
  };
1355
1410
  }
1356
1411
  // DOD-M12B-ACK-1: the same rule one step short of 'gone'. A session whose writes are
@@ -1420,8 +1475,10 @@ export function registerSessionContentHandlers(deps) {
1420
1475
  ...quietRefusals,
1421
1476
  // ONE source for the refusal advice (see `refusalsField`). It used to be written out
1422
1477
  // again here, which is how the batch exit came to carry the notice without it.
1423
- guidance: quietRefusals.refusals
1424
- ? `No content arrived within timeout_ms. ${REFUSAL_GUIDANCE}`
1478
+ // ONE source for the refusal advice (see `refusalsField`), and it is now the header for
1479
+ // the kinds actually present rather than one sentence that is false for most of them.
1480
+ guidance: quietRefusals.refusal_guidance !== undefined
1481
+ ? `No content arrived within timeout_ms. ${quietRefusals.refusal_guidance}`
1425
1482
  : "No content arrived within timeout_ms. Call cello_receive again to keep waiting — do not resend your last message. Or read cello_transcript for the full session history.",
1426
1483
  };
1427
1484
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session-content-handlers.js","sourceRoot":"","sources":["../src/session-content-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-content-handlers.js","sourceRoot":"","sources":["../src/session-content-handlers.ts"],"names":[],"mappings":"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"}