@cluesmith/codev 3.3.0 → 3.3.2

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 (202) hide show
  1. package/dashboard-dist/assets/{index-JCbkpAcV.js → index-D3XaKpZW.js} +45 -43
  2. package/dashboard-dist/assets/index-D3XaKpZW.js.map +1 -0
  3. package/dashboard-dist/index.html +1 -1
  4. package/dist/agent-farm/cli.d.ts.map +1 -1
  5. package/dist/agent-farm/cli.js +99 -36
  6. package/dist/agent-farm/cli.js.map +1 -1
  7. package/dist/agent-farm/commands/reset/constants.d.ts +119 -1
  8. package/dist/agent-farm/commands/reset/constants.d.ts.map +1 -1
  9. package/dist/agent-farm/commands/reset/constants.js +119 -1
  10. package/dist/agent-farm/commands/reset/constants.js.map +1 -1
  11. package/dist/agent-farm/commands/reset/context.d.ts +20 -2
  12. package/dist/agent-farm/commands/reset/context.d.ts.map +1 -1
  13. package/dist/agent-farm/commands/reset/context.js +44 -3
  14. package/dist/agent-farm/commands/reset/context.js.map +1 -1
  15. package/dist/agent-farm/commands/reset/index.d.ts +7 -7
  16. package/dist/agent-farm/commands/reset/index.js +8 -8
  17. package/dist/agent-farm/commands/reset/index.js.map +1 -1
  18. package/dist/agent-farm/commands/reset/receipt.d.ts +1 -1
  19. package/dist/agent-farm/commands/reset/receipt.d.ts.map +1 -1
  20. package/dist/agent-farm/commands/reset/receipt.js +19 -8
  21. package/dist/agent-farm/commands/reset/receipt.js.map +1 -1
  22. package/dist/agent-farm/commands/reset/reorient.d.ts +1 -1
  23. package/dist/agent-farm/commands/reset/reorient.d.ts.map +1 -1
  24. package/dist/agent-farm/commands/reset/reorient.js +12 -5
  25. package/dist/agent-farm/commands/reset/reorient.js.map +1 -1
  26. package/dist/agent-farm/commands/reset/self.d.ts +335 -0
  27. package/dist/agent-farm/commands/reset/self.d.ts.map +1 -0
  28. package/dist/agent-farm/commands/reset/self.js +636 -0
  29. package/dist/agent-farm/commands/reset/self.js.map +1 -0
  30. package/dist/agent-farm/commands/reset.d.ts +18 -3
  31. package/dist/agent-farm/commands/reset.d.ts.map +1 -1
  32. package/dist/agent-farm/commands/reset.js +55 -33
  33. package/dist/agent-farm/commands/reset.js.map +1 -1
  34. package/dist/agent-farm/commands/self-refresh.d.ts +60 -0
  35. package/dist/agent-farm/commands/self-refresh.d.ts.map +1 -0
  36. package/dist/agent-farm/commands/self-refresh.js +506 -0
  37. package/dist/agent-farm/commands/self-refresh.js.map +1 -0
  38. package/dist/agent-farm/commands/send.d.ts.map +1 -1
  39. package/dist/agent-farm/commands/send.js +27 -2
  40. package/dist/agent-farm/commands/send.js.map +1 -1
  41. package/dist/agent-farm/commands/spawn-worktree.js +1 -1
  42. package/dist/agent-farm/commands/spawn-worktree.js.map +1 -1
  43. package/dist/agent-farm/commands/spawn.d.ts +7 -0
  44. package/dist/agent-farm/commands/spawn.d.ts.map +1 -1
  45. package/dist/agent-farm/commands/spawn.js +13 -1
  46. package/dist/agent-farm/commands/spawn.js.map +1 -1
  47. package/dist/agent-farm/commands/tower.d.ts.map +1 -1
  48. package/dist/agent-farm/commands/tower.js +13 -0
  49. package/dist/agent-farm/commands/tower.js.map +1 -1
  50. package/dist/agent-farm/lib/reconnect-backoff.d.ts +10 -0
  51. package/dist/agent-farm/lib/reconnect-backoff.d.ts.map +1 -1
  52. package/dist/agent-farm/lib/reconnect-backoff.js +10 -0
  53. package/dist/agent-farm/lib/reconnect-backoff.js.map +1 -1
  54. package/dist/agent-farm/lib/tower-client.d.ts +12 -0
  55. package/dist/agent-farm/lib/tower-client.d.ts.map +1 -1
  56. package/dist/agent-farm/lib/tower-client.js +12 -0
  57. package/dist/agent-farm/lib/tower-client.js.map +1 -1
  58. package/dist/agent-farm/lib/tunnel-client.d.ts.map +1 -1
  59. package/dist/agent-farm/lib/tunnel-client.js +7 -3
  60. package/dist/agent-farm/lib/tunnel-client.js.map +1 -1
  61. package/dist/agent-farm/servers/canvas-relay.d.ts +60 -0
  62. package/dist/agent-farm/servers/canvas-relay.d.ts.map +1 -0
  63. package/dist/agent-farm/servers/canvas-relay.js +376 -0
  64. package/dist/agent-farm/servers/canvas-relay.js.map +1 -0
  65. package/dist/agent-farm/servers/gate-profiles.d.ts +1 -1
  66. package/dist/agent-farm/servers/gate-profiles.js +1 -1
  67. package/dist/agent-farm/servers/mailbox-delivery.d.ts +141 -13
  68. package/dist/agent-farm/servers/mailbox-delivery.d.ts.map +1 -1
  69. package/dist/agent-farm/servers/mailbox-delivery.js +172 -16
  70. package/dist/agent-farm/servers/mailbox-delivery.js.map +1 -1
  71. package/dist/agent-farm/servers/mailbox-wiring.d.ts +24 -2
  72. package/dist/agent-farm/servers/mailbox-wiring.d.ts.map +1 -1
  73. package/dist/agent-farm/servers/mailbox-wiring.js +92 -32
  74. package/dist/agent-farm/servers/mailbox-wiring.js.map +1 -1
  75. package/dist/agent-farm/servers/message-write.d.ts +58 -18
  76. package/dist/agent-farm/servers/message-write.d.ts.map +1 -1
  77. package/dist/agent-farm/servers/message-write.js +73 -28
  78. package/dist/agent-farm/servers/message-write.js.map +1 -1
  79. package/dist/agent-farm/servers/overview.d.ts +19 -0
  80. package/dist/agent-farm/servers/overview.d.ts.map +1 -1
  81. package/dist/agent-farm/servers/overview.js +78 -1
  82. package/dist/agent-farm/servers/overview.js.map +1 -1
  83. package/dist/agent-farm/servers/render-gate.d.ts +13 -0
  84. package/dist/agent-farm/servers/render-gate.d.ts.map +1 -1
  85. package/dist/agent-farm/servers/render-gate.js +21 -0
  86. package/dist/agent-farm/servers/render-gate.js.map +1 -1
  87. package/dist/agent-farm/servers/session-submit.d.ts +221 -28
  88. package/dist/agent-farm/servers/session-submit.d.ts.map +1 -1
  89. package/dist/agent-farm/servers/session-submit.js +334 -43
  90. package/dist/agent-farm/servers/session-submit.js.map +1 -1
  91. package/dist/agent-farm/servers/tower-routes.d.ts.map +1 -1
  92. package/dist/agent-farm/servers/tower-routes.js +269 -64
  93. package/dist/agent-farm/servers/tower-routes.js.map +1 -1
  94. package/dist/agent-farm/servers/tower-server.js +25 -3
  95. package/dist/agent-farm/servers/tower-server.js.map +1 -1
  96. package/dist/agent-farm/servers/tower-terminals.d.ts +6 -0
  97. package/dist/agent-farm/servers/tower-terminals.d.ts.map +1 -1
  98. package/dist/agent-farm/servers/tower-terminals.js +30 -5
  99. package/dist/agent-farm/servers/tower-terminals.js.map +1 -1
  100. package/dist/agent-farm/servers/tower-tunnel.d.ts.map +1 -1
  101. package/dist/agent-farm/servers/tower-tunnel.js +14 -0
  102. package/dist/agent-farm/servers/tower-tunnel.js.map +1 -1
  103. package/dist/agent-farm/servers/tower-websocket.d.ts +6 -1
  104. package/dist/agent-farm/servers/tower-websocket.d.ts.map +1 -1
  105. package/dist/agent-farm/servers/tower-websocket.js +90 -37
  106. package/dist/agent-farm/servers/tower-websocket.js.map +1 -1
  107. package/dist/agent-farm/types.d.ts +37 -2
  108. package/dist/agent-farm/types.d.ts.map +1 -1
  109. package/dist/agent-farm/utils/harness.d.ts +3 -3
  110. package/dist/agent-farm/utils/harness.js +1 -1
  111. package/dist/agent-farm/utils/message-format.d.ts +67 -3
  112. package/dist/agent-farm/utils/message-format.d.ts.map +1 -1
  113. package/dist/agent-farm/utils/message-format.js +127 -14
  114. package/dist/agent-farm/utils/message-format.js.map +1 -1
  115. package/dist/agent-farm/utils/server-utils.d.ts +86 -4
  116. package/dist/agent-farm/utils/server-utils.d.ts.map +1 -1
  117. package/dist/agent-farm/utils/server-utils.js +303 -5
  118. package/dist/agent-farm/utils/server-utils.js.map +1 -1
  119. package/dist/commands/porch/context-refresh.d.ts +181 -0
  120. package/dist/commands/porch/context-refresh.d.ts.map +1 -0
  121. package/dist/commands/porch/context-refresh.js +270 -0
  122. package/dist/commands/porch/context-refresh.js.map +1 -0
  123. package/dist/commands/porch/index.d.ts +6 -0
  124. package/dist/commands/porch/index.d.ts.map +1 -1
  125. package/dist/commands/porch/index.js +46 -0
  126. package/dist/commands/porch/index.js.map +1 -1
  127. package/dist/commands/porch/next.d.ts +0 -9
  128. package/dist/commands/porch/next.d.ts.map +1 -1
  129. package/dist/commands/porch/next.js +133 -4
  130. package/dist/commands/porch/next.js.map +1 -1
  131. package/dist/commands/porch/protocol.d.ts.map +1 -1
  132. package/dist/commands/porch/protocol.js +102 -0
  133. package/dist/commands/porch/protocol.js.map +1 -1
  134. package/dist/commands/porch/types.d.ts +61 -0
  135. package/dist/commands/porch/types.d.ts.map +1 -1
  136. package/dist/lib/forge-contracts.d.ts +9 -0
  137. package/dist/lib/forge-contracts.d.ts.map +1 -1
  138. package/dist/lib/forge-contracts.js.map +1 -1
  139. package/dist/lib/github.d.ts +15 -1
  140. package/dist/lib/github.d.ts.map +1 -1
  141. package/dist/lib/github.js +17 -0
  142. package/dist/lib/github.js.map +1 -1
  143. package/dist/lib/self-refresh-invocation.d.ts +60 -0
  144. package/dist/lib/self-refresh-invocation.d.ts.map +1 -0
  145. package/dist/lib/self-refresh-invocation.js +64 -0
  146. package/dist/lib/self-refresh-invocation.js.map +1 -0
  147. package/dist/lib/test-env.d.ts +50 -0
  148. package/dist/lib/test-env.d.ts.map +1 -1
  149. package/dist/lib/test-env.js +76 -0
  150. package/dist/lib/test-env.js.map +1 -1
  151. package/dist/terminal/attach-replay.d.ts +39 -0
  152. package/dist/terminal/attach-replay.d.ts.map +1 -0
  153. package/dist/terminal/attach-replay.js +76 -0
  154. package/dist/terminal/attach-replay.js.map +1 -0
  155. package/dist/terminal/pty-manager.d.ts.map +1 -1
  156. package/dist/terminal/pty-manager.js +35 -17
  157. package/dist/terminal/pty-manager.js.map +1 -1
  158. package/dist/terminal/pty-session.d.ts +81 -12
  159. package/dist/terminal/pty-session.d.ts.map +1 -1
  160. package/dist/terminal/pty-session.js +113 -25
  161. package/dist/terminal/pty-session.js.map +1 -1
  162. package/dist/terminal/session-screen.d.ts +25 -0
  163. package/dist/terminal/session-screen.d.ts.map +1 -1
  164. package/dist/terminal/session-screen.js +53 -8
  165. package/dist/terminal/session-screen.js.map +1 -1
  166. package/package.json +10 -7
  167. package/scripts/forge/gitea/pr-view.sh +4 -1
  168. package/scripts/forge/github/pr-view.sh +1 -1
  169. package/scripts/forge/gitlab/pr-view.sh +4 -1
  170. package/skeleton/.claude/skills/afx/SKILL.md +54 -0
  171. package/skeleton/.claude/skills/arch-save/SKILL.md +8 -2
  172. package/skeleton/.claude/skills/builder-refresh/SKILL.md +138 -0
  173. package/skeleton/.codex/skills/afx/SKILL.md +54 -0
  174. package/skeleton/.codex/skills/arch-save/SKILL.md +8 -2
  175. package/skeleton/.codex/skills/builder-refresh/SKILL.md +138 -0
  176. package/skeleton/protocol-schema.json +17 -0
  177. package/skeleton/protocols/air/protocol.json +1 -1
  178. package/skeleton/protocols/aspir/protocol.json +5 -1
  179. package/skeleton/protocols/bugfix/protocol.json +1 -1
  180. package/skeleton/protocols/experiment/protocol.json +1 -1
  181. package/skeleton/protocols/maintain/protocol.json +1 -1
  182. package/skeleton/protocols/pir/builder-prompt.md +3 -2
  183. package/skeleton/protocols/pir/prompts/implement.md +1 -1
  184. package/skeleton/protocols/pir/prompts/plan.md +1 -1
  185. package/skeleton/protocols/pir/prompts/review.md +1 -1
  186. package/skeleton/protocols/pir/protocol.json +1 -1
  187. package/skeleton/protocols/pir/protocol.md +4 -4
  188. package/skeleton/protocols/protocol-schema.json +17 -0
  189. package/skeleton/protocols/research/protocol.json +1 -1
  190. package/skeleton/protocols/spike/protocol.json +1 -1
  191. package/skeleton/protocols/spir/protocol.json +5 -1
  192. package/skeleton/resources/commands/agent-farm.md +14 -11
  193. package/skeleton/roles/builder.md +3 -4
  194. package/templates/3d-viewer.html +32 -4
  195. package/templates/open.html +58 -12
  196. package/templates/tower.html +26 -7
  197. package/templates/vendor/three-3MFLoader.js +1478 -0
  198. package/templates/vendor/three-STLLoader.js +410 -0
  199. package/templates/vendor/three-TrackballControls.js +828 -0
  200. package/templates/vendor/three-fflate.module.js +2474 -0
  201. package/templates/vendor/three.module.js +53044 -0
  202. package/dashboard-dist/assets/index-JCbkpAcV.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"overview.js","sourceRoot":"","sources":["../../../src/agent-farm/servers/overview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"overview.js","sourceRoot":"","sources":["../../../src/agent-farm/servers/overview.ts"],"names":[],"mappings":"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"}
@@ -112,6 +112,19 @@ export interface GateVerdict {
112
112
  */
113
113
  detail: 'no-composer-marker' | 'no-region-end' | 'user-text' | 'empty';
114
114
  }
115
+ /**
116
+ * Every line the mirror still holds — scrollback AND viewport — right-trimmed (Issue #1573).
117
+ *
118
+ * The gate itself deliberately reads only the viewport ({@link screenLines}): a composer lives
119
+ * at the bottom of the screen, and history is noise for classifying it. Echo verification wants
120
+ * the opposite reach. A long message pushes its own header off the top while it is still being
121
+ * typed, so the only place the header survives is scrollback — measured with a 300-line send,
122
+ * where the header sat at buffer line 6 under a viewport starting at 209.
123
+ *
124
+ * Bounded by the mirror's own `SCREEN_SCROLLBACK` (1000 lines), and read once per delivery
125
+ * rather than per gate check, so the O(history) scan is not on any hot path.
126
+ */
127
+ export declare function bufferLines(term: HeadlessTerminal): string[];
115
128
  /**
116
129
  * The classifier CORE (Spec 1313 render-gate round 2): classify an already-rendered
117
130
  * headless buffer against a profile. Synchronous — it only READS the live buffer, it never
@@ -1 +1 @@
1
- {"version":3,"file":"render-gate.d.ts","sourceRoot":"","sources":["../../../src/agent-farm/servers/render-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAWH,OAAO,KAAK,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAWpE;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,qEAAqE;IACrE,GAAG,EAAE,MAAM,CAAC;IACZ,wEAAwE;IACxE,aAAa,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B;;;;;;;;OAQG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,kFAAkF;AAClF,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,MAAM,EAAE,oBAAoB,GAAG,eAAe,GAAG,WAAW,GAAG,OAAO,CAAC;CACxE;AA0GD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,GACnB,WAAW,CAsDb;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAYvG"}
1
+ {"version":3,"file":"render-gate.d.ts","sourceRoot":"","sources":["../../../src/agent-farm/servers/render-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAWH,OAAO,KAAK,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAWpE;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,qEAAqE;IACrE,GAAG,EAAE,MAAM,CAAC;IACZ,wEAAwE;IACxE,aAAa,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B;;;;;;;;OAQG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,kFAAkF;AAClF,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,MAAM,EAAE,oBAAoB,GAAG,eAAe,GAAG,WAAW,GAAG,OAAO,CAAC;CACxE;AAwBD;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,EAAE,CAQ5D;AAoFD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,GACnB,WAAW,CAsDb;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAYvG"}
@@ -81,6 +81,27 @@ function screenLines(term, rows) {
81
81
  }
82
82
  return lines;
83
83
  }
84
+ /**
85
+ * Every line the mirror still holds — scrollback AND viewport — right-trimmed (Issue #1573).
86
+ *
87
+ * The gate itself deliberately reads only the viewport ({@link screenLines}): a composer lives
88
+ * at the bottom of the screen, and history is noise for classifying it. Echo verification wants
89
+ * the opposite reach. A long message pushes its own header off the top while it is still being
90
+ * typed, so the only place the header survives is scrollback — measured with a 300-line send,
91
+ * where the header sat at buffer line 6 under a viewport starting at 209.
92
+ *
93
+ * Bounded by the mirror's own `SCREEN_SCROLLBACK` (1000 lines), and read once per delivery
94
+ * rather than per gate check, so the O(history) scan is not on any hot path.
95
+ */
96
+ export function bufferLines(term) {
97
+ const buf = term.buffer.active;
98
+ const lines = [];
99
+ for (let i = 0; i < buf.length; i++) {
100
+ const line = buf.getLine(i);
101
+ lines.push(line ? line.translateToString(true).trimEnd() : '');
102
+ }
103
+ return lines;
104
+ }
84
105
  /** Last row index whose text starts with the profile's composer marker, or -1. */
85
106
  function findMarkerRow(lines, markerPattern) {
86
107
  let markerRow = -1;
@@ -1 +1 @@
1
- {"version":3,"file":"render-gate.js","sourceRoot":"","sources":["../../../src/agent-farm/servers/render-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render-gate.js","sourceRoot":"","sources":["../../../src/agent-farm/servers/render-gate.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  * soon as the write was *scheduled*. So an awaited send resolved before its own
10
10
  * message had been submitted.
11
11
  *
12
- * In production (`afx reset`, 2026-07-31) that gap swallowed a `/clear`
12
+ * In production (`afx refresh`, 2026-07-31) that gap swallowed a `/clear`
13
13
  * entirely. Reset awaited the raw write of `/clear`, then wrote the
14
14
  * re-orientation — landing inside the 50ms window, into the same composer,
15
15
  * ahead of the Enter. One Enter then submitted both as a single message
@@ -41,36 +41,200 @@
41
41
  *
42
42
  * ## Exactly what it covers — this is NOT blanket per-session atomicity
43
43
  *
44
- * A lock only serialises writers that take it. Currently that is the `escape`
45
- * and `interrupt` paths of `/api/send`. Every other PTY writer still writes
46
- * directly, and it is worth being precise about why:
47
- *
48
- * - The mailbox delivery path (`deliverAgentMailSerialized`, Spec 1313) — every
49
- * normal `/api/send` AND every cron notification (Phase 6 rerouted cron here; the
50
- * old blind `writeMessageToSession` is gone). NOT covered by this lock, and does not
51
- * need it: it runs its OWN per-agent write serializer that completion-chains each
52
- * delivery on the prior one's paced write (text + Enter), so two mailbox deliveries
53
- * to one agent cannot interleave. That is a disjoint lock from this per-session one,
54
- * so a mailbox delivery is not serialised against a concurrent `escape`/`interrupt`
55
- * here — but a normal mailbox delivery only ever writes onto a render-gate-verified
56
- * empty prompt, and `interrupt` is the explicit gate-bypassing human action (see
57
- * tower-routes.ts), so that residual cross-path race is an accepted, documented
58
- * boundary, not a regression this lock must close.
59
- * - `POST /api/terminals/:id/write` — NOT covered. It is a raw passthrough
60
- * with no Enter semantics of its own.
61
- * - `tower-websocket.ts` keystrokes and the shellper frame relay — DELIBERATELY
62
- * not covered. That is a human typing into their own terminal; serialising
63
- * it behind an agent's message would make the UI feel stuck, and the human
64
- * is the composer's owner.
65
- *
66
- * So the guarantee is: **two lock-taking `/api/send` submissions (escape/interrupt)
67
- * to one session cannot interleave**, which is the failure that reached production.
68
- * Anything stronger requires the remaining writers to take the lock too.
44
+ * A lock only serialises writers that take it. As of Issue #1365 that is every writer
45
+ * that puts a *message* on a terminal:
46
+ *
47
+ * - `escape` and `interrupt` on `/api/send`, and the delayed `--interrupt` `^C`
48
+ * (`tower-routes.ts`) — the explicit human gate-bypasses.
49
+ * - The mailbox delivery path (`deliverAgentMailSerialized`, Spec 1313) — every normal
50
+ * `/api/send`, every cron notification, every backstop drain. It takes this lock as a
51
+ * LEAF inside its own per-agent serializer, via `submitMessagePaced`.
52
+ *
53
+ * These stay deliberately uncovered:
54
+ *
55
+ * - `POST /api/terminals/:id/write` — a raw passthrough with no Enter semantics of its own.
56
+ * - `tower-websocket.ts` keystrokes and the shellper frame relay — a human typing into
57
+ * their own terminal. Serialising that behind an agent's message would make the UI feel
58
+ * stuck, and the human is the composer's owner.
59
+ *
60
+ * ### Why the mailbox path was converged (Issue #1365)
61
+ *
62
+ * Until #1365 the delivery path held only its per-AGENT serializer — a disjoint lock — and
63
+ * the resulting cross-path race was accepted on the grounds that a gated delivery only ever
64
+ * writes onto a render-verified empty prompt and `interrupt` is an explicit human action.
65
+ * That reasoning covered one ordering (a delivery landing inside the interrupt's `^C`→settle
66
+ * →text window) and missed two:
67
+ *
68
+ * - a `^C` landing inside the DELIVERY's own text→Enter window (50–130 ms+) cleared the
69
+ * composer, so the delivery's Enter submitted nothing — yet every byte had reached the
70
+ * PTY, so the write reported success and the row was marked `delivered`. Silent loss with
71
+ * a false audit record, which is the one outcome Spec 1313 exists to exclude;
72
+ * - `--escape` (ESC, then Enter 50 ms later) produced the truncated variant, and is the
73
+ * MORE likely trigger for a multi-line body, because the delivery's exposed window is
74
+ * longest exactly when the body is long.
75
+ *
76
+ * The "a human is standing at this terminal" premise also does not hold for the DELAYED
77
+ * `^C`, which fires unattended on a timer.
78
+ *
79
+ * ### Lock order, and why there is no cycle
80
+ *
81
+ * Always per-agent → per-terminal. The delivery path takes this lock as a leaf inside
82
+ * `KeyedSerializer`; the operator paths take only this one and never enter the per-agent
83
+ * serializer. Re-entrancy is impossible in the other direction too: `PtySession.write()`
84
+ * emits no `'submit'` signal (only `handleUserInput` does, for human keystrokes), so no
85
+ * write from inside a lock can schedule a delivery synchronously.
86
+ *
87
+ * The lock is a leaf around the WRITE only, never the gate classify. `--interrupt` is the
88
+ * human's escape hatch for a wedged agent; making it queue behind a screen classification
89
+ * would be a real regression for the one action that must always get through.
90
+ *
91
+ * ### Asymmetric acquisition: deliveries decline, operators wait
92
+ *
93
+ * A delivery uses {@link trySubmitToSession} and abandons its turn on contention, because
94
+ * `MailboxDrainer.tick` walks agents SEQUENTIALLY — one delivery parked on a terminal lock
95
+ * would stall every other agent's mail, plus that tick's escalation and prune passes. It
96
+ * costs nothing: a contended terminal means the delivery's in-lock precheck would have
97
+ * aborted it anyway, and the row simply re-delivers on the next clean pass.
98
+ *
99
+ * Operators block — bounded by {@link OPERATOR_SUBMIT_WAIT_CEILING_MS}, because a paced
100
+ * write runs `(lines−1)×10+80` ms and a body is capped only by `parseJsonBody`'s 1 MiB.
101
+ *
102
+ * The ceiling may only ever bypass a DELIVERY write, never another operator (codex review of
103
+ * PR #1492). Operator-vs-operator was ALWAYS fully serialized before #1365 — `submitToSession`
104
+ * had no ceiling — so a ceiling that could skip a queued or in-flight operator would make that
105
+ * one pair strictly WORSE than the old behaviour, which is the opposite of the point. The
106
+ * {@link SubmissionKind} tag plus the pending-operator count is what keeps the guarantee true
107
+ * per pair:
108
+ *
109
+ * - operator vs operator — fully serialized, unbounded wait, exactly as before #1365;
110
+ * - operator vs delivery — serialized under the ceiling, and above it degraded to the
111
+ * pre-#1365 behaviour (two disjoint locks, i.e. no serialization at all), so never worse;
112
+ * - delivery vs delivery — the per-agent serializer, unchanged, plus a declined contention.
113
+ *
114
+ * ### What is guaranteed, and what is not
115
+ *
116
+ * **Serialization is the structural guarantee**: no lock-taking writer can put bytes on a
117
+ * terminal while another lock-taking writer's submission is in flight. That is a property of
118
+ * the lock, not of any check.
119
+ *
120
+ * The delivery path ALSO re-validates its preconditions inside the lock (`writable`, the
121
+ * gate's `ringToken`, and the row's own status). That re-check narrows a window; it does not
122
+ * close one, and it should not be described as if it did:
123
+ *
124
+ * - `ringToken` counts OUTPUT bytes, so input written by an uncovered path (the raw
125
+ * passthrough, or a human's keystrokes) can sit un-echoed on the line and read as
126
+ * unchanged. That echo-lag residual survives this change by design — it is #1473's
127
+ * territory.
128
+ * - Its real structural value is that it makes the ACQUISITION POLICY a free choice: were
129
+ * the delivery ever switched from declining to waiting (e.g. to order an interrupt ahead
130
+ * of its own body, per #1481), the precheck is what would keep that safe.
131
+ *
132
+ * The one hole this lock opens is its own degraded path: an operator whose ceiling expires
133
+ * writes unserialized. Rather than leave that as a second silent-loss route, degraded writes
134
+ * are COUNTED per session ({@link unserializedWriteCount}); `submitMessagePaced` holds a
135
+ * {@link watchBypasses} watch across its write and reports `preempted`, so the delivery holds
136
+ * its row for redelivery instead of reporting a delivery that may have been clobbered.
137
+ * Deliberately no screen re-classification — the question is only "did anyone bypass the lock
138
+ * while I held it?", and a counter answers exactly that. The count is BYTES, not intent: a
139
+ * degraded write whose callback declines to write anything (the delayed `^C` re-checks
140
+ * liveness inside the lock) bumps nothing, because there is nothing for a delivery to have
141
+ * been raced by.
69
142
  */
70
143
  /** Injectable for tests; real timers otherwise. */
71
144
  export interface SubmitClock {
72
145
  sleep(ms: number): Promise<void>;
73
146
  }
147
+ /**
148
+ * What kind of writer a submission is (Issue #1365, codex review).
149
+ *
150
+ * Load-bearing for the wait ceiling: the ceiling may only ever let a writer bypass a
151
+ * DELIVERY write, never another operator. See {@link SubmitOptions.waitCeilingMs}.
152
+ */
153
+ export type SubmissionKind = 'operator' | 'delivery-write';
154
+ /** Options for an operator submission that must not wait unboundedly (Issue #1365). */
155
+ export interface SubmitOptions {
156
+ /**
157
+ * What this submission is. Defaults to `operator` — every pre-#1365 caller of this
158
+ * function is one, and defaulting to the kind that is never bypassable is the safe way
159
+ * round.
160
+ */
161
+ kind?: SubmissionKind;
162
+ /**
163
+ * Max ms to wait for an in-flight submission before proceeding UNSERIALIZED.
164
+ * Omitted (the default) means wait as long as it takes.
165
+ *
166
+ * **Only armed when nothing ahead of us is an operator submission.** Two operator
167
+ * submissions to one terminal were ALWAYS fully serialized before #1365, and a ceiling
168
+ * that could bypass an operator would make this pair strictly worse than that — the one
169
+ * corner where "never worse than the old status quo" would otherwise be false. The
170
+ * ceiling exists to keep the escape hatch responsive against a long DELIVERY, which is
171
+ * the only thing it may skip.
172
+ */
173
+ waitCeilingMs?: number;
174
+ /** Called instead of the write's serialization when {@link waitCeilingMs} expires. */
175
+ onCeilingExpired?: (waitedMs: number) => void;
176
+ /**
177
+ * Consulted immediately after the write callback returns, on the DEGRADED path only:
178
+ * did the write actually put bytes on the terminal? Defaults to yes.
179
+ *
180
+ * The delayed `^C` re-checks `isStillLive()` and `writable` INSIDE the lock and can
181
+ * legitimately write nothing. Counting that as a bypass would make a concurrent delivery
182
+ * report `preempted` and re-deliver — a duplicate charged for a race that never happened.
183
+ * {@link unserializedWriteCount} answers "did bytes bypass the lock while I held it?", so
184
+ * only bytes may bump it.
185
+ */
186
+ wroteBytes?: () => boolean;
187
+ }
188
+ /**
189
+ * How long an OPERATOR submission (`--interrupt`, `--escape`, the delayed `^C`) waits for an
190
+ * in-flight submission before proceeding unserialized (Issue #1365).
191
+ *
192
+ * Needed because a paced write's duration is `(lines−1)×10+80` ms and a request body is capped
193
+ * only by `parseJsonBody`'s 1 MiB, so a 48 KB `--file` of short lines is ~8 minutes on the wire.
194
+ * Blocking `--interrupt` — the human's escape hatch for a wedged agent — behind that would be a
195
+ * worse regression than the interleaving this lock closes. Two seconds comfortably covers every
196
+ * realistic message while keeping the escape hatch responsive.
197
+ *
198
+ * It applies ONLY against a delivery write; behind another operator the wait stays unbounded
199
+ * (see {@link SubmitOptions.waitCeilingMs}). And when it does expire, the caller must SAY so —
200
+ * `/api/send` reports `degraded: true` — because a degraded operator write may interleave with
201
+ * the write it skipped, and the interrupt path has already claimed its row `delivered`.
202
+ */
203
+ export declare const OPERATOR_SUBMIT_WAIT_CEILING_MS = 2000;
204
+ /** A live comparison window over a session's degraded-write count. See {@link watchBypasses}. */
205
+ export interface BypassWatch {
206
+ /** Did a degraded write put bytes on this terminal since the watch opened? */
207
+ raced(): boolean;
208
+ /** Close the watch. Idempotent; call it from a `finally` so no path leaks a watcher. */
209
+ release(): void;
210
+ }
211
+ /**
212
+ * Watch a session for degraded (ceiling-bypassing) writes across your own write.
213
+ *
214
+ * Open before the first byte, {@link BypassWatch.raced} after the last, and
215
+ * {@link BypassWatch.release} in a `finally`. Holding the watch is what pins the underlying
216
+ * count in place: without it the entry may be evicted the moment the session goes idle, and
217
+ * a reset between the two reads would look like "no race".
218
+ */
219
+ export declare function watchBypasses(sessionId: string): BypassWatch;
220
+ /**
221
+ * How many unserialized (ceiling-expired) writes this session has seen.
222
+ *
223
+ * The point of comparison for a writer that wants to know whether its own submission was
224
+ * raced: sample before the first byte, compare after the last. Cheaper and far more
225
+ * direct than re-classifying the screen — it asks "did anyone bypass the lock while I
226
+ * held it?", which is exactly the question, and needs no terminal rendering at all.
227
+ */
228
+ export declare function unserializedWriteCount(sessionId: string): number;
229
+ /**
230
+ * Whether a submission is queued or in flight for this session RIGHT NOW.
231
+ *
232
+ * Read by {@link trySubmitToSession} and exposed for telemetry. Safe to act on
233
+ * without a lock of its own: the runtime is single-threaded and every mutation of
234
+ * `chains` happens with no await in between, so a caller that observes `false`
235
+ * cannot be beaten to the install by another caller in the same tick.
236
+ */
237
+ export declare function isSubmissionInFlight(sessionId: string): boolean;
74
238
  /**
75
239
  * Run a write against a session so that it completes before any other
76
240
  * submission to the same session begins.
@@ -80,11 +244,40 @@ export interface SubmitClock {
80
244
  * keystroke (the Enter) has been written. This is exactly what
81
245
  * `writeMessageToSession` / `writeEscapeToSession` already
82
246
  * return, so callers pass them through unchanged.
247
+ * @param clock injectable sleeper; real timers by default
248
+ * @param options {@link SubmitOptions} — the operator paths pass a wait ceiling
83
249
  * @returns resolves once the submission is complete
84
250
  */
85
- export declare function submitToSession(sessionId: string, write: () => number, clock?: SubmitClock): Promise<void>;
251
+ export declare function submitToSession(sessionId: string, write: () => number, clock?: SubmitClock, options?: SubmitOptions): Promise<void>;
252
+ /**
253
+ * {@link submitToSession} for a writer that would rather skip its turn than wait
254
+ * for one — the gated mailbox delivery path (Issue #1365).
255
+ *
256
+ * Resolves `false` **without writing anything** when another submission already
257
+ * holds the session. That is the right trade for a gated delivery and the wrong one
258
+ * for an operator action, which is why the two differ:
259
+ *
260
+ * - A contended terminal means some other writer is mid-submission, so the
261
+ * delivery's in-lock precheck would have aborted it anyway (the screen has
262
+ * moved, or is about to). Nothing is lost by declining now: the row stays held
263
+ * and the backstop re-delivers within one tick.
264
+ * - Blocking instead would be a genuine liveness regression, because
265
+ * `MailboxDrainer.tick` walks agents SEQUENTIALLY — one agent parked on a
266
+ * terminal lock would stall every other agent's delivery, plus that tick's
267
+ * escalation, owner-notice and prune passes.
268
+ *
269
+ * @returns `true` when the write ran (and completed), `false` when the session was
270
+ * contended and nothing was written.
271
+ */
272
+ export declare function trySubmitToSession(sessionId: string, write: () => number, clock?: SubmitClock): Promise<boolean>;
86
273
  /** Number of sessions with a submission in flight. Test/observability only. */
87
274
  export declare function pendingSubmissionSessions(): number;
88
- /** Drop all chains. Test-only; a live Tower should let them drain. */
275
+ /** Drop all chains and degraded-write counters. Test-only; a live Tower should let them drain. */
89
276
  export declare function resetSubmissionChains(): void;
277
+ /**
278
+ * How many sessions still carry a degraded-write count. Test/observability only — the
279
+ * assertion that {@link unserializedWrites} self-evicts rather than growing for the life of
280
+ * a Tower.
281
+ */
282
+ export declare function bypassCountedSessions(): number;
90
283
  //# sourceMappingURL=session-submit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-submit.d.ts","sourceRoot":"","sources":["../../../src/agent-farm/servers/session-submit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AAUH,mDAAmD;AACnD,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClC;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,MAAM,EACnB,KAAK,GAAE,WAAuB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAgCf;AAED,+EAA+E;AAC/E,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAED,sEAAsE;AACtE,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
1
+ {"version":3,"file":"session-submit.d.ts","sourceRoot":"","sources":["../../../src/agent-farm/servers/session-submit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6IG;AAWH,mDAAmD;AACnD,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAClC;AAMD;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,gBAAgB,CAAC;AAE3D,uFAAuF;AACvF,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sFAAsF;IACtF,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC;CAC5B;AAKD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,+BAA+B,OAAO,CAAC;AA8BpD,iGAAiG;AACjG,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,KAAK,IAAI,OAAO,CAAC;IACjB,wFAAwF;IACxF,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAkB5D;AA0BD;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,MAAM,EACnB,KAAK,GAAE,WAAuB,EAC9B,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAiGf;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,MAAM,EACnB,KAAK,GAAE,WAAuB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAIlB;AAED,+EAA+E;AAC/E,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAED,kGAAkG;AAClG,wBAAgB,qBAAqB,IAAI,IAAI,CAK5C;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C"}