@sentropic/h2a-runtime 0.98.6 → 0.98.7-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/dist/agent-launch-args.d.ts.map +1 -1
  2. package/dist/agent-launch-args.js +5 -5
  3. package/dist/agent-launch-args.js.map +1 -1
  4. package/dist/agy-claude.d.ts +2 -0
  5. package/dist/agy-claude.d.ts.map +1 -0
  6. package/dist/agy-claude.js +3 -0
  7. package/dist/agy-claude.js.map +1 -0
  8. package/dist/agy-headless.d.ts +11 -0
  9. package/dist/agy-headless.d.ts.map +1 -0
  10. package/dist/agy-headless.js +104 -0
  11. package/dist/agy-headless.js.map +1 -0
  12. package/dist/attach.d.ts +2 -0
  13. package/dist/attach.d.ts.map +1 -1
  14. package/dist/attach.js +73 -6
  15. package/dist/attach.js.map +1 -1
  16. package/dist/auth-login.d.ts +24 -1
  17. package/dist/auth-login.d.ts.map +1 -1
  18. package/dist/auth-login.js +132 -4
  19. package/dist/auth-login.js.map +1 -1
  20. package/dist/central-mcp.d.ts +2 -0
  21. package/dist/central-mcp.d.ts.map +1 -1
  22. package/dist/central-mcp.js +90 -3
  23. package/dist/central-mcp.js.map +1 -1
  24. package/dist/claude-code-cli-isolation.d.ts +53 -0
  25. package/dist/claude-code-cli-isolation.d.ts.map +1 -0
  26. package/dist/claude-code-cli-isolation.js +277 -0
  27. package/dist/claude-code-cli-isolation.js.map +1 -0
  28. package/dist/claude-code-cli-lifecycle.d.ts +80 -0
  29. package/dist/claude-code-cli-lifecycle.d.ts.map +1 -0
  30. package/dist/claude-code-cli-lifecycle.js +402 -0
  31. package/dist/claude-code-cli-lifecycle.js.map +1 -0
  32. package/dist/claude-code-cli-runner.d.ts +89 -0
  33. package/dist/claude-code-cli-runner.d.ts.map +1 -0
  34. package/dist/claude-code-cli-runner.js +659 -0
  35. package/dist/claude-code-cli-runner.js.map +1 -0
  36. package/dist/claude-seat-input.d.ts +47 -0
  37. package/dist/claude-seat-input.d.ts.map +1 -0
  38. package/dist/claude-seat-input.js +272 -0
  39. package/dist/claude-seat-input.js.map +1 -0
  40. package/dist/claude-seat-mesh-contract.d.ts +88 -0
  41. package/dist/claude-seat-mesh-contract.d.ts.map +1 -0
  42. package/dist/claude-seat-mesh-contract.js +13 -0
  43. package/dist/claude-seat-mesh-contract.js.map +1 -0
  44. package/dist/cli-help-groups.js +1 -1
  45. package/dist/cli-help-groups.js.map +1 -1
  46. package/dist/crash-log.d.ts +112 -0
  47. package/dist/crash-log.d.ts.map +1 -0
  48. package/dist/crash-log.js +560 -0
  49. package/dist/crash-log.js.map +1 -0
  50. package/dist/delegate.d.ts +10 -0
  51. package/dist/delegate.d.ts.map +1 -1
  52. package/dist/delegate.js +29 -0
  53. package/dist/delegate.js.map +1 -1
  54. package/dist/gateway-host/claude-seat-client.d.ts +32 -0
  55. package/dist/gateway-host/claude-seat-client.d.ts.map +1 -0
  56. package/dist/gateway-host/claude-seat-client.js +38 -0
  57. package/dist/gateway-host/claude-seat-client.js.map +1 -0
  58. package/dist/gateway-host/host.d.ts +6 -0
  59. package/dist/gateway-host/host.d.ts.map +1 -1
  60. package/dist/gateway-host/host.js +24 -3
  61. package/dist/gateway-host/host.js.map +1 -1
  62. package/dist/gateway-host/live-declarations.d.ts +58 -0
  63. package/dist/gateway-host/live-declarations.d.ts.map +1 -0
  64. package/dist/gateway-host/live-declarations.js +429 -0
  65. package/dist/gateway-host/live-declarations.js.map +1 -0
  66. package/dist/gateway-host/live-github.d.ts +11 -0
  67. package/dist/gateway-host/live-github.d.ts.map +1 -0
  68. package/dist/gateway-host/live-github.js +374 -0
  69. package/dist/gateway-host/live-github.js.map +1 -0
  70. package/dist/gateway-host/live-object-store.d.ts +35 -0
  71. package/dist/gateway-host/live-object-store.d.ts.map +1 -0
  72. package/dist/gateway-host/live-object-store.js +447 -0
  73. package/dist/gateway-host/live-object-store.js.map +1 -0
  74. package/dist/gateway-host/live-registration.d.ts +162 -0
  75. package/dist/gateway-host/live-registration.d.ts.map +1 -0
  76. package/dist/gateway-host/live-registration.js +455 -0
  77. package/dist/gateway-host/live-registration.js.map +1 -0
  78. package/dist/index.d.ts.map +1 -1
  79. package/dist/index.js +290 -23
  80. package/dist/index.js.map +1 -1
  81. package/dist/llm-mesh-accounts.d.ts +70 -4
  82. package/dist/llm-mesh-accounts.d.ts.map +1 -1
  83. package/dist/llm-mesh-accounts.js +296 -9
  84. package/dist/llm-mesh-accounts.js.map +1 -1
  85. package/dist/native-host.d.ts +1 -1
  86. package/dist/native-host.d.ts.map +1 -1
  87. package/dist/native-host.js +30 -17
  88. package/dist/native-host.js.map +1 -1
  89. package/dist/native-terminal/host.d.ts +6 -1
  90. package/dist/native-terminal/host.d.ts.map +1 -1
  91. package/dist/native-terminal/host.js +6 -25
  92. package/dist/native-terminal/host.js.map +1 -1
  93. package/dist/native-terminal/journal.d.ts +5 -0
  94. package/dist/native-terminal/journal.d.ts.map +1 -1
  95. package/dist/native-terminal/journal.js +28 -16
  96. package/dist/native-terminal/journal.js.map +1 -1
  97. package/dist/native-terminal/op.d.ts +13 -0
  98. package/dist/native-terminal/op.d.ts.map +1 -1
  99. package/dist/native-terminal/op.js +64 -5
  100. package/dist/native-terminal/op.js.map +1 -1
  101. package/dist/proc-identity.d.ts +31 -0
  102. package/dist/proc-identity.d.ts.map +1 -1
  103. package/dist/proc-identity.js +54 -0
  104. package/dist/proc-identity.js.map +1 -1
  105. package/dist/prompt-delivery.d.ts +3 -0
  106. package/dist/prompt-delivery.d.ts.map +1 -1
  107. package/dist/prompt-delivery.js +8 -3
  108. package/dist/prompt-delivery.js.map +1 -1
  109. package/dist/run.d.ts.map +1 -1
  110. package/dist/run.js +79 -16
  111. package/dist/run.js.map +1 -1
  112. package/dist/terminal-reset.d.ts +104 -0
  113. package/dist/terminal-reset.d.ts.map +1 -0
  114. package/dist/terminal-reset.js +229 -0
  115. package/dist/terminal-reset.js.map +1 -0
  116. package/dist/tmux.d.ts +26 -4
  117. package/dist/tmux.d.ts.map +1 -1
  118. package/dist/tmux.js +60 -25
  119. package/dist/tmux.js.map +1 -1
  120. package/dist/vendor/engram-live/contracts.d.ts +825 -0
  121. package/dist/vendor/engram-live/contracts.js +1734 -0
  122. package/dist/vendor/engram-live/integration.d.ts +113 -0
  123. package/dist/vendor/engram-live/integration.js +254 -0
  124. package/dist/vendor/engram-live/pr-sync.d.ts +144 -0
  125. package/dist/vendor/engram-live/pr-sync.js +411 -0
  126. package/dist/vendor/engram-live/registration.d.ts +138 -0
  127. package/dist/vendor/engram-live/registration.js +358 -0
  128. package/dist/vendor/engram-live/retention.d.ts +56 -0
  129. package/dist/vendor/engram-live/retention.js +179 -0
  130. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-code-cli-runner.js","sourceRoot":"","sources":["../src/claude-code-cli-runner.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAStE,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,oBAAoB,GACrB,MAAM,gCAAgC,CAAC;AAExC;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,SAAiB;IAChD,IAAI,CAAC;QACH,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QACtC,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,2BAA2B,CACzC,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACjC,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IACjC,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACtE,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QACvC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,SAAS,SAAS,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC;gBACH,IAAI,uBAAuB,CAAC,SAAS,CAAC;oBAAE,OAAO,SAAS,CAAC;YAC3D,CAAC;YAAC,MAAM,CAAC;gBACP,sDAAsD;YACxD,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC,CAAC,SAAS;AACvD,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,SAAS;AAClE,MAAM,CAAC,MAAM,uBAAuB,GAAG,OAAO,CAAC,CAAC,YAAY;AAE5D;;;GAGG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAsB,EAAW,CAAC;AAE7E;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IACvC,MAAM;IACN,YAAY;IACZ,MAAM;IACN,WAAW;IACX,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,UAAU;IACV,WAAW;IACX,OAAO;IACP,OAAO;IACP,WAAW;IACX,cAAc;IACd,WAAW;IACX,cAAc;CACf,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,IAAI,GAAG,CAAC;IACnD,QAAQ;IACR,kBAAkB;IAClB,kBAAkB;IAClB,MAAM;IACN,aAAa;IACb,YAAY;IACZ,iBAAiB;CAClB,CAAC,CAAC;AAwBH,MAAM,OAAO,2BAA2B;IACrB,UAAU,CAAS;IACnB,YAAY,CAAwC;IACpD,aAAa,CAAS;IACtB,aAAa,CAAS;IACtB,SAAS,CAAS;IAClB,OAAO,CAAe;IACtB,GAAG,CAAe;IAClB,cAAc,CAAqB;IACnC,eAAe,CAAgC;IAC/C,iBAAiB,CAA+D;IAChF,iBAAiB,CAEpB;IAEd,YAAY,UAA8C,EAAE;QAC1D,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,uBAAuB,CAAC;QACtE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,uBAAuB,CAAC;QACtE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,uBAAuB,CAAC;QAC9D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;QACxC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;QAC7C,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;QACnD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IACrD,CAAC;IAED;;;;;;OAMG;IACK,aAAa;QACnB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,IAAI,2BAA2B,EAAE,IAAI,EAAE,CAAC;QACzE,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;QAC7F,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;QAC7E,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACK,aAAa;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,KAAK,4BAA4B,EAAE,CAAC;YACtF,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,GAAG,CAAC,KAIH;QACC,MAAM,aAAa,GAAG,IAAI,eAAe,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QACjD,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QAExC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAC3E,MAAM,QAAQ,GAAsD;YAClE,CAAC,MAAM,CAAC,aAAa,CAAC;gBACpB,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI;gBACF,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;YACpB,CAAC;YACD,MAAM,CAAC,GAAa;gBAClB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC5B,aAAa,CAAC,KAAK,EAAE,CAAC;gBACtB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAY,CAAC,CAAC;YAClC,CAAC;YACD,KAAK,CAAC,GAAa;gBACjB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;gBAC5B,aAAa,CAAC,KAAK,EAAE,CAAC;gBACtB,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC;SACF,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,CAAC,WAAW,CACxB,KAIC,EACD,aAA8B,EAC9B,YAAwB,EACxB,QAAkC;QAElC,uCAAuC;QACvC,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,yDAAyD;QACzD,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,yFAAyF;QACzF,wEAAwE;QACxE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACpC,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClC,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;gBAClG,CAAC;YACH,CAAC;YACD,MAAM,IAAI,KAAK,CACb,8HAA8H,CAC/H,CAAC;QACJ,CAAC;QAED,oEAAoE;QACpE,kEAAkE;QAClE,sCAAsC;QACtC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,cAAc,EAAE;gBAClE,eAAe,EAAE,CAAC,QAAQ,EAAE,EAAE;oBAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,wCAAwC,QAAQ,CAAC,QAAQ,OAAO,QAAQ,CAAC,MAAM,aAAa,QAAQ,CAAC,MAAM,IAAI,CAChH,CAAC;gBACJ,CAAC;aACF,CAAC,CAAC;YACH,IAAI,WAAW,CAAC,oBAAoB,EAAE,CAAC;gBACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,iCAAiC,WAAW,CAAC,oBAAoB,+BAA+B,CACjG,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,mCAAmC;QACrC,CAAC;QAED,8BAA8B;QAC9B,MAAM,SAAS,GAAG,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YACxB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,6BAA6B;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,sBAAsB,CAAC;YACrC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE;YACzD,UAAU;SACX,CAAC,CAAC;QAEH,mEAAmE;QACnE,kEAAkE;QAClE,gEAAgE;QAChE,qEAAqE;QACrE,qBAAqB;QACrB,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/F,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,IAAI,GAAG;YACX,IAAI;YACJ,gBAAgB,EAAE,aAAa;YAC/B,iBAAiB,EAAE,aAAa;YAChC,WAAW;YACX,0BAA0B;YAC1B,mBAAmB,EAAE,EAAE;YACvB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,qBAAqB;YACrB,cAAc,EAAE,OAAO,CAAC,aAAa;YACrC,SAAS,EAAE,QAAQ;YACnB,0BAA0B;YAC1B,mBAAmB,EAAE,SAAS;YAC9B,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO;SACjC,CAAC;QAEF,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,qBAAqB,GAAG,KAAK,CAAC;QAClC,IAAI,YAAY,GAAG,KAAK,CAAC;QAEzB,IAAI,UAAU,GAAwB,IAAI,CAAC;QAE3C,0EAA0E;QAC1E,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACzD,aAAa,CAAC,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC;gBAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;YAChD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,IAAI,YAAY,GAA0B,IAAI,CAAC;QAC/C,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1D,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC7B,aAAa,CAAC,KAAK,EAAE,CAAC;YACxB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACrB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE;gBAC3C,GAAG,EAAE,OAAO,CAAC,MAAM;gBACnB,GAAG;gBACH,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YAEH,QAAQ,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBACxB,OAAO;YACT,CAAC;YACD,uBAAuB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAE3C,kEAAkE;YAClE,uDAAuD;YACvD,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;gBACzC,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC;gBAC5B,IAAI,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;oBACrC,IAAI,CAAC;wBACH,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxB,CAAC;oBAAC,MAAM,CAAC;wBACP,+CAA+C;oBACjD,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;YAGH,MAAM,KAAK,GAAgB,EAAE,CAAC;YAC9B,IAAI,UAAU,GAAwB,IAAI,CAAC;YAE3C,MAAM,SAAS,GAAG,CAAC,IAAe,EAAE,EAAE;gBACpC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,EAAE,GAAG,UAAU,CAAC;oBACtB,UAAU,GAAG,IAAI,CAAC;oBAClB,EAAE,EAAE,CAAC;gBACP,CAAC;YACH,CAAC,CAAC;YAEF,sEAAsE;YACtE,iEAAiE;YACjE,MAAM,aAAa,GAAG,GAAG,EAAE;gBACzB,IAAI,IAAI,CAAC,iBAAiB,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;oBAC3C,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oBAC5C,IAAI,CAAC;wBACH,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxB,CAAC;oBAAC,MAAM,CAAC;wBACP,eAAe;oBACjB,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;oBACjB,IAAI,CAAC;wBACH,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;wBACnC,OAAO;oBACT,CAAC;oBAAC,MAAM,CAAC;wBACP,8DAA8D;oBAChE,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC;oBACH,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxB,CAAC;gBAAC,MAAM,CAAC;oBACP,+CAA+C;gBACjD,CAAC;YACH,CAAC,CAAC;YACF,UAAU,GAAG,GAAG,EAAE;gBAChB,aAAa,EAAE,CAAC;gBAChB,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,IAAI,GAAG,UAAU,CAAC;oBACxB,UAAU,GAAG,IAAI,CAAC;oBAClB,IAAI,EAAE,CAAC;gBACT,CAAC;YACH,CAAC,CAAC;YACF,aAAa,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAE3D,qEAAqE;YACrE,wEAAwE;YACxE,mEAAmE;YACnE,sDAAsD;YACtD,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC;gBACjE,KAAK,CAAC,KAAK,EAAE,KAAK,CAChB,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,IAAI,CACnF,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;YAEnB,qBAAqB;YACrB,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,IAAI,kBAAkB,GAAG,CAAC,CAAC;YAC3B,IAAI,aAAa,GAA8B,IAAI,CAAC;YACpD,IAAI,YAAY,GAAG,KAAK,CAAC;YACzB,IAAI,WAAW,GAAG,KAAK,CAAC;YACxB,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAsD,CAAC;YACxF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;YAE7C,+DAA+D;YAC/D,uEAAuE;YACvE,oEAAoE;YACpE,qEAAqE;YACrE,sEAAsE;YACtE,sEAAsE;YACtE,6DAA6D;YAC7D,MAAM,SAAS,GAAG,GAAG,EAAE;gBACrB,YAAY,GAAG,IAAI,CAAC;gBACpB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC;YAEF,MAAM,qBAAqB,GAAG,CAAC,OAAgB,EAAE,EAAE;gBACjD,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;oBAAE,OAAO,SAAS,EAAE,CAAC;gBAChE,MAAM,OAAO,GAAI,OAAiC,CAAC,OAAO,CAAC;gBAC3D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;oBAAE,OAAO,SAAS,EAAE,CAAC;gBAChD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC5B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;wBAAE,OAAO,SAAS,EAAE,CAAC;oBAC5D,MAAM,KAAK,GAAG,KAA0F,CAAC;oBACzG,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC5D,IAAI,KAAK,CAAC,IAAI;4BAAE,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACjF,CAAC;yBAAM,IACL,KAAK,CAAC,IAAI,KAAK,UAAU;wBACzB,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ;wBAC5B,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAC9B,CAAC;wBACD,WAAW,GAAG,IAAI,CAAC;wBACnB,SAAS,CAAC;4BACR,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE;yBACtF,CAAC,CAAC;oBACL,CAAC;yBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;wBAC3E,wCAAwC;oBAC1C,CAAC;yBAAM,CAAC;wBACN,OAAO,SAAS,EAAE,CAAC;oBACrB,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YAEF,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAE,EAAE;gBAC1C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;oBAAE,OAAO,SAAS,EAAE,CAAC;gBAC5D,MAAM,KAAK,GAAG,KAAsF,CAAC;gBACrG,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;oBACzC,MAAM,KAAK,GAAG,KAAK,CAAC,KAA+E,CAAC;oBACpG,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;wBAAE,OAAO;oBACrD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAClE,IAAI,KAAK,CAAC,IAAI;4BAAE,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACjF,CAAC;yBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;wBACvF,MAAM,IAAI,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBAC1C,IAAI,IAAI;4BAAE,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,YAAY,CAAC;oBAC5C,CAAC;oBACD,kEAAkE;oBAClE,oCAAoC;gBACtC,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;oBAChD,MAAM,KAAK,GAAG,KAAK,CAAC,aAA6E,CAAC;oBAClG,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,GAAG,CAAC;wBAAE,OAAO;oBAClE,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBAClC,IACE,KAAK,CAAC,IAAI,KAAK,UAAU;wBACzB,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ;wBAC5B,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAC9B,CAAC;wBACD,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC7E,CAAC;gBACH,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;oBAC/C,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjE,MAAM,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBACnE,IAAI,IAAI,EAAE,CAAC;wBACT,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBAChC,iEAAiE;wBACjE,4DAA4D;wBAC5D,8CAA8C;wBAC9C,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;4BACd,IAAI,MAAe,CAAC;4BACpB,IAAI,CAAC;gCACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BACjC,CAAC;4BAAC,MAAM,CAAC;gCACP,OAAO,SAAS,EAAE,CAAC;4BACrB,CAAC;4BACD,WAAW,GAAG,IAAI,CAAC;4BACnB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;wBAC1F,CAAC;oBACH,CAAC;oBACD,IAAI,KAAK,IAAI,CAAC;wBAAE,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3C,CAAC;qBAAM,IACL,KAAK,CAAC,IAAI,KAAK,eAAe;oBAC9B,KAAK,CAAC,IAAI,KAAK,eAAe;oBAC9B,KAAK,CAAC,IAAI,KAAK,cAAc,EAC7B,CAAC;oBACD,4DAA4D;oBAC5D,uDAAuD;gBACzD,CAAC;gBACD,kEAAkE;gBAClE,gEAAgE;YAClE,CAAC,CAAC;YAEF,MAAM,WAAW,GAAG,CAAC,KAAiE,EAAE,EAAE;gBACxF,IAAI,YAAY;oBAAE,OAAO,SAAS,EAAE,CAAC;gBACrC,YAAY,GAAG,IAAI,CAAC;gBACpB,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;oBAC3D,OAAO,SAAS,EAAE,CAAC;gBACrB,CAAC;gBACD,IAAI,KAAkE,CAAC;gBACvE,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC9B,MAAM,GAAG,GAAG,KAAK,CAAC,KAA4D,CAAC;oBAC/E,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;wBAAE,OAAO,SAAS,EAAE,CAAC;oBACxD,KAAK,GAAG,EAAE,CAAC;oBACX,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;wBAAE,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,YAAY,CAAC;oBAC/E,IAAI,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ;wBAAE,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC,aAAa,CAAC;oBAClF,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,SAAS,EAAE,CAAC;gBAC1D,CAAC;gBACD,iEAAiE;gBACjE,aAAa,GAAG;oBACd,IAAI,EAAE,QAAQ;oBACd,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM;oBACjD,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC5B,CAAC;YACJ,CAAC,CAAC;YAEF,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE;gBACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC5B,IAAI,CAAC,OAAO;oBAAE,OAAO;gBACrB,IAAI,KAAc,CAAC;gBACnB,IAAI,CAAC;oBACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC9B,CAAC;gBAAC,MAAM,CAAC;oBACP,0BAA0B;oBAC1B,SAAS,EAAE,CAAC;oBACZ,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACxC,SAAS,EAAE,CAAC;oBACZ,OAAO;gBACT,CAAC;gBACD,MAAM,KAAK,GAAG,KAA+D,CAAC;gBAC9E,IAAI,YAAY,EAAE,CAAC;oBACjB,2DAA2D;oBAC3D,SAAS,EAAE,CAAC;oBACZ,OAAO;gBACT,CAAC;gBACD,IAAI,6BAA6B,CAAC,GAAG,CAAC,KAAK,CAAC,IAAc,CAAC,EAAE,CAAC;oBAC5D,sEAAsE;oBACtE,OAAO;gBACT,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBACtC,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACvC,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;oBACzC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACnC,WAAW,CAAC,KAAmE,CAAC,CAAC;gBACnF,CAAC;qBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAClC,SAAS,EAAE,CAAC;gBACd,CAAC;qBAAM,CAAC;oBACN,qEAAqE;oBACrE,SAAS,EAAE,CAAC;gBACd,CAAC;YACH,CAAC,CAAC;YAEF,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;gBACzC,kBAAkB,IAAI,KAAK,CAAC,MAAM,CAAC;gBACnC,IAAI,kBAAkB,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;oBAC5C,YAAY,GAAG,IAAI,CAAC;oBACpB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;oBACxC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACtB,OAAO;gBACT,CAAC;gBAED,YAAY,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACvC,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACvC,YAAY,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;gBAEjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;wBACzD,YAAY,GAAG,IAAI,CAAC;wBACpB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;wBACxC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBACtB,OAAO;oBACT,CAAC;oBACD,SAAS,CAAC,IAAI,CAAC,CAAC;gBAClB,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBACrB,YAAY,GAAG,IAAI,CAAC;gBACpB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACnC,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;oBACxB,SAAS,CAAC,YAAY,CAAC,CAAC;gBAC1B,CAAC;gBAED,qEAAqE;gBACrE,MAAM,gBAAgB,GAAG,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC7E,IAAI,SAAS,GAAG,IAAI,CAAC;gBACrB,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;oBACjB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;wBAC3B,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;oBACxD,CAAC;yBAAM,CAAC;wBACN,MAAM,eAAe,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC;oBACH,qBAAqB,CAAC,OAAO,CAAC,CAAC;gBACjC,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS,GAAG,KAAK,CAAC;gBACpB,CAAC;gBACD,MAAM,aAAa,GACjB,QAAQ,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,aAAa,KAAK,IAAI,IAAI,SAAS,CAAC;gBAEzE,IAAI,aAAa,IAAI,gBAAgB,IAAI,aAAa,EAAE,CAAC;oBACvD,SAAS,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;oBACpC,qBAAqB,GAAG,IAAI,CAAC;gBAC/B,CAAC;qBAAM,IAAI,CAAC,qBAAqB,IAAI,CAAC,YAAY,EAAE,CAAC;oBACnD,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC1C,CAAC;gBACD,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,0BAA0B;YAC1B,OAAO,IAAI,EAAE,CAAC;gBACZ,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;oBACzB,OAAO;gBACT,CAAC;gBACD,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;oBACxB,OAAO;gBACT,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,MAAM,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE;wBAC5B,UAAU,GAAG,CAAC,CAAC;wBACf,wDAAwD;wBACxD,IAAI,aAAa,CAAC,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;4BACzD,UAAU,GAAG,IAAI,CAAC;4BAClB,CAAC,EAAE,CAAC;wBACN,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;oBAC5B,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;wBACnB,OAAO;oBACT,CAAC;oBACD,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;wBACpB,MAAM,IAAI,CAAC,KAAK,CAAC;wBACjB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BAChE,OAAO;wBACT,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,YAAY,EAAE,CAAC;gBACjB,YAAY,CAAC,YAAY,CAAC,CAAC;YAC7B,CAAC;YACD,KAAK,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YACxD,IAAI,UAAU,EAAE,CAAC;gBACf,aAAa,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAChE,CAAC;YACD,aAAa,CAAC,KAAK,EAAE,CAAC;YACtB,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACjB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC3B,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;gBAC9C,CAAC;gBACD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC3B,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;gBACxD,CAAC;qBAAM,CAAC;oBACN,MAAM,eAAe,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;YACD,IAAI,CAAC;gBACH,qBAAqB,CAAC,OAAO,CAAC,CAAC;YACjC,CAAC;YAAC,MAAM,CAAC;gBACP,+EAA+E;YACjF,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Trusted local input boundary for Claude seat credentials: masked TTY
