@cello-protocol/daemon 0.0.147 → 0.0.148

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 (36) hide show
  1. package/dist/daemon.js +8 -0
  2. package/dist/daemon.js.map +1 -1
  3. package/dist/document-control-notifier.d.ts +10 -0
  4. package/dist/document-control-notifier.d.ts.map +1 -1
  5. package/dist/document-control-notifier.js +10 -2
  6. package/dist/document-control-notifier.js.map +1 -1
  7. package/dist/document-frame-router.d.ts +11 -0
  8. package/dist/document-frame-router.d.ts.map +1 -1
  9. package/dist/document-frame-router.js +13 -0
  10. package/dist/document-frame-router.js.map +1 -1
  11. package/dist/document-handlers.d.ts.map +1 -1
  12. package/dist/document-handlers.js +193 -18
  13. package/dist/document-handlers.js.map +1 -1
  14. package/dist/document-handshake.d.ts.map +1 -1
  15. package/dist/document-handshake.js +2 -1
  16. package/dist/document-handshake.js.map +1 -1
  17. package/dist/document-layer.d.ts.map +1 -1
  18. package/dist/document-layer.js +8 -0
  19. package/dist/document-layer.js.map +1 -1
  20. package/dist/document-lifecycle.d.ts +5 -0
  21. package/dist/document-lifecycle.d.ts.map +1 -1
  22. package/dist/document-lifecycle.js +17 -2
  23. package/dist/document-lifecycle.js.map +1 -1
  24. package/dist/document-notify.d.ts +11 -0
  25. package/dist/document-notify.d.ts.map +1 -1
  26. package/dist/document-notify.js +22 -0
  27. package/dist/document-notify.js.map +1 -1
  28. package/dist/document-write-path.d.ts +15 -0
  29. package/dist/document-write-path.d.ts.map +1 -1
  30. package/dist/document-write-path.js +65 -2
  31. package/dist/document-write-path.js.map +1 -1
  32. package/dist/notification-handlers.d.ts +17 -0
  33. package/dist/notification-handlers.d.ts.map +1 -1
  34. package/dist/notification-handlers.js +25 -3
  35. package/dist/notification-handlers.js.map +1 -1
  36. package/package.json +3 -3
