@happier-dev/stack 0.2.0 → 0.2.11

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 (2613) hide show
  1. package/README.md +4 -4
  2. package/bin/happier.mjs +8 -1
  3. package/bin/hstack.mjs +51 -36
  4. package/bin/localBundledWorkspacePreflight.mjs +48 -0
  5. package/docs/server-flavors.md +10 -13
  6. package/node_modules/@happier-dev/agents/dist/advancedModes.d.ts +1 -1
  7. package/node_modules/@happier-dev/agents/dist/advancedModes.d.ts.map +1 -1
  8. package/node_modules/@happier-dev/agents/dist/advancedModes.js.map +1 -1
  9. package/node_modules/@happier-dev/agents/dist/auth.d.ts +2 -2
  10. package/node_modules/@happier-dev/agents/dist/auth.d.ts.map +1 -1
  11. package/node_modules/@happier-dev/agents/dist/auth.js +25 -5
  12. package/node_modules/@happier-dev/agents/dist/auth.js.map +1 -1
  13. package/node_modules/@happier-dev/agents/dist/connectedServices/runtimeFallbackCapability.d.ts +16 -0
  14. package/node_modules/@happier-dev/agents/dist/connectedServices/runtimeFallbackCapability.d.ts.map +1 -0
  15. package/node_modules/@happier-dev/agents/dist/connectedServices/runtimeFallbackCapability.js +56 -0
  16. package/node_modules/@happier-dev/agents/dist/connectedServices/runtimeFallbackCapability.js.map +1 -0
  17. package/node_modules/@happier-dev/agents/dist/connectedServices/sessionOptions.d.ts +114 -0
  18. package/node_modules/@happier-dev/agents/dist/connectedServices/sessionOptions.d.ts.map +1 -0
  19. package/node_modules/@happier-dev/agents/dist/connectedServices/sessionOptions.js +318 -0
  20. package/node_modules/@happier-dev/agents/dist/connectedServices/sessionOptions.js.map +1 -0
  21. package/node_modules/@happier-dev/agents/dist/index.d.ts +29 -14
  22. package/node_modules/@happier-dev/agents/dist/index.d.ts.map +1 -1
  23. package/node_modules/@happier-dev/agents/dist/index.js +25 -11
  24. package/node_modules/@happier-dev/agents/dist/index.js.map +1 -1
  25. package/node_modules/@happier-dev/agents/dist/localCli.d.ts +2 -1
  26. package/node_modules/@happier-dev/agents/dist/localCli.d.ts.map +1 -1
  27. package/node_modules/@happier-dev/agents/dist/localCli.js +68 -43
  28. package/node_modules/@happier-dev/agents/dist/localCli.js.map +1 -1
  29. package/node_modules/@happier-dev/agents/dist/manifest.d.ts +419 -162
  30. package/node_modules/@happier-dev/agents/dist/manifest.d.ts.map +1 -1
  31. package/node_modules/@happier-dev/agents/dist/manifest.js +221 -6
  32. package/node_modules/@happier-dev/agents/dist/manifest.js.map +1 -1
  33. package/node_modules/@happier-dev/agents/dist/mediaCapabilities.d.ts +5 -0
  34. package/node_modules/@happier-dev/agents/dist/mediaCapabilities.d.ts.map +1 -0
  35. package/node_modules/@happier-dev/agents/dist/mediaCapabilities.js +11 -0
  36. package/node_modules/@happier-dev/agents/dist/mediaCapabilities.js.map +1 -0
  37. package/node_modules/@happier-dev/agents/dist/models.d.ts +25 -0
  38. package/node_modules/@happier-dev/agents/dist/models.d.ts.map +1 -1
  39. package/node_modules/@happier-dev/agents/dist/models.js +99 -68
  40. package/node_modules/@happier-dev/agents/dist/models.js.map +1 -1
  41. package/node_modules/@happier-dev/agents/dist/nativeLaunchSelection.d.ts +20 -0
  42. package/node_modules/@happier-dev/agents/dist/nativeLaunchSelection.d.ts.map +1 -0
  43. package/node_modules/@happier-dev/agents/dist/nativeLaunchSelection.js +35 -0
  44. package/node_modules/@happier-dev/agents/dist/nativeLaunchSelection.js.map +1 -0
  45. package/node_modules/@happier-dev/agents/dist/path/isAbsolutePathLike.d.ts +2 -0
  46. package/node_modules/@happier-dev/agents/dist/path/isAbsolutePathLike.d.ts.map +1 -0
  47. package/node_modules/@happier-dev/agents/dist/path/isAbsolutePathLike.js +12 -0
  48. package/node_modules/@happier-dev/agents/dist/path/isAbsolutePathLike.js.map +1 -0
  49. package/node_modules/@happier-dev/agents/dist/permissions/index.d.ts +5 -0
  50. package/node_modules/@happier-dev/agents/dist/permissions/index.d.ts.map +1 -1
  51. package/node_modules/@happier-dev/agents/dist/permissions/index.js +23 -59
  52. package/node_modules/@happier-dev/agents/dist/permissions/index.js.map +1 -1
  53. package/node_modules/@happier-dev/agents/dist/permissions/privilege.d.ts +33 -0
  54. package/node_modules/@happier-dev/agents/dist/permissions/privilege.d.ts.map +1 -0
  55. package/node_modules/@happier-dev/agents/dist/permissions/privilege.js +95 -0
  56. package/node_modules/@happier-dev/agents/dist/permissions/privilege.js.map +1 -0
  57. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/claudeRemote.d.ts +171 -80
  58. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/claudeRemote.d.ts.map +1 -1
  59. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/claudeRemote.js +62 -0
  60. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/claudeRemote.js.map +1 -1
  61. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/codex.d.ts +10 -10
  62. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/codex.d.ts.map +1 -1
  63. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/cursor.d.ts +65 -0
  64. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/cursor.d.ts.map +1 -0
  65. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/cursor.js +81 -0
  66. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/cursor.js.map +1 -0
  67. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/kimi.d.ts +36 -0
  68. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/kimi.d.ts.map +1 -0
  69. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/kimi.js +33 -0
  70. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/kimi.js.map +1 -0
  71. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/opencode.d.ts +16 -16
  72. package/node_modules/@happier-dev/agents/dist/providerSettings/definitions/opencode.d.ts.map +1 -1
  73. package/node_modules/@happier-dev/agents/dist/providerSettings/index.d.ts +4 -1
  74. package/node_modules/@happier-dev/agents/dist/providerSettings/index.d.ts.map +1 -1
  75. package/node_modules/@happier-dev/agents/dist/providerSettings/index.js +3 -1
  76. package/node_modules/@happier-dev/agents/dist/providerSettings/index.js.map +1 -1
  77. package/node_modules/@happier-dev/agents/dist/providerSettings/registry.d.ts.map +1 -1
  78. package/node_modules/@happier-dev/agents/dist/providerSettings/registry.js +4 -0
  79. package/node_modules/@happier-dev/agents/dist/providerSettings/registry.js.map +1 -1
  80. package/node_modules/@happier-dev/agents/dist/providers/claude/contextWindow.d.ts +49 -0
  81. package/node_modules/@happier-dev/agents/dist/providers/claude/contextWindow.d.ts.map +1 -0
  82. package/node_modules/@happier-dev/agents/dist/providers/claude/contextWindow.js +102 -0
  83. package/node_modules/@happier-dev/agents/dist/providers/claude/contextWindow.js.map +1 -0
  84. package/node_modules/@happier-dev/agents/dist/providers/claude/effort.d.ts +9 -2
  85. package/node_modules/@happier-dev/agents/dist/providers/claude/effort.d.ts.map +1 -1
  86. package/node_modules/@happier-dev/agents/dist/providers/claude/effort.js +52 -20
  87. package/node_modules/@happier-dev/agents/dist/providers/claude/effort.js.map +1 -1
  88. package/node_modules/@happier-dev/agents/dist/providers/claude/flagshipModel.d.ts +13 -0
  89. package/node_modules/@happier-dev/agents/dist/providers/claude/flagshipModel.d.ts.map +1 -0
  90. package/node_modules/@happier-dev/agents/dist/providers/claude/flagshipModel.js +13 -0
  91. package/node_modules/@happier-dev/agents/dist/providers/claude/flagshipModel.js.map +1 -0
  92. package/node_modules/@happier-dev/agents/dist/providers/claude/index.d.ts +7 -2
  93. package/node_modules/@happier-dev/agents/dist/providers/claude/index.d.ts.map +1 -1
  94. package/node_modules/@happier-dev/agents/dist/providers/claude/index.js +7 -2
  95. package/node_modules/@happier-dev/agents/dist/providers/claude/index.js.map +1 -1
  96. package/node_modules/@happier-dev/agents/dist/providers/claude/modelDisplayName.d.ts +9 -0
  97. package/node_modules/@happier-dev/agents/dist/providers/claude/modelDisplayName.d.ts.map +1 -0
  98. package/node_modules/@happier-dev/agents/dist/providers/claude/modelDisplayName.js +13 -0
  99. package/node_modules/@happier-dev/agents/dist/providers/claude/modelDisplayName.js.map +1 -0
  100. package/node_modules/@happier-dev/agents/dist/providers/claude/oauthProfile.d.ts +14 -0
  101. package/node_modules/@happier-dev/agents/dist/providers/claude/oauthProfile.d.ts.map +1 -0
  102. package/node_modules/@happier-dev/agents/dist/providers/claude/oauthProfile.js +37 -0
  103. package/node_modules/@happier-dev/agents/dist/providers/claude/oauthProfile.js.map +1 -0
  104. package/node_modules/@happier-dev/agents/dist/providers/claude/oauthScopes.d.ts +5 -0
  105. package/node_modules/@happier-dev/agents/dist/providers/claude/oauthScopes.d.ts.map +1 -0
  106. package/node_modules/@happier-dev/agents/dist/providers/claude/oauthScopes.js +18 -0
  107. package/node_modules/@happier-dev/agents/dist/providers/claude/oauthScopes.js.map +1 -0
  108. package/node_modules/@happier-dev/agents/dist/providers/claude/permissionRequestSource.d.ts +7 -1
  109. package/node_modules/@happier-dev/agents/dist/providers/claude/permissionRequestSource.d.ts.map +1 -1
  110. package/node_modules/@happier-dev/agents/dist/providers/claude/permissionRequestSource.js +8 -0
  111. package/node_modules/@happier-dev/agents/dist/providers/claude/permissionRequestSource.js.map +1 -1
  112. package/node_modules/@happier-dev/agents/dist/providers/codex/index.d.ts +3 -0
  113. package/node_modules/@happier-dev/agents/dist/providers/codex/index.d.ts.map +1 -0
  114. package/node_modules/@happier-dev/agents/dist/providers/codex/index.js +3 -0
  115. package/node_modules/@happier-dev/agents/dist/providers/codex/index.js.map +1 -0
  116. package/node_modules/@happier-dev/agents/dist/providers/codex/oauth.d.ts +12 -0
  117. package/node_modules/@happier-dev/agents/dist/providers/codex/oauth.d.ts.map +1 -0
  118. package/node_modules/@happier-dev/agents/dist/providers/codex/oauth.js +17 -0
  119. package/node_modules/@happier-dev/agents/dist/providers/codex/oauth.js.map +1 -0
  120. package/node_modules/@happier-dev/agents/dist/providers/codex/readSessionMetadataConnectedServiceBindings.d.ts +3 -0
  121. package/node_modules/@happier-dev/agents/dist/providers/codex/readSessionMetadataConnectedServiceBindings.d.ts.map +1 -0
  122. package/node_modules/@happier-dev/agents/dist/providers/codex/readSessionMetadataConnectedServiceBindings.js +26 -0
  123. package/node_modules/@happier-dev/agents/dist/providers/codex/readSessionMetadataConnectedServiceBindings.js.map +1 -0
  124. package/node_modules/@happier-dev/agents/dist/providers/gemini/index.d.ts +2 -0
  125. package/node_modules/@happier-dev/agents/dist/providers/gemini/index.d.ts.map +1 -0
  126. package/node_modules/@happier-dev/agents/dist/providers/gemini/index.js +2 -0
  127. package/node_modules/@happier-dev/agents/dist/providers/gemini/index.js.map +1 -0
  128. package/node_modules/@happier-dev/agents/dist/providers/gemini/oauth.d.ts +7 -0
  129. package/node_modules/@happier-dev/agents/dist/providers/gemini/oauth.d.ts.map +1 -0
  130. package/node_modules/@happier-dev/agents/dist/providers/gemini/oauth.js +11 -0
  131. package/node_modules/@happier-dev/agents/dist/providers/gemini/oauth.js.map +1 -0
  132. package/node_modules/@happier-dev/agents/dist/providers/index.d.ts +2 -0
  133. package/node_modules/@happier-dev/agents/dist/providers/index.d.ts.map +1 -1
  134. package/node_modules/@happier-dev/agents/dist/providers/index.js +2 -0
  135. package/node_modules/@happier-dev/agents/dist/providers/index.js.map +1 -1
  136. package/node_modules/@happier-dev/agents/dist/providers/pi/thinking.d.ts +3 -3
  137. package/node_modules/@happier-dev/agents/dist/providers/pi/thinking.d.ts.map +1 -1
  138. package/node_modules/@happier-dev/agents/dist/providers/providerCliRuntime.d.ts +38 -1
  139. package/node_modules/@happier-dev/agents/dist/providers/providerCliRuntime.d.ts.map +1 -1
  140. package/node_modules/@happier-dev/agents/dist/providers/providerCliRuntime.js +145 -26
  141. package/node_modules/@happier-dev/agents/dist/providers/providerCliRuntime.js.map +1 -1
  142. package/node_modules/@happier-dev/agents/dist/providers/readSessionMetadataConnectedServiceBindings.d.ts +3 -0
  143. package/node_modules/@happier-dev/agents/dist/providers/readSessionMetadataConnectedServiceBindings.d.ts.map +1 -0
  144. package/node_modules/@happier-dev/agents/dist/providers/readSessionMetadataConnectedServiceBindings.js +9 -0
  145. package/node_modules/@happier-dev/agents/dist/providers/readSessionMetadataConnectedServiceBindings.js.map +1 -0
  146. package/node_modules/@happier-dev/agents/dist/resolveAgentIdFromSessionMetadata.d.ts +26 -0
  147. package/node_modules/@happier-dev/agents/dist/resolveAgentIdFromSessionMetadata.d.ts.map +1 -1
  148. package/node_modules/@happier-dev/agents/dist/resolveAgentIdFromSessionMetadata.js +52 -10
  149. package/node_modules/@happier-dev/agents/dist/resolveAgentIdFromSessionMetadata.js.map +1 -1
  150. package/node_modules/@happier-dev/agents/dist/runtime/agentStateRequestCoverage.d.ts +16 -0
  151. package/node_modules/@happier-dev/agents/dist/runtime/agentStateRequestCoverage.d.ts.map +1 -0
  152. package/node_modules/@happier-dev/agents/dist/runtime/agentStateRequestCoverage.js +120 -0
  153. package/node_modules/@happier-dev/agents/dist/runtime/agentStateRequestCoverage.js.map +1 -0
  154. package/node_modules/@happier-dev/agents/dist/runtime/terminal/control.d.ts +82 -0
  155. package/node_modules/@happier-dev/agents/dist/runtime/terminal/control.d.ts.map +1 -0
  156. package/node_modules/@happier-dev/agents/dist/runtime/terminal/control.js +16 -0
  157. package/node_modules/@happier-dev/agents/dist/runtime/terminal/control.js.map +1 -0
  158. package/node_modules/@happier-dev/agents/dist/runtime/terminal/inputInjection.d.ts +66 -0
  159. package/node_modules/@happier-dev/agents/dist/runtime/terminal/inputInjection.d.ts.map +1 -0
  160. package/node_modules/@happier-dev/agents/dist/runtime/terminal/inputInjection.js +2 -0
  161. package/node_modules/@happier-dev/agents/dist/runtime/terminal/inputInjection.js.map +1 -0
  162. package/node_modules/@happier-dev/agents/dist/runtimeInput.d.ts +5 -0
  163. package/node_modules/@happier-dev/agents/dist/runtimeInput.d.ts.map +1 -0
  164. package/node_modules/@happier-dev/agents/dist/runtimeInput.js +16 -0
  165. package/node_modules/@happier-dev/agents/dist/runtimeInput.js.map +1 -0
  166. package/node_modules/@happier-dev/agents/dist/runtimeKinds.d.ts.map +1 -1
  167. package/node_modules/@happier-dev/agents/dist/runtimeKinds.js +2 -0
  168. package/node_modules/@happier-dev/agents/dist/runtimeKinds.js.map +1 -1
  169. package/node_modules/@happier-dev/agents/dist/sessionControls/agentRuntimeDescriptor.d.ts +20 -0
  170. package/node_modules/@happier-dev/agents/dist/sessionControls/agentRuntimeDescriptor.d.ts.map +1 -1
  171. package/node_modules/@happier-dev/agents/dist/sessionControls/agentRuntimeDescriptor.js +13 -0
  172. package/node_modules/@happier-dev/agents/dist/sessionControls/agentRuntimeDescriptor.js.map +1 -1
  173. package/node_modules/@happier-dev/agents/dist/sessionControls/codexRuntimeDescriptorExtra.d.ts +6 -0
  174. package/node_modules/@happier-dev/agents/dist/sessionControls/codexRuntimeDescriptorExtra.d.ts.map +1 -1
  175. package/node_modules/@happier-dev/agents/dist/sessionControls/codexRuntimeDescriptorExtra.js +12 -1
  176. package/node_modules/@happier-dev/agents/dist/sessionControls/codexRuntimeDescriptorExtra.js.map +1 -1
  177. package/node_modules/@happier-dev/agents/dist/sessionControls/metadata.d.ts +79 -0
  178. package/node_modules/@happier-dev/agents/dist/sessionControls/metadata.d.ts.map +1 -1
  179. package/node_modules/@happier-dev/agents/dist/sessionControls/metadata.js +180 -10
  180. package/node_modules/@happier-dev/agents/dist/sessionControls/metadata.js.map +1 -1
  181. package/node_modules/@happier-dev/agents/dist/sessionControls/metadataKeys.d.ts +9 -0
  182. package/node_modules/@happier-dev/agents/dist/sessionControls/metadataKeys.d.ts.map +1 -1
  183. package/node_modules/@happier-dev/agents/dist/sessionControls/metadataKeys.js +16 -0
  184. package/node_modules/@happier-dev/agents/dist/sessionControls/metadataKeys.js.map +1 -1
  185. package/node_modules/@happier-dev/agents/dist/sessionControls/publish.d.ts +10 -0
  186. package/node_modules/@happier-dev/agents/dist/sessionControls/publish.d.ts.map +1 -1
  187. package/node_modules/@happier-dev/agents/dist/sessionControls/publish.js +66 -10
  188. package/node_modules/@happier-dev/agents/dist/sessionControls/publish.js.map +1 -1
  189. package/node_modules/@happier-dev/agents/dist/sessionControls/sessionCapabilities.d.ts +1 -1
  190. package/node_modules/@happier-dev/agents/dist/sessionControls/sessionCapabilities.d.ts.map +1 -1
  191. package/node_modules/@happier-dev/agents/dist/sessionControls/sessionCapabilities.js +7 -0
  192. package/node_modules/@happier-dev/agents/dist/sessionControls/sessionCapabilities.js.map +1 -1
  193. package/node_modules/@happier-dev/agents/dist/sessionControls/vendorResumePolicy.d.ts +14 -0
  194. package/node_modules/@happier-dev/agents/dist/sessionControls/vendorResumePolicy.d.ts.map +1 -1
  195. package/node_modules/@happier-dev/agents/dist/sessionControls/vendorResumePolicy.js +43 -0
  196. package/node_modules/@happier-dev/agents/dist/sessionControls/vendorResumePolicy.js.map +1 -1
  197. package/node_modules/@happier-dev/agents/dist/sessionModes.d.ts +3 -0
  198. package/node_modules/@happier-dev/agents/dist/sessionModes.d.ts.map +1 -1
  199. package/node_modules/@happier-dev/agents/dist/sessionModes.js +14 -0
  200. package/node_modules/@happier-dev/agents/dist/sessionModes.js.map +1 -1
  201. package/node_modules/@happier-dev/agents/dist/sessions/replay/happierReplayPrompt.d.ts +262 -4
  202. package/node_modules/@happier-dev/agents/dist/sessions/replay/happierReplayPrompt.d.ts.map +1 -1
  203. package/node_modules/@happier-dev/agents/dist/sessions/replay/happierReplayPrompt.js +1619 -45
  204. package/node_modules/@happier-dev/agents/dist/sessions/replay/happierReplayPrompt.js.map +1 -1
  205. package/node_modules/@happier-dev/agents/dist/sessions/state/projectCurrentAgentSessionView.d.ts +66 -0
  206. package/node_modules/@happier-dev/agents/dist/sessions/state/projectCurrentAgentSessionView.d.ts.map +1 -0
  207. package/node_modules/@happier-dev/agents/dist/sessions/state/projectCurrentAgentSessionView.js +194 -0
  208. package/node_modules/@happier-dev/agents/dist/sessions/state/projectCurrentAgentSessionView.js.map +1 -0
  209. package/node_modules/@happier-dev/agents/dist/types.d.ts +62 -4
  210. package/node_modules/@happier-dev/agents/dist/types.d.ts.map +1 -1
  211. package/node_modules/@happier-dev/agents/dist/types.js +2 -2
  212. package/node_modules/@happier-dev/agents/dist/types.js.map +1 -1
  213. package/node_modules/@happier-dev/cli-common/cliDistBuildManifest.cjs +708 -0
  214. package/node_modules/@happier-dev/cli-common/cliDistBuildManifest.d.cts +94 -0
  215. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildCliBinaryArtifactPayload.d.ts +4 -1
  216. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildCliBinaryArtifactPayload.d.ts.map +1 -1
  217. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildCliBinaryArtifactPayload.js +162 -72
  218. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildCliBinaryArtifactPayload.js.map +1 -1
  219. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildServerBinaryArtifactPayload.d.ts +6 -1
  220. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildServerBinaryArtifactPayload.d.ts.map +1 -1
  221. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildServerBinaryArtifactPayload.js +71 -3
  222. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/buildServerBinaryArtifactPayload.js.map +1 -1
  223. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.d.ts +7 -3
  224. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.d.ts.map +1 -1
  225. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.js +84 -9
  226. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.js.map +1 -1
  227. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/compilePrismaMigrateBinary.d.ts +10 -0
  228. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/compilePrismaMigrateBinary.d.ts.map +1 -0
  229. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/compilePrismaMigrateBinary.js +13 -0
  230. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/compilePrismaMigrateBinary.js.map +1 -0
  231. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/ensureBundledWorkspacePackagesBuilt.d.ts +9 -6
  232. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/ensureBundledWorkspacePackagesBuilt.d.ts.map +1 -1
  233. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/ensureBundledWorkspacePackagesBuilt.js +63 -9
  234. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/ensureBundledWorkspacePackagesBuilt.js.map +1 -1
  235. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/finalizeRuntimeArtifactPayload.d.ts +2 -0
  236. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/finalizeRuntimeArtifactPayload.d.ts.map +1 -0
  237. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/finalizeRuntimeArtifactPayload.js +45 -0
  238. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/finalizeRuntimeArtifactPayload.js.map +1 -0
  239. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/index.d.ts +2 -0
  240. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/index.d.ts.map +1 -1
  241. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/index.js +2 -0
  242. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/index.js.map +1 -1
  243. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/refreshCliBinaryArtifactRuntimeAssetBuildManifest.d.ts +8 -0
  244. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/refreshCliBinaryArtifactRuntimeAssetBuildManifest.d.ts.map +1 -0
  245. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/refreshCliBinaryArtifactRuntimeAssetBuildManifest.js +16 -0
  246. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/refreshCliBinaryArtifactRuntimeAssetBuildManifest.js.map +1 -0
  247. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/serverBuildDbProviders.d.ts +4 -0
  248. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/serverBuildDbProviders.d.ts.map +1 -0
  249. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/serverBuildDbProviders.js +33 -0
  250. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/serverBuildDbProviders.js.map +1 -0
  251. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/serverSidecars.d.ts +11 -1
  252. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/serverSidecars.d.ts.map +1 -1
  253. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/serverSidecars.js +222 -12
  254. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/serverSidecars.js.map +1 -1
  255. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/shouldReuseCliDistSnapshot.d.ts +6 -0
  256. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/shouldReuseCliDistSnapshot.d.ts.map +1 -0
  257. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/shouldReuseCliDistSnapshot.js +48 -0
  258. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/shouldReuseCliDistSnapshot.js.map +1 -0
  259. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/withCliDistBuildLock.d.ts +3 -0
  260. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/withCliDistBuildLock.d.ts.map +1 -1
  261. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/withCliDistBuildLock.js +7 -97
  262. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/withCliDistBuildLock.js.map +1 -1
  263. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/componentCatalog.d.ts +31 -31
  264. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/componentCatalog.d.ts.map +1 -1
  265. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/copyRuntimePayloadTree.d.ts +9 -0
  266. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/copyRuntimePayloadTree.d.ts.map +1 -0
  267. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/copyRuntimePayloadTree.js +216 -0
  268. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/copyRuntimePayloadTree.js.map +1 -0
  269. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/defaultReleaseChannelState.d.ts +20 -0
  270. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/defaultReleaseChannelState.d.ts.map +1 -0
  271. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/defaultReleaseChannelState.js +46 -0
  272. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/defaultReleaseChannelState.js.map +1 -0
  273. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/extractReleasePayloadRootFromArchive.d.ts.map +1 -1
  274. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/extractReleasePayloadRootFromArchive.js +16 -28
  275. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/extractReleasePayloadRootFromArchive.js.map +1 -1
  276. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/index.d.ts +12 -3
  277. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/index.d.ts.map +1 -1
  278. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/index.js +8 -2
  279. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/index.js.map +1 -1
  280. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/installLayout.d.ts.map +1 -1
  281. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/installLayout.js +7 -7
  282. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/installLayout.js.map +1 -1
  283. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/installVersionedPayload.d.ts +1 -0
  284. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/installVersionedPayload.d.ts.map +1 -1
  285. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/installVersionedPayload.js +156 -0
  286. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/installVersionedPayload.js.map +1 -1
  287. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/prepareFirstPartyComponentPayloadFromGitHubRelease.d.ts +1 -0
  288. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/prepareFirstPartyComponentPayloadFromGitHubRelease.d.ts.map +1 -1
  289. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/prepareFirstPartyComponentPayloadFromGitHubRelease.js +1 -1
  290. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/prepareFirstPartyComponentPayloadFromGitHubRelease.js.map +1 -1
  291. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/promoteVersionedPayload.d.ts +2 -0
  292. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/promoteVersionedPayload.d.ts.map +1 -1
  293. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/promoteVersionedPayload.js +13 -3
  294. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/promoteVersionedPayload.js.map +1 -1
  295. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/pruneRetainedVersions.d.ts +1 -0
  296. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/pruneRetainedVersions.d.ts.map +1 -1
  297. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/pruneRetainedVersions.js +38 -4
  298. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/pruneRetainedVersions.js.map +1 -1
  299. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.d.ts +12 -0
  300. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.d.ts.map +1 -1
  301. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.js +81 -22
  302. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.js.map +1 -1
  303. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntimeInstall.d.ts +15 -0
  304. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntimeInstall.d.ts.map +1 -1
  305. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntimeInstall.js +829 -76
  306. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntimeInstall.js.map +1 -1
  307. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveDesiredShimTargets.d.ts +14 -0
  308. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveDesiredShimTargets.d.ts.map +1 -0
  309. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveDesiredShimTargets.js +29 -0
  310. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveDesiredShimTargets.js.map +1 -0
  311. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveInstalledComponentPaths.d.ts +32 -0
  312. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveInstalledComponentPaths.d.ts.map +1 -1
  313. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveInstalledComponentPaths.js +21 -4
  314. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveInstalledComponentPaths.js.map +1 -1
  315. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveJunctionFreeCurrentPath.d.ts +34 -0
  316. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveJunctionFreeCurrentPath.d.ts.map +1 -0
  317. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveJunctionFreeCurrentPath.js +49 -0
  318. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveJunctionFreeCurrentPath.js.map +1 -0
  319. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveManagedCliReleaseChannel.d.ts +29 -0
  320. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveManagedCliReleaseChannel.d.ts.map +1 -0
  321. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveManagedCliReleaseChannel.js +177 -0
  322. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveManagedCliReleaseChannel.js.map +1 -0
  323. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveNonCollidingRelayPort.d.ts +39 -0
  324. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveNonCollidingRelayPort.d.ts.map +1 -0
  325. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveNonCollidingRelayPort.js +112 -0
  326. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/resolveNonCollidingRelayPort.js.map +1 -0
  327. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/runtimeKinds.d.ts +1 -1
  328. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/runtimeKinds.d.ts.map +1 -1
  329. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/selfHostServerEnv.d.ts +53 -0
  330. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/selfHostServerEnv.d.ts.map +1 -1
  331. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/selfHostServerEnv.js +285 -36
  332. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/selfHostServerEnv.js.map +1 -1
  333. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/serverRuntimeArtifactLayout.d.ts +32 -0
  334. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/serverRuntimeArtifactLayout.d.ts.map +1 -0
  335. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/serverRuntimeArtifactLayout.js +93 -0
  336. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/serverRuntimeArtifactLayout.js.map +1 -0
  337. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/syncInstalledFirstPartyShims.d.ts +1 -0
  338. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/syncInstalledFirstPartyShims.d.ts.map +1 -1
  339. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/syncInstalledFirstPartyShims.js +23 -10
  340. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/syncInstalledFirstPartyShims.js.map +1 -1
  341. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/syncInstalledPayloadPointer.d.ts.map +1 -1
  342. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/syncInstalledPayloadPointer.js +66 -6
  343. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/syncInstalledPayloadPointer.js.map +1 -1
  344. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/uiDeploymentIdentity.d.ts +10 -0
  345. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/uiDeploymentIdentity.d.ts.map +1 -0
  346. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/uiDeploymentIdentity.js +61 -0
  347. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/uiDeploymentIdentity.js.map +1 -0
  348. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/versionMarkers.d.ts +12 -0
  349. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/versionMarkers.d.ts.map +1 -1
  350. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/versionMarkers.js +24 -0
  351. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/versionMarkers.js.map +1 -1
  352. package/node_modules/@happier-dev/cli-common/dist/fs/windowsProtectedAcl.d.ts +35 -0
  353. package/node_modules/@happier-dev/cli-common/dist/fs/windowsProtectedAcl.d.ts.map +1 -0
  354. package/node_modules/@happier-dev/cli-common/dist/fs/windowsProtectedAcl.js +222 -0
  355. package/node_modules/@happier-dev/cli-common/dist/fs/windowsProtectedAcl.js.map +1 -0
  356. package/node_modules/@happier-dev/cli-common/dist/links/index.d.ts +6 -0
  357. package/node_modules/@happier-dev/cli-common/dist/links/index.d.ts.map +1 -1
  358. package/node_modules/@happier-dev/cli-common/dist/links/index.js +30 -15
  359. package/node_modules/@happier-dev/cli-common/dist/links/index.js.map +1 -1
  360. package/node_modules/@happier-dev/cli-common/dist/output/index.d.ts +2 -0
  361. package/node_modules/@happier-dev/cli-common/dist/output/index.d.ts.map +1 -0
  362. package/node_modules/@happier-dev/cli-common/dist/output/index.js +2 -0
  363. package/node_modules/@happier-dev/cli-common/dist/output/index.js.map +1 -0
  364. package/node_modules/@happier-dev/cli-common/dist/output/progress.d.ts +28 -0
  365. package/node_modules/@happier-dev/cli-common/dist/output/progress.d.ts.map +1 -0
  366. package/node_modules/@happier-dev/cli-common/dist/output/progress.js +126 -0
  367. package/node_modules/@happier-dev/cli-common/dist/output/progress.js.map +1 -0
  368. package/node_modules/@happier-dev/cli-common/dist/path/expandHomeDirPath.d.ts +2 -0
  369. package/node_modules/@happier-dev/cli-common/dist/path/expandHomeDirPath.d.ts.map +1 -0
  370. package/node_modules/@happier-dev/cli-common/dist/path/expandHomeDirPath.js +2 -0
  371. package/node_modules/@happier-dev/cli-common/dist/path/expandHomeDirPath.js.map +1 -0
  372. package/node_modules/@happier-dev/cli-common/dist/path/pathShape.d.ts +5 -0
  373. package/node_modules/@happier-dev/cli-common/dist/path/pathShape.d.ts.map +1 -0
  374. package/node_modules/@happier-dev/cli-common/dist/path/pathShape.js +31 -0
  375. package/node_modules/@happier-dev/cli-common/dist/path/pathShape.js.map +1 -0
  376. package/node_modules/@happier-dev/cli-common/dist/process/commandExists.d.ts.map +1 -1
  377. package/node_modules/@happier-dev/cli-common/dist/process/commandExists.js +12 -6
  378. package/node_modules/@happier-dev/cli-common/dist/process/commandExists.js.map +1 -1
  379. package/node_modules/@happier-dev/cli-common/dist/process/index.d.ts +2 -1
  380. package/node_modules/@happier-dev/cli-common/dist/process/index.d.ts.map +1 -1
  381. package/node_modules/@happier-dev/cli-common/dist/process/index.js +2 -1
  382. package/node_modules/@happier-dev/cli-common/dist/process/index.js.map +1 -1
  383. package/node_modules/@happier-dev/cli-common/dist/process/runCommandStreaming.d.ts +9 -0
  384. package/node_modules/@happier-dev/cli-common/dist/process/runCommandStreaming.d.ts.map +1 -0
  385. package/node_modules/@happier-dev/cli-common/dist/process/runCommandStreaming.js +64 -0
  386. package/node_modules/@happier-dev/cli-common/dist/process/runCommandStreaming.js.map +1 -0
  387. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.d.ts +1 -0
  388. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.d.ts.map +1 -1
  389. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.js +58 -12
  390. package/node_modules/@happier-dev/cli-common/dist/process/windows/resolveWindowsCommandInvocation.js.map +1 -1
  391. package/node_modules/@happier-dev/cli-common/dist/providers/downloadGitHubReleaseAsset.d.ts.map +1 -1
  392. package/node_modules/@happier-dev/cli-common/dist/providers/downloadGitHubReleaseAsset.js +42 -20
  393. package/node_modules/@happier-dev/cli-common/dist/providers/downloadGitHubReleaseAsset.js.map +1 -1
  394. package/node_modules/@happier-dev/cli-common/dist/providers/extractGitHubReleaseAsset.d.ts +12 -0
  395. package/node_modules/@happier-dev/cli-common/dist/providers/extractGitHubReleaseAsset.d.ts.map +1 -1
  396. package/node_modules/@happier-dev/cli-common/dist/providers/extractGitHubReleaseAsset.js +86 -16
  397. package/node_modules/@happier-dev/cli-common/dist/providers/extractGitHubReleaseAsset.js.map +1 -1
  398. package/node_modules/@happier-dev/cli-common/dist/providers/index.d.ts +1 -1
  399. package/node_modules/@happier-dev/cli-common/dist/providers/index.d.ts.map +1 -1
  400. package/node_modules/@happier-dev/cli-common/dist/providers/index.js +1 -1
  401. package/node_modules/@happier-dev/cli-common/dist/providers/index.js.map +1 -1
  402. package/node_modules/@happier-dev/cli-common/dist/providers/install.d.ts +3 -0
  403. package/node_modules/@happier-dev/cli-common/dist/providers/install.d.ts.map +1 -1
  404. package/node_modules/@happier-dev/cli-common/dist/providers/install.js +554 -79
  405. package/node_modules/@happier-dev/cli-common/dist/providers/install.js.map +1 -1
  406. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.d.ts.map +1 -1
  407. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.js +13 -3
  408. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.js.map +1 -1
  409. package/node_modules/@happier-dev/cli-common/dist/providers/managedPnpm.d.ts.map +1 -1
  410. package/node_modules/@happier-dev/cli-common/dist/providers/managedPnpm.js +34 -3
  411. package/node_modules/@happier-dev/cli-common/dist/providers/managedPnpm.js.map +1 -1
  412. package/node_modules/@happier-dev/cli-common/dist/providers/nodeRelease.js.map +1 -1
  413. package/node_modules/@happier-dev/cli-common/dist/providers/pnpmRelease.d.ts.map +1 -1
  414. package/node_modules/@happier-dev/cli-common/dist/providers/pnpmRelease.js +37 -12
  415. package/node_modules/@happier-dev/cli-common/dist/providers/pnpmRelease.js.map +1 -1
  416. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.d.ts +3 -1
  417. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.d.ts.map +1 -1
  418. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.js +197 -38
  419. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.js.map +1 -1
  420. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.d.ts.map +1 -1
  421. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.js +18 -4
  422. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.js.map +1 -1
  423. package/node_modules/@happier-dev/cli-common/dist/relayHost/buildRelayRuntimeHealthProbeCommand.d.ts +8 -0
  424. package/node_modules/@happier-dev/cli-common/dist/relayHost/buildRelayRuntimeHealthProbeCommand.d.ts.map +1 -0
  425. package/node_modules/@happier-dev/cli-common/dist/relayHost/buildRelayRuntimeHealthProbeCommand.js +40 -0
  426. package/node_modules/@happier-dev/cli-common/dist/relayHost/buildRelayRuntimeHealthProbeCommand.js.map +1 -0
  427. package/node_modules/@happier-dev/cli-common/dist/relayHost/relayHostEngine.d.ts +3 -2
  428. package/node_modules/@happier-dev/cli-common/dist/relayHost/relayHostEngine.d.ts.map +1 -1
  429. package/node_modules/@happier-dev/cli-common/dist/relayHost/relayHostEngine.js +1442 -365
  430. package/node_modules/@happier-dev/cli-common/dist/relayHost/relayHostEngine.js.map +1 -1
  431. package/node_modules/@happier-dev/cli-common/dist/relayHost/remoteRelayRuntimeInstallCommand.d.ts +8 -0
  432. package/node_modules/@happier-dev/cli-common/dist/relayHost/remoteRelayRuntimeInstallCommand.d.ts.map +1 -0
  433. package/node_modules/@happier-dev/cli-common/dist/relayHost/remoteRelayRuntimeInstallCommand.js +33 -0
  434. package/node_modules/@happier-dev/cli-common/dist/relayHost/remoteRelayRuntimeInstallCommand.js.map +1 -0
  435. package/node_modules/@happier-dev/cli-common/dist/service/launchd.d.ts +1 -0
  436. package/node_modules/@happier-dev/cli-common/dist/service/launchd.d.ts.map +1 -1
  437. package/node_modules/@happier-dev/cli-common/dist/service/launchd.js +4 -0
  438. package/node_modules/@happier-dev/cli-common/dist/service/launchd.js.map +1 -1
  439. package/node_modules/@happier-dev/cli-common/dist/service/manager.d.ts +30 -0
  440. package/node_modules/@happier-dev/cli-common/dist/service/manager.d.ts.map +1 -1
  441. package/node_modules/@happier-dev/cli-common/dist/service/manager.js +197 -24
  442. package/node_modules/@happier-dev/cli-common/dist/service/manager.js.map +1 -1
  443. package/node_modules/@happier-dev/cli-common/dist/service/path.js.map +1 -1
  444. package/node_modules/@happier-dev/cli-common/dist/service/systemd.d.ts +2 -0
  445. package/node_modules/@happier-dev/cli-common/dist/service/systemd.d.ts.map +1 -1
  446. package/node_modules/@happier-dev/cli-common/dist/service/systemd.js +7 -1
  447. package/node_modules/@happier-dev/cli-common/dist/service/systemd.js.map +1 -1
  448. package/node_modules/@happier-dev/cli-common/dist/service/windows.d.ts +49 -0
  449. package/node_modules/@happier-dev/cli-common/dist/service/windows.d.ts.map +1 -1
  450. package/node_modules/@happier-dev/cli-common/dist/service/windows.js +167 -0
  451. package/node_modules/@happier-dev/cli-common/dist/service/windows.js.map +1 -1
  452. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/createScpReadyPayloadArchive.d.ts +7 -0
  453. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/createScpReadyPayloadArchive.d.ts.map +1 -0
  454. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/createScpReadyPayloadArchive.js +41 -0
  455. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/createScpReadyPayloadArchive.js.map +1 -0
  456. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/createScpReadyPayloadCopy.d.ts +5 -0
  457. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/createScpReadyPayloadCopy.d.ts.map +1 -0
  458. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/createScpReadyPayloadCopy.js +51 -0
  459. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/createScpReadyPayloadCopy.js.map +1 -0
  460. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/relayRuntimeKinds.d.ts +2 -0
  461. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/relayRuntimeKinds.d.ts.map +1 -1
  462. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/relayRuntimeKinds.js +1 -0
  463. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/relayRuntimeKinds.js.map +1 -1
  464. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteFirstPartyPayloadInstaller.d.ts +1 -0
  465. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteFirstPartyPayloadInstaller.d.ts.map +1 -1
  466. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteFirstPartyPayloadInstaller.js +104 -61
  467. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteFirstPartyPayloadInstaller.js.map +1 -1
  468. package/node_modules/@happier-dev/cli-common/dist/systemTasks/runSystemTask.d.ts.map +1 -1
  469. package/node_modules/@happier-dev/cli-common/dist/systemTasks/ssh/scpRemotePath.d.ts +2 -0
  470. package/node_modules/@happier-dev/cli-common/dist/systemTasks/ssh/scpRemotePath.d.ts.map +1 -0
  471. package/node_modules/@happier-dev/cli-common/dist/systemTasks/ssh/scpRemotePath.js +13 -0
  472. package/node_modules/@happier-dev/cli-common/dist/systemTasks/ssh/scpRemotePath.js.map +1 -0
  473. package/node_modules/@happier-dev/cli-common/dist/tailscale/commandRunner.d.ts.map +1 -1
  474. package/node_modules/@happier-dev/cli-common/dist/tailscale/commandRunner.js +20 -2
  475. package/node_modules/@happier-dev/cli-common/dist/tailscale/commandRunner.js.map +1 -1
  476. package/node_modules/@happier-dev/cli-common/dist/tailscale/index.d.ts +2 -2
  477. package/node_modules/@happier-dev/cli-common/dist/tailscale/index.d.ts.map +1 -1
  478. package/node_modules/@happier-dev/cli-common/dist/tailscale/index.js +2 -2
  479. package/node_modules/@happier-dev/cli-common/dist/tailscale/index.js.map +1 -1
  480. package/node_modules/@happier-dev/cli-common/dist/tailscale/installStrategy.js.map +1 -1
  481. package/node_modules/@happier-dev/cli-common/dist/tailscale/serveStatus.d.ts +15 -0
  482. package/node_modules/@happier-dev/cli-common/dist/tailscale/serveStatus.d.ts.map +1 -1
  483. package/node_modules/@happier-dev/cli-common/dist/tailscale/serveStatus.js +50 -1
  484. package/node_modules/@happier-dev/cli-common/dist/tailscale/serveStatus.js.map +1 -1
  485. package/node_modules/@happier-dev/cli-common/dist/tailscale/statusSnapshot.d.ts +29 -0
  486. package/node_modules/@happier-dev/cli-common/dist/tailscale/statusSnapshot.d.ts.map +1 -1
  487. package/node_modules/@happier-dev/cli-common/dist/tailscale/statusSnapshot.js +42 -0
  488. package/node_modules/@happier-dev/cli-common/dist/tailscale/statusSnapshot.js.map +1 -1
  489. package/node_modules/@happier-dev/cli-common/dist/tailscale/taskContract.d.ts +2 -2
  490. package/node_modules/@happier-dev/cli-common/dist/tailscale/taskContract.d.ts.map +1 -1
  491. package/node_modules/@happier-dev/cli-common/dist/workspaces/index.d.ts +16 -1
  492. package/node_modules/@happier-dev/cli-common/dist/workspaces/index.d.ts.map +1 -1
  493. package/node_modules/@happier-dev/cli-common/dist/workspaces/index.js +113 -24
  494. package/node_modules/@happier-dev/cli-common/dist/workspaces/index.js.map +1 -1
  495. package/node_modules/@happier-dev/cli-common/expandHomeDirPath.cjs +41 -0
  496. package/node_modules/@happier-dev/cli-common/expandHomeDirPath.d.cts +10 -0
  497. package/node_modules/@happier-dev/cli-common/jsonOwnerBuildLockState.cjs +54 -0
  498. package/node_modules/@happier-dev/cli-common/package.json +57 -0
  499. package/node_modules/@happier-dev/cli-common/processInstance.d.mts +10 -0
  500. package/node_modules/@happier-dev/cli-common/processInstance.mjs +67 -0
  501. package/node_modules/@happier-dev/cli-common/runtimeImportProbePolicy.d.mts +1 -0
  502. package/node_modules/@happier-dev/cli-common/runtimeImportProbePolicy.mjs +5 -0
  503. package/node_modules/@happier-dev/cli-common/workspaceBundleLock.d.mts +39 -0
  504. package/node_modules/@happier-dev/cli-common/workspaceBundleLock.mjs +380 -0
  505. package/node_modules/@happier-dev/cli-common/workspaceLockLease.d.mts +21 -0
  506. package/node_modules/@happier-dev/cli-common/workspaceLockLease.mjs +57 -0
  507. package/node_modules/@happier-dev/connection-supervisor/dist/createManagedConnectionSupervisor.d.ts.map +1 -1
  508. package/node_modules/@happier-dev/connection-supervisor/dist/createManagedConnectionSupervisor.js +47 -9
  509. package/node_modules/@happier-dev/connection-supervisor/dist/createManagedConnectionSupervisor.js.map +1 -1
  510. package/node_modules/@happier-dev/connection-supervisor/dist/createManagedEndpointSupervisor.d.ts.map +1 -1
  511. package/node_modules/@happier-dev/connection-supervisor/dist/createManagedEndpointSupervisor.js +33 -0
  512. package/node_modules/@happier-dev/connection-supervisor/dist/createManagedEndpointSupervisor.js.map +1 -1
  513. package/node_modules/@happier-dev/connection-supervisor/dist/index.d.ts +1 -1
  514. package/node_modules/@happier-dev/connection-supervisor/dist/index.d.ts.map +1 -1
  515. package/node_modules/@happier-dev/connection-supervisor/dist/managedConnectionEvents.js +1 -1
  516. package/node_modules/@happier-dev/connection-supervisor/dist/managedConnectionEvents.js.map +1 -1
  517. package/node_modules/@happier-dev/connection-supervisor/dist/managedConnectionTypes.d.ts +8 -0
  518. package/node_modules/@happier-dev/connection-supervisor/dist/managedConnectionTypes.d.ts.map +1 -1
  519. package/node_modules/@happier-dev/connection-supervisor/dist/managedEndpointSupervisorTypes.d.ts +3 -0
  520. package/node_modules/@happier-dev/connection-supervisor/dist/managedEndpointSupervisorTypes.d.ts.map +1 -1
  521. package/node_modules/@happier-dev/protocol/dist/account/encryptionMigrate.d.ts +419 -213
  522. package/node_modules/@happier-dev/protocol/dist/account/encryptionMigrate.d.ts.map +1 -1
  523. package/node_modules/@happier-dev/protocol/dist/account/encryptionMigrate.js +21 -3
  524. package/node_modules/@happier-dev/protocol/dist/account/encryptionMigrate.js.map +1 -1
  525. package/node_modules/@happier-dev/protocol/dist/account/encryptionMode.d.ts +2 -2
  526. package/node_modules/@happier-dev/protocol/dist/account/profile.d.ts +102 -4
  527. package/node_modules/@happier-dev/protocol/dist/account/profile.d.ts.map +1 -1
  528. package/node_modules/@happier-dev/protocol/dist/account/profile.js +19 -2
  529. package/node_modules/@happier-dev/protocol/dist/account/profile.js.map +1 -1
  530. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettings.d.ts +249 -41
  531. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettings.d.ts.map +1 -1
  532. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettings.js +180 -18
  533. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettings.js.map +1 -1
  534. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsApiV2.d.ts +3 -576
  535. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsApiV2.d.ts.map +1 -1
  536. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsPersistedObject.d.ts +4 -0
  537. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsPersistedObject.d.ts.map +1 -0
  538. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsPersistedObject.js +3 -0
  539. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsPersistedObject.js.map +1 -0
  540. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsStoredContentEnvelope.d.ts +1 -192
  541. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsStoredContentEnvelope.d.ts.map +1 -1
  542. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsStoredContentEnvelope.js +2 -2
  543. package/node_modules/@happier-dev/protocol/dist/account/settings/accountSettingsStoredContentEnvelope.js.map +1 -1
  544. package/node_modules/@happier-dev/protocol/dist/account/settings/connectedServicesSettings.d.ts +79 -0
  545. package/node_modules/@happier-dev/protocol/dist/account/settings/connectedServicesSettings.d.ts.map +1 -0
  546. package/node_modules/@happier-dev/protocol/dist/account/settings/connectedServicesSettings.js +80 -0
  547. package/node_modules/@happier-dev/protocol/dist/account/settings/connectedServicesSettings.js.map +1 -0
  548. package/node_modules/@happier-dev/protocol/dist/account/settings/index.d.ts +3 -1
  549. package/node_modules/@happier-dev/protocol/dist/account/settings/index.d.ts.map +1 -1
  550. package/node_modules/@happier-dev/protocol/dist/account/settings/index.js +3 -1
  551. package/node_modules/@happier-dev/protocol/dist/account/settings/index.js.map +1 -1
  552. package/node_modules/@happier-dev/protocol/dist/account/settings/notificationChannels.d.ts +35 -14
  553. package/node_modules/@happier-dev/protocol/dist/account/settings/notificationChannels.d.ts.map +1 -1
  554. package/node_modules/@happier-dev/protocol/dist/account/settings/notificationChannels.js +21 -2
  555. package/node_modules/@happier-dev/protocol/dist/account/settings/notificationChannels.js.map +1 -1
  556. package/node_modules/@happier-dev/protocol/dist/acpCatalog/settingsV1.d.ts +29 -29
  557. package/node_modules/@happier-dev/protocol/dist/actions/actionApprovalMetadata.d.ts +26 -0
  558. package/node_modules/@happier-dev/protocol/dist/actions/actionApprovalMetadata.d.ts.map +1 -0
  559. package/node_modules/@happier-dev/protocol/dist/actions/actionApprovalMetadata.js +24 -0
  560. package/node_modules/@happier-dev/protocol/dist/actions/actionApprovalMetadata.js.map +1 -0
  561. package/node_modules/@happier-dev/protocol/dist/actions/actionApprovalPolicy.d.ts +15 -0
  562. package/node_modules/@happier-dev/protocol/dist/actions/actionApprovalPolicy.d.ts.map +1 -1
  563. package/node_modules/@happier-dev/protocol/dist/actions/actionApprovalPolicy.js +17 -0
  564. package/node_modules/@happier-dev/protocol/dist/actions/actionApprovalPolicy.js.map +1 -1
  565. package/node_modules/@happier-dev/protocol/dist/actions/actionCatalog.d.ts +4 -0
  566. package/node_modules/@happier-dev/protocol/dist/actions/actionCatalog.d.ts.map +1 -1
  567. package/node_modules/@happier-dev/protocol/dist/actions/actionCatalog.js +4 -0
  568. package/node_modules/@happier-dev/protocol/dist/actions/actionCatalog.js.map +1 -1
  569. package/node_modules/@happier-dev/protocol/dist/actions/actionExecutor.d.ts +269 -17
  570. package/node_modules/@happier-dev/protocol/dist/actions/actionExecutor.d.ts.map +1 -1
  571. package/node_modules/@happier-dev/protocol/dist/actions/actionExecutor.js +1200 -130
  572. package/node_modules/@happier-dev/protocol/dist/actions/actionExecutor.js.map +1 -1
  573. package/node_modules/@happier-dev/protocol/dist/actions/actionIds.d.ts +64 -44
  574. package/node_modules/@happier-dev/protocol/dist/actions/actionIds.d.ts.map +1 -1
  575. package/node_modules/@happier-dev/protocol/dist/actions/actionIds.js +21 -0
  576. package/node_modules/@happier-dev/protocol/dist/actions/actionIds.js.map +1 -1
  577. package/node_modules/@happier-dev/protocol/dist/actions/actionInputVoiceGuidance.d.ts.map +1 -1
  578. package/node_modules/@happier-dev/protocol/dist/actions/actionInputVoiceGuidance.js +13 -4
  579. package/node_modules/@happier-dev/protocol/dist/actions/actionInputVoiceGuidance.js.map +1 -1
  580. package/node_modules/@happier-dev/protocol/dist/actions/actionOptionSources.d.ts +28 -0
  581. package/node_modules/@happier-dev/protocol/dist/actions/actionOptionSources.d.ts.map +1 -0
  582. package/node_modules/@happier-dev/protocol/dist/actions/actionOptionSources.js +77 -0
  583. package/node_modules/@happier-dev/protocol/dist/actions/actionOptionSources.js.map +1 -0
  584. package/node_modules/@happier-dev/protocol/dist/actions/actionSettings.d.ts +73 -35
  585. package/node_modules/@happier-dev/protocol/dist/actions/actionSettings.d.ts.map +1 -1
  586. package/node_modules/@happier-dev/protocol/dist/actions/actionSettings.js +24 -1
  587. package/node_modules/@happier-dev/protocol/dist/actions/actionSettings.js.map +1 -1
  588. package/node_modules/@happier-dev/protocol/dist/actions/actionSpecs.d.ts +487 -65
  589. package/node_modules/@happier-dev/protocol/dist/actions/actionSpecs.d.ts.map +1 -1
  590. package/node_modules/@happier-dev/protocol/dist/actions/actionSpecs.js +1373 -135
  591. package/node_modules/@happier-dev/protocol/dist/actions/actionSpecs.js.map +1 -1
  592. package/node_modules/@happier-dev/protocol/dist/actions/actionSurfaceAvailability.d.ts +24 -0
  593. package/node_modules/@happier-dev/protocol/dist/actions/actionSurfaceAvailability.d.ts.map +1 -0
  594. package/node_modules/@happier-dev/protocol/dist/actions/actionSurfaceAvailability.js +139 -0
  595. package/node_modules/@happier-dev/protocol/dist/actions/actionSurfaceAvailability.js.map +1 -0
  596. package/node_modules/@happier-dev/protocol/dist/actions/actionToolExposure.d.ts +14 -0
  597. package/node_modules/@happier-dev/protocol/dist/actions/actionToolExposure.d.ts.map +1 -0
  598. package/node_modules/@happier-dev/protocol/dist/actions/actionToolExposure.js +46 -0
  599. package/node_modules/@happier-dev/protocol/dist/actions/actionToolExposure.js.map +1 -0
  600. package/node_modules/@happier-dev/protocol/dist/actions/actionUiPlacements.d.ts +5 -5
  601. package/node_modules/@happier-dev/protocol/dist/actions/actionUiPlacements.d.ts.map +1 -1
  602. package/node_modules/@happier-dev/protocol/dist/actions/executionRunActionPermissionMode.d.ts +11 -0
  603. package/node_modules/@happier-dev/protocol/dist/actions/executionRunActionPermissionMode.d.ts.map +1 -0
  604. package/node_modules/@happier-dev/protocol/dist/actions/executionRunActionPermissionMode.js +12 -0
  605. package/node_modules/@happier-dev/protocol/dist/actions/executionRunActionPermissionMode.js.map +1 -0
  606. package/node_modules/@happier-dev/protocol/dist/actions/index.d.ts +8 -3
  607. package/node_modules/@happier-dev/protocol/dist/actions/index.d.ts.map +1 -1
  608. package/node_modules/@happier-dev/protocol/dist/actions/index.js +7 -2
  609. package/node_modules/@happier-dev/protocol/dist/actions/index.js.map +1 -1
  610. package/node_modules/@happier-dev/protocol/dist/actions/operations/actionOperationDeclarationV1.d.ts +11 -0
  611. package/node_modules/@happier-dev/protocol/dist/actions/operations/actionOperationDeclarationV1.d.ts.map +1 -0
  612. package/node_modules/@happier-dev/protocol/dist/actions/operations/actionOperationDeclarationV1.js +9 -0
  613. package/node_modules/@happier-dev/protocol/dist/actions/operations/actionOperationDeclarationV1.js.map +1 -0
  614. package/node_modules/@happier-dev/protocol/dist/actions/operations/actionOperationV1.d.ts +299 -0
  615. package/node_modules/@happier-dev/protocol/dist/actions/operations/actionOperationV1.d.ts.map +1 -0
  616. package/node_modules/@happier-dev/protocol/dist/actions/operations/actionOperationV1.js +180 -0
  617. package/node_modules/@happier-dev/protocol/dist/actions/operations/actionOperationV1.js.map +1 -0
  618. package/node_modules/@happier-dev/protocol/dist/actions/operations/index.d.ts +3 -0
  619. package/node_modules/@happier-dev/protocol/dist/actions/operations/index.d.ts.map +1 -0
  620. package/node_modules/@happier-dev/protocol/dist/actions/operations/index.js +3 -0
  621. package/node_modules/@happier-dev/protocol/dist/actions/operations/index.js.map +1 -0
  622. package/node_modules/@happier-dev/protocol/dist/actions/permissionPrivilege.d.ts +37 -0
  623. package/node_modules/@happier-dev/protocol/dist/actions/permissionPrivilege.d.ts.map +1 -0
  624. package/node_modules/@happier-dev/protocol/dist/actions/permissionPrivilege.js +121 -0
  625. package/node_modules/@happier-dev/protocol/dist/actions/permissionPrivilege.js.map +1 -0
  626. package/node_modules/@happier-dev/protocol/dist/actions/sessionModeIds.js +5 -5
  627. package/node_modules/@happier-dev/protocol/dist/actions/sessionModeIds.js.map +1 -1
  628. package/node_modules/@happier-dev/protocol/dist/actions/sessionSpawnConfigOptions.d.ts +37 -0
  629. package/node_modules/@happier-dev/protocol/dist/actions/sessionSpawnConfigOptions.d.ts.map +1 -0
  630. package/node_modules/@happier-dev/protocol/dist/actions/sessionSpawnConfigOptions.js +80 -0
  631. package/node_modules/@happier-dev/protocol/dist/actions/sessionSpawnConfigOptions.js.map +1 -0
  632. package/node_modules/@happier-dev/protocol/dist/activity/backgroundTask/backgroundTaskRecordV1.d.ts +94 -0
  633. package/node_modules/@happier-dev/protocol/dist/activity/backgroundTask/backgroundTaskRecordV1.d.ts.map +1 -0
  634. package/node_modules/@happier-dev/protocol/dist/activity/backgroundTask/backgroundTaskRecordV1.js +125 -0
  635. package/node_modules/@happier-dev/protocol/dist/activity/backgroundTask/backgroundTaskRecordV1.js.map +1 -0
  636. package/node_modules/@happier-dev/protocol/dist/activity/backgroundTask/backgroundTaskRedaction.d.ts +40 -0
  637. package/node_modules/@happier-dev/protocol/dist/activity/backgroundTask/backgroundTaskRedaction.d.ts.map +1 -0
  638. package/node_modules/@happier-dev/protocol/dist/activity/backgroundTask/backgroundTaskRedaction.js +94 -0
  639. package/node_modules/@happier-dev/protocol/dist/activity/backgroundTask/backgroundTaskRedaction.js.map +1 -0
  640. package/node_modules/@happier-dev/protocol/dist/activity/webhookPayload.d.ts +10 -2
  641. package/node_modules/@happier-dev/protocol/dist/activity/webhookPayload.d.ts.map +1 -1
  642. package/node_modules/@happier-dev/protocol/dist/activity/webhookPayload.js +4 -0
  643. package/node_modules/@happier-dev/protocol/dist/activity/webhookPayload.js.map +1 -1
  644. package/node_modules/@happier-dev/protocol/dist/approvals/approvalRequestV1.d.ts +105 -53
  645. package/node_modules/@happier-dev/protocol/dist/approvals/approvalRequestV1.d.ts.map +1 -1
  646. package/node_modules/@happier-dev/protocol/dist/approvals/approvalRequestV1.js +64 -0
  647. package/node_modules/@happier-dev/protocol/dist/approvals/approvalRequestV1.js.map +1 -1
  648. package/node_modules/@happier-dev/protocol/dist/auth/errors.d.ts +15 -14
  649. package/node_modules/@happier-dev/protocol/dist/auth/errors.d.ts.map +1 -1
  650. package/node_modules/@happier-dev/protocol/dist/auth/errors.js +1 -0
  651. package/node_modules/@happier-dev/protocol/dist/auth/errors.js.map +1 -1
  652. package/node_modules/@happier-dev/protocol/dist/backendSurface/declarationV1.d.ts +52 -0
  653. package/node_modules/@happier-dev/protocol/dist/backendSurface/declarationV1.d.ts.map +1 -0
  654. package/node_modules/@happier-dev/protocol/dist/backendSurface/declarationV1.js +13 -0
  655. package/node_modules/@happier-dev/protocol/dist/backendSurface/declarationV1.js.map +1 -0
  656. package/node_modules/@happier-dev/protocol/dist/bugReports/redaction.d.ts.map +1 -1
  657. package/node_modules/@happier-dev/protocol/dist/bugReports/redaction.js +406 -10
  658. package/node_modules/@happier-dev/protocol/dist/bugReports/redaction.js.map +1 -1
  659. package/node_modules/@happier-dev/protocol/dist/changes.d.ts +11 -29
  660. package/node_modules/@happier-dev/protocol/dist/changes.d.ts.map +1 -1
  661. package/node_modules/@happier-dev/protocol/dist/changes.js +6 -1
  662. package/node_modules/@happier-dev/protocol/dist/changes.js.map +1 -1
  663. package/node_modules/@happier-dev/protocol/dist/checklists.d.ts +2 -2
  664. package/node_modules/@happier-dev/protocol/dist/checklists.d.ts.map +1 -1
  665. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/index.d.ts +4 -0
  666. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/index.d.ts.map +1 -0
  667. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/index.js +4 -0
  668. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/index.js.map +1 -0
  669. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/primitives.d.ts +18 -0
  670. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/primitives.d.ts.map +1 -0
  671. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/primitives.js +45 -0
  672. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/primitives.js.map +1 -0
  673. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/upgradeRequiredV1.d.ts +36 -0
  674. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/upgradeRequiredV1.d.ts.map +1 -0
  675. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/upgradeRequiredV1.js +19 -0
  676. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/upgradeRequiredV1.js.map +1 -0
  677. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/versionEndpointV1.d.ts +35 -0
  678. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/versionEndpointV1.d.ts.map +1 -0
  679. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/versionEndpointV1.js +41 -0
  680. package/node_modules/@happier-dev/protocol/dist/clientCompatibility/versionEndpointV1.js.map +1 -0
  681. package/node_modules/@happier-dev/protocol/dist/common/asyncTtlCache.d.ts.map +1 -1
  682. package/node_modules/@happier-dev/protocol/dist/common/probedResourceCache.d.ts.map +1 -1
  683. package/node_modules/@happier-dev/protocol/dist/connect/accountUsage.d.ts +382 -0
  684. package/node_modules/@happier-dev/protocol/dist/connect/accountUsage.d.ts.map +1 -0
  685. package/node_modules/@happier-dev/protocol/dist/connect/accountUsage.js +264 -0
  686. package/node_modules/@happier-dev/protocol/dist/connect/accountUsage.js.map +1 -0
  687. package/node_modules/@happier-dev/protocol/dist/connect/buildConnectedServiceCredentialRecord.d.ts +12 -0
  688. package/node_modules/@happier-dev/protocol/dist/connect/buildConnectedServiceCredentialRecord.d.ts.map +1 -1
  689. package/node_modules/@happier-dev/protocol/dist/connect/buildConnectedServiceCredentialRecord.js +25 -1
  690. package/node_modules/@happier-dev/protocol/dist/connect/buildConnectedServiceCredentialRecord.js.map +1 -1
  691. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceAuthGroupMemberRuntimeStatePolicy.d.ts +7 -0
  692. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceAuthGroupMemberRuntimeStatePolicy.d.ts.map +1 -0
  693. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceAuthGroupMemberRuntimeStatePolicy.js +40 -0
  694. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceAuthGroupMemberRuntimeStatePolicy.js.map +1 -0
  695. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceBindings.d.ts +74 -0
  696. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceBindings.d.ts.map +1 -0
  697. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceBindings.js +75 -0
  698. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceBindings.js.map +1 -0
  699. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceCipher.d.ts +0 -5
  700. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceCipher.d.ts.map +1 -1
  701. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceCipher.js +0 -8
  702. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceCipher.js.map +1 -1
  703. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceCredentialBinding.d.ts +19 -0
  704. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceCredentialBinding.d.ts.map +1 -0
  705. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceCredentialBinding.js +19 -0
  706. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceCredentialBinding.js.map +1 -0
  707. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceErrors.d.ts +25 -15
  708. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceErrors.d.ts.map +1 -1
  709. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceErrors.js +10 -0
  710. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceErrors.js.map +1 -1
  711. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceLimitCategory.d.ts +43 -0
  712. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceLimitCategory.d.ts.map +1 -0
  713. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceLimitCategory.js +53 -0
  714. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceLimitCategory.js.map +1 -0
  715. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceSchemas.d.ts +1331 -27
  716. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceSchemas.d.ts.map +1 -1
  717. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceSchemas.js +534 -13
  718. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceSchemas.js.map +1 -1
  719. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceUxDiagnostics.d.ts +184 -0
  720. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceUxDiagnostics.d.ts.map +1 -0
  721. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceUxDiagnostics.js +142 -0
  722. package/node_modules/@happier-dev/protocol/dist/connect/connectedServiceUxDiagnostics.js.map +1 -0
  723. package/node_modules/@happier-dev/protocol/dist/connect/normalizeConnectedServiceSelectionInput.d.ts +61 -0
  724. package/node_modules/@happier-dev/protocol/dist/connect/normalizeConnectedServiceSelectionInput.d.ts.map +1 -0
  725. package/node_modules/@happier-dev/protocol/dist/connect/normalizeConnectedServiceSelectionInput.js +148 -0
  726. package/node_modules/@happier-dev/protocol/dist/connect/normalizeConnectedServiceSelectionInput.js.map +1 -0
  727. package/node_modules/@happier-dev/protocol/dist/crypto/accountScopedCipher.d.ts +2 -1
  728. package/node_modules/@happier-dev/protocol/dist/crypto/accountScopedCipher.d.ts.map +1 -1
  729. package/node_modules/@happier-dev/protocol/dist/crypto/accountScopedCipher.js +19 -0
  730. package/node_modules/@happier-dev/protocol/dist/crypto/accountScopedCipher.js.map +1 -1
  731. package/node_modules/@happier-dev/protocol/dist/crypto/base64.d.ts +1 -0
  732. package/node_modules/@happier-dev/protocol/dist/crypto/base64.d.ts.map +1 -1
  733. package/node_modules/@happier-dev/protocol/dist/crypto/base64.js +34 -0
  734. package/node_modules/@happier-dev/protocol/dist/crypto/base64.js.map +1 -1
  735. package/node_modules/@happier-dev/protocol/dist/crypto/canonicalDigest.d.ts +3 -0
  736. package/node_modules/@happier-dev/protocol/dist/crypto/canonicalDigest.d.ts.map +1 -0
  737. package/node_modules/@happier-dev/protocol/dist/crypto/canonicalDigest.js +21 -0
  738. package/node_modules/@happier-dev/protocol/dist/crypto/canonicalDigest.js.map +1 -0
  739. package/node_modules/@happier-dev/protocol/dist/crypto/cryptoGoldenVectors.d.ts +93 -0
  740. package/node_modules/@happier-dev/protocol/dist/crypto/cryptoGoldenVectors.d.ts.map +1 -0
  741. package/node_modules/@happier-dev/protocol/dist/crypto/cryptoGoldenVectors.js +99 -0
  742. package/node_modules/@happier-dev/protocol/dist/crypto/cryptoGoldenVectors.js.map +1 -0
  743. package/node_modules/@happier-dev/protocol/dist/crypto/publicShareCapabilityUrl.d.ts +6 -0
  744. package/node_modules/@happier-dev/protocol/dist/crypto/publicShareCapabilityUrl.d.ts.map +1 -0
  745. package/node_modules/@happier-dev/protocol/dist/crypto/publicShareCapabilityUrl.js +8 -0
  746. package/node_modules/@happier-dev/protocol/dist/crypto/publicShareCapabilityUrl.js.map +1 -0
  747. package/node_modules/@happier-dev/protocol/dist/crypto/publicShareEncryptedDataKeyEnvelopeV0.d.ts +17 -0
  748. package/node_modules/@happier-dev/protocol/dist/crypto/publicShareEncryptedDataKeyEnvelopeV0.d.ts.map +1 -0
  749. package/node_modules/@happier-dev/protocol/dist/crypto/publicShareEncryptedDataKeyEnvelopeV0.js +34 -0
  750. package/node_modules/@happier-dev/protocol/dist/crypto/publicShareEncryptedDataKeyEnvelopeV0.js.map +1 -0
  751. package/node_modules/@happier-dev/protocol/dist/crypto/terminalProvisioningV2.d.ts +18 -0
  752. package/node_modules/@happier-dev/protocol/dist/crypto/terminalProvisioningV2.d.ts.map +1 -1
  753. package/node_modules/@happier-dev/protocol/dist/crypto/terminalProvisioningV2.js +85 -0
  754. package/node_modules/@happier-dev/protocol/dist/crypto/terminalProvisioningV2.js.map +1 -1
  755. package/node_modules/@happier-dev/protocol/dist/daemon/serverWorkStatus.d.ts +52 -0
  756. package/node_modules/@happier-dev/protocol/dist/daemon/serverWorkStatus.d.ts.map +1 -0
  757. package/node_modules/@happier-dev/protocol/dist/daemon/serverWorkStatus.js +34 -0
  758. package/node_modules/@happier-dev/protocol/dist/daemon/serverWorkStatus.js.map +1 -0
  759. package/node_modules/@happier-dev/protocol/dist/daemonExecutionRuns.d.ts +12 -12
  760. package/node_modules/@happier-dev/protocol/dist/daemonTerminal.d.ts +47 -26
  761. package/node_modules/@happier-dev/protocol/dist/daemonTerminal.d.ts.map +1 -1
  762. package/node_modules/@happier-dev/protocol/dist/daemonTerminal.js +26 -14
  763. package/node_modules/@happier-dev/protocol/dist/daemonTerminal.js.map +1 -1
  764. package/node_modules/@happier-dev/protocol/dist/diagnostics/doctorSnapshot.d.ts +352 -0
  765. package/node_modules/@happier-dev/protocol/dist/diagnostics/doctorSnapshot.d.ts.map +1 -1
  766. package/node_modules/@happier-dev/protocol/dist/diagnostics/doctorSnapshot.js +159 -0
  767. package/node_modules/@happier-dev/protocol/dist/diagnostics/doctorSnapshot.js.map +1 -1
  768. package/node_modules/@happier-dev/protocol/dist/directSessions/daemonRpcV1.d.ts +209 -28
  769. package/node_modules/@happier-dev/protocol/dist/directSessions/daemonRpcV1.d.ts.map +1 -1
  770. package/node_modules/@happier-dev/protocol/dist/directSessions/daemonRpcV1.js +94 -0
  771. package/node_modules/@happier-dev/protocol/dist/directSessions/daemonRpcV1.js.map +1 -1
  772. package/node_modules/@happier-dev/protocol/dist/directSessions/linkedSessionMetadata.d.ts +35 -0
  773. package/node_modules/@happier-dev/protocol/dist/directSessions/linkedSessionMetadata.d.ts.map +1 -0
  774. package/node_modules/@happier-dev/protocol/dist/directSessions/linkedSessionMetadata.js +157 -0
  775. package/node_modules/@happier-dev/protocol/dist/directSessions/linkedSessionMetadata.js.map +1 -0
  776. package/node_modules/@happier-dev/protocol/dist/drafts/index.d.ts +2 -0
  777. package/node_modules/@happier-dev/protocol/dist/drafts/index.d.ts.map +1 -0
  778. package/node_modules/@happier-dev/protocol/dist/drafts/index.js +2 -0
  779. package/node_modules/@happier-dev/protocol/dist/drafts/index.js.map +1 -0
  780. package/node_modules/@happier-dev/protocol/dist/drafts/sessionDrafts.d.ts +1016 -0
  781. package/node_modules/@happier-dev/protocol/dist/drafts/sessionDrafts.d.ts.map +1 -0
  782. package/node_modules/@happier-dev/protocol/dist/drafts/sessionDrafts.js +152 -0
  783. package/node_modules/@happier-dev/protocol/dist/drafts/sessionDrafts.js.map +1 -0
  784. package/node_modules/@happier-dev/protocol/dist/e2e/providerScenarios.d.ts +7 -7
  785. package/node_modules/@happier-dev/protocol/dist/e2e/providerSpec.d.ts +4 -4
  786. package/node_modules/@happier-dev/protocol/dist/ephemeralTasks.d.ts +4 -4
  787. package/node_modules/@happier-dev/protocol/dist/executionRunListRequest.d.ts +2 -2
  788. package/node_modules/@happier-dev/protocol/dist/executionRunStartRequest.d.ts +37 -12
  789. package/node_modules/@happier-dev/protocol/dist/executionRunStartRequest.d.ts.map +1 -1
  790. package/node_modules/@happier-dev/protocol/dist/executionRunStartRequest.js +33 -3
  791. package/node_modules/@happier-dev/protocol/dist/executionRunStartRequest.js.map +1 -1
  792. package/node_modules/@happier-dev/protocol/dist/executionRuns.d.ts +85 -27
  793. package/node_modules/@happier-dev/protocol/dist/executionRuns.d.ts.map +1 -1
  794. package/node_modules/@happier-dev/protocol/dist/executionRuns.js +24 -0
  795. package/node_modules/@happier-dev/protocol/dist/executionRuns.js.map +1 -1
  796. package/node_modules/@happier-dev/protocol/dist/features/catalog.d.ts +288 -168
  797. package/node_modules/@happier-dev/protocol/dist/features/catalog.d.ts.map +1 -1
  798. package/node_modules/@happier-dev/protocol/dist/features/catalog.js +128 -0
  799. package/node_modules/@happier-dev/protocol/dist/features/catalog.js.map +1 -1
  800. package/node_modules/@happier-dev/protocol/dist/features/decision.d.ts +91 -71
  801. package/node_modules/@happier-dev/protocol/dist/features/decision.d.ts.map +1 -1
  802. package/node_modules/@happier-dev/protocol/dist/features/embeddedFeaturePolicies.generated.d.ts +1 -1
  803. package/node_modules/@happier-dev/protocol/dist/features/embeddedFeaturePolicies.generated.d.ts.map +1 -1
  804. package/node_modules/@happier-dev/protocol/dist/features/embeddedFeaturePolicies.generated.js +1 -1
  805. package/node_modules/@happier-dev/protocol/dist/features/embeddedFeaturePolicies.generated.js.map +1 -1
  806. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/authCapabilities.d.ts +6 -6
  807. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/bugReportsCapabilities.d.ts +1 -1
  808. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/bugReportsCapabilities.d.ts.map +1 -1
  809. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/bugReportsCapabilities.js +3 -0
  810. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/bugReportsCapabilities.js.map +1 -1
  811. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/capabilitiesSchema.d.ts +71 -6
  812. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/capabilitiesSchema.d.ts.map +1 -1
  813. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/capabilitiesSchema.js +10 -0
  814. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/capabilitiesSchema.js.map +1 -1
  815. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/connectedServicesCapabilities.d.ts +19 -0
  816. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/connectedServicesCapabilities.d.ts.map +1 -0
  817. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/connectedServicesCapabilities.js +18 -0
  818. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/connectedServicesCapabilities.js.map +1 -0
  819. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/encryptionCapabilities.d.ts +4 -4
  820. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/petsCapabilities.d.ts +84 -0
  821. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/petsCapabilities.d.ts.map +1 -0
  822. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/petsCapabilities.js +56 -0
  823. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/petsCapabilities.js.map +1 -0
  824. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverCapabilities.d.ts +6 -0
  825. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverCapabilities.d.ts.map +1 -1
  826. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverIdentityCapabilities.d.ts +9 -0
  827. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverIdentityCapabilities.d.ts.map +1 -0
  828. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverIdentityCapabilities.js +18 -0
  829. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverIdentityCapabilities.js.map +1 -0
  830. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverRetentionCapabilities.d.ts +6 -0
  831. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverRetentionCapabilities.d.ts.map +1 -1
  832. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverRetentionCapabilities.js +1 -0
  833. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/serverRetentionCapabilities.js.map +1 -1
  834. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/sessionCapabilities.d.ts +50 -0
  835. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/sessionCapabilities.d.ts.map +1 -0
  836. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/sessionCapabilities.js +35 -0
  837. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/sessionCapabilities.js.map +1 -0
  838. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/sharingCapabilities.d.ts +16 -0
  839. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/sharingCapabilities.d.ts.map +1 -0
  840. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/sharingCapabilities.js +16 -0
  841. package/node_modules/@happier-dev/protocol/dist/features/payload/capabilities/sharingCapabilities.js.map +1 -0
  842. package/node_modules/@happier-dev/protocol/dist/features/payload/featureGatesSchema.d.ts +36 -0
  843. package/node_modules/@happier-dev/protocol/dist/features/payload/featureGatesSchema.d.ts.map +1 -1
  844. package/node_modules/@happier-dev/protocol/dist/features/payload/featureGatesSchema.js +40 -2
  845. package/node_modules/@happier-dev/protocol/dist/features/payload/featureGatesSchema.js.map +1 -1
  846. package/node_modules/@happier-dev/protocol/dist/features/payload/featuresResponseSchema.d.ts +107 -6
  847. package/node_modules/@happier-dev/protocol/dist/features/payload/featuresResponseSchema.d.ts.map +1 -1
  848. package/node_modules/@happier-dev/protocol/dist/features.d.ts +5 -0
  849. package/node_modules/@happier-dev/protocol/dist/features.d.ts.map +1 -1
  850. package/node_modules/@happier-dev/protocol/dist/features.js +5 -0
  851. package/node_modules/@happier-dev/protocol/dist/features.js.map +1 -1
  852. package/node_modules/@happier-dev/protocol/dist/index.d.ts +111 -36
  853. package/node_modules/@happier-dev/protocol/dist/index.d.ts.map +1 -1
  854. package/node_modules/@happier-dev/protocol/dist/index.js +109 -35
  855. package/node_modules/@happier-dev/protocol/dist/index.js.map +1 -1
  856. package/node_modules/@happier-dev/protocol/dist/installables.d.ts +43 -5
  857. package/node_modules/@happier-dev/protocol/dist/installables.d.ts.map +1 -1
  858. package/node_modules/@happier-dev/protocol/dist/installables.js +29 -2
  859. package/node_modules/@happier-dev/protocol/dist/installables.js.map +1 -1
  860. package/node_modules/@happier-dev/protocol/dist/llmTasks/llmTaskRunnerConfigV1.d.ts +2 -2
  861. package/node_modules/@happier-dev/protocol/dist/llmTasks/llmTaskRunnerConfigV1.d.ts.map +1 -1
  862. package/node_modules/@happier-dev/protocol/dist/llmTasks/llmTaskRunnerConfigV1.js +3 -1
  863. package/node_modules/@happier-dev/protocol/dist/llmTasks/llmTaskRunnerConfigV1.js.map +1 -1
  864. package/node_modules/@happier-dev/protocol/dist/machineFileBrowser.d.ts +2 -2
  865. package/node_modules/@happier-dev/protocol/dist/machineHost/normalizeMachineHost.d.ts +8 -0
  866. package/node_modules/@happier-dev/protocol/dist/machineHost/normalizeMachineHost.d.ts.map +1 -0
  867. package/node_modules/@happier-dev/protocol/dist/machineHost/normalizeMachineHost.js +45 -0
  868. package/node_modules/@happier-dev/protocol/dist/machineHost/normalizeMachineHost.js.map +1 -0
  869. package/node_modules/@happier-dev/protocol/dist/machineIdentity/index.d.ts +3 -0
  870. package/node_modules/@happier-dev/protocol/dist/machineIdentity/index.d.ts.map +1 -0
  871. package/node_modules/@happier-dev/protocol/dist/machineIdentity/index.js +3 -0
  872. package/node_modules/@happier-dev/protocol/dist/machineIdentity/index.js.map +1 -0
  873. package/node_modules/@happier-dev/protocol/dist/machineIdentity/machineLocality.d.ts +17 -0
  874. package/node_modules/@happier-dev/protocol/dist/machineIdentity/machineLocality.d.ts.map +1 -0
  875. package/node_modules/@happier-dev/protocol/dist/machineIdentity/machineLocality.js +18 -0
  876. package/node_modules/@happier-dev/protocol/dist/machineIdentity/machineLocality.js.map +1 -0
  877. package/node_modules/@happier-dev/protocol/dist/machineIdentity/normalizeMachineHomeDir.d.ts +8 -0
  878. package/node_modules/@happier-dev/protocol/dist/machineIdentity/normalizeMachineHomeDir.d.ts.map +1 -0
  879. package/node_modules/@happier-dev/protocol/dist/machineIdentity/normalizeMachineHomeDir.js +73 -0
  880. package/node_modules/@happier-dev/protocol/dist/machineIdentity/normalizeMachineHomeDir.js.map +1 -0
  881. package/node_modules/@happier-dev/protocol/dist/machineOwnership/daemonOwnership.d.ts +96 -0
  882. package/node_modules/@happier-dev/protocol/dist/machineOwnership/daemonOwnership.d.ts.map +1 -0
  883. package/node_modules/@happier-dev/protocol/dist/machineOwnership/daemonOwnership.js +107 -0
  884. package/node_modules/@happier-dev/protocol/dist/machineOwnership/daemonOwnership.js.map +1 -0
  885. package/node_modules/@happier-dev/protocol/dist/machineTransfer/transferStream.d.ts +1 -1
  886. package/node_modules/@happier-dev/protocol/dist/machineTransfer/transferStream.d.ts.map +1 -1
  887. package/node_modules/@happier-dev/protocol/dist/machineTransfer/transferStream.js +9 -2
  888. package/node_modules/@happier-dev/protocol/dist/machineTransfer/transferStream.js.map +1 -1
  889. package/node_modules/@happier-dev/protocol/dist/machines/identity/canonicalMachineId.d.ts +57 -0
  890. package/node_modules/@happier-dev/protocol/dist/machines/identity/canonicalMachineId.d.ts.map +1 -0
  891. package/node_modules/@happier-dev/protocol/dist/machines/identity/canonicalMachineId.js +88 -0
  892. package/node_modules/@happier-dev/protocol/dist/machines/identity/canonicalMachineId.js.map +1 -0
  893. package/node_modules/@happier-dev/protocol/dist/machines/identity/installationIdentity.d.ts +42 -0
  894. package/node_modules/@happier-dev/protocol/dist/machines/identity/installationIdentity.d.ts.map +1 -0
  895. package/node_modules/@happier-dev/protocol/dist/machines/identity/installationIdentity.js +145 -0
  896. package/node_modules/@happier-dev/protocol/dist/machines/identity/installationIdentity.js.map +1 -0
  897. package/node_modules/@happier-dev/protocol/dist/machines/identity/machineReplacement.d.ts +14 -0
  898. package/node_modules/@happier-dev/protocol/dist/machines/identity/machineReplacement.d.ts.map +1 -0
  899. package/node_modules/@happier-dev/protocol/dist/machines/identity/machineReplacement.js +21 -0
  900. package/node_modules/@happier-dev/protocol/dist/machines/identity/machineReplacement.js.map +1 -0
  901. package/node_modules/@happier-dev/protocol/dist/machines/index.d.ts +4 -0
  902. package/node_modules/@happier-dev/protocol/dist/machines/index.d.ts.map +1 -0
  903. package/node_modules/@happier-dev/protocol/dist/machines/index.js +4 -0
  904. package/node_modules/@happier-dev/protocol/dist/machines/index.js.map +1 -0
  905. package/node_modules/@happier-dev/protocol/dist/machines/metadataUpdate.d.ts +21 -0
  906. package/node_modules/@happier-dev/protocol/dist/machines/metadataUpdate.d.ts.map +1 -0
  907. package/node_modules/@happier-dev/protocol/dist/machines/metadataUpdate.js +23 -0
  908. package/node_modules/@happier-dev/protocol/dist/machines/metadataUpdate.js.map +1 -0
  909. package/node_modules/@happier-dev/protocol/dist/mcpServers/daemonRpcV1.d.ts +30 -24
  910. package/node_modules/@happier-dev/protocol/dist/mcpServers/daemonRpcV1.d.ts.map +1 -1
  911. package/node_modules/@happier-dev/protocol/dist/mcpServers/previewV1.d.ts +38 -36
  912. package/node_modules/@happier-dev/protocol/dist/mcpServers/previewV1.d.ts.map +1 -1
  913. package/node_modules/@happier-dev/protocol/dist/mcpServers/sessionSelectionV1.d.ts +25 -2
  914. package/node_modules/@happier-dev/protocol/dist/mcpServers/sessionSelectionV1.d.ts.map +1 -1
  915. package/node_modules/@happier-dev/protocol/dist/mcpServers/sessionSelectionV1.js +30 -0
  916. package/node_modules/@happier-dev/protocol/dist/mcpServers/sessionSelectionV1.js.map +1 -1
  917. package/node_modules/@happier-dev/protocol/dist/mcpServers/settingsV1.d.ts +3 -3
  918. package/node_modules/@happier-dev/protocol/dist/memory/memorySearch.d.ts +8 -8
  919. package/node_modules/@happier-dev/protocol/dist/memory/memorySettings.d.ts +58 -12
  920. package/node_modules/@happier-dev/protocol/dist/memory/memorySettings.d.ts.map +1 -1
  921. package/node_modules/@happier-dev/protocol/dist/memory/memorySettings.js +46 -5
  922. package/node_modules/@happier-dev/protocol/dist/memory/memorySettings.js.map +1 -1
  923. package/node_modules/@happier-dev/protocol/dist/memory/memoryStatus.d.ts +101 -2
  924. package/node_modules/@happier-dev/protocol/dist/memory/memoryStatus.d.ts.map +1 -1
  925. package/node_modules/@happier-dev/protocol/dist/memory/memoryStatus.js +53 -0
  926. package/node_modules/@happier-dev/protocol/dist/memory/memoryStatus.js.map +1 -1
  927. package/node_modules/@happier-dev/protocol/dist/mentionRefV1.d.ts +107 -0
  928. package/node_modules/@happier-dev/protocol/dist/mentionRefV1.d.ts.map +1 -0
  929. package/node_modules/@happier-dev/protocol/dist/mentionRefV1.js +191 -0
  930. package/node_modules/@happier-dev/protocol/dist/mentionRefV1.js.map +1 -0
  931. package/node_modules/@happier-dev/protocol/dist/pets/accountLibrary.d.ts +258 -0
  932. package/node_modules/@happier-dev/protocol/dist/pets/accountLibrary.d.ts.map +1 -0
  933. package/node_modules/@happier-dev/protocol/dist/pets/accountLibrary.js +131 -0
  934. package/node_modules/@happier-dev/protocol/dist/pets/accountLibrary.js.map +1 -0
  935. package/node_modules/@happier-dev/protocol/dist/pets/assetFormats.d.ts +52 -0
  936. package/node_modules/@happier-dev/protocol/dist/pets/assetFormats.d.ts.map +1 -0
  937. package/node_modules/@happier-dev/protocol/dist/pets/assetFormats.js +45 -0
  938. package/node_modules/@happier-dev/protocol/dist/pets/assetFormats.js.map +1 -0
  939. package/node_modules/@happier-dev/protocol/dist/pets/atlasPixelInspection.d.ts +13 -0
  940. package/node_modules/@happier-dev/protocol/dist/pets/atlasPixelInspection.d.ts.map +1 -0
  941. package/node_modules/@happier-dev/protocol/dist/pets/atlasPixelInspection.js +51 -0
  942. package/node_modules/@happier-dev/protocol/dist/pets/atlasPixelInspection.js.map +1 -0
  943. package/node_modules/@happier-dev/protocol/dist/pets/constants.d.ts +85 -0
  944. package/node_modules/@happier-dev/protocol/dist/pets/constants.d.ts.map +1 -0
  945. package/node_modules/@happier-dev/protocol/dist/pets/constants.js +59 -0
  946. package/node_modules/@happier-dev/protocol/dist/pets/constants.js.map +1 -0
  947. package/node_modules/@happier-dev/protocol/dist/pets/daemonRpc.d.ts +610 -0
  948. package/node_modules/@happier-dev/protocol/dist/pets/daemonRpc.d.ts.map +1 -0
  949. package/node_modules/@happier-dev/protocol/dist/pets/daemonRpc.js +265 -0
  950. package/node_modules/@happier-dev/protocol/dist/pets/daemonRpc.js.map +1 -0
  951. package/node_modules/@happier-dev/protocol/dist/pets/index.d.ts +8 -0
  952. package/node_modules/@happier-dev/protocol/dist/pets/index.d.ts.map +1 -0
  953. package/node_modules/@happier-dev/protocol/dist/pets/index.js +8 -0
  954. package/node_modules/@happier-dev/protocol/dist/pets/index.js.map +1 -0
  955. package/node_modules/@happier-dev/protocol/dist/pets/manifest.d.ts +20 -0
  956. package/node_modules/@happier-dev/protocol/dist/pets/manifest.d.ts.map +1 -0
  957. package/node_modules/@happier-dev/protocol/dist/pets/manifest.js +17 -0
  958. package/node_modules/@happier-dev/protocol/dist/pets/manifest.js.map +1 -0
  959. package/node_modules/@happier-dev/protocol/dist/pets/source.d.ts +79 -0
  960. package/node_modules/@happier-dev/protocol/dist/pets/source.d.ts.map +1 -0
  961. package/node_modules/@happier-dev/protocol/dist/pets/source.js +62 -0
  962. package/node_modules/@happier-dev/protocol/dist/pets/source.js.map +1 -0
  963. package/node_modules/@happier-dev/protocol/dist/profiles/backendProfileSchema.d.ts +22 -8
  964. package/node_modules/@happier-dev/protocol/dist/profiles/backendProfileSchema.d.ts.map +1 -1
  965. package/node_modules/@happier-dev/protocol/dist/profiles/backendProfileSchema.js +5 -0
  966. package/node_modules/@happier-dev/protocol/dist/profiles/backendProfileSchema.js.map +1 -1
  967. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptAssetsV1.d.ts +41 -41
  968. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptBundleSchemas.d.ts +3 -3
  969. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptDocV2.d.ts +1 -1
  970. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptExternalLinksV1.d.ts +8 -8
  971. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptInvocationsV1.d.ts +3 -0
  972. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptInvocationsV1.d.ts.map +1 -1
  973. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptInvocationsV1.js +1 -1
  974. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptInvocationsV1.js.map +1 -1
  975. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptPlacementV1.d.ts +2 -2
  976. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptRegistriesV1.d.ts +18 -18
  977. package/node_modules/@happier-dev/protocol/dist/promptLibrary/promptStacksV1.d.ts +18 -18
  978. package/node_modules/@happier-dev/protocol/dist/prompts/buildAppendSystemPromptBaseV1.d.ts +2 -0
  979. package/node_modules/@happier-dev/protocol/dist/prompts/buildAppendSystemPromptBaseV1.d.ts.map +1 -1
  980. package/node_modules/@happier-dev/protocol/dist/prompts/buildAppendSystemPromptBaseV1.js +7 -2
  981. package/node_modules/@happier-dev/protocol/dist/prompts/buildAppendSystemPromptBaseV1.js.map +1 -1
  982. package/node_modules/@happier-dev/protocol/dist/prompts/changeTitleInstructionV1.js.map +1 -1
  983. package/node_modules/@happier-dev/protocol/dist/prompts/codingPromptBehaviorV1.d.ts +54 -0
  984. package/node_modules/@happier-dev/protocol/dist/prompts/codingPromptBehaviorV1.d.ts.map +1 -0
  985. package/node_modules/@happier-dev/protocol/dist/prompts/codingPromptBehaviorV1.js +67 -0
  986. package/node_modules/@happier-dev/protocol/dist/prompts/codingPromptBehaviorV1.js.map +1 -0
  987. package/node_modules/@happier-dev/protocol/dist/prompts/executionRunsGuidanceV1.d.ts.map +1 -1
  988. package/node_modules/@happier-dev/protocol/dist/prompts/executionRunsGuidanceV1.js +15 -15
  989. package/node_modules/@happier-dev/protocol/dist/prompts/executionRunsGuidanceV1.js.map +1 -1
  990. package/node_modules/@happier-dev/protocol/dist/prompts/systemPromptBaseV1.d.ts +10 -0
  991. package/node_modules/@happier-dev/protocol/dist/prompts/systemPromptBaseV1.d.ts.map +1 -1
  992. package/node_modules/@happier-dev/protocol/dist/prompts/systemPromptBaseV1.js +28 -4
  993. package/node_modules/@happier-dev/protocol/dist/prompts/systemPromptBaseV1.js.map +1 -1
  994. package/node_modules/@happier-dev/protocol/dist/providers/agentProviderIdsV1.d.ts +3 -2
  995. package/node_modules/@happier-dev/protocol/dist/providers/agentProviderIdsV1.d.ts.map +1 -1
  996. package/node_modules/@happier-dev/protocol/dist/providers/agentProviderIdsV1.js +1 -1
  997. package/node_modules/@happier-dev/protocol/dist/providers/agentProviderIdsV1.js.map +1 -1
  998. package/node_modules/@happier-dev/protocol/dist/providers/claude/builtInBackendProfiles.d.ts.map +1 -1
  999. package/node_modules/@happier-dev/protocol/dist/providers/claude/builtInBackendProfiles.js +60 -0
  1000. package/node_modules/@happier-dev/protocol/dist/providers/claude/builtInBackendProfiles.js.map +1 -1
  1001. package/node_modules/@happier-dev/protocol/dist/providers/claude/index.d.ts +4 -0
  1002. package/node_modules/@happier-dev/protocol/dist/providers/claude/index.d.ts.map +1 -0
  1003. package/node_modules/@happier-dev/protocol/dist/providers/claude/index.js +4 -0
  1004. package/node_modules/@happier-dev/protocol/dist/providers/claude/index.js.map +1 -0
  1005. package/node_modules/@happier-dev/protocol/dist/providers/claude/memoryDefaults.d.ts +1 -1
  1006. package/node_modules/@happier-dev/protocol/dist/providers/claude/sdkSkills.d.ts +6 -0
  1007. package/node_modules/@happier-dev/protocol/dist/providers/claude/sdkSkills.d.ts.map +1 -0
  1008. package/node_modules/@happier-dev/protocol/dist/providers/claude/sdkSkills.js +17 -0
  1009. package/node_modules/@happier-dev/protocol/dist/providers/claude/sdkSkills.js.map +1 -0
  1010. package/node_modules/@happier-dev/protocol/dist/providers/claude/sessionTasks.d.ts +100 -0
  1011. package/node_modules/@happier-dev/protocol/dist/providers/claude/sessionTasks.d.ts.map +1 -0
  1012. package/node_modules/@happier-dev/protocol/dist/providers/claude/sessionTasks.js +301 -0
  1013. package/node_modules/@happier-dev/protocol/dist/providers/claude/sessionTasks.js.map +1 -0
  1014. package/node_modules/@happier-dev/protocol/dist/providers/claude/slashCommands.d.ts +37 -0
  1015. package/node_modules/@happier-dev/protocol/dist/providers/claude/slashCommands.d.ts.map +1 -0
  1016. package/node_modules/@happier-dev/protocol/dist/providers/claude/slashCommands.js +60 -0
  1017. package/node_modules/@happier-dev/protocol/dist/providers/claude/slashCommands.js.map +1 -0
  1018. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerCapabilities.d.ts +10 -0
  1019. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerCapabilities.d.ts.map +1 -0
  1020. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerCapabilities.js +11 -0
  1021. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerCapabilities.js.map +1 -0
  1022. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerGoal.d.ts +35 -0
  1023. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerGoal.d.ts.map +1 -0
  1024. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerGoal.js +74 -0
  1025. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerGoal.js.map +1 -0
  1026. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerPermissions.d.ts +12 -0
  1027. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerPermissions.d.ts.map +1 -0
  1028. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerPermissions.js +21 -0
  1029. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerPermissions.js.map +1 -0
  1030. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerPlugin.d.ts +15 -0
  1031. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerPlugin.d.ts.map +1 -0
  1032. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerPlugin.js +48 -0
  1033. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerPlugin.js.map +1 -0
  1034. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerTurnInput.d.ts +65 -0
  1035. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerTurnInput.d.ts.map +1 -0
  1036. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerTurnInput.js +43 -0
  1037. package/node_modules/@happier-dev/protocol/dist/providers/codex/appServerTurnInput.js.map +1 -0
  1038. package/node_modules/@happier-dev/protocol/dist/providers/codex/backendMode.d.ts +1 -1
  1039. package/node_modules/@happier-dev/protocol/dist/providers/codex/backendMode.d.ts.map +1 -1
  1040. package/node_modules/@happier-dev/protocol/dist/providers/codex/builtInBackendProfiles.d.ts.map +1 -1
  1041. package/node_modules/@happier-dev/protocol/dist/providers/codex/builtInBackendProfiles.js +3 -0
  1042. package/node_modules/@happier-dev/protocol/dist/providers/codex/builtInBackendProfiles.js.map +1 -1
  1043. package/node_modules/@happier-dev/protocol/dist/providers/codex/index.d.ts +7 -0
  1044. package/node_modules/@happier-dev/protocol/dist/providers/codex/index.d.ts.map +1 -0
  1045. package/node_modules/@happier-dev/protocol/dist/providers/codex/index.js +7 -0
  1046. package/node_modules/@happier-dev/protocol/dist/providers/codex/index.js.map +1 -0
  1047. package/node_modules/@happier-dev/protocol/dist/providers/codex/installables.d.ts +2 -2
  1048. package/node_modules/@happier-dev/protocol/dist/providers/codex/installables.d.ts.map +1 -1
  1049. package/node_modules/@happier-dev/protocol/dist/providers/gemini/builtInBackendProfiles.d.ts.map +1 -1
  1050. package/node_modules/@happier-dev/protocol/dist/providers/gemini/builtInBackendProfiles.js +4 -2
  1051. package/node_modules/@happier-dev/protocol/dist/providers/gemini/builtInBackendProfiles.js.map +1 -1
  1052. package/node_modules/@happier-dev/protocol/dist/providers/github/installables.d.ts +5 -0
  1053. package/node_modules/@happier-dev/protocol/dist/providers/github/installables.d.ts.map +1 -0
  1054. package/node_modules/@happier-dev/protocol/dist/providers/github/installables.js +5 -0
  1055. package/node_modules/@happier-dev/protocol/dist/providers/github/installables.js.map +1 -0
  1056. package/node_modules/@happier-dev/protocol/dist/providers/kiro/acpCatalog.d.ts +2 -2
  1057. package/node_modules/@happier-dev/protocol/dist/providers/opencode/appSkills.d.ts +11 -0
  1058. package/node_modules/@happier-dev/protocol/dist/providers/opencode/appSkills.d.ts.map +1 -0
  1059. package/node_modules/@happier-dev/protocol/dist/providers/opencode/appSkills.js +26 -0
  1060. package/node_modules/@happier-dev/protocol/dist/providers/opencode/appSkills.js.map +1 -0
  1061. package/node_modules/@happier-dev/protocol/dist/providers/opencode/index.d.ts +4 -0
  1062. package/node_modules/@happier-dev/protocol/dist/providers/opencode/index.d.ts.map +1 -0
  1063. package/node_modules/@happier-dev/protocol/dist/providers/opencode/index.js +4 -0
  1064. package/node_modules/@happier-dev/protocol/dist/providers/opencode/index.js.map +1 -0
  1065. package/node_modules/@happier-dev/protocol/dist/providers/opencode/sessionTodo.d.ts +17 -0
  1066. package/node_modules/@happier-dev/protocol/dist/providers/opencode/sessionTodo.d.ts.map +1 -0
  1067. package/node_modules/@happier-dev/protocol/dist/providers/opencode/sessionTodo.js +58 -0
  1068. package/node_modules/@happier-dev/protocol/dist/providers/opencode/sessionTodo.js.map +1 -0
  1069. package/node_modules/@happier-dev/protocol/dist/push/pushNotificationActions.d.ts +8 -8
  1070. package/node_modules/@happier-dev/protocol/dist/push/pushNotificationActions.d.ts.map +1 -1
  1071. package/node_modules/@happier-dev/protocol/dist/replaySeedBudget.d.ts +48 -0
  1072. package/node_modules/@happier-dev/protocol/dist/replaySeedBudget.d.ts.map +1 -0
  1073. package/node_modules/@happier-dev/protocol/dist/replaySeedBudget.js +60 -0
  1074. package/node_modules/@happier-dev/protocol/dist/replaySeedBudget.js.map +1 -0
  1075. package/node_modules/@happier-dev/protocol/dist/retention/serverRetentionPolicyV2.d.ts +43 -0
  1076. package/node_modules/@happier-dev/protocol/dist/retention/serverRetentionPolicyV2.d.ts.map +1 -0
  1077. package/node_modules/@happier-dev/protocol/dist/retention/serverRetentionPolicyV2.js +17 -0
  1078. package/node_modules/@happier-dev/protocol/dist/retention/serverRetentionPolicyV2.js.map +1 -0
  1079. package/node_modules/@happier-dev/protocol/dist/reviews/ReviewFinding.d.ts +10 -10
  1080. package/node_modules/@happier-dev/protocol/dist/reviews/ReviewQuestion.d.ts +2 -2
  1081. package/node_modules/@happier-dev/protocol/dist/reviews/reviewStart.d.ts +10 -1
  1082. package/node_modules/@happier-dev/protocol/dist/reviews/reviewStart.d.ts.map +1 -1
  1083. package/node_modules/@happier-dev/protocol/dist/reviews/reviewStart.js +3 -1
  1084. package/node_modules/@happier-dev/protocol/dist/reviews/reviewStart.js.map +1 -1
  1085. package/node_modules/@happier-dev/protocol/dist/rpc.d.ts +231 -126
  1086. package/node_modules/@happier-dev/protocol/dist/rpc.d.ts.map +1 -1
  1087. package/node_modules/@happier-dev/protocol/dist/rpc.js +168 -0
  1088. package/node_modules/@happier-dev/protocol/dist/rpc.js.map +1 -1
  1089. package/node_modules/@happier-dev/protocol/dist/rpcErrors.d.ts +16 -0
  1090. package/node_modules/@happier-dev/protocol/dist/rpcErrors.d.ts.map +1 -1
  1091. package/node_modules/@happier-dev/protocol/dist/rpcErrors.js +44 -0
  1092. package/node_modules/@happier-dev/protocol/dist/rpcErrors.js.map +1 -1
  1093. package/node_modules/@happier-dev/protocol/dist/scm.d.ts +555 -173
  1094. package/node_modules/@happier-dev/protocol/dist/scm.d.ts.map +1 -1
  1095. package/node_modules/@happier-dev/protocol/dist/scm.js +232 -45
  1096. package/node_modules/@happier-dev/protocol/dist/scm.js.map +1 -1
  1097. package/node_modules/@happier-dev/protocol/dist/scmBranches.d.ts +112 -37
  1098. package/node_modules/@happier-dev/protocol/dist/scmBranches.d.ts.map +1 -1
  1099. package/node_modules/@happier-dev/protocol/dist/scmBranches.js +15 -1
  1100. package/node_modules/@happier-dev/protocol/dist/scmBranches.js.map +1 -1
  1101. package/node_modules/@happier-dev/protocol/dist/scmCapabilities.d.ts.map +1 -1
  1102. package/node_modules/@happier-dev/protocol/dist/scmCapabilities.js +38 -0
  1103. package/node_modules/@happier-dev/protocol/dist/scmCapabilities.js.map +1 -1
  1104. package/node_modules/@happier-dev/protocol/dist/scmErrorCodes.d.ts +43 -0
  1105. package/node_modules/@happier-dev/protocol/dist/scmErrorCodes.d.ts.map +1 -0
  1106. package/node_modules/@happier-dev/protocol/dist/scmErrorCodes.js +42 -0
  1107. package/node_modules/@happier-dev/protocol/dist/scmErrorCodes.js.map +1 -0
  1108. package/node_modules/@happier-dev/protocol/dist/scmPullRequests.d.ts +594 -0
  1109. package/node_modules/@happier-dev/protocol/dist/scmPullRequests.d.ts.map +1 -0
  1110. package/node_modules/@happier-dev/protocol/dist/scmPullRequests.js +192 -0
  1111. package/node_modules/@happier-dev/protocol/dist/scmPullRequests.js.map +1 -0
  1112. package/node_modules/@happier-dev/protocol/dist/scmRepositoryProvisioning.d.ts +878 -0
  1113. package/node_modules/@happier-dev/protocol/dist/scmRepositoryProvisioning.d.ts.map +1 -0
  1114. package/node_modules/@happier-dev/protocol/dist/scmRepositoryProvisioning.js +109 -0
  1115. package/node_modules/@happier-dev/protocol/dist/scmRepositoryProvisioning.js.map +1 -0
  1116. package/node_modules/@happier-dev/protocol/dist/scmRequestBase.d.ts +26 -0
  1117. package/node_modules/@happier-dev/protocol/dist/scmRequestBase.d.ts.map +1 -0
  1118. package/node_modules/@happier-dev/protocol/dist/scmRequestBase.js +11 -0
  1119. package/node_modules/@happier-dev/protocol/dist/scmRequestBase.js.map +1 -0
  1120. package/node_modules/@happier-dev/protocol/dist/scmStash.d.ts +60 -45
  1121. package/node_modules/@happier-dev/protocol/dist/scmStash.d.ts.map +1 -1
  1122. package/node_modules/@happier-dev/protocol/dist/scmWorktreeName.d.ts +52 -0
  1123. package/node_modules/@happier-dev/protocol/dist/scmWorktreeName.d.ts.map +1 -0
  1124. package/node_modules/@happier-dev/protocol/dist/scmWorktreeName.js +85 -0
  1125. package/node_modules/@happier-dev/protocol/dist/scmWorktreeName.js.map +1 -0
  1126. package/node_modules/@happier-dev/protocol/dist/scmWorktrees.d.ts +49 -37
  1127. package/node_modules/@happier-dev/protocol/dist/scmWorktrees.d.ts.map +1 -1
  1128. package/node_modules/@happier-dev/protocol/dist/sentFrom.d.ts +10 -10
  1129. package/node_modules/@happier-dev/protocol/dist/sentFrom.d.ts.map +1 -1
  1130. package/node_modules/@happier-dev/protocol/dist/serverControl/contract.d.ts +22 -18
  1131. package/node_modules/@happier-dev/protocol/dist/serverControl/contract.d.ts.map +1 -1
  1132. package/node_modules/@happier-dev/protocol/dist/serverUrls/index.d.ts +1 -0
  1133. package/node_modules/@happier-dev/protocol/dist/serverUrls/index.d.ts.map +1 -1
  1134. package/node_modules/@happier-dev/protocol/dist/serverUrls/index.js +1 -0
  1135. package/node_modules/@happier-dev/protocol/dist/serverUrls/index.js.map +1 -1
  1136. package/node_modules/@happier-dev/protocol/dist/serverUrls/loopbackHostname.d.ts +36 -0
  1137. package/node_modules/@happier-dev/protocol/dist/serverUrls/loopbackHostname.d.ts.map +1 -0
  1138. package/node_modules/@happier-dev/protocol/dist/serverUrls/loopbackHostname.js +65 -0
  1139. package/node_modules/@happier-dev/protocol/dist/serverUrls/loopbackHostname.js.map +1 -0
  1140. package/node_modules/@happier-dev/protocol/dist/serverUrls/serverUrlComparableKey.d.ts +21 -1
  1141. package/node_modules/@happier-dev/protocol/dist/serverUrls/serverUrlComparableKey.d.ts.map +1 -1
  1142. package/node_modules/@happier-dev/protocol/dist/serverUrls/serverUrlComparableKey.js +26 -0
  1143. package/node_modules/@happier-dev/protocol/dist/serverUrls/serverUrlComparableKey.js.map +1 -1
  1144. package/node_modules/@happier-dev/protocol/dist/session/attachMetadataIdentityPolicy.d.ts +1 -1
  1145. package/node_modules/@happier-dev/protocol/dist/session/attachMetadataIdentityPolicy.d.ts.map +1 -1
  1146. package/node_modules/@happier-dev/protocol/dist/sessionActivityHeadlineOrdering.d.ts +74 -0
  1147. package/node_modules/@happier-dev/protocol/dist/sessionActivityHeadlineOrdering.d.ts.map +1 -0
  1148. package/node_modules/@happier-dev/protocol/dist/sessionActivityHeadlineOrdering.js +66 -0
  1149. package/node_modules/@happier-dev/protocol/dist/sessionActivityHeadlineOrdering.js.map +1 -0
  1150. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromExecutionRunStatus.d.ts +14 -0
  1151. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromExecutionRunStatus.d.ts.map +1 -0
  1152. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromExecutionRunStatus.js +29 -0
  1153. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromExecutionRunStatus.js.map +1 -0
  1154. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromSubagentStatus.d.ts +34 -0
  1155. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromSubagentStatus.d.ts.map +1 -0
  1156. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromSubagentStatus.js +54 -0
  1157. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromSubagentStatus.js.map +1 -0
  1158. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromWorkflowAgentStatus.d.ts +10 -0
  1159. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromWorkflowAgentStatus.d.ts.map +1 -0
  1160. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromWorkflowAgentStatus.js +30 -0
  1161. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromWorkflowAgentStatus.js.map +1 -0
  1162. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromWorkflowRunStatus.d.ts +10 -0
  1163. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromWorkflowRunStatus.d.ts.map +1 -0
  1164. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromWorkflowRunStatus.js +33 -0
  1165. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/fromWorkflowRunStatus.js.map +1 -0
  1166. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/index.d.ts +5 -0
  1167. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/index.d.ts.map +1 -0
  1168. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/index.js +5 -0
  1169. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/adapters/index.js.map +1 -0
  1170. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityEntryId.d.ts +71 -0
  1171. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityEntryId.d.ts.map +1 -0
  1172. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityEntryId.js +119 -0
  1173. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityEntryId.js.map +1 -0
  1174. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityEntryV1.d.ts +81 -0
  1175. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityEntryV1.d.ts.map +1 -0
  1176. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityEntryV1.js +143 -0
  1177. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityEntryV1.js.map +1 -0
  1178. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityHeadlineBuild.d.ts +41 -0
  1179. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityHeadlineBuild.d.ts.map +1 -0
  1180. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityHeadlineBuild.js +77 -0
  1181. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityHeadlineBuild.js.map +1 -0
  1182. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityHeadlineV1.d.ts +115 -0
  1183. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityHeadlineV1.d.ts.map +1 -0
  1184. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityHeadlineV1.js +113 -0
  1185. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityHeadlineV1.js.map +1 -0
  1186. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityKindV1.d.ts +32 -0
  1187. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityKindV1.d.ts.map +1 -0
  1188. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityKindV1.js +31 -0
  1189. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityKindV1.js.map +1 -0
  1190. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityStatusV1.d.ts +100 -0
  1191. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityStatusV1.d.ts.map +1 -0
  1192. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityStatusV1.js +129 -0
  1193. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityStatusV1.js.map +1 -0
  1194. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityToneV1.d.ts +25 -0
  1195. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityToneV1.d.ts.map +1 -0
  1196. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityToneV1.js +46 -0
  1197. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/agentActivityToneV1.js.map +1 -0
  1198. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/index.d.ts +10 -0
  1199. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/index.d.ts.map +1 -0
  1200. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/index.js +10 -0
  1201. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/index.js.map +1 -0
  1202. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/workflowAgentSidechainId.d.ts +33 -0
  1203. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/workflowAgentSidechainId.d.ts.map +1 -0
  1204. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/workflowAgentSidechainId.js +38 -0
  1205. package/node_modules/@happier-dev/protocol/dist/sessionAgentActivity/workflowAgentSidechainId.js.map +1 -0
  1206. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransition.d.ts +409 -0
  1207. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransition.d.ts.map +1 -0
  1208. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransition.js +457 -0
  1209. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransition.js.map +1 -0
  1210. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionDivider.d.ts +110 -0
  1211. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionDivider.d.ts.map +1 -0
  1212. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionDivider.js +184 -0
  1213. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionDivider.js.map +1 -0
  1214. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionEffectStage.contract.test-d.d.ts +2 -0
  1215. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionEffectStage.contract.test-d.d.ts.map +1 -0
  1216. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionEffectStage.contract.test-d.js +2 -0
  1217. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionEffectStage.contract.test-d.js.map +1 -0
  1218. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionEffectStage.d.ts +155 -0
  1219. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionEffectStage.d.ts.map +1 -0
  1220. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionEffectStage.js +54 -0
  1221. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionEffectStage.js.map +1 -0
  1222. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionVectors.d.ts +808 -0
  1223. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionVectors.d.ts.map +1 -0
  1224. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionVectors.js +577 -0
  1225. package/node_modules/@happier-dev/protocol/dist/sessionAgentTransitionVectors.js.map +1 -0
  1226. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/buildFieldArtifacts.d.ts +12 -1
  1227. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/buildFieldArtifacts.d.ts.map +1 -1
  1228. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/buildFieldArtifacts.js +10 -0
  1229. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/buildFieldArtifacts.js.map +1 -1
  1230. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/contextKinds.d.ts +1 -1
  1231. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/contextKinds.d.ts.map +1 -1
  1232. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/fieldCatalog.d.ts +537 -330
  1233. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/fieldCatalog.d.ts.map +1 -1
  1234. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/fieldCatalog.js +111 -1
  1235. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/fieldCatalog.js.map +1 -1
  1236. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/fieldDefinition.d.ts +6 -4
  1237. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/fieldDefinition.d.ts.map +1 -1
  1238. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/fieldDefinition.js.map +1 -1
  1239. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/index.d.ts +757 -440
  1240. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/index.d.ts.map +1 -1
  1241. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/index.js +5 -1
  1242. package/node_modules/@happier-dev/protocol/dist/sessionAuthoring/index.js.map +1 -1
  1243. package/node_modules/@happier-dev/protocol/dist/sessionChanges/reconcileWithScmSnapshot.d.ts.map +1 -1
  1244. package/node_modules/@happier-dev/protocol/dist/sessionChanges/reconcileWithScmSnapshot.js +90 -3
  1245. package/node_modules/@happier-dev/protocol/dist/sessionChanges/reconcileWithScmSnapshot.js.map +1 -1
  1246. package/node_modules/@happier-dev/protocol/dist/sessionChanges/schemas.d.ts +76 -76
  1247. package/node_modules/@happier-dev/protocol/dist/sessionContinueWithReplay.d.ts +8 -8
  1248. package/node_modules/@happier-dev/protocol/dist/sessionContinueWithReplay.d.ts.map +1 -1
  1249. package/node_modules/@happier-dev/protocol/dist/sessionContinueWithReplay.js +3 -2
  1250. package/node_modules/@happier-dev/protocol/dist/sessionContinueWithReplay.js.map +1 -1
  1251. package/node_modules/@happier-dev/protocol/dist/sessionControl/contract.d.ts +2723 -359
  1252. package/node_modules/@happier-dev/protocol/dist/sessionControl/contract.d.ts.map +1 -1
  1253. package/node_modules/@happier-dev/protocol/dist/sessionControl/contract.js +190 -10
  1254. package/node_modules/@happier-dev/protocol/dist/sessionControl/contract.js.map +1 -1
  1255. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffRpc.d.ts +1 -1
  1256. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffRpc.d.ts.map +1 -1
  1257. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffRpc.js +1 -1
  1258. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffRpc.js.map +1 -1
  1259. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffSchemas.d.ts +401 -91
  1260. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffSchemas.d.ts.map +1 -1
  1261. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffSchemas.js +66 -0
  1262. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffSchemas.js.map +1 -1
  1263. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffStatus.d.ts +32 -31
  1264. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffStatus.d.ts.map +1 -1
  1265. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffTypes.d.ts +10 -5
  1266. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffTypes.d.ts.map +1 -1
  1267. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffTypes.js +1 -1
  1268. package/node_modules/@happier-dev/protocol/dist/sessionControl/handoff/handoffTypes.js.map +1 -1
  1269. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionPendingInputInterruptAndRunV1.d.ts +30 -0
  1270. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionPendingInputInterruptAndRunV1.d.ts.map +1 -0
  1271. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionPendingInputInterruptAndRunV1.js +42 -0
  1272. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionPendingInputInterruptAndRunV1.js.map +1 -0
  1273. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionPendingQueueWakeV1.d.ts +49 -0
  1274. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionPendingQueueWakeV1.d.ts.map +1 -0
  1275. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionPendingQueueWakeV1.js +35 -0
  1276. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionPendingQueueWakeV1.js.map +1 -0
  1277. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionTerminalComposerClearV1.d.ts +48 -0
  1278. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionTerminalComposerClearV1.d.ts.map +1 -0
  1279. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionTerminalComposerClearV1.js +49 -0
  1280. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionTerminalComposerClearV1.js.map +1 -0
  1281. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionUsageLimitRecoveryOperationResultV1.d.ts +236 -0
  1282. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionUsageLimitRecoveryOperationResultV1.d.ts.map +1 -0
  1283. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionUsageLimitRecoveryOperationResultV1.js +318 -0
  1284. package/node_modules/@happier-dev/protocol/dist/sessionControl/sessionUsageLimitRecoveryOperationResultV1.js.map +1 -0
  1285. package/node_modules/@happier-dev/protocol/dist/sessionFolders/folderAssignments.d.ts +258 -0
  1286. package/node_modules/@happier-dev/protocol/dist/sessionFolders/folderAssignments.d.ts.map +1 -0
  1287. package/node_modules/@happier-dev/protocol/dist/sessionFolders/folderAssignments.js +27 -0
  1288. package/node_modules/@happier-dev/protocol/dist/sessionFolders/folderAssignments.js.map +1 -0
  1289. package/node_modules/@happier-dev/protocol/dist/sessionFolders/folderSettings.d.ts +63 -0
  1290. package/node_modules/@happier-dev/protocol/dist/sessionFolders/folderSettings.d.ts.map +1 -0
  1291. package/node_modules/@happier-dev/protocol/dist/sessionFolders/folderSettings.js +52 -0
  1292. package/node_modules/@happier-dev/protocol/dist/sessionFolders/folderSettings.js.map +1 -0
  1293. package/node_modules/@happier-dev/protocol/dist/sessionFolders/index.d.ts +3 -0
  1294. package/node_modules/@happier-dev/protocol/dist/sessionFolders/index.d.ts.map +1 -0
  1295. package/node_modules/@happier-dev/protocol/dist/sessionFolders/index.js +3 -0
  1296. package/node_modules/@happier-dev/protocol/dist/sessionFolders/index.js.map +1 -0
  1297. package/node_modules/@happier-dev/protocol/dist/sessionFork.d.ts +36 -15
  1298. package/node_modules/@happier-dev/protocol/dist/sessionFork.d.ts.map +1 -1
  1299. package/node_modules/@happier-dev/protocol/dist/sessionFork.js +42 -12
  1300. package/node_modules/@happier-dev/protocol/dist/sessionFork.js.map +1 -1
  1301. package/node_modules/@happier-dev/protocol/dist/sessionForkPoint.d.ts +25 -0
  1302. package/node_modules/@happier-dev/protocol/dist/sessionForkPoint.d.ts.map +1 -0
  1303. package/node_modules/@happier-dev/protocol/dist/sessionForkPoint.js +27 -0
  1304. package/node_modules/@happier-dev/protocol/dist/sessionForkPoint.js.map +1 -0
  1305. package/node_modules/@happier-dev/protocol/dist/sessionMedia/index.d.ts +2 -0
  1306. package/node_modules/@happier-dev/protocol/dist/sessionMedia/index.d.ts.map +1 -0
  1307. package/node_modules/@happier-dev/protocol/dist/sessionMedia/index.js +2 -0
  1308. package/node_modules/@happier-dev/protocol/dist/sessionMedia/index.js.map +1 -0
  1309. package/node_modules/@happier-dev/protocol/dist/sessionMedia/sessionMediaSchemas.d.ts +304 -0
  1310. package/node_modules/@happier-dev/protocol/dist/sessionMedia/sessionMediaSchemas.d.ts.map +1 -0
  1311. package/node_modules/@happier-dev/protocol/dist/sessionMedia/sessionMediaSchemas.js +117 -0
  1312. package/node_modules/@happier-dev/protocol/dist/sessionMedia/sessionMediaSchemas.js.map +1 -0
  1313. package/node_modules/@happier-dev/protocol/dist/sessionMessages/acceptedPendingSettlementV1.d.ts +104 -0
  1314. package/node_modules/@happier-dev/protocol/dist/sessionMessages/acceptedPendingSettlementV1.d.ts.map +1 -0
  1315. package/node_modules/@happier-dev/protocol/dist/sessionMessages/acceptedPendingSettlementV1.js +72 -0
  1316. package/node_modules/@happier-dev/protocol/dist/sessionMessages/acceptedPendingSettlementV1.js.map +1 -0
  1317. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingDeliveryBlockedReason.d.ts +30 -0
  1318. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingDeliveryBlockedReason.d.ts.map +1 -0
  1319. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingDeliveryBlockedReason.js +33 -0
  1320. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingDeliveryBlockedReason.js.map +1 -0
  1321. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingDeliveryStatusV1.d.ts +44 -0
  1322. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingDeliveryStatusV1.d.ts.map +1 -0
  1323. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingDeliveryStatusV1.js +115 -0
  1324. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingDeliveryStatusV1.js.map +1 -0
  1325. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingLocalId.d.ts +7 -0
  1326. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingLocalId.d.ts.map +1 -0
  1327. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingLocalId.js +12 -0
  1328. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingLocalId.js.map +1 -0
  1329. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingProviderAction.d.ts +8 -0
  1330. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingProviderAction.d.ts.map +1 -0
  1331. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingProviderAction.js +7 -0
  1332. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingProviderAction.js.map +1 -0
  1333. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingRequestedActionV1.d.ts +17 -0
  1334. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingRequestedActionV1.d.ts.map +1 -0
  1335. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingRequestedActionV1.js +11 -0
  1336. package/node_modules/@happier-dev/protocol/dist/sessionMessages/pendingRequestedActionV1.js.map +1 -0
  1337. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageDeliveryResolutionV1.d.ts +7 -0
  1338. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageDeliveryResolutionV1.d.ts.map +1 -0
  1339. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageDeliveryResolutionV1.js +6 -0
  1340. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageDeliveryResolutionV1.js.map +1 -0
  1341. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageMeta.d.ts +20 -14
  1342. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageMeta.d.ts.map +1 -1
  1343. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageMeta.js +24 -0
  1344. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageMeta.js.map +1 -1
  1345. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageRole.d.ts +10 -0
  1346. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageRole.d.ts.map +1 -0
  1347. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageRole.js +4 -0
  1348. package/node_modules/@happier-dev/protocol/dist/sessionMessages/sessionMessageRole.js.map +1 -0
  1349. package/node_modules/@happier-dev/protocol/dist/sessionMessages/specialCommands.d.ts +18 -0
  1350. package/node_modules/@happier-dev/protocol/dist/sessionMessages/specialCommands.d.ts.map +1 -0
  1351. package/node_modules/@happier-dev/protocol/dist/sessionMessages/specialCommands.js +51 -0
  1352. package/node_modules/@happier-dev/protocol/dist/sessionMessages/specialCommands.js.map +1 -0
  1353. package/node_modules/@happier-dev/protocol/dist/sessionMessages/transcriptObservationV1.d.ts +81 -0
  1354. package/node_modules/@happier-dev/protocol/dist/sessionMessages/transcriptObservationV1.d.ts.map +1 -0
  1355. package/node_modules/@happier-dev/protocol/dist/sessionMessages/transcriptObservationV1.js +62 -0
  1356. package/node_modules/@happier-dev/protocol/dist/sessionMessages/transcriptObservationV1.js.map +1 -0
  1357. package/node_modules/@happier-dev/protocol/dist/sessionMessages/transcriptRawRecordV1.d.ts +1103 -22
  1358. package/node_modules/@happier-dev/protocol/dist/sessionMessages/transcriptRawRecordV1.d.ts.map +1 -1
  1359. package/node_modules/@happier-dev/protocol/dist/sessionMessages/transcriptRawRecordV1.js +621 -17
  1360. package/node_modules/@happier-dev/protocol/dist/sessionMessages/transcriptRawRecordV1.js.map +1 -1
  1361. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/agentRuntimeDescriptorV1.d.ts +14 -3
  1362. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/agentRuntimeDescriptorV1.d.ts.map +1 -1
  1363. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/agentRuntimeDescriptorV1.js +22 -3
  1364. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/agentRuntimeDescriptorV1.js.map +1 -1
  1365. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/connectedServiceMaterializationIdentityV1.d.ts +19 -0
  1366. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/connectedServiceMaterializationIdentityV1.d.ts.map +1 -0
  1367. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/connectedServiceMaterializationIdentityV1.js +56 -0
  1368. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/connectedServiceMaterializationIdentityV1.js.map +1 -0
  1369. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/metadataOverridesV1.d.ts +2 -2
  1370. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/providerAccountUsageRefsV1.d.ts +17 -0
  1371. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/providerAccountUsageRefsV1.d.ts.map +1 -0
  1372. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/providerAccountUsageRefsV1.js +60 -0
  1373. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/providerAccountUsageRefsV1.js.map +1 -0
  1374. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/providerSessionInfoV1.d.ts +25 -0
  1375. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/providerSessionInfoV1.d.ts.map +1 -0
  1376. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/providerSessionInfoV1.js +21 -0
  1377. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/providerSessionInfoV1.js.map +1 -0
  1378. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionContinuationRecoveryIdentityV1.d.ts +25 -0
  1379. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionContinuationRecoveryIdentityV1.d.ts.map +1 -0
  1380. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionContinuationRecoveryIdentityV1.js +37 -0
  1381. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionContinuationRecoveryIdentityV1.js.map +1 -0
  1382. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionPermissionModes.d.ts +31 -5
  1383. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionPermissionModes.d.ts.map +1 -1
  1384. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionPermissionModes.js +64 -0
  1385. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionPermissionModes.js.map +1 -1
  1386. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionUsageLimitRecoveryV1.d.ts +159 -0
  1387. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionUsageLimitRecoveryV1.d.ts.map +1 -0
  1388. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionUsageLimitRecoveryV1.js +75 -0
  1389. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionUsageLimitRecoveryV1.js.map +1 -0
  1390. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionWorkspaceLocationV1.d.ts +37 -0
  1391. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionWorkspaceLocationV1.d.ts.map +1 -0
  1392. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionWorkspaceLocationV1.js +48 -0
  1393. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/sessionWorkspaceLocationV1.js.map +1 -0
  1394. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/terminalMetadata.d.ts +57 -14
  1395. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/terminalMetadata.d.ts.map +1 -1
  1396. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/terminalMetadata.js +47 -4
  1397. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/terminalMetadata.js.map +1 -1
  1398. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/windowsRemoteSessionLaunchMode.d.ts +2 -2
  1399. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/windowsRemoteSessionLaunchMode.d.ts.map +1 -1
  1400. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/windowsTerminalWindowName.d.ts +5 -0
  1401. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/windowsTerminalWindowName.d.ts.map +1 -0
  1402. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/windowsTerminalWindowName.js +16 -0
  1403. package/node_modules/@happier-dev/protocol/dist/sessionMetadata/windowsTerminalWindowName.js.map +1 -0
  1404. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/constants.d.ts +21 -0
  1405. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/constants.d.ts.map +1 -0
  1406. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/constants.js +27 -0
  1407. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/constants.js.map +1 -0
  1408. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/content.d.ts +10 -0
  1409. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/content.d.ts.map +1 -0
  1410. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/content.js +29 -0
  1411. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/content.js.map +1 -0
  1412. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/folders.d.ts +30 -0
  1413. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/folders.d.ts.map +1 -0
  1414. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/folders.js +33 -0
  1415. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/folders.js.map +1 -0
  1416. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/index.d.ts +10 -0
  1417. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/index.d.ts.map +1 -0
  1418. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/index.js +10 -0
  1419. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/index.js.map +1 -0
  1420. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/mutations.d.ts +325 -0
  1421. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/mutations.d.ts.map +1 -0
  1422. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/mutations.js +184 -0
  1423. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/mutations.js.map +1 -0
  1424. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/ordering.d.ts +61 -0
  1425. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/ordering.d.ts.map +1 -0
  1426. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/ordering.js +29 -0
  1427. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/ordering.js.map +1 -0
  1428. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/pins.d.ts +8 -0
  1429. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/pins.d.ts.map +1 -0
  1430. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/pins.js +12 -0
  1431. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/pins.js.map +1 -0
  1432. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/snapshot.d.ts +208 -0
  1433. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/snapshot.d.ts.map +1 -0
  1434. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/snapshot.js +46 -0
  1435. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/snapshot.js.map +1 -0
  1436. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/standings.d.ts +20 -0
  1437. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/standings.d.ts.map +1 -0
  1438. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/standings.js +21 -0
  1439. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/standings.js.map +1 -0
  1440. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/tags.d.ts +23 -0
  1441. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/tags.d.ts.map +1 -0
  1442. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/tags.js +25 -0
  1443. package/node_modules/@happier-dev/protocol/dist/sessionOrganization/tags.js.map +1 -0
  1444. package/node_modules/@happier-dev/protocol/dist/sessionRunner/contract.d.ts +352 -0
  1445. package/node_modules/@happier-dev/protocol/dist/sessionRunner/contract.d.ts.map +1 -0
  1446. package/node_modules/@happier-dev/protocol/dist/sessionRunner/contract.js +207 -0
  1447. package/node_modules/@happier-dev/protocol/dist/sessionRunner/contract.js.map +1 -0
  1448. package/node_modules/@happier-dev/protocol/dist/sessionRunner/index.d.ts +2 -0
  1449. package/node_modules/@happier-dev/protocol/dist/sessionRunner/index.d.ts.map +1 -0
  1450. package/node_modules/@happier-dev/protocol/dist/sessionRunner/index.js +2 -0
  1451. package/node_modules/@happier-dev/protocol/dist/sessionRunner/index.js.map +1 -0
  1452. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/admission.d.ts +11 -0
  1453. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/admission.d.ts.map +1 -0
  1454. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/admission.js +14 -0
  1455. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/admission.js.map +1 -0
  1456. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/index.d.ts +4 -0
  1457. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/index.d.ts.map +1 -0
  1458. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/index.js +4 -0
  1459. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/index.js.map +1 -0
  1460. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/projection.d.ts +49 -0
  1461. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/projection.d.ts.map +1 -0
  1462. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/projection.js +125 -0
  1463. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/projection.js.map +1 -0
  1464. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/transport.d.ts +113 -0
  1465. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/transport.d.ts.map +1 -0
  1466. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/transport.js +79 -0
  1467. package/node_modules/@happier-dev/protocol/dist/sessionRuntimeActivity/transport.js.map +1 -0
  1468. package/node_modules/@happier-dev/protocol/dist/sessionSpawnSourceContextV1.d.ts +47 -0
  1469. package/node_modules/@happier-dev/protocol/dist/sessionSpawnSourceContextV1.d.ts.map +1 -0
  1470. package/node_modules/@happier-dev/protocol/dist/sessionSpawnSourceContextV1.js +44 -0
  1471. package/node_modules/@happier-dev/protocol/dist/sessionSpawnSourceContextV1.js.map +1 -0
  1472. package/node_modules/@happier-dev/protocol/dist/sessionStop.d.ts +45 -0
  1473. package/node_modules/@happier-dev/protocol/dist/sessionStop.d.ts.map +1 -0
  1474. package/node_modules/@happier-dev/protocol/dist/sessionStop.js +27 -0
  1475. package/node_modules/@happier-dev/protocol/dist/sessionStop.js.map +1 -0
  1476. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/activity/activitySystemRecordKinds.d.ts +36 -0
  1477. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/activity/activitySystemRecordKinds.d.ts.map +1 -0
  1478. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/activity/activitySystemRecordKinds.js +40 -0
  1479. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/activity/activitySystemRecordKinds.js.map +1 -0
  1480. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/activity/activitySystemRecordPayload.d.ts +303 -0
  1481. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/activity/activitySystemRecordPayload.d.ts.map +1 -0
  1482. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/activity/activitySystemRecordPayload.js +28 -0
  1483. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/activity/activitySystemRecordPayload.js.map +1 -0
  1484. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/index.d.ts +12 -0
  1485. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/index.d.ts.map +1 -0
  1486. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/index.js +12 -0
  1487. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/index.js.map +1 -0
  1488. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/memory/memorySystemRecordKinds.d.ts +9 -0
  1489. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/memory/memorySystemRecordKinds.d.ts.map +1 -0
  1490. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/memory/memorySystemRecordKinds.js +8 -0
  1491. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/memory/memorySystemRecordKinds.js.map +1 -0
  1492. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/memory/memorySystemRecordPayload.d.ts +69 -0
  1493. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/memory/memorySystemRecordPayload.d.ts.map +1 -0
  1494. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/memory/memorySystemRecordPayload.js +28 -0
  1495. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/memory/memorySystemRecordPayload.js.map +1 -0
  1496. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecord.d.ts +28 -0
  1497. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecord.d.ts.map +1 -0
  1498. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecord.js +20 -0
  1499. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecord.js.map +1 -0
  1500. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordCatalog.d.ts +150 -0
  1501. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordCatalog.d.ts.map +1 -0
  1502. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordCatalog.js +69 -0
  1503. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordCatalog.js.map +1 -0
  1504. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordContent.d.ts +10 -0
  1505. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordContent.d.ts.map +1 -0
  1506. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordContent.js +3 -0
  1507. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordContent.js.map +1 -0
  1508. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordKind.d.ts +10 -0
  1509. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordKind.d.ts.map +1 -0
  1510. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordKind.js +9 -0
  1511. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordKind.js.map +1 -0
  1512. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordNamespace.d.ts +8 -0
  1513. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordNamespace.d.ts.map +1 -0
  1514. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordNamespace.js +9 -0
  1515. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordNamespace.js.map +1 -0
  1516. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordPayloads.d.ts +114 -0
  1517. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordPayloads.d.ts.map +1 -0
  1518. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordPayloads.js +8 -0
  1519. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordPayloads.js.map +1 -0
  1520. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordRoutes.d.ts +174 -0
  1521. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordRoutes.d.ts.map +1 -0
  1522. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordRoutes.js +68 -0
  1523. package/node_modules/@happier-dev/protocol/dist/sessionSystemRecords/sessionSystemRecordRoutes.js.map +1 -0
  1524. package/node_modules/@happier-dev/protocol/dist/sessionUserMessageRpc.d.ts +67 -3
  1525. package/node_modules/@happier-dev/protocol/dist/sessionUserMessageRpc.d.ts.map +1 -1
  1526. package/node_modules/@happier-dev/protocol/dist/sessionUserMessageRpc.js +290 -2
  1527. package/node_modules/@happier-dev/protocol/dist/sessionUserMessageRpc.js.map +1 -1
  1528. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/index.d.ts +8 -0
  1529. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/index.d.ts.map +1 -0
  1530. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/index.js +8 -0
  1531. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/index.js.map +1 -0
  1532. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateBounds.d.ts +9 -0
  1533. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateBounds.d.ts.map +1 -0
  1534. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateBounds.js +16 -0
  1535. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateBounds.js.map +1 -0
  1536. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateItemIds.d.ts +8 -0
  1537. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateItemIds.d.ts.map +1 -0
  1538. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateItemIds.js +25 -0
  1539. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateItemIds.js.map +1 -0
  1540. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateMerge.d.ts +18 -0
  1541. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateMerge.d.ts.map +1 -0
  1542. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateMerge.js +87 -0
  1543. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateMerge.js.map +1 -0
  1544. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStatePrimary.d.ts +21 -0
  1545. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStatePrimary.d.ts.map +1 -0
  1546. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStatePrimary.js +91 -0
  1547. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStatePrimary.js.map +1 -0
  1548. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateRpc.d.ts +1574 -0
  1549. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateRpc.d.ts.map +1 -0
  1550. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateRpc.js +397 -0
  1551. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateRpc.js.map +1 -0
  1552. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateV1.d.ts +165 -0
  1553. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateV1.d.ts.map +1 -0
  1554. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateV1.js +124 -0
  1555. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/sessionWorkStateV1.js.map +1 -0
  1556. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/skillCatalogItemIdentityV1.d.ts +33 -0
  1557. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/skillCatalogItemIdentityV1.d.ts.map +1 -0
  1558. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/skillCatalogItemIdentityV1.js +73 -0
  1559. package/node_modules/@happier-dev/protocol/dist/sessionWorkState/skillCatalogItemIdentityV1.js.map +1 -0
  1560. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/index.d.ts +6 -0
  1561. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/index.d.ts.map +1 -0
  1562. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/index.js +6 -0
  1563. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/index.js.map +1 -0
  1564. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowActivityHeadlineBuild.d.ts +44 -0
  1565. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowActivityHeadlineBuild.d.ts.map +1 -0
  1566. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowActivityHeadlineBuild.js +123 -0
  1567. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowActivityHeadlineBuild.js.map +1 -0
  1568. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowActivityHeadlineV1.d.ts +101 -0
  1569. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowActivityHeadlineV1.d.ts.map +1 -0
  1570. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowActivityHeadlineV1.js +49 -0
  1571. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowActivityHeadlineV1.js.map +1 -0
  1572. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowPhases.d.ts +17 -0
  1573. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowPhases.d.ts.map +1 -0
  1574. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowPhases.js +29 -0
  1575. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowPhases.js.map +1 -0
  1576. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowRunRecordRevision.d.ts +20 -0
  1577. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowRunRecordRevision.d.ts.map +1 -0
  1578. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowRunRecordRevision.js +101 -0
  1579. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowRunRecordRevision.js.map +1 -0
  1580. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowRunSnapshotV1.d.ts +159 -0
  1581. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowRunSnapshotV1.d.ts.map +1 -0
  1582. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowRunSnapshotV1.js +125 -0
  1583. package/node_modules/@happier-dev/protocol/dist/sessionWorkflowActivity/sessionWorkflowRunSnapshotV1.js.map +1 -0
  1584. package/node_modules/@happier-dev/protocol/dist/sessions/control/runtimeIssueV1.d.ts +280 -0
  1585. package/node_modules/@happier-dev/protocol/dist/sessions/control/runtimeIssueV1.d.ts.map +1 -0
  1586. package/node_modules/@happier-dev/protocol/dist/sessions/control/runtimeIssueV1.js +125 -0
  1587. package/node_modules/@happier-dev/protocol/dist/sessions/control/runtimeIssueV1.js.map +1 -0
  1588. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnMutationV1.d.ts +336 -0
  1589. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnMutationV1.d.ts.map +1 -0
  1590. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnMutationV1.js +138 -0
  1591. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnMutationV1.js.map +1 -0
  1592. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnV1.d.ts +224 -0
  1593. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnV1.d.ts.map +1 -0
  1594. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnV1.js +96 -0
  1595. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnV1.js.map +1 -0
  1596. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnsProjectionV1.d.ts +188 -0
  1597. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnsProjectionV1.d.ts.map +1 -0
  1598. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnsProjectionV1.js +24 -0
  1599. package/node_modules/@happier-dev/protocol/dist/sessions/turns/sessionTurnsProjectionV1.js.map +1 -0
  1600. package/node_modules/@happier-dev/protocol/dist/social/friends.d.ts +16 -16
  1601. package/node_modules/@happier-dev/protocol/dist/socketRpc.d.ts +36 -8
  1602. package/node_modules/@happier-dev/protocol/dist/socketRpc.d.ts.map +1 -1
  1603. package/node_modules/@happier-dev/protocol/dist/socketRpc.js +13 -0
  1604. package/node_modules/@happier-dev/protocol/dist/socketRpc.js.map +1 -1
  1605. package/node_modules/@happier-dev/protocol/dist/spawnSession.d.ts +91 -14
  1606. package/node_modules/@happier-dev/protocol/dist/spawnSession.d.ts.map +1 -1
  1607. package/node_modules/@happier-dev/protocol/dist/spawnSession.js +233 -0
  1608. package/node_modules/@happier-dev/protocol/dist/spawnSession.js.map +1 -1
  1609. package/node_modules/@happier-dev/protocol/dist/spawnSessionNonce.d.ts +66 -0
  1610. package/node_modules/@happier-dev/protocol/dist/spawnSessionNonce.d.ts.map +1 -0
  1611. package/node_modules/@happier-dev/protocol/dist/spawnSessionNonce.js +131 -0
  1612. package/node_modules/@happier-dev/protocol/dist/spawnSessionNonce.js.map +1 -0
  1613. package/node_modules/@happier-dev/protocol/dist/structuredMessages/reviewFindingsV1.d.ts +8 -8
  1614. package/node_modules/@happier-dev/protocol/dist/structuredMessages/reviewFindingsV2.d.ts +7 -7
  1615. package/node_modules/@happier-dev/protocol/dist/structuredMessages/reviewFollowUpV1.d.ts +6 -6
  1616. package/node_modules/@happier-dev/protocol/dist/structuredMessages/reviewPublishRequestV1.d.ts +5 -5
  1617. package/node_modules/@happier-dev/protocol/dist/structuredMessages/voiceAgentTurnV1.d.ts +1 -1
  1618. package/node_modules/@happier-dev/protocol/dist/systemTasks/spec.js.map +1 -1
  1619. package/node_modules/@happier-dev/protocol/dist/systemTasks/tailscaleSecureAccessTaskContract.d.ts +2 -2
  1620. package/node_modules/@happier-dev/protocol/dist/systemTasks/tailscaleSecureAccessTaskContract.d.ts.map +1 -1
  1621. package/node_modules/@happier-dev/protocol/dist/testing/accountScopedCipherFixtures.d.ts +7 -0
  1622. package/node_modules/@happier-dev/protocol/dist/testing/accountScopedCipherFixtures.d.ts.map +1 -0
  1623. package/node_modules/@happier-dev/protocol/dist/testing/accountScopedCipherFixtures.js +32 -0
  1624. package/node_modules/@happier-dev/protocol/dist/testing/accountScopedCipherFixtures.js.map +1 -0
  1625. package/node_modules/@happier-dev/protocol/dist/tools/happierToolsShellBridge.d.ts.map +1 -1
  1626. package/node_modules/@happier-dev/protocol/dist/tools/happierToolsShellBridge.js +95 -39
  1627. package/node_modules/@happier-dev/protocol/dist/tools/happierToolsShellBridge.js.map +1 -1
  1628. package/node_modules/@happier-dev/protocol/dist/tools/structuredQuestionAnswersV1.d.ts +99 -0
  1629. package/node_modules/@happier-dev/protocol/dist/tools/structuredQuestionAnswersV1.d.ts.map +1 -0
  1630. package/node_modules/@happier-dev/protocol/dist/tools/structuredQuestionAnswersV1.js +246 -0
  1631. package/node_modules/@happier-dev/protocol/dist/tools/structuredQuestionAnswersV1.js.map +1 -0
  1632. package/node_modules/@happier-dev/protocol/dist/tools/v2/aliases.d.ts +11 -11
  1633. package/node_modules/@happier-dev/protocol/dist/tools/v2/aliases.d.ts.map +1 -1
  1634. package/node_modules/@happier-dev/protocol/dist/tools/v2/index.d.ts +2 -1
  1635. package/node_modules/@happier-dev/protocol/dist/tools/v2/index.d.ts.map +1 -1
  1636. package/node_modules/@happier-dev/protocol/dist/tools/v2/index.js +2 -1
  1637. package/node_modules/@happier-dev/protocol/dist/tools/v2/index.js.map +1 -1
  1638. package/node_modules/@happier-dev/protocol/dist/tools/v2/meta.d.ts +5 -5
  1639. package/node_modules/@happier-dev/protocol/dist/tools/v2/names.d.ts +45 -39
  1640. package/node_modules/@happier-dev/protocol/dist/tools/v2/names.d.ts.map +1 -1
  1641. package/node_modules/@happier-dev/protocol/dist/tools/v2/names.js +9 -0
  1642. package/node_modules/@happier-dev/protocol/dist/tools/v2/names.js.map +1 -1
  1643. package/node_modules/@happier-dev/protocol/dist/tools/v2/patch.d.ts +9 -0
  1644. package/node_modules/@happier-dev/protocol/dist/tools/v2/patch.d.ts.map +1 -0
  1645. package/node_modules/@happier-dev/protocol/dist/tools/v2/patch.js +343 -0
  1646. package/node_modules/@happier-dev/protocol/dist/tools/v2/patch.js.map +1 -0
  1647. package/node_modules/@happier-dev/protocol/dist/tools/v2/schemas.d.ts +284 -100
  1648. package/node_modules/@happier-dev/protocol/dist/tools/v2/schemas.d.ts.map +1 -1
  1649. package/node_modules/@happier-dev/protocol/dist/tools/v2/schemas.js +62 -0
  1650. package/node_modules/@happier-dev/protocol/dist/tools/v2/schemas.js.map +1 -1
  1651. package/node_modules/@happier-dev/protocol/dist/tools/v2/subAgentFamilies.d.ts +1 -1
  1652. package/node_modules/@happier-dev/protocol/dist/tools/v2/subAgentFamilies.d.ts.map +1 -1
  1653. package/node_modules/@happier-dev/protocol/dist/updates.d.ts +813 -24
  1654. package/node_modules/@happier-dev/protocol/dist/updates.d.ts.map +1 -1
  1655. package/node_modules/@happier-dev/protocol/dist/updates.js +148 -1
  1656. package/node_modules/@happier-dev/protocol/dist/updates.js.map +1 -1
  1657. package/node_modules/@happier-dev/protocol/dist/voiceActions.d.ts +2 -2
  1658. package/node_modules/@happier-dev/protocol/dist/voiceActions.d.ts.map +1 -1
  1659. package/node_modules/@happier-dev/protocol/dist/workspace/anchors/v1.d.ts +310 -0
  1660. package/node_modules/@happier-dev/protocol/dist/workspace/anchors/v1.d.ts.map +1 -0
  1661. package/node_modules/@happier-dev/protocol/dist/workspace/anchors/v1.js +108 -0
  1662. package/node_modules/@happier-dev/protocol/dist/workspace/anchors/v1.js.map +1 -0
  1663. package/node_modules/@happier-dev/protocol/dist/workspace/favicon/v1.d.ts +39 -0
  1664. package/node_modules/@happier-dev/protocol/dist/workspace/favicon/v1.d.ts.map +1 -0
  1665. package/node_modules/@happier-dev/protocol/dist/workspace/favicon/v1.js +33 -0
  1666. package/node_modules/@happier-dev/protocol/dist/workspace/favicon/v1.js.map +1 -0
  1667. package/node_modules/@happier-dev/protocol/dist/workspaces/manifestSchema.d.ts +1 -1
  1668. package/node_modules/@happier-dev/protocol/package.json +8 -0
  1669. package/node_modules/@happier-dev/release-runtime/dist/archiveExtraction.d.ts +38 -0
  1670. package/node_modules/@happier-dev/release-runtime/dist/archiveExtraction.d.ts.map +1 -0
  1671. package/node_modules/@happier-dev/release-runtime/dist/archiveExtraction.js +1123 -0
  1672. package/node_modules/@happier-dev/release-runtime/dist/archiveExtraction.js.map +1 -0
  1673. package/node_modules/@happier-dev/release-runtime/dist/assets.d.ts.map +1 -1
  1674. package/node_modules/@happier-dev/release-runtime/dist/github.d.ts +2 -0
  1675. package/node_modules/@happier-dev/release-runtime/dist/github.d.ts.map +1 -1
  1676. package/node_modules/@happier-dev/release-runtime/dist/github.js +17 -15
  1677. package/node_modules/@happier-dev/release-runtime/dist/github.js.map +1 -1
  1678. package/node_modules/@happier-dev/release-runtime/dist/index.d.ts +1 -1
  1679. package/node_modules/@happier-dev/release-runtime/dist/index.d.ts.map +1 -1
  1680. package/node_modules/@happier-dev/release-runtime/dist/index.js +1 -1
  1681. package/node_modules/@happier-dev/release-runtime/dist/index.js.map +1 -1
  1682. package/node_modules/@happier-dev/release-runtime/dist/releaseRings.d.ts +3 -2
  1683. package/node_modules/@happier-dev/release-runtime/dist/releaseRings.d.ts.map +1 -1
  1684. package/node_modules/@happier-dev/release-runtime/dist/releaseRings.js +5 -0
  1685. package/node_modules/@happier-dev/release-runtime/dist/releaseRings.js.map +1 -1
  1686. package/node_modules/@happier-dev/release-runtime/node_modules/tar/LICENSE.md +55 -0
  1687. package/node_modules/@happier-dev/release-runtime/node_modules/tar/README.md +1233 -0
  1688. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/create.d.ts +3 -0
  1689. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/create.d.ts.map +1 -0
  1690. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/create.js +82 -0
  1691. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/create.js.map +1 -0
  1692. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/cwd-error.d.ts +8 -0
  1693. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/cwd-error.d.ts.map +1 -0
  1694. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/cwd-error.js +18 -0
  1695. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/cwd-error.js.map +1 -0
  1696. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/extract.d.ts +3 -0
  1697. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/extract.d.ts.map +1 -0
  1698. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/extract.js +88 -0
  1699. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/extract.js.map +1 -0
  1700. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/get-write-flag.d.ts +2 -0
  1701. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/get-write-flag.d.ts.map +1 -0
  1702. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/get-write-flag.js +32 -0
  1703. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/get-write-flag.js.map +1 -0
  1704. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/header.d.ts +53 -0
  1705. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/header.d.ts.map +1 -0
  1706. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/header.js +348 -0
  1707. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/header.js.map +1 -0
  1708. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/index.d.ts +20 -0
  1709. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/index.d.ts.map +1 -0
  1710. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/index.js +64 -0
  1711. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/index.js.map +1 -0
  1712. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/index.min.js +4 -0
  1713. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/index.min.js.map +7 -0
  1714. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/large-numbers.d.ts +3 -0
  1715. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/large-numbers.d.ts.map +1 -0
  1716. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/large-numbers.js +99 -0
  1717. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/large-numbers.js.map +1 -0
  1718. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/list.d.ts +7 -0
  1719. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/list.d.ts.map +1 -0
  1720. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/list.js +153 -0
  1721. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/list.js.map +1 -0
  1722. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/make-command.d.ts +49 -0
  1723. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/make-command.d.ts.map +1 -0
  1724. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/make-command.js +52 -0
  1725. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/make-command.js.map +1 -0
  1726. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/mkdir.d.ts +25 -0
  1727. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/mkdir.d.ts.map +1 -0
  1728. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/mkdir.js +187 -0
  1729. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/mkdir.js.map +1 -0
  1730. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/mode-fix.d.ts +2 -0
  1731. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/mode-fix.d.ts.map +1 -0
  1732. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/mode-fix.js +29 -0
  1733. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/mode-fix.js.map +1 -0
  1734. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/normalize-unicode.d.ts +2 -0
  1735. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/normalize-unicode.d.ts.map +1 -0
  1736. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/normalize-unicode.js +38 -0
  1737. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/normalize-unicode.js.map +1 -0
  1738. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/normalize-windows-path.d.ts +2 -0
  1739. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/normalize-windows-path.d.ts.map +1 -0
  1740. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/normalize-windows-path.js +12 -0
  1741. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/normalize-windows-path.js.map +1 -0
  1742. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/options.d.ts +604 -0
  1743. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/options.d.ts.map +1 -0
  1744. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/options.js +66 -0
  1745. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/options.js.map +1 -0
  1746. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/pack.d.ts +105 -0
  1747. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/pack.d.ts.map +1 -0
  1748. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/pack.js +544 -0
  1749. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/pack.js.map +1 -0
  1750. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/package.json +3 -0
  1751. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/parse.d.ts +92 -0
  1752. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/parse.d.ts.map +1 -0
  1753. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/parse.js +655 -0
  1754. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/parse.js.map +1 -0
  1755. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/path-reservations.d.ts +11 -0
  1756. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/path-reservations.d.ts.map +1 -0
  1757. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/path-reservations.js +170 -0
  1758. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/path-reservations.js.map +1 -0
  1759. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/pax.d.ts +26 -0
  1760. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/pax.d.ts.map +1 -0
  1761. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/pax.js +182 -0
  1762. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/pax.js.map +1 -0
  1763. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/process-umask.d.ts +2 -0
  1764. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/process-umask.d.ts.map +1 -0
  1765. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/process-umask.js +7 -0
  1766. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/process-umask.js.map +1 -0
  1767. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/read-entry.d.ts +36 -0
  1768. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/read-entry.d.ts.map +1 -0
  1769. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/read-entry.js +136 -0
  1770. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/read-entry.js.map +1 -0
  1771. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/replace.d.ts +2 -0
  1772. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/replace.d.ts.map +1 -0
  1773. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/replace.js +227 -0
  1774. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/replace.js.map +1 -0
  1775. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/strip-absolute-path.d.ts +2 -0
  1776. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/strip-absolute-path.d.ts.map +1 -0
  1777. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/strip-absolute-path.js +29 -0
  1778. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/strip-absolute-path.js.map +1 -0
  1779. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/strip-trailing-slashes.d.ts +2 -0
  1780. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/strip-trailing-slashes.d.ts.map +1 -0
  1781. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/strip-trailing-slashes.js +18 -0
  1782. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/strip-trailing-slashes.js.map +1 -0
  1783. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/symlink-error.d.ts +9 -0
  1784. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/symlink-error.d.ts.map +1 -0
  1785. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/symlink-error.js +19 -0
  1786. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/symlink-error.js.map +1 -0
  1787. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/types.d.ts +16 -0
  1788. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/types.d.ts.map +1 -0
  1789. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/types.js +70 -0
  1790. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/types.js.map +1 -0
  1791. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/unpack.d.ts +101 -0
  1792. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/unpack.d.ts.map +1 -0
  1793. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/unpack.js +932 -0
  1794. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/unpack.js.map +1 -0
  1795. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/update.d.ts +2 -0
  1796. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/update.d.ts.map +1 -0
  1797. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/update.js +33 -0
  1798. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/update.js.map +1 -0
  1799. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/warn-method.d.ts +24 -0
  1800. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/warn-method.d.ts.map +1 -0
  1801. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/warn-method.js +31 -0
  1802. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/warn-method.js.map +1 -0
  1803. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/winchars.d.ts +3 -0
  1804. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/winchars.d.ts.map +1 -0
  1805. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/winchars.js +14 -0
  1806. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/winchars.js.map +1 -0
  1807. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/write-entry.d.ts +129 -0
  1808. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/write-entry.d.ts.map +1 -0
  1809. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/write-entry.js +698 -0
  1810. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/commonjs/write-entry.js.map +1 -0
  1811. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/create.d.ts +3 -0
  1812. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/create.d.ts.map +1 -0
  1813. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/create.js +76 -0
  1814. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/create.js.map +1 -0
  1815. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/cwd-error.d.ts +8 -0
  1816. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/cwd-error.d.ts.map +1 -0
  1817. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/cwd-error.js +14 -0
  1818. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/cwd-error.js.map +1 -0
  1819. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/extract.d.ts +3 -0
  1820. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/extract.d.ts.map +1 -0
  1821. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/extract.js +49 -0
  1822. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/extract.js.map +1 -0
  1823. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/get-write-flag.d.ts +2 -0
  1824. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/get-write-flag.d.ts.map +1 -0
  1825. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/get-write-flag.js +26 -0
  1826. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/get-write-flag.js.map +1 -0
  1827. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/header.d.ts +53 -0
  1828. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/header.d.ts.map +1 -0
  1829. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/header.js +311 -0
  1830. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/header.js.map +1 -0
  1831. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/index.d.ts +20 -0
  1832. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/index.d.ts.map +1 -0
  1833. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/index.js +20 -0
  1834. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/index.js.map +1 -0
  1835. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/index.min.js +4 -0
  1836. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/index.min.js.map +7 -0
  1837. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/large-numbers.d.ts +3 -0
  1838. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/large-numbers.d.ts.map +1 -0
  1839. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/large-numbers.js +94 -0
  1840. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/large-numbers.js.map +1 -0
  1841. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/list.d.ts +7 -0
  1842. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/list.d.ts.map +1 -0
  1843. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/list.js +113 -0
  1844. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/list.js.map +1 -0
  1845. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/make-command.d.ts +49 -0
  1846. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/make-command.d.ts.map +1 -0
  1847. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/make-command.js +48 -0
  1848. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/make-command.js.map +1 -0
  1849. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/mkdir.d.ts +25 -0
  1850. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/mkdir.d.ts.map +1 -0
  1851. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/mkdir.js +179 -0
  1852. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/mkdir.js.map +1 -0
  1853. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/mode-fix.d.ts +2 -0
  1854. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/mode-fix.d.ts.map +1 -0
  1855. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/mode-fix.js +25 -0
  1856. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/mode-fix.js.map +1 -0
  1857. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/normalize-unicode.d.ts +2 -0
  1858. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/normalize-unicode.d.ts.map +1 -0
  1859. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/normalize-unicode.js +34 -0
  1860. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/normalize-unicode.js.map +1 -0
  1861. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/normalize-windows-path.d.ts +2 -0
  1862. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/normalize-windows-path.d.ts.map +1 -0
  1863. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/normalize-windows-path.js +9 -0
  1864. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/normalize-windows-path.js.map +1 -0
  1865. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/options.d.ts +604 -0
  1866. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/options.d.ts.map +1 -0
  1867. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/options.js +54 -0
  1868. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/options.js.map +1 -0
  1869. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/pack.d.ts +105 -0
  1870. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/pack.d.ts.map +1 -0
  1871. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/pack.js +502 -0
  1872. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/pack.js.map +1 -0
  1873. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/package.json +3 -0
  1874. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/parse.d.ts +92 -0
  1875. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/parse.d.ts.map +1 -0
  1876. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/parse.js +651 -0
  1877. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/parse.js.map +1 -0
  1878. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/path-reservations.d.ts +11 -0
  1879. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/path-reservations.d.ts.map +1 -0
  1880. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/path-reservations.js +166 -0
  1881. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/path-reservations.js.map +1 -0
  1882. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/pax.d.ts +26 -0
  1883. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/pax.d.ts.map +1 -0
  1884. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/pax.js +178 -0
  1885. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/pax.js.map +1 -0
  1886. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/process-umask.d.ts +2 -0
  1887. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/process-umask.d.ts.map +1 -0
  1888. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/process-umask.js +3 -0
  1889. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/process-umask.js.map +1 -0
  1890. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/read-entry.d.ts +36 -0
  1891. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/read-entry.d.ts.map +1 -0
  1892. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/read-entry.js +132 -0
  1893. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/read-entry.js.map +1 -0
  1894. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/replace.d.ts +2 -0
  1895. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/replace.d.ts.map +1 -0
  1896. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/replace.js +221 -0
  1897. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/replace.js.map +1 -0
  1898. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/strip-absolute-path.d.ts +2 -0
  1899. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/strip-absolute-path.d.ts.map +1 -0
  1900. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/strip-absolute-path.js +25 -0
  1901. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/strip-absolute-path.js.map +1 -0
  1902. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/strip-trailing-slashes.d.ts +2 -0
  1903. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/strip-trailing-slashes.d.ts.map +1 -0
  1904. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/strip-trailing-slashes.js +14 -0
  1905. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/strip-trailing-slashes.js.map +1 -0
  1906. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/symlink-error.d.ts +9 -0
  1907. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/symlink-error.d.ts.map +1 -0
  1908. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/symlink-error.js +15 -0
  1909. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/symlink-error.js.map +1 -0
  1910. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/types.d.ts +16 -0
  1911. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/types.d.ts.map +1 -0
  1912. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/types.js +65 -0
  1913. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/types.js.map +1 -0
  1914. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/unpack.d.ts +101 -0
  1915. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/unpack.d.ts.map +1 -0
  1916. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/unpack.js +891 -0
  1917. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/unpack.js.map +1 -0
  1918. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/update.d.ts +2 -0
  1919. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/update.d.ts.map +1 -0
  1920. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/update.js +30 -0
  1921. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/update.js.map +1 -0
  1922. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/warn-method.d.ts +24 -0
  1923. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/warn-method.d.ts.map +1 -0
  1924. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/warn-method.js +27 -0
  1925. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/warn-method.js.map +1 -0
  1926. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/winchars.d.ts +3 -0
  1927. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/winchars.d.ts.map +1 -0
  1928. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/winchars.js +9 -0
  1929. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/winchars.js.map +1 -0
  1930. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/write-entry.d.ts +129 -0
  1931. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/write-entry.d.ts.map +1 -0
  1932. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/write-entry.js +656 -0
  1933. package/node_modules/@happier-dev/release-runtime/node_modules/tar/dist/esm/write-entry.js.map +1 -0
  1934. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/LICENSE +15 -0
  1935. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/README.md +71 -0
  1936. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts +118 -0
  1937. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/commonjs/index.d.ts.map +1 -0
  1938. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js +430 -0
  1939. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/commonjs/index.js.map +1 -0
  1940. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/commonjs/package.json +3 -0
  1941. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts +118 -0
  1942. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/esm/index.d.ts.map +1 -0
  1943. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/esm/index.js +420 -0
  1944. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/esm/index.js.map +1 -0
  1945. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/dist/esm/package.json +3 -0
  1946. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/LICENSE +15 -0
  1947. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/README.md +825 -0
  1948. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/commonjs/index.d.ts +549 -0
  1949. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/commonjs/index.d.ts.map +1 -0
  1950. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/commonjs/index.js +1028 -0
  1951. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/commonjs/index.js.map +1 -0
  1952. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/commonjs/package.json +3 -0
  1953. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/esm/index.d.ts +549 -0
  1954. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/esm/index.d.ts.map +1 -0
  1955. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/esm/index.js +1018 -0
  1956. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/esm/index.js.map +1 -0
  1957. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/dist/esm/package.json +3 -0
  1958. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/node_modules/minipass/package.json +82 -0
  1959. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/@isaacs/fs-minipass/package.json +72 -0
  1960. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/LICENSE.md +63 -0
  1961. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/README.md +3 -0
  1962. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/commonjs/index.d.ts +3 -0
  1963. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/commonjs/index.d.ts.map +1 -0
  1964. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/commonjs/index.js +93 -0
  1965. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/commonjs/index.js.map +1 -0
  1966. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/commonjs/package.json +3 -0
  1967. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/esm/index.d.ts +3 -0
  1968. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/esm/index.d.ts.map +1 -0
  1969. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/esm/index.js +85 -0
  1970. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/esm/index.js.map +1 -0
  1971. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/dist/esm/package.json +3 -0
  1972. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/chownr/package.json +69 -0
  1973. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/LICENSE +15 -0
  1974. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/README.md +825 -0
  1975. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/commonjs/index.d.ts +549 -0
  1976. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/commonjs/index.d.ts.map +1 -0
  1977. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/commonjs/index.js +1028 -0
  1978. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/commonjs/index.js.map +1 -0
  1979. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/commonjs/package.json +3 -0
  1980. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/esm/index.d.ts +549 -0
  1981. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/esm/index.d.ts.map +1 -0
  1982. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/esm/index.js +1018 -0
  1983. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/esm/index.js.map +1 -0
  1984. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/dist/esm/package.json +3 -0
  1985. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minipass/package.json +82 -0
  1986. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/LICENSE +26 -0
  1987. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/README.md +64 -0
  1988. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/commonjs/constants.d.ts +2 -0
  1989. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/commonjs/constants.d.ts.map +1 -0
  1990. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/commonjs/constants.js +123 -0
  1991. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/commonjs/constants.js.map +1 -0
  1992. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/commonjs/index.d.ts +99 -0
  1993. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/commonjs/index.d.ts.map +1 -0
  1994. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/commonjs/index.js +416 -0
  1995. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/commonjs/index.js.map +1 -0
  1996. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/commonjs/package.json +3 -0
  1997. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/esm/constants.d.ts +2 -0
  1998. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/esm/constants.d.ts.map +1 -0
  1999. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/esm/constants.js +117 -0
  2000. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/esm/constants.js.map +1 -0
  2001. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/esm/index.d.ts +99 -0
  2002. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/esm/index.d.ts.map +1 -0
  2003. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/esm/index.js +363 -0
  2004. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/esm/index.js.map +1 -0
  2005. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/dist/esm/package.json +3 -0
  2006. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/LICENSE +15 -0
  2007. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/README.md +825 -0
  2008. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/commonjs/index.d.ts +549 -0
  2009. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/commonjs/index.d.ts.map +1 -0
  2010. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/commonjs/index.js +1028 -0
  2011. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/commonjs/index.js.map +1 -0
  2012. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/commonjs/package.json +3 -0
  2013. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/esm/index.d.ts +549 -0
  2014. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/esm/index.d.ts.map +1 -0
  2015. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/esm/index.js +1018 -0
  2016. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/esm/index.js.map +1 -0
  2017. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/dist/esm/package.json +3 -0
  2018. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/node_modules/minipass/package.json +82 -0
  2019. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/minizlib/package.json +80 -0
  2020. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/LICENSE.md +63 -0
  2021. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/README.md +205 -0
  2022. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/commonjs/index.d.ts +39 -0
  2023. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/commonjs/index.d.ts.map +1 -0
  2024. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/commonjs/index.js +384 -0
  2025. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/commonjs/index.js.map +1 -0
  2026. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/commonjs/package.json +3 -0
  2027. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/esm/index.d.ts +39 -0
  2028. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/esm/index.d.ts.map +1 -0
  2029. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/esm/index.js +379 -0
  2030. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/esm/index.js.map +1 -0
  2031. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/dist/esm/package.json +3 -0
  2032. package/node_modules/@happier-dev/release-runtime/node_modules/tar/node_modules/yallist/package.json +68 -0
  2033. package/node_modules/@happier-dev/release-runtime/node_modules/tar/package.json +298 -0
  2034. package/node_modules/@happier-dev/release-runtime/node_modules/xz-decompress/README.md +72 -0
  2035. package/node_modules/@happier-dev/release-runtime/node_modules/xz-decompress/dist/package/xz-decompress.js +273 -0
  2036. package/node_modules/@happier-dev/release-runtime/node_modules/xz-decompress/dist/package/xz-decompress.min.js +6 -0
  2037. package/node_modules/@happier-dev/release-runtime/node_modules/xz-decompress/package.json +55 -0
  2038. package/node_modules/@happier-dev/release-runtime/node_modules/xz-decompress/types.d.ts +3 -0
  2039. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/LICENSE +21 -0
  2040. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/README.md +658 -0
  2041. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/index.js +796 -0
  2042. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/buffer-crc32/LICENSE +19 -0
  2043. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/buffer-crc32/README.md +47 -0
  2044. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/buffer-crc32/index.js +111 -0
  2045. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/buffer-crc32/package.json +39 -0
  2046. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/.npmignore +2 -0
  2047. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/.travis.yml +7 -0
  2048. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/CHANGELOG.md +49 -0
  2049. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/LICENSE +21 -0
  2050. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/README.md +199 -0
  2051. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/index.js +296 -0
  2052. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/node_modules/pend/LICENSE +23 -0
  2053. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/node_modules/pend/README.md +41 -0
  2054. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/node_modules/pend/index.js +55 -0
  2055. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/node_modules/pend/package.json +18 -0
  2056. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/node_modules/pend/test.js +137 -0
  2057. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/package.json +36 -0
  2058. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/node_modules/fd-slicer/test/test.js +350 -0
  2059. package/node_modules/@happier-dev/release-runtime/node_modules/yauzl/package.json +40 -0
  2060. package/node_modules/@happier-dev/release-runtime/package.json +8 -3
  2061. package/node_modules/@happier-dev/release-runtime/releaseRings.cjs +204 -0
  2062. package/package.json +5 -3
  2063. package/scripts/auth.mjs +219 -230
  2064. package/scripts/auth_copy_from_runCapture.integration.test.mjs +39 -20
  2065. package/scripts/auth_login_force_cleans_server_scoped_credentials.integration.test.mjs +41 -8
  2066. package/scripts/auth_login_guided_server_no_expo.test.mjs +543 -25
  2067. package/scripts/auth_login_print_includes_configure_links.test.mjs +23 -4
  2068. package/scripts/auth_login_respects_pinned_stack_port.test.mjs +68 -17
  2069. package/scripts/build/build_server_artifact.mjs +1 -0
  2070. package/scripts/build/collect_build_source_metadata.mjs +6 -5
  2071. package/scripts/build/collect_build_source_metadata.test.mjs +21 -0
  2072. package/scripts/build/runtime_build_lock.mjs +3 -1
  2073. package/scripts/build/runtime_build_lock.test.mjs +18 -0
  2074. package/scripts/build.mjs +8 -0
  2075. package/scripts/bundleWorkspaceDeps.mjs +427 -16
  2076. package/scripts/bundleWorkspaceDeps.test.mjs +419 -11
  2077. package/scripts/claude_hooks.test.mjs +50 -0
  2078. package/scripts/daemon.getDaemonEnv.test.mjs +106 -2
  2079. package/scripts/daemon.mjs +1195 -292
  2080. package/scripts/daemon.status_scope.test.mjs +2 -1
  2081. package/scripts/daemon_dist_guard.test.mjs +2800 -97
  2082. package/scripts/daemon_invalid_auth_reseed_stack_name.integration.test.mjs +64 -2
  2083. package/scripts/daemon_server_scope_commands.test.mjs +158 -49
  2084. package/scripts/daemon_server_scoped_state.test.mjs +59 -12
  2085. package/scripts/daemon_start_verification.integration.test.mjs +856 -65
  2086. package/scripts/daemon_stop_expected_pid.test.mjs +336 -12
  2087. package/scripts/dev.mjs +590 -93
  2088. package/scripts/dev_cli_build_ownership.test.mjs +191 -0
  2089. package/scripts/dev_external_server_flags.test.mjs +142 -2
  2090. package/scripts/dev_preserve_daemon_shutdown.integration.test.mjs +238 -0
  2091. package/scripts/dev_reload_composition.integration.test.mjs +392 -0
  2092. package/scripts/dev_target_placement.test.mjs +97 -0
  2093. package/scripts/dev_targets.mjs +159 -0
  2094. package/scripts/dev_targets_cmd.test.mjs +81 -0
  2095. package/scripts/direct_start_cleanup_dry_run.test.mjs +66 -0
  2096. package/scripts/doctor.mjs +10 -2
  2097. package/scripts/doctor_runtime_snapshot.test.mjs +3 -2
  2098. package/scripts/eas.mjs +3 -2
  2099. package/scripts/eas_platform_parsing.test.mjs +9 -0
  2100. package/scripts/env.mjs +2 -5
  2101. package/scripts/env_cmd.test.mjs +32 -0
  2102. package/scripts/ghops.test.mjs +515 -3
  2103. package/scripts/happier.mjs +1 -429
  2104. package/scripts/happier_defaults_from_settings.test.mjs +56 -83
  2105. package/scripts/happier_main.mjs +433 -0
  2106. package/scripts/happier_runtime_snapshot.test.mjs +186 -14
  2107. package/scripts/happier_server_url_scope.test.mjs +3 -1
  2108. package/scripts/happier_tsx_fallback.test.mjs +5 -4
  2109. package/scripts/happier_wrapper_bootstrap.test.mjs +208 -0
  2110. package/scripts/hstack_wrapper_bundled_workspace_sync.test.mjs +351 -0
  2111. package/scripts/init_shim_invoked_cwd.test.mjs +10 -2
  2112. package/scripts/lifecycle_authority_inventory.test.mjs +40 -0
  2113. package/scripts/lint.mjs +3 -2
  2114. package/scripts/localBundledWorkspacePreflight.test.mjs +330 -0
  2115. package/scripts/menubar.mjs +2 -2
  2116. package/scripts/migrate.mjs +30 -5
  2117. package/scripts/migrate_effective_db_provider.test.mjs +68 -0
  2118. package/scripts/mobile.mjs +59 -13
  2119. package/scripts/mobile_dev_client.mjs +12 -7
  2120. package/scripts/mobile_dev_client_android_falls_back_to_pipeline_in_test_stub.test.mjs +30 -1
  2121. package/scripts/mobile_dev_client_android_reuse_existing_apk_in_test_stub.test.mjs +62 -1
  2122. package/scripts/mobile_dev_client_android_reuse_falls_back_to_cached_apk_in_test_stub.test.mjs +1 -1
  2123. package/scripts/mobile_dev_client_help_smoke.test.mjs +2 -0
  2124. package/scripts/mobile_memory_profiling_prebuild_patches_podfile_autolinking.test.mjs +94 -0
  2125. package/scripts/mobile_profiling_runtime_uses_simulator_selection.test.mjs +116 -0
  2126. package/scripts/mobile_run_android_passes_port.test.mjs +120 -2
  2127. package/scripts/orchestrated_stack_auth_flow.test.mjs +40 -4
  2128. package/scripts/orchestrated_stack_auth_flow_webapp_url.test.mjs +76 -4
  2129. package/scripts/pack.mjs +53 -8
  2130. package/scripts/pack.test.mjs +113 -2
  2131. package/scripts/pglite_lock.integration.test.mjs +46 -2
  2132. package/scripts/profile_mobile_scenario.mjs +235 -0
  2133. package/scripts/profile_processes.mjs +138 -0
  2134. package/scripts/profiling/ios_xctrace_memory_diagnostics.mjs +91 -0
  2135. package/scripts/profiling/ios_xctrace_memory_diagnostics.test.mjs +72 -0
  2136. package/scripts/profiling/mobile_profile_scenarios.mjs +830 -0
  2137. package/scripts/profiling/mobile_profile_scenarios.test.mjs +379 -0
  2138. package/scripts/profiling/process_profiler.mjs +424 -0
  2139. package/scripts/profiling/process_profiler.test.mjs +214 -0
  2140. package/scripts/provider_projection_owners.test.mjs +29 -0
  2141. package/scripts/provision/linux-ubuntu-provision.sh +33 -0
  2142. package/scripts/provision/linux-ubuntu-provision.test.mjs +19 -1
  2143. package/scripts/release_binary_smoke.integration.test.mjs +24 -12
  2144. package/scripts/remote_cmd.mjs +56 -13
  2145. package/scripts/remote_cmd.test.mjs +84 -1
  2146. package/scripts/repo_local.mjs +82 -130
  2147. package/scripts/repo_local_effective_db_provider.test.mjs +161 -0
  2148. package/scripts/repo_local_wrapper.test.mjs +75 -1
  2149. package/scripts/review_pr.mjs +8 -17
  2150. package/scripts/review_pr.warm_base_deps.test.mjs +8 -1
  2151. package/scripts/review_pr.workspace_cache.test.mjs +16 -0
  2152. package/scripts/root_package_repo_local_scripts.test.mjs +1 -0
  2153. package/scripts/run.mjs +283 -82
  2154. package/scripts/run_effective_db_provider.test.mjs +79 -0
  2155. package/scripts/run_script_with_stack_env.restart_port_reuse.test.mjs +80 -0
  2156. package/scripts/run_source_server_workspace_deps.test.mjs +18 -0
  2157. package/scripts/run_startup_topology_side_effects.test.mjs +196 -0
  2158. package/scripts/runtime/launch/inspectActiveRuntimeSnapshot.mjs +40 -13
  2159. package/scripts/runtime/launch/resolveActiveRuntimeSnapshot.test.mjs +119 -0
  2160. package/scripts/runtime/launch/resolveCliRuntimeLaunchSpec.mjs +51 -0
  2161. package/scripts/runtime/launch/resolveLaunchSpecs.test.mjs +153 -9
  2162. package/scripts/runtime/launch/resolveServerRuntimeLaunchSpec.mjs +61 -4
  2163. package/scripts/runtime/launch/resolveStackRuntimeLaunchContext.mjs +2 -2
  2164. package/scripts/runtime/launch/runServerRuntimeMigration.mjs +116 -0
  2165. package/scripts/runtime/launch/runServerRuntimeMigration.test.mjs +211 -0
  2166. package/scripts/runtime/launch/runtimeProvenanceConsumerInventory.test.mjs +36 -0
  2167. package/scripts/runtime/shared/runtime_mode.mjs +10 -1
  2168. package/scripts/runtime/shared/runtime_mode.test.mjs +22 -0
  2169. package/scripts/self_host/install_companion_cli.mjs +3 -17
  2170. package/scripts/self_host_runtime.mjs +470 -484
  2171. package/scripts/self_host_runtime.test.mjs +709 -36
  2172. package/scripts/self_host_schtasks.real.integration.test.mjs +2 -1
  2173. package/scripts/self_host_service_e2e_harness.mjs +7 -1
  2174. package/scripts/self_host_systemd.real.integration.test.mjs +31 -5
  2175. package/scripts/self_host_systemd_harness.test.mjs +33 -0
  2176. package/scripts/server_flavor.mjs +39 -17
  2177. package/scripts/server_flavor_provider.test.mjs +126 -0
  2178. package/scripts/service.mjs +85 -87
  2179. package/scripts/service.post_start_diagnostics_scope.test.mjs +97 -0
  2180. package/scripts/service_cleanup_ownership.test.mjs +41 -0
  2181. package/scripts/setup.mjs +26 -1
  2182. package/scripts/setup_dev_child_env.test.mjs +23 -2
  2183. package/scripts/sqlite_snapshot.mjs +86 -0
  2184. package/scripts/sqlite_snapshot.test.mjs +1032 -0
  2185. package/scripts/stack/help_text.mjs +5 -3
  2186. package/scripts/stack/run_script_with_stack_env.mjs +396 -189
  2187. package/scripts/stack/run_script_with_stack_env.test.mjs +368 -0
  2188. package/scripts/stack/stack_daemon_command.mjs +74 -48
  2189. package/scripts/stack/stack_daemon_runtime_provenance.test.mjs +40 -0
  2190. package/scripts/stack/stack_environment.mjs +57 -19
  2191. package/scripts/stack/stack_environment.sanitization.test.mjs +64 -0
  2192. package/scripts/stack/stack_happier_passthrough_command.mjs +21 -1
  2193. package/scripts/stack/stack_info_snapshot.mjs +317 -68
  2194. package/scripts/stack/stack_install_command.mjs +295 -0
  2195. package/scripts/stack/stack_mobile_install_command.mjs +19 -5
  2196. package/scripts/stack/stack_mobile_install_command.test.mjs +44 -0
  2197. package/scripts/stack/stack_stop_command.mjs +12 -4
  2198. package/scripts/stack/stack_stop_command.test.mjs +16 -0
  2199. package/scripts/stack.mjs +247 -96
  2200. package/scripts/stack_archive_cmd.integration.test.mjs +29 -1
  2201. package/scripts/stack_audit_fix_light_env.test.mjs +10 -7
  2202. package/scripts/stack_audit_mysql_provider.test.mjs +194 -0
  2203. package/scripts/stack_background_pinned_stack_json.test.mjs +59 -1
  2204. package/scripts/stack_copy_auth_server_scoped.test.mjs +30 -15
  2205. package/scripts/stack_daemon_cmd.integration.test.mjs +112 -5
  2206. package/scripts/stack_guided_login_inner_invocation.test.mjs +17 -7
  2207. package/scripts/stack_happy_cmd.integration.test.mjs +70 -15
  2208. package/scripts/stack_info_snapshot_running_status.test.mjs +789 -25
  2209. package/scripts/stack_install_command.test.mjs +125 -0
  2210. package/scripts/stack_new_name_normalize_cmd.test.mjs +31 -0
  2211. package/scripts/stack_new_port_policy.test.mjs +128 -0
  2212. package/scripts/stack_owner_death_watchdog.integration.test.mjs +227 -4
  2213. package/scripts/stack_package_scripts.test.mjs +3 -1
  2214. package/scripts/stack_runtime_start.integration.test.mjs +435 -12
  2215. package/scripts/stack_runtime_start_listener_proof.integration.test.mjs +119 -0
  2216. package/scripts/stack_server_flavors_defaults.test.mjs +126 -0
  2217. package/scripts/stack_stop_sweeps_legacy_infra_without_kind.integration.test.mjs +2 -0
  2218. package/scripts/stackless_startup_topology.test.mjs +111 -0
  2219. package/scripts/start_proxy_runtime_state.test.mjs +686 -0
  2220. package/scripts/start_runtime_mode_json.test.mjs +6 -3
  2221. package/scripts/stopStackWithEnv_daemonControlToken.integration.test.mjs +123 -6
  2222. package/scripts/stopStackWithEnv_daemonPidSet.integration.test.mjs +1008 -0
  2223. package/scripts/stopStackWithEnv_home_relative_env_file.integration.test.mjs +94 -0
  2224. package/scripts/stopStackWithEnv_kills_ephemeral_runtime_pids_without_env_markers.integration.test.mjs +346 -8
  2225. package/scripts/stopStackWithEnv_sweeps_repo_local_stack_by_stackName_when_runtime_missing.integration.test.mjs +280 -15
  2226. package/scripts/tailscale.mjs +2 -2
  2227. package/scripts/tauri_dev.mjs +46 -5
  2228. package/scripts/tauri_dev.test.mjs +111 -30
  2229. package/scripts/test_ci.mjs +14 -1
  2230. package/scripts/test_cmd.mjs +4 -3
  2231. package/scripts/test_integration.mjs +13 -2
  2232. package/scripts/testkit/core/env_scope.mjs +5 -1
  2233. package/scripts/testkit/core/expo_command_shims.mjs +29 -0
  2234. package/scripts/testkit/core/minimal_monorepo_layout.mjs +2 -0
  2235. package/scripts/testkit/core/owner_death_watchdog_fixture.mjs +36 -0
  2236. package/scripts/testkit/core/owner_death_watchdog_fixture.test.mjs +43 -0
  2237. package/scripts/testkit/core/runtime_snapshot_layout.mjs +11 -0
  2238. package/scripts/testkit/core/spawn_daemon_like_process.mjs +193 -0
  2239. package/scripts/testkit/core/spawn_daemon_like_process.test.mjs +85 -0
  2240. package/scripts/testkit/core/spawn_test_process.mjs +30 -0
  2241. package/scripts/testkit/core/spawn_test_process.test.mjs +38 -1
  2242. package/scripts/testkit/core/stub_happier_cli_files.mjs +13 -0
  2243. package/scripts/testkit/core/workspace_package_build_owner.mjs +29 -0
  2244. package/scripts/testkit/runtime_snapshot_start_testkit.mjs +128 -31
  2245. package/scripts/testkit/runtime_snapshot_testkit.mjs +3 -0
  2246. package/scripts/testkit/stack_happier_cli_command_testkit.mjs +4 -0
  2247. package/scripts/tools.mjs +20 -1
  2248. package/scripts/tools_profile_processes_help.test.mjs +131 -0
  2249. package/scripts/tui.mjs +245 -280
  2250. package/scripts/tui_restart_delegation.test.mjs +257 -0
  2251. package/scripts/tui_stopStackForTuiExit_no_autosweep.integration.test.mjs +57 -1
  2252. package/scripts/typecheck.mjs +3 -2
  2253. package/scripts/ui_gateway.mjs +2 -2
  2254. package/scripts/ui_gateway.test.mjs +119 -0
  2255. package/scripts/utils/auth/clearStackForceLoginCredentialPaths.mjs +11 -1
  2256. package/scripts/utils/auth/credentials_paths.mjs +110 -36
  2257. package/scripts/utils/auth/credentials_paths.test.mjs +283 -26
  2258. package/scripts/utils/auth/daemon_gate.test.mjs +3 -2
  2259. package/scripts/utils/auth/ensure_active_access_key_valid.mjs +31 -8
  2260. package/scripts/utils/auth/ensure_active_access_key_valid.test.mjs +115 -1
  2261. package/scripts/utils/auth/orchestrated_stack_auth_flow.mjs +34 -3
  2262. package/scripts/utils/auth/stable_scope_id.mjs +11 -0
  2263. package/scripts/utils/auth/stable_scope_id.test.mjs +16 -0
  2264. package/scripts/utils/auth/stack_guided_login.mjs +32 -15
  2265. package/scripts/utils/cli/args.mjs +33 -7
  2266. package/scripts/utils/cli/args.test.mjs +51 -0
  2267. package/scripts/utils/cli/cli.mjs +3 -4
  2268. package/scripts/utils/cli/cliDistIntegrity.mjs +130 -53
  2269. package/scripts/utils/cli/cliDistIntegrity.test.mjs +157 -0
  2270. package/scripts/utils/cli/cli_registry.mjs +107 -11
  2271. package/scripts/utils/cli/prereqs.test.mjs +2 -2
  2272. package/scripts/utils/dev/daemon.mjs +395 -151
  2273. package/scripts/utils/dev/daemonLifecycleReconciler.mjs +98 -0
  2274. package/scripts/utils/dev/daemonLifecycleReconciler.test.mjs +187 -0
  2275. package/scripts/utils/dev/daemon_watch_resilience.test.mjs +817 -166
  2276. package/scripts/utils/dev/devProxy.mjs +310 -0
  2277. package/scripts/utils/dev/devProxy.test.mjs +406 -0
  2278. package/scripts/utils/dev/devProxyLifecycle.mjs +27 -0
  2279. package/scripts/utils/dev/devProxyLifecycle.test.mjs +32 -0
  2280. package/scripts/utils/dev/devProxyRuntime.mjs +96 -0
  2281. package/scripts/utils/dev/devReloadComposition.mjs +50 -0
  2282. package/scripts/utils/dev/devReloadCoordinator.mjs +557 -0
  2283. package/scripts/utils/dev/devReloadCoordinator.test.mjs +1685 -0
  2284. package/scripts/utils/dev/devReloadTargets.mjs +11 -0
  2285. package/scripts/utils/dev/devRuntimeInputPolicy.mjs +31 -0
  2286. package/scripts/utils/dev/devStartupTopology.mjs +131 -0
  2287. package/scripts/utils/dev/devStartupTopology.test.mjs +181 -0
  2288. package/scripts/utils/dev/expo_dev.buildEnv.test.mjs +21 -0
  2289. package/scripts/utils/dev/expo_dev.ensure_workspace_built.test.mjs +169 -3
  2290. package/scripts/utils/dev/expo_dev.mjs +735 -259
  2291. package/scripts/utils/dev/expo_dev.tailscale.test.mjs +415 -0
  2292. package/scripts/utils/dev/expo_dev.test.mjs +72 -1
  2293. package/scripts/utils/dev/expo_dev_crash_supervision.test.mjs +341 -0
  2294. package/scripts/utils/dev/expo_dev_restart_port_reservation.test.mjs +521 -64
  2295. package/scripts/utils/dev/expo_dev_runtime_metadata.test.mjs +142 -4
  2296. package/scripts/utils/dev/expo_dev_supervision.mjs +116 -0
  2297. package/scripts/utils/dev/expo_dev_tailscale.mjs +153 -0
  2298. package/scripts/utils/dev/expo_dev_verbose_logs.test.mjs +24 -3
  2299. package/scripts/utils/dev/reloadPollInterval.mjs +18 -0
  2300. package/scripts/utils/dev/resolveDevServerConnection.mjs +5 -2
  2301. package/scripts/utils/dev/resolveDevServerConnection.test.mjs +20 -3
  2302. package/scripts/utils/dev/server.mjs +2251 -81
  2303. package/scripts/utils/dev/server_watch.exclusive.test.mjs +1986 -0
  2304. package/scripts/utils/dev/server_watch.test.mjs +1254 -0
  2305. package/scripts/utils/dev/tauri_dev.mjs +2 -1
  2306. package/scripts/utils/dev/tauri_dev.test.mjs +23 -18
  2307. package/scripts/utils/dev/watchSignature.mjs +95 -0
  2308. package/scripts/utils/dev_targets/config.mjs +266 -0
  2309. package/scripts/utils/dev_targets/config.test.mjs +224 -0
  2310. package/scripts/utils/dev_targets/doctor.mjs +61 -0
  2311. package/scripts/utils/dev_targets/doctor.test.mjs +67 -0
  2312. package/scripts/utils/dev_targets/mutagen_project.mjs +125 -0
  2313. package/scripts/utils/dev_targets/mutagen_project.test.mjs +121 -0
  2314. package/scripts/utils/dev_targets/remote_commands.mjs +478 -0
  2315. package/scripts/utils/dev_targets/remote_commands.test.mjs +389 -0
  2316. package/scripts/utils/dev_targets/remote_dependency_bootstrap.mjs +103 -0
  2317. package/scripts/utils/dev_targets/remote_dependency_bootstrap.test.mjs +38 -0
  2318. package/scripts/utils/dev_targets/service_placement.mjs +45 -0
  2319. package/scripts/utils/dev_targets/service_placement.test.mjs +61 -0
  2320. package/scripts/utils/dev_targets/supervisor.mjs +863 -0
  2321. package/scripts/utils/dev_targets/supervisor.test.mjs +1382 -0
  2322. package/scripts/utils/env/config.mjs +2 -7
  2323. package/scripts/utils/env/env.mjs +9 -5
  2324. package/scripts/utils/env/env_file.mjs +88 -16
  2325. package/scripts/utils/env/env_file.test.mjs +46 -1
  2326. package/scripts/utils/env/env_local.mjs +8 -7
  2327. package/scripts/utils/env/scrub_env.mjs +2 -0
  2328. package/scripts/utils/env/scrub_env.test.mjs +4 -0
  2329. package/scripts/utils/execution_host_adapter.mjs +87 -0
  2330. package/scripts/utils/execution_host_adapter.test.mjs +69 -0
  2331. package/scripts/utils/expo/command.mjs +6 -0
  2332. package/scripts/utils/expo/command_export_max_workers.test.mjs +2 -0
  2333. package/scripts/utils/expo/command_heap_limit_env.test.mjs +87 -25
  2334. package/scripts/utils/expo/command_workspace_deps_built.test.mjs +75 -29
  2335. package/scripts/utils/expo/expo.mjs +340 -14
  2336. package/scripts/utils/expo/expo_state_running.test.mjs +104 -2
  2337. package/scripts/utils/expo/expo_wait_for_metro.test.mjs +187 -0
  2338. package/scripts/utils/expo/metro_ports.mjs +160 -1
  2339. package/scripts/utils/expo/metro_ports.test.mjs +198 -1
  2340. package/scripts/utils/fs/atomic_dir_swap.mjs +44 -31
  2341. package/scripts/utils/fs/atomic_dir_swap.test.mjs +69 -0
  2342. package/scripts/utils/fs/atomic_rename.mjs +33 -0
  2343. package/scripts/utils/fs/json.mjs +5 -4
  2344. package/scripts/utils/fs/json.test.mjs +33 -0
  2345. package/scripts/utils/fs/tail.mjs +4 -0
  2346. package/scripts/utils/fs/tail.test.mjs +32 -0
  2347. package/scripts/utils/mobile/android_generated_build_state.mjs +87 -0
  2348. package/scripts/utils/mobile/config.mjs +14 -0
  2349. package/scripts/utils/mobile/dev_client_install_invocation.android.test.mjs +21 -0
  2350. package/scripts/utils/mobile/dev_client_install_invocation.mjs +39 -2
  2351. package/scripts/utils/mobile/dev_client_install_invocation.test.mjs +34 -0
  2352. package/scripts/utils/mobile/identifiers.mjs +29 -8
  2353. package/scripts/utils/mobile/identifiers.test.mjs +17 -1
  2354. package/scripts/utils/mobile/ios_podfile_autolinking.mjs +74 -0
  2355. package/scripts/utils/mobile/ios_podfile_autolinking.test.mjs +79 -0
  2356. package/scripts/utils/mobile/ios_podfile_properties.mjs +50 -0
  2357. package/scripts/utils/mobile/ios_podfile_properties.test.mjs +88 -0
  2358. package/scripts/utils/mobile/ios_profiling_runtime.mjs +171 -0
  2359. package/scripts/utils/mobile/ios_profiling_runtime.test.mjs +145 -0
  2360. package/scripts/utils/mobile/ios_xcodeproj_patch.mjs +6 -1
  2361. package/scripts/utils/mobile/ios_xcodeproj_patch.test.mjs +41 -0
  2362. package/scripts/utils/mobile/profiling_runtime_mode.mjs +35 -0
  2363. package/scripts/utils/mobile/profiling_runtime_mode.test.mjs +28 -0
  2364. package/scripts/utils/net/ports.mjs +419 -40
  2365. package/scripts/utils/net/ports.test.mjs +639 -1
  2366. package/scripts/utils/net/tcp_forward.mjs +117 -9
  2367. package/scripts/utils/net/tcp_forward.test.mjs +255 -0
  2368. package/scripts/utils/paths/canonical_home.mjs +11 -3
  2369. package/scripts/utils/paths/canonical_home.test.mjs +11 -3
  2370. package/scripts/utils/paths/paths.mjs +17 -5
  2371. package/scripts/utils/paths/paths_home_env.test.mjs +43 -0
  2372. package/scripts/utils/pglite_lock.mjs +84 -3
  2373. package/scripts/utils/proc/cliDistBuildLock.mjs +62 -81
  2374. package/scripts/utils/proc/cliDistBuildLock.test.mjs +400 -0
  2375. package/scripts/utils/proc/cli_runtime_inputs.mjs +109 -0
  2376. package/scripts/utils/proc/command_dependency_admission.test.mjs +54 -0
  2377. package/scripts/utils/proc/dependency_refresh.mjs +263 -0
  2378. package/scripts/utils/proc/dependency_refresh.test.mjs +125 -0
  2379. package/scripts/utils/proc/ensureWorkspacePackagesBuilt.test.mjs +569 -18
  2380. package/scripts/utils/proc/exit_cleanup.mjs +2 -2
  2381. package/scripts/utils/proc/jsonOwnerFileLock.mjs +194 -0
  2382. package/scripts/utils/proc/jsonOwnerFileLock.test.mjs +428 -0
  2383. package/scripts/utils/proc/ownership.mjs +411 -52
  2384. package/scripts/utils/proc/ownership_killProcessGroupOwnedByStack.test.mjs +348 -1
  2385. package/scripts/utils/proc/ownership_listPidsWithEnvNeedles.test.mjs +196 -1
  2386. package/scripts/utils/proc/pids.mjs +11 -6
  2387. package/scripts/utils/proc/pids.test.mjs +29 -0
  2388. package/scripts/utils/proc/pm.mjs +415 -372
  2389. package/scripts/utils/proc/pm_stack_cache_env.test.mjs +1299 -97
  2390. package/scripts/utils/proc/proc.mjs +342 -89
  2391. package/scripts/utils/proc/proc.test.mjs +362 -3
  2392. package/scripts/utils/proc/pruneLogsByCount.mjs +49 -0
  2393. package/scripts/utils/proc/pruneLogsByCount.test.mjs +132 -0
  2394. package/scripts/utils/proc/terminate.mjs +203 -20
  2395. package/scripts/utils/proc/terminate.test.mjs +207 -1
  2396. package/scripts/utils/proc/watch.mjs +139 -19
  2397. package/scripts/utils/proc/watch.test.mjs +230 -0
  2398. package/scripts/utils/proc/workspace_dependencies.mjs +21 -0
  2399. package/scripts/utils/proc/workspace_package_manifests.mjs +108 -0
  2400. package/scripts/utils/remote/install_remote_first_party_component.mjs +112 -43
  2401. package/scripts/utils/remote/install_remote_first_party_component.test.mjs +46 -35
  2402. package/scripts/utils/review/augment_runner_integration.test.mjs +10 -3
  2403. package/scripts/utils/review/targets.mjs +2 -2
  2404. package/scripts/utils/server/apply_runtime_server_sqlite_env.mjs +36 -0
  2405. package/scripts/utils/server/apply_runtime_server_sqlite_env.test.mjs +46 -0
  2406. package/scripts/utils/server/apply_server_preset_env_defaults.mjs +32 -0
  2407. package/scripts/utils/server/apply_server_preset_env_defaults.test.mjs +95 -0
  2408. package/scripts/utils/server/effective_db_provider.mjs +138 -0
  2409. package/scripts/utils/server/effective_db_provider.test.mjs +249 -0
  2410. package/scripts/utils/server/flavor_scripts.mjs +12 -78
  2411. package/scripts/utils/server/flavor_scripts.test.mjs +39 -47
  2412. package/scripts/utils/server/infra/happy_server_infra.mjs +92 -39
  2413. package/scripts/utils/server/infra/happy_server_infra_provider.test.mjs +290 -0
  2414. package/scripts/utils/server/listener_ownership.mjs +488 -0
  2415. package/scripts/utils/server/listener_ownership.test.mjs +473 -0
  2416. package/scripts/utils/server/logging_env.mjs +20 -0
  2417. package/scripts/utils/server/logging_env.test.mjs +29 -0
  2418. package/scripts/utils/server/mobile_api_url.mjs +17 -3
  2419. package/scripts/utils/server/mobile_api_url.test.mjs +21 -1
  2420. package/scripts/utils/server/prisma_client_import.mjs +18 -0
  2421. package/scripts/utils/server/prisma_import.mjs +0 -15
  2422. package/scripts/utils/server/prisma_import.test.mjs +0 -37
  2423. package/scripts/utils/server/resolve_stack_server_port.mjs +131 -43
  2424. package/scripts/utils/server/resolve_stack_server_port.test.mjs +696 -5
  2425. package/scripts/utils/server/server.mjs +146 -39
  2426. package/scripts/utils/server/server.test.mjs +252 -4
  2427. package/scripts/utils/server/server_migrations.mjs +17 -0
  2428. package/scripts/utils/server/shutdown_grace.mjs +14 -0
  2429. package/scripts/utils/server/shutdown_grace.test.mjs +29 -0
  2430. package/scripts/utils/server/source_server_workspace_deps.mjs +27 -0
  2431. package/scripts/utils/server/source_server_workspace_deps.test.mjs +71 -0
  2432. package/scripts/utils/server/urls.mjs +3 -5
  2433. package/scripts/utils/server/urls.test.mjs +22 -1
  2434. package/scripts/utils/server/validate.mjs +4 -43
  2435. package/scripts/utils/server/validate.test.mjs +4 -4
  2436. package/scripts/utils/service/archive_service_lifecycle.mjs +59 -0
  2437. package/scripts/utils/service/archive_service_lifecycle.test.mjs +88 -0
  2438. package/scripts/utils/service/daemon_autostart.mjs +1 -1
  2439. package/scripts/utils/service/daemon_autostart.test.mjs +34 -0
  2440. package/scripts/utils/service/service_manager.mjs +26 -1
  2441. package/scripts/utils/service/service_manager.plan.test.mjs +187 -1
  2442. package/scripts/utils/service/stack_autostart_resolution.mjs +6 -2
  2443. package/scripts/utils/service/stack_autostart_resolution.test.mjs +13 -1
  2444. package/scripts/utils/sqlite/sqlite_snapshot.mjs +820 -0
  2445. package/scripts/utils/stack/context.mjs +2 -3
  2446. package/scripts/utils/stack/context.test.mjs +18 -0
  2447. package/scripts/utils/stack/daemonControlClient.mjs +426 -0
  2448. package/scripts/utils/stack/daemonControlClient.test.mjs +567 -0
  2449. package/scripts/utils/stack/daemon_lifecycle_lock.mjs +49 -0
  2450. package/scripts/utils/stack/daemon_lifecycle_lock.test.mjs +220 -0
  2451. package/scripts/utils/stack/dirs.mjs +10 -6
  2452. package/scripts/utils/stack/dirs.test.mjs +33 -0
  2453. package/scripts/utils/stack/owner_death_watchdog.mjs +6 -1
  2454. package/scripts/utils/stack/owner_death_watchdog_runner.mjs +130 -2
  2455. package/scripts/utils/stack/repo_stack_identity.mjs +113 -0
  2456. package/scripts/utils/stack/repo_stack_identity.test.mjs +23 -0
  2457. package/scripts/utils/stack/restart_args.mjs +22 -0
  2458. package/scripts/utils/stack/runtime_daemon_state.mjs +474 -23
  2459. package/scripts/utils/stack/runtime_daemon_state.test.mjs +838 -0
  2460. package/scripts/utils/stack/runtime_owner_incarnation.mjs +9 -0
  2461. package/scripts/utils/stack/runtime_state.mjs +896 -37
  2462. package/scripts/utils/stack/runtime_state.test.mjs +1152 -2
  2463. package/scripts/utils/stack/server_profile_reconciliation.mjs +92 -0
  2464. package/scripts/utils/stack/startup.mjs +75 -81
  2465. package/scripts/utils/stack/startup_runtime_probe.test.mjs +115 -0
  2466. package/scripts/utils/stack/startup_server_light_dirs.test.mjs +10 -3
  2467. package/scripts/utils/stack/startup_server_light_generate.test.mjs +115 -4
  2468. package/scripts/utils/stack/startup_server_light_legacy.test.mjs +17 -15
  2469. package/scripts/utils/stack/startup_server_light_testkit.mjs +8 -1
  2470. package/scripts/utils/stack/stop.mjs +643 -146
  2471. package/scripts/utils/stack/stop_lock_timeout.test.mjs +13 -0
  2472. package/scripts/utils/tauri/desktop_install.mjs +81 -0
  2473. package/scripts/utils/tauri/desktop_install.test.mjs +43 -0
  2474. package/scripts/utils/tauri/dev_runtime.mjs +10 -1
  2475. package/scripts/utils/tauri/dev_runtime.test.mjs +2 -1
  2476. package/scripts/utils/tauri/stack_overrides.mjs +28 -4
  2477. package/scripts/utils/tauri/stack_overrides.test.mjs +26 -0
  2478. package/scripts/utils/test/test_env.mjs +44 -0
  2479. package/scripts/utils/test/test_env.test.mjs +99 -0
  2480. package/scripts/utils/tui/actions.mjs +4 -13
  2481. package/scripts/utils/tui/actions.test.mjs +5 -16
  2482. package/scripts/utils/tui/args.mjs +8 -2
  2483. package/scripts/utils/tui/args.test.mjs +14 -1
  2484. package/scripts/utils/tui/cleanup.mjs +16 -1
  2485. package/scripts/utils/tui/daemon_pane_reconcile.mjs +27 -1
  2486. package/scripts/utils/tui/daemon_pane_reconcile.test.mjs +18 -0
  2487. package/scripts/utils/tui/dev_target_panes.mjs +22 -0
  2488. package/scripts/utils/tui/dev_target_panes.test.mjs +26 -0
  2489. package/scripts/utils/tui/rescue_priority.mjs +37 -0
  2490. package/scripts/utils/tui/rescue_priority.test.mjs +24 -0
  2491. package/scripts/utils/tui/restart_operation.mjs +151 -0
  2492. package/scripts/utils/tui/stack_scope_env.mjs +8 -3
  2493. package/scripts/utils/tui/stack_scope_env.test.mjs +7 -2
  2494. package/scripts/utils/tui/stdin_handoff.mjs +13 -40
  2495. package/scripts/utils/tui/stdin_handoff.test.mjs +36 -1
  2496. package/scripts/utils/tui/tauri_mode.mjs +178 -6
  2497. package/scripts/utils/tui/tauri_mode.test.mjs +222 -4
  2498. package/scripts/utils/workspaces/workspaceBundleLock.mjs +39 -0
  2499. package/scripts/utils/worktrees/yarn_install_guard.mjs +7 -49
  2500. package/scripts/utils/worktrees/yarn_install_guard.test.mjs +139 -4
  2501. package/scripts/where.mjs +15 -4
  2502. package/scripts/worktrees.mjs +18 -17
  2503. package/node_modules/@happier-dev/agents/dist/.tsbuildinfo +0 -1
  2504. package/node_modules/@happier-dev/cli-common/dist/.tsbuildinfo +0 -1
  2505. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.test.d.ts +0 -2
  2506. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.test.d.ts.map +0 -1
  2507. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.test.js +0 -29
  2508. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/commands.test.js.map +0 -1
  2509. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/ensureBundledWorkspacePackagesBuilt.test.d.ts +0 -2
  2510. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/ensureBundledWorkspacePackagesBuilt.test.d.ts.map +0 -1
  2511. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/ensureBundledWorkspacePackagesBuilt.test.js +0 -76
  2512. package/node_modules/@happier-dev/cli-common/dist/componentArtifacts/ensureBundledWorkspacePackagesBuilt.test.js.map +0 -1
  2513. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/prepareFirstPartyComponentPayloadFromGitHubRelease.test.d.ts +0 -2
  2514. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/prepareFirstPartyComponentPayloadFromGitHubRelease.test.d.ts.map +0 -1
  2515. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/prepareFirstPartyComponentPayloadFromGitHubRelease.test.js +0 -151
  2516. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/prepareFirstPartyComponentPayloadFromGitHubRelease.test.js.map +0 -1
  2517. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.test.d.ts +0 -2
  2518. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.test.d.ts.map +0 -1
  2519. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.test.js +0 -145
  2520. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/relayRuntime.test.js.map +0 -1
  2521. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/releaseAssetBundle.test.d.ts +0 -2
  2522. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/releaseAssetBundle.test.d.ts.map +0 -1
  2523. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/releaseAssetBundle.test.js +0 -96
  2524. package/node_modules/@happier-dev/cli-common/dist/firstPartyRuntime/releaseAssetBundle.test.js.map +0 -1
  2525. package/node_modules/@happier-dev/cli-common/dist/providers/codexRelease.d.ts +0 -9
  2526. package/node_modules/@happier-dev/cli-common/dist/providers/codexRelease.d.ts.map +0 -1
  2527. package/node_modules/@happier-dev/cli-common/dist/providers/codexRelease.js +0 -72
  2528. package/node_modules/@happier-dev/cli-common/dist/providers/codexRelease.js.map +0 -1
  2529. package/node_modules/@happier-dev/cli-common/dist/providers/install.gating.test.d.ts +0 -2
  2530. package/node_modules/@happier-dev/cli-common/dist/providers/install.gating.test.d.ts.map +0 -1
  2531. package/node_modules/@happier-dev/cli-common/dist/providers/install.gating.test.js +0 -178
  2532. package/node_modules/@happier-dev/cli-common/dist/providers/install.gating.test.js.map +0 -1
  2533. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.systemNodeFallback.test.d.ts +0 -2
  2534. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.systemNodeFallback.test.d.ts.map +0 -1
  2535. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.systemNodeFallback.test.js +0 -119
  2536. package/node_modules/@happier-dev/cli-common/dist/providers/managedJavaScriptRuntime.systemNodeFallback.test.js.map +0 -1
  2537. package/node_modules/@happier-dev/cli-common/dist/providers/managedPnpm.test.d.ts +0 -2
  2538. package/node_modules/@happier-dev/cli-common/dist/providers/managedPnpm.test.d.ts.map +0 -1
  2539. package/node_modules/@happier-dev/cli-common/dist/providers/managedPnpm.test.js +0 -138
  2540. package/node_modules/@happier-dev/cli-common/dist/providers/managedPnpm.test.js.map +0 -1
  2541. package/node_modules/@happier-dev/cli-common/dist/providers/pnpmRelease.test.d.ts +0 -2
  2542. package/node_modules/@happier-dev/cli-common/dist/providers/pnpmRelease.test.d.ts.map +0 -1
  2543. package/node_modules/@happier-dev/cli-common/dist/providers/pnpmRelease.test.js +0 -44
  2544. package/node_modules/@happier-dev/cli-common/dist/providers/pnpmRelease.test.js.map +0 -1
  2545. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.test.d.ts +0 -2
  2546. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.test.d.ts.map +0 -1
  2547. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.test.js +0 -20
  2548. package/node_modules/@happier-dev/cli-common/dist/providers/resolution.test.js.map +0 -1
  2549. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.test.d.ts +0 -2
  2550. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.test.d.ts.map +0 -1
  2551. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.test.js +0 -19
  2552. package/node_modules/@happier-dev/cli-common/dist/providers/resolveHappyHomeDir.test.js.map +0 -1
  2553. package/node_modules/@happier-dev/cli-common/dist/systemTasks/interactiveTaskKinds.test.d.ts +0 -2
  2554. package/node_modules/@happier-dev/cli-common/dist/systemTasks/interactiveTaskKinds.test.d.ts.map +0 -1
  2555. package/node_modules/@happier-dev/cli-common/dist/systemTasks/interactiveTaskKinds.test.js +0 -177
  2556. package/node_modules/@happier-dev/cli-common/dist/systemTasks/interactiveTaskKinds.test.js.map +0 -1
  2557. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/relayRuntimeKinds.test.d.ts +0 -2
  2558. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/relayRuntimeKinds.test.d.ts.map +0 -1
  2559. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/relayRuntimeKinds.test.js +0 -173
  2560. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/relayRuntimeKinds.test.js.map +0 -1
  2561. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteFirstPartyPayloadInstaller.test.d.ts +0 -2
  2562. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteFirstPartyPayloadInstaller.test.d.ts.map +0 -1
  2563. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteFirstPartyPayloadInstaller.test.js +0 -98
  2564. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteFirstPartyPayloadInstaller.test.js.map +0 -1
  2565. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteSshBootstrapMachineKind.test.d.ts +0 -2
  2566. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteSshBootstrapMachineKind.test.d.ts.map +0 -1
  2567. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteSshBootstrapMachineKind.test.js +0 -549
  2568. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/remoteSshBootstrapMachineKind.test.js.map +0 -1
  2569. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/sshHostTrust.test.d.ts +0 -2
  2570. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/sshHostTrust.test.d.ts.map +0 -1
  2571. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/sshHostTrust.test.js +0 -37
  2572. package/node_modules/@happier-dev/cli-common/dist/systemTasks/kinds/sshHostTrust.test.js.map +0 -1
  2573. package/node_modules/@happier-dev/cli-common/dist/systemTasks/runSystemTask.test.d.ts +0 -2
  2574. package/node_modules/@happier-dev/cli-common/dist/systemTasks/runSystemTask.test.d.ts.map +0 -1
  2575. package/node_modules/@happier-dev/cli-common/dist/systemTasks/runSystemTask.test.js +0 -243
  2576. package/node_modules/@happier-dev/cli-common/dist/systemTasks/runSystemTask.test.js.map +0 -1
  2577. package/node_modules/@happier-dev/cli-common/dist/tailscale/commandRunner.test.d.ts +0 -2
  2578. package/node_modules/@happier-dev/cli-common/dist/tailscale/commandRunner.test.d.ts.map +0 -1
  2579. package/node_modules/@happier-dev/cli-common/dist/tailscale/commandRunner.test.js +0 -204
  2580. package/node_modules/@happier-dev/cli-common/dist/tailscale/commandRunner.test.js.map +0 -1
  2581. package/node_modules/@happier-dev/cli-common/dist/tailscale/serveStatus.test.d.ts +0 -2
  2582. package/node_modules/@happier-dev/cli-common/dist/tailscale/serveStatus.test.d.ts.map +0 -1
  2583. package/node_modules/@happier-dev/cli-common/dist/tailscale/serveStatus.test.js +0 -58
  2584. package/node_modules/@happier-dev/cli-common/dist/tailscale/serveStatus.test.js.map +0 -1
  2585. package/node_modules/@happier-dev/cli-common/dist/tailscale/taskContract.test.d.ts +0 -2
  2586. package/node_modules/@happier-dev/cli-common/dist/tailscale/taskContract.test.d.ts.map +0 -1
  2587. package/node_modules/@happier-dev/cli-common/dist/tailscale/taskContract.test.js +0 -29
  2588. package/node_modules/@happier-dev/cli-common/dist/tailscale/taskContract.test.js.map +0 -1
  2589. package/node_modules/@happier-dev/cli-common/dist/workspaces/index.test.d.ts +0 -2
  2590. package/node_modules/@happier-dev/cli-common/dist/workspaces/index.test.d.ts.map +0 -1
  2591. package/node_modules/@happier-dev/cli-common/dist/workspaces/index.test.js +0 -94
  2592. package/node_modules/@happier-dev/cli-common/dist/workspaces/index.test.js.map +0 -1
  2593. package/node_modules/@happier-dev/protocol/dist/.tsbuildinfo +0 -1
  2594. package/node_modules/@happier-dev/release-runtime/dist/.tsbuildinfo +0 -1
  2595. package/node_modules/@happier-dev/release-runtime/dist/_cjs/releaseRings.js +0 -134
  2596. package/node_modules/@happier-dev/release-runtime/dist/extractPlan.d.ts +0 -14
  2597. package/node_modules/@happier-dev/release-runtime/dist/extractPlan.d.ts.map +0 -1
  2598. package/node_modules/@happier-dev/release-runtime/dist/extractPlan.js +0 -48
  2599. package/node_modules/@happier-dev/release-runtime/dist/extractPlan.js.map +0 -1
  2600. package/node_modules/@happier-dev/release-runtime/dist/releaseRings.cjs +0 -134
  2601. package/scripts/daemon_cleanup_lsof_unavailable.test.mjs +0 -112
  2602. package/scripts/ghops.mjs +0 -80
  2603. package/scripts/stack_guided_login_does_not_preopen_browser.test.mjs +0 -17
  2604. package/scripts/utils/auth/guided_stack_web_login.mjs +0 -56
  2605. package/scripts/utils/auth/login_ux.mjs +0 -113
  2606. package/scripts/utils/cli/smoke_help.mjs +0 -44
  2607. package/scripts/utils/dev_auth_key.mjs +0 -7
  2608. package/scripts/utils/server/apply_runtime_server_light_sqlite_env.mjs +0 -25
  2609. package/scripts/utils/server/apply_server_light_env_defaults.mjs +0 -14
  2610. package/scripts/utils/stack_context.mjs +0 -1
  2611. package/scripts/utils/stack_runtime_state.mjs +0 -1
  2612. package/scripts/utils/tui/daemon_autostart.mjs +0 -36
  2613. package/scripts/utils/tui/daemon_autostart.test.mjs +0 -173
@@ -1,14 +1,19 @@
1
+ import { createHash } from 'node:crypto';
1
2
  import { existsSync } from 'node:fs';
2
3
  import { spawnSync } from 'node:child_process';
3
- import { mkdtemp, rm, writeFile, mkdir, readFile } from 'node:fs/promises';
4
- import { homedir, tmpdir } from 'node:os';
5
- import { basename, dirname, join, posix as posixPath } from 'node:path';
6
- import { resolveServiceBackend, } from '../service/index.js';
7
- import { buildLaunchdPlistXml } from '../service/launchd.js';
8
- import { renderSystemdServiceUnit } from '../service/systemd.js';
9
- import { resolveRelayRuntimeDefaults } from '../firstPartyRuntime/relayRuntime.js';
10
- import { installOrUpdateRelayRuntimeLocal } from '../firstPartyRuntime/relayRuntimeInstall.js';
11
- import { applyEnvOverridesToEnvText, parseEnvText } from '../firstPartyRuntime/selfHostServerEnv.js';
4
+ import { rm, readFile } from 'node:fs/promises';
5
+ import { createConnection } from 'node:net';
6
+ import { homedir } from 'node:os';
7
+ import { join, posix as posixPath } from 'node:path';
8
+ import { normalizePublicReleaseRingId } from '@happier-dev/release-runtime/releaseRings';
9
+ import { applyServicePlan, buildServiceCommandEnv, buildReadWindowsScheduledTaskStatusPowerShellCommand, buildServiceDefinition, parseWindowsScheduledTaskStatusPowerShellJson, planServiceAction, resolveServiceBackend, } from '../service/index.js';
10
+ import { checkRelayRuntimeHealth, resolveRelayRuntimeDefaults } from '../firstPartyRuntime/relayRuntime.js';
11
+ import { installOrUpdateRelayRuntimeLocal, shouldMigrateLegacyUnsuffixedRelayRuntimeInstallRoot, } from '../firstPartyRuntime/relayRuntimeInstall.js';
12
+ import { resolveNonCollidingRelayPort } from '../firstPartyRuntime/resolveNonCollidingRelayPort.js';
13
+ import { mergeSelfHostServerEnvText, parseEnvText, resolveSelfHostSqliteAutoMigrateValue, renderSelfHostServerEnvTextFromResolvedValues, resolveConfiguredSelfHostBaseUrl, renderPrismaCompatibleSqliteDatabaseUrl, resolveServerLightSqliteDatabaseUrlOptionsFromEnv, } from '../firstPartyRuntime/selfHostServerEnv.js';
14
+ import { buildRelayRuntimeHealthProbeCommand, RELAY_RUNTIME_HEALTH_OK_TOKEN } from './buildRelayRuntimeHealthProbeCommand.js';
15
+ import { buildRemoteRelayRuntimeInstallCommand } from './remoteRelayRuntimeInstallCommand.js';
16
+ const RELAY_RUNTIME_CHANNELS = ['stable', 'preview', 'publicdev'];
12
17
  function quoteRemoteShellArg(value) {
13
18
  const raw = String(value ?? '');
14
19
  if (raw === '')
@@ -25,22 +30,43 @@ function sanitizeRemotePathSegment(value) {
25
30
  return sanitized || 'payload';
26
31
  }
27
32
  function normalizeChannel(raw) {
28
- const normalized = String(raw ?? '').trim().toLowerCase();
29
- if (normalized === 'preview')
30
- return 'preview';
31
- if (normalized === 'dev' || normalized === 'publicdev')
32
- return 'publicdev';
33
- return 'stable';
33
+ return normalizePublicReleaseRingId(raw) || 'stable';
34
34
  }
35
35
  function normalizeMode(raw) {
36
36
  return String(raw ?? '').trim().toLowerCase() === 'system' ? 'system' : 'user';
37
37
  }
38
+ function formatRelayChannelLabel(channel) {
39
+ return channel === 'publicdev' ? 'dev' : channel;
40
+ }
41
+ function listOtherRelayChannels(channel) {
42
+ return RELAY_RUNTIME_CHANNELS.filter((candidate) => candidate !== channel);
43
+ }
38
44
  function resolveRemoteHomeDirForRuntime() {
39
45
  return '$HOME';
40
46
  }
41
47
  function resolveRemoteHomeDirForComponents() {
42
48
  return '$HOME/.happier';
43
49
  }
50
+ function buildRelayRuntimeServiceSpec(params) {
51
+ return {
52
+ label: params.label,
53
+ description: `Happier Relay Runtime (${params.label})`,
54
+ programArgs: [params.serverBinaryPath],
55
+ workingDirectory: params.installRoot,
56
+ env: params.env,
57
+ stdoutPath: params.stdoutPath,
58
+ stderrPath: params.stderrPath,
59
+ };
60
+ }
61
+ async function resolveRemoteUserHomeDir(deps, params) {
62
+ const result = await deps.runRemoteText({
63
+ ssh: params.ssh,
64
+ knownHostsMode: params.knownHostsMode,
65
+ remoteCommand: `printf '%s\\n' \"$HOME\"`,
66
+ }).catch(() => ({ status: 1, stdout: '', stderr: '' }));
67
+ const candidate = result.status === 0 ? String(result.stdout ?? '').trim() : '';
68
+ return candidate.startsWith('/') ? candidate : null;
69
+ }
44
70
  function resolveRemotePlatform(params) {
45
71
  return params.target.os;
46
72
  }
@@ -53,130 +79,146 @@ function resolveRelayDefaultsForRemote(params) {
53
79
  homeDir,
54
80
  });
55
81
  }
56
- function buildRemoteInstallBinaryShimCommand(params) {
57
- const source = quoteRemoteShellArg(params.sourcePath);
58
- const dest = quoteRemoteShellArg(params.destPath);
59
- return [
60
- 'set -eu',
61
- `rm -f ${dest}`,
62
- `(ln -s ${source} ${dest} 2>/dev/null || cp ${source} ${dest})`,
63
- `chmod +x ${dest} 2>/dev/null || true`,
64
- ].join('; ');
65
- }
66
- function buildRemoteProbeExistsCommand(params) {
67
- const testFlag = params.kind === 'dir' ? '-d' : '-f';
68
- return `if [ ${testFlag} ${quoteRemoteShellArg(params.path)} ]; then echo yes; fi`;
69
- }
70
- function resolveRemotePrismaEngineCandidates(params) {
71
- if (params.platform === 'darwin' && params.arch === 'arm64') {
72
- return [
73
- posixPath.join(params.serverBinDir, 'node_modules', '.prisma', 'client', 'libquery_engine-darwin-arm64.dylib.node'),
74
- posixPath.join(params.serverBinDir, 'generated', 'sqlite-client', 'libquery_engine-darwin-arm64.dylib.node'),
75
- ];
76
- }
77
- if (params.platform === 'linux' && params.arch === 'arm64') {
78
- return [
79
- posixPath.join(params.serverBinDir, 'node_modules', '.prisma', 'client', 'libquery_engine-linux-arm64-openssl-3.0.x.so.node'),
80
- posixPath.join(params.serverBinDir, 'generated', 'sqlite-client', 'libquery_engine-linux-arm64-openssl-3.0.x.so.node'),
81
- ];
82
- }
83
- if (params.platform === 'linux' && params.arch === 'x64') {
84
- return [
85
- posixPath.join(params.serverBinDir, 'node_modules', '.prisma', 'client', 'libquery_engine-debian-openssl-3.0.x.so.node'),
86
- posixPath.join(params.serverBinDir, 'generated', 'sqlite-client', 'libquery_engine-debian-openssl-3.0.x.so.node'),
87
- ];
88
- }
89
- return [];
90
- }
91
- async function resolveFirstRemoteExistingPath(deps, params) {
92
- if (params.candidates.length === 0)
93
- return '';
94
- const chain = params.candidates
95
- .map((candidate) => `if [ -f ${quoteRemoteShellArg(candidate)} ]; then echo ${quoteRemoteShellArg(candidate)}; exit 0; fi`)
96
- .join('; ');
97
- const cmd = ['set -eu', chain, 'echo ""'].join('; ');
98
- const result = await deps.runRemoteText({
99
- ssh: params.ssh,
100
- knownHostsMode: params.knownHostsMode,
101
- remoteCommand: cmd,
82
+ async function probeLocalPortOpen(params) {
83
+ return await new Promise((resolve) => {
84
+ const socket = createConnection({
85
+ host: params.host,
86
+ port: params.port,
87
+ });
88
+ const finish = (value) => {
89
+ socket.removeAllListeners();
90
+ socket.destroy();
91
+ resolve(value);
92
+ };
93
+ socket.setTimeout(params.timeoutMs);
94
+ socket.once('connect', () => finish(true));
95
+ socket.once('timeout', () => finish(false));
96
+ socket.once('error', () => finish(false));
102
97
  });
103
- return String(result.stdout ?? '').trim();
104
- }
105
- function buildRemoteRelayRuntimeEnvText(params) {
106
- const normalizedDataDir = String(params.defaults.dataDir ?? '').replace(/\/+$/, '') || String(params.defaults.dataDir ?? '');
107
- const migrationsDir = `${normalizedDataDir}/migrations/sqlite`;
108
- const dbPath = `${normalizedDataDir}/happier-server-light.sqlite`;
109
- const databaseUrl = `file:${dbPath}`;
110
- const filesDir = `${params.defaults.dataDir}/files`;
111
- const dbDir = `${params.defaults.dataDir}/pglite`;
112
- const baseLines = [
113
- `PORT=${params.defaults.serverPort}`,
114
- `HAPPIER_SERVER_HOST=${params.defaults.serverHost}`,
115
- 'METRICS_ENABLED=false',
116
- 'HAPPIER_DB_PROVIDER=sqlite',
117
- `DATABASE_URL=${databaseUrl}`,
118
- 'HAPPIER_FILES_BACKEND=local',
119
- ...(params.nodeModulesPath ? [`NODE_PATH=${params.nodeModulesPath}`] : []),
120
- ...(params.prismaEnginePath
121
- ? [
122
- 'PRISMA_CLIENT_ENGINE_TYPE=library',
123
- `PRISMA_QUERY_ENGINE_LIBRARY=${params.prismaEnginePath}`,
124
- ]
125
- : []),
126
- `HAPPIER_SQLITE_AUTO_MIGRATE=${params.platform === 'darwin' ? '0' : '1'}`,
127
- `HAPPIER_SQLITE_MIGRATIONS_DIR=${migrationsDir}`,
128
- `HAPPIER_SERVER_LIGHT_DATA_DIR=${params.defaults.dataDir}`,
129
- `HAPPIER_SERVER_LIGHT_FILES_DIR=${filesDir}`,
130
- `HAPPIER_SERVER_LIGHT_DB_DIR=${dbDir}`,
131
- '',
132
- ];
133
- const baseText = `${baseLines.join('\n')}\n`;
134
- const envText = params.envOverrides && Object.keys(params.envOverrides).length > 0
135
- ? applyEnvOverridesToEnvText(baseText, params.envOverrides)
136
- : baseText;
137
- return {
138
- envText,
139
- parsed: parseEnvText(envText),
140
- };
141
98
  }
142
- async function writeRemoteFilesViaScp(params) {
143
- const stageParent = String(params.remoteStageParent ?? '').trim();
144
- if (!stageParent) {
145
- throw new Error('remoteStageParent is required');
146
- }
147
- const localRoot = await mkdtemp(join(tmpdir(), 'happier-relayhost-stage-'));
99
+ async function fetchLocalJson(params) {
100
+ const controller = new AbortController();
101
+ const timeout = setTimeout(() => controller.abort(), params.timeoutMs);
148
102
  try {
149
- for (const file of params.files) {
150
- const rel = String(file.relativePath ?? '').trim().replace(/^\/+/u, '');
151
- const target = join(localRoot, rel);
152
- await mkdir(dirname(target), { recursive: true });
153
- await writeFile(target, file.contents, 'utf8');
154
- }
155
- await params.deps.runRemoteText({
156
- ssh: params.ssh,
157
- knownHostsMode: params.knownHostsMode,
158
- remoteCommand: `mkdir -p ${quoteRemoteShellArg(stageParent)}`,
103
+ const response = await fetch(params.url, {
104
+ signal: controller.signal,
105
+ headers: {
106
+ accept: 'application/json',
107
+ },
159
108
  });
160
- await params.deps.copyLocalDirectoryToRemote({
161
- ssh: params.ssh,
162
- knownHostsMode: params.knownHostsMode,
163
- localPath: localRoot,
164
- remotePath: stageParent,
165
- });
166
- const remoteRoot = `${stageParent}/${sanitizeRemotePathSegment(basename(localRoot))}`;
167
109
  return {
168
- remoteRoot,
169
- cleanupRemoteCommand: `rm -rf ${quoteRemoteShellArg(stageParent)}`,
110
+ ok: response.ok,
111
+ status: response.status,
112
+ body: await response.json().catch(() => ({})),
170
113
  };
171
114
  }
172
115
  finally {
173
- await rm(localRoot, { recursive: true, force: true });
116
+ clearTimeout(timeout);
174
117
  }
175
118
  }
119
+ async function resolveLocalRelayHealth(params) {
120
+ const parsedUrl = new URL(params.baseUrl);
121
+ const port = Number.parseInt(parsedUrl.port, 10);
122
+ const result = await checkRelayRuntimeHealth({
123
+ host: parsedUrl.hostname,
124
+ port: Number.isInteger(port) && port > 0 ? port : 80,
125
+ path: params.healthPath,
126
+ timeoutMs: params.timeoutMs,
127
+ probePortOpen: async ({ host, port: localPort, timeoutMs }) => await probeLocalPortOpen({ host, port: localPort, timeoutMs }),
128
+ fetchJson: async ({ url, timeoutMs }) => await fetchLocalJson({ url, timeoutMs }),
129
+ });
130
+ return result.reachable;
131
+ }
132
+ async function resolveLocalDesiredRelayUrl(params) {
133
+ const defaults = resolveRelayRuntimeDefaults({
134
+ platform: process.platform,
135
+ mode: params.mode,
136
+ channel: params.channel,
137
+ homeDir: homedir(),
138
+ });
139
+ const envPath = join(defaults.configDir, 'server.env');
140
+ const existingEnvText = existsSync(envPath) ? await readFile(envPath, 'utf8').catch(() => '') : '';
141
+ // Resolve the port we'll advertise for this channel. When there's no
142
+ // existing server.env for this channel AND the user didn't explicitly pass
143
+ // a PORT override, avoid colliding with another channel's relay on the
144
+ // same machine: each channel stores independent data, so two relays on
145
+ // the same URL would share a profile id and cross-wire daemon state.
146
+ const existingPortRaw = existingEnvText ? String(parseEnvText(existingEnvText).PORT ?? '').trim() : '';
147
+ const overridePortRaw = String((params.envOverrides ?? {}).PORT ?? '').trim();
148
+ const configuredPortRaw = overridePortRaw || existingPortRaw;
149
+ const configuredPort = configuredPortRaw && Number.isInteger(Number.parseInt(configuredPortRaw, 10))
150
+ ? Number.parseInt(configuredPortRaw, 10)
151
+ : null;
152
+ const resolvedPort = await resolveNonCollidingRelayPort({
153
+ platform: process.platform,
154
+ mode: params.mode,
155
+ channel: params.channel,
156
+ homeDir: homedir(),
157
+ defaultPort: defaults.serverPort,
158
+ configuredPort,
159
+ });
160
+ const sqliteEnv = {
161
+ ...process.env,
162
+ ...(existingEnvText ? parseEnvText(existingEnvText) : {}),
163
+ ...(params.envOverrides ?? {}),
164
+ };
165
+ const baseEnvText = renderSelfHostServerEnvTextFromResolvedValues({
166
+ port: resolvedPort,
167
+ host: defaults.serverHost,
168
+ dataDir: defaults.dataDir,
169
+ filesDir: join(defaults.dataDir, 'files'),
170
+ dbDir: join(defaults.dataDir, 'pglite'),
171
+ databaseUrl: renderPrismaCompatibleSqliteDatabaseUrl({
172
+ dbPath: join(defaults.dataDir, 'happier-server-light.sqlite'),
173
+ platform: process.platform,
174
+ sqlite: resolveServerLightSqliteDatabaseUrlOptionsFromEnv(sqliteEnv),
175
+ }),
176
+ sqliteAutoMigrate: resolveSelfHostSqliteAutoMigrateValue(),
177
+ sqliteMigrationsDir: join(defaults.dataDir, 'migrations', 'sqlite'),
178
+ });
179
+ const envText = mergeSelfHostServerEnvText({
180
+ baseEnvText,
181
+ existingEnvText,
182
+ overrides: params.envOverrides,
183
+ });
184
+ return resolveConfiguredSelfHostBaseUrl({
185
+ fallbackBaseUrl: `http://${defaults.serverHost}:${resolvedPort}`,
186
+ envText,
187
+ });
188
+ }
189
+ function createRelayLaneConflictError(params) {
190
+ return new Error(`A ${formatRelayChannelLabel(params.conflictingChannel)} relay is already installed at ${params.relayUrl}. `
191
+ + 'Relay lanes keep separate data and are not replaced automatically. '
192
+ + `Use --channel ${formatRelayChannelLabel(params.conflictingChannel)} to manage that relay, choose a different PORT, or uninstall it before installing ${formatRelayChannelLabel(params.requestedChannel)}.`);
193
+ }
194
+ async function resolveRemoteRelayHealth(params) {
195
+ const probeResult = await params.deps.runRemoteText({
196
+ ssh: params.ssh,
197
+ knownHostsMode: params.knownHostsMode,
198
+ remoteCommand: buildRelayRuntimeHealthProbeCommand({
199
+ baseUrl: params.relayUrl,
200
+ path: params.healthPath,
201
+ maxAttempts: params.maxAttempts ?? 1,
202
+ sleepSeconds: params.sleepSeconds ?? 0,
203
+ }),
204
+ }).catch(() => ({ status: 1, stdout: '', stderr: '' }));
205
+ const probeStdout = String(probeResult.stdout ?? '');
206
+ return probeResult.status === 0 || probeStdout.includes(RELAY_RUNTIME_HEALTH_OK_TOKEN);
207
+ }
208
+ function buildRemoteProbeExistsCommand(params) {
209
+ const flag = params.kind === 'dir' ? '-d' : '-f';
210
+ return `if [ ${flag} ${quoteRemoteShellArg(params.path)} ]; then echo yes; else echo no; fi`;
211
+ }
176
212
  function buildRemoteReadJsonFileCommand(path) {
177
213
  const quoted = quoteRemoteShellArg(path);
178
214
  return `if [ -f ${quoted} ]; then cat ${quoted}; else echo ''; fi`;
179
215
  }
216
+ function buildRemoteReadTextFileCommand(params) {
217
+ const quoted = quoteRemoteShellArg(params.path);
218
+ const prefix = String(params.privilegedPrefix ?? '').trim();
219
+ const cat = prefix ? `${prefix}cat` : 'cat';
220
+ return `if [ -f ${quoted} ]; then ${cat} ${quoted} 2>/dev/null || true; else echo ''; fi`;
221
+ }
180
222
  function tryParseJsonObject(text) {
181
223
  const raw = String(text ?? '').trim();
182
224
  if (!raw)
@@ -191,22 +233,234 @@ function tryParseJsonObject(text) {
191
233
  return null;
192
234
  }
193
235
  }
236
+ function parseLastJsonLineObject(text) {
237
+ const lines = String(text ?? '').split(/\r?\n/u).map((line) => line.trim()).filter(Boolean);
238
+ for (let index = lines.length - 1; index >= 0; index -= 1) {
239
+ const parsed = tryParseJsonObject(lines[index]);
240
+ if (parsed)
241
+ return parsed;
242
+ }
243
+ return null;
244
+ }
194
245
  function buildRemoteServiceStatusCommand(params) {
195
246
  const svc = `${params.serviceName}.service`;
196
247
  if (params.backend === 'systemd-user') {
197
- return `systemctl --user show ${quoteRemoteShellArg(svc)} --property=UnitFileState,ActiveState,SubState --value`;
248
+ return wrapRemoteSystemdUserCommand(`systemctl --user show ${quoteRemoteShellArg(svc)} --property=UnitFileState,ActiveState,SubState`);
198
249
  }
199
250
  if (params.backend === 'systemd-system') {
200
- return `systemctl show ${quoteRemoteShellArg(svc)} --property=UnitFileState,ActiveState,SubState --value`;
251
+ return `systemctl show ${quoteRemoteShellArg(svc)} --property=UnitFileState,ActiveState,SubState`;
201
252
  }
202
253
  if (params.backend === 'launchd-user' || params.backend === 'launchd-system') {
203
254
  return `launchctl list ${quoteRemoteShellArg(params.serviceName)}`;
204
255
  }
205
256
  throw new Error(`Unsupported remote backend: ${params.backend}`);
206
257
  }
258
+ function wrapRemoteSystemdUserCommand(command) {
259
+ return `XDG_RUNTIME_DIR="\${XDG_RUNTIME_DIR:-/run/user/$(id -u)}" DBUS_SESSION_BUS_ADDRESS="\${DBUS_SESSION_BUS_ADDRESS:-unix:path=\${XDG_RUNTIME_DIR}/bus}" ${command}`;
260
+ }
261
+ function parseSystemctlShowOutput(stdout) {
262
+ const lines = String(stdout ?? '').split(/\r?\n/u).map((line) => line.trim()).filter(Boolean);
263
+ const map = new Map();
264
+ const rawValues = [];
265
+ for (const line of lines) {
266
+ const eqIndex = line.indexOf('=');
267
+ if (eqIndex > 0) {
268
+ const key = line.slice(0, eqIndex).trim().toLowerCase();
269
+ const value = line.slice(eqIndex + 1).trim();
270
+ if (key) {
271
+ map.set(key, value);
272
+ }
273
+ continue;
274
+ }
275
+ rawValues.push(line);
276
+ }
277
+ const unitFileState = map.get('unitfilestate') ?? rawValues[0] ?? '';
278
+ const activeState = map.get('activestate') ?? rawValues[1] ?? '';
279
+ const subState = map.get('substate') ?? rawValues[2] ?? '';
280
+ const loadState = map.get('loadstate') ?? '';
281
+ return { unitFileState, activeState, subState, loadState };
282
+ }
283
+ function normalizeComparablePathKey(value) {
284
+ const trimmed = String(value ?? '').trim().replace(/[\\/]+$/, '');
285
+ return trimmed || null;
286
+ }
287
+ function resolveSystemdUnitDefinitionPath(params) {
288
+ const filename = `${params.unitName}.service`;
289
+ if (params.backend === 'systemd-system') {
290
+ return join('/etc/systemd/system', filename);
291
+ }
292
+ return join(params.homeDir, '.config', 'systemd', 'user', filename);
293
+ }
294
+ function resolveLaunchdPlistDefinitionPath(params) {
295
+ const filename = `${params.label}.plist`;
296
+ if (params.backend === 'launchd-system') {
297
+ return join('/Library/LaunchDaemons', filename);
298
+ }
299
+ return join(params.homeDir, 'Library', 'LaunchAgents', filename);
300
+ }
301
+ function resolveWindowsWrapperDefinitionPath(params) {
302
+ if (params.backend === 'schtasks-system') {
303
+ return `C:\\ProgramData\\happier\\services\\${params.label}.ps1`;
304
+ }
305
+ return `${params.homeDir}\\.happier\\services\\${params.label}.ps1`;
306
+ }
307
+ function parseSystemdUnitWorkingDirectory(unitText) {
308
+ const lines = String(unitText ?? '').split(/\r?\n/u);
309
+ for (const line of lines) {
310
+ const trimmed = line.trim();
311
+ if (!trimmed || trimmed.startsWith('#') || trimmed.startsWith(';'))
312
+ continue;
313
+ if (!trimmed.toLowerCase().startsWith('workingdirectory='))
314
+ continue;
315
+ const value = trimmed.slice('WorkingDirectory='.length).trim();
316
+ return value || null;
317
+ }
318
+ return null;
319
+ }
320
+ function parseSystemdUnitEnvironmentText(unitText) {
321
+ const entries = [];
322
+ for (const line of String(unitText ?? '').split(/\r?\n/u)) {
323
+ const trimmed = line.trim();
324
+ if (!trimmed || trimmed.startsWith('#') || trimmed.startsWith(';'))
325
+ continue;
326
+ if (!trimmed.toLowerCase().startsWith('environment='))
327
+ continue;
328
+ const raw = trimmed.slice('Environment='.length).trim();
329
+ if (!raw)
330
+ continue;
331
+ const unquoted = raw.length >= 2 && raw.startsWith('"') && raw.endsWith('"')
332
+ ? raw.slice(1, -1)
333
+ : raw;
334
+ if (!/^[A-Za-z_][A-Za-z0-9_]*=/u.test(unquoted))
335
+ continue;
336
+ entries.push(unquoted);
337
+ }
338
+ return entries.join('\n');
339
+ }
340
+ function xmlUnescape(value) {
341
+ return String(value ?? '')
342
+ .replaceAll('"', '"')
343
+ .replaceAll(''', "'")
344
+ .replaceAll('>', '>')
345
+ .replaceAll('&lt;', '<')
346
+ .replaceAll('&amp;', '&');
347
+ }
348
+ function parseLaunchdPlistWorkingDirectory(plistText) {
349
+ const match = String(plistText ?? '').match(/<key>\s*WorkingDirectory\s*<\/key>\s*<string>([\s\S]*?)<\/string>/iu);
350
+ const value = match?.[1]?.trim();
351
+ return value ? xmlUnescape(value) : null;
352
+ }
353
+ function parseWindowsWrapperWorkingDirectory(wrapperText) {
354
+ const match = String(wrapperText ?? '').match(/Set-Location\s+-LiteralPath\s+"((?:`.|[^"])*)"/iu);
355
+ const raw = match?.[1]?.trim();
356
+ if (!raw)
357
+ return null;
358
+ return raw.replace(/`(["`])/gu, '$1') || null;
359
+ }
360
+ function parseServiceDefinitionWorkingDirectory(params) {
361
+ if (params.backend === 'systemd-user' || params.backend === 'systemd-system') {
362
+ return parseSystemdUnitWorkingDirectory(params.definitionText);
363
+ }
364
+ if (params.backend === 'launchd-user' || params.backend === 'launchd-system') {
365
+ return parseLaunchdPlistWorkingDirectory(params.definitionText);
366
+ }
367
+ if (params.backend === 'schtasks-user' || params.backend === 'schtasks-system') {
368
+ return parseWindowsWrapperWorkingDirectory(params.definitionText);
369
+ }
370
+ return null;
371
+ }
372
+ function resolveServiceDefinitionBaseUrl(params) {
373
+ if (params.backend !== 'systemd-user' && params.backend !== 'systemd-system') {
374
+ return null;
375
+ }
376
+ const envText = parseSystemdUnitEnvironmentText(params.definitionText);
377
+ if (!envText.trim())
378
+ return null;
379
+ return resolveConfiguredSelfHostBaseUrl({
380
+ fallbackBaseUrl: params.fallbackBaseUrl,
381
+ envText,
382
+ });
383
+ }
384
+ async function readComparableFileHash(path) {
385
+ if (!existsSync(path))
386
+ return null;
387
+ const contents = await readFile(path).catch(() => null);
388
+ if (!contents)
389
+ return null;
390
+ return createHash('sha256').update(contents).digest('hex');
391
+ }
392
+ function renderLocalRelayStrandedLegacyStateMessage(params) {
393
+ return `Detected older ${formatRelayChannelLabel(params.channel)} relay state at ${params.legacyInstallRoot} beside the current relay root ${params.currentInstallRoot}. `
394
+ + 'The two roots use different data secrets, so auth/session data may be split between them. '
395
+ + 'Automatic recovery is unsafe once both roots exist; inspect or restore the older root before reinstalling or reauthenticating this relay.';
396
+ }
397
+ function relayRuntimeStateMatchesRequestedLane(params) {
398
+ const stateChannel = String(params.state.channel ?? '').trim();
399
+ const stateMode = String(params.state.mode ?? '').trim();
400
+ const channelMatches = stateChannel === params.channel
401
+ || (params.channel === 'publicdev' && stateChannel === 'dev');
402
+ const modeMatches = !stateMode || stateMode === params.mode;
403
+ return channelMatches && modeMatches;
404
+ }
405
+ async function detectLocalRelayStrandedLegacyState(params) {
406
+ if (params.channel === 'stable')
407
+ return null;
408
+ if (params.backend !== 'systemd-user' && params.backend !== 'systemd-system')
409
+ return null;
410
+ const legacyDefinitionPath = resolveSystemdUnitDefinitionPath({
411
+ backend: params.backend,
412
+ unitName: 'happier-server',
413
+ homeDir: homedir(),
414
+ });
415
+ if (!existsSync(legacyDefinitionPath))
416
+ return null;
417
+ const legacyText = await readFile(legacyDefinitionPath, 'utf8').catch(() => '');
418
+ if (!legacyText.trim())
419
+ return null;
420
+ const legacyInstallRoot = parseSystemdUnitWorkingDirectory(legacyText);
421
+ const legacyKey = normalizeComparablePathKey(legacyInstallRoot);
422
+ const currentKey = normalizeComparablePathKey(params.defaults.installRoot);
423
+ if (!legacyKey || !currentKey || legacyKey === currentKey)
424
+ return null;
425
+ const resolvedLegacyInstallRoot = legacyKey;
426
+ const legacyBaseUrl = resolveServiceDefinitionBaseUrl({
427
+ backend: params.backend,
428
+ definitionText: legacyText,
429
+ fallbackBaseUrl: params.currentBaseUrl,
430
+ });
431
+ if (legacyBaseUrl !== params.currentBaseUrl)
432
+ return null;
433
+ const legacyStatePath = join(resolvedLegacyInstallRoot, 'self-host-state.json');
434
+ if (existsSync(legacyStatePath)) {
435
+ const legacyStateText = await readFile(legacyStatePath, 'utf8').catch(() => '');
436
+ const legacyState = tryParseJsonObject(legacyStateText);
437
+ if (legacyState && !relayRuntimeStateMatchesRequestedLane({
438
+ state: legacyState,
439
+ channel: params.channel,
440
+ mode: params.defaults.mode,
441
+ })) {
442
+ return null;
443
+ }
444
+ }
445
+ const legacyDbPath = join(resolvedLegacyInstallRoot, 'data', 'happier-server-light.sqlite');
446
+ const currentDbPath = join(params.defaults.dataDir, 'happier-server-light.sqlite');
447
+ if (!existsSync(legacyDbPath) || !existsSync(currentDbPath))
448
+ return null;
449
+ const legacySecretHash = await readComparableFileHash(join(resolvedLegacyInstallRoot, 'data', 'handy-master-secret.txt'));
450
+ const currentSecretHash = await readComparableFileHash(join(params.defaults.dataDir, 'handy-master-secret.txt'));
451
+ if (!legacySecretHash || !currentSecretHash || legacySecretHash === currentSecretHash)
452
+ return null;
453
+ return {
454
+ legacyInstallRoot: resolvedLegacyInstallRoot,
455
+ currentInstallRoot: params.defaults.installRoot,
456
+ };
457
+ }
207
458
  function normalizeRemoteServiceSnapshot(params) {
208
459
  if (params.backend === 'systemd-user' || params.backend === 'systemd-system') {
209
- const [unitFileState = '', activeState = '', subState = ''] = String(params.commandResult.stdout ?? '').split(/\r?\n/u);
460
+ if (params.commandResult.status !== 0) {
461
+ return { enabled: null, active: null };
462
+ }
463
+ const { unitFileState, activeState } = parseSystemctlShowOutput(params.commandResult.stdout);
210
464
  return {
211
465
  enabled: unitFileState.trim().toLowerCase() === 'enabled',
212
466
  active: activeState.trim().toLowerCase() === 'active',
@@ -225,20 +479,33 @@ function normalizeRemoteServiceSnapshot(params) {
225
479
  function buildRemoteControlCommand(params) {
226
480
  const svc = `${params.serviceName}.service`;
227
481
  if (params.backend === 'systemd-user') {
228
- return `systemctl --user ${params.action} ${quoteRemoteShellArg(svc)}`;
482
+ if (params.action === 'uninstall') {
483
+ return `${wrapRemoteSystemdUserCommand(`systemctl --user disable --now ${quoteRemoteShellArg(svc)}`)} 2>/dev/null || true; ${wrapRemoteSystemdUserCommand('systemctl --user daemon-reload')}`;
484
+ }
485
+ return wrapRemoteSystemdUserCommand(`systemctl --user ${params.action} ${quoteRemoteShellArg(svc)}`);
229
486
  }
230
487
  if (params.backend === 'systemd-system') {
231
- return `systemctl ${params.action} ${quoteRemoteShellArg(svc)}`;
488
+ const sudoSetup = "SUDO_PREFIX=''; if [ \"$(id -u)\" -ne 0 ]; then SUDO_PREFIX=\"sudo -n \"; fi; ";
489
+ if (params.action === 'uninstall') {
490
+ return `${sudoSetup}${'${SUDO_PREFIX}'}systemctl disable --now ${quoteRemoteShellArg(svc)} 2>/dev/null || true; ${'${SUDO_PREFIX}'}systemctl daemon-reload`;
491
+ }
492
+ return `${sudoSetup}${'${SUDO_PREFIX}'}systemctl ${params.action} ${quoteRemoteShellArg(svc)}`;
232
493
  }
233
494
  if (params.backend === 'launchd-user' || params.backend === 'launchd-system') {
234
- if (params.action === 'stop') {
235
- return `launchctl unload -w ${quoteRemoteShellArg(resolveLaunchdPlistPath(params.serviceName, params.backend === 'launchd-system'))}`;
495
+ const sudoSetup = params.backend === 'launchd-system'
496
+ ? "SUDO_PREFIX=''; if [ \"$(id -u)\" -ne 0 ]; then SUDO_PREFIX=\"sudo -n \"; fi; "
497
+ : '';
498
+ const privilegedPrefix = params.backend === 'launchd-system' ? '${SUDO_PREFIX}' : '';
499
+ if (params.action === 'uninstall') {
500
+ return `${sudoSetup}${privilegedPrefix}launchctl unload -w ${quoteRemoteShellArg(resolveLaunchdPlistPath(params.serviceName, params.backend === 'launchd-system'))} 2>/dev/null || true; ${privilegedPrefix}launchctl remove ${quoteRemoteShellArg(params.serviceName)} 2>/dev/null || true`;
236
501
  }
237
- if (params.action === 'restart') {
238
- const plistPath = resolveLaunchdPlistPath(params.serviceName, params.backend === 'launchd-system');
239
- return `launchctl unload -w ${quoteRemoteShellArg(plistPath)} 2>/dev/null || true; launchctl load -w ${quoteRemoteShellArg(plistPath)}`;
502
+ if (params.action === 'stop') {
503
+ return `${sudoSetup}${privilegedPrefix}launchctl unload -w ${quoteRemoteShellArg(resolveLaunchdPlistPath(params.serviceName, params.backend === 'launchd-system'))}`;
240
504
  }
241
- return `launchctl load -w ${quoteRemoteShellArg(resolveLaunchdPlistPath(params.serviceName, params.backend === 'launchd-system'))}`;
505
+ const plistPath = resolveLaunchdPlistPath(params.serviceName, params.backend === 'launchd-system');
506
+ const launchdDomain = params.backend === 'launchd-system' ? 'system' : 'gui/$(id -u)';
507
+ const serviceDomain = `${launchdDomain}/${params.serviceName}`;
508
+ return `${sudoSetup}${privilegedPrefix}launchctl bootout -w ${quoteRemoteShellArg(plistPath)} 2>/dev/null || true; ${privilegedPrefix}launchctl bootstrap ${launchdDomain} ${quoteRemoteShellArg(plistPath)}; ${privilegedPrefix}launchctl enable ${quoteRemoteShellArg(serviceDomain)}; ${privilegedPrefix}launchctl kickstart -k ${quoteRemoteShellArg(serviceDomain)}`;
242
509
  }
243
510
  throw new Error(`Unsupported remote backend: ${params.backend}`);
244
511
  }
@@ -262,95 +529,30 @@ function resolveRemoteServiceDefinitionPath(params) {
262
529
  }
263
530
  throw new Error(`Unsupported backend: ${params.backend}`);
264
531
  }
265
- function resolveRemoteServiceDefinitionContents(params) {
266
- const env = {
267
- ...(params.spec.env ?? {}),
268
- ...(params.defaultPathEnv ? { PATH: params.defaultPathEnv } : {}),
269
- };
270
- if (params.backend === 'systemd-user' || params.backend === 'systemd-system') {
271
- const wantedBy = params.backend === 'systemd-system' ? 'multi-user.target' : 'default.target';
272
- return renderSystemdServiceUnit({
273
- description: params.spec.description ?? params.spec.label,
274
- execStart: params.spec.programArgs,
275
- workingDirectory: params.spec.workingDirectory,
276
- env,
277
- restart: 'always',
278
- runAsUser: params.spec.runAsUser,
279
- stdoutPath: params.spec.stdoutPath,
280
- stderrPath: params.spec.stderrPath,
281
- wantedBy,
282
- });
283
- }
284
- if (params.backend === 'launchd-user' || params.backend === 'launchd-system') {
285
- const stdoutPath = params.spec.stdoutPath
286
- ? params.spec.stdoutPath
287
- : params.backend === 'launchd-system'
288
- ? `/var/log/${params.spec.label}.out.log`
289
- : `${params.remoteHomeDir}/.happier/logs/${params.spec.label}.out.log`;
290
- const stderrPath = params.spec.stderrPath
291
- ? params.spec.stderrPath
292
- : params.backend === 'launchd-system'
293
- ? `/var/log/${params.spec.label}.err.log`
294
- : `${params.remoteHomeDir}/.happier/logs/${params.spec.label}.err.log`;
295
- return buildLaunchdPlistXml({
296
- label: params.spec.label,
297
- programArgs: [...params.spec.programArgs],
298
- env,
299
- stdoutPath,
300
- stderrPath,
301
- workingDirectory: params.spec.workingDirectory,
302
- keepAliveOnFailure: true,
303
- });
304
- }
305
- throw new Error(`Unsupported backend: ${params.backend}`);
306
- }
307
- async function resolveRemotePathEnv(deps, params) {
308
- const result = await deps.runRemoteText({
309
- ssh: params.ssh,
310
- knownHostsMode: params.knownHostsMode,
311
- remoteCommand: `printf '%s\\n' \"$PATH\"`,
312
- }).catch(() => ({ status: 1, stdout: '', stderr: '' }));
313
- return result.status === 0 ? String(result.stdout ?? '').trim() : '';
532
+ function buildRemoteRelayRuntimeCleanupCommand(params) {
533
+ const privilegedPrefix = params.useSudo ? '${SUDO_PREFIX}' : '';
534
+ return [
535
+ 'set -eu',
536
+ ...(params.useSudo
537
+ ? [
538
+ "SUDO_PREFIX=''",
539
+ 'if [ "$(id -u)" -ne 0 ]; then SUDO_PREFIX="sudo -n "; fi',
540
+ ]
541
+ : []),
542
+ `${privilegedPrefix}rm -f ${quoteRemoteShellArg(params.definitionPath)}`,
543
+ `${privilegedPrefix}rm -f ${quoteRemoteShellArg(posixPath.join(params.binDir, 'happier-server'))}`,
544
+ `${privilegedPrefix}rm -rf ${quoteRemoteShellArg(params.installRoot)}`,
545
+ `${privilegedPrefix}rm -rf ${quoteRemoteShellArg(params.configDir)}`,
546
+ `${privilegedPrefix}rm -rf ${quoteRemoteShellArg(params.dataDir)}`,
547
+ `${privilegedPrefix}rm -rf ${quoteRemoteShellArg(params.logDir)}`,
548
+ ].join('; ');
314
549
  }
315
- async function installRemoteService(params) {
316
- const stageParent = `${resolveRemoteHomeDirForComponents()}/bootstrap-staging/relay-service-${Date.now()}`;
317
- const staged = await writeRemoteFilesViaScp({
318
- deps: params.deps,
319
- ssh: params.ssh,
320
- knownHostsMode: params.knownHostsMode,
321
- remoteStageParent: stageParent,
322
- files: [
323
- { relativePath: 'service-definition', contents: params.definitionContents },
324
- ],
325
- });
326
- const remoteDefinitionPath = params.definitionPath;
327
- const remoteStagedDefinitionPath = `${staged.remoteRoot}/service-definition`;
328
- const installCommands = [];
329
- installCommands.push('set -eu');
330
- installCommands.push(`mkdir -p ${quoteRemoteShellArg(dirname(remoteDefinitionPath))}`);
331
- installCommands.push(`cp ${quoteRemoteShellArg(remoteStagedDefinitionPath)} ${quoteRemoteShellArg(remoteDefinitionPath)}`);
332
- if (params.backend === 'systemd-user' || params.backend === 'systemd-system') {
333
- const prefix = params.backend === 'systemd-user' ? '--user ' : '';
334
- installCommands.push(`systemctl ${prefix}daemon-reload`);
335
- installCommands.push(`systemctl ${prefix}enable --now ${quoteRemoteShellArg(`${params.serviceName}.service`)}`);
336
- }
337
- else if (params.backend === 'launchd-user' || params.backend === 'launchd-system') {
338
- const plist = quoteRemoteShellArg(remoteDefinitionPath);
339
- installCommands.push(`launchctl unload -w ${plist} 2>/dev/null || true`);
340
- installCommands.push(`launchctl load -w ${plist}`);
341
- }
342
- else {
343
- throw new Error(`Unsupported remote backend: ${params.backend}`);
344
- }
345
- installCommands.push(staged.cleanupRemoteCommand);
346
- const result = await params.deps.runRemoteText({
347
- ssh: params.ssh,
348
- knownHostsMode: params.knownHostsMode,
349
- remoteCommand: installCommands.join('; '),
350
- });
351
- if (result.status !== 0) {
352
- throw new Error(result.stderr.trim() || 'Failed to install relay service');
550
+ function mapRelayRuntimeServiceControlError(params) {
551
+ const stderr = String(params.stderr ?? '').trim();
552
+ if (params.backend === 'systemd-user' && /failed to connect to bus/i.test(stderr)) {
553
+ return new Error('Systemd user service is unavailable. Ensure the host has a user systemd session (e.g. enable lingering) or use system mode.');
353
554
  }
555
+ return new Error(stderr || params.fallbackMessage);
354
556
  }
355
557
  export function createRelayHostEngine(deps) {
356
558
  const now = deps.now ?? (() => Date.now());
@@ -358,6 +560,7 @@ export function createRelayHostEngine(deps) {
358
560
  const res = spawnSync(cmd, [...args], {
359
561
  encoding: 'utf8',
360
562
  stdio: ['ignore', 'pipe', 'pipe'],
563
+ env: buildServiceCommandEnv({ cmd, args, env: process.env }),
361
564
  });
362
565
  return {
363
566
  status: typeof res.status === 'number' ? res.status : 1,
@@ -365,6 +568,346 @@ export function createRelayHostEngine(deps) {
365
568
  stderr: `${String(res.stderr ?? '')}${res.error instanceof Error ? `\n${res.error.message}` : ''}`.trim(),
366
569
  };
367
570
  };
571
+ const resolveSystemdUnitExists = (params) => {
572
+ if (params.backend !== 'systemd-user' && params.backend !== 'systemd-system') {
573
+ return false;
574
+ }
575
+ const prefix = params.backend === 'systemd-user' ? ['--user'] : [];
576
+ const result = runLocalText('systemctl', [...prefix, 'show', `${params.unitName}.service`, '--property=LoadState']);
577
+ if (result.status !== 0) {
578
+ return false;
579
+ }
580
+ const loadState = parseSystemctlShowOutput(result.stdout).loadState.trim().toLowerCase();
581
+ return Boolean(loadState && loadState !== 'not-found');
582
+ };
583
+ const resolveLocalSystemdUnitOwnedByInstallRoot = async (params) => {
584
+ const unitPath = resolveSystemdUnitDefinitionPath({
585
+ backend: params.backend,
586
+ unitName: params.unitName,
587
+ homeDir: homedir(),
588
+ });
589
+ const unitText = existsSync(unitPath) ? await readFile(unitPath, 'utf8').catch(() => '') : '';
590
+ const workingDir = parseSystemdUnitWorkingDirectory(unitText);
591
+ const workingDirKey = normalizeComparablePathKey(workingDir);
592
+ const installRootKey = normalizeComparablePathKey(params.installRoot);
593
+ return Boolean(workingDirKey && installRootKey && workingDirKey === installRootKey);
594
+ };
595
+ const resolveLocalLaunchdPlistOwnedByInstallRoot = async (params) => {
596
+ const plistPath = resolveLaunchdPlistDefinitionPath({
597
+ backend: params.backend,
598
+ label: params.label,
599
+ homeDir: homedir(),
600
+ });
601
+ const plistText = existsSync(plistPath) ? await readFile(plistPath, 'utf8').catch(() => '') : '';
602
+ const workingDir = parseLaunchdPlistWorkingDirectory(plistText);
603
+ const workingDirKey = normalizeComparablePathKey(workingDir);
604
+ const installRootKey = normalizeComparablePathKey(params.installRoot);
605
+ return Boolean(workingDirKey && installRootKey && workingDirKey === installRootKey);
606
+ };
607
+ const resolveLocalSystemdUnitState = (params) => {
608
+ const prefix = params.backend === 'systemd-user' ? ['--user'] : [];
609
+ const result = runLocalText('systemctl', [
610
+ ...prefix,
611
+ 'show',
612
+ `${params.unitName}.service`,
613
+ '--property=UnitFileState,ActiveState,SubState,LoadState',
614
+ ]);
615
+ if (result.status !== 0) {
616
+ return { loadState: 'not-found', activeState: '', enabledState: '' };
617
+ }
618
+ const parsed = parseSystemctlShowOutput(result.stdout);
619
+ return {
620
+ loadState: parsed.loadState.trim().toLowerCase() || 'not-found',
621
+ activeState: parsed.activeState.trim().toLowerCase(),
622
+ enabledState: parsed.unitFileState.trim().toLowerCase(),
623
+ };
624
+ };
625
+ const resolveLocalLaunchdServiceState = (params) => {
626
+ const result = runLocalText('launchctl', ['list', params.label]);
627
+ return result.status === 0
628
+ ? { loadState: 'loaded', activeState: 'active', enabledState: 'enabled' }
629
+ : { loadState: 'not-found', activeState: '', enabledState: '' };
630
+ };
631
+ const resolveLocalWindowsScheduledTaskState = (params) => {
632
+ const result = runLocalText('schtasks', ['/Query', '/TN', `Happier\\${params.label}`, '/FO', 'LIST', '/V']);
633
+ const powerShellStatus = runLocalText('powershell.exe', [
634
+ '-NoProfile',
635
+ '-Command',
636
+ buildReadWindowsScheduledTaskStatusPowerShellCommand({
637
+ taskName: params.label,
638
+ }),
639
+ ]);
640
+ const parsedPowerShellStatus = powerShellStatus.status === 0
641
+ ? parseWindowsScheduledTaskStatusPowerShellJson(powerShellStatus.stdout)
642
+ : null;
643
+ if (parsedPowerShellStatus) {
644
+ return parsedPowerShellStatus.exists
645
+ ? {
646
+ loadState: 'loaded',
647
+ activeState: parsedPowerShellStatus.active ? 'active' : 'inactive',
648
+ enabledState: parsedPowerShellStatus.enabled ? 'enabled' : 'disabled',
649
+ }
650
+ : { loadState: 'not-found', activeState: '', enabledState: '' };
651
+ }
652
+ if (result.status !== 0) {
653
+ return { loadState: 'not-found', activeState: '', enabledState: '' };
654
+ }
655
+ const output = `${result.stdout}\n${result.stderr}`;
656
+ return {
657
+ loadState: 'loaded',
658
+ activeState: /Status:\s*Running/i.test(output) ? 'active' : 'inactive',
659
+ enabledState: /Scheduled Task State:\s*Enabled/i.test(output) ? 'enabled' : 'disabled',
660
+ };
661
+ };
662
+ const resolveLocalServiceOwnedByInstallRoot = async (params) => {
663
+ if (params.backend === 'systemd-user' || params.backend === 'systemd-system') {
664
+ return resolveLocalSystemdUnitOwnedByInstallRoot({
665
+ backend: params.backend,
666
+ unitName: params.label,
667
+ installRoot: params.installRoot,
668
+ });
669
+ }
670
+ if (params.backend === 'launchd-user' || params.backend === 'launchd-system') {
671
+ return resolveLocalLaunchdPlistOwnedByInstallRoot({
672
+ backend: params.backend,
673
+ label: params.label,
674
+ installRoot: params.installRoot,
675
+ });
676
+ }
677
+ if (params.backend === 'schtasks-user' || params.backend === 'schtasks-system') {
678
+ const definitionPath = resolveWindowsWrapperDefinitionPath({
679
+ backend: params.backend,
680
+ label: params.label,
681
+ homeDir: homedir(),
682
+ });
683
+ const definitionText = existsSync(definitionPath) ? await readFile(definitionPath, 'utf8').catch(() => '') : '';
684
+ const workingDir = parseWindowsWrapperWorkingDirectory(definitionText);
685
+ const workingDirKey = normalizeComparablePathKey(workingDir);
686
+ const installRootKey = normalizeComparablePathKey(params.installRoot);
687
+ return Boolean(workingDirKey && installRootKey && workingDirKey === installRootKey);
688
+ }
689
+ return false;
690
+ };
691
+ const resolveLocalEffectiveServiceName = async (params) => {
692
+ if (params.channel === 'stable') {
693
+ return params.defaults.serviceName;
694
+ }
695
+ if (params.backend !== 'systemd-user'
696
+ && params.backend !== 'systemd-system'
697
+ && params.backend !== 'launchd-user'
698
+ && params.backend !== 'launchd-system'
699
+ && params.backend !== 'schtasks-user'
700
+ && params.backend !== 'schtasks-system') {
701
+ return params.defaults.serviceName;
702
+ }
703
+ const legacyUnitName = 'happier-server';
704
+ const legacyOwnedByInstallRoot = await resolveLocalServiceOwnedByInstallRoot({
705
+ backend: params.backend,
706
+ label: legacyUnitName,
707
+ installRoot: params.defaults.installRoot,
708
+ }).catch(() => false);
709
+ if (!legacyOwnedByInstallRoot) {
710
+ return params.defaults.serviceName;
711
+ }
712
+ const readState = (label) => {
713
+ if (params.backend === 'systemd-user' || params.backend === 'systemd-system') {
714
+ return resolveLocalSystemdUnitState({
715
+ backend: params.backend,
716
+ unitName: label,
717
+ });
718
+ }
719
+ if (params.backend === 'launchd-user' || params.backend === 'launchd-system') {
720
+ return resolveLocalLaunchdServiceState({
721
+ backend: params.backend,
722
+ label,
723
+ });
724
+ }
725
+ return resolveLocalWindowsScheduledTaskState({ label });
726
+ };
727
+ const canonicalState = readState(params.defaults.serviceName);
728
+ if (canonicalState.loadState === 'not-found') {
729
+ return legacyUnitName;
730
+ }
731
+ const canonicalOwnedByInstallRoot = await resolveLocalServiceOwnedByInstallRoot({
732
+ backend: params.backend,
733
+ label: params.defaults.serviceName,
734
+ installRoot: params.defaults.installRoot,
735
+ }).catch(() => false);
736
+ if (!canonicalOwnedByInstallRoot) {
737
+ return legacyUnitName;
738
+ }
739
+ const legacyState = readState(legacyUnitName);
740
+ const canonicalActive = canonicalState.activeState === 'active';
741
+ const legacyActive = legacyState.activeState === 'active';
742
+ if (canonicalActive !== legacyActive) {
743
+ return legacyActive ? legacyUnitName : params.defaults.serviceName;
744
+ }
745
+ return params.defaults.serviceName;
746
+ };
747
+ const materializeRemoteHomeDir = (remoteHomeDir, value) => {
748
+ const raw = String(value ?? '');
749
+ if (!raw)
750
+ return raw;
751
+ if (remoteHomeDir.startsWith('/') && raw.includes('$HOME')) {
752
+ return raw.replaceAll('$HOME', remoteHomeDir);
753
+ }
754
+ return raw;
755
+ };
756
+ const resolveRemoteSystemdUnitState = async (params) => {
757
+ const svc = `${params.unitName}.service`;
758
+ const remoteCommand = params.backend === 'systemd-user'
759
+ ? wrapRemoteSystemdUserCommand(`systemctl --user show ${quoteRemoteShellArg(svc)} --property=LoadState,ActiveState`)
760
+ : `systemctl show ${quoteRemoteShellArg(svc)} --property=LoadState,ActiveState`;
761
+ const result = await deps.runRemoteText({
762
+ ssh: params.ssh,
763
+ knownHostsMode: params.knownHostsMode,
764
+ remoteCommand,
765
+ }).catch(() => ({ status: 1, stdout: '', stderr: '' }));
766
+ if (result.status !== 0)
767
+ return { loadState: 'not-found', activeState: '' };
768
+ const parsed = parseSystemctlShowOutput(String(result.stdout ?? ''));
769
+ const loadState = parsed.loadState.trim().toLowerCase();
770
+ const activeState = parsed.activeState.trim().toLowerCase();
771
+ return { loadState: loadState || 'not-found', activeState };
772
+ };
773
+ const resolveRemoteSystemdUnitLoadState = async (params) => {
774
+ return (await resolveRemoteSystemdUnitState(params)).loadState;
775
+ };
776
+ const resolveRemoteSystemdUnitOwnedByInstallRoot = async (params) => {
777
+ const unitPath = resolveRemoteServiceDefinitionPath({
778
+ backend: params.backend,
779
+ label: params.unitName,
780
+ remoteHomeDir: params.remoteHomeDir,
781
+ });
782
+ const privilegedPrefix = params.backend === 'systemd-system' ? 'sudo -n ' : '';
783
+ const unitText = await deps.runRemoteText({
784
+ ssh: params.ssh,
785
+ knownHostsMode: params.knownHostsMode,
786
+ remoteCommand: buildRemoteReadTextFileCommand({ path: unitPath, privilegedPrefix }),
787
+ }).then((result) => String(result.stdout ?? '')).catch(() => '');
788
+ const workingDir = parseSystemdUnitWorkingDirectory(unitText);
789
+ const workingDirKey = normalizeComparablePathKey(materializeRemoteHomeDir(params.remoteHomeDir, String(workingDir ?? '')));
790
+ const installRootKey = normalizeComparablePathKey(materializeRemoteHomeDir(params.remoteHomeDir, params.installRoot));
791
+ return Boolean(workingDirKey && installRootKey && workingDirKey === installRootKey);
792
+ };
793
+ const resolveRemoteLaunchdServiceState = async (params) => {
794
+ const sudoSetup = params.backend === 'launchd-system'
795
+ ? "SUDO_PREFIX=''; if [ \"$(id -u)\" -ne 0 ]; then SUDO_PREFIX=\"sudo -n \"; fi; "
796
+ : '';
797
+ const privilegedPrefix = params.backend === 'launchd-system' ? '${SUDO_PREFIX}' : '';
798
+ const result = await deps.runRemoteText({
799
+ ssh: params.ssh,
800
+ knownHostsMode: params.knownHostsMode,
801
+ remoteCommand: `${sudoSetup}${privilegedPrefix}launchctl list ${quoteRemoteShellArg(params.label)}`,
802
+ }).catch(() => ({ status: 1, stdout: '', stderr: '' }));
803
+ return result.status === 0
804
+ ? { loadState: 'loaded', activeState: 'active' }
805
+ : { loadState: 'not-found', activeState: '' };
806
+ };
807
+ const resolveRemoteLaunchdPlistOwnedByInstallRoot = async (params) => {
808
+ const plistPath = resolveRemoteServiceDefinitionPath({
809
+ backend: params.backend,
810
+ label: params.label,
811
+ remoteHomeDir: params.remoteHomeDir,
812
+ });
813
+ const privilegedPrefix = params.backend === 'launchd-system' ? 'sudo -n ' : '';
814
+ const plistText = await deps.runRemoteText({
815
+ ssh: params.ssh,
816
+ knownHostsMode: params.knownHostsMode,
817
+ remoteCommand: buildRemoteReadTextFileCommand({ path: plistPath, privilegedPrefix }),
818
+ }).then((result) => String(result.stdout ?? '')).catch(() => '');
819
+ const workingDir = parseLaunchdPlistWorkingDirectory(plistText);
820
+ const workingDirKey = normalizeComparablePathKey(materializeRemoteHomeDir(params.remoteHomeDir, String(workingDir ?? '')));
821
+ const installRootKey = normalizeComparablePathKey(materializeRemoteHomeDir(params.remoteHomeDir, params.installRoot));
822
+ return Boolean(workingDirKey && installRootKey && workingDirKey === installRootKey);
823
+ };
824
+ const resolveRemoteEffectiveServiceName = async (params) => {
825
+ if (params.backend !== 'systemd-user'
826
+ && params.backend !== 'systemd-system'
827
+ && params.backend !== 'launchd-user'
828
+ && params.backend !== 'launchd-system') {
829
+ return params.defaults.serviceName;
830
+ }
831
+ if (params.channel === 'stable') {
832
+ return params.defaults.serviceName;
833
+ }
834
+ const legacyUnitName = 'happier-server';
835
+ const legacyOwnedByInstallRoot = params.backend === 'systemd-user' || params.backend === 'systemd-system'
836
+ ? await resolveRemoteSystemdUnitOwnedByInstallRoot({
837
+ ssh: params.ssh,
838
+ knownHostsMode: params.knownHostsMode,
839
+ backend: params.backend,
840
+ unitName: legacyUnitName,
841
+ remoteHomeDir: params.remoteHomeDir,
842
+ installRoot: params.defaults.installRoot,
843
+ }).catch(() => false)
844
+ : await resolveRemoteLaunchdPlistOwnedByInstallRoot({
845
+ ssh: params.ssh,
846
+ knownHostsMode: params.knownHostsMode,
847
+ backend: params.backend,
848
+ label: legacyUnitName,
849
+ remoteHomeDir: params.remoteHomeDir,
850
+ installRoot: params.defaults.installRoot,
851
+ }).catch(() => false);
852
+ if (!legacyOwnedByInstallRoot) {
853
+ return params.defaults.serviceName;
854
+ }
855
+ const canonicalState = params.backend === 'systemd-user' || params.backend === 'systemd-system'
856
+ ? await resolveRemoteSystemdUnitState({
857
+ ssh: params.ssh,
858
+ knownHostsMode: params.knownHostsMode,
859
+ backend: params.backend,
860
+ unitName: params.defaults.serviceName,
861
+ }).catch(() => ({ loadState: 'not-found', activeState: '' }))
862
+ : await resolveRemoteLaunchdServiceState({
863
+ ssh: params.ssh,
864
+ knownHostsMode: params.knownHostsMode,
865
+ backend: params.backend,
866
+ label: params.defaults.serviceName,
867
+ }).catch(() => ({ loadState: 'not-found', activeState: '' }));
868
+ if (canonicalState.loadState === 'not-found') {
869
+ return legacyUnitName;
870
+ }
871
+ const canonicalOwnedByInstallRoot = params.backend === 'systemd-user' || params.backend === 'systemd-system'
872
+ ? await resolveRemoteSystemdUnitOwnedByInstallRoot({
873
+ ssh: params.ssh,
874
+ knownHostsMode: params.knownHostsMode,
875
+ backend: params.backend,
876
+ unitName: params.defaults.serviceName,
877
+ remoteHomeDir: params.remoteHomeDir,
878
+ installRoot: params.defaults.installRoot,
879
+ }).catch(() => false)
880
+ : await resolveRemoteLaunchdPlistOwnedByInstallRoot({
881
+ ssh: params.ssh,
882
+ knownHostsMode: params.knownHostsMode,
883
+ backend: params.backend,
884
+ label: params.defaults.serviceName,
885
+ remoteHomeDir: params.remoteHomeDir,
886
+ installRoot: params.defaults.installRoot,
887
+ }).catch(() => false);
888
+ if (!canonicalOwnedByInstallRoot) {
889
+ return legacyUnitName;
890
+ }
891
+ const legacyState = params.backend === 'systemd-user' || params.backend === 'systemd-system'
892
+ ? await resolveRemoteSystemdUnitState({
893
+ ssh: params.ssh,
894
+ knownHostsMode: params.knownHostsMode,
895
+ backend: params.backend,
896
+ unitName: legacyUnitName,
897
+ }).catch(() => ({ loadState: 'not-found', activeState: '' }))
898
+ : await resolveRemoteLaunchdServiceState({
899
+ ssh: params.ssh,
900
+ knownHostsMode: params.knownHostsMode,
901
+ backend: params.backend,
902
+ label: legacyUnitName,
903
+ }).catch(() => ({ loadState: 'not-found', activeState: '' }));
904
+ const canonicalActive = canonicalState.activeState === 'active';
905
+ const legacyActive = legacyState.activeState === 'active';
906
+ if (canonicalActive !== legacyActive) {
907
+ return legacyActive ? legacyUnitName : params.defaults.serviceName;
908
+ }
909
+ return params.defaults.serviceName;
910
+ };
368
911
  async function readLocalStatus(parsed) {
369
912
  const mode = normalizeMode(parsed.mode);
370
913
  const channel = normalizeChannel(parsed.channel);
@@ -384,48 +927,275 @@ export function createRelayHostEngine(deps) {
384
927
  platform: process.platform,
385
928
  mode,
386
929
  });
387
- const service = (() => {
930
+ const effectiveServiceName = await resolveLocalEffectiveServiceName({
931
+ backend,
932
+ channel,
933
+ defaults,
934
+ });
935
+ const service = await (async () => {
388
936
  if (backend === 'systemd-user' || backend === 'systemd-system') {
389
- const prefix = backend === 'systemd-user' ? ['--user'] : [];
390
- const result = runLocalText('systemctl', [...prefix, 'show', `${defaults.serviceName}.service`, '--property=UnitFileState,ActiveState,SubState', '--value']);
391
- if (result.status !== 0) {
937
+ const snapshot = resolveLocalSystemdUnitState({
938
+ backend,
939
+ unitName: effectiveServiceName,
940
+ });
941
+ if (snapshot.loadState === 'not-found')
392
942
  return { enabled: null, active: null };
393
- }
394
- const [unitFileState = '', activeState = ''] = String(result.stdout ?? '').split(/\r?\n/u);
395
943
  return {
396
- enabled: unitFileState.trim().toLowerCase() === 'enabled',
397
- active: activeState.trim().toLowerCase() === 'active',
944
+ enabled: snapshot.enabledState === 'enabled',
945
+ active: snapshot.activeState === 'active',
398
946
  };
399
947
  }
400
948
  if (backend === 'launchd-user' || backend === 'launchd-system') {
401
- const result = runLocalText('launchctl', ['list', defaults.serviceName]);
402
- if (result.status !== 0) {
949
+ const snapshot = resolveLocalLaunchdServiceState({
950
+ backend,
951
+ label: effectiveServiceName,
952
+ });
953
+ if (snapshot.loadState === 'not-found') {
403
954
  return { enabled: null, active: null };
404
955
  }
405
956
  return { enabled: true, active: true };
406
957
  }
407
- const result = runLocalText('schtasks', ['/Query', '/TN', `Happier\\${defaults.serviceName}`, '/FO', 'LIST', '/V']);
408
- if (result.status !== 0) {
958
+ const snapshot = resolveLocalWindowsScheduledTaskState({
959
+ label: effectiveServiceName,
960
+ });
961
+ if (snapshot.loadState === 'not-found') {
409
962
  return { enabled: null, active: null };
410
963
  }
411
- const output = `${result.stdout}\n${result.stderr}`;
412
964
  return {
413
- enabled: /Scheduled Task State:\s*Enabled/i.test(output),
414
- active: /Status:\s*Running/i.test(output),
965
+ enabled: snapshot.enabledState === 'enabled',
966
+ active: snapshot.activeState === 'active',
415
967
  };
416
968
  })();
417
969
  const installed = Boolean(version) || existsSync(installBinaryPath);
970
+ const envPath = join(defaults.configDir, 'server.env');
971
+ const envText = existsSync(envPath) ? await readFile(envPath, 'utf8').catch(() => '') : '';
972
+ const baseUrl = resolveConfiguredSelfHostBaseUrl({
973
+ fallbackBaseUrl: `http://${defaults.serverHost}:${defaults.serverPort}`,
974
+ envText,
975
+ });
976
+ const healthy = service.active === true
977
+ ? await resolveLocalRelayHealth({
978
+ baseUrl,
979
+ healthPath: defaults.healthPath,
980
+ timeoutMs: 1_500,
981
+ }).catch(() => false)
982
+ : service.active === null
983
+ ? null
984
+ : false;
985
+ const strandedLegacyState = await detectLocalRelayStrandedLegacyState({
986
+ backend,
987
+ channel,
988
+ defaults,
989
+ currentBaseUrl: baseUrl,
990
+ });
418
991
  return {
419
992
  installed,
420
993
  version,
421
994
  service,
422
- baseUrl: `http://${defaults.serverHost}:${defaults.serverPort}`,
423
- healthy: service.active === true,
995
+ baseUrl,
996
+ healthy,
997
+ ...(strandedLegacyState ? {
998
+ warnings: [renderLocalRelayStrandedLegacyStateMessage({
999
+ channel,
1000
+ legacyInstallRoot: strandedLegacyState.legacyInstallRoot,
1001
+ currentInstallRoot: strandedLegacyState.currentInstallRoot,
1002
+ })],
1003
+ } : {}),
424
1004
  };
425
1005
  }
426
1006
  async function installLocal(parsed) {
427
1007
  const mode = normalizeMode(parsed.mode);
428
1008
  const channel = normalizeChannel(parsed.channel);
1009
+ const defaults = resolveRelayRuntimeDefaults({
1010
+ platform: process.platform,
1011
+ mode,
1012
+ channel,
1013
+ homeDir: homedir(),
1014
+ });
1015
+ const backend = resolveServiceBackend({ platform: process.platform, mode });
1016
+ const desiredRelayUrl = await resolveLocalDesiredRelayUrl({
1017
+ mode,
1018
+ channel,
1019
+ envOverrides: parsed.env,
1020
+ });
1021
+ // Surface port reassignment so users aren't surprised that dev landed on
1022
+ // an ephemeral port instead of the default 3005. The reassignment happens
1023
+ // transparently in resolveLocalDesiredRelayUrl when another channel
1024
+ // already owns the default port. Writes to stderr so it doesn't pollute
1025
+ // the JSON output envelope.
1026
+ try {
1027
+ const desiredPort = Number.parseInt(new URL(desiredRelayUrl).port, 10);
1028
+ if (Number.isInteger(desiredPort) && desiredPort !== defaults.serverPort) {
1029
+ const configuredEnvPath = join(defaults.configDir, 'server.env');
1030
+ const hadExistingEnv = existsSync(configuredEnvPath);
1031
+ const hadPortOverride = Boolean(String((parsed.env ?? {}).PORT ?? '').trim());
1032
+ if (!hadExistingEnv && !hadPortOverride) {
1033
+ process.stderr.write(`[relay-host] Port ${defaults.serverPort} is already used by another channel's relay; `
1034
+ + `installing ${formatRelayChannelLabel(channel)} on port ${desiredPort} (data is independent per channel).\n`);
1035
+ }
1036
+ }
1037
+ }
1038
+ catch {
1039
+ // Best-effort notice; don't block install on URL parsing.
1040
+ }
1041
+ const shouldTreatStableLaneAsLegacyUnsuffixedInstall = await (async () => {
1042
+ return await shouldMigrateLegacyUnsuffixedRelayRuntimeInstallRoot({
1043
+ platform: process.platform,
1044
+ mode,
1045
+ channel,
1046
+ homeDir: homedir(),
1047
+ });
1048
+ })();
1049
+ const ignoreStableLaneConflict = await (async () => {
1050
+ if (channel === 'stable')
1051
+ return false;
1052
+ const legacyUnitName = 'happier-server';
1053
+ const legacyDefinitionPath = backend === 'systemd-user' || backend === 'systemd-system'
1054
+ ? resolveSystemdUnitDefinitionPath({ backend, unitName: legacyUnitName, homeDir: homedir() })
1055
+ : backend === 'launchd-user' || backend === 'launchd-system'
1056
+ ? resolveLaunchdPlistDefinitionPath({ backend, label: legacyUnitName, homeDir: homedir() })
1057
+ : backend === 'schtasks-user' || backend === 'schtasks-system'
1058
+ ? resolveWindowsWrapperDefinitionPath({ backend, label: legacyUnitName, homeDir: homedir() })
1059
+ : '';
1060
+ if (!legacyDefinitionPath)
1061
+ return false;
1062
+ const legacyText = existsSync(legacyDefinitionPath) ? await readFile(legacyDefinitionPath, 'utf8').catch(() => '') : '';
1063
+ if (!legacyText.trim())
1064
+ return false;
1065
+ const legacyWorkingDir = parseServiceDefinitionWorkingDirectory({ backend, definitionText: legacyText });
1066
+ const legacyKey = normalizeComparablePathKey(legacyWorkingDir);
1067
+ const installRootKey = normalizeComparablePathKey(defaults.installRoot);
1068
+ return Boolean(legacyKey && installRootKey && legacyKey === installRootKey);
1069
+ })();
1070
+ let legacyInstallRootToMigrate;
1071
+ await (async () => {
1072
+ if (channel === 'stable')
1073
+ return;
1074
+ if (backend !== 'systemd-user' && backend !== 'systemd-system')
1075
+ return;
1076
+ const legacyUnitName = 'happier-server';
1077
+ const legacyDefinitionPath = resolveSystemdUnitDefinitionPath({
1078
+ backend,
1079
+ unitName: legacyUnitName,
1080
+ homeDir: homedir(),
1081
+ });
1082
+ if (!existsSync(legacyDefinitionPath))
1083
+ return;
1084
+ const legacyText = await readFile(legacyDefinitionPath, 'utf8').catch(() => '');
1085
+ if (!legacyText.trim())
1086
+ return;
1087
+ const legacyWorkingDir = parseServiceDefinitionWorkingDirectory({ backend, definitionText: legacyText });
1088
+ const legacyKey = normalizeComparablePathKey(legacyWorkingDir);
1089
+ const installRootKey = normalizeComparablePathKey(defaults.installRoot);
1090
+ if (legacyKey && installRootKey && legacyKey === installRootKey)
1091
+ return;
1092
+ const prefix = backend === 'systemd-user' ? ['--user'] : [];
1093
+ const legacyShow = runLocalText('systemctl', [
1094
+ ...prefix,
1095
+ 'show',
1096
+ `${legacyUnitName}.service`,
1097
+ '--property=ActiveState,SubState,LoadState',
1098
+ ]);
1099
+ const legacyState = legacyShow.status === 0
1100
+ ? parseSystemctlShowOutput(legacyShow.stdout)
1101
+ : null;
1102
+ const legacyLoaded = legacyState?.loadState.trim().toLowerCase() === 'loaded';
1103
+ const legacyActive = legacyState?.activeState.trim().toLowerCase() === 'active';
1104
+ if (!legacyLoaded || !legacyActive)
1105
+ return;
1106
+ const legacyBaseUrl = resolveServiceDefinitionBaseUrl({
1107
+ backend,
1108
+ definitionText: legacyText,
1109
+ fallbackBaseUrl: `http://${defaults.serverHost}:${defaults.serverPort}`,
1110
+ });
1111
+ if (legacyBaseUrl !== desiredRelayUrl)
1112
+ return;
1113
+ if (!legacyWorkingDir) {
1114
+ throw new Error(`An active legacy happier-server.service is already using ${desiredRelayUrl} from an unknown root. `
1115
+ + `Stop or uninstall that legacy service before installing the ${formatRelayChannelLabel(channel)} relay.`);
1116
+ }
1117
+ legacyInstallRootToMigrate = legacyWorkingDir;
1118
+ })();
1119
+ await (async () => {
1120
+ if (channel === 'stable')
1121
+ return;
1122
+ if (legacyInstallRootToMigrate)
1123
+ return;
1124
+ const canonicalDefinitionPath = backend === 'systemd-user' || backend === 'systemd-system'
1125
+ ? resolveSystemdUnitDefinitionPath({ backend, unitName: defaults.serviceName, homeDir: homedir() })
1126
+ : backend === 'launchd-user' || backend === 'launchd-system'
1127
+ ? resolveLaunchdPlistDefinitionPath({ backend, label: defaults.serviceName, homeDir: homedir() })
1128
+ : backend === 'schtasks-user' || backend === 'schtasks-system'
1129
+ ? resolveWindowsWrapperDefinitionPath({ backend, label: defaults.serviceName, homeDir: homedir() })
1130
+ : '';
1131
+ if (!canonicalDefinitionPath || !existsSync(canonicalDefinitionPath))
1132
+ return;
1133
+ const canonicalText = await readFile(canonicalDefinitionPath, 'utf8').catch(() => '');
1134
+ if (!canonicalText.trim())
1135
+ return;
1136
+ const canonicalBaseUrl = resolveServiceDefinitionBaseUrl({
1137
+ backend,
1138
+ definitionText: canonicalText,
1139
+ fallbackBaseUrl: `http://${defaults.serverHost}:${defaults.serverPort}`,
1140
+ });
1141
+ if (canonicalBaseUrl !== desiredRelayUrl)
1142
+ return;
1143
+ const canonicalWorkingDir = parseServiceDefinitionWorkingDirectory({ backend, definitionText: canonicalText });
1144
+ if (!canonicalWorkingDir) {
1145
+ throw new Error(`An installed ${defaults.serviceName} service is already using ${desiredRelayUrl} from an unknown root. `
1146
+ + `Stop or uninstall that service before reinstalling the ${formatRelayChannelLabel(channel)} relay.`);
1147
+ }
1148
+ const canonicalKey = normalizeComparablePathKey(canonicalWorkingDir);
1149
+ const installRootKey = normalizeComparablePathKey(defaults.installRoot);
1150
+ if (canonicalKey && installRootKey && canonicalKey === installRootKey)
1151
+ return;
1152
+ const shouldMigrateCanonicalCustomRoot = await shouldMigrateLegacyUnsuffixedRelayRuntimeInstallRoot({
1153
+ platform: process.platform,
1154
+ mode,
1155
+ channel,
1156
+ homeDir: homedir(),
1157
+ legacyInstallRoot: canonicalWorkingDir,
1158
+ });
1159
+ if (!shouldMigrateCanonicalCustomRoot)
1160
+ return;
1161
+ legacyInstallRootToMigrate = canonicalWorkingDir;
1162
+ })();
1163
+ const strandedLegacyState = await detectLocalRelayStrandedLegacyState({
1164
+ backend,
1165
+ channel,
1166
+ defaults,
1167
+ currentBaseUrl: desiredRelayUrl,
1168
+ });
1169
+ if (strandedLegacyState) {
1170
+ throw new Error(renderLocalRelayStrandedLegacyStateMessage({
1171
+ channel,
1172
+ legacyInstallRoot: strandedLegacyState.legacyInstallRoot,
1173
+ currentInstallRoot: strandedLegacyState.currentInstallRoot,
1174
+ }));
1175
+ }
1176
+ for (const otherChannel of listOtherRelayChannels(channel)) {
1177
+ if (otherChannel === 'stable'
1178
+ && (shouldTreatStableLaneAsLegacyUnsuffixedInstall
1179
+ || ignoreStableLaneConflict
1180
+ || Boolean(legacyInstallRootToMigrate))) {
1181
+ continue;
1182
+ }
1183
+ const otherStatus = await readLocalStatus({
1184
+ ...parsed,
1185
+ channel: formatRelayChannelLabel(otherChannel),
1186
+ });
1187
+ const otherLaneOccupiesDesiredUrl = otherStatus.baseUrl === desiredRelayUrl
1188
+ && (otherStatus.installed
1189
+ || otherStatus.service.active === true
1190
+ || otherStatus.service.enabled === true);
1191
+ if (otherLaneOccupiesDesiredUrl) {
1192
+ throw createRelayLaneConflictError({
1193
+ requestedChannel: channel,
1194
+ conflictingChannel: otherChannel,
1195
+ relayUrl: desiredRelayUrl,
1196
+ });
1197
+ }
1198
+ }
429
1199
  const serverBinaryPath = typeof parsed.selfHostRelayBinaryOverride === 'string'
430
1200
  ? parsed.selfHostRelayBinaryOverride.trim()
431
1201
  : '';
@@ -436,20 +1206,150 @@ export function createRelayHostEngine(deps) {
436
1206
  ? await deps.resolveLocalInstallVersion({ channel, mode, serverBinaryPath })
437
1207
  : null;
438
1208
  const policy = deps.localInstallPolicy ?? {};
1209
+ await (async () => {
1210
+ if (channel === 'stable')
1211
+ return undefined;
1212
+ const legacyUnitName = 'happier-server';
1213
+ const legacyDefinitionPath = backend === 'systemd-user' || backend === 'systemd-system'
1214
+ ? resolveSystemdUnitDefinitionPath({ backend, unitName: legacyUnitName, homeDir: homedir() })
1215
+ : backend === 'launchd-user' || backend === 'launchd-system'
1216
+ ? resolveLaunchdPlistDefinitionPath({ backend, label: legacyUnitName, homeDir: homedir() })
1217
+ : backend === 'schtasks-user' || backend === 'schtasks-system'
1218
+ ? resolveWindowsWrapperDefinitionPath({ backend, label: legacyUnitName, homeDir: homedir() })
1219
+ : '';
1220
+ if (!legacyDefinitionPath)
1221
+ return undefined;
1222
+ if (!existsSync(legacyDefinitionPath))
1223
+ return undefined;
1224
+ const legacyText = await readFile(legacyDefinitionPath, 'utf8').catch(() => '');
1225
+ const legacyWorkingDir = parseServiceDefinitionWorkingDirectory({ backend, definitionText: legacyText });
1226
+ const legacyOwnedByInstallRoot = normalizeComparablePathKey(legacyWorkingDir) !== null
1227
+ && normalizeComparablePathKey(legacyWorkingDir) === normalizeComparablePathKey(defaults.installRoot);
1228
+ if (!legacyOwnedByInstallRoot)
1229
+ return undefined;
1230
+ if (backend === 'systemd-user' || backend === 'systemd-system') {
1231
+ const prefix = backend === 'systemd-user' ? ['--user'] : [];
1232
+ if (policy.runServiceCommands !== false) {
1233
+ runLocalText('systemctl', [...prefix, 'disable', '--now', `${legacyUnitName}.service`]);
1234
+ }
1235
+ await rm(legacyDefinitionPath, { force: true }).catch(() => undefined);
1236
+ if (policy.runServiceCommands !== false) {
1237
+ runLocalText('systemctl', [...prefix, 'daemon-reload']);
1238
+ }
1239
+ return undefined;
1240
+ }
1241
+ if (backend === 'schtasks-user' || backend === 'schtasks-system') {
1242
+ if (policy.runServiceCommands !== false) {
1243
+ runLocalText('schtasks', ['/End', '/TN', `Happier\\${legacyUnitName}`]);
1244
+ runLocalText('schtasks', ['/Delete', '/F', '/TN', `Happier\\${legacyUnitName}`]);
1245
+ }
1246
+ await rm(legacyDefinitionPath, { force: true }).catch(() => undefined);
1247
+ return undefined;
1248
+ }
1249
+ if (policy.runServiceCommands !== false) {
1250
+ runLocalText('launchctl', ['unload', '-w', legacyDefinitionPath]);
1251
+ runLocalText('launchctl', ['remove', legacyUnitName]);
1252
+ }
1253
+ await rm(legacyDefinitionPath, { force: true }).catch(() => undefined);
1254
+ return undefined;
1255
+ })();
1256
+ // Propagate the resolved port (from `desiredRelayUrl`) into the env we
1257
+ // pass to the lower-level installer. Otherwise the installer would call
1258
+ // its own port-resolution helper with no configured port and might pick a
1259
+ // different ephemeral port, causing the advertised URL (desiredRelayUrl)
1260
+ // to disagree with what we actually wrote to the plist/unit file.
1261
+ const resolvedPortFromDesiredUrl = (() => {
1262
+ try {
1263
+ const parsedUrl = new URL(desiredRelayUrl);
1264
+ const value = Number.parseInt(parsedUrl.port, 10);
1265
+ return Number.isInteger(value) && value > 0 && value <= 65_535 ? String(value) : null;
1266
+ }
1267
+ catch {
1268
+ return null;
1269
+ }
1270
+ })();
1271
+ const envForInstaller = {
1272
+ ...(parsed.env ?? {}),
1273
+ ...(resolvedPortFromDesiredUrl && !(parsed.env ?? {}).PORT ? { PORT: resolvedPortFromDesiredUrl } : {}),
1274
+ };
439
1275
  const local = await installOrUpdateRelayRuntimeLocal({
440
1276
  serverBinaryPath,
441
1277
  channel,
442
1278
  mode,
443
- env: parsed.env,
1279
+ env: envForInstaller,
1280
+ legacyInstallRoot: legacyInstallRootToMigrate,
444
1281
  version,
445
1282
  runServiceCommands: policy.runServiceCommands !== false,
446
1283
  skipHealthCheck: policy.skipHealthCheck === true,
447
1284
  });
448
1285
  return {
449
- relayUrl: String(local.baseUrl ?? '').trim() || `http://127.0.0.1:${resolveRelayRuntimeDefaults({ mode, channel, homeDir: homedir() }).serverPort}`,
1286
+ relayUrl: String(local.baseUrl ?? '').trim() || `http://127.0.0.1:${defaults.serverPort}`,
450
1287
  mode,
451
1288
  };
452
1289
  }
1290
+ async function uninstallLocal(parsed) {
1291
+ const mode = normalizeMode(parsed.mode);
1292
+ const channel = normalizeChannel(parsed.channel);
1293
+ const defaults = resolveRelayRuntimeDefaults({
1294
+ platform: process.platform,
1295
+ mode,
1296
+ channel,
1297
+ homeDir: homedir(),
1298
+ });
1299
+ const serverBinaryName = process.platform === 'win32' ? 'happier-server.exe' : 'happier-server';
1300
+ const installServerBinaryPath = join(defaults.installRoot, 'bin', serverBinaryName);
1301
+ const statePath = join(defaults.installRoot, 'self-host-state.json');
1302
+ const stdoutPath = join(defaults.logDir, 'server.out.log');
1303
+ const stderrPath = join(defaults.logDir, 'server.err.log');
1304
+ const backend = resolveServiceBackend({ platform: process.platform, mode });
1305
+ const effectiveServiceName = await resolveLocalEffectiveServiceName({
1306
+ backend,
1307
+ channel,
1308
+ defaults,
1309
+ });
1310
+ const serviceSpec = buildRelayRuntimeServiceSpec({
1311
+ label: effectiveServiceName,
1312
+ installRoot: defaults.installRoot,
1313
+ serverBinaryPath: installServerBinaryPath,
1314
+ env: {},
1315
+ stdoutPath,
1316
+ stderrPath,
1317
+ });
1318
+ const definition = buildServiceDefinition({
1319
+ backend,
1320
+ homeDir: homedir(),
1321
+ spec: serviceSpec,
1322
+ });
1323
+ const plan = planServiceAction({
1324
+ backend,
1325
+ action: 'uninstall',
1326
+ label: serviceSpec.label,
1327
+ definitionPath: definition.path,
1328
+ persistent: true,
1329
+ });
1330
+ await applyServicePlan(plan, {
1331
+ runCommands: true,
1332
+ });
1333
+ const cleanupTargets = [
1334
+ definition.path,
1335
+ statePath,
1336
+ installServerBinaryPath,
1337
+ join(defaults.binDir, serverBinaryName),
1338
+ defaults.installRoot,
1339
+ defaults.configDir,
1340
+ defaults.dataDir,
1341
+ defaults.logDir,
1342
+ ];
1343
+ for (const path of cleanupTargets) {
1344
+ await rm(path, { force: true, recursive: true }).catch(() => undefined);
1345
+ }
1346
+ if (existsSync(defaults.installRoot)) {
1347
+ await rm(defaults.installRoot, { force: true, recursive: true }).catch(() => undefined);
1348
+ }
1349
+ if (existsSync(statePath)) {
1350
+ throw new Error('Failed to remove relay runtime state file.');
1351
+ }
1352
+ }
453
1353
  async function resolveRemoteTarget(ssh, knownHostsMode) {
454
1354
  return await deps.resolveRemoteReleaseTarget({ ssh, knownHostsMode });
455
1355
  }
@@ -460,7 +1360,10 @@ export function createRelayHostEngine(deps) {
460
1360
  const mode = normalizeMode(params.parsed.mode);
461
1361
  const channel = normalizeChannel(params.parsed.channel);
462
1362
  const defaults = resolveRelayDefaultsForRemote({ platform, channel, mode });
1363
+ const remoteHomeDir = await resolveRemoteUserHomeDir(deps, { ssh: params.ssh, knownHostsMode })
1364
+ ?? resolveRemoteHomeDirForRuntime();
463
1365
  const statePath = `${defaults.installRoot}/self-host-state.json`;
1366
+ const envPath = `${defaults.configDir}/server.env`;
464
1367
  const stateResult = await deps.runRemoteText({
465
1368
  ssh: params.ssh,
466
1369
  knownHostsMode,
@@ -469,10 +1372,18 @@ export function createRelayHostEngine(deps) {
469
1372
  const state = tryParseJsonObject(stateResult.stdout);
470
1373
  const version = typeof state?.version === 'string' ? state.version : null;
471
1374
  const backend = resolveServiceBackend({ platform, mode });
1375
+ const serviceName = await resolveRemoteEffectiveServiceName({
1376
+ ssh: params.ssh,
1377
+ knownHostsMode,
1378
+ backend,
1379
+ channel,
1380
+ remoteHomeDir,
1381
+ defaults,
1382
+ });
472
1383
  const serviceResult = await deps.runRemoteText({
473
1384
  ssh: params.ssh,
474
1385
  knownHostsMode,
475
- remoteCommand: buildRemoteServiceStatusCommand({ backend, serviceName: defaults.serviceName }),
1386
+ remoteCommand: buildRemoteServiceStatusCommand({ backend, serviceName }),
476
1387
  }).catch((error) => ({
477
1388
  status: 1,
478
1389
  stdout: '',
@@ -488,153 +1399,211 @@ export function createRelayHostEngine(deps) {
488
1399
  knownHostsMode,
489
1400
  remoteCommand: buildRemoteProbeExistsCommand({ path: installBinaryPath, kind: 'file' }),
490
1401
  }).then((result) => String(result.stdout ?? '').trim() === 'yes').catch(() => false);
1402
+ const privilegedPrefix = backend === 'systemd-system' || backend === 'launchd-system'
1403
+ ? 'sudo -n '
1404
+ : '';
1405
+ const envText = await deps.runRemoteText({
1406
+ ssh: params.ssh,
1407
+ knownHostsMode,
1408
+ remoteCommand: buildRemoteReadTextFileCommand({ path: envPath, privilegedPrefix }),
1409
+ }).then((result) => String(result.stdout ?? '')).catch(() => '');
1410
+ const baseUrl = resolveConfiguredSelfHostBaseUrl({
1411
+ fallbackBaseUrl: `http://${defaults.serverHost}:${defaults.serverPort}`,
1412
+ envText,
1413
+ });
1414
+ const healthy = service.active === true
1415
+ ? await resolveRemoteRelayHealth({
1416
+ deps,
1417
+ ssh: params.ssh,
1418
+ knownHostsMode,
1419
+ relayUrl: baseUrl,
1420
+ healthPath: defaults.healthPath,
1421
+ })
1422
+ : service.active === null
1423
+ ? null
1424
+ : false;
491
1425
  return {
492
1426
  installed: Boolean(version) || binaryExists,
493
1427
  version,
494
1428
  service,
495
- baseUrl: `http://${defaults.serverHost}:${defaults.serverPort}`,
496
- healthy: service.active === true,
1429
+ baseUrl,
1430
+ healthy,
497
1431
  };
498
1432
  }
499
1433
  async function installRemote(params) {
500
1434
  const knownHostsMode = params.ssh.knownHostsPath ? 'app' : 'system';
501
- const target = await resolveRemoteTarget(params.ssh, knownHostsMode);
502
- const platform = resolveRemotePlatform({ target });
503
- const mode = normalizeMode(params.parsed.mode);
504
1435
  const channel = normalizeChannel(params.parsed.channel);
505
- const defaults = resolveRelayDefaultsForRemote({ platform, channel, mode });
506
- const remoteHomeDir = resolveRemoteHomeDirForRuntime();
507
- const remoteComponentHomeDir = resolveRemoteHomeDirForComponents();
1436
+ const mode = normalizeMode(params.parsed.mode);
1437
+ const defaults = resolveRelayRuntimeDefaults({ channel, mode });
1438
+ const requestedRelayUrl = resolveConfiguredSelfHostBaseUrl({
1439
+ fallbackBaseUrl: `http://${defaults.serverHost}:${defaults.serverPort}`,
1440
+ envText: Object.entries(params.parsed.env ?? {})
1441
+ .map(([key, value]) => `${key}=${String(value ?? '')}`)
1442
+ .join('\n'),
1443
+ });
508
1444
  const remoteCli = await deps.installRemoteComponent({
509
1445
  componentId: 'happier-cli',
510
1446
  channel,
511
1447
  ssh: params.ssh,
512
1448
  knownHostsMode,
513
- remoteHomeDir: remoteComponentHomeDir,
1449
+ remoteHomeDir: resolveRemoteHomeDirForComponents(),
514
1450
  });
515
- const remoteServerOverride = typeof params.parsed.selfHostRelayBinaryOverride === 'string'
1451
+ const localServerOverride = typeof params.parsed.selfHostRelayBinaryOverride === 'string'
516
1452
  ? params.parsed.selfHostRelayBinaryOverride.trim()
517
1453
  : '';
518
- const remoteServer = remoteServerOverride
519
- ? { binaryPath: remoteServerOverride, versionId: '' }
520
- : await deps.installRemoteComponent({
1454
+ const uploadedServer = localServerOverride
1455
+ ? await deps.installRemoteComponent({
521
1456
  componentId: 'happier-server',
522
1457
  channel,
523
1458
  ssh: params.ssh,
524
1459
  knownHostsMode,
525
- remoteHomeDir: remoteComponentHomeDir,
526
- installerBinaryPath: remoteCli.binaryPath,
527
- });
528
- const installServerBinaryPath = `${defaults.installRoot}/bin/happier-server`;
529
- const shimPath = `${defaults.binDir}/happier-server`;
530
- const stdoutPath = `${defaults.logDir}/server.out.log`;
531
- const stderrPath = `${defaults.logDir}/server.err.log`;
532
- const configEnvPath = `${defaults.configDir}/server.env`;
533
- const statePath = `${defaults.installRoot}/self-host-state.json`;
534
- const filesDir = `${defaults.dataDir}/files`;
535
- const dbDir = `${defaults.dataDir}/pglite`;
536
- const serverBinDir = posixPath.dirname(remoteServer.binaryPath);
537
- const nodeModulesPath = await deps.runRemoteText({
538
- ssh: params.ssh,
539
- knownHostsMode,
540
- remoteCommand: buildRemoteProbeExistsCommand({ path: `${serverBinDir}/node_modules`, kind: 'dir' }),
541
- }).then((result) => String(result.stdout ?? '').trim() === 'yes'
542
- ? `${serverBinDir}/node_modules`
543
- : '').catch(() => '');
544
- const prismaEnginePath = await resolveFirstRemoteExistingPath(deps, {
1460
+ remoteHomeDir: resolveRemoteHomeDirForComponents(),
1461
+ localBinaryPath: localServerOverride,
1462
+ })
1463
+ : null;
1464
+ const result = await deps.runRemoteText({
545
1465
  ssh: params.ssh,
546
1466
  knownHostsMode,
547
- candidates: resolveRemotePrismaEngineCandidates({
548
- platform,
549
- arch: target.arch,
550
- serverBinDir,
1467
+ remoteCommand: buildRemoteRelayRuntimeInstallCommand({
1468
+ cliBinaryPath: remoteCli.binaryPath,
1469
+ channel: formatRelayChannelLabel(channel),
1470
+ mode,
1471
+ env: params.parsed.env ?? {},
1472
+ ...(uploadedServer ? { serverBinaryPath: uploadedServer.binaryPath } : {}),
551
1473
  }),
552
1474
  });
553
- const renderedEnv = buildRemoteRelayRuntimeEnvText({
554
- platform,
555
- arch: target.arch,
556
- defaults,
557
- envOverrides: params.parsed.env,
558
- serverBinDir,
559
- nodeModulesPath: nodeModulesPath || undefined,
560
- prismaEnginePath: prismaEnginePath || undefined,
561
- });
562
- const serviceSpec = {
563
- label: defaults.serviceName,
564
- description: `Happier Relay Runtime (${defaults.serviceName})`,
565
- programArgs: [installServerBinaryPath],
566
- workingDirectory: defaults.installRoot,
567
- env: renderedEnv.parsed,
568
- stdoutPath,
569
- stderrPath,
1475
+ const envelope = parseLastJsonLineObject(result.stdout);
1476
+ const envelopeData = envelope?.data && typeof envelope.data === 'object' && !Array.isArray(envelope.data)
1477
+ ? envelope.data
1478
+ : null;
1479
+ const envelopeError = envelope?.error && typeof envelope.error === 'object' && !Array.isArray(envelope.error)
1480
+ ? envelope.error
1481
+ : null;
1482
+ const remoteMessage = typeof envelopeError?.message === 'string' ? envelopeError.message.trim() : '';
1483
+ if (result.status !== 0 || envelope?.ok !== true || envelope.kind !== 'relay_host_install') {
1484
+ const legacyHealthMismatch = uploadedServer
1485
+ && remoteMessage.includes('did not become healthy')
1486
+ && requestedRelayUrl !== `http://${defaults.serverHost}:${defaults.serverPort}`
1487
+ && await resolveRemoteRelayHealth({
1488
+ deps,
1489
+ ssh: params.ssh,
1490
+ knownHostsMode,
1491
+ relayUrl: requestedRelayUrl,
1492
+ healthPath: defaults.healthPath,
1493
+ maxAttempts: 30,
1494
+ sleepSeconds: 1,
1495
+ });
1496
+ if (legacyHealthMismatch) {
1497
+ return { relayUrl: requestedRelayUrl, mode };
1498
+ }
1499
+ throw new Error(remoteMessage || result.stderr.trim() || 'Remote canonical relay installer failed');
1500
+ }
1501
+ const relayUrl = typeof envelopeData?.relayUrl === 'string' ? envelopeData.relayUrl.trim() : '';
1502
+ const installedMode = envelopeData?.mode === 'system' ? 'system' : envelopeData?.mode === 'user' ? 'user' : null;
1503
+ if (!relayUrl || !installedMode) {
1504
+ throw new Error('Remote canonical relay installer returned an unsupported response');
1505
+ }
1506
+ return {
1507
+ relayUrl: requestedRelayUrl !== `http://${defaults.serverHost}:${defaults.serverPort}`
1508
+ ? requestedRelayUrl
1509
+ : relayUrl,
1510
+ mode: installedMode,
570
1511
  };
1512
+ }
1513
+ async function assertRemoteRelayRuntimeHealthy(params) {
1514
+ const privilegedPrefix = params.backend === 'systemd-system' || params.backend === 'launchd-system'
1515
+ ? 'sudo -n '
1516
+ : '';
1517
+ const probeCommand = buildRelayRuntimeHealthProbeCommand({
1518
+ baseUrl: params.relayUrl,
1519
+ path: params.healthPath,
1520
+ maxAttempts: 120,
1521
+ sleepSeconds: 1,
1522
+ });
1523
+ const probeResult = await params.deps.runRemoteText({
1524
+ ssh: params.ssh,
1525
+ knownHostsMode: params.knownHostsMode,
1526
+ remoteCommand: probeCommand,
1527
+ });
1528
+ const probeStdout = String(probeResult.stdout ?? '');
1529
+ if (probeResult.status === 0 || probeStdout.includes(RELAY_RUNTIME_HEALTH_OK_TOKEN)) {
1530
+ return;
1531
+ }
1532
+ const tailResult = await params.deps.runRemoteText({
1533
+ ssh: params.ssh,
1534
+ knownHostsMode: params.knownHostsMode,
1535
+ remoteCommand: `${privilegedPrefix}tail -n 80 ${quoteRemoteShellArg(params.stderrPath)} 2>/dev/null || true`,
1536
+ }).catch(() => ({ status: 1, stdout: '', stderr: '' }));
1537
+ const tailText = String(tailResult.stdout ?? '').trim();
1538
+ const stderrDetail = probeResult.stderr.trim();
1539
+ const message = [
1540
+ `Remote relay runtime did not become healthy at ${params.relayUrl}.`,
1541
+ probeResult.status === 3 ? 'Missing curl/wget on the remote host (required for health checks).' : '',
1542
+ `Exit status: ${probeResult.status}`,
1543
+ stderrDetail ? `Probe error: ${stderrDetail}` : '',
1544
+ tailText ? `Recent stderr:\n${tailText}` : '',
1545
+ ].filter(Boolean).join('\n');
1546
+ throw new Error(message);
1547
+ }
1548
+ async function uninstallRemote(params) {
1549
+ const knownHostsMode = params.ssh.knownHostsPath ? 'app' : 'system';
1550
+ const target = await resolveRemoteTarget(params.ssh, knownHostsMode);
1551
+ const platform = resolveRemotePlatform({ target });
1552
+ const mode = normalizeMode(params.parsed.mode);
1553
+ const channel = normalizeChannel(params.parsed.channel);
1554
+ const defaults = resolveRelayDefaultsForRemote({ platform, channel, mode });
1555
+ const remoteHomeDir = await resolveRemoteUserHomeDir(deps, { ssh: params.ssh, knownHostsMode }) ?? resolveRemoteHomeDirForRuntime();
571
1556
  const backend = resolveServiceBackend({ platform, mode });
572
- const remotePathEnv = await resolveRemotePathEnv(deps, { ssh: params.ssh, knownHostsMode });
573
- const definitionPath = resolveRemoteServiceDefinitionPath({
1557
+ const effectiveServiceName = await resolveRemoteEffectiveServiceName({
1558
+ ssh: params.ssh,
1559
+ knownHostsMode,
574
1560
  backend,
575
- label: serviceSpec.label,
1561
+ channel,
576
1562
  remoteHomeDir,
1563
+ defaults,
1564
+ });
1565
+ const serviceSpec = buildRelayRuntimeServiceSpec({
1566
+ label: effectiveServiceName,
1567
+ installRoot: defaults.installRoot,
1568
+ serverBinaryPath: `${defaults.installRoot}/bin/happier-server`,
1569
+ env: {},
1570
+ stdoutPath: `${defaults.logDir}/server.out.log`,
1571
+ stderrPath: `${defaults.logDir}/server.err.log`,
577
1572
  });
578
- const definitionContents = resolveRemoteServiceDefinitionContents({
1573
+ const definitionPath = resolveRemoteServiceDefinitionPath({
579
1574
  backend,
1575
+ label: serviceSpec.label,
580
1576
  remoteHomeDir,
581
- spec: serviceSpec,
582
- defaultPathEnv: remotePathEnv,
583
1577
  });
584
- const stageParent = `${remoteComponentHomeDir}/bootstrap-staging/relay-runtime-${now()}`;
585
- const staged = await writeRemoteFilesViaScp({
586
- deps,
587
- ssh: params.ssh,
588
- knownHostsMode,
589
- remoteStageParent: stageParent,
590
- files: [
591
- { relativePath: 'server.env', contents: renderedEnv.envText },
592
- { relativePath: 'self-host-state.json', contents: `${JSON.stringify({
593
- channel,
594
- mode,
595
- version: remoteServer.versionId || null,
596
- updatedAt: new Date(now()).toISOString(),
597
- }, null, 2)}\n` },
598
- ],
599
- });
600
- const remoteEnvPath = `${staged.remoteRoot}/server.env`;
601
- const remoteStatePath = `${staged.remoteRoot}/self-host-state.json`;
602
- const setupCommands = [
603
- 'set -eu',
604
- `mkdir -p ${quoteRemoteShellArg(defaults.installRoot)}`,
605
- `mkdir -p ${quoteRemoteShellArg(defaults.configDir)}`,
606
- `mkdir -p ${quoteRemoteShellArg(defaults.dataDir)}`,
607
- `mkdir -p ${quoteRemoteShellArg(filesDir)}`,
608
- `mkdir -p ${quoteRemoteShellArg(dbDir)}`,
609
- `mkdir -p ${quoteRemoteShellArg(defaults.logDir)}`,
610
- `mkdir -p ${quoteRemoteShellArg(`${defaults.installRoot}/bin`)}`,
611
- buildRemoteInstallBinaryShimCommand({ sourcePath: remoteServer.binaryPath, destPath: installServerBinaryPath }),
612
- buildRemoteInstallBinaryShimCommand({ sourcePath: installServerBinaryPath, destPath: shimPath }),
613
- `cp ${quoteRemoteShellArg(remoteEnvPath)} ${quoteRemoteShellArg(configEnvPath)}`,
614
- `cp ${quoteRemoteShellArg(remoteStatePath)} ${quoteRemoteShellArg(statePath)}`,
615
- staged.cleanupRemoteCommand,
616
- ].join('; ');
617
- const setupResult = await deps.runRemoteText({
1578
+ const controlResult = await deps.runRemoteText({
618
1579
  ssh: params.ssh,
619
1580
  knownHostsMode,
620
- remoteCommand: setupCommands,
1581
+ remoteCommand: buildRemoteControlCommand({
1582
+ backend,
1583
+ serviceName: effectiveServiceName,
1584
+ action: 'uninstall',
1585
+ }),
621
1586
  });
622
- if (setupResult.status !== 0) {
623
- throw new Error(setupResult.stderr.trim() || 'Failed to install relay runtime files');
1587
+ if (controlResult.status !== 0) {
1588
+ throw new Error(controlResult.stderr.trim() || 'Failed to uninstall relay runtime service');
624
1589
  }
625
- await installRemoteService({
626
- deps,
1590
+ const cleanupCommand = buildRemoteRelayRuntimeCleanupCommand({
1591
+ definitionPath,
1592
+ installRoot: defaults.installRoot,
1593
+ binDir: defaults.binDir,
1594
+ configDir: defaults.configDir,
1595
+ dataDir: defaults.dataDir,
1596
+ logDir: defaults.logDir,
1597
+ useSudo: backend === 'systemd-system' || backend === 'launchd-system',
1598
+ });
1599
+ const cleanupResult = await deps.runRemoteText({
627
1600
  ssh: params.ssh,
628
1601
  knownHostsMode,
629
- backend,
630
- definitionPath,
631
- definitionContents,
632
- serviceName: defaults.serviceName,
1602
+ remoteCommand: cleanupCommand,
633
1603
  });
634
- return {
635
- relayUrl: `http://${defaults.serverHost}:${defaults.serverPort}`,
636
- mode,
637
- };
1604
+ if (cleanupResult.status !== 0) {
1605
+ throw new Error(cleanupResult.stderr.trim() || 'Failed to remove relay runtime files');
1606
+ }
638
1607
  }
639
1608
  return {
640
1609
  async readStatus(params) {
@@ -654,6 +1623,10 @@ export function createRelayHostEngine(deps) {
654
1623
  async control(params) {
655
1624
  const parsed = params;
656
1625
  if (parsed.target.kind !== 'ssh') {
1626
+ if (parsed.action === 'uninstall') {
1627
+ await uninstallLocal(parsed);
1628
+ return;
1629
+ }
657
1630
  const mode = normalizeMode(parsed.mode);
658
1631
  const channel = normalizeChannel(parsed.channel);
659
1632
  const defaults = resolveRelayRuntimeDefaults({
@@ -664,27 +1637,97 @@ export function createRelayHostEngine(deps) {
664
1637
  });
665
1638
  const backend = resolveServiceBackend({ platform: process.platform, mode });
666
1639
  const serviceName = defaults.serviceName;
1640
+ const ensureLocalRelayHealthy = async () => {
1641
+ if (parsed.action !== 'start' && parsed.action !== 'restart') {
1642
+ return;
1643
+ }
1644
+ const resolveRelayStartHealthcheckTimeoutMs = () => {
1645
+ const raw = process.env.HAPPIER_RELAY_HOST_LOCAL_HEALTHCHECK_TIMEOUT_MS;
1646
+ if (typeof raw !== 'string' || raw.trim().length === 0)
1647
+ return 120_000;
1648
+ const parsedTimeout = Number.parseInt(raw, 10);
1649
+ if (!Number.isFinite(parsedTimeout))
1650
+ return 120_000;
1651
+ return Math.max(1, Math.min(120_000, Math.floor(parsedTimeout)));
1652
+ };
1653
+ const envPath = join(defaults.configDir, 'server.env');
1654
+ const envText = existsSync(envPath) ? await readFile(envPath, 'utf8').catch(() => '') : '';
1655
+ const baseUrl = resolveConfiguredSelfHostBaseUrl({
1656
+ fallbackBaseUrl: `http://${defaults.serverHost}:${defaults.serverPort}`,
1657
+ envText,
1658
+ });
1659
+ const healthy = await resolveLocalRelayHealth({
1660
+ baseUrl,
1661
+ healthPath: defaults.healthPath,
1662
+ timeoutMs: resolveRelayStartHealthcheckTimeoutMs(),
1663
+ }).catch(() => false);
1664
+ if (!healthy) {
1665
+ throw new Error(`Local relay runtime did not become healthy at ${baseUrl}.`);
1666
+ }
1667
+ };
1668
+ const effectiveServiceName = await resolveLocalEffectiveServiceName({
1669
+ backend,
1670
+ channel,
1671
+ defaults,
1672
+ });
667
1673
  if (backend === 'systemd-user' || backend === 'systemd-system') {
668
1674
  const prefix = backend === 'systemd-user' ? ['--user'] : [];
669
- const result = runLocalText('systemctl', [...prefix, parsed.action, `${serviceName}.service`]);
1675
+ const result = runLocalText('systemctl', [...prefix, parsed.action, `${effectiveServiceName}.service`]);
670
1676
  if (result.status !== 0) {
671
- throw new Error(result.stderr.trim() || `Failed to ${parsed.action} relay runtime.`);
1677
+ throw mapRelayRuntimeServiceControlError({
1678
+ backend,
1679
+ stderr: result.stderr,
1680
+ fallbackMessage: `Failed to ${parsed.action} relay runtime.`,
1681
+ });
672
1682
  }
1683
+ await ensureLocalRelayHealthy();
673
1684
  return;
674
1685
  }
675
1686
  if (backend === 'launchd-user' || backend === 'launchd-system') {
676
1687
  const uid = typeof process.getuid === 'function' ? process.getuid() : 0;
677
- const domain = backend === 'launchd-system' ? `system/${serviceName}` : `gui/${uid}/${serviceName}`;
678
- const args = parsed.action === 'stop'
679
- ? ['bootout', domain]
680
- : ['kickstart', '-k', domain];
681
- const result = runLocalText('launchctl', args);
682
- if (result.status !== 0) {
683
- throw new Error(result.stderr.trim() || `Failed to ${parsed.action} relay runtime.`);
1688
+ const domain = backend === 'launchd-system' ? `system/${effectiveServiceName}` : `gui/${uid}/${effectiveServiceName}`;
1689
+ const plistPath = backend === 'launchd-system'
1690
+ ? `/Library/LaunchDaemons/${effectiveServiceName}.plist`
1691
+ : join(homedir(), 'Library', 'LaunchAgents', `${effectiveServiceName}.plist`);
1692
+ const runLaunchctl = (args, options = {}) => {
1693
+ const result = runLocalText('launchctl', args);
1694
+ if (result.status !== 0 && options.allowFail !== true) {
1695
+ throw new Error(result.stderr.trim() || `Failed to ${parsed.action} relay runtime.`);
1696
+ }
1697
+ return result;
1698
+ };
1699
+ if (parsed.action === 'stop') {
1700
+ runLaunchctl(['bootout', domain], { allowFail: true });
1701
+ return;
1702
+ }
1703
+ if (parsed.action === 'restart') {
1704
+ const kickstartResult = runLaunchctl(['kickstart', '-k', domain], { allowFail: true });
1705
+ if (kickstartResult.status === 0) {
1706
+ await ensureLocalRelayHealthy();
1707
+ return;
1708
+ }
1709
+ }
1710
+ if (backend === 'launchd-user' && uid > 0) {
1711
+ runLaunchctl(['bootout', domain], { allowFail: true });
1712
+ runLaunchctl(['bootstrap', `gui/${uid}`, plistPath]);
1713
+ runLaunchctl(['enable', domain]);
1714
+ runLaunchctl(['kickstart', '-k', domain]);
1715
+ await ensureLocalRelayHealthy();
1716
+ return;
684
1717
  }
1718
+ if (backend === 'launchd-system') {
1719
+ runLaunchctl(['bootout', domain], { allowFail: true });
1720
+ runLaunchctl(['bootstrap', 'system', plistPath]);
1721
+ runLaunchctl(['enable', domain]);
1722
+ runLaunchctl(['kickstart', '-k', domain]);
1723
+ await ensureLocalRelayHealthy();
1724
+ return;
1725
+ }
1726
+ runLaunchctl(['kickstart', '-k', domain]);
1727
+ await ensureLocalRelayHealthy();
685
1728
  return;
686
1729
  }
687
- const taskName = `Happier\\${serviceName}`;
1730
+ const taskName = `Happier\\${effectiveServiceName}`;
688
1731
  const args = parsed.action === 'stop'
689
1732
  ? ['/End', '/TN', taskName]
690
1733
  : ['/Run', '/TN', taskName];
@@ -692,26 +1735,60 @@ export function createRelayHostEngine(deps) {
692
1735
  if (result.status !== 0) {
693
1736
  throw new Error(result.stderr.trim() || `Failed to ${parsed.action} relay runtime.`);
694
1737
  }
1738
+ await ensureLocalRelayHealthy();
695
1739
  return;
696
1740
  }
697
- const knownHostsMode = parsed.target.ssh.knownHostsPath ? 'app' : 'system';
698
- const target = await resolveRemoteTarget(parsed.target.ssh, knownHostsMode);
1741
+ if (parsed.target.kind !== 'ssh') {
1742
+ throw new Error('Remote relay runtime control requires an ssh target.');
1743
+ }
1744
+ const ssh = parsed.target.ssh;
1745
+ const knownHostsMode = ssh.knownHostsPath ? 'app' : 'system';
1746
+ const target = await resolveRemoteTarget(ssh, knownHostsMode);
699
1747
  const platform = resolveRemotePlatform({ target });
700
1748
  const mode = normalizeMode(parsed.mode);
701
1749
  const channel = normalizeChannel(parsed.channel);
702
1750
  const defaults = resolveRelayDefaultsForRemote({ platform, channel, mode });
1751
+ const remoteHomeDir = await resolveRemoteUserHomeDir(deps, { ssh, knownHostsMode }) ?? resolveRemoteHomeDirForRuntime();
703
1752
  const backend = resolveServiceBackend({ platform, mode });
1753
+ if (parsed.action === 'uninstall') {
1754
+ await uninstallRemote({ parsed, ssh });
1755
+ return;
1756
+ }
1757
+ const effectiveServiceName = await resolveRemoteEffectiveServiceName({
1758
+ ssh,
1759
+ knownHostsMode,
1760
+ backend,
1761
+ channel,
1762
+ remoteHomeDir,
1763
+ defaults,
1764
+ });
704
1765
  const result = await deps.runRemoteText({
705
- ssh: parsed.target.ssh,
1766
+ ssh,
706
1767
  knownHostsMode,
707
1768
  remoteCommand: buildRemoteControlCommand({
708
1769
  backend,
709
- serviceName: defaults.serviceName,
1770
+ serviceName: effectiveServiceName,
710
1771
  action: parsed.action,
711
1772
  }),
712
1773
  });
713
1774
  if (result.status !== 0) {
714
- throw new Error(result.stderr.trim() || `Failed to ${parsed.action} relay runtime.`);
1775
+ throw mapRelayRuntimeServiceControlError({
1776
+ backend,
1777
+ stderr: result.stderr,
1778
+ fallbackMessage: `Failed to ${parsed.action} relay runtime.`,
1779
+ });
1780
+ }
1781
+ if (parsed.action === 'start' || parsed.action === 'restart') {
1782
+ const status = await readRemoteStatus({ parsed, ssh });
1783
+ await assertRemoteRelayRuntimeHealthy({
1784
+ deps,
1785
+ ssh,
1786
+ knownHostsMode,
1787
+ backend,
1788
+ relayUrl: status.baseUrl,
1789
+ healthPath: defaults.healthPath,
1790
+ stderrPath: `${defaults.logDir}/server.err.log`,
1791
+ });
715
1792
  }
716
1793
  },
717
1794
  };