3
+ * entry (echo, history and external capture disabled; terminal state
4
+ * restored on exit), or a non-TTY pipe carrying secret-manager output.
5
+ * No secret-bearing argv/env/MCP interfaces or filesystem discovery.
6
+ * Nothing here ever logs or prints the entered secret value.
7
+ */
8
+ import type { Readable, Writable } from "node:stream";
9
+ export declare const MAX_CLAUDE_INPUT_BYTES = 65536;
10
+ export declare const DEFAULT_CLAUDE_INPUT_TIMEOUT_MS: number;
11
+ export interface ClaudeSeatInputOptions {
12
+ readonly stdin?: Readable & {
13
+ isTTY?: boolean;
14
+ setRawMode?: (mode: boolean) => void;
15
+ };
16
+ readonly stdout?: Writable & {
17
+ isTTY?: boolean;
18
+ };
19
+ readonly timeoutMs?: number;
20
+ readonly maxBytes?: number;
21
+ readonly multiline?: boolean;
22
+ }
23
+ export declare class ClaudeSeatInputError extends Error {
24
+ readonly code: string;
25
+ constructor(message: string, code?: string);
26
+ }
27
+ /**
28
+ * Read masked input from a trusted local TTY without terminal echo or command history.
29
+ * Never logs or prints the entered secret value.
30
+ */
31
+ export declare function readMaskedInput(prompt: string, options?: ClaudeSeatInputOptions): Promise<string>;
32
+ export interface ClaudeSeatPipedInputOptions {
33
+ readonly stdin?: Readable & {
34
+ isTTY?: boolean;
35
+ };
36
+ readonly timeoutMs?: number;
37
+ readonly maxBytes?: number;
38
+ }
39
+ /**
40
+ * Read a serialized credential piped on stdin (secret-manager output
41
+ * redirected into the enroll command). The pipe must already be non-TTY:
42
+ * a TTY stdin means an interactive owner is present and the masked prompt
43
+ * applies instead. Content is bounded, never echoed, never logged; only
44
+ * static errors leave this function.
45
+ */
46
+ export declare function readPipedCredentialInput(options?: ClaudeSeatPipedInputOptions): Promise<string>;
47
+ //# sourceMappingURL=claude-seat-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-seat-input.d.ts","sourceRoot":"","sources":["../src/claude-seat-input.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEtD,eAAO,MAAM,sBAAsB,QAAQ,CAAC;AAC5C,eAAO,MAAM,+BAA+B,QAAiB,CAAC;AAE9D,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG;QAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;KACtC,CAAC;IACF,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG;QAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;IACF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBACV,OAAO,EAAE,MAAM,EAAE,IAAI,SAAgB;CAKlD;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,MAAM,CAAC,CAiPjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,GAAG;QAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;IACF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,MAAM,CAAC,CAuFjB"}
@@ -0,0 +1,272 @@
1
+ export const MAX_CLAUDE_INPUT_BYTES = 65536; // 64 KiB UTF-8
2
+ export const DEFAULT_CLAUDE_INPUT_TIMEOUT_MS = 15 * 60 * 1000; // 15 minutes
3
+ export class ClaudeSeatInputError extends Error {
4
+ code;
5
+ constructor(message, code = "input_error") {
6
+ super(message);
7
+ this.name = "ClaudeSeatInputError";
8
+ this.code = code;
9
+ }
10
+ }
11
+ /**
12
+ * Read masked input from a trusted local TTY without terminal echo or command history.
13
+ * Never logs or prints the entered secret value.
14
+ */
15
+ export async function readMaskedInput(prompt, options = {}) {
16
+ const stdin = (options.stdin ?? process.stdin);
17
+ const stdout = (options.stdout ?? process.stdout);
18
+ // Safe noninteractive refusal: non-TTY environments cannot guarantee capture-free input
19
+ if (!stdin.isTTY) {
20
+ throw new ClaudeSeatInputError("trusted local terminal required for Claude credential entry", "non_tty");
21
+ }
22
+ const timeoutMs = options.timeoutMs ?? DEFAULT_CLAUDE_INPUT_TIMEOUT_MS;
23
+ const maxBytes = options.maxBytes ?? MAX_CLAUDE_INPUT_BYTES;
24
+ const multiline = options.multiline ?? false;
25
+ // Print prompt to terminal
26
+ if (prompt) {
27
+ stdout.write(prompt);
28
+ }
29
+ return new Promise((resolve, reject) => {
30
+ let resolved = false;
31
+ let timer = null;
32
+ let totalBytes = 0;
33
+ const chunks = [];
34
+ const wasRawMode = stdin.isRaw === true;
35
+ // Drop the last UTF-8 sequence from the accumulated content (Backspace
36
+ // 0x08 / DEL 0x7f): walk back over continuation bytes so a multibyte
37
+ // character is removed whole, never truncated mid-sequence.
38
+ const popLastCharBytes = () => {
39
+ const all = Buffer.concat(chunks);
40
+ if (all.length === 0)
41
+ return;
42
+ let end = all.length - 1;
43
+ while (end > 0) {
44
+ const byte = all[end] ?? 0;
45
+ if ((byte & 0xc0) !== 0x80)
46
+ break;
47
+ end--;
48
+ }
49
+ const next = Buffer.from(all.subarray(0, end));
50
+ chunks.length = 0;
51
+ if (next.length > 0)
52
+ chunks.push(next);
53
+ totalBytes = next.length;
54
+ };
55
+ const cleanup = () => {
56
+ if (timer) {
57
+ clearTimeout(timer);
58
+ timer = null;
59
+ }
60
+ try {
61
+ stdin.setRawMode?.(wasRawMode);
62
+ }
63
+ catch {
64
+ // Best-effort terminal mode restoration
65
+ }
66
+ try {
67
+ stdin.pause?.();
68
+ }
69
+ catch {
70
+ // Non-pausable stdin
71
+ }
72
+ stdin.removeListener("data", onData);
73
+ stdin.removeListener("end", onEnd);
74
+ stdin.removeListener("error", onError);
75
+ try {
76
+ stdout.write("\n");
77
+ }
78
+ catch {
79
+ // Output might be closed
80
+ }
81
+ };
82
+ const finish = (value) => {
83
+ if (resolved)
84
+ return;
85
+ resolved = true;
86
+ cleanup();
87
+ resolve(value);
88
+ };
89
+ const fail = (error) => {
90
+ if (resolved)
91
+ return;
92
+ resolved = true;
93
+ cleanup();
94
+ reject(error);
95
+ };
96
+ // Set raw mode to disable echo and line buffering
97
+ try {
98
+ stdin.setRawMode?.(true);
99
+ stdin.resume();
100
+ }
101
+ catch {
102
+ fail(new ClaudeSeatInputError("trusted local terminal required for Claude credential entry", "raw_mode_failed"));
103
+ return;
104
+ }
105
+ if (timeoutMs > 0 && Number.isFinite(timeoutMs)) {
106
+ timer = setTimeout(() => {
107
+ fail(new ClaudeSeatInputError("Claude credential entry timed out", "timeout"));
108
+ }, timeoutMs);
109
+ }
110
+ const onData = (chunk) => {
111
+ const buf = typeof chunk === "string" ? Buffer.from(chunk, "utf8") : chunk;
112
+ // Check for control characters: Ctrl-C (0x03)
113
+ for (let i = 0; i < buf.length; i++) {
114
+ if (buf[i] === 0x03) {
115
+ fail(new ClaudeSeatInputError("Claude enrollment cancelled", "cancelled"));
116
+ return;
117
+ }
118
+ }
119
+ // Apply content bytes and Backspace/DEL edits in arrival order so a
120
+ // correction deletes what precedes it, including multibyte characters.
121
+ for (const byte of buf) {
122
+ if (byte === 0x08 || byte === 0x7f) {
123
+ popLastCharBytes();
124
+ }
125
+ else {
126
+ chunks.push(Buffer.from([byte]));
127
+ totalBytes += 1;
128
+ }
129
+ }
130
+ if (totalBytes > maxBytes) {
131
+ fail(new ClaudeSeatInputError(`Claude credential input exceeded maximum allowed size (${Math.round(maxBytes / 1024)} KiB)`, "oversized"));
132
+ return;
133
+ }
134
+ const fullContent = Buffer.concat(chunks).toString("utf8");
135
+ // Check for Ctrl-D (0x04) in buffer
136
+ if (fullContent.includes("\u0004")) {
137
+ const withoutEof = fullContent.replace(/\u0004/g, "").trim();
138
+ if (!withoutEof) {
139
+ fail(new ClaudeSeatInputError("Claude credential entry received EOF", "eof"));
140
+ return;
141
+ }
142
+ finish(withoutEof);
143
+ return;
144
+ }
145
+ if (!multiline) {
146
+ // Single-line entry (e.g. code#state): Enter (\r or \n) completes
147
+ if (fullContent.includes("\r") || fullContent.includes("\n")) {
148
+ const line = (fullContent.split(/[\r\n]/)[0] ?? "").trim();
149
+ if (!line) {
150
+ fail(new ClaudeSeatInputError("Claude credential entry received empty input", "empty"));
151
+ return;
152
+ }
153
+ finish(line);
154
+ return;
155
+ }
156
+ }
157
+ else {
158
+ // Multiline JSON entry:
159
+ // If Enter is pressed, check if the buffer already forms a valid JSON object,
160
+ // or if a double newline / empty line was submitted.
161
+ if (fullContent.endsWith("\n") || fullContent.endsWith("\r")) {
162
+ const trimmed = fullContent.trim();
163
+ if (trimmed.startsWith("{") && trimmed.endsWith("}")) {
164
+ try {
165
+ const parsed = JSON.parse(trimmed);
166
+ if (parsed && typeof parsed === "object") {
167
+ finish(trimmed);
168
+ return;
169
+ }
170
+ }
171
+ catch {
172
+ // Keep accumulating
173
+ }
174
+ }
175
+ if (fullContent.endsWith("\n\n") || fullContent.endsWith("\r\n\r\n")) {
176
+ if (trimmed) {
177
+ finish(trimmed);
178
+ return;
179
+ }
180
+ }
181
+ }
182
+ }
183
+ };
184
+ const onEnd = () => {
185
+ const fullContent = Buffer.concat(chunks).toString("utf8").trim();
186
+ if (!fullContent) {
187
+ fail(new ClaudeSeatInputError("Claude credential entry received EOF", "eof"));
188
+ return;
189
+ }
190
+ finish(fullContent);
191
+ };
192
+ const onError = () => {
193
+ fail(new ClaudeSeatInputError("Claude credential entry input stream error", "stream_error"));
194
+ };
195
+ stdin.on("data", onData);
196
+ stdin.on("end", onEnd);
197
+ stdin.on("error", onError);
198
+ });
199
+ }
200
+ /**
201
+ * Read a serialized credential piped on stdin (secret-manager output
202
+ * redirected into the enroll command). The pipe must already be non-TTY:
203
+ * a TTY stdin means an interactive owner is present and the masked prompt
204
+ * applies instead. Content is bounded, never echoed, never logged; only
205
+ * static errors leave this function.
206
+ */
207
+ export async function readPipedCredentialInput(options = {}) {
208
+ const stdin = (options.stdin ?? process.stdin);
209
+ if (stdin.isTTY) {
210
+ throw new ClaudeSeatInputError("piped input required for Claude token entry (redirect secret-manager output; interactive entry uses the masked prompt)", "tty_pipe");
211
+ }
212
+ const timeoutMs = options.timeoutMs ?? DEFAULT_CLAUDE_INPUT_TIMEOUT_MS;
213
+ const maxBytes = options.maxBytes ?? MAX_CLAUDE_INPUT_BYTES;
214
+ return new Promise((resolve, reject) => {
215
+ let resolved = false;
216
+ let timer = null;
217
+ let totalBytes = 0;
218
+ const chunks = [];
219
+ const cleanup = () => {
220
+ if (timer) {
221
+ clearTimeout(timer);
222
+ timer = null;
223
+ }
224
+ stdin.removeListener("data", onData);
225
+ stdin.removeListener("end", onEnd);
226
+ stdin.removeListener("error", onError);
227
+ };
228
+ const finish = (value) => {
229
+ if (resolved)
230
+ return;
231
+ resolved = true;
232
+ cleanup();
233
+ resolve(value);
234
+ };
235
+ const fail = (error) => {
236
+ if (resolved)
237
+ return;
238
+ resolved = true;
239
+ cleanup();
240
+ reject(error);
241
+ };
242
+ if (timeoutMs > 0 && Number.isFinite(timeoutMs)) {
243
+ timer = setTimeout(() => {
244
+ fail(new ClaudeSeatInputError("Claude token entry timed out", "timeout"));
245
+ }, timeoutMs);
246
+ }
247
+ const onData = (chunk) => {
248
+ const buf = typeof chunk === "string" ? Buffer.from(chunk, "utf8") : chunk;
249
+ totalBytes += buf.length;
250
+ if (totalBytes > maxBytes) {
251
+ fail(new ClaudeSeatInputError(`Claude token input exceeded maximum allowed size (${Math.round(maxBytes / 1024)} KiB)`, "oversized"));
252
+ return;
253
+ }
254
+ chunks.push(buf);
255
+ };
256
+ const onEnd = () => {
257
+ const content = Buffer.concat(chunks).toString("utf8").trim();
258
+ if (!content) {
259
+ fail(new ClaudeSeatInputError("Claude token entry received empty input", "empty"));
260
+ return;
261
+ }
262
+ finish(content);
263
+ };
264
+ const onError = () => {
265
+ fail(new ClaudeSeatInputError("Claude token entry input stream error", "stream_error"));
266
+ };
267
+ stdin.on("data", onData);
268
+ stdin.on("end", onEnd);
269
+ stdin.on("error", onError);
270
+ });
271
+ }
272
+ //# sourceMappingURL=claude-seat-input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-seat-input.js","sourceRoot":"","sources":["../src/claude-seat-input.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Local structural mirror of the Claude seat contract from the mesh
3
+ * package baseline (0.25.0): access projection, CLI request/event shapes,
4
+ * runner interface, and host attestations.
5
+ *
6
+ * The gateway-eradication contract forbids source references to the mesh
7
+ * package, so this module duplicates the shapes instead of importing them.
8
+ * Type-only duplication: identical structure, zero runtime coupling. If the
9
+ * mesh baseline moves, update this mirror together with the version noted
10
+ * here; the seat tests pin every shape this mirror carries.
11
+ */
12
+ /**
13
+ * In-process secret boundary. Never serialize this input into logs, argv or env.
14
+ *
15
+ * Identical to mesh 0.25.0 `transport/claude-code-runtime-client.ts`: only
16
+ * accessToken/expiresAt/scopes exist upstream. No account-type or
17
+ * organization field exists upstream, and no access-based refusal is claimed
18
+ * here (common seat model: the mesh directory owns account selection);
19
+ * invented optional fields must not be added back here.
20
+ */
21
+ export interface ClaudeCodeAccessProjection {
22
+ readonly accessToken: string;
23
+ readonly expiresAt: number;
24
+ readonly scopes: readonly string[];
25
+ }
26
+ export type ClaudeCodeCliContent = {
27
+ type: "text";
28
+ text: string;
29
+ } | {
30
+ type: "tool_use";
31
+ id: string;
32
+ name: string;
33
+ input: unknown;
34
+ } | {
35
+ type: "tool_result";
36
+ tool_use_id: string;
37
+ content: string;
38
+ is_error?: boolean;
39
+ };
40
+ export interface ClaudeCodeCliRequest {
41
+ readonly modelId: string;
42
+ readonly messages: readonly {
43
+ role: "user" | "assistant";
44
+ content: readonly ClaudeCodeCliContent[];
45
+ }[];
46
+ readonly tools?: readonly {
47
+ name: string;
48
+ description?: string;
49
+ inputSchema: Record<string, unknown>;
50
+ }[];
51
+ }
52
+ /** Normalized by the trusted host; raw CLI output must never cross this seam. */
53
+ export type ClaudeCodeCliEvent = {
54
+ type: "text_delta";
55
+ text: string;
56
+ } | {
57
+ type: "tool_use";
58
+ id: string;
59
+ name: string;
60
+ input: unknown;
61
+ } | {
62
+ type: "result";
63
+ finishReason: "stop" | "length" | "tool_calls";
64
+ usage?: {
65
+ inputTokens?: number;
66
+ outputTokens?: number;
67
+ };
68
+ } | {
69
+ type: "error";
70
+ };
71
+ export interface ClaudeCodeCliRunner {
72
+ /** Abort/iterator return kills and reaps children; result certifies cleanup. */
73
+ run(input: {
74
+ access: ClaudeCodeAccessProjection;
75
+ request: ClaudeCodeCliRequest;
76
+ signal: AbortSignal;
77
+ }): AsyncIterable<ClaudeCodeCliEvent>;
78
+ }
79
+ /** Trusted host attestations, never inferred from the installed CLI version. */
80
+ export interface ClaudeCodeCliCapabilities {
81
+ readonly protocol: "claude-code-stream-json-v1";
82
+ readonly cliVersion: string;
83
+ readonly source: string;
84
+ readonly qualificationRef: string;
85
+ readonly history?: string;
86
+ readonly tools?: string;
87
+ }
88
+ //# sourceMappingURL=claude-seat-mesh-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-seat-mesh-contract.d.ts","sourceRoot":"","sources":["../src/claude-seat-mesh-contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;;;;;GAQG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,GAAG;IACF,IAAI,EAAE,UAAU,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG;IACF,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,SAAS;QAC1B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;QAC3B,OAAO,EAAE,SAAS,oBAAoB,EAAE,CAAC;KAC1C,EAAE,CAAC;IACJ,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS;QACxB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACtC,EAAE,CAAC;CACL;AAED,iFAAiF;AACjF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd,GAAG;IACF,IAAI,EAAE,UAAU,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG;IACF,IAAI,EAAE,QAAQ,CAAC;IACf,YAAY,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,CAAC;IAC/C,KAAK,CAAC,EAAE;QACN,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;CACH,GAAG;IACF,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,gFAAgF;IAChF,GAAG,CAAC,KAAK,EAAE;QACT,MAAM,EAAE,0BAA0B,CAAC;QACnC,OAAO,EAAE,oBAAoB,CAAC;QAC9B,MAAM,EAAE,WAAW,CAAC;KACrB,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC;CACvC;AAED,gFAAgF;AAChF,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,QAAQ,EAAE,4BAA4B,CAAC;IAChD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Local structural mirror of the Claude seat contract from the mesh
3
+ * package baseline (0.25.0): access projection, CLI request/event shapes,
4
+ * runner interface, and host attestations.
5
+ *
6
+ * The gateway-eradication contract forbids source references to the mesh
7
+ * package, so this module duplicates the shapes instead of importing them.
8
+ * Type-only duplication: identical structure, zero runtime coupling. If the
9
+ * mesh baseline moves, update this mirror together with the version noted
10
+ * here; the seat tests pin every shape this mirror carries.
11
+ */
12
+ export {};
13
+ //# sourceMappingURL=claude-seat-mesh-contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-seat-mesh-contract.js","sourceRoot":"","sources":["../src/claude-seat-mesh-contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
@@ -116,7 +116,7 @@ export const H2A_RUNTIME_HELP_GROUPS = [
116
116
  // > | See the big picture | `h2a status --human` |
117
117
  id: "OBSERVE",
118
118
  heading: "Observe — see what is running and what needs attention:",
119
- commands: ["ls", "status", "agents", "diff", "sync-status"],
119
+ commands: ["ls", "status", "agents", "diff", "sync-status", "logs"],
120
120
  },
