termdock 1.4.305 → 1.4.307

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 (351) hide show
  1. package/dist/client/assets/{App-BziVLy1b.js → App-cagV-flM.js} +7 -7
  2. package/dist/client/assets/App-cagV-flM.js.br +0 -0
  3. package/dist/client/assets/App-cagV-flM.js.gz +0 -0
  4. package/dist/client/assets/{ArchitecturePanel-CARNBEqQ.js → ArchitecturePanel-TdKPja7L.js} +1 -1
  5. package/dist/client/assets/ArchitecturePanel-TdKPja7L.js.br +0 -0
  6. package/dist/client/assets/ArchitecturePanel-TdKPja7L.js.gz +0 -0
  7. package/dist/client/assets/{ChangeWalkthroughPanel-00oa0z6w.js → ChangeWalkthroughPanel-DOj40Srm.js} +1 -1
  8. package/dist/client/assets/ChangeWalkthroughPanel-DOj40Srm.js.br +0 -0
  9. package/dist/client/assets/ChangeWalkthroughPanel-DOj40Srm.js.gz +0 -0
  10. package/dist/client/assets/{CollaborationMainWorkspace-DuEeKQKZ.js → CollaborationMainWorkspace-C5Tcos5l.js} +1 -1
  11. package/dist/client/assets/CollaborationMainWorkspace-C5Tcos5l.js.br +0 -0
  12. package/dist/client/assets/CollaborationMainWorkspace-C5Tcos5l.js.gz +0 -0
  13. package/dist/client/assets/CollaborationTaskContent-DQpH2HIj.js +2 -0
  14. package/dist/client/assets/{ComputerControlView-C9v1Ooc9.js → ComputerControlView-C2sOFyuA.js} +2 -2
  15. package/dist/client/assets/ComputerControlView-C2sOFyuA.js.br +0 -0
  16. package/dist/client/assets/ComputerControlView-C2sOFyuA.js.gz +0 -0
  17. package/dist/client/assets/{DagPlayground-DfUpMALj.js → DagPlayground-DFfVJW00.js} +1 -1
  18. package/dist/client/assets/DagPlayground-DFfVJW00.js.br +0 -0
  19. package/dist/client/assets/DagPlayground-DFfVJW00.js.gz +0 -0
  20. package/dist/client/assets/{DiffLab-Cf_URhQt.js → DiffLab-hoj8gwUi.js} +1 -1
  21. package/dist/client/assets/DiffLab-hoj8gwUi.js.br +0 -0
  22. package/dist/client/assets/DiffLab-hoj8gwUi.js.gz +0 -0
  23. package/dist/client/assets/{DiffReview-DjG9vCpH.js → DiffReview-Cn_PmN-9.js} +1 -1
  24. package/dist/client/assets/DiffReview-Cn_PmN-9.js.br +0 -0
  25. package/dist/client/assets/{DiffReview-DjG9vCpH.js.gz → DiffReview-Cn_PmN-9.js.gz} +0 -0
  26. package/dist/client/assets/{DiffReviewLab-BKOvHdJY.js → DiffReviewLab-DycgD40E.js} +1 -1
  27. package/dist/client/assets/DiffReviewLab-DycgD40E.js.br +0 -0
  28. package/dist/client/assets/DiffReviewLab-DycgD40E.js.gz +0 -0
  29. package/dist/client/assets/{DiffViewer-6n3tgsdc.js → DiffViewer-DRnuph7U.js} +1 -1
  30. package/dist/client/assets/DiffViewer-DRnuph7U.js.br +0 -0
  31. package/dist/client/assets/DiffViewer-DRnuph7U.js.gz +0 -0
  32. package/dist/client/assets/{ModelPreview-BNs2sRct.js → ModelPreview-Dvw-UtQQ.js} +1 -1
  33. package/dist/client/assets/ModelPreview-Dvw-UtQQ.js.br +0 -0
  34. package/dist/client/assets/ModelPreview-Dvw-UtQQ.js.gz +0 -0
  35. package/dist/client/assets/{RightSidebar-CcMSU1v8.js → RightSidebar-CnnU7Ffp.js} +3 -3
  36. package/dist/client/assets/RightSidebar-CnnU7Ffp.js.br +0 -0
  37. package/dist/client/assets/RightSidebar-CnnU7Ffp.js.gz +0 -0
  38. package/dist/client/assets/{abnfDiagram-VCTEODGH-DogjvRKp.js → abnfDiagram-VCTEODGH-BQVIT5gD.js} +1 -1
  39. package/dist/client/assets/abnfDiagram-VCTEODGH-BQVIT5gD.js.br +0 -0
  40. package/dist/client/assets/abnfDiagram-VCTEODGH-BQVIT5gD.js.gz +0 -0
  41. package/dist/client/assets/{app-D6vN8PW-.js → app-CXvK8WZg.js} +3 -3
  42. package/dist/client/assets/app-CXvK8WZg.js.br +0 -0
  43. package/dist/client/assets/app-CXvK8WZg.js.gz +0 -0
  44. package/dist/client/assets/{arc-Cqel4Ted.js → arc-DZG1NzUc.js} +1 -1
  45. package/dist/client/assets/arc-DZG1NzUc.js.br +0 -0
  46. package/dist/client/assets/arc-DZG1NzUc.js.gz +0 -0
  47. package/dist/client/assets/{architectureDiagram-5GKGNRK7-DgvPtgNb.js → architectureDiagram-5GKGNRK7-Bv15lJGE.js} +1 -1
  48. package/dist/client/assets/architectureDiagram-5GKGNRK7-Bv15lJGE.js.br +0 -0
  49. package/dist/client/assets/architectureDiagram-5GKGNRK7-Bv15lJGE.js.gz +0 -0
  50. package/dist/client/assets/{blockDiagram-I7D4REHJ-BxbWO4x4.js → blockDiagram-I7D4REHJ-DShw-lH7.js} +1 -1
  51. package/dist/client/assets/blockDiagram-I7D4REHJ-DShw-lH7.js.br +0 -0
  52. package/dist/client/assets/blockDiagram-I7D4REHJ-DShw-lH7.js.gz +0 -0
  53. package/dist/client/assets/{c4Diagram-7LVT6UL2-gsA37gjL.js → c4Diagram-7LVT6UL2-BN6SsyOM.js} +1 -1
  54. package/dist/client/assets/c4Diagram-7LVT6UL2-BN6SsyOM.js.br +0 -0
  55. package/dist/client/assets/c4Diagram-7LVT6UL2-BN6SsyOM.js.gz +0 -0
  56. package/dist/client/assets/channel-YDx-Ycsw.js +1 -0
  57. package/dist/client/assets/{chunk-2Q5K7J3B-ChC9yYOd.js → chunk-2Q5K7J3B-BkBkNjv0.js} +1 -1
  58. package/dist/client/assets/{chunk-5VM5RSS4-Bi4Hc8yL.js → chunk-5VM5RSS4-LrpNvv_o.js} +1 -1
  59. package/dist/client/assets/{chunk-F27PBJKO-DvVWvQEk.js → chunk-F27PBJKO-BcpMMU4P.js} +1 -1
  60. package/dist/client/assets/chunk-F27PBJKO-BcpMMU4P.js.br +0 -0
  61. package/dist/client/assets/chunk-F27PBJKO-BcpMMU4P.js.gz +0 -0
  62. package/dist/client/assets/{chunk-IMKFNOWR-BnwQLR5S.js → chunk-IMKFNOWR-cWvd5gJk.js} +1 -1
  63. package/dist/client/assets/chunk-IMKFNOWR-cWvd5gJk.js.br +0 -0
  64. package/dist/client/assets/chunk-IMKFNOWR-cWvd5gJk.js.gz +0 -0
  65. package/dist/client/assets/{chunk-JWPE2WC7-BkNnaDiR.js → chunk-JWPE2WC7-Bf4ORht5.js} +1 -1
  66. package/dist/client/assets/{chunk-POPQ4Y6H-BRzm6Uzi.js → chunk-POPQ4Y6H-M5MSHOUM.js} +1 -1
  67. package/dist/client/assets/{chunk-SVP7TREG-CDYm-dzk.js → chunk-SVP7TREG-Bj8gUFc2.js} +1 -1
  68. package/dist/client/assets/chunk-SVP7TREG-Bj8gUFc2.js.br +0 -0
  69. package/dist/client/assets/chunk-SVP7TREG-Bj8gUFc2.js.gz +0 -0
  70. package/dist/client/assets/{chunk-TICWLB2K-BKaW9Z9i.js → chunk-TICWLB2K-W1cGkC4s.js} +1 -1
  71. package/dist/client/assets/chunk-TICWLB2K-W1cGkC4s.js.br +0 -0
  72. package/dist/client/assets/chunk-TICWLB2K-W1cGkC4s.js.gz +0 -0
  73. package/dist/client/assets/{chunk-XXDRQBXY-DcHZ_FHb.js → chunk-XXDRQBXY-mXLNbLH8.js} +1 -1
  74. package/dist/client/assets/classDiagram-ZZMXUADV-qeb16N1g.js +1 -0
  75. package/dist/client/assets/classDiagram-v2-VYDZK3BY-qeb16N1g.js +1 -0
  76. package/dist/client/assets/{cose-bilkent-JH36ORCC-DCbbTNc6.js → cose-bilkent-JH36ORCC-CK0EaMQY.js} +1 -1
  77. package/dist/client/assets/cose-bilkent-JH36ORCC-CK0EaMQY.js.br +0 -0
  78. package/dist/client/assets/cose-bilkent-JH36ORCC-CK0EaMQY.js.gz +0 -0
  79. package/dist/client/assets/{cynefin-OW5HDTMX-i23hD0Z2.js → cynefin-OW5HDTMX-C-7tsMpt.js} +1 -1
  80. package/dist/client/assets/cynefin-OW5HDTMX-C-7tsMpt.js.br +0 -0
  81. package/dist/client/assets/cynefin-OW5HDTMX-C-7tsMpt.js.gz +0 -0
  82. package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-CbyLYcqc.js → cynefinDiagram-5FMLGOSQ-CijqM5Xa.js} +1 -1
  83. package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CijqM5Xa.js.br +0 -0
  84. package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CijqM5Xa.js.gz +0 -0
  85. package/dist/client/assets/{dagre-GXQ25YYZ-iJ4VKzZm.js → dagre-GXQ25YYZ-DCLINHGD.js} +1 -1
  86. package/dist/client/assets/dagre-GXQ25YYZ-DCLINHGD.js.br +0 -0
  87. package/dist/client/assets/dagre-GXQ25YYZ-DCLINHGD.js.gz +0 -0
  88. package/dist/client/assets/{diagram-S7CK7UJ4-BNVZcdsO.js → diagram-S7CK7UJ4-D-JvTWtL.js} +1 -1
  89. package/dist/client/assets/diagram-S7CK7UJ4-D-JvTWtL.js.br +0 -0
  90. package/dist/client/assets/diagram-S7CK7UJ4-D-JvTWtL.js.gz +0 -0
  91. package/dist/client/assets/{diagram-UQ7AKVKN-1ghTvPiu.js → diagram-UQ7AKVKN-BT01Oee8.js} +1 -1
  92. package/dist/client/assets/diagram-UQ7AKVKN-BT01Oee8.js.br +0 -0
  93. package/dist/client/assets/diagram-UQ7AKVKN-BT01Oee8.js.gz +0 -0
  94. package/dist/client/assets/{diagram-VSXAHHWV-Ce_0nMd3.js → diagram-VSXAHHWV-C_j4_Ldm.js} +1 -1
  95. package/dist/client/assets/diagram-VSXAHHWV-C_j4_Ldm.js.br +0 -0
  96. package/dist/client/assets/diagram-VSXAHHWV-C_j4_Ldm.js.gz +0 -0
  97. package/dist/client/assets/{diagram-VX7I27RA-CLHEkhUt.js → diagram-VX7I27RA-DY62ObO9.js} +1 -1
  98. package/dist/client/assets/diagram-VX7I27RA-DY62ObO9.js.br +0 -0
  99. package/dist/client/assets/diagram-VX7I27RA-DY62ObO9.js.gz +0 -0
  100. package/dist/client/assets/{diagram-Z3DM3KII-iyb5DkP6.js → diagram-Z3DM3KII-TnINooIy.js} +1 -1
  101. package/dist/client/assets/diagram-Z3DM3KII-TnINooIy.js.br +0 -0
  102. package/dist/client/assets/diagram-Z3DM3KII-TnINooIy.js.gz +0 -0
  103. package/dist/client/assets/{ebnfDiagram-PWID7BFC-Dxh2TzXm.js → ebnfDiagram-PWID7BFC-BahaUYTh.js} +1 -1
  104. package/dist/client/assets/ebnfDiagram-PWID7BFC-BahaUYTh.js.br +0 -0
  105. package/dist/client/assets/ebnfDiagram-PWID7BFC-BahaUYTh.js.gz +0 -0
  106. package/dist/client/assets/{erDiagram-RLTQ6QDP-Cr8IkdCC.js → erDiagram-RLTQ6QDP-DNiKhK5j.js} +1 -1
  107. package/dist/client/assets/erDiagram-RLTQ6QDP-DNiKhK5j.js.br +0 -0
  108. package/dist/client/assets/erDiagram-RLTQ6QDP-DNiKhK5j.js.gz +0 -0
  109. package/dist/client/assets/{flowDiagram-HODETNUW-B8ZF1bwr.js → flowDiagram-HODETNUW-x9c9CGXD.js} +1 -1
  110. package/dist/client/assets/flowDiagram-HODETNUW-x9c9CGXD.js.br +0 -0
  111. package/dist/client/assets/flowDiagram-HODETNUW-x9c9CGXD.js.gz +0 -0
  112. package/dist/client/assets/{ganttDiagram-EL5Y4UJY-zhdL10eM.js → ganttDiagram-EL5Y4UJY-BofL5Lxs.js} +1 -1
  113. package/dist/client/assets/ganttDiagram-EL5Y4UJY-BofL5Lxs.js.br +0 -0
  114. package/dist/client/assets/ganttDiagram-EL5Y4UJY-BofL5Lxs.js.gz +0 -0
  115. package/dist/client/assets/{gestureArbiter-CXYHfU__.js → gestureArbiter-Cy5v_ZUL.js} +1 -1
  116. package/dist/client/assets/gestureArbiter-Cy5v_ZUL.js.br +0 -0
  117. package/dist/client/assets/gestureArbiter-Cy5v_ZUL.js.gz +0 -0
  118. package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-BQf2fHBo.js → gitGraphDiagram-WWUBYQGX-CHYuiGg1.js} +1 -1
  119. package/dist/client/assets/gitGraphDiagram-WWUBYQGX-CHYuiGg1.js.br +0 -0
  120. package/dist/client/assets/gitGraphDiagram-WWUBYQGX-CHYuiGg1.js.gz +0 -0
  121. package/dist/client/assets/{infoDiagram-27XIBGKW-BT8xey7S.js → infoDiagram-27XIBGKW-mfFgE6OE.js} +1 -1
  122. package/dist/client/assets/{ishikawaDiagram-5VMMS53U-DunPdwW9.js → ishikawaDiagram-5VMMS53U-CiCmFa95.js} +1 -1
  123. package/dist/client/assets/ishikawaDiagram-5VMMS53U-CiCmFa95.js.br +0 -0
  124. package/dist/client/assets/ishikawaDiagram-5VMMS53U-CiCmFa95.js.gz +0 -0
  125. package/dist/client/assets/{journeyDiagram-3NMN7TZE-B0y75iIg.js → journeyDiagram-3NMN7TZE-CVnBzo7n.js} +1 -1
  126. package/dist/client/assets/journeyDiagram-3NMN7TZE-CVnBzo7n.js.br +0 -0
  127. package/dist/client/assets/journeyDiagram-3NMN7TZE-CVnBzo7n.js.gz +0 -0
  128. package/dist/client/assets/{kanban-definition-UXKFOSKX-BfgA5WLo.js → kanban-definition-UXKFOSKX-3-zdGxI0.js} +1 -1
  129. package/dist/client/assets/kanban-definition-UXKFOSKX-3-zdGxI0.js.br +0 -0
  130. package/dist/client/assets/kanban-definition-UXKFOSKX-3-zdGxI0.js.gz +0 -0
  131. package/dist/client/assets/{layout-BvjABLff.js → layout-DnB4RHWA.js} +1 -1
  132. package/dist/client/assets/layout-DnB4RHWA.js.br +0 -0
  133. package/dist/client/assets/layout-DnB4RHWA.js.gz +0 -0
  134. package/dist/client/assets/{linear-DgeFRliF.js → linear-B_lli4BL.js} +1 -1
  135. package/dist/client/assets/linear-B_lli4BL.js.br +0 -0
  136. package/dist/client/assets/linear-B_lli4BL.js.gz +0 -0
  137. package/dist/client/assets/{mermaid.core-DM6Rlal9.js → mermaid.core-ClemZ-kc.js} +5 -5
  138. package/dist/client/assets/mermaid.core-ClemZ-kc.js.br +0 -0
  139. package/dist/client/assets/mermaid.core-ClemZ-kc.js.gz +0 -0
  140. package/dist/client/assets/{mindmap-definition-YA3MSWOX-DhEiABv6.js → mindmap-definition-YA3MSWOX-hXDufapN.js} +1 -1
  141. package/dist/client/assets/mindmap-definition-YA3MSWOX-hXDufapN.js.br +0 -0
  142. package/dist/client/assets/mindmap-definition-YA3MSWOX-hXDufapN.js.gz +0 -0
  143. package/dist/client/assets/{passwordBootstrap-Dxv0I4wM.js → passwordBootstrap-c-hmAGCQ.js} +1 -1
  144. package/dist/client/assets/passwordBootstrap-c-hmAGCQ.js.br +0 -0
  145. package/dist/client/assets/passwordBootstrap-c-hmAGCQ.js.gz +0 -0
  146. package/dist/client/assets/{pegDiagram-XKGWAZYB-LTlVaJfm.js → pegDiagram-XKGWAZYB-yb1lAfHR.js} +1 -1
  147. package/dist/client/assets/pegDiagram-XKGWAZYB-yb1lAfHR.js.br +0 -0
  148. package/dist/client/assets/pegDiagram-XKGWAZYB-yb1lAfHR.js.gz +0 -0
  149. package/dist/client/assets/{pieDiagram-E7YTZNPT-9bnryna3.js → pieDiagram-E7YTZNPT-lVC2DWY_.js} +1 -1
  150. package/dist/client/assets/pieDiagram-E7YTZNPT-lVC2DWY_.js.br +0 -0
  151. package/dist/client/assets/pieDiagram-E7YTZNPT-lVC2DWY_.js.gz +0 -0
  152. package/dist/client/assets/{quadrantDiagram-AXDQQJYC-ZBmgIpsJ.js → quadrantDiagram-AXDQQJYC-CeqeNP5C.js} +1 -1
  153. package/dist/client/assets/quadrantDiagram-AXDQQJYC-CeqeNP5C.js.br +0 -0
  154. package/dist/client/assets/quadrantDiagram-AXDQQJYC-CeqeNP5C.js.gz +0 -0
  155. package/dist/client/assets/{railroadDiagram-O6MQD6OU-DTtXvKOu.js → railroadDiagram-O6MQD6OU-BMEBmjF2.js} +1 -1
  156. package/dist/client/assets/railroadDiagram-O6MQD6OU-BMEBmjF2.js.br +0 -0
  157. package/dist/client/assets/railroadDiagram-O6MQD6OU-BMEBmjF2.js.gz +0 -0
  158. package/dist/client/assets/{rdpSession-Ggo3N5s5.js → rdpSession-D77Fs4-L.js} +1 -1
  159. package/dist/client/assets/rdpSession-D77Fs4-L.js.br +0 -0
  160. package/dist/client/assets/{rdpSession-Ggo3N5s5.js.gz → rdpSession-D77Fs4-L.js.gz} +0 -0
  161. package/dist/client/assets/{referenceLongPress-Df8W2cyP.js → referenceLongPress-xNXQRqYn.js} +1 -1
  162. package/dist/client/assets/referenceLongPress-xNXQRqYn.js.br +0 -0
  163. package/dist/client/assets/referenceLongPress-xNXQRqYn.js.gz +0 -0
  164. package/dist/client/assets/{requirementDiagram-BXWQKSXE-BNia9zI0.js → requirementDiagram-BXWQKSXE-CRhmIdDq.js} +1 -1
  165. package/dist/client/assets/requirementDiagram-BXWQKSXE-CRhmIdDq.js.br +0 -0
  166. package/dist/client/assets/requirementDiagram-BXWQKSXE-CRhmIdDq.js.gz +0 -0
  167. package/dist/client/assets/{sankeyDiagram-P5KCCOFB-uvg5npfK.js → sankeyDiagram-P5KCCOFB-CZZPxGRu.js} +1 -1
  168. package/dist/client/assets/sankeyDiagram-P5KCCOFB-CZZPxGRu.js.br +0 -0
  169. package/dist/client/assets/sankeyDiagram-P5KCCOFB-CZZPxGRu.js.gz +0 -0
  170. package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-DpJNf2MD.js → sequenceDiagram-WJ2MYXX4-CvKYTCaL.js} +1 -1
  171. package/dist/client/assets/sequenceDiagram-WJ2MYXX4-CvKYTCaL.js.br +0 -0
  172. package/dist/client/assets/sequenceDiagram-WJ2MYXX4-CvKYTCaL.js.gz +0 -0
  173. package/dist/client/assets/{sizeCapture-INFHLROL-CkWB2AnF.js → sizeCapture-INFHLROL-DpMFgVd8.js} +1 -1
  174. package/dist/client/assets/sizeCapture-INFHLROL-DpMFgVd8.js.br +0 -0
  175. package/dist/client/assets/sizeCapture-INFHLROL-DpMFgVd8.js.gz +0 -0
  176. package/dist/client/assets/{sparkles-DOuEtn62.js → sparkles-BBYDWqCu.js} +1 -1
  177. package/dist/client/assets/{stateDiagram-D77RDMKH-CeMzMQq-.js → stateDiagram-D77RDMKH-BUCKWh69.js} +1 -1
  178. package/dist/client/assets/stateDiagram-D77RDMKH-BUCKWh69.js.br +0 -0
  179. package/dist/client/assets/stateDiagram-D77RDMKH-BUCKWh69.js.gz +0 -0
  180. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-CrhJVriY.js +1 -0
  181. package/dist/client/assets/{swimlanes-42K2YHIH-Bo9GejWo.js → swimlanes-42K2YHIH-Du84aO1l.js} +1 -1
  182. package/dist/client/assets/swimlanes-42K2YHIH-Du84aO1l.js.br +0 -0
  183. package/dist/client/assets/swimlanes-42K2YHIH-Du84aO1l.js.gz +0 -0
  184. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-bsc39ya3.js +8 -0
  185. package/dist/client/assets/{timeline-definition-24CTP7MA-cvWXYEZ4.js → timeline-definition-24CTP7MA-94wGyYVM.js} +1 -1
  186. package/dist/client/assets/timeline-definition-24CTP7MA-94wGyYVM.js.br +0 -0
  187. package/dist/client/assets/timeline-definition-24CTP7MA-94wGyYVM.js.gz +0 -0
  188. package/dist/client/assets/{triangle-alert-DzV0gQXz.js → triangle-alert-BFCgLlxS.js} +1 -1
  189. package/dist/client/assets/{vennDiagram-4TSXK5OY-CzleWcmk.js → vennDiagram-4TSXK5OY-C74llwIj.js} +1 -1
  190. package/dist/client/assets/{vennDiagram-4TSXK5OY-CzleWcmk.js.br → vennDiagram-4TSXK5OY-C74llwIj.js.br} +0 -0
  191. package/dist/client/assets/vennDiagram-4TSXK5OY-C74llwIj.js.gz +0 -0
  192. package/dist/client/assets/{videoCompression-DCnzjEfU.js → videoCompression-b96RKMFE.js} +1 -1
  193. package/dist/client/assets/videoCompression-b96RKMFE.js.br +0 -0
  194. package/dist/client/assets/videoCompression-b96RKMFE.js.gz +0 -0
  195. package/dist/client/assets/{wardleyDiagram-VM6X3IG4-Cir1iutR.js → wardleyDiagram-VM6X3IG4-DVdgFaBs.js} +1 -1
  196. package/dist/client/assets/wardleyDiagram-VM6X3IG4-DVdgFaBs.js.br +0 -0
  197. package/dist/client/assets/wardleyDiagram-VM6X3IG4-DVdgFaBs.js.gz +0 -0
  198. package/dist/client/assets/{xychartDiagram-S5SC5T6Z-pNPcVJ1C.js → xychartDiagram-S5SC5T6Z-BmUxPbqk.js} +1 -1
  199. package/dist/client/assets/xychartDiagram-S5SC5T6Z-BmUxPbqk.js.br +0 -0
  200. package/dist/client/assets/xychartDiagram-S5SC5T6Z-BmUxPbqk.js.gz +0 -0
  201. package/dist/client/index.html +1 -1
  202. package/dist/client/index.html.br +0 -0
  203. package/dist/client/index.html.gz +0 -0
  204. package/dist/client/sw.js +1 -1
  205. package/dist/client/sw.js.br +0 -0
  206. package/dist/client/sw.js.gz +0 -0
  207. package/dist/server/agent/collaborationCli.js +6 -4
  208. package/dist/server/agent/collaborationRoutes.js +1 -0
  209. package/dist/server/agent/collaborationTaskCli.js +25 -7
  210. package/dist/server/agent/collaborationTaskPurpose.js +20 -0
  211. package/dist/server/agent/collaborationTaskRoutes.js +1 -1
  212. package/dist/server/agent/collaborationTaskService.js +13 -6
  213. package/dist/server/agent/collaborationTaskStore.js +35 -6
  214. package/dist/server/agent/integrationServer.js +8 -6
  215. package/dist/server/agent/integrationStore.js +1 -1
  216. package/dist/server/agent/nativeProcessIdentity.js +162 -0
  217. package/dist/server/agent/nativeResumeOwner.js +3 -1
  218. package/dist/server/agent/plugins.js +9 -0
  219. package/dist/server/agent/registry.js +8 -0
  220. package/dist/server/routes/terminal.js +36 -7
  221. package/dist/server/utils/tmuxProgramDetection.js +5 -1
  222. package/docs/integrations.md +144 -7
  223. package/package.json +1 -1
  224. package/runtime-manifest.json +3 -3
  225. package/dist/client/assets/App-BziVLy1b.js.br +0 -0
  226. package/dist/client/assets/App-BziVLy1b.js.gz +0 -0
  227. package/dist/client/assets/ArchitecturePanel-CARNBEqQ.js.br +0 -0
  228. package/dist/client/assets/ArchitecturePanel-CARNBEqQ.js.gz +0 -0
  229. package/dist/client/assets/ChangeWalkthroughPanel-00oa0z6w.js.br +0 -0
  230. package/dist/client/assets/ChangeWalkthroughPanel-00oa0z6w.js.gz +0 -0
  231. package/dist/client/assets/CollaborationMainWorkspace-DuEeKQKZ.js.br +0 -0
  232. package/dist/client/assets/CollaborationMainWorkspace-DuEeKQKZ.js.gz +0 -0
  233. package/dist/client/assets/CollaborationTaskContent-B_mzpNuw.js +0 -2
  234. package/dist/client/assets/ComputerControlView-C9v1Ooc9.js.br +0 -0
  235. package/dist/client/assets/ComputerControlView-C9v1Ooc9.js.gz +0 -0
  236. package/dist/client/assets/DagPlayground-DfUpMALj.js.br +0 -0
  237. package/dist/client/assets/DagPlayground-DfUpMALj.js.gz +0 -0
  238. package/dist/client/assets/DiffLab-Cf_URhQt.js.br +0 -0
  239. package/dist/client/assets/DiffLab-Cf_URhQt.js.gz +0 -0
  240. package/dist/client/assets/DiffReview-DjG9vCpH.js.br +0 -0
  241. package/dist/client/assets/DiffReviewLab-BKOvHdJY.js.br +0 -0
  242. package/dist/client/assets/DiffReviewLab-BKOvHdJY.js.gz +0 -0
  243. package/dist/client/assets/DiffViewer-6n3tgsdc.js.br +0 -0
  244. package/dist/client/assets/DiffViewer-6n3tgsdc.js.gz +0 -0
  245. package/dist/client/assets/ModelPreview-BNs2sRct.js.br +0 -0
  246. package/dist/client/assets/ModelPreview-BNs2sRct.js.gz +0 -0
  247. package/dist/client/assets/RightSidebar-CcMSU1v8.js.br +0 -0
  248. package/dist/client/assets/RightSidebar-CcMSU1v8.js.gz +0 -0
  249. package/dist/client/assets/abnfDiagram-VCTEODGH-DogjvRKp.js.br +0 -0
  250. package/dist/client/assets/abnfDiagram-VCTEODGH-DogjvRKp.js.gz +0 -0
  251. package/dist/client/assets/app-D6vN8PW-.js.br +0 -0
  252. package/dist/client/assets/app-D6vN8PW-.js.gz +0 -0
  253. package/dist/client/assets/arc-Cqel4Ted.js.br +0 -0
  254. package/dist/client/assets/arc-Cqel4Ted.js.gz +0 -0
  255. package/dist/client/assets/architectureDiagram-5GKGNRK7-DgvPtgNb.js.br +0 -0
  256. package/dist/client/assets/architectureDiagram-5GKGNRK7-DgvPtgNb.js.gz +0 -0
  257. package/dist/client/assets/blockDiagram-I7D4REHJ-BxbWO4x4.js.br +0 -0
  258. package/dist/client/assets/blockDiagram-I7D4REHJ-BxbWO4x4.js.gz +0 -0
  259. package/dist/client/assets/c4Diagram-7LVT6UL2-gsA37gjL.js.br +0 -0
  260. package/dist/client/assets/c4Diagram-7LVT6UL2-gsA37gjL.js.gz +0 -0
  261. package/dist/client/assets/channel-CBc8-n7y.js +0 -1
  262. package/dist/client/assets/chunk-F27PBJKO-DvVWvQEk.js.br +0 -0
  263. package/dist/client/assets/chunk-F27PBJKO-DvVWvQEk.js.gz +0 -0
  264. package/dist/client/assets/chunk-IMKFNOWR-BnwQLR5S.js.br +0 -0
  265. package/dist/client/assets/chunk-IMKFNOWR-BnwQLR5S.js.gz +0 -0
  266. package/dist/client/assets/chunk-SVP7TREG-CDYm-dzk.js.br +0 -0
  267. package/dist/client/assets/chunk-SVP7TREG-CDYm-dzk.js.gz +0 -0
  268. package/dist/client/assets/chunk-TICWLB2K-BKaW9Z9i.js.br +0 -0
  269. package/dist/client/assets/chunk-TICWLB2K-BKaW9Z9i.js.gz +0 -0
  270. package/dist/client/assets/classDiagram-ZZMXUADV-CNFc2dOc.js +0 -1
  271. package/dist/client/assets/classDiagram-v2-VYDZK3BY-CNFc2dOc.js +0 -1
  272. package/dist/client/assets/cose-bilkent-JH36ORCC-DCbbTNc6.js.br +0 -0
  273. package/dist/client/assets/cose-bilkent-JH36ORCC-DCbbTNc6.js.gz +0 -0
  274. package/dist/client/assets/cynefin-OW5HDTMX-i23hD0Z2.js.br +0 -0
  275. package/dist/client/assets/cynefin-OW5HDTMX-i23hD0Z2.js.gz +0 -0
  276. package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CbyLYcqc.js.br +0 -0
  277. package/dist/client/assets/cynefinDiagram-5FMLGOSQ-CbyLYcqc.js.gz +0 -0
  278. package/dist/client/assets/dagre-GXQ25YYZ-iJ4VKzZm.js.br +0 -0
  279. package/dist/client/assets/dagre-GXQ25YYZ-iJ4VKzZm.js.gz +0 -0
  280. package/dist/client/assets/diagram-S7CK7UJ4-BNVZcdsO.js.br +0 -0
  281. package/dist/client/assets/diagram-S7CK7UJ4-BNVZcdsO.js.gz +0 -0
  282. package/dist/client/assets/diagram-UQ7AKVKN-1ghTvPiu.js.br +0 -0
  283. package/dist/client/assets/diagram-UQ7AKVKN-1ghTvPiu.js.gz +0 -0
  284. package/dist/client/assets/diagram-VSXAHHWV-Ce_0nMd3.js.br +0 -0
  285. package/dist/client/assets/diagram-VSXAHHWV-Ce_0nMd3.js.gz +0 -0
  286. package/dist/client/assets/diagram-VX7I27RA-CLHEkhUt.js.br +0 -0
  287. package/dist/client/assets/diagram-VX7I27RA-CLHEkhUt.js.gz +0 -0
  288. package/dist/client/assets/diagram-Z3DM3KII-iyb5DkP6.js.br +0 -0
  289. package/dist/client/assets/diagram-Z3DM3KII-iyb5DkP6.js.gz +0 -0
  290. package/dist/client/assets/ebnfDiagram-PWID7BFC-Dxh2TzXm.js.br +0 -0
  291. package/dist/client/assets/ebnfDiagram-PWID7BFC-Dxh2TzXm.js.gz +0 -0
  292. package/dist/client/assets/erDiagram-RLTQ6QDP-Cr8IkdCC.js.br +0 -0
  293. package/dist/client/assets/erDiagram-RLTQ6QDP-Cr8IkdCC.js.gz +0 -0
  294. package/dist/client/assets/flowDiagram-HODETNUW-B8ZF1bwr.js.br +0 -0
  295. package/dist/client/assets/flowDiagram-HODETNUW-B8ZF1bwr.js.gz +0 -0
  296. package/dist/client/assets/ganttDiagram-EL5Y4UJY-zhdL10eM.js.br +0 -0
  297. package/dist/client/assets/ganttDiagram-EL5Y4UJY-zhdL10eM.js.gz +0 -0
  298. package/dist/client/assets/gestureArbiter-CXYHfU__.js.br +0 -0
  299. package/dist/client/assets/gestureArbiter-CXYHfU__.js.gz +0 -0
  300. package/dist/client/assets/gitGraphDiagram-WWUBYQGX-BQf2fHBo.js.br +0 -0
  301. package/dist/client/assets/gitGraphDiagram-WWUBYQGX-BQf2fHBo.js.gz +0 -0
  302. package/dist/client/assets/ishikawaDiagram-5VMMS53U-DunPdwW9.js.br +0 -0
  303. package/dist/client/assets/ishikawaDiagram-5VMMS53U-DunPdwW9.js.gz +0 -0
  304. package/dist/client/assets/journeyDiagram-3NMN7TZE-B0y75iIg.js.br +0 -0
  305. package/dist/client/assets/journeyDiagram-3NMN7TZE-B0y75iIg.js.gz +0 -0
  306. package/dist/client/assets/kanban-definition-UXKFOSKX-BfgA5WLo.js.br +0 -0
  307. package/dist/client/assets/kanban-definition-UXKFOSKX-BfgA5WLo.js.gz +0 -0
  308. package/dist/client/assets/layout-BvjABLff.js.br +0 -0
  309. package/dist/client/assets/layout-BvjABLff.js.gz +0 -0
  310. package/dist/client/assets/linear-DgeFRliF.js.br +0 -0
  311. package/dist/client/assets/linear-DgeFRliF.js.gz +0 -0
  312. package/dist/client/assets/mermaid.core-DM6Rlal9.js.br +0 -0
  313. package/dist/client/assets/mermaid.core-DM6Rlal9.js.gz +0 -0
  314. package/dist/client/assets/mindmap-definition-YA3MSWOX-DhEiABv6.js.br +0 -0
  315. package/dist/client/assets/mindmap-definition-YA3MSWOX-DhEiABv6.js.gz +0 -0
  316. package/dist/client/assets/passwordBootstrap-Dxv0I4wM.js.br +0 -0
  317. package/dist/client/assets/passwordBootstrap-Dxv0I4wM.js.gz +0 -0
  318. package/dist/client/assets/pegDiagram-XKGWAZYB-LTlVaJfm.js.br +0 -0
  319. package/dist/client/assets/pegDiagram-XKGWAZYB-LTlVaJfm.js.gz +0 -0
  320. package/dist/client/assets/pieDiagram-E7YTZNPT-9bnryna3.js.br +0 -0
  321. package/dist/client/assets/pieDiagram-E7YTZNPT-9bnryna3.js.gz +0 -0
  322. package/dist/client/assets/quadrantDiagram-AXDQQJYC-ZBmgIpsJ.js.br +0 -0
  323. package/dist/client/assets/quadrantDiagram-AXDQQJYC-ZBmgIpsJ.js.gz +0 -0
  324. package/dist/client/assets/railroadDiagram-O6MQD6OU-DTtXvKOu.js.br +0 -0
  325. package/dist/client/assets/railroadDiagram-O6MQD6OU-DTtXvKOu.js.gz +0 -0
  326. package/dist/client/assets/rdpSession-Ggo3N5s5.js.br +0 -0
  327. package/dist/client/assets/referenceLongPress-Df8W2cyP.js.br +0 -0
  328. package/dist/client/assets/referenceLongPress-Df8W2cyP.js.gz +0 -0
  329. package/dist/client/assets/requirementDiagram-BXWQKSXE-BNia9zI0.js.br +0 -0
  330. package/dist/client/assets/requirementDiagram-BXWQKSXE-BNia9zI0.js.gz +0 -0
  331. package/dist/client/assets/sankeyDiagram-P5KCCOFB-uvg5npfK.js.br +0 -0
  332. package/dist/client/assets/sankeyDiagram-P5KCCOFB-uvg5npfK.js.gz +0 -0
  333. package/dist/client/assets/sequenceDiagram-WJ2MYXX4-DpJNf2MD.js.br +0 -0
  334. package/dist/client/assets/sequenceDiagram-WJ2MYXX4-DpJNf2MD.js.gz +0 -0
  335. package/dist/client/assets/sizeCapture-INFHLROL-CkWB2AnF.js.br +0 -0
  336. package/dist/client/assets/sizeCapture-INFHLROL-CkWB2AnF.js.gz +0 -0
  337. package/dist/client/assets/stateDiagram-D77RDMKH-CeMzMQq-.js.br +0 -0
  338. package/dist/client/assets/stateDiagram-D77RDMKH-CeMzMQq-.js.gz +0 -0
  339. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-CNYUpLxt.js +0 -1
  340. package/dist/client/assets/swimlanes-42K2YHIH-Bo9GejWo.js.br +0 -0
  341. package/dist/client/assets/swimlanes-42K2YHIH-Bo9GejWo.js.gz +0 -0
  342. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-EB7zBRFR.js +0 -8
  343. package/dist/client/assets/timeline-definition-24CTP7MA-cvWXYEZ4.js.br +0 -0
  344. package/dist/client/assets/timeline-definition-24CTP7MA-cvWXYEZ4.js.gz +0 -0
  345. package/dist/client/assets/vennDiagram-4TSXK5OY-CzleWcmk.js.gz +0 -0
  346. package/dist/client/assets/videoCompression-DCnzjEfU.js.br +0 -0
  347. package/dist/client/assets/videoCompression-DCnzjEfU.js.gz +0 -0
  348. package/dist/client/assets/wardleyDiagram-VM6X3IG4-Cir1iutR.js.br +0 -0
  349. package/dist/client/assets/wardleyDiagram-VM6X3IG4-Cir1iutR.js.gz +0 -0
  350. package/dist/client/assets/xychartDiagram-S5SC5T6Z-pNPcVJ1C.js.br +0 -0
  351. package/dist/client/assets/xychartDiagram-S5SC5T6Z-pNPcVJ1C.js.gz +0 -0