@@ -48,11 +48,19 @@ export function createDocumentControlNotifier(deps) {
48
48
  try {
49
49
  signature = await deps.sign(agentName, buildDocumentControlTbs(control));
50
50
  }
51
- catch {
51
+ catch (err) {
52
52
  // REFUSED, not skipped and not sent unsigned. The peer must reject an unsigned control
53
53
  // frame, so shipping one would report a notification that cannot possibly land — and the
54
54
  // caller reports `peerNotified` straight to the operator.
55
- return { ok: false, reason: "document_control_unsigned" };
55
+ //
56
+ // THE MESSAGE IS KEPT. A bare `catch {}` here threw away the only description of a LOCAL
57
+ // fault — a key file that moved, a locked keychain, an agent with no provider — and the
58
+ // operator was then told their peer had not heard them and to try again when the peer was
59
+ // back. Waiting cannot fix a signing failure. The reason travels up so the caller can say
60
+ // which of the two it is.
61
+ const detail = err instanceof Error ? err.message : String(err);
62
+ deps.logger?.warn("document.control.unsigned", { documentId, verb, agentName, reason: detail });
63
+ return { ok: false, reason: "document_control_unsigned", detail };
56
64
  }
57
65
  control.signature = signature;
58
66
  return deps.send(agentName, {
@@ -1 +1 @@
1
- {"version":3,"file":"document-control-notifier.js","sourceRoot":"","sources":["../src/document-control-notifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,GAGzB,MAAM,gCAAgC,CAAC;AAqBxC,MAAM,UAAU,6BAA6B,CAAC,IAAiC;IAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE;QAChC,KAAK,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YACxD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAC7D,IAAI,CAAC,GAAG;gBAAE,SAAS;YAEnB,MAAM,OAAO,GAAoB;gBAC/B,IAAI,EAAE,kBAAkB;gBACxB,eAAe,EAAE,wBAAwB;gBACzC,WAAW,EAAE,UAAU;gBACvB,eAAe,EAAE,YAAY;gBAC7B,IAAI;gBACJ,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;gBACtB,SAAS,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;aAC7B,CAAC;YACF,IAAI,SAAqB,CAAC;YAC1B,IAAI,CAAC;gBACH,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3E,CAAC;YAAC,MAAM,CAAC;gBACP,uFAAuF;gBACvF,yFAAyF;gBACzF,0DAA0D;gBAC1D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,2BAA2B,EAAE,CAAC;YAC5D,CAAC;YACD,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;YAE9B,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBAC1B,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,UAAU;gBACV,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC;gBACrC,aAAa,EAAE,UAAU,EAAE;aAC5B,CAAC,CAAC;QACL,CAAC;QACD,+FAA+F;QAC/F,4DAA4D;QAC5D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"document-control-notifier.js","sourceRoot":"","sources":["../src/document-control-notifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,GAGzB,MAAM,gCAAgC,CAAC;AA4BxC,MAAM,UAAU,6BAA6B,CAAC,IAAiC;IAC7E,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE;QAChC,KAAK,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YACxD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAC7D,IAAI,CAAC,GAAG;gBAAE,SAAS;YAEnB,MAAM,OAAO,GAAoB;gBAC/B,IAAI,EAAE,kBAAkB;gBACxB,eAAe,EAAE,wBAAwB;gBACzC,WAAW,EAAE,UAAU;gBACvB,eAAe,EAAE,YAAY;gBAC7B,IAAI;gBACJ,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;gBACtB,SAAS,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;aAC7B,CAAC;YACF,IAAI,SAAqB,CAAC;YAC1B,IAAI,CAAC;gBACH,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3E,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,uFAAuF;gBACvF,yFAAyF;gBACzF,0DAA0D;gBAC1D,EAAE;gBACF,yFAAyF;gBACzF,wFAAwF;gBACxF,0FAA0F;gBAC1F,0FAA0F;gBAC1F,0BAA0B;gBAC1B,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,2BAA2B,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;gBAChG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,2BAA2B,EAAE,MAAM,EAAE,CAAC;YACpE,CAAC;YACD,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;YAE9B,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBAC1B,WAAW,EAAE,GAAG,CAAC,WAAW;gBAC5B,UAAU;gBACV,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC;gBACrC,aAAa,EAAE,UAAU,EAAE;aAC5B,CAAC,CAAC;QACL,CAAC;QACD,+FAA+F;QAC/F,4DAA4D;QAC5D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC"}
@@ -136,6 +136,17 @@ export interface DocumentFrameRouterDeps {
136
136
  * over the peer's work. A daemon with no workspace configured implements this as a no-op.
137
137
  */
138
138
  rewriteFile(ownerAgentId: string, inResponseTo: Uint8Array): Promise<void>;
139
+ /**
140
+ * Record that the peer changed this document and the agent has not read it yet — §16.5's passive
141
+ * notification.
142
+ *
143
+ * Wired 2026-08-08. The writer and the reader both existed and NEITHER had a production caller,
144
+ * so an admitted update wrote nothing and `cello_check_notifications` had no document section at
145
+ * all; `cello_doc_read` was clearing rows that could never exist. An agent learned a document had
146
+ * moved only by polling. That is the unit-with-no-caller shape this milestone was burned by, and
147
+ * it was carried onto DOC-TOOLS-1 as an explicit clause and left unwired.
148
+ */
149
+ noticeInboundUpdate(ownerAgentId: string, inResponseTo: Uint8Array): void;
139
150
  /** Put an already-signed frame on the wire to whoever authored `wire` — the rejection, today. */
140
151
  sendFrameToPeer(ownerAgentId: string, inResponseTo: Uint8Array, bytes: Uint8Array): Promise<void>;
141
152
  sendAck(ownerAgentId: string,
@@ -1 +1 @@
1
- {"version":3,"file":"document-frame-router.d.ts","sourceRoot":"","sources":["../src/document-frame-router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-frame-router.d.ts","sourceRoot":"","sources":["../src/document-frame-router.ts"],"names":[],"mappings":"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"}
@@ -180,6 +180,19 @@ export class DocumentFrameRouter {
180
180
  // Not awaited, and not allowed to fail the admission: the content is already in the
181
181
  // document, which is the source of truth. A failed rewrite is a stale projection, and
182
182
  // `publish` refuses loudly on a stale baseline rather than diffing against it.
183
+ // NOTICED BEFORE the file rewrite, and synchronously: the notice is a row, not I/O, and
184
+ // an agent that reads the file before the notice lands would clear a count that had not
185
+ // been written. Never allowed to fail the admission — the content is already in the
186
+ // document, which is the source of truth.
187
+ try {
188
+ this.#d.noticeInboundUpdate(ownerAgentId, content);
189
+ }
190
+ catch (err) {
191
+ this.#d.logger.warn("document.notice.failed", {
192
+ correlationId,
193
+ reason: err instanceof Error ? err.message : String(err),
194
+ });
195
+ }
183
196
  void this.#d.rewriteFile(ownerAgentId, content).catch((err) => {
184
197
  this.#d.logger.warn("document.file.rewrite_threw", {
185
198
  correlationId,
@@ -1 +1 @@
1
- {"version":3,"file":"document-frame-router.js","sourceRoot":"","sources":["../src/document-frame-router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AAEH,OAAO,EACL,UAAU,EACV,4BAA4B,EAC5B,iBAAiB,EACjB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,gCAAgC,CAAC;AA2GxC,MAAM,OAAO,mBAAmB;IACrB,EAAE,CAA0B;IACrC,oFAAoF;IAC3E,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAEpD,YAAY,IAA6B;QACvC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;IACjB,CAAC;IAED;;;;;;;OAOG;IACH;;;;;;OAMG;IACH,SAAS,CACP,SAAiB,EACjB,OAAmB,EACnB,KAAa,EACb,aAAqB;QAErB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,IAAI,KAAK,UAAU;YAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACpD,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YAC3B,6FAA6F;YAC7F,0FAA0F;YAC1F,2FAA2F;YAC3F,qFAAqF;YACrF,4FAA4F;YAC5F,EAAE;YACF,4FAA4F;YAC5F,0FAA0F;YAC1F,2FAA2F;YAC3F,YAAY;YACZ,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE;gBAChD,KAAK,EAAE,OAAO,CAAC,MAAM;gBACrB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBAClB,aAAa;aACd,CAAC,CAAC;YACH,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC7B,CAAC;QACD,gGAAgG;QAChG,sFAAsF;QACtF,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;YAC1B,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;YAC5F,4FAA4F;YAC5F,mFAAmF;YACnF,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAClC,CAAC;QACD,KAAK,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;QACtE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAClC,CAAC;IAED;;;;;;;;OAQG;IACH,QAAQ,CACN,YAAoB,EACpB,OAAmB,EACnB,KAAa,EACb,aAAqB,EACrB,IAAuB;QAEvB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACrE,MAAM,IAAI,GAAG,QAAQ;aAClB,KAAK,CAAC,GAAG,EAAE;YACV,uFAAuF;QACzF,CAAC,CAAC;aACD,IAAI,CAAC,KAAK,IAAI,EAAE;YACf,uFAAuF;YACvF,iDAAiD;YACjD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;YACxF,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE;oBAC5C,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,aAAa;iBACd,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QACL,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACrC,8FAA8F;QAC9F,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;YACrB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,IAAI;gBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oGAAoG;IACpG,KAAK,CAAC,KAAK,CACT,YAAoB,EACpB,OAAmB,EACnB,KAAa,EACb,aAAqB;QAErB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/B,yFAAyF;QACzF,+FAA+F;QAC/F,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,aAAa;YAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC9E,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,SAAS,CACb,YAAoB,EACpB,OAAmB,EACnB,KAAa,EACb,aAAqB,EACrB,IAAuB;QAEvB,IAAI,CAAC;YACH,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;gBACvF,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;oBAC3B,qFAAqF;oBACrF,sFAAsF;oBACtF,uFAAuF;oBACvF,6EAA6E;oBAC7E,EAAE;oBACF,oFAAoF;oBACpF,sFAAsF;oBACtF,+EAA+E;oBAC/E,KAAK,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;wBACrE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE;4BACjD,aAAa;4BACb,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;yBACzD,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;oBACX,0FAA0F;oBAC1F,0FAA0F;oBAC1F,mFAAmF;oBACnF,yFAAyF;oBACzF,uEAAuE;oBACvE,EAAE;oBACF,0FAA0F;oBAC1F,qFAAqF;oBACrF,8BAA8B;oBAC9B,EAAE;oBACF,yFAAyF;oBACzF,0FAA0F;oBAC1F,cAAc;oBACd,yFAAyF;oBACzF,0FAA0F;oBAC1F,0FAA0F;oBAC1F,yFAAyF;oBACzF,yFAAyF;oBACzF,0FAA0F;oBAC1F,6BAA6B;oBAC7B,EAAE;oBACF,wFAAwF;oBACxF,sFAAsF;oBACtF,QAAQ;oBACR,2FAA2F;oBAC3F,uFAAuF;oBACvF,sFAAsF;oBACtF,wFAAwF;oBACxF,EAAE;oBACF,0FAA0F;oBAC1F,oDAAoD;oBACpD,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;wBACvC,KAAK,IAAI,CAAC,EAAE;6BACT,eAAe,CAAC,YAAY,EAAE,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC;6BACzD,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;4BACtB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;gCACnD,aAAa;gCACb,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;6BACzD,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;oBACP,CAAC;oBACD,KAAK,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE;wBAC1C,YAAY,EAAE,GAAG,CAAC,YAAY;wBAC9B,QAAQ,EAAE,GAAG,CAAC,QAAQ;wBACtB,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC;wBACjE,aAAa;qBACd,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;wBACxB,yFAAyF;wBACzF,6EAA6E;wBAC7E,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE;4BAC7C,aAAa;4BACb,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;yBACzD,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,0FAA0F;gBAC1F,qFAAqF;gBACrF,2FAA2F;gBAC3F,yFAAyF;gBACzF,EAAE;gBACF,0FAA0F;gBAC1F,qFAAqF;gBACrF,wDAAwD;gBACxD,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;oBACvE,KAAK,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE;wBAC1C,YAAY,EAAE,GAAG,CAAC,YAAY;wBAC9B,QAAQ,EAAE,KAAK;wBACf,eAAe,EAAE,GAAG,CAAC,MAAM;wBAC3B,aAAa;qBACd,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;wBACxB,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE;4BAC7C,aAAa;4BACb,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;yBACzD,CAAC,CAAC;oBACL,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YACvF,CAAC;YACD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBACxB,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBACrD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;YAC5C,CAAC;YACD,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;gBACzB,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBACtD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;YAC5C,CAAC;YACD,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;gBAC5B,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBACxD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;YAC5C,CAAC;YACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBACpD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;YAC5C,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;YACpF,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QACvF,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,8FAA8F;YAC9F,2FAA2F;YAC3F,8EAA8E;YAC9E,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE;gBACnD,IAAI;gBACJ,aAAa;gBACb,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACzD,CAAC,CAAC;YACH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAAC;QACrF,CAAC;IACH,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAE5C;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAExD;;;;;;;;;GASG;AACH,SAAS,oBAAoB,CAAC,CAAa;IACzC,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACvC,uDAAuD;IACvD,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAClD,sFAAsF;IACtF,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,IAAI,yBAAyB,CAAC;IAChF,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,yBAAyB,CAAC;IAC9E,CAAC;IACD,8FAA8F;IAC9F,8EAA8E;IAC9E,EAAE;IACF,+FAA+F;IAC/F,kGAAkG;IAClG,oCAAoC;IACpC,OAAO,KAAK,CAAC;AACf,CAAC;AAqBD,SAAS,QAAQ,CAAC,OAAmB;IACnC,gGAAgG;IAChG,2CAA2C;IAC3C,IAAI,OAAO,CAAC,MAAM,GAAG,wBAAwB;QAAE,OAAO,UAAU,CAAC;IACjE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;QAAE,OAAO,UAAU,CAAC;IAEtD,oFAAoF;IACpF,EAAE;IACF,iGAAiG;IACjG,8FAA8F;IAC9F,kGAAkG;IAClG,kGAAkG;IAClG,+FAA+F;IAC/F,kBAAkB;IAClB,EAAE;IACF,iGAAiG;IACjG,iGAAiG;IACjG,kGAAkG;IAClG,iGAAiG;IACjG,0CAA0C;IAC1C,IAAI,QAAiB,CAAC;IACtB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,UAAU,CAAC;QACjG,QAAQ,GAAI,OAAmC,CAAC,MAAM,CAAC,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;QACzE,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,aAAa,CAAC;IAEvD,IAAI,CAAC;QACH,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,iBAAiB;gBACpB,4BAA4B,CAAC,OAAO,CAAC,CAAC;gBACtC,OAAO,QAAQ,CAAC;YAClB,KAAK,cAAc;gBACjB,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBAC3B,OAAO,KAAK,CAAC;YACf,KAAK,mBAAmB;gBACtB,sBAAsB,CAAC,OAAO,CAAC,CAAC;gBAChC,OAAO,UAAU,CAAC;YACpB,KAAK,oBAAoB;gBACvB,uBAAuB,CAAC,OAAO,CAAC,CAAC;gBACjC,OAAO,WAAW,CAAC;YACrB,KAAK,uBAAuB;gBAC1B,yBAAyB,CAAC,OAAO,CAAC,CAAC;gBACnC,OAAO,cAAc,CAAC;YACxB,KAAK,kBAAkB;gBACrB,qBAAqB,CAAC,OAAO,CAAC,CAAC;gBAC/B,OAAO,SAAS,CAAC;YACnB;gBACE,qFAAqF;gBACrF,6CAA6C;gBAC7C,OAAO,aAAa,CAAC;QACzB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0FAA0F;QAC1F,yDAAyD;QACzD,OAAO,aAAa,CAAC;IACvB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"document-frame-router.js","sourceRoot":"","sources":["../src/document-frame-router.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"document-handlers.d.ts","sourceRoot":"","sources":["../src/document-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAmBH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAQxE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,eAAe,CAAC;IACzB,qFAAqF;IACrF,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,yBAAyB,CAAC;IAC3D,uFAAuF;IACvF,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACrE,mFAAmF;IACnF,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC9C,+BAA+B;IAC/B,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9D,GAAG,IAAI,MAAM,CAAC;CACf;AAOD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAo7BxE"}
1
+ {"version":3,"file":"document-handlers.d.ts","sourceRoot":"","sources":["../src/document-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAmBH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAQxE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,eAAe,CAAC;IACzB,qFAAqF;IACrF,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,yBAAyB,CAAC;IAC3D,uFAAuF;IACvF,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACrE,mFAAmF;IACnF,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC9C,+BAA+B;IAC/B,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9D,GAAG,IAAI,MAAM,CAAC;CACf;AAOD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAmnCxE"}
@@ -26,7 +26,7 @@
26
26
  import { randomBytes, randomUUID } from "node:crypto";
27
27
  import * as Y from "yjs";
28
28
  import { encodeDocumentProposal, buildDocumentProposalTbs, documentIdFromProposal, seamViolation, ASSURANCE_TIER_V1, TOPOLOGY_V1, DOCUMENT_FEATURE_VERSION, encodeDocumentProposalAck, buildDocumentProposalAckTbs, DOCUMENT_PROPOSAL_ACK_VERSION, MAX_PROPOSAL_REFUSAL_REASON_LENGTH, } from "@cello-protocol/protocol-types";
29
- import { lineHunks } from "./document-write-path.js";
29
+ import { lineHunks, isSupportedDocumentType, SUPPORTED_DOCUMENT_TYPES } from "./document-write-path.js";
30
30
  import { profileViolation } from "./document-profile.js";
31
31
  import { screenText, SCREEN_RULE_ID } from "./document-screen.js";
32
32
  /** Document types the notification/diff path understands. Anything else is stored, not diffed. */
@@ -107,16 +107,23 @@ export function registerDocumentHandlers(deps) {
107
107
  */
108
108
  async function materialize(ownerAgentId, documentId, documentType) {
109
109
  if (!layer.writePath)
110
- return null;
110
+ return { path: null, reason: "document_files_unavailable" };
111
111
  try {
112
- return await layer.writePath.materialize(ownerAgentId, documentId, documentType, layer.live.get(ownerAgentId, documentId));
112
+ const path = await layer.writePath.materialize(ownerAgentId, documentId, documentType, layer.live.get(ownerAgentId, documentId));
113
+ return { path };
113
114
  }
114
115
  catch (err) {
115
- logger.warn("document.file.materialize_failed", {
116
- documentId,
117
- reason: err instanceof Error ? err.message : String(err),
118
- });
119
- return null;
116
+ // THE REASON TRAVELS TO THE CALLER, not just to the log. `propose` and `accept` returned
117
+ // `filePath: null` and said nothing, while the tool description promises "returns its path" —
118
+ // so an operator looking for a file that is not there had no way to learn why without reading
119
+ // the daemon log. `cello_doc_write` was given `fileUpdated` and guidance for exactly this;
120
+ // these two were not.
121
+ const reason = err instanceof Error && "reason" in err
122
+ ? String(err.reason)
123
+ : "document_file_error";
124
+ const detail = err instanceof Error ? err.message : String(err);
125
+ logger.warn("document.file.materialize_failed", { documentId, reason, detail });
126
+ return { path: null, reason, detail };
120
127
  }
121
128
  }
122
129
  // ─── propose ──────────────────────────────────────────────────────────────────────────────
@@ -173,6 +180,21 @@ export function registerDocumentHandlers(deps) {
173
180
  };
174
181
  }
175
182
  const documentType = typeof params?.document_type === "string" ? params.document_type : DEFAULT_DOCUMENT_TYPE;
183
+ // REFUSED AT THE DOOR, because a type only some verbs can serve is worse than no support at all.
184
+ // `document_type` was previously unvalidated: "yaml" created a real, signed, peer-accepted
185
+ // document whose file materialisation threw and was swallowed, returning `filePath: null` with
186
+ // no explanation while the tool description promises a path. "json" was worse — genuinely
187
+ // supported by DocumentWritePath (map root) and not by read/write/diff (text root), so it read
188
+ // as empty, wrote into a root nothing projects, and diffed as unchanged forever.
189
+ if (!isSupportedDocumentType(documentType)) {
190
+ return {
191
+ ok: false,
192
+ reason: "document_type_unsupported",
193
+ guidance: `'${documentType}' is not a document type this build can serve. Supported: ` +
194
+ `${[...SUPPORTED_DOCUMENT_TYPES].sort().join(", ")}. Nothing was created, so there is ` +
195
+ `nothing to clean up — re-propose with a supported type.`,
196
+ };
197
+ }
176
198
  const startingText = typeof params?.starting_content === "string" ? params.starting_content : "";
177
199
  // THE STARTING CONTENT IS A YJS UPDATE, not a string, and that is the whole reason it is on the
178
200
  // proposal at all (§16.3 step 1). Both sides apply THESE BYTES, so epoch zero is byte-identical
@@ -240,7 +262,7 @@ export function registerDocumentHandlers(deps) {
240
262
  // THE FILE EXISTS FROM THE START. Materializing lazily would mean the first `cello_doc_publish`
241
263
  // has no recorded projection to diff against and refuses — correct, and a bad first experience
242
264
  // for something the operator never had to ask for.
243
- const proposeFilePath = await materialize(who.ownerAgentId, documentId, documentType);
265
+ const proposeFile = await materialize(who.ownerAgentId, documentId, documentType);
244
266
  const correlationId = randomUUID();
245
267
  const sent = await deps.transportFor(who.agentName).sendBytes({
246
268
  peerAgentId,
@@ -248,7 +270,9 @@ export function registerDocumentHandlers(deps) {
248
270
  bytes: encodeDocumentProposal(envelope),
249
271
  correlationId,
250
272
  });
251
- logger.info("document.proposed", { documentId, peerAgentId, sent: sent.ok, correlationId });
273
+ // `document.proposal.sent` per the DoD taxonomy. It was `document.proposed`, which reads as
274
+ // the same fact but does not match what an operator or a log query is told to look for.
275
+ logger.info("document.proposal.sent", { documentId, peerAgentId, sent: sent.ok, correlationId });
252
276
  if (!sent.ok) {
253
277
  // The document EXISTS and the proposal did not arrive. Both facts are reported, because
254
278
  // reporting only the failure would hide a real local row and reporting only success would
@@ -264,7 +288,22 @@ export function registerDocumentHandlers(deps) {
264
288
  };
265
289
  }
266
290
  layer.handshake.markProposalSent(who.ownerAgentId, documentId, deps.now());
267
- return { ok: true, documentId, proposalSent: true, peerAgentId, filePath: proposeFilePath };
291
+ return {
292
+ ok: true,
293
+ documentId,
294
+ proposalSent: true,
295
+ peerAgentId,
296
+ filePath: proposeFile.path,
297
+ // Said out loud rather than left as a silent null against a description that promises a path.
298
+ ...(proposeFile.path === null
299
+ ? {
300
+ fileUnavailableReason: proposeFile.reason,
301
+ guidance: `The document exists and the offer was sent, but no file was written for it ` +
302
+ `(${proposeFile.reason}${proposeFile.detail ? `: ${proposeFile.detail}` : ""}). Use ` +
303
+ `cello_doc_read and cello_doc_write, which do not need the file.`,
304
+ }
305
+ : {}),
306
+ };
268
307
  });
269
308
  /**
270
309
  * Tell the proposer what was decided.
@@ -350,6 +389,19 @@ export function registerDocumentHandlers(deps) {
350
389
  const outcome = layer.handshake.accept(who.ownerAgentId, documentId, deps.now());
351
390
  if (!outcome.ok)
352
391
  return { ok: false, reason: outcome.reason, guidance: outcome.detail };
392
+ // THE SAME REFUSAL ON THE RECEIVING SIDE. Guarding only `propose` leaves an accepter able to
393
+ // take on a document it cannot serve, and the party harmed is the one who did not choose the
394
+ // type. A peer running an older or a different build can still offer anything.
395
+ if (!isSupportedDocumentType(outcome.envelope.document_type)) {
396
+ return {
397
+ ok: false,
398
+ reason: "document_type_unsupported",
399
+ guidance: `Your peer proposed a '${outcome.envelope.document_type}' document, which this build ` +
400
+ `cannot serve (supported: ${[...SUPPORTED_DOCUMENT_TYPES].sort().join(", ")}). The ` +
401
+ `proposal is left undecided rather than accepted into a document that would read as ` +
402
+ `empty — use cello_doc_refuse if you want it gone, and tell them which types you take.`,
403
+ };
404
+ }
353
405
  // THE CONSENT AND THE DOCUMENT ARE ONE ACT. `accept` moves the proposal row; without this the
354
406
  // operator has agreed to a document that does not exist, and the peer's first update is refused
355
407
  // as `document_unknown` — a refusal that names a real condition and explains nothing.
@@ -365,15 +417,25 @@ export function registerDocumentHandlers(deps) {
365
417
  if (outcome.envelope.starting_content) {
366
418
  Y.applyUpdate(layer.live.get(who.ownerAgentId, documentId), outcome.envelope.starting_content);
367
419
  }
368
- const acceptFilePath = await materialize(who.ownerAgentId, documentId, outcome.envelope.document_type);
369
- logger.info("document.accepted", { documentId, proposerAgentId: outcome.envelope.proposer_agent_id });
420
+ const acceptFile = await materialize(who.ownerAgentId, documentId, outcome.envelope.document_type);
421
+ // NOT re-logged here. `DocumentHandshake` already emits `document.proposal.accepted` for this
422
+ // exact fact, and two events for one act make every count of "how many were accepted" wrong
423
+ // depending on which name the query used.
370
424
  const told = await tellProposer(who, documentId, outcome.envelope.proposer_agent_id, true, undefined);
371
425
  return {
372
426
  ok: true,
373
427
  documentId,
374
428
  peerAgentId: outcome.envelope.proposer_agent_id,
375
429
  proposerNotified: told,
376
- filePath: acceptFilePath,
430
+ filePath: acceptFile.path,
431
+ ...(acceptFile.path === null
432
+ ? {
433
+ fileUnavailableReason: acceptFile.reason,
434
+ guidance: `You accepted the document and it is live, but no file was written for it ` +
435
+ `(${acceptFile.reason}${acceptFile.detail ? `: ${acceptFile.detail}` : ""}). Use ` +
436
+ `cello_doc_read and cello_doc_write, which do not need the file.`,
437
+ }
438
+ : {}),
377
439
  };
378
440
  });
379
441
  handlers.set("cello_doc_refuse", async (params, connectionId) => {
@@ -596,6 +658,18 @@ export function registerDocumentHandlers(deps) {
596
658
  // doc is rebuilt from the envelope log, and the edit is by definition not in it, so both are
597
659
  // lost on restart together. A durable flag would outlive the thing it describes.
598
660
  if (unpublishedEdits.has(unpublishedKey(who.ownerAgentId, documentId))) {
661
+ // Screened here too. A flush publishes text that was folded in on an EARLIER call, so
662
+ // skipping it would be a way for content to reach the peer without ever passing the check.
663
+ const stuckFault = screenText(doc.getText("content").toString());
664
+ if (stuckFault) {
665
+ return {
666
+ ok: false,
667
+ reason: "document_content_refused",
668
+ guidance: `The edit waiting to be published contains ${stuckFault.codepoints.join(", ")}, which ` +
669
+ `your peer's screening refuses. Correct the file and publish again.`,
670
+ detail: JSON.stringify({ rule: SCREEN_RULE_ID, ...stuckFault }),
671
+ };
672
+ }
599
673
  const flushed = await publish.publish(who.ownerAgentId, documentId, doc, deps.now());
600
674
  if (flushed.ok) {
601
675
  unpublishedEdits.delete(unpublishedKey(who.ownerAgentId, documentId));
@@ -731,6 +805,28 @@ export function registerDocumentHandlers(deps) {
731
805
  // `lineHunks` touches only the lines that actually changed, so untouched regions keep their
732
806
  // items and a peer's concurrent edit to them merges. Same function `DocumentWritePath.#foldText`
733
807
  // uses, whose header records the same hazard for the file path — one folding rule, not two.
808
+ // REFUSE A TERMINAL DOCUMENT BEFORE TOUCHING THE LOCAL COPY.
809
+ //
810
+ // `peerRefused` was checked above; the terminal statuses were not. A write into a closed, killed
811
+ // or stalled document applied the hunks, failed at `canPublish`, and returned
812
+ // `{ok: true, changed: true, published: false}` while adding the document to the stuck-edit set
813
+ // — where no flush can ever succeed, because the document is terminal. The operator's next
814
+ // `cello_doc_read` then showed text that is in no envelope log and no peer's copy, and that
815
+ // vanishes on the next daemon restart when the live document is rebuilt from the log.
816
+ //
817
+ // Scoped to the TERMINAL statuses on purpose. `agent_platform_paused` is the recoverable case
818
+ // the mutate-then-remember path was built for and keeps its behaviour: the edit is real, it is
819
+ // held, and clearing the pause flushes it.
820
+ const publishable = layer.lifecycle.canPublish(who.ownerAgentId, documentId);
821
+ if (!publishable.ok && publishable.reason !== "agent_platform_paused") {
822
+ return {
823
+ ok: false,
824
+ reason: publishable.reason,
825
+ guidance: `${publishable.detail ?? "This document can no longer accept writes."} Nothing was ` +
826
+ `changed locally — an edit applied here could never be published or recovered, and would ` +
827
+ `disappear the next time the daemon restarted.`,
828
+ };
829
+ }
734
830
  const hunks = lineHunks(before, content);
735
831
  // ONE TRANSACTION, so the whole edit is a single Yjs update rather than several — a peer
736
832
  // applying them separately would pass through states no operator ever wrote.
@@ -829,12 +925,36 @@ export function registerDocumentHandlers(deps) {
829
925
  ...(outcome.peerNotified
830
926
  ? {}
831
927
  : {
832
- guidance: `Your close was recorded but did not reach the peer, so the document cannot settle ` +
833
- `until they hear it. A close is not retried — run cello_doc_close again when they ` +
834
- `are back, or cello_doc_kill if you need it over now.`,
928
+ reason: outcome.notifyReason,
929
+ guidance: notifyGuidance("close", outcome.notifyReason, outcome.notifyDetail),
835
930
  }),
836
931
  };
837
932
  });
933
+ /**
934
+ * What to tell an operator when a close or kill did not reach the peer — BRANCHED ON THE CAUSE.
935
+ *
936
+ * One string used to cover all three: a transport failure, a signing key that could not be
937
+ * loaded, and this daemon not holding the document's agent at all. Only the first is fixed by
938
+ * waiting, and that is what the single message told them to do. Traced end to end in the
939
+ * DOD-DOC-TOOLS-1 review: an exit-point label standing in for a local fault, pointing at the
940
+ * network.
941
+ */
942
+ function notifyGuidance(verb, reason, detail) {
943
+ const tail = verb === "close"
944
+ ? `A close is not retried — run cello_doc_close again once this is cleared, or cello_doc_kill if you need it over now.`
945
+ : `The kill stands locally either way; run cello_doc_kill again once this is cleared so they stop editing.`;
946
+ if (reason === "document_control_unsigned") {
947
+ return (`Your ${verb} was recorded, but this agent's signing key could not be loaded, so nothing ` +
948
+ `could be sent to the peer${detail ? ` (${detail})` : ""}. Waiting will not help — the ` +
949
+ `fault is on this machine. ${tail}`);
950
+ }
951
+ if (reason === "document_unknown") {
952
+ return (`Your ${verb} was recorded, but this daemon does not hold the agent that owns the document, ` +
953
+ `so it could not tell the peer. That is a local wiring fault, not the peer being away. ${tail}`);
954
+ }
955
+ return (`Your ${verb} was recorded but did not reach the peer${detail ? ` (${detail})` : ""}, so the ` +
956
+ `document cannot settle until they hear it. ${tail}`);
957
+ }
838
958
  handlers.set("cello_doc_kill", async (params, connectionId) => {
839
959
  const who = resolve(params, connectionId);
840
960
  if (isRefusal(who))
@@ -850,7 +970,18 @@ export function registerDocumentHandlers(deps) {
850
970
  // peer being reachable — a decision to stop that depends on the other party being online is not
851
971
  // a decision to stop — but an operator who believes the peer was told, when they were not, will
852
972
  // not understand why updates keep arriving.
853
- return { ok: true, documentId, peerNotified: outcome.peerNotified, note: outcome.note };
973
+ return {
974
+ ok: true,
975
+ documentId,
976
+ peerNotified: outcome.peerNotified,
977
+ note: outcome.note,
978
+ ...(outcome.peerNotified
979
+ ? {}
980
+ : {
981
+ reason: outcome.notifyReason,
982
+ guidance: notifyGuidance("kill", outcome.notifyReason, outcome.notifyDetail),
983
+ }),
984
+ };
854
985
  });
855
986
  handlers.set("cello_doc_publish", async (params, connectionId) => {
856
987
  const who = resolve(params, connectionId);
@@ -896,16 +1027,60 @@ export function registerDocumentHandlers(deps) {
896
1027
  };
897
1028
  }
898
1029
  if (update === null) {
1030
+ // NOTHING NEW ON DISK — but an earlier publish may have FOLDED an edit in and then failed to
1031
+ // publish it, in which case the file now matches the projection and there is nothing left to
1032
+ // diff. Without this branch that edit can never leave: the operator clears the cause, publishes
1033
+ // again, and gets a clean "nothing to do" over a change the peer has never seen — with
1034
+ // `cello_doc_list` agreeing, because pending is derived from the envelope log and no envelope
1035
+ // was ever written. Same recovery `cello_doc_write` has; it was missing here while the comment
1036
+ // below claimed parity.
1037
+ if (unpublishedEdits.has(unpublishedKey(who.ownerAgentId, documentId))) {
1038
+ const flushed = await publish.publish(who.ownerAgentId, documentId, doc, deps.now());
1039
+ if (!flushed.ok) {
1040
+ return { ok: true, documentId, changed: false, published: false, reason: flushed.reason, guidance: flushed.detail };
1041
+ }
1042
+ unpublishedEdits.delete(unpublishedKey(who.ownerAgentId, documentId));
1043
+ layer.notifications.markWritten(who.ownerAgentId, documentId, doc.getText("content").toString());
1044
+ return { ok: true, documentId, changed: true, published: true, envelopeHash: flushed.envelopeHash };
1045
+ }
899
1046
  // A publish is an INTENT. Nothing changed on disk, so there is nothing to say, and saying it
900
1047
  // anyway costs a leaf and a round trip.
901
1048
  return { ok: true, documentId, changed: false, published: false };
902
1049
  }
1050
+ // SCREEN WHAT THE FILE IS ABOUT TO SEND. `cello_doc_write` catches an offending character at the
1051
+ // keystroke so it never becomes a rejection round — and three rejection rounds stall a document
1052
+ // permanently. The file path ran none of it, on the surface §4.1 calls PRIMARY: a human editing
1053
+ // in their editor, or an agent with file tools. A zero-width space pasted from a web page is
1054
+ // invisible in both, and the refusal arrives later from the peer with no clue where it came from.
1055
+ //
1056
+ // Screened AFTER the fold because the fold is what produces the text; the edit is therefore
1057
+ // already in the local document when this refuses. The flag is deliberately NOT set: flushing
1058
+ // later would publish the offending bytes unscreened. Correcting the file is what removes it,
1059
+ // and the guidance says so.
1060
+ const publishScreenFault = screenText(doc.getText("content").toString());
1061
+ if (publishScreenFault) {
1062
+ return {
1063
+ ok: false,
1064
+ reason: "document_content_refused",
1065
+ guidance: `Your peer's screening will refuse ${publishScreenFault.codepoints.join(", ")} ` +
1066
+ `(${publishScreenFault.count} occurrence(s), first at character ` +
1067
+ `${publishScreenFault.offsets[0]}). These are characters that make what a reader SEES ` +
1068
+ `differ from what the document SAYS, or that address a reader's model rather than the ` +
1069
+ `reader — they are easy to paste in without seeing them. Nothing was sent. Remove them ` +
1070
+ `from the file and publish again; sending as-is costs a rejection round, and three of ` +
1071
+ `those stall the document.`,
1072
+ detail: JSON.stringify({ rule: SCREEN_RULE_ID, ...publishScreenFault }),
1073
+ };
1074
+ }
903
1075
  const result = await publish.publish(who.ownerAgentId, documentId, doc, deps.now());
904
1076
  if (!result.ok) {
905
1077
  // The file's edits are already FOLDED INTO the document — same shape as cello_doc_write's
906
1078
  // applied-but-unpublished case, and reported the same way, because an operator told this
907
1079
  // failed would edit again and the second publish would diff against a projection that already
908
1080
  // contains their change.
1081
+ // REMEMBER IT, so the branch above can flush it. This is what made the comment's claim of
1082
+ // parity with `cello_doc_write` true rather than aspirational.
1083
+ unpublishedEdits.add(unpublishedKey(who.ownerAgentId, documentId));
909
1084
  return { ok: true, documentId, changed: true, published: false, reason: result.reason, guidance: result.detail };
910
1085
  }
911
1086
  layer.notifications.markWritten(who.ownerAgentId, documentId, doc.getText("content").toString());
@@ -1 +1 @@
1
- {"version":3,"file":"document-handlers.js","sourceRoot":"","sources":["../src/document-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-handlers.js","sourceRoot":"","sources":["../src/document-handlers.ts"],"names":[],"mappings":"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"}