121
121
  {
122
122
  // Vendored excerpt 3, § "Daily operator surface — top level", these rows:
@@ -1 +1 @@
1
- {"version":3,"file":"cli-help-groups.js","sourceRoot":"","sources":["../src/cli-help-groups.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-help-groups.js","sourceRoot":"","sources":["../src/cli-help-groups.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ export declare const CRASH_LOG_COMPONENTS: readonly ["cli", "attach", "mcp-server"];
2
+ export type CrashLogComponent = (typeof CRASH_LOG_COMPONENTS)[number];
3
+ export declare const NATIVE_HOST_LOG_COMPONENT: "native-host";
4
+ export type CrashLogAnyComponent = CrashLogComponent | typeof NATIVE_HOST_LOG_COMPONENT;
5
+ export declare const MAX_CRASH_LOG_BYTES: number;
6
+ export type CrashLogEvent = "start" | "uncaughtException" | "unhandledRejection" | "startupError" | "refusal" | "childExit" | "sessionExit" | "signal" | "stop" | "exit" | "dropped";
7
+ export interface CrashLogEntry {
8
+ readonly event: CrashLogEvent;
9
+ /** Session slug/id when the record belongs to one session; omitted otherwise. */
10
+ readonly sessionId?: string | undefined;
11
+ /** Host generation / MCP generation / launch id when known. */
12
+ readonly instanceId?: string | undefined;
13
+ /** Machine-readable reason code (refusal code, errno, op name). */
14
+ readonly reason?: string | undefined;
15
+ /** Human detail; redacted before write. */
16
+ readonly detail?: string | undefined;
17
+ /** Child/session exit code when known. */
18
+ readonly exitCode?: number | undefined;
19
+ /**
20
+ * Signal name (or signo) when the fatal path is a signal. Omit the field —
21
+ * never invent a code — when the signal is unknown.
22
+ */
23
+ readonly signal?: string | number | undefined;
24
+ }
25
+ export interface CrashLogRow {
26
+ readonly timestamp: string;
27
+ readonly component: string;
28
+ readonly version: string;
29
+ readonly pid: number;
30
+ readonly event: CrashLogEvent;
31
+ readonly sessionId?: string | undefined;
32
+ readonly instanceId?: string | undefined;
33
+ readonly reason?: string | undefined;
34
+ readonly detail?: string | undefined;
35
+ readonly exitCode?: number | undefined;
36
+ readonly signal?: string | undefined;
37
+ }
38
+ export declare function resolveCrashLogPath(component: CrashLogComponent, env?: Readonly<Record<string, string | undefined>>): string;
39
+ /** State dir shared by all crash logs (and the native host journal). */
40
+ export declare function resolveCrashLogDir(env?: Readonly<Record<string, string | undefined>>): string;
41
+ export declare function getCrashLogVersion(): string;
42
+ /** Test-only: reset the cached version. */
43
+ export declare function resetCrashLogVersionForTests(): void;
44
+ /**
45
+ * Redact secret values and credential patterns; never throws. Pattern
46
+ * redaction stands on its own: it must hold even when the secret value is
47
+ * absent from the writer's environment (tokens in child stderr, config JSON,
48
+ * CLI flags). Fail closed — an unrecognized `name=value` shape that names a
49
+ * credential is redacted, never passed through.
50
+ */
51
+ export declare function redactCrashText(value: string): string;
52
+ /**
53
+ * Normalize a signal (name, signo, or numeric string) to a log-safe name.
54
+ * Unknown names become `"unknown"`; unknown numbers become `"SIG<n>"` so the
55
+ * signo survives. `undefined` stays `undefined` — callers omit the field
56
+ * instead of inventing a signal.
57
+ */
58
+ export declare function crashSignalName(value: number | string | undefined): string | undefined;
59
+ export declare function toCrashLogRow(component: CrashLogComponent, entry: CrashLogEntry): CrashLogRow;
60
+ /**
61
+ * A lock older than this was left by a dead writer: its owner can never come
62
+ * back to release it, so the next writer reclaims it instead of letting the
63
+ * component's log go silent forever. A live lock still drops (returns false).
64
+ */
65
+ export declare const CRASH_LOG_LOCK_STALE_MS = 10000;
66
+ /** Process-lifetime count of crash-log rows dropped instead of appended. */
67
+ export declare function getCrashLogDrops(): number;
68
+ /**
69
+ * Best-effort bounded append. One lock attempt plus one stale-orphan reclaim,
70
+ * no wait: contention drops the row (returns false, counted and surfaced as a
71
+ * `dropped` row on the next successful append) instead of blocking the fatal
72
+ * path it documents. Never throws.
73
+ */
74
+ export declare function appendCrashLog(component: CrashLogComponent, entry: CrashLogEntry, logPath?: string): boolean;
75
+ /** Read and parse one crash log; corrupt lines are skipped, never thrown. */
76
+ export declare function readCrashLog(component: CrashLogComponent, logPath?: string): CrashLogRow[];
77
+ /** Last `lines` rows across components, oldest first, rotations included. */
78
+ export declare function readRecentCrashLogs(components?: readonly CrashLogComponent[], lines?: number, env?: Readonly<Record<string, string | undefined>>): CrashLogRow[];
79
+ /** Max chars of `detail`/`error` shown on one human `h2a logs` line. */
80
+ export declare const CRASH_LOG_HUMAN_DETAIL_MAX = 300;
81
+ /**
82
+ * One human `h2a logs` line: what (event/reason/code/kind/errno), when
83
+ * (timestamp), where (component/session/pid/generation), why
84
+ * (detail/error, single-line and bounded). Detail is safe to show: rows are
85
+ * redacted before serialization.
86
+ */
87
+ export declare function formatCrashLogHumanRow(record: Record<string, unknown>): string;
88
+ /** Max bytes scanned from the end of a raw log for the viewer. */
89
+ export declare const CRASH_LOG_TAIL_MAX_BYTES: number;
90
+ /**
91
+ * Last `maxLines` of a text file for the viewer; missing/unreadable → [].
92
+ * Scans a bounded window from the end with positional reads — a multi-MB
93
+ * server dump is never loaded whole. Lines past the window are dropped whole
94
+ * (the leading, possibly partial, line is never shown truncated).
95
+ */
96
+ export declare function readFileTailLines(path: string, maxLines: number): string[];
97
+ /**
98
+ * Passive fatal-path witness for short-lived launcher-side processes (the CLI
99
+ * launcher, the op child). `uncaughtExceptionMonitor` observes without
100
+ * altering Node's default crash/exit behavior: it only leaves a row behind in
101
+ * `component`.log so `h2a logs` can explain the crash. Never throws.
102
+ */
103
+ export declare function installCrashHandlers(component: CrashLogComponent): void;
104
+ /**
105
+ * Idempotent CLI fatal-path witness. The owner binary (core `bin.ts`) reaches
106
+ * the runtime through lazy `dispatchRuntime()` → `main()`, never with the
107
+ * runtime file as `argv[1]` — so an `isEntryPoint()` gate alone never fires
108
+ * on the real path. Installing here covers every dispatch; the once-guard
109
+ * keeps repeated `main()` calls (and tests) to a single listener.
110
+ */
111
+ export declare function installCliWitnessOnce(): void;
112
+ //# sourceMappingURL=crash-log.d.ts.map