@@ -86,7 +86,10 @@ function isDirectProgramMatch(row, command) {
86
86
  export function selectTmuxForegroundProgram(input) {
87
87
  const helperProgramNames = input.helperProgramNames ?? DEFAULT_TMUX_HELPER_PROGRAM_NAMES;
88
88
  const rowsByPid = new Map(input.rows.map((row) => [row.pid, row]));
89
- const foregroundRows = input.rows.filter((row) => row.pid !== input.panePid && row.tpgid > 0 && row.pgid === row.tpgid && !row.stat.startsWith('Z'));
89
+ const foregroundRows = input.rows.filter((row) => (row.pid !== input.panePid || input.includePaneProcess === true
90
+ && !input.shellNames.has(lowerProgramName(row.comm)?.replace(/^-/, '') ?? '')
91
+ && !input.shellNames.has(lowerProgramName(input.extractProgramLabel(row.args) ?? row.comm)?.replace(/^-/, '') ?? ''))
92
+ && row.tpgid > 0 && row.pgid === row.tpgid && !row.stat.startsWith('Z'));
90
93
  if (foregroundRows.length === 0) {
91
94
  return null;
92
95
  }
@@ -130,6 +133,7 @@ export function selectTmuxForegroundProgram(input) {
130
133
  return {
131
134
  command: selected.command,
132
135
  rawArgs: selected.row.args,
136
+ ...(input.includePaneProcess ? { processPid: selected.row.pid, processComm: selected.row.comm } : {}),
133
137
  };
134
138
  }
135
139
  export function normalizeTmuxMetadataProgram(program, options) {
@@ -6,7 +6,9 @@
6
6
  **实际运行服务至少 1.4.302**。退出后的重复原生会话检查修复要求
7
7
  **实际运行服务至少 1.4.303**。没有 PTY 附着的已登记 tmux 的重复保护修复要求
8
8
  **实际运行服务至少 1.4.304**。管理员恢复诊断要求 **CLI / 实际服务均至少 1.4.305**;
9
- 建议 CLI 与服务同步安装 1.4.305(既有接入命令的 CLI 最低仍为 1.4.301)。
9
+ 直接 exec 为 pane PID 的原生 argv 核验及可选 Linux 持锁身份要求 **实际服务至少 1.4.306**;
10
+ 后台执行记录与用途迁移要求 **CLI / 实际服务均至少 1.4.307**;
11
+ 建议 CLI 与服务同步安装 1.4.307(既有接入命令的 CLI 最低仍为 1.4.301,诊断 CLI 最低为 1.4.305)。
10
12
  现有 `--session`、消息投递、任务报告与自动协作入口继续兼容;旧的
11
13
  `task create --integration` 仍表示代码集成子任务,新身份使用 `--principal`。
12
14
 
@@ -139,12 +141,97 @@ td collab --principal report-bridge capabilities
139
141
  `principal.launch_profiles` 中目标 profile 的 `startup_input_condition=true`。
140
142
  这些布尔值由实际服务回读;服务能力支持不等于身份已配置条件。
141
143
 
144
+ ## 后台自动化执行记录(1.4.307)
145
+
146
+ `td automation` 是已有定时投递入口:`list/create/show/run/pause/resume/delete`。
147
+ 它的 run `success` 只表示投递,记录不包含结果版本或关联咨询,最多保留 100 条;
148
+ 它不是本节的后台执行记录。外部定时器继续由接入方管理。
149
+
150
+ 后台工作复用可靠的 task/attempt/artifact/event 存储,显式使用
151
+ `purpose=automation`。旧记录缺少 purpose 时按 `interactive` 处理,新建也默认 interactive。
152
+ 这是使用方式与记录契约,不是安全隔离或简单 CSS 隐藏:
153
+
154
+ - automation 是本机协作组内的独立记录;不加入人工目标、父子任务、依赖验收、协调者或自动评审。
155
+ - 继续通过原 session 投递、精确恢复,用原 attempt report、comment/respond 和持久事件关联。
156
+ - `complete` 是执行成员的明确结果交付,无需逐期 accepted。它不等于业务机械校验通过或外部发布成功。
157
+ 业务按 artifact_id 保存机械校验和外部 outbox;本版 `external_validation=false`。
158
+ - 用户任务生命周期 `status=open|accepted|closed` 保持既有含义;后台是否执行交付,读下面的 `execution`,
159
+ 不等待 `status=accepted`。不自动生成 accepted;principal 仍不能验收。已有用户验收历史保留。
160
+ - 人工工作台列表 API 默认只列 interactive,看板与“需要你”同样排除 automation,
161
+ 包括 complete、blocked、failed、预期测试超时和真实提问。业务负责在飞书分诊/提问,
162
+ 可使用 task ask/answer 持久关联。异常、问题原文、投递状态和失败重试并未删除或改成成功。
163
+ - Agent CLI 与 principal 的 task list 默认保留全部授权组记录;可用 `--purpose automation|interactive|all` 筛选。
164
+ task get 不受用途过滤,原始正文与历史仍可回读。用途不代替组权限。
165
+
166
+ 先核验实际服务 capabilities:
167
+ `background_task_records=true`、`task_purpose_configuration=true`、`explicit_execution_state=true`。
168
+ 普通 collab 能力位在 `task_workflow` 内,principal 的在响应顶层。CLI 与实际服务均至少 1.4.307,协议仍是 1。
169
+ CLI 对带 purpose 的操作和 configure 会先探测能力,缺失返回
170
+ `BACKGROUND_TASK_RECORDS_UNSUPPORTED`,不会向旧服务提交变更或降级创建普通任务。
171
+
172
+ 新建后台执行记录(使用既有私有凭据文件注入):
173
+
174
+ ```sh
175
+ td collab --principal report-bridge task create --group <本机组ID> \
176
+ --purpose automation --title '本期报告' --content '完整执行要求' \
177
+ --assignee <原TD-session-id> --idempotency-key <本次创建键>
178
+ td collab --principal report-bridge task list --purpose automation
179
+ td collab --principal report-bridge task get <task-id>
180
+ ```
181
+
182
+ automation 的完整与摘要响应均提供 `execution`:
183
+
184
+ ```json
185
+ {
186
+ "status": "complete",
187
+ "attemptId": "原执行尝试ID",
188
+ "reportEventId": "原report事件ID",
189
+ "artifactId": "本版本结果ID",
190
+ "reportedAt": 1791636000000
191
+ }
192
+ ```
193
+
194
+ `execution.status` 为 `unassigned`、`awaiting_report` 或明确成员报告的
195
+ `ack/working/blocked/complete/failed`。它只根据当前 attempt 的有序原始 report/revise 事件生成:
196
+ 尚未报告及最新 revise 之后等待新报告时,reportEventId/artifactId/reportedAt 为 null;
197
+ 只有当前明确 complete 的 artifactId 非 null。comment/respond 不改变 execution、结果或 attempt;
198
+ revise 使旧一轮 execution 失效,再次 complete 产生新 artifact。历史 attempt 的报告不会覆盖当前执行事实。
199
+ 投递成功、终端快照、事件 ACK、其他会话忙闲均不能推导 execution 状态。
200
+ `reportedAt` 是原 report 事件时间,execution 为回读投影,不写回或伪造原报告。
201
+
202
+ 已有普通任务原地迁移,不重跑:管理员先在原策略的 permissions 中**追加** `task.configure`,
203
+ 保留 id/groupId/其他权限/profile/启动条件,用 `td integration update --file <原策略.json>` 更新。
204
+ 该操作保留凭据;仍需核对 principal.permissions,不能把服务支持的 permissions 当实际授权。
205
+ 然后读取原记录的最新 revision:
206
+
207
+ ```sh
208
+ td collab --principal report-bridge task get <原task-id>
209
+ td collab --principal report-bridge task configure <原task-id> \
210
+ --purpose automation --revision <刚回读的revision> \
211
+ --idempotency-key <此记录的用途迁移键>
212
+ ```
213
+
214
+ configure 在同一持久事务中更新 purpose、revision 并记录 `task.configured`(payload.event.purpose)。
215
+ 创建事件也保留创建时 purpose。新配置事件沿用既有持久推送/重连/ACK 契约。
216
+ 用途迁移保留原 task/group/attempt/session 关联、投递、artifact、原始事件和已验收/关闭历史,
217
+ 不建立新 attempt/session,不投递正文、不恢复终端、不自动 accepted。
218
+ 旧创建请求的同一幂等键仍绑定原请求体;不要把它改为带新 purpose 的 create,否则会正确报幂等冲突。
219
+ 迁移后保持原业务键与 TD ID,只有未来新记录才使用 purpose=automation 的新创建请求。
220
+ 测试记录也可配置为 automation,测试与正式业务组的分离仍由接入方完成,不自动替别人迁移任务。
221
+
222
+ configure 需要本机管理员(既有受权任务 API)或授权组内持有 `task.configure` 的 principal;
223
+ 终端成员不能配置。拒绝无 grant、跨组、过期 revision;同一幂等请求返回原事件且不重复追加。
224
+ `TASK_CHANGED` 时重新读取并核对,不盲覆写。用途非法返回 `INVALID_TASK_PURPOSE`;
225
+ 非独立记录返回 `AUTOMATION_STANDALONE_REQUIRED`,跨服务组返回 `BACKGROUND_TASK_LOCAL_ONLY`。
226
+ 已关闭的记录只迁移用途仍保持关闭,不由 configure 隐式恢复咨询或执行。
227
+
142
228
  ## 任务与权限
143
229
 
144
230
  | 操作 | 外部身份 | 会话成员 / 用户规则 |
145
231
  | --- | --- | --- |
146
232
  | list/get | `task.read`,只读授权组 | 保留现有组权限 |
147
- | create | `task.create`,普通独立任务 | 指定负责人另需 `task.assign`,必须在组内 |
233
+ | create | `task.create`,独立任务或后台执行记录 | 指定负责人另需 `task.assign`,必须在组内 |
234
+ | configure | `task.configure` | 显式配置用途,必须带 revision 与幂等键;会话成员不能配置 |
148
235
  | assign | `task.assign` | 必须带当前 revision;新建 attempt,不隐式恢复会话 |
149
236
  | comment | `task.comment` | open/accepted 可咨询,保留原结果、验收和 attempt |
150
237
  | revise | `task.revise` | 带 revision,重开并使旧结果失去验收资格,沿用当前 attempt |
@@ -207,6 +294,7 @@ task 事件 `event_id` 与任务内事件 ID 一致,`respond.reply_to_event_id
207
294
  | kind | payload |
208
295
  | --- | --- |
209
296
  | `task.created/assigned/scheduled/coordinator` | `{event}`:原事件、actor、content、attemptId、sequence、createdAt、origin 等 |
297
+ | `task.configured` | `{event}`:`purpose=interactive|automation`,原配置操作者、时间及 source/origin;没有终端投递 |
210
298
  | `task.report` | `{event}`:另含明确 reportStatus(ack/working/blocked/complete/failed)、evidence;新 complete 含 artifactId |
211
299
  | `task.comment/respond/revise` | `{event}`:咨询含 target/deliveryId,答复含 replyToEventId |
212
300
  | `task.question/answer` | `{event}`;decision 的完整状态从 task get 回读 |
@@ -311,6 +399,48 @@ operation/pane,不启动第二个 Agent;进程携带不同 UUID 时继续拒
311
399
  仅在确认 tmux 已消失或当前进程排除冲突时继续;未知进程、同 Agent 缺少精确 UUID、
312
400
  观察失败均返回 `NATIVE_SESSION_OWNER_UNCONFIRMED`,不以旧 UUID 证明没有冲突。
313
401
 
402
+ ### 可选的当前进程原生身份(1.4.306)
403
+
404
+ 某些 Agent 首次启动的 argv 没有 UUID。支持以下所有权协议的 Agent 插件可以在
405
+ 原 `manifest.json` 中增加一个可选字段;现有别名、恢复命令和其他配置保持原样:
406
+
407
+ ```json
408
+ "nativeIdentity": {
409
+ "kind": "linux-flock-owner",
410
+ "directory": "~/.my-agent/native-writer-locks"
411
+ }
412
+ ```
413
+
414
+ 这是通用协议声明,TD 没有内置任何私有 Agent 名称或路径。锁目录须是当前用户
415
+ home 内的绝对目录或 `~/` 路径;运行时目录、文件须由当前 UID 拥有,且不能被
416
+ 组或其他用户写入。目录/文件本身不能为软链接;目录的真实路径仍须在 home 内。
417
+ 锁是 `<native-id>.lock` 普通文件,配套 `<native-id>.owner.json` 至少含
418
+ `{"pid":123,"process_start_id":"linux:456"}`;其他字段不用来证明身份。
419
+
420
+ 插件配置在服务启动时载入。升级、保留原配置并加入声明后,重启实际服务一次;
421
+ Linux 服务 `capabilities.native_identity_linux_flock_owner=true` 表示支持此证据类型,
422
+ 不能替代核验插件声明与真实持锁情况。其他平台返回 false,继续使用原 argv 证据。
423
+ 不需要改 integration policy、凭据、原启动 argv/model/cwd/包装器或业务任务。
424
+
425
+ TD 从当前终端的真实前台进程取得 PID(包括直接 exec 后就是 pane PID 的进程),
426
+ 再只读核验:该 PID 的 UID、前台进程组、当前 `/proc/<pid>/stat` 启动时间、owner
427
+ 文件中的 PID/start_id、它实际打开的 FD 与目录内锁文件的 dev/inode、以及
428
+ `/proc/locks` 的同 PID 独占整文件 `FLOCK ADVISORY WRITE`。读取前后复核进程实例及 argv、
429
+ 相关 FD 集合、inode、owner 和内核持锁,任一无法成立都不推导身份。
430
+ owner JSON 读取限 4096 字节、argv 比对限 16384 字节、进程 FD 数量限 4096;不会读会话正文/环境或尝试取得写锁。
431
+
432
+ 仅一个完整匹配的原生 ID 才可用于当前身份:明确持有目标 ID 拒绝重复启动;明确
433
+ 持有其他 ID 可以排除该进程。多个持锁 ID、argv 与锁身份矛盾、检查间进程变化
434
+ 均继续拒绝。owner 文件存在、PID 存活、旧登记或 hook 历史均不能单独确认身份。
435
+ 尚未建立可证明身份、协议不符或读权限不足时仍保留未确认保护;没有声明此字段的
436
+ 旧插件继续使用原有 argv 路径。此证据仅支持本机 Linux tmux 进程,不宣称能覆盖
437
+ 未登记外部进程、远端 Agent 或其他操作系统。
438
+
439
+ 维护机已用真实隔离 tmux/内核 flock 验证首次启动的 UUID 捕获、直接 exec 的 pane
440
+ PID、同 ID 拒绝/不同 ID 排除、遗留 owner、错误 start_id/PID、inode 替换、没有真实
441
+ 持锁、多个 ID 和 argv 冲突。**私有 TraeX 的 1.4.306 身份接入仍需使用方实机复验**。
442
+ 原 `startupInput` 仍独立控制首次写入;核验 native ID 不表示输入初始化完成。
443
+
314
444
  ### 管理员恢复诊断(1.4.305)
315
445
 
316
446
  `capabilities.session_restore_diagnostics=true` 表示服务支持持久恢复诊断。
@@ -336,13 +466,18 @@ no-op restore 不创建新检查。报告跟随会话保存并可在服务重启
336
466
  每个阻塞候选含 `session_id / backend_session_id / backend_attached`、
337
467
  `tmux_session_name / tmux_session_id / pane_id / pane_pid`、`program / process_source`、
338
468
  `arguments_observed / agent_slug / last_known_native_id / observed_native_id`、
339
- `pgid / tpgid / reason / observed_at`;无法观测的值为 null。backend 不存在或仅有旧
469
+ `pgid / tpgid / reason / observed_at`;306 另含真实前台 `process_pid` 及
470
+ `native_identity_source`(argv / linux-flock-owner / null)。无法观测的值为 null。backend 不存在或仅有旧
340
471
  登记仍可通过 tmux 核验;`pane_pid` 是承载 pane 的 PID,不冒充 Agent 前台 PID。
341
472
  报告最多保存 128 个阻塞候选;`total_blockers` 保留总数,确定的同 UUID 所有者优先展示。
342
473
 
343
474
  | reason | 实际证据缺口或冲突 |
344
475
  | --- | --- |
345
- | NATIVE_SESSION_MATCH | 当前前台进程明确携带目标 UUID |
476
+ | NATIVE_SESSION_MATCH | 当前前台进程的 argv 或完整持锁证据明确证明目标 UUID |
477
+ | NATIVE_SESSION_IDENTITY_CONFLICT | argv 与完整持锁证据指向不同 UUID |
478
+ | NATIVE_SESSION_IDENTITY_AMBIGUOUS | 当前进程持有多个可证明的原生 UUID |
479
+ | NATIVE_SESSION_PROCESS_CHANGED | 持锁检查间进程实例或所有权证据变化 |
480
+ | NATIVE_SESSION_OWNERSHIP_UNCONFIRMED | 当前打开了原生锁文件,但持锁/owner/inode 证据不能完整成立 |
346
481
  | NATIVE_SESSION_ID_MISSING | 当前同 Agent 的进程已观测,但没有可回读的精确 UUID |
347
482
  | PROCESS_ARGUMENTS_UNAVAILABLE | 无法取得可靠的当前进程 argv |
348
483
  | FOREGROUND_PROCESS_UNCONFIRMED | 无法可靠核验前台进程 |
@@ -383,9 +518,11 @@ no-op restore 不创建新检查。报告跟随会话保存并可在服务重启
383
518
  遗漏;维护机已用“旧 UUID C、实际运行 UUID A、无 PTY 附着”的真实隔离 tmux 复现,
384
519
  并验证 1.4.304 编译后检查在该状态下拒绝再次启动。
385
520
  使用方已报告 1.4.304 在未挂接网页/PTY、旧登记 UUID C 而实际运行 A 的场景下,
386
- 正确拒绝同 UUID 恢复且没有第二个进程。所有者退出后仍有未确认候选,不能仅凭
387
- 错误码判断是哪一个 pane;1.4.305 提供管理员持久诊断,并保持原拒绝条件。
388
- **1.4.305 的真实 TraeX 阻塞候选诊断与稳定输入条件仍须使用方实机复验**。
521
+ 正确拒绝同 UUID 恢复且没有第二个进程。1.4.305 实机诊断已定位四个同 Agent
522
+ 无 argv UUID 的候选,另一个候选主进程直接 exec 为 pane PID。使用方提供了当前
523
+ PID/start_id、实际 FD/inode 与内核 flock 一致的私有原生所有权证据;1.4.306 提供
524
+ 上述可选通用插件声明,未修改私有 Agent 或放宽未确认保护。
525
+ **1.4.306 的私有 TraeX 持锁身份接入与稳定输入条件仍须使用方实机复验**。
389
526
  回读 capabilities 后,应核对原 TD ID、真实 TraeX UUID 与原 argv/cwd/包装器快照,
390
527
  并验证 Agent 真正加载原对话。
391
528
  先完成测试环境的创建→追问→关联答复,再验重复键、追加咨询、断线重投和精确恢复。
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "termdock",
3
- "version": "1.4.305",
3
+ "version": "1.4.307",
4
4
  "description": "A complete web-based terminal application with modern UI",
5
5
  "type": "module",
6
6
  "main": ".desktop-dist/main.js",
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "packageName": "termdock",
4
- "version": "1.4.305",
4
+ "version": "1.4.307",
5
5
  "runtimeProtocolVersion": 1,
6
6
  "minimumDesktopVersion": "1.4.46",
7
7
  "nodeMajor": 22,
8
8
  "dependencyHash": "sha256-E9GDa4nrCXADRXdyPKufusZt6IcCr4m2mGdx5h34KMQ=",
9
- "serverBundleHash": "sha256-XkM6+bMn6xdVpuXe8oaPunofP3J+MgVfh7lwiOhSY4I=",
10
- "clientBundleHash": "sha256-HOoNMOYhnph9XwUhSYE5W2CdI9Vb4g0c64ubW49LnXE=",
9
+ "serverBundleHash": "sha256-SmxpQ63ErP59HLeERjJ0euDs74G6un227eMPe9/sAEI=",
10
+ "clientBundleHash": "sha256-dfDbp6qzSoUEczQc0mFdVx2jNb+7Oabm+ZvcTpBThnw=",
11
11
  "entrypoint": "dist/server/cli.js",
12
12
  "clientEntrypoint": "dist/client/index.html"
13
13
  }
@@ -1,2 +0,0 @@
1
- import{bv as r}from"./app-D6vN8PW-.js";import{b as m}from"./dnd-BCFAPC0L.js";import{b as n}from"./RightSidebar-CcMSU1v8.js";import"./react-XDCjal2T.js";import"./terminal-C7X98Amf.js";import"./App-BziVLy1b.js";import"./gestureArbiter-CXYHfU__.js";import"./triangle-alert-DzV0gQXz.js";import"./referenceLongPress-Df8W2cyP.js";import"./DiffReview-DjG9vCpH.js";import"./sparkles-DOuEtn62.js";import"./DiffViewer-6n3tgsdc.js";import"./ChangeWalkthroughPanel-00oa0z6w.js";function v({content:o}){const e=m.useMemo(()=>n(o.split(`
2
- `),null,null),[o]);return r.jsx("div",{className:"min-w-0 space-y-3 break-words text-sm leading-6 text-foreground [&_h1]:text-lg [&_h2]:text-base [&_h3]:text-sm [&_pre]:max-w-full [&_table]:text-xs",children:e.map((t,i)=>r.jsx("div",{className:"min-w-0",children:typeof t.content=="function"?t.content(null):t.content},i))})}export{v as default};
@@ -1 +0,0 @@
1
- import{c as a,C as n}from"./mermaid.core-DM6Rlal9.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c};
@@ -1 +0,0 @@
1
- import{s as a,a as s,c as t,C as e}from"./chunk-TICWLB2K-BKaW9Z9i.js";import{d as i}from"./mermaid.core-DM6Rlal9.js";import"./chunk-5VM5RSS4-Bi4Hc8yL.js";import"./chunk-XXDRQBXY-DcHZ_FHb.js";import"./chunk-POPQ4Y6H-BRzm6Uzi.js";import"./chunk-F27PBJKO-DvVWvQEk.js";import"./purify.es-4eNOHKSq.js";import"./app-D6vN8PW-.js";import"./react-XDCjal2T.js";import"./dnd-BCFAPC0L.js";import"./terminal-C7X98Amf.js";var g={parser:t,get db(){return new e},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{g as diagram};
@@ -1 +0,0 @@
1
- import{s as a,a as s,c as t,C as e}from"./chunk-TICWLB2K-BKaW9Z9i.js";import{d as i}from"./mermaid.core-DM6Rlal9.js";import"./chunk-5VM5RSS4-Bi4Hc8yL.js";import"./chunk-XXDRQBXY-DcHZ_FHb.js";import"./chunk-POPQ4Y6H-BRzm6Uzi.js";import"./chunk-F27PBJKO-DvVWvQEk.js";import"./purify.es-4eNOHKSq.js";import"./app-D6vN8PW-.js";import"./react-XDCjal2T.js";import"./dnd-BCFAPC0L.js";import"./terminal-C7X98Amf.js";var g={parser:t,get db(){return new e},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{g as diagram};
@@ -1 +0,0 @@
1
- import{b as r,a as e,s as a,S as i}from"./chunk-IMKFNOWR-BnwQLR5S.js";import{d as s}from"./mermaid.core-DM6Rlal9.js";import"./chunk-XXDRQBXY-DcHZ_FHb.js";import"./chunk-POPQ4Y6H-BRzm6Uzi.js";import"./chunk-F27PBJKO-DvVWvQEk.js";import"./purify.es-4eNOHKSq.js";import"./app-D6vN8PW-.js";import"./react-XDCjal2T.js";import"./dnd-BCFAPC0L.js";import"./terminal-C7X98Amf.js";var g={parser:a,get db(){return new i(2)},renderer:e,styles:r,init:s(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")};export{g as diagram};
@@ -1,8 +0,0 @@
1
- import{c as r,s as e}from"./flowDiagram-HODETNUW-B8ZF1bwr.js";import{d as o}from"./mermaid.core-DM6Rlal9.js";import"./chunk-5VM5RSS4-Bi4Hc8yL.js";import"./chunk-XXDRQBXY-DcHZ_FHb.js";import"./chunk-POPQ4Y6H-BRzm6Uzi.js";import"./chunk-F27PBJKO-DvVWvQEk.js";import"./purify.es-4eNOHKSq.js";import"./channel-CBc8-n7y.js";import"./app-D6vN8PW-.js";import"./react-XDCjal2T.js";import"./dnd-BCFAPC0L.js";import"./terminal-C7X98Amf.js";var a=o(t=>`${e(t)}
2
- .swimlane.cluster rect {
3
- stroke: ${t.clusterBorder} !important;
4
- }
5
- [data-look="neo"].cluster rect {
6
- filter: none;
7
- }
8
- `,"getStyles"),m=a,v=r({defaultLayout:"swimlane",styles:m});export{v as diagram};