@cluesmith/codev 3.3.2 → 3.3.3

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 (157) hide show
  1. package/dashboard-dist/assets/{index-D3XaKpZW.js → index-CUIjS_Vb.js} +41 -41
  2. package/dashboard-dist/assets/index-CUIjS_Vb.js.map +1 -0
  3. package/dashboard-dist/assets/index-DnYLy5C_.css +32 -0
  4. package/dashboard-dist/index.html +2 -2
  5. package/dist/agent-farm/commands/inbox.d.ts.map +1 -1
  6. package/dist/agent-farm/commands/inbox.js +67 -10
  7. package/dist/agent-farm/commands/inbox.js.map +1 -1
  8. package/dist/agent-farm/commands/interrupt.d.ts +4 -1
  9. package/dist/agent-farm/commands/interrupt.d.ts.map +1 -1
  10. package/dist/agent-farm/commands/interrupt.js +6 -3
  11. package/dist/agent-farm/commands/interrupt.js.map +1 -1
  12. package/dist/agent-farm/commands/reset.d.ts +4 -1
  13. package/dist/agent-farm/commands/reset.d.ts.map +1 -1
  14. package/dist/agent-farm/commands/reset.js +6 -3
  15. package/dist/agent-farm/commands/reset.js.map +1 -1
  16. package/dist/agent-farm/commands/send.d.ts +28 -0
  17. package/dist/agent-farm/commands/send.d.ts.map +1 -1
  18. package/dist/agent-farm/commands/send.js +64 -6
  19. package/dist/agent-farm/commands/send.js.map +1 -1
  20. package/dist/agent-farm/db/index.d.ts +3 -1
  21. package/dist/agent-farm/db/index.d.ts.map +1 -1
  22. package/dist/agent-farm/db/index.js +8 -443
  23. package/dist/agent-farm/db/index.js.map +1 -1
  24. package/dist/agent-farm/db/mailbox.d.ts +47 -7
  25. package/dist/agent-farm/db/mailbox.d.ts.map +1 -1
  26. package/dist/agent-farm/db/mailbox.js +56 -12
  27. package/dist/agent-farm/db/mailbox.js.map +1 -1
  28. package/dist/agent-farm/db/migrations.d.ts +57 -0
  29. package/dist/agent-farm/db/migrations.d.ts.map +1 -0
  30. package/dist/agent-farm/db/migrations.js +530 -0
  31. package/dist/agent-farm/db/migrations.js.map +1 -0
  32. package/dist/agent-farm/db/schema.d.ts +1 -1
  33. package/dist/agent-farm/db/schema.d.ts.map +1 -1
  34. package/dist/agent-farm/db/schema.js +1 -0
  35. package/dist/agent-farm/db/schema.js.map +1 -1
  36. package/dist/agent-farm/db/types.d.ts +22 -0
  37. package/dist/agent-farm/db/types.d.ts.map +1 -1
  38. package/dist/agent-farm/db/types.js.map +1 -1
  39. package/dist/agent-farm/lib/tunnel-client.d.ts.map +1 -1
  40. package/dist/agent-farm/lib/tunnel-client.js +43 -14
  41. package/dist/agent-farm/lib/tunnel-client.js.map +1 -1
  42. package/dist/agent-farm/servers/cron-delivery.d.ts +7 -1
  43. package/dist/agent-farm/servers/cron-delivery.d.ts.map +1 -1
  44. package/dist/agent-farm/servers/cron-delivery.js +2 -1
  45. package/dist/agent-farm/servers/cron-delivery.js.map +1 -1
  46. package/dist/agent-farm/servers/gate-profiles.d.ts +21 -0
  47. package/dist/agent-farm/servers/gate-profiles.d.ts.map +1 -1
  48. package/dist/agent-farm/servers/gate-profiles.js +36 -4
  49. package/dist/agent-farm/servers/gate-profiles.js.map +1 -1
  50. package/dist/agent-farm/servers/mailbox-delivery.d.ts +83 -8
  51. package/dist/agent-farm/servers/mailbox-delivery.d.ts.map +1 -1
  52. package/dist/agent-farm/servers/mailbox-delivery.js +102 -26
  53. package/dist/agent-farm/servers/mailbox-delivery.js.map +1 -1
  54. package/dist/agent-farm/servers/mailbox-wiring.d.ts +48 -15
  55. package/dist/agent-farm/servers/mailbox-wiring.d.ts.map +1 -1
  56. package/dist/agent-farm/servers/mailbox-wiring.js +116 -22
  57. package/dist/agent-farm/servers/mailbox-wiring.js.map +1 -1
  58. package/dist/agent-farm/servers/render-gate.d.ts +24 -1
  59. package/dist/agent-farm/servers/render-gate.d.ts.map +1 -1
  60. package/dist/agent-farm/servers/render-gate.js +50 -12
  61. package/dist/agent-farm/servers/render-gate.js.map +1 -1
  62. package/dist/agent-farm/servers/tower-cron.d.ts.map +1 -1
  63. package/dist/agent-farm/servers/tower-cron.js +3 -2
  64. package/dist/agent-farm/servers/tower-cron.js.map +1 -1
  65. package/dist/agent-farm/servers/tower-instances.d.ts.map +1 -1
  66. package/dist/agent-farm/servers/tower-instances.js +11 -3
  67. package/dist/agent-farm/servers/tower-instances.js.map +1 -1
  68. package/dist/agent-farm/servers/tower-routes.d.ts +32 -0
  69. package/dist/agent-farm/servers/tower-routes.d.ts.map +1 -1
  70. package/dist/agent-farm/servers/tower-routes.js +133 -13
  71. package/dist/agent-farm/servers/tower-routes.js.map +1 -1
  72. package/dist/agent-farm/servers/tower-server.js +15 -2
  73. package/dist/agent-farm/servers/tower-server.js.map +1 -1
  74. package/dist/agent-farm/servers/tower-terminals.d.ts +21 -0
  75. package/dist/agent-farm/servers/tower-terminals.d.ts.map +1 -1
  76. package/dist/agent-farm/servers/tower-terminals.js +53 -5
  77. package/dist/agent-farm/servers/tower-terminals.js.map +1 -1
  78. package/dist/agent-farm/servers/tower-utils.d.ts +35 -0
  79. package/dist/agent-farm/servers/tower-utils.d.ts.map +1 -1
  80. package/dist/agent-farm/servers/tower-utils.js +39 -0
  81. package/dist/agent-farm/servers/tower-utils.js.map +1 -1
  82. package/dist/agent-farm/servers/tower-websocket.d.ts.map +1 -1
  83. package/dist/agent-farm/servers/tower-websocket.js +8 -1
  84. package/dist/agent-farm/servers/tower-websocket.js.map +1 -1
  85. package/dist/agent-farm/utils/message-format.d.ts +78 -2
  86. package/dist/agent-farm/utils/message-format.d.ts.map +1 -1
  87. package/dist/agent-farm/utils/message-format.js +102 -5
  88. package/dist/agent-farm/utils/message-format.js.map +1 -1
  89. package/dist/cli.d.ts.map +1 -1
  90. package/dist/cli.js +3 -1
  91. package/dist/cli.js.map +1 -1
  92. package/dist/commands/doctor.js +2 -2
  93. package/dist/commands/generate-image.d.ts +20 -1
  94. package/dist/commands/generate-image.d.ts.map +1 -1
  95. package/dist/commands/generate-image.js +188 -1
  96. package/dist/commands/generate-image.js.map +1 -1
  97. package/dist/commands/porch/prompts.d.ts.map +1 -1
  98. package/dist/commands/porch/prompts.js +18 -2
  99. package/dist/commands/porch/prompts.js.map +1 -1
  100. package/dist/lib/forge-contracts.d.ts +66 -5
  101. package/dist/lib/forge-contracts.d.ts.map +1 -1
  102. package/dist/lib/forge-contracts.js.map +1 -1
  103. package/dist/lib/forge.d.ts +1 -1
  104. package/dist/lib/forge.d.ts.map +1 -1
  105. package/dist/lib/forge.js +33 -11
  106. package/dist/lib/forge.js.map +1 -1
  107. package/dist/terminal/pty-manager.d.ts +10 -1
  108. package/dist/terminal/pty-manager.d.ts.map +1 -1
  109. package/dist/terminal/pty-manager.js +38 -9
  110. package/dist/terminal/pty-manager.js.map +1 -1
  111. package/dist/terminal/pty-session.d.ts +52 -4
  112. package/dist/terminal/pty-session.d.ts.map +1 -1
  113. package/dist/terminal/pty-session.js +157 -18
  114. package/dist/terminal/pty-session.js.map +1 -1
  115. package/dist/terminal/shellper-client.d.ts +73 -0
  116. package/dist/terminal/shellper-client.d.ts.map +1 -1
  117. package/dist/terminal/shellper-client.js +151 -0
  118. package/dist/terminal/shellper-client.js.map +1 -1
  119. package/dist/terminal/shellper-main.js +20 -3
  120. package/dist/terminal/shellper-main.js.map +1 -1
  121. package/dist/terminal/shellper-process.d.ts +2 -0
  122. package/dist/terminal/shellper-process.d.ts.map +1 -1
  123. package/dist/terminal/shellper-process.js +17 -1
  124. package/dist/terminal/shellper-process.js.map +1 -1
  125. package/dist/terminal/shellper-protocol.d.ts +28 -0
  126. package/dist/terminal/shellper-protocol.d.ts.map +1 -1
  127. package/dist/terminal/shellper-protocol.js.map +1 -1
  128. package/package.json +4 -4
  129. package/scripts/forge/gitea/_lib.sh +214 -0
  130. package/scripts/forge/gitea/issue-comment.sh +8 -1
  131. package/scripts/forge/gitea/issue-view.sh +95 -4
  132. package/scripts/forge/gitea/pr-create.sh +155 -0
  133. package/scripts/forge/gitea/pr-exists.sh +32 -4
  134. package/scripts/forge/gitea/pr-list.sh +40 -31
  135. package/scripts/forge/gitea/pr-view.sh +65 -4
  136. package/scripts/forge/gitea/recently-merged.sh +91 -21
  137. package/scripts/forge/gitea/user-identity.sh +30 -1
  138. package/scripts/forge/github/issue-view.sh +5 -2
  139. package/scripts/forge/github/pr-create.sh +47 -0
  140. package/scripts/forge/github/pr-search.sh +3 -1
  141. package/scripts/forge/gitlab/issue-view.sh +24 -4
  142. package/scripts/forge/gitlab/pr-create.sh +53 -0
  143. package/scripts/forge/gitlab/pr-search.sh +3 -1
  144. package/scripts/forge/linear/issue-view.sh +13 -2
  145. package/skeleton/.claude/skills/generate-image/SKILL.md +22 -1
  146. package/skeleton/.codex/skills/generate-image/SKILL.md +22 -1
  147. package/skeleton/protocols/air/prompts/pr.md +6 -1
  148. package/skeleton/protocols/aspir/prompts/review.md +6 -1
  149. package/skeleton/protocols/bugfix/prompts/pr.md +6 -1
  150. package/skeleton/protocols/bugfix/protocol.md +2 -1
  151. package/skeleton/protocols/maintain/prompts/review.md +6 -1
  152. package/skeleton/protocols/pir/prompts/review.md +10 -7
  153. package/skeleton/protocols/spir/prompts/review.md +6 -1
  154. package/skeleton/resources/commands/agent-farm.md +1 -1
  155. package/templates/tower.html +16 -1
  156. package/dashboard-dist/assets/index-BZRTEMtH.css +0 -32
  157. package/dashboard-dist/assets/index-D3XaKpZW.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"forge.js","sourceRoot":"","sources":["../../src/lib/forge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"forge.js","sourceRoot":"","sources":["../../src/lib/forge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,aAAa,CAAC;AAE5D,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,QAAgB,EAAE,OAAe;IAC1D,OAAO,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,KAAK,CAAC,CAAC;AACvF,CAAC;AAED,wFAAwF;AACxF,MAAM,kBAAkB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAuB5C,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,MAAM,cAAc,GAAG;IACrB,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW;IACnF,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAE,eAAe;IACtE,kBAAkB,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS;IAC9E,aAAa,EAAE,cAAc;CACrB,CAAC;AAEX,gFAAgF;AAChF,kEAAkE;AAClE,gFAAgF;AAEhF,IAAI,gBAAgB,GAAkC,IAAI,CAAC;AAE3D;;;;GAIG;AACH,SAAS,kBAAkB;IACzB,IAAI,gBAAgB;QAAE,OAAO,gBAAgB,CAAC;IAC9C,gBAAgB,GAAG,EAAE,CAAC;IACtB,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,gBAAgB,CAAC,OAAO,CAAC,GAAG,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF;;;;GAIG;AACH,SAAS,sBAAsB,CAAC,QAAgB,EAAE,mBAA6B,EAAE;IAC/E,MAAM,MAAM,GAAkC,EAAE,CAAC;IACjD,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;YACvB,SAAS;QACX,CAAC;QACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACxD,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,IAAI,gBAAgB,GAAyD,IAAI,CAAC;AAElF;;;;;;GAMG;AACH,SAAS,kBAAkB;IACzB,IAAI,gBAAgB;QAAE,OAAO,gBAAgB,CAAC;IAC9C,gBAAgB,GAAG;QACjB,MAAM,EAAE,kBAAkB,EAAE;QAC5B,MAAM,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;QAC/E,KAAK,EAAE,sBAAsB,CAAC,OAAO,EAAE,CAAC,eAAe,EAAE,kBAAkB,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACrG,wEAAwE;QACxE,0EAA0E;QAC1E,wEAAwE;QACxE,wCAAwC;QACxC,MAAM,EAAE,sBAAsB,CAAC,QAAQ,EAAE,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;KAChF,CAAC;IACF,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,gCAAgC;AAChC,MAAM,UAAU,iBAAiB;IAC/B,OAAO,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAC3C,CAAC;AAYD;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAAgC;IACjE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACnD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,8BAA8B;QAC9B,IAAI,WAAW,IAAI,OAAO,KAAK,UAAU,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;YACpE,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YACjC,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACjB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAA2B,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;YAC3F,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,UAA2B,EAAE,UAAU,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5G,CAAC;QAED,wBAAwB;QACxB,IAAI,WAAW,EAAE,QAAQ,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC1D,IAAI,MAAM,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC5B,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBACjB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAA2B,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;gBAC3F,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,QAAyB,EAAE,UAAU,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1G,CAAC;QACH,CAAC;QAED,UAAU;QACV,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;QAClD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAA0B,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACxH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,yFAAyF;AACzF,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;AAE1I,SAAS,iBAAiB,CAAC,OAAe;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAE/B,oDAAoD;IACpD,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/C,2EAA2E;YAC3E,wEAAwE;YACxE,oEAAoE;YACpE,0EAA0E;YAC1E,iDAAiD;YACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAClE,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;YACjC,2EAA2E;YAC3E,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBACtB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;oBAAE,SAAS;gBAC7H,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAC3C,IAAI,SAAS;oBAAE,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;gBACnC,uEAAuE;gBACvE,qEAAqE;gBACrE,uEAAuE;gBACvE,gDAAgD;gBAChD,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChC,IAAI,KAAK,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC7C,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,gDAAgD;IAChD,wDAAwD;IACxD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAChD,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;IACnC,4EAA4E;IAC5E,4EAA4E;IAC5E,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,gFAAgF;IAChF,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,KAAK,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;IAC7D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,aAAqB;IACnD,MAAM,MAAM,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;IAC9C,OAAQ,MAAM,CAAC,KAAqB,IAAI,IAAI,CAAC;AAC/C,CAAC;AAED,oGAAoG;AACpG,SAAS,kBAAkB,CAAC,OAA6B;IACvD,IAAI,OAAO,EAAE,WAAW,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC,WAAW,CAAC;IACnE,IAAI,OAAO,EAAE,aAAa;QAAE,OAAO,eAAe,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1E,IAAI,OAAO,EAAE,GAAG;QAAE,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAC7B,OAAe,EACf,WAAgC;IAEhC,kEAAkE;IAClE,IAAI,WAAW,IAAI,OAAO,KAAK,UAAU,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;QACpE,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,iCAAiC;IAChE,CAAC;IAED,wBAAwB;IACxB,IAAI,WAAW,EAAE,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,MAAM,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;YAChC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,4CAA4C;QACtE,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,OAAO,kBAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAe,EACf,WAAgC;IAEhC,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAC/B,OAAO,OAAO,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;AACjE,CAAC;AAED,gFAAgF;AAChF,YAAY;AACZ,gFAAgF;AAEhF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAe,EACf,GAA4B,EAC5B,OAA6B;IAE7B,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAEtD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE;YAC1C,GAAG,EAAE,OAAO,EAAE,GAAG;YACjB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,GAAG,EAAE;YAC5C,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI,kBAAkB;SACpD,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAe,EACf,GAA4B,EAC5B,OAA6B;IAE7B,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAEtD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE;YAC/B,GAAG,EAAE,OAAO,EAAE,GAAG;YACjB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,GAAG,EAAE;YAC5C,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI,kBAAkB;YACnD,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAS,cAAc,CAAC,CAAC;AAEzD;;;GAGG;AACH,SAAS,aAAa,CAAC,WAA+B;IACpD,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,CAAC;IAC5B,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACvD,IAAI,GAAG,KAAK,UAAU,IAAI,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI;YAAE,SAAS;QAChF,MAAM,MAAM,GAAG,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;IACzB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,mGAAmG;AACnG,SAAS,WAAW,CAAC,MAAc,EAAE,GAAa;IAChD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,IAAI,GAAG;QAAE,OAAO,OAAO,CAAC;IAExB,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,qEAAqE;QACrE,gEAAgE;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,0CAA0C;AAC1C,SAAS,QAAQ,CAAC,OAAe,EAAE,GAAY,EAAE,IAAI,GAAG,KAAK;IAC3D,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,oBAAoB,OAAO,IAAI,MAAM,YAAY,GAAG,EAAE,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,OAAO,kBAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;AAC/C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,WAAwB;IAExB,MAAM,OAAO,GAAyH,EAAE,CAAC;IAEzI,yBAAyB;IACzB,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC;QAC1C,IAAI,kBAAkB,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,YAAY,EAAE,EAAE,CAAC,CAAC;QAClG,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,qBAAqB,YAAY,aAAa,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3K,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7D,IAAI,OAAO,KAAK,UAAU;YAAE,SAAS,CAAC,wBAAwB;QAC9D,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,OAAO,0BAA0B,EAAE,CAAC,CAAC;QACxG,CAAC;aAAM,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,OAAO,+BAA+B,EAAE,CAAC,CAAC;QAClH,CAAC;aAAM,IAAI,CAAC,CAAC,OAAO,IAAI,kBAAkB,EAAE,CAAC,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,YAAY,OAAO,gCAAgC,EAAE,CAAC,CAAC;QACrH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,OAAO,iBAAiB,OAAO,EAAE,EAAE,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -78,7 +78,16 @@ export declare class TerminalManager {
78
78
  findByShellperSessionId(shellperSessionId: string): PtySession | undefined;
79
79
  /** Kill and remove a session. */
80
80
  killSession(id: string): boolean;
81
- /** Resize a session. */
81
+ /**
82
+ * Resize a session. Returns its info, or `null` when the resize did not happen.
83
+ *
84
+ * `null` now covers two cases (Issue #1482): no such session, and a session whose resize was
85
+ * DROPPED — a dead shellper socket, or no live process. Both are "the geometry you asked for
86
+ * is not the geometry in effect", and returning `session.info` for the second would hand the
87
+ * caller back dimensions the process never adopted, which is exactly the false belief this
88
+ * issue exists to remove. Callers distinguish the two by whether the session exists, if they
89
+ * need to; the REST route's message does.
90
+ */
82
91
  resizeSession(id: string, cols: number, rows: number): PtySessionInfo | null;
83
92
  /** Get output lines from ring buffer. */
84
93
  getOutput(id: string, lines?: number, offset?: number): {
@@ -1 +1 @@
1
- {"version":3,"file":"pty-manager.d.ts","sourceRoot":"","sources":["../../src/terminal/pty-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty-manager.d.ts","sourceRoot":"","sources":["../../src/terminal/pty-manager.ts"],"names":[],"mappings":"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"}
@@ -107,11 +107,15 @@ export class TerminalManager {
107
107
  // the session to its classifier profile (claude/codex) so `afx send` can
108
108
  // deliver. Threaded from the creation/reconnect sites for shellper-backed
109
109
  // agent sessions; '' for sessions without a known agent (plain shells).
110
- // `args` is CREATION-ONLY: it is NOT persisted on the session row and is NOT
111
- // read by `resolveProfile` today. A reconnected session gets `[]`. Do not make
112
- // args a resolution input (e.g. to support `env codex` / `npx claude`) without
113
- // adding matching persistence, or fresh and post-restart sessions will classify
114
- // differently.
110
+ // `args` is CREATION-ONLY *here*: it is NOT persisted on the session row and
111
+ // is NOT read by `resolveProfile` today. Since PIR #1475 a reconnected
112
+ // shellper-backed session no longer gets `[]` — `PtySession.launchArgs` reads
113
+ // through to the argv the shellper reports in its WELCOME frame, which is
114
+ // real across reconnects and SPAWN relaunches. The rule still stands for this
115
+ // config value: do not make args a resolution input (e.g. to support
116
+ // `env codex` / `npx claude`) on the strength of what is threaded in here, or
117
+ // fresh and post-restart sessions will classify differently. WELCOME
118
+ // hydration — not this field — is the seam that can satisfy that invariant.
115
119
  command: opts.command ?? '',
116
120
  args: opts.args ?? [],
117
121
  cols,
@@ -184,12 +188,22 @@ export class TerminalManager {
184
188
  this.sessions.delete(id);
185
189
  return true;
186
190
  }
187
- /** Resize a session. */
191
+ /**
192
+ * Resize a session. Returns its info, or `null` when the resize did not happen.
193
+ *
194
+ * `null` now covers two cases (Issue #1482): no such session, and a session whose resize was
195
+ * DROPPED — a dead shellper socket, or no live process. Both are "the geometry you asked for
196
+ * is not the geometry in effect", and returning `session.info` for the second would hand the
197
+ * caller back dimensions the process never adopted, which is exactly the false belief this
198
+ * issue exists to remove. Callers distinguish the two by whether the session exists, if they
199
+ * need to; the REST route's message does.
200
+ */
188
201
  resizeSession(id, cols, rows) {
189
202
  const session = this.sessions.get(id);
190
203
  if (!session)
191
204
  return null;
192
- session.resize(cols, rows);
205
+ if (!session.resize(cols, rows))
206
+ return null;
193
207
  return session.info;
194
208
  }
195
209
  /** Get output lines from ring buffer. */
@@ -304,7 +318,13 @@ export class TerminalManager {
304
318
  const cols = msg.payload.cols;
305
319
  const rows = msg.payload.rows;
306
320
  if (typeof cols === 'number' && typeof rows === 'number') {
307
- session.resize(cols, rows);
321
+ // Issue #1482: a dropped resize leaves Tower and the process disagreeing about the
322
+ // geometry, and the render gate classifies at the geometry Tower believes — so this
323
+ // is a diagnosable event, not a silent no-op.
324
+ if (!session.resize(cols, rows)) {
325
+ console.warn(`[pty-manager] resize dropped for session ${session.id}: ${cols}x${rows} not applied ` +
326
+ `(no live process or dropped shellper write) — dimensions unchanged`);
327
+ }
308
328
  }
309
329
  break;
310
330
  }
@@ -400,7 +420,16 @@ export class TerminalManager {
400
420
  }
401
421
  const info = this.resizeSession(id, body.cols, body.rows);
402
422
  if (!info) {
403
- this.sendError(res, 404, 'NOT_FOUND', `Session ${id} not found`);
423
+ // Issue #1482: separate "no such session" from "the session exists but the resize did
424
+ // not reach its process". Answering 404 for the second would tell the caller the
425
+ // terminal is gone when it is very much alive — and, worse, the old code answered 200
426
+ // with the requested dimensions echoed back, which is how a divergence became invisible.
427
+ if (!this.getSession(id)) {
428
+ this.sendError(res, 404, 'NOT_FOUND', `Session ${id} not found`);
429
+ }
430
+ else {
431
+ this.sendError(res, 409, 'RESIZE_DROPPED', `Session ${id} did not accept the resize (no live process or dropped shellper write); dimensions unchanged`);
432
+ }
404
433
  return;
405
434
  }
406
435
  this.sendJson(res, 200, info);
@@ -1 +1 @@
1
- {"version":3,"file":"pty-manager.js","sourceRoot":"","sources":["../../src/terminal/pty-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty-manager.js","sourceRoot":"","sources":["../../src/terminal/pty-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AA4B/E,MAAM,OAAO,eAAe;IAClB,QAAQ,GAA4B,IAAI,GAAG,EAAE,CAAC;IAC9C,GAAG,GAA2B,IAAI,CAAC;IAC1B,MAAM,CAAkC;IAEzD,YAAY,MAA6B;QACvC,IAAI,CAAC,MAAM,GAAG;YACZ,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,MAAM,CAAC;YAC/E,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;YACrC,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI;YAC/C,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,IAAI;YAC7C,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,0BAA0B;YACrE,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,IAAI,OAAO;SACzD,CAAC;IACJ,CAAC;IAED,gCAAgC;IAChC,KAAK,CAAC,aAAa,CAAC,GAA0B;QAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAClD,MAAM,IAAI,YAAY,CAAC,cAAc,EAAE,WAAW,IAAI,CAAC,MAAM,CAAC,WAAW,mBAAmB,CAAC,CAAC;QAChG,CAAC;QAED,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,WAAW,CAAC;QAC9D,MAAM,OAAO,GAA2B;YACtC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,8BAA8B;YACxD,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM;YAChC,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,gBAAgB;YACtB,sDAAsD;YACtD,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,aAAa;YACvC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE;YAChC,oEAAoE;YACpE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,yBAAyB,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvH,CAAC;QAEF,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;QACzC,MAAM,aAAa,GAAqB;YACtC,EAAE;YACF,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE;YACpB,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;YAC/B,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;YAC/B,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa;YACzC,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,GAAG,CAAC,GAAG,EAAE;YAC/B,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;YAChD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC1B,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;YAC5C,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;YAC1C,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;YAC5C,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;SACnD,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC;QAE9C,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACtB,gEAAgE;YAChE,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3B,CAAC,EAAE,MAAM,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACzB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAE/B,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,gBAAgB,CAAC,IAAoF;QACnG,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAClD,MAAM,IAAI,YAAY,CAAC,cAAc,EAAE,WAAW,IAAI,CAAC,MAAM,CAAC,WAAW,mBAAmB,CAAC,CAAC;QAChG,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,QAAQ,EAAE,CAAC;YACb,uEAAuE;YACvE,sEAAsE;YACtE,0DAA0D;YAC1D,QAAQ,CAAC,cAAc,EAAE,CAAC;QAC5B,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,qBAAqB,EAAE,CAAC;QAC/C,MAAM,aAAa,GAAqB;YACtC,EAAE;YACF,2EAA2E;YAC3E,yEAAyE;YACzE,0EAA0E;YAC1E,wEAAwE;YACxE,6EAA6E;YAC7E,uEAAuE;YACvE,8EAA8E;YAC9E,0EAA0E;YAC1E,8EAA8E;YAC9E,qEAAqE;YACrE,8EAA8E;YAC9E,qEAAqE;YACrE,4EAA4E;YAC5E,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,EAAE;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;YACrB,IAAI;YACJ,IAAI;YACJ,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,GAAG,EAAE,EAAE;YACP,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC1B,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;YAC5C,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc;YAC1C,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;YAC5C,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;SACnD,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC;QAE9C,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACtB,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3B,CAAC,EAAE,MAAM,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACzB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAC/B,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,yBAAyB;IACzB,YAAY;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;OAKG;IACH,eAAe;QACb,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClD,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,OAAO,EAAE,CAAC,CAAC,WAAW;SACvB,CAAC,CAAC,CAAC;IACN,CAAC;IAED,2BAA2B;IAC3B,UAAU,CAAC,EAAU;QACnB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,iBAAyB;QAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAClD,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QACtB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,iBAAiB,KAAK,iBAAiB;gBAAE,OAAO,OAAO,CAAC;QACtE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,iCAAiC;IACjC,WAAW,CAAC,EAAU;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAU,EAAE,IAAY,EAAE,IAAY;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7C,OAAO,OAAO,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,yCAAyC;IACzC,SAAS,CAAC,EAAU,EAAE,KAAc,EAAE,MAAe;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,CAAC;QAC1B,MAAM,KAAK,GAAG,KAAK,IAAI,GAAG,CAAC;QAC3B,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;QAC/C,OAAO;YACL,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,GAAG,CAAC,MAAM;YACjB,OAAO,EAAE,KAAK,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM;SACpC,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,eAAe,CAAC,MAAmB;QACjC,IAAI,CAAC,GAAG,GAAG,IAAI,eAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAEnD,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;YACzC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAClE,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAE9D,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,6DAA6D;gBAC7D,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAE7C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;gBAC/C,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,OAAO;YACT,CAAC;YAED,IAAI,CAAC,GAAI,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE;gBAChD,IAAI,CAAC,wBAAwB,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;oBACzD,EAAE,CAAC,KAAK,EAAE,CAAC;gBACb,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IACpE,KAAK,CAAC,wBAAwB,CAAC,EAAa,EAAE,OAAmB,EAAE,GAAyB;QAClG,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAElD,0BAA0B;QAC1B,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,CAAC,IAAqB,EAAE,EAAE;gBAC9B,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;oBACrC,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;SACF,CAAC;QAEF,uCAAuC;QACvC,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAe,EAAE,EAAE;YACnC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;gBAChD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC1B,2EAA2E;oBAC3E,6EAA6E;oBAC7E,yEAAyE;oBACzE,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;gBACxD,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACpC,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,2DAA2D;gBAC3D,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YACrD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,wEAAwE;QACxE,0EAA0E;QAC1E,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,IAAI,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAC/C,QAAQ,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACrC,CAAC;QACD,oEAAoE;QACpE,0EAA0E;QAC1E,2EAA2E;QAC3E,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC9E,IAAI,KAAK,KAAK,MAAM;gBAAE,OAAO,CAAC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;YACrC,oEAAoE;YACpE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvB,OAAO;QACT,CAAC;QAED,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC/B,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,CAAC;aAAM,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAEO,oBAAoB,CAC1B,OAAmB,EACnB,EAAa,EACb,GAAuD;QAEvD,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAAc,CAAC;gBACxC,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAAc,CAAC;gBACxC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACzD,mFAAmF;oBACnF,oFAAoF;oBACpF,8CAA8C;oBAC9C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;wBAChC,OAAO,CAAC,IAAI,CACV,4CAA4C,OAAO,CAAC,EAAE,KAAK,IAAI,IAAI,IAAI,eAAe;4BACpF,oEAAoE,CACvE,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,MAAM;gBACT,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;oBACrC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;gBACxD,CAAC;gBACD,MAAM;QACV,CAAC;IACH,CAAC;IAED,yDAAyD;IACzD,aAAa,CAAC,GAAyB,EAAE,GAAwB;QAC/D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC;QAEnC,sBAAsB;QACtB,IAAI,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAC3D,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACpC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,qBAAqB;QACrB,IAAI,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAC1D,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YAC5D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,kBAAkB;QAClB,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAE3B,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEjC,yBAAyB;QACzB,IAAI,MAAM,KAAK,KAAK,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;gBACjE,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,4BAA4B;QAC5B,IAAI,MAAM,KAAK,QAAQ,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;gBACjE,OAAO,IAAI,CAAC;YACd,CAAC;YACD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACnB,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,OAAO,IAAI,CAAC;QACd,CAAC;QAED,iCAAiC;QACjC,IAAI,MAAM,KAAK,MAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/C,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,gCAAgC;QAChC,IAAI,MAAM,KAAK,KAAK,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAC3B,EAAE,EACF,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC,EACpD,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CACpD,CAAC;YACF,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;gBACjE,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,GAAyB,EAAE,GAAwB;QACpF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,CAAC;YACrC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAA6B,CAAC,CAAC;YACrE,MAAM,QAAQ,GAAG;gBACf,GAAG,IAAI;gBACP,MAAM,EAAE,gBAAgB,IAAI,CAAC,EAAE,EAAE;aAClC,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,YAAY,EAAE,CAAC;gBAChC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,gBAAgB,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,GAAyB,EAAE,GAAwB,EAAE,EAAU;QACxF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,GAAG,CAAqC,CAAC;YACzE,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACnE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,gBAAgB,EAAE,+BAA+B,CAAC,CAAC;gBAC5E,OAAO;YACT,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,sFAAsF;gBACtF,iFAAiF;gBACjF,sFAAsF;gBACtF,yFAAyF;gBACzF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;oBACzB,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;gBACnE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,SAAS,CACZ,GAAG,EACH,GAAG,EACH,gBAAgB,EAChB,WAAW,EAAE,8FAA8F,CAC5G,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAEO,QAAQ,CAAC,GAAwB,EAAE,MAAc,EAAE,IAAa;QACtE,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC9D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAChC,CAAC;IAEO,SAAS,CAAC,GAAwB,EAAE,MAAc,EAAE,IAAY,EAAE,OAAe;QACvF,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAmB,CAAC,CAAC;IACxE,CAAC;IAED,sCAAsC;IACtC,QAAQ;QACN,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAC3B,mEAAmE;gBACnE,qEAAqE;gBACrE,oDAAoD;gBACpD,OAAO,CAAC,cAAc,EAAE,CAAC;gBACzB,SAAS;YACX,CAAC;YACD,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;CACF;AAED,MAAM,YAAa,SAAQ,KAAK;IACF;IAA5B,YAA4B,IAAY,EAAE,OAAe;QACvD,KAAK,CAAC,OAAO,CAAC,CAAC;QADW,SAAI,GAAJ,IAAI,CAAQ;QAEtC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED,SAAS,YAAY,CAAC,GAAyB;IAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;YACjB,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACnD,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACzC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -125,6 +125,9 @@ export declare class PtySession extends EventEmitter {
125
125
  private shellperPid;
126
126
  private cols;
127
127
  private rows;
128
+ private requestedCols;
129
+ private requestedRows;
130
+ private resizePending;
128
131
  private exitCode;
129
132
  private logFd;
130
133
  private logBytes;
@@ -238,6 +241,22 @@ export declare class PtySession extends EventEmitter {
238
241
  /**
239
242
  * Resize the PTY or shellper.
240
243
  * Returns false when the resize was dropped (#1198).
244
+ *
245
+ * COMMIT-ON-SUCCESS (Issue #1482). This used to assign `this.cols`/`this.rows` and resize the
246
+ * gate mirror on entry, BEFORE finding out whether the resize could reach the process. When
247
+ * it could not — a dropped shellper write, or no live process at all — Tower's dimensions and
248
+ * the classification mirror moved while the kernel winsize, and therefore the TUI's own
249
+ * layout, did not. The render gate then classified a screen re-wrapped at a geometry the app
250
+ * never adopted: the composer's bounding rule lands on a different row, `findRegionEnd`
251
+ * returns -1, and every message to that agent holds `busy`/`no-region-end` FOREVER. That is
252
+ * the indefinite false-busy this issue is named for, and it starts with a boolean nobody read.
253
+ *
254
+ * So: record the request, attempt the resize, and move the applied geometry only if it
255
+ * landed. The request survives in `requestedCols`/`requestedRows` for `spawn()` and for the
256
+ * re-send on re-attach, so nothing is lost by declining to commit — only the false belief is.
257
+ *
258
+ * Callers must not ignore the return value; a dropped resize means Tower and the process now
259
+ * disagree about the geometry until something re-sends it.
241
260
  */
242
261
  resize(cols: number, rows: number): boolean;
243
262
  /** Kill the PTY process or send signal to shellper. */
@@ -292,17 +311,46 @@ export declare class PtySession extends EventEmitter {
292
311
  }): void;
293
312
  /** Working directory of the PTY session. */
294
313
  get cwd(): string;
314
+ /**
315
+ * The identity the attached shellper reported for its CURRENT PTY, or null
316
+ * when there is none to be had — no shellper attached (a local node-pty
317
+ * session), an older shellper that omits the WELCOME fields, or a payload that
318
+ * failed validation (PIR #1475).
319
+ *
320
+ * Read THROUGH to the live client on every access rather than snapshotted at
321
+ * `attachShellper`. An ordinary SPAWN relaunch (the #1149 crash-loop fallback,
322
+ * the #1264 clean-exit rerun) replaces the PTY without a socket reconnect, so
323
+ * `attachShellper` never runs again — a snapshot would freeze at the
324
+ * pre-relaunch identity for the rest of the session. `detachShellper` nulls
325
+ * `shellperClient`, so falling back is automatic with no extra state.
326
+ *
327
+ * Command and args are resolved as ONE unit: with no usable command there is
328
+ * no usable identity, and `config` supplies both. That keeps the atomicity the
329
+ * client's validation establishes, and lets a legitimately empty argv stay `[]`
330
+ * instead of silently falling back to the config's args.
331
+ */
332
+ private get hydratedIdentity();
295
333
  /**
296
334
  * Launch command of this session's process (Spec 1313 — render-gate identity seam).
297
335
  *
298
- * `command` and `args` live in the private `config`; the render-gate's
299
- * `resolveProfile` needs an authoritative source to map a session to its
300
- * classifier profile (claude/codex/unknown). Exposed as read-only getters so
301
- * the gate never guesses app identity from the label alone.
336
+ * The render-gate's `resolveProfile` needs an authoritative source to map a
337
+ * session to its classifier profile (claude/codex/agy/unknown). Precedence
338
+ * (PIR #1475): the shellper's own WELCOME report — what actually got spawned —
339
+ * then the launch command Tower recorded in `config` (restored from
340
+ * `terminal_sessions.command` on reconnect, with the Spec 1313 legacy
341
+ * self-heal behind it). Exposed as read-only getters so the gate never guesses
342
+ * app identity from the label alone.
302
343
  */
303
344
  get command(): string;
304
345
  /** Launch arguments of this session's process (Spec 1313 — paired with `command`). */
305
346
  get launchArgs(): string[];
347
+ /**
348
+ * Which source {@link PtySession.command} is currently answering from
349
+ * (PIR #1475) — `'welcome'` when the shellper stated its own identity,
350
+ * `'config'` when we fell back to the recorded launch command. Exists so the
351
+ * fallback is observable in logs and tests rather than inferred.
352
+ */
353
+ get identitySource(): 'welcome' | 'config';
306
354
  get status(): 'running' | 'exited';
307
355
  get pid(): number;
308
356
  get info(): PtySessionInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"pty-session.d.ts","sourceRoot":"","sources":["../../src/terminal/pty-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty-session.d.ts","sourceRoot":"","sources":["../../src/terminal/pty-session.ts"],"names":[],"mappings":"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"}
@@ -72,8 +72,26 @@ export class PtySession extends EventEmitter {
72
72
  // SessionManager's in-place reconnect delivers a replacement client.
73
73
  _closeGraceTimer = null;
74
74
  shellperPid = -1;
75
+ // APPLIED geometry (Issue #1482): the dimensions a resize actually reached the process with.
76
+ // Everything that must agree with the real TUI reads these — `info`, and above all the gate
77
+ // mirror, whose classification is only valid if it wraps the way the app's own layout does.
78
+ // They move in `resize()` ONLY after the underlying resize is confirmed; see that method.
75
79
  cols;
76
80
  rows;
81
+ // REQUESTED geometry (Issue #1482): the last dimensions anyone ASKED for, applied or not.
82
+ // Kept separately so a resize that arrives before the process exists — or one dropped by a
83
+ // disconnected shellper — is not simply lost: `spawn()` starts the process at the requested
84
+ // size, and the attach path re-sends it once a connection is back. Without this pair, the
85
+ // fix for a dropped resize (don't commit dims) would regress the pre-spawn resize, which
86
+ // used to work precisely because the assignment was unconditional.
87
+ requestedCols;
88
+ requestedRows;
89
+ // Is `requested` an OUTSTANDING request — one somebody made that could not be applied?
90
+ // (Issue #1482.) Set when a resize is dropped, cleared when one lands. The attach path needs
91
+ // exactly this distinction: re-sending on "requested !== applied" alone would also re-send
92
+ // the constructor's own defaults, which would immediately overwrite the geometry just
93
+ // adopted from the shellper — trading a measurement back for the memory it corrected.
94
+ resizePending = false;
77
95
  exitCode;
78
96
  logFd = null;
79
97
  logBytes = 0;
@@ -95,6 +113,8 @@ export class PtySession extends EventEmitter {
95
113
  this.label = config.label;
96
114
  this.cols = config.cols;
97
115
  this.rows = config.rows;
116
+ this.requestedCols = config.cols;
117
+ this.requestedRows = config.rows;
98
118
  this.createdAt = new Date().toISOString();
99
119
  this.ringBuffer = new RingBuffer(config.ringBufferLines ?? 1000);
100
120
  this.diskLogEnabled = config.diskLogEnabled ?? true;
@@ -111,6 +131,13 @@ export class PtySession extends EventEmitter {
111
131
  fs.mkdirSync(path.dirname(this.logPath), { recursive: true });
112
132
  this.logFd = fs.openSync(this.logPath, 'a');
113
133
  }
134
+ // Spawn at the REQUESTED geometry (Issue #1482): a viewer that resized before the process
135
+ // existed had its resize dropped by the `status === 'running'` guard in `resize()`, and the
136
+ // request is honoured here instead. Applied and requested are equal for a session nobody
137
+ // resized, so this is a no-op in the common case.
138
+ this.cols = this.requestedCols;
139
+ this.rows = this.requestedRows;
140
+ this.resizePending = false;
114
141
  this.pty = nodePty.spawn(this.config.command, this.config.args, {
115
142
  name: 'xterm-256color',
116
143
  cols: this.cols,
@@ -174,6 +201,39 @@ export class PtySession extends EventEmitter {
174
201
  fs.mkdirSync(path.dirname(this.logPath), { recursive: true });
175
202
  this.logFd = fs.openSync(this.logPath, 'a');
176
203
  }
204
+ // Reconcile our geometry against the PROCESS before seeding anything (Issue #1482).
205
+ //
206
+ // The render gate classifies the mirror seeded just below, and its verdict is only valid
207
+ // if that mirror wraps the way the real TUI does. Until now the seed was rendered at
208
+ // whatever Tower believed — which after a restart is a value read back out of the
209
+ // database, and after a dropped resize was never true at all. The shellper, meanwhile,
210
+ // has always reported the geometry it actually applied to the kernel winsize in its
211
+ // WELCOME frame, and Tower has always thrown it away. Adopt it: a measurement beats a
212
+ // memory, and this is the only measurement available.
213
+ //
214
+ // Adoption is not the last word — a live viewer's geometry still wins. It is re-sent
215
+ // immediately below, and only takes effect (per `resize`) if it reaches the process.
216
+ const reportedCols = client.welcomeCols ?? null;
217
+ const reportedRows = client.welcomeRows ?? null;
218
+ if (reportedCols && reportedRows && (reportedCols !== this.cols || reportedRows !== this.rows)) {
219
+ // This log line is the one that would have made #1482 self-evident in the field: it
220
+ // names both geometries at the moment they are known to disagree.
221
+ console.warn(`[pty-session ${this.id}] dimension divergence on attach: Tower believed ` +
222
+ `${this.cols}x${this.rows}, shellper reports ${reportedCols}x${reportedRows} — ` +
223
+ `adopting the shellper's (the render gate classifies at these dimensions)`);
224
+ this.cols = reportedCols;
225
+ this.rows = reportedRows;
226
+ // Adoption re-bases the REQUEST too, unless one is genuinely outstanding. Without this
227
+ // the constructor's defaults would count as a request to undo the correction we just
228
+ // made — see `resizePending`.
229
+ if (!this.resizePending) {
230
+ this.requestedCols = reportedCols;
231
+ this.requestedRows = reportedRows;
232
+ }
233
+ // A mirror that outlived a disconnect was built at the stale geometry; re-wrap it now,
234
+ // BEFORE the seed below is fed into it. A null mirror is created at the corrected dims.
235
+ this._gateScreen?.resize(reportedCols, reportedRows);
236
+ }
177
237
  // Populate the ring buffer and seed the screen mirror so both reflect the session's
178
238
  // history from the moment Tower (re)attaches — a mirror seeded only from live output
179
239
  // after this point would be born torn (Spec 1313 render-gate round 2). The mirror may
@@ -188,6 +248,19 @@ export class PtySession extends EventEmitter {
188
248
  if (screenSeed.length > 0) {
189
249
  this.feedGateScreen(screenSeed.toString('utf-8'));
190
250
  }
251
+ // Re-assert an OUTSTANDING resize now that a connection exists (Issue #1482). A viewer's
252
+ // size is the one Tower should be driving toward; adopting the shellper's above only fixed
253
+ // our BELIEF, and a resize dropped while the socket was down was never delivered at all.
254
+ // Gated on `resizePending` rather than on "requested !== applied": the latter is also true
255
+ // for a session whose constructor defaults simply differ from the running geometry, and
256
+ // re-sending THOSE would undo the adoption above. Routed through `resize`, so it commits
257
+ // only if it lands and cannot re-introduce the divergence it exists to close.
258
+ if (this.resizePending && (this.requestedCols !== this.cols || this.requestedRows !== this.rows)) {
259
+ if (!this.resize(this.requestedCols, this.requestedRows)) {
260
+ console.warn(`[pty-session ${this.id}] could not re-apply requested ${this.requestedCols}x${this.requestedRows} ` +
261
+ `on attach; running at ${this.cols}x${this.rows}`);
262
+ }
263
+ }
191
264
  // Forward shellper data to ring buffer + WebSocket clients
192
265
  client.on('data', (buf) => {
193
266
  this.onPtyData(buf.toString('utf-8'));
@@ -486,24 +559,51 @@ export class PtySession extends EventEmitter {
486
559
  /**
487
560
  * Resize the PTY or shellper.
488
561
  * Returns false when the resize was dropped (#1198).
562
+ *
563
+ * COMMIT-ON-SUCCESS (Issue #1482). This used to assign `this.cols`/`this.rows` and resize the
564
+ * gate mirror on entry, BEFORE finding out whether the resize could reach the process. When
565
+ * it could not — a dropped shellper write, or no live process at all — Tower's dimensions and
566
+ * the classification mirror moved while the kernel winsize, and therefore the TUI's own
567
+ * layout, did not. The render gate then classified a screen re-wrapped at a geometry the app
568
+ * never adopted: the composer's bounding rule lands on a different row, `findRegionEnd`
569
+ * returns -1, and every message to that agent holds `busy`/`no-region-end` FOREVER. That is
570
+ * the indefinite false-busy this issue is named for, and it starts with a boolean nobody read.
571
+ *
572
+ * So: record the request, attempt the resize, and move the applied geometry only if it
573
+ * landed. The request survives in `requestedCols`/`requestedRows` for `spawn()` and for the
574
+ * re-send on re-attach, so nothing is lost by declining to commit — only the false belief is.
575
+ *
576
+ * Callers must not ignore the return value; a dropped resize means Tower and the process now
577
+ * disagree about the geometry until something re-sends it.
489
578
  */
490
579
  resize(cols, rows) {
491
- this.cols = cols;
492
- this.rows = rows;
493
- // Keep the gate mirror at the live geometry (Spec 1313) so the classified screen wraps
494
- // identically to what the user sees; no-op before the mirror's first output / after teardown.
495
- this._gateScreen?.resize(cols, rows);
580
+ // The request stands whether or not it lands — see the field comments.
581
+ this.requestedCols = cols;
582
+ this.requestedRows = rows;
583
+ let applied = false;
496
584
  if (this._shellperBacked) {
497
- if (this.shellperClient && this.status === 'running') {
498
- return this.shellperClient.resize(cols, rows);
499
- }
500
- return false;
585
+ applied = this.shellperClient !== null && this.status === 'running'
586
+ ? this.shellperClient.resize(cols, rows)
587
+ : false;
501
588
  }
502
- if (this.pty && this.status === 'running') {
589
+ else if (this.pty && this.status === 'running') {
503
590
  this.pty.resize(cols, rows);
504
- return true;
591
+ applied = true;
505
592
  }
506
- return false;
593
+ if (!applied) {
594
+ this.resizePending = true;
595
+ return false;
596
+ }
597
+ this.resizePending = false;
598
+ this.cols = cols;
599
+ this.rows = rows;
600
+ // Keep the gate mirror at the live geometry (Spec 1313) so the classified screen wraps
601
+ // identically to what the user sees; no-op before the mirror's first output / after
602
+ // teardown. Safe to do after the process resize rather than before it: the app's repaint
603
+ // arrives as output on a later tick, so the mirror is always re-sized before the first byte
604
+ // drawn at the new geometry reaches it.
605
+ this._gateScreen?.resize(cols, rows);
606
+ return true;
507
607
  }
508
608
  /** Kill the PTY process or send signal to shellper. */
509
609
  kill() {
@@ -634,20 +734,59 @@ export class PtySession extends EventEmitter {
634
734
  get cwd() {
635
735
  return this.config.cwd;
636
736
  }
737
+ /**
738
+ * The identity the attached shellper reported for its CURRENT PTY, or null
739
+ * when there is none to be had — no shellper attached (a local node-pty
740
+ * session), an older shellper that omits the WELCOME fields, or a payload that
741
+ * failed validation (PIR #1475).
742
+ *
743
+ * Read THROUGH to the live client on every access rather than snapshotted at
744
+ * `attachShellper`. An ordinary SPAWN relaunch (the #1149 crash-loop fallback,
745
+ * the #1264 clean-exit rerun) replaces the PTY without a socket reconnect, so
746
+ * `attachShellper` never runs again — a snapshot would freeze at the
747
+ * pre-relaunch identity for the rest of the session. `detachShellper` nulls
748
+ * `shellperClient`, so falling back is automatic with no extra state.
749
+ *
750
+ * Command and args are resolved as ONE unit: with no usable command there is
751
+ * no usable identity, and `config` supplies both. That keeps the atomicity the
752
+ * client's validation establishes, and lets a legitimately empty argv stay `[]`
753
+ * instead of silently falling back to the config's args.
754
+ */
755
+ get hydratedIdentity() {
756
+ // Falsy, not `!= null`: interface members are optional, so a test double or
757
+ // an unhydrated client yields `undefined`, and a rejected payload yields
758
+ // `null`. Empty string means "unknown" everywhere in this codebase.
759
+ const command = this.shellperClient?.welcomeCommand;
760
+ if (!command)
761
+ return null;
762
+ return { command, args: this.shellperClient?.welcomeArgs ?? [] };
763
+ }
637
764
  /**
638
765
  * Launch command of this session's process (Spec 1313 — render-gate identity seam).
639
766
  *
640
- * `command` and `args` live in the private `config`; the render-gate's
641
- * `resolveProfile` needs an authoritative source to map a session to its
642
- * classifier profile (claude/codex/unknown). Exposed as read-only getters so
643
- * the gate never guesses app identity from the label alone.
767
+ * The render-gate's `resolveProfile` needs an authoritative source to map a
768
+ * session to its classifier profile (claude/codex/agy/unknown). Precedence
769
+ * (PIR #1475): the shellper's own WELCOME report — what actually got spawned —
770
+ * then the launch command Tower recorded in `config` (restored from
771
+ * `terminal_sessions.command` on reconnect, with the Spec 1313 legacy
772
+ * self-heal behind it). Exposed as read-only getters so the gate never guesses
773
+ * app identity from the label alone.
644
774
  */
645
775
  get command() {
646
- return this.config.command;
776
+ return this.hydratedIdentity?.command ?? this.config.command;
647
777
  }
648
778
  /** Launch arguments of this session's process (Spec 1313 — paired with `command`). */
649
779
  get launchArgs() {
650
- return this.config.args;
780
+ return this.hydratedIdentity?.args ?? this.config.args;
781
+ }
782
+ /**
783
+ * Which source {@link PtySession.command} is currently answering from
784
+ * (PIR #1475) — `'welcome'` when the shellper stated its own identity,
785
+ * `'config'` when we fell back to the recorded launch command. Exists so the
786
+ * fallback is observable in logs and tests rather than inferred.
787
+ */
788
+ get identitySource() {
789
+ return this.hydratedIdentity ? 'welcome' : 'config';
651
790
  }
652
791
  get status() {
653
792
  return this.exitCode === undefined ? 'running' : 'exited';