@timurproko/a1 0.1.0 → 0.1.1-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (507) hide show
  1. package/README.md +8 -6
  2. package/bin/a1-ui.js +24 -0
  3. package/bin/{addone.js → a1.js} +2 -2
  4. package/dist/src/cli/dispatch.d.ts +4 -5
  5. package/dist/src/cli/dispatch.js +11 -11
  6. package/dist/src/cli/index.d.ts +0 -1
  7. package/dist/src/cli/index.js +0 -1
  8. package/dist/src/cli/version-stats.d.ts +0 -1
  9. package/dist/src/cli/version-stats.js +27 -23
  10. package/dist/src/cli/version.d.ts +1 -2
  11. package/dist/src/cli/version.js +4 -4
  12. package/dist/src/composition/index.d.ts +22 -0
  13. package/dist/src/composition/index.js +166 -0
  14. package/dist/src/composition/transparent-runtime.d.ts +6 -0
  15. package/dist/src/composition/transparent-runtime.js +19 -0
  16. package/dist/src/features/launch/development-launch.d.ts +0 -1
  17. package/dist/src/features/launch/development-launch.js +12 -11
  18. package/dist/src/features/launch/index.d.ts +0 -1
  19. package/dist/src/features/launch/index.js +0 -1
  20. package/dist/src/features/launch/initialize-profile.d.ts +1 -2
  21. package/dist/src/features/launch/initialize-profile.js +1 -2
  22. package/dist/src/features/launch/intent.d.ts +0 -1
  23. package/dist/src/features/launch/intent.js +0 -1
  24. package/dist/src/features/launch/prepare-launch.d.ts +2 -3
  25. package/dist/src/features/launch/prepare-launch.js +3 -4
  26. package/dist/src/features/launch/profile-paths.d.ts +2 -3
  27. package/dist/src/features/launch/profile-paths.js +9 -8
  28. package/dist/src/features/launch/profiles.d.ts +2 -3
  29. package/dist/src/features/launch/profiles.js +5 -6
  30. package/dist/src/features/launch/runtime-selection.d.ts +1 -2
  31. package/dist/src/features/launch/runtime-selection.js +1 -2
  32. package/dist/src/features/owned-ui/customization.d.ts +5 -3
  33. package/dist/src/features/owned-ui/customization.js +2 -4
  34. package/dist/src/features/owned-ui/diagnostics.d.ts +0 -1
  35. package/dist/src/features/owned-ui/diagnostics.js +0 -1
  36. package/dist/src/features/owned-ui/index.d.ts +0 -2
  37. package/dist/src/features/owned-ui/index.js +0 -2
  38. package/dist/src/features/owned-ui/run.d.ts +3 -7
  39. package/dist/src/features/owned-ui/run.js +7 -15
  40. package/dist/src/features/workspace/capabilities.d.ts +0 -1
  41. package/dist/src/features/workspace/capabilities.js +0 -1
  42. package/dist/src/features/workspace/index.d.ts +0 -1
  43. package/dist/src/features/workspace/index.js +0 -1
  44. package/dist/src/features/workspace/presentation.d.ts +1 -2
  45. package/dist/src/features/workspace/presentation.js +5 -4
  46. package/dist/src/features/workspace/reconciliation.d.ts +0 -1
  47. package/dist/src/features/workspace/reconciliation.js +0 -1
  48. package/dist/src/features/workspace/reducer.d.ts +0 -1
  49. package/dist/src/features/workspace/reducer.js +0 -1
  50. package/dist/src/features/workspace/router.d.ts +0 -1
  51. package/dist/src/features/workspace/router.js +0 -1
  52. package/dist/src/features/workspace/store.d.ts +0 -1
  53. package/dist/src/features/workspace/store.js +0 -1
  54. package/dist/src/foundation/agent-engine-contracts/capability-ports.d.ts +95 -0
  55. package/dist/src/foundation/agent-engine-contracts/capability-ports.js +35 -0
  56. package/dist/src/foundation/agent-engine-contracts/domain-validation.d.ts +12 -0
  57. package/dist/src/foundation/agent-engine-contracts/domain-validation.js +89 -0
  58. package/dist/src/foundation/agent-engine-contracts/domain.d.ts +90 -0
  59. package/dist/src/foundation/agent-engine-contracts/domain.js +1 -0
  60. package/dist/src/foundation/agent-engine-contracts/index.d.ts +7 -0
  61. package/dist/src/foundation/agent-engine-contracts/index.js +7 -0
  62. package/dist/src/foundation/agent-engine-contracts/model.d.ts +78 -0
  63. package/dist/src/foundation/agent-engine-contracts/model.js +1 -0
  64. package/dist/src/foundation/agent-engine-contracts/ports.d.ts +18 -0
  65. package/dist/src/foundation/agent-engine-contracts/ports.js +1 -0
  66. package/dist/src/foundation/agent-engine-contracts/serialization.d.ts +7 -0
  67. package/dist/src/foundation/agent-engine-contracts/serialization.js +58 -0
  68. package/dist/src/foundation/agent-engine-contracts/validation.d.ts +5 -0
  69. package/dist/src/foundation/agent-engine-contracts/validation.js +128 -0
  70. package/dist/src/foundation/lifecycle/index.d.ts +0 -1
  71. package/dist/src/foundation/lifecycle/index.js +0 -1
  72. package/dist/src/foundation/lifecycle/model.d.ts +1 -2
  73. package/dist/src/foundation/lifecycle/model.js +3 -3
  74. package/dist/src/foundation/lifecycle/paths.d.ts +2 -3
  75. package/dist/src/foundation/lifecycle/paths.js +32 -16
  76. package/dist/src/foundation/native-host-protocol/codec.d.ts +0 -1
  77. package/dist/src/foundation/native-host-protocol/codec.js +0 -1
  78. package/dist/src/foundation/native-host-protocol/evidence.d.ts +2 -3
  79. package/dist/src/foundation/native-host-protocol/evidence.js +4 -4
  80. package/dist/src/foundation/native-host-protocol/index.d.ts +0 -1
  81. package/dist/src/foundation/native-host-protocol/index.js +0 -1
  82. package/dist/src/foundation/native-host-protocol/messages.d.ts +1 -2
  83. package/dist/src/foundation/native-host-protocol/messages.js +2 -2
  84. package/dist/src/foundation/native-host-protocol/proof-gate.d.ts +0 -1
  85. package/dist/src/foundation/native-host-protocol/proof-gate.js +0 -1
  86. package/dist/src/foundation/owned-ui-contracts/extension-ui.d.ts +0 -1
  87. package/dist/src/foundation/owned-ui-contracts/extension-ui.js +0 -1
  88. package/dist/src/foundation/owned-ui-contracts/index.d.ts +0 -1
  89. package/dist/src/foundation/owned-ui-contracts/index.js +0 -1
  90. package/dist/src/foundation/owned-ui-contracts/model.d.ts +0 -1
  91. package/dist/src/foundation/owned-ui-contracts/model.js +0 -1
  92. package/dist/src/foundation/owned-ui-contracts/validation.d.ts +0 -1
  93. package/dist/src/foundation/owned-ui-contracts/validation.js +0 -1
  94. package/dist/src/foundation/pi-component-adapter/components.d.ts +0 -1
  95. package/dist/src/foundation/pi-component-adapter/components.js +0 -1
  96. package/dist/src/foundation/pi-component-adapter/conformance.d.ts +1 -1
  97. package/dist/src/foundation/pi-component-adapter/conformance.js +10 -4
  98. package/dist/src/foundation/pi-component-adapter/index.d.ts +0 -1
  99. package/dist/src/foundation/pi-component-adapter/index.js +0 -1
  100. package/dist/src/foundation/pi-component-adapter/resources/builtin-themes.d.ts +165 -0
  101. package/dist/src/foundation/pi-component-adapter/resources/builtin-themes.js +166 -0
  102. package/dist/src/foundation/pi-component-adapter/shell-components.d.ts +0 -1
  103. package/dist/src/foundation/pi-component-adapter/shell-components.js +0 -1
  104. package/dist/src/foundation/pi-component-adapter/shell-editor-autocomplete.d.ts +0 -1
  105. package/dist/src/foundation/pi-component-adapter/shell-editor-autocomplete.js +10 -13
  106. package/dist/src/foundation/pi-component-adapter/shell-extension-ui.d.ts +0 -1
  107. package/dist/src/foundation/pi-component-adapter/shell-extension-ui.js +0 -1
  108. package/dist/src/foundation/pi-component-adapter/shell-footer-status.d.ts +0 -1
  109. package/dist/src/foundation/pi-component-adapter/shell-footer-status.js +5 -62
  110. package/dist/src/foundation/pi-component-adapter/shell-presenters-transcript.d.ts +0 -1
  111. package/dist/src/foundation/pi-component-adapter/shell-presenters-transcript.js +0 -1
  112. package/dist/src/foundation/pi-component-adapter/shell-selectors-dialogs.d.ts +0 -1
  113. package/dist/src/foundation/pi-component-adapter/shell-selectors-dialogs.js +0 -1
  114. package/dist/src/foundation/pi-component-adapter/shell-shared-facade.d.ts +0 -1
  115. package/dist/src/foundation/pi-component-adapter/shell-shared-facade.js +0 -1
  116. package/dist/src/foundation/pi-component-adapter/theme.d.ts +0 -1
  117. package/dist/src/foundation/pi-component-adapter/theme.js +0 -1
  118. package/dist/src/foundation/pi-component-adapter/upstream/adjacent/core/keybindings.d.ts +0 -1
  119. package/dist/src/foundation/pi-component-adapter/upstream/adjacent/core/keybindings.js +0 -1
  120. package/dist/src/foundation/pi-component-adapter/upstream/components/countdown-timer.d.ts +0 -1
  121. package/dist/src/foundation/pi-component-adapter/upstream/components/countdown-timer.js +0 -1
  122. package/dist/src/foundation/pi-component-adapter/upstream/components/custom-entry.d.ts +0 -1
  123. package/dist/src/foundation/pi-component-adapter/upstream/components/custom-entry.js +0 -1
  124. package/dist/src/foundation/pi-component-adapter/upstream/components/daxnuts.d.ts +0 -1
  125. package/dist/src/foundation/pi-component-adapter/upstream/components/daxnuts.js +0 -1
  126. package/dist/src/foundation/pi-component-adapter/upstream/components/earendil-announcement.d.ts +0 -1
  127. package/dist/src/foundation/pi-component-adapter/upstream/components/earendil-announcement.js +3 -27
  128. package/dist/src/foundation/pi-component-adapter/upstream/components/extension-editor.d.ts +0 -1
  129. package/dist/src/foundation/pi-component-adapter/upstream/components/extension-editor.js +0 -1
  130. package/dist/src/foundation/pi-component-adapter/upstream/components/first-time-setup.d.ts +0 -1
  131. package/dist/src/foundation/pi-component-adapter/upstream/components/first-time-setup.js +0 -1
  132. package/dist/src/foundation/pi-component-adapter/upstream/components/markdown-transform.d.ts +0 -1
  133. package/dist/src/foundation/pi-component-adapter/upstream/components/markdown-transform.js +0 -1
  134. package/dist/src/foundation/pi-component-adapter/upstream/components/mermaid.d.ts +0 -1
  135. package/dist/src/foundation/pi-component-adapter/upstream/components/mermaid.js +0 -1
  136. package/dist/src/foundation/pi-component-adapter/upstream/components/owned-editor.d.ts +18 -0
  137. package/dist/src/foundation/pi-component-adapter/upstream/components/owned-editor.js +55 -0
  138. package/dist/src/foundation/pi-component-adapter/upstream/components/scoped-models-selector.d.ts +0 -1
  139. package/dist/src/foundation/pi-component-adapter/upstream/components/scoped-models-selector.js +0 -1
  140. package/dist/src/foundation/pi-component-adapter/upstream/components/session-footer.d.ts +10 -0
  141. package/dist/src/foundation/pi-component-adapter/upstream/components/session-footer.js +120 -0
  142. package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector-search.d.ts +0 -1
  143. package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector-search.js +0 -1
  144. package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector.d.ts +0 -1
  145. package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector.js +0 -1
  146. package/dist/src/foundation/pi-component-adapter/upstream/components/skill-invocation-message.d.ts +1 -2
  147. package/dist/src/foundation/pi-component-adapter/upstream/components/skill-invocation-message.js +1 -2
  148. package/dist/src/foundation/pi-component-adapter/upstream/components/status-indicator.d.ts +0 -1
  149. package/dist/src/foundation/pi-component-adapter/upstream/components/status-indicator.js +0 -1
  150. package/dist/src/foundation/pi-component-adapter/upstream/components/tree-selector.d.ts +0 -1
  151. package/dist/src/foundation/pi-component-adapter/upstream/components/tree-selector.js +0 -1
  152. package/dist/src/foundation/pi-component-adapter/upstream/components/trust-selector.d.ts +0 -1
  153. package/dist/src/foundation/pi-component-adapter/upstream/components/trust-selector.js +0 -1
  154. package/dist/src/foundation/pi-component-adapter/upstream/external-editor.d.ts +0 -1
  155. package/dist/src/foundation/pi-component-adapter/upstream/external-editor.js +0 -1
  156. package/dist/src/foundation/pi-component-adapter/upstream/model-search.d.ts +0 -1
  157. package/dist/src/foundation/pi-component-adapter/upstream/model-search.js +0 -1
  158. package/dist/src/foundation/pi-component-adapter/upstream/theme/theme-controller.d.ts +0 -1
  159. package/dist/src/foundation/pi-component-adapter/upstream/theme/theme-controller.js +1 -2
  160. package/dist/src/foundation/pi-component-adapter/upstream/theme/theme.d.ts +0 -1
  161. package/dist/src/foundation/pi-component-adapter/upstream/theme/theme.js +18 -15
  162. package/dist/src/foundation/pi-engine-adapter/adapter.d.ts +2 -202
  163. package/dist/src/foundation/pi-engine-adapter/adapter.js +76 -174
  164. package/dist/src/foundation/pi-engine-adapter/conformance.d.ts +24 -1
  165. package/dist/src/foundation/pi-engine-adapter/conformance.js +60 -15
  166. package/dist/src/foundation/pi-engine-adapter/index.d.ts +6 -1
  167. package/dist/src/foundation/pi-engine-adapter/index.js +6 -1
  168. package/dist/src/foundation/pi-engine-adapter/model-auth-integration.d.ts +30 -0
  169. package/dist/src/foundation/pi-engine-adapter/model-auth-integration.js +61 -0
  170. package/dist/src/foundation/pi-engine-adapter/public-main-entry.d.ts +5 -0
  171. package/dist/src/foundation/pi-engine-adapter/public-main-entry.js +18 -0
  172. package/dist/src/foundation/pi-engine-adapter/resource-extension-integration.d.ts +31 -0
  173. package/dist/src/foundation/pi-engine-adapter/resource-extension-integration.js +80 -0
  174. package/dist/src/foundation/pi-engine-adapter/runtime-integration.d.ts +18 -0
  175. package/dist/src/foundation/pi-engine-adapter/runtime-integration.js +32 -0
  176. package/dist/src/foundation/pi-engine-adapter/session-integration.d.ts +43 -0
  177. package/dist/src/foundation/pi-engine-adapter/session-integration.js +97 -0
  178. package/dist/src/foundation/pi-engine-adapter/settings-integration.d.ts +17 -0
  179. package/dist/src/foundation/pi-engine-adapter/settings-integration.js +85 -0
  180. package/dist/src/foundation/pi-engine-adapter/workflow-controllers.d.ts +20 -0
  181. package/dist/src/foundation/pi-engine-adapter/workflow-controllers.js +48 -0
  182. package/dist/src/foundation/pi-engine-adapter/workflows.d.ts +0 -1
  183. package/dist/src/foundation/pi-engine-adapter/workflows.js +0 -1
  184. package/dist/src/foundation/pi-owned-ui-integration/index.d.ts +1 -0
  185. package/dist/src/foundation/pi-owned-ui-integration/index.js +1 -0
  186. package/dist/src/{features/owned-ui/pi-session-shell.d.ts → foundation/pi-owned-ui-integration/session-shell.d.ts} +17 -14
  187. package/dist/src/{features/owned-ui/pi-session-shell.js → foundation/pi-owned-ui-integration/session-shell.js} +59 -60
  188. package/dist/src/foundation/pi-tui-runtime-adapter/adapter.d.ts +0 -1
  189. package/dist/src/foundation/pi-tui-runtime-adapter/adapter.js +0 -1
  190. package/dist/src/foundation/pi-tui-runtime-adapter/conformance.d.ts +8 -4
  191. package/dist/src/foundation/pi-tui-runtime-adapter/conformance.js +22 -9
  192. package/dist/src/foundation/pi-tui-runtime-adapter/contracts.d.ts +0 -2
  193. package/dist/src/foundation/pi-tui-runtime-adapter/contracts.js +1 -2
  194. package/dist/src/foundation/pi-tui-runtime-adapter/index.d.ts +1 -1
  195. package/dist/src/foundation/pi-tui-runtime-adapter/index.js +1 -1
  196. package/dist/src/foundation/pi-tui-runtime-adapter/presentation-adapter.d.ts +4 -0
  197. package/dist/src/foundation/pi-tui-runtime-adapter/presentation-adapter.js +48 -0
  198. package/dist/src/foundation/presentation-contracts/index.d.ts +96 -0
  199. package/dist/src/foundation/presentation-contracts/index.js +38 -0
  200. package/dist/src/foundation/protocol/client.d.ts +0 -1
  201. package/dist/src/foundation/protocol/client.js +0 -1
  202. package/dist/src/foundation/protocol/index.d.ts +0 -1
  203. package/dist/src/foundation/protocol/index.js +0 -1
  204. package/dist/src/foundation/protocol/messages.d.ts +1 -2
  205. package/dist/src/foundation/protocol/messages.js +2 -2
  206. package/dist/src/foundation/release/bootstrap.d.ts +0 -1
  207. package/dist/src/foundation/release/bootstrap.js +55 -22
  208. package/dist/src/foundation/release/cohort-selection.d.ts +0 -1
  209. package/dist/src/foundation/release/cohort-selection.js +0 -1
  210. package/dist/src/foundation/release/cohort-state.d.ts +3 -2
  211. package/dist/src/foundation/release/cohort-state.js +5 -4
  212. package/dist/src/foundation/release/concurrency.d.ts +1 -0
  213. package/dist/src/foundation/release/concurrency.js +17 -0
  214. package/dist/src/foundation/release/development-preview-release.d.ts +2 -2
  215. package/dist/src/foundation/release/development-preview-release.js +3 -2
  216. package/dist/src/foundation/release/index.d.ts +0 -1
  217. package/dist/src/foundation/release/index.js +0 -1
  218. package/dist/src/foundation/release/process-cleanup.d.ts +0 -1
  219. package/dist/src/foundation/release/process-cleanup.js +0 -1
  220. package/dist/src/foundation/release/release-gc.d.ts +0 -1
  221. package/dist/src/foundation/release/release-gc.js +0 -1
  222. package/dist/src/foundation/release/release-store.d.ts +24 -6
  223. package/dist/src/foundation/release/release-store.js +56 -21
  224. package/dist/src/foundation/release/release.d.ts +5 -6
  225. package/dist/src/foundation/release/release.js +21 -19
  226. package/dist/src/foundation/release/stable-release.d.ts +2 -2
  227. package/dist/src/foundation/release/stable-release.js +6 -5
  228. package/dist/src/foundation/release/update-transaction.d.ts +2 -2
  229. package/dist/src/foundation/release/update-transaction.js +8 -7
  230. package/dist/src/foundation/release/update.d.ts +2 -3
  231. package/dist/src/foundation/release/update.js +31 -29
  232. package/dist/src/foundation/storage/control-store.d.ts +0 -1
  233. package/dist/src/foundation/storage/control-store.js +28 -7
  234. package/dist/src/foundation/storage/index.d.ts +0 -1
  235. package/dist/src/foundation/storage/index.js +0 -1
  236. package/dist/src/foundation/structured-agent-runtime/backpressure.d.ts +0 -1
  237. package/dist/src/foundation/structured-agent-runtime/backpressure.js +0 -1
  238. package/dist/src/foundation/structured-agent-runtime/commands.d.ts +0 -1
  239. package/dist/src/foundation/structured-agent-runtime/commands.js +0 -1
  240. package/dist/src/foundation/structured-agent-runtime/handshake.d.ts +2 -3
  241. package/dist/src/foundation/structured-agent-runtime/handshake.js +13 -13
  242. package/dist/src/foundation/structured-agent-runtime/index.d.ts +0 -1
  243. package/dist/src/foundation/structured-agent-runtime/index.js +0 -1
  244. package/dist/src/foundation/structured-agent-runtime/reconnection.d.ts +0 -1
  245. package/dist/src/foundation/structured-agent-runtime/reconnection.js +0 -1
  246. package/dist/src/foundation/structured-agent-runtime/state.d.ts +0 -1
  247. package/dist/src/foundation/structured-agent-runtime/state.js +0 -1
  248. package/dist/src/foundation/supervision/index.d.ts +1 -2
  249. package/dist/src/foundation/supervision/index.js +1 -2
  250. package/dist/src/foundation/supervision/main.d.ts +0 -1
  251. package/dist/src/foundation/supervision/main.js +11 -10
  252. package/dist/src/foundation/supervision/paths.d.ts +1 -2
  253. package/dist/src/foundation/supervision/paths.js +1 -2
  254. package/dist/src/foundation/supervision/server.d.ts +3 -4
  255. package/dist/src/foundation/supervision/server.js +7 -6
  256. package/dist/src/foundation/transparent-terminal/command-resolution.d.ts +0 -1
  257. package/dist/src/foundation/transparent-terminal/command-resolution.js +0 -1
  258. package/dist/src/foundation/transparent-terminal/foreground-broker.d.ts +0 -1
  259. package/dist/src/foundation/transparent-terminal/foreground-broker.js +0 -1
  260. package/dist/src/foundation/transparent-terminal/index.d.ts +1 -1
  261. package/dist/src/foundation/transparent-terminal/index.js +1 -1
  262. package/dist/src/foundation/transparent-terminal/main.d.ts +3 -4
  263. package/dist/src/foundation/transparent-terminal/main.js +8 -21
  264. package/dist/src/foundation/transparent-terminal/native-launcher.d.ts +0 -1
  265. package/dist/src/foundation/transparent-terminal/native-launcher.js +0 -1
  266. package/dist/src/foundation/workspace-contracts/index.d.ts +0 -1
  267. package/dist/src/foundation/workspace-contracts/index.js +0 -1
  268. package/dist/src/foundation/workspace-contracts/model.d.ts +0 -1
  269. package/dist/src/foundation/workspace-contracts/model.js +0 -1
  270. package/dist/src/foundation/workspace-contracts/validation.d.ts +0 -1
  271. package/dist/src/foundation/workspace-contracts/validation.js +0 -1
  272. package/dist/src/product-identity.d.ts +37 -0
  273. package/dist/src/product-identity.js +149 -0
  274. package/dist/src/product-identity.json +96 -0
  275. package/docs/architecture/boundaries.md +2 -2
  276. package/docs/architecture/project-structure.md +2 -2
  277. package/docs/architecture/resource-and-data-policy.md +1 -1
  278. package/docs/architecture/terminal-host-proof-gate.md +2 -2
  279. package/docs/architecture/terminal-host-provenance.md +3 -3
  280. package/docs/architecture/terminal-host-spike-evidence.md +1 -1
  281. package/docs/architecture/toolchain.md +33 -7
  282. package/docs/features/launch-profiles.md +6 -6
  283. package/docs/manual-pi-boundary-candidate.md +33 -0
  284. package/docs/manual-transparent-checkpoint.md +11 -11
  285. package/package.json +10 -3
  286. package/bin/addone-ui.js +0 -20
  287. package/dist/src/cli/dispatch.d.ts.map +0 -1
  288. package/dist/src/cli/dispatch.js.map +0 -1
  289. package/dist/src/cli/index.d.ts.map +0 -1
  290. package/dist/src/cli/index.js.map +0 -1
  291. package/dist/src/cli/version-stats.d.ts.map +0 -1
  292. package/dist/src/cli/version-stats.js.map +0 -1
  293. package/dist/src/cli/version.d.ts.map +0 -1
  294. package/dist/src/cli/version.js.map +0 -1
  295. package/dist/src/features/launch/development-launch.d.ts.map +0 -1
  296. package/dist/src/features/launch/development-launch.js.map +0 -1
  297. package/dist/src/features/launch/index.d.ts.map +0 -1
  298. package/dist/src/features/launch/index.js.map +0 -1
  299. package/dist/src/features/launch/initialize-profile.d.ts.map +0 -1
  300. package/dist/src/features/launch/initialize-profile.js.map +0 -1
  301. package/dist/src/features/launch/intent.d.ts.map +0 -1
  302. package/dist/src/features/launch/intent.js.map +0 -1
  303. package/dist/src/features/launch/prepare-launch.d.ts.map +0 -1
  304. package/dist/src/features/launch/prepare-launch.js.map +0 -1
  305. package/dist/src/features/launch/profile-paths.d.ts.map +0 -1
  306. package/dist/src/features/launch/profile-paths.js.map +0 -1
  307. package/dist/src/features/launch/profiles.d.ts.map +0 -1
  308. package/dist/src/features/launch/profiles.js.map +0 -1
  309. package/dist/src/features/launch/runtime-selection.d.ts.map +0 -1
  310. package/dist/src/features/launch/runtime-selection.js.map +0 -1
  311. package/dist/src/features/owned-ui/customization.d.ts.map +0 -1
  312. package/dist/src/features/owned-ui/customization.js.map +0 -1
  313. package/dist/src/features/owned-ui/diagnostics.d.ts.map +0 -1
  314. package/dist/src/features/owned-ui/diagnostics.js.map +0 -1
  315. package/dist/src/features/owned-ui/index.d.ts.map +0 -1
  316. package/dist/src/features/owned-ui/index.js.map +0 -1
  317. package/dist/src/features/owned-ui/pi-session-shell.d.ts.map +0 -1
  318. package/dist/src/features/owned-ui/pi-session-shell.js.map +0 -1
  319. package/dist/src/features/owned-ui/run.d.ts.map +0 -1
  320. package/dist/src/features/owned-ui/run.js.map +0 -1
  321. package/dist/src/features/workspace/capabilities.d.ts.map +0 -1
  322. package/dist/src/features/workspace/capabilities.js.map +0 -1
  323. package/dist/src/features/workspace/index.d.ts.map +0 -1
  324. package/dist/src/features/workspace/index.js.map +0 -1
  325. package/dist/src/features/workspace/presentation.d.ts.map +0 -1
  326. package/dist/src/features/workspace/presentation.js.map +0 -1
  327. package/dist/src/features/workspace/reconciliation.d.ts.map +0 -1
  328. package/dist/src/features/workspace/reconciliation.js.map +0 -1
  329. package/dist/src/features/workspace/reducer.d.ts.map +0 -1
  330. package/dist/src/features/workspace/reducer.js.map +0 -1
  331. package/dist/src/features/workspace/router.d.ts.map +0 -1
  332. package/dist/src/features/workspace/router.js.map +0 -1
  333. package/dist/src/features/workspace/store.d.ts.map +0 -1
  334. package/dist/src/features/workspace/store.js.map +0 -1
  335. package/dist/src/foundation/lifecycle/index.d.ts.map +0 -1
  336. package/dist/src/foundation/lifecycle/index.js.map +0 -1
  337. package/dist/src/foundation/lifecycle/model.d.ts.map +0 -1
  338. package/dist/src/foundation/lifecycle/model.js.map +0 -1
  339. package/dist/src/foundation/lifecycle/paths.d.ts.map +0 -1
  340. package/dist/src/foundation/lifecycle/paths.js.map +0 -1
  341. package/dist/src/foundation/native-host-protocol/codec.d.ts.map +0 -1
  342. package/dist/src/foundation/native-host-protocol/codec.js.map +0 -1
  343. package/dist/src/foundation/native-host-protocol/evidence.d.ts.map +0 -1
  344. package/dist/src/foundation/native-host-protocol/evidence.js.map +0 -1
  345. package/dist/src/foundation/native-host-protocol/index.d.ts.map +0 -1
  346. package/dist/src/foundation/native-host-protocol/index.js.map +0 -1
  347. package/dist/src/foundation/native-host-protocol/messages.d.ts.map +0 -1
  348. package/dist/src/foundation/native-host-protocol/messages.js.map +0 -1
  349. package/dist/src/foundation/native-host-protocol/proof-gate.d.ts.map +0 -1
  350. package/dist/src/foundation/native-host-protocol/proof-gate.js.map +0 -1
  351. package/dist/src/foundation/owned-ui-contracts/extension-ui.d.ts.map +0 -1
  352. package/dist/src/foundation/owned-ui-contracts/extension-ui.js.map +0 -1
  353. package/dist/src/foundation/owned-ui-contracts/index.d.ts.map +0 -1
  354. package/dist/src/foundation/owned-ui-contracts/index.js.map +0 -1
  355. package/dist/src/foundation/owned-ui-contracts/model.d.ts.map +0 -1
  356. package/dist/src/foundation/owned-ui-contracts/model.js.map +0 -1
  357. package/dist/src/foundation/owned-ui-contracts/validation.d.ts.map +0 -1
  358. package/dist/src/foundation/owned-ui-contracts/validation.js.map +0 -1
  359. package/dist/src/foundation/pi-component-adapter/components.d.ts.map +0 -1
  360. package/dist/src/foundation/pi-component-adapter/components.js.map +0 -1
  361. package/dist/src/foundation/pi-component-adapter/conformance.d.ts.map +0 -1
  362. package/dist/src/foundation/pi-component-adapter/conformance.js.map +0 -1
  363. package/dist/src/foundation/pi-component-adapter/index.d.ts.map +0 -1
  364. package/dist/src/foundation/pi-component-adapter/index.js.map +0 -1
  365. package/dist/src/foundation/pi-component-adapter/shell-components.d.ts.map +0 -1
  366. package/dist/src/foundation/pi-component-adapter/shell-components.js.map +0 -1
  367. package/dist/src/foundation/pi-component-adapter/shell-editor-autocomplete.d.ts.map +0 -1
  368. package/dist/src/foundation/pi-component-adapter/shell-editor-autocomplete.js.map +0 -1
  369. package/dist/src/foundation/pi-component-adapter/shell-extension-ui.d.ts.map +0 -1
  370. package/dist/src/foundation/pi-component-adapter/shell-extension-ui.js.map +0 -1
  371. package/dist/src/foundation/pi-component-adapter/shell-footer-status.d.ts.map +0 -1
  372. package/dist/src/foundation/pi-component-adapter/shell-footer-status.js.map +0 -1
  373. package/dist/src/foundation/pi-component-adapter/shell-presenters-transcript.d.ts.map +0 -1
  374. package/dist/src/foundation/pi-component-adapter/shell-presenters-transcript.js.map +0 -1
  375. package/dist/src/foundation/pi-component-adapter/shell-selectors-dialogs.d.ts.map +0 -1
  376. package/dist/src/foundation/pi-component-adapter/shell-selectors-dialogs.js.map +0 -1
  377. package/dist/src/foundation/pi-component-adapter/shell-shared-facade.d.ts.map +0 -1
  378. package/dist/src/foundation/pi-component-adapter/shell-shared-facade.js.map +0 -1
  379. package/dist/src/foundation/pi-component-adapter/theme.d.ts.map +0 -1
  380. package/dist/src/foundation/pi-component-adapter/theme.js.map +0 -1
  381. package/dist/src/foundation/pi-component-adapter/upstream/adjacent/core/keybindings.d.ts.map +0 -1
  382. package/dist/src/foundation/pi-component-adapter/upstream/adjacent/core/keybindings.js.map +0 -1
  383. package/dist/src/foundation/pi-component-adapter/upstream/components/countdown-timer.d.ts.map +0 -1
  384. package/dist/src/foundation/pi-component-adapter/upstream/components/countdown-timer.js.map +0 -1
  385. package/dist/src/foundation/pi-component-adapter/upstream/components/custom-entry.d.ts.map +0 -1
  386. package/dist/src/foundation/pi-component-adapter/upstream/components/custom-entry.js.map +0 -1
  387. package/dist/src/foundation/pi-component-adapter/upstream/components/daxnuts.d.ts.map +0 -1
  388. package/dist/src/foundation/pi-component-adapter/upstream/components/daxnuts.js.map +0 -1
  389. package/dist/src/foundation/pi-component-adapter/upstream/components/earendil-announcement.d.ts.map +0 -1
  390. package/dist/src/foundation/pi-component-adapter/upstream/components/earendil-announcement.js.map +0 -1
  391. package/dist/src/foundation/pi-component-adapter/upstream/components/extension-editor.d.ts.map +0 -1
  392. package/dist/src/foundation/pi-component-adapter/upstream/components/extension-editor.js.map +0 -1
  393. package/dist/src/foundation/pi-component-adapter/upstream/components/first-time-setup.d.ts.map +0 -1
  394. package/dist/src/foundation/pi-component-adapter/upstream/components/first-time-setup.js.map +0 -1
  395. package/dist/src/foundation/pi-component-adapter/upstream/components/markdown-transform.d.ts.map +0 -1
  396. package/dist/src/foundation/pi-component-adapter/upstream/components/markdown-transform.js.map +0 -1
  397. package/dist/src/foundation/pi-component-adapter/upstream/components/mermaid.d.ts.map +0 -1
  398. package/dist/src/foundation/pi-component-adapter/upstream/components/mermaid.js.map +0 -1
  399. package/dist/src/foundation/pi-component-adapter/upstream/components/scoped-models-selector.d.ts.map +0 -1
  400. package/dist/src/foundation/pi-component-adapter/upstream/components/scoped-models-selector.js.map +0 -1
  401. package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector-search.d.ts.map +0 -1
  402. package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector-search.js.map +0 -1
  403. package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector.d.ts.map +0 -1
  404. package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector.js.map +0 -1
  405. package/dist/src/foundation/pi-component-adapter/upstream/components/skill-invocation-message.d.ts.map +0 -1
  406. package/dist/src/foundation/pi-component-adapter/upstream/components/skill-invocation-message.js.map +0 -1
  407. package/dist/src/foundation/pi-component-adapter/upstream/components/status-indicator.d.ts.map +0 -1
  408. package/dist/src/foundation/pi-component-adapter/upstream/components/status-indicator.js.map +0 -1
  409. package/dist/src/foundation/pi-component-adapter/upstream/components/tree-selector.d.ts.map +0 -1
  410. package/dist/src/foundation/pi-component-adapter/upstream/components/tree-selector.js.map +0 -1
  411. package/dist/src/foundation/pi-component-adapter/upstream/components/trust-selector.d.ts.map +0 -1
  412. package/dist/src/foundation/pi-component-adapter/upstream/components/trust-selector.js.map +0 -1
  413. package/dist/src/foundation/pi-component-adapter/upstream/external-editor.d.ts.map +0 -1
  414. package/dist/src/foundation/pi-component-adapter/upstream/external-editor.js.map +0 -1
  415. package/dist/src/foundation/pi-component-adapter/upstream/model-search.d.ts.map +0 -1
  416. package/dist/src/foundation/pi-component-adapter/upstream/model-search.js.map +0 -1
  417. package/dist/src/foundation/pi-component-adapter/upstream/theme/theme-controller.d.ts.map +0 -1
  418. package/dist/src/foundation/pi-component-adapter/upstream/theme/theme-controller.js.map +0 -1
  419. package/dist/src/foundation/pi-component-adapter/upstream/theme/theme.d.ts.map +0 -1
  420. package/dist/src/foundation/pi-component-adapter/upstream/theme/theme.js.map +0 -1
  421. package/dist/src/foundation/pi-engine-adapter/adapter.d.ts.map +0 -1
  422. package/dist/src/foundation/pi-engine-adapter/adapter.js.map +0 -1
  423. package/dist/src/foundation/pi-engine-adapter/conformance.d.ts.map +0 -1
  424. package/dist/src/foundation/pi-engine-adapter/conformance.js.map +0 -1
  425. package/dist/src/foundation/pi-engine-adapter/index.d.ts.map +0 -1
  426. package/dist/src/foundation/pi-engine-adapter/index.js.map +0 -1
  427. package/dist/src/foundation/pi-engine-adapter/workflows.d.ts.map +0 -1
  428. package/dist/src/foundation/pi-engine-adapter/workflows.js.map +0 -1
  429. package/dist/src/foundation/pi-tui-runtime-adapter/adapter.d.ts.map +0 -1
  430. package/dist/src/foundation/pi-tui-runtime-adapter/adapter.js.map +0 -1
  431. package/dist/src/foundation/pi-tui-runtime-adapter/conformance.d.ts.map +0 -1
  432. package/dist/src/foundation/pi-tui-runtime-adapter/conformance.js.map +0 -1
  433. package/dist/src/foundation/pi-tui-runtime-adapter/contracts.d.ts.map +0 -1
  434. package/dist/src/foundation/pi-tui-runtime-adapter/contracts.js.map +0 -1
  435. package/dist/src/foundation/pi-tui-runtime-adapter/index.d.ts.map +0 -1
  436. package/dist/src/foundation/pi-tui-runtime-adapter/index.js.map +0 -1
  437. package/dist/src/foundation/protocol/client.d.ts.map +0 -1
  438. package/dist/src/foundation/protocol/client.js.map +0 -1
  439. package/dist/src/foundation/protocol/index.d.ts.map +0 -1
  440. package/dist/src/foundation/protocol/index.js.map +0 -1
  441. package/dist/src/foundation/protocol/messages.d.ts.map +0 -1
  442. package/dist/src/foundation/protocol/messages.js.map +0 -1
  443. package/dist/src/foundation/release/bootstrap.d.ts.map +0 -1
  444. package/dist/src/foundation/release/bootstrap.js.map +0 -1
  445. package/dist/src/foundation/release/cohort-selection.d.ts.map +0 -1
  446. package/dist/src/foundation/release/cohort-selection.js.map +0 -1
  447. package/dist/src/foundation/release/cohort-state.d.ts.map +0 -1
  448. package/dist/src/foundation/release/cohort-state.js.map +0 -1
  449. package/dist/src/foundation/release/development-preview-release.d.ts.map +0 -1
  450. package/dist/src/foundation/release/development-preview-release.js.map +0 -1
  451. package/dist/src/foundation/release/index.d.ts.map +0 -1
  452. package/dist/src/foundation/release/index.js.map +0 -1
  453. package/dist/src/foundation/release/process-cleanup.d.ts.map +0 -1
  454. package/dist/src/foundation/release/process-cleanup.js.map +0 -1
  455. package/dist/src/foundation/release/release-gc.d.ts.map +0 -1
  456. package/dist/src/foundation/release/release-gc.js.map +0 -1
  457. package/dist/src/foundation/release/release-store.d.ts.map +0 -1
  458. package/dist/src/foundation/release/release-store.js.map +0 -1
  459. package/dist/src/foundation/release/release.d.ts.map +0 -1
  460. package/dist/src/foundation/release/release.js.map +0 -1
  461. package/dist/src/foundation/release/stable-release.d.ts.map +0 -1
  462. package/dist/src/foundation/release/stable-release.js.map +0 -1
  463. package/dist/src/foundation/release/update-transaction.d.ts.map +0 -1
  464. package/dist/src/foundation/release/update-transaction.js.map +0 -1
  465. package/dist/src/foundation/release/update.d.ts.map +0 -1
  466. package/dist/src/foundation/release/update.js.map +0 -1
  467. package/dist/src/foundation/storage/control-store.d.ts.map +0 -1
  468. package/dist/src/foundation/storage/control-store.js.map +0 -1
  469. package/dist/src/foundation/storage/index.d.ts.map +0 -1
  470. package/dist/src/foundation/storage/index.js.map +0 -1
  471. package/dist/src/foundation/structured-agent-runtime/backpressure.d.ts.map +0 -1
  472. package/dist/src/foundation/structured-agent-runtime/backpressure.js.map +0 -1
  473. package/dist/src/foundation/structured-agent-runtime/commands.d.ts.map +0 -1
  474. package/dist/src/foundation/structured-agent-runtime/commands.js.map +0 -1
  475. package/dist/src/foundation/structured-agent-runtime/handshake.d.ts.map +0 -1
  476. package/dist/src/foundation/structured-agent-runtime/handshake.js.map +0 -1
  477. package/dist/src/foundation/structured-agent-runtime/index.d.ts.map +0 -1
  478. package/dist/src/foundation/structured-agent-runtime/index.js.map +0 -1
  479. package/dist/src/foundation/structured-agent-runtime/reconnection.d.ts.map +0 -1
  480. package/dist/src/foundation/structured-agent-runtime/reconnection.js.map +0 -1
  481. package/dist/src/foundation/structured-agent-runtime/state.d.ts.map +0 -1
  482. package/dist/src/foundation/structured-agent-runtime/state.js.map +0 -1
  483. package/dist/src/foundation/supervision/index.d.ts.map +0 -1
  484. package/dist/src/foundation/supervision/index.js.map +0 -1
  485. package/dist/src/foundation/supervision/main.d.ts.map +0 -1
  486. package/dist/src/foundation/supervision/main.js.map +0 -1
  487. package/dist/src/foundation/supervision/paths.d.ts.map +0 -1
  488. package/dist/src/foundation/supervision/paths.js.map +0 -1
  489. package/dist/src/foundation/supervision/server.d.ts.map +0 -1
  490. package/dist/src/foundation/supervision/server.js.map +0 -1
  491. package/dist/src/foundation/transparent-terminal/command-resolution.d.ts.map +0 -1
  492. package/dist/src/foundation/transparent-terminal/command-resolution.js.map +0 -1
  493. package/dist/src/foundation/transparent-terminal/foreground-broker.d.ts.map +0 -1
  494. package/dist/src/foundation/transparent-terminal/foreground-broker.js.map +0 -1
  495. package/dist/src/foundation/transparent-terminal/index.d.ts.map +0 -1
  496. package/dist/src/foundation/transparent-terminal/index.js.map +0 -1
  497. package/dist/src/foundation/transparent-terminal/main.d.ts.map +0 -1
  498. package/dist/src/foundation/transparent-terminal/main.js.map +0 -1
  499. package/dist/src/foundation/transparent-terminal/native-launcher.d.ts.map +0 -1
  500. package/dist/src/foundation/transparent-terminal/native-launcher.js.map +0 -1
  501. package/dist/src/foundation/workspace-contracts/index.d.ts.map +0 -1
  502. package/dist/src/foundation/workspace-contracts/index.js.map +0 -1
  503. package/dist/src/foundation/workspace-contracts/model.d.ts.map +0 -1
  504. package/dist/src/foundation/workspace-contracts/model.js.map +0 -1
  505. package/dist/src/foundation/workspace-contracts/validation.d.ts.map +0 -1
  506. package/dist/src/foundation/workspace-contracts/validation.js.map +0 -1
  507. /package/bin/{addone-supervisor.js → a1-supervisor.js} +0 -0
@@ -1,8 +1,8 @@
1
1
  import type { LaunchProfileId } from "./profiles.js";
2
2
  export interface LaunchProfilePaths {
3
3
  readonly home: string;
4
- readonly addoneRoot: string;
5
- readonly addoneAgent: string;
4
+ readonly managedStateRoot: string;
5
+ readonly agentProfile: string;
6
6
  readonly sandbox: string;
7
7
  }
8
8
  export interface LaunchProfilePathOptions {
@@ -13,4 +13,3 @@ export interface LaunchProfilePathOptions {
13
13
  }
14
14
  export declare function resolveLaunchProfilePaths(options?: LaunchProfilePathOptions): LaunchProfilePaths;
15
15
  export declare function configurationRootForProfile(profileId: LaunchProfileId, paths: LaunchProfilePaths): string | null;
16
- //# sourceMappingURL=profile-paths.d.ts.map
@@ -1,21 +1,23 @@
1
1
  import { homedir } from "node:os";
2
2
  import { posix, win32 } from "node:path";
3
+ import { PRODUCT_IDENTITY } from "../../product-identity.js";
3
4
  export function resolveLaunchProfilePaths(options = {}) {
4
5
  const environment = options.environment ?? process.env;
5
6
  const path = options.platform === "win32" || (options.platform === undefined && process.platform === "win32") ? win32 : posix;
6
- const selectedHome = options.home ?? environment.ADDONE_PROFILE_HOME ?? options.readHome?.() ?? homedir();
7
+ const selectedHome = options.home ?? environment[PRODUCT_IDENTITY.environment.profileHome] ?? options.readHome?.() ?? homedir();
7
8
  const home = validateAbsolutePath(selectedHome, "effective user home", path);
8
- const addoneRoot = path.resolve(home, ".a1");
9
+ const agentProfile = path.resolve(home, PRODUCT_IDENTITY.state.piAgentProfile);
10
+ const managedStateRoot = path.dirname(agentProfile);
9
11
  return Object.freeze({
10
12
  home,
11
- addoneRoot,
12
- addoneAgent: path.resolve(addoneRoot, "agent"),
13
- sandbox: path.resolve(addoneRoot, "sandbox"),
13
+ managedStateRoot,
14
+ agentProfile,
15
+ sandbox: path.resolve(home, PRODUCT_IDENTITY.state.piSandboxProfile),
14
16
  });
15
17
  }
16
18
  export function configurationRootForProfile(profileId, paths) {
17
- if (profileId === "addone")
18
- return paths.addoneAgent;
19
+ if (profileId === "a1")
20
+ return paths.agentProfile;
19
21
  if (profileId === "sandbox")
20
22
  return paths.sandbox;
21
23
  return null;
@@ -27,4 +29,3 @@ function validateAbsolutePath(value, name, path) {
27
29
  throw new TypeError(`${name} must be absolute`);
28
30
  return path.resolve(value);
29
31
  }
30
- //# sourceMappingURL=profile-paths.js.map
@@ -1,13 +1,12 @@
1
1
  import type { LaunchProfileId } from "../../foundation/lifecycle/index.js";
2
2
  export type { LaunchProfileId } from "../../foundation/lifecycle/index.js";
3
- export type PiConfigurationRootPolicy = "addone-agent" | "pi-default" | "addone-sandbox";
3
+ export type ConfigurationRootPolicy = "agent-profile" | "pi-default" | "sandbox-profile";
4
4
  export type ProjectTrustPolicy = "pi-default" | "ignore";
5
5
  export interface LaunchProfileContract {
6
6
  readonly id: LaunchProfileId;
7
7
  readonly productSurface: "agent" | "vanilla-baseline" | "isolated-profile";
8
- readonly piConfigurationRoot: PiConfigurationRootPolicy;
8
+ readonly configurationRootPolicy: ConfigurationRootPolicy;
9
9
  readonly projectTrust: ProjectTrustPolicy;
10
10
  readonly terminalCapability: "owned-ui" | "transparent";
11
11
  }
12
12
  export declare function launchProfileContract(id: LaunchProfileId): LaunchProfileContract;
13
- //# sourceMappingURL=profiles.d.ts.map
@@ -1,22 +1,22 @@
1
1
  const contracts = Object.freeze({
2
- addone: Object.freeze({
3
- id: "addone",
2
+ "a1": Object.freeze({
3
+ id: "a1",
4
4
  productSurface: "agent",
5
- piConfigurationRoot: "addone-agent",
5
+ configurationRootPolicy: "agent-profile",
6
6
  projectTrust: "pi-default",
7
7
  terminalCapability: "owned-ui",
8
8
  }),
9
9
  pi: Object.freeze({
10
10
  id: "pi",
11
11
  productSurface: "vanilla-baseline",
12
- piConfigurationRoot: "pi-default",
12
+ configurationRootPolicy: "pi-default",
13
13
  projectTrust: "pi-default",
14
14
  terminalCapability: "transparent",
15
15
  }),
16
16
  sandbox: Object.freeze({
17
17
  id: "sandbox",
18
18
  productSurface: "isolated-profile",
19
- piConfigurationRoot: "addone-sandbox",
19
+ configurationRootPolicy: "sandbox-profile",
20
20
  projectTrust: "ignore",
21
21
  terminalCapability: "transparent",
22
22
  }),
@@ -24,4 +24,3 @@ const contracts = Object.freeze({
24
24
  export function launchProfileContract(id) {
25
25
  return contracts[id];
26
26
  }
27
- //# sourceMappingURL=profiles.js.map
@@ -1,5 +1,5 @@
1
1
  import { type LaunchProfileId } from "../../foundation/lifecycle/index.js";
2
- export type TransparentInteractiveProfileId = Exclude<LaunchProfileId, "addone">;
2
+ export type TransparentInteractiveProfileId = Exclude<LaunchProfileId, "a1">;
3
3
  export type InteractiveRuntimeSelection = {
4
4
  readonly kind: "owned-ui";
5
5
  } | {
@@ -12,4 +12,3 @@ export interface InteractiveRuntimeRunners {
12
12
  }
13
13
  export declare function selectInteractiveRuntime(profileId: string): InteractiveRuntimeSelection;
14
14
  export declare function runSelectedInteractiveRuntime(profileId: string, runners: InteractiveRuntimeRunners): Promise<number>;
15
- //# sourceMappingURL=runtime-selection.d.ts.map
@@ -1,7 +1,7 @@
1
1
  import { assertLaunchProfileId } from "../../foundation/lifecycle/index.js";
2
2
  export function selectInteractiveRuntime(profileId) {
3
3
  assertLaunchProfileId(profileId);
4
- return profileId === "addone"
4
+ return profileId === "a1"
5
5
  ? Object.freeze({ kind: "owned-ui" })
6
6
  : Object.freeze({ kind: "transparent", profileId });
7
7
  }
@@ -11,4 +11,3 @@ export async function runSelectedInteractiveRuntime(profileId, runners) {
11
11
  ? await runners.ownedUi()
12
12
  : await runners.transparent(selection.profileId);
13
13
  }
14
- //# sourceMappingURL=runtime-selection.js.map
@@ -1,4 +1,4 @@
1
- import { type OwnedUiCommand, type OwnedUiCustomization, type OwnedUiSlotId } from "../../foundation/owned-ui-contracts/index.js";
1
+ import { type OwnedUiCommand, type OwnedUiCustomization, type OwnedUiSlotId, type OwnedUiTranscriptBlock } from "../../foundation/owned-ui-contracts/index.js";
2
2
  export interface OwnedUiSlotImplementation {
3
3
  readonly payload: unknown;
4
4
  render?(input: unknown, width: number): readonly string[];
@@ -32,5 +32,7 @@ export declare class OwnedUiCustomizationRegistry {
32
32
  clear(): void;
33
33
  installCommands(surface: OwnedCommandSurface, sessionId: string): readonly string[];
34
34
  }
35
- export declare function createVanillaUiCustomizationRegistry(): OwnedUiCustomizationRegistry;
36
- //# sourceMappingURL=customization.d.ts.map
35
+ export interface VanillaUiCustomizationPorts {
36
+ readonly renderTranscriptBlock: (block: OwnedUiTranscriptBlock, width: number) => readonly string[];
37
+ }
38
+ export declare function createVanillaUiCustomizationRegistry(ports: VanillaUiCustomizationPorts): OwnedUiCustomizationRegistry;
@@ -1,5 +1,4 @@
1
1
  import { assertOwnedUiCustomization, } from "../../foundation/owned-ui-contracts/index.js";
2
- import { renderPiShellTranscriptBlock } from "../../foundation/pi-component-adapter/index.js";
3
2
  export class OwnedCommandSurface {
4
3
  #handlers = new Map();
5
4
  #sequence = 0;
@@ -81,7 +80,7 @@ export class OwnedUiCustomizationRegistry {
81
80
  return registrations;
82
81
  }
83
82
  }
84
- export function createVanillaUiCustomizationRegistry() {
83
+ export function createVanillaUiCustomizationRegistry(ports) {
85
84
  const registry = new OwnedUiCustomizationRegistry();
86
85
  const register = (slot, id, label, implementation = { payload: {} }) => registry.register({
87
86
  id,
@@ -96,7 +95,7 @@ export function createVanillaUiCustomizationRegistry() {
96
95
  });
97
96
  register("transcript-block", "vanilla-transcript", "Vanilla transcript", {
98
97
  payload: {},
99
- render: (input, width) => renderPiShellTranscriptBlock(input, width, process.cwd()),
98
+ render: (input, width) => ports.renderTranscriptBlock(input, width),
100
99
  });
101
100
  register("tool-card", "vanilla-tool-card", "Vanilla tool cards");
102
101
  register("editor", "vanilla-editor", "Vanilla editor");
@@ -107,4 +106,3 @@ export function createVanillaUiCustomizationRegistry() {
107
106
  register("layout", "vanilla-fullscreen", "Fullscreen session");
108
107
  return registry;
109
108
  }
110
- //# sourceMappingURL=customization.js.map
@@ -31,4 +31,3 @@ export declare class OwnedUiDiagnosticsRecorder {
31
31
  snapshot(): OwnedUiDiagnosticsSnapshot;
32
32
  }
33
33
  export declare function redactDiagnosticMessage(message: string): string;
34
- //# sourceMappingURL=diagnostics.d.ts.map
@@ -92,4 +92,3 @@ function sanitizeDiagnosticCode(code) {
92
92
  throw new TypeError("diagnostic code is invalid");
93
93
  return normalized.slice(0, 128);
94
94
  }
95
- //# sourceMappingURL=diagnostics.js.map
@@ -1,5 +1,3 @@
1
1
  export * from "./customization.js";
2
2
  export * from "./diagnostics.js";
3
3
  export * from "./run.js";
4
- export * from "./pi-session-shell.js";
5
- //# sourceMappingURL=index.d.ts.map
@@ -1,5 +1,3 @@
1
1
  export * from "./customization.js";
2
2
  export * from "./diagnostics.js";
3
3
  export * from "./run.js";
4
- export * from "./pi-session-shell.js";
5
- //# sourceMappingURL=index.js.map
@@ -1,9 +1,5 @@
1
- import { type PiEngineAdapter } from "../../foundation/pi-engine-adapter/index.js";
2
- import type { PiTuiTerminalPort } from "../../foundation/pi-tui-runtime-adapter/index.js";
1
+ import type { OwnedUiApplicationPort } from "../../foundation/presentation-contracts/index.js";
3
2
  export interface OwnedUiRunOptions {
4
- readonly cwd?: string;
5
- readonly terminal?: PiTuiTerminalPort;
6
- readonly adapter?: PiEngineAdapter;
3
+ readonly application: OwnedUiApplicationPort;
7
4
  }
8
- export declare function runOwnedUi(options?: OwnedUiRunOptions): Promise<number>;
9
- //# sourceMappingURL=run.d.ts.map
5
+ export declare function runOwnedUi(options: OwnedUiRunOptions): Promise<number>;
@@ -1,21 +1,13 @@
1
- import { createPiEngineAdapter } from "../../foundation/pi-engine-adapter/index.js";
2
- import { PiSessionShell } from "./pi-session-shell.js";
3
- export async function runOwnedUi(options = {}) {
4
- const cwd = options.cwd ?? process.cwd();
5
- const adapter = options.adapter ?? await createPiEngineAdapter({ cwd });
6
- const shellOptions = options.terminal === undefined
7
- ? { adapter, cwd }
8
- : { adapter, cwd, terminal: options.terminal };
9
- const shell = new PiSessionShell(shellOptions);
1
+ export async function runOwnedUi(options) {
2
+ const { application } = options;
10
3
  try {
11
- shell.start();
12
- await adapter.flushEvents();
13
- if (!adapter.disposed)
14
- await shell.waitUntilStopped();
4
+ application.start();
5
+ await application.flush();
6
+ if (!application.disposed)
7
+ await application.waitUntilStopped();
15
8
  return 0;
16
9
  }
17
10
  finally {
18
- await shell.dispose();
11
+ await application.dispose();
19
12
  }
20
13
  }
21
- //# sourceMappingURL=run.js.map
@@ -29,4 +29,3 @@ export type WorkspaceActionGateResult = {
29
29
  };
30
30
  export declare function gateWorkspaceAction(agent: ManagedAgentDescriptor, action: WorkspaceCapabilityAction): WorkspaceActionGateResult;
31
31
  export declare function availableWorkspaceActions(agent: ManagedAgentDescriptor): readonly WorkspaceCapabilityActionType[];
32
- //# sourceMappingURL=capabilities.d.ts.map
@@ -73,4 +73,3 @@ function allow(action) {
73
73
  function reject(code, diagnostic) {
74
74
  return { kind: "rejected", code, diagnostic };
75
75
  }
76
- //# sourceMappingURL=capabilities.js.map
@@ -4,4 +4,3 @@ export * from "./reconciliation.js";
4
4
  export * from "./reducer.js";
5
5
  export * from "./router.js";
6
6
  export * from "./store.js";
7
- //# sourceMappingURL=index.d.ts.map
@@ -4,4 +4,3 @@ export * from "./reconciliation.js";
4
4
  export * from "./reducer.js";
5
5
  export * from "./router.js";
6
6
  export * from "./store.js";
7
- //# sourceMappingURL=index.js.map
@@ -19,7 +19,7 @@ export interface WorkspaceAgentPresentationRow {
19
19
  }
20
20
  export interface WorkspacePresentationModel {
21
21
  readonly role: "listbox";
22
- readonly label: "AddOne agents";
22
+ readonly label: string;
23
23
  readonly selectedAgentId: string | null;
24
24
  readonly rows: readonly WorkspaceAgentPresentationRow[];
25
25
  readonly overflowCount: number;
@@ -28,4 +28,3 @@ export interface WorkspacePresentationModel {
28
28
  }
29
29
  export declare function presentWorkspace(view: WorkspaceView, options?: WorkspacePresentationOptions): WorkspacePresentationModel;
30
30
  export declare function workspaceSelectionForKey(view: WorkspaceView, key: "ArrowDown" | "ArrowUp" | "Home" | "End"): string | null;
31
- //# sourceMappingURL=presentation.d.ts.map
@@ -1,15 +1,17 @@
1
1
  import { availableWorkspaceActions } from "./capabilities.js";
2
+ import { PRODUCT_TEXT } from "../../product-identity.js";
3
+ const WORKSPACE_LABEL = `${PRODUCT_TEXT.displayName} agents`;
2
4
  export function presentWorkspace(view, options = {}) {
3
5
  const maxRows = boundedInteger(options.maxRows ?? 8, 1, 100, "maximum workspace rows");
4
6
  const maxLabelWidth = boundedInteger(options.maxLabelWidth ?? 32, 8, 64, "maximum workspace label width");
5
7
  const rows = view.agents.slice(0, maxRows).map(agent => presentAgent(agent, view.selectedAgentId === agent.id, maxLabelWidth));
6
8
  const overflowCount = Math.max(0, view.agents.length - rows.length);
7
9
  const text = rows.length === 0
8
- ? "AddOne agents\nNo managed agents."
9
- : ["AddOne agents", ...rows.map(row => row.text), ...(overflowCount > 0 ? [`… ${overflowCount} more`] : [])].join("\n");
10
+ ? `${WORKSPACE_LABEL}\nNo managed agents.`
11
+ : [WORKSPACE_LABEL, ...rows.map(row => row.text), ...(overflowCount > 0 ? [`… ${overflowCount} more`] : [])].join("\n");
10
12
  return Object.freeze({
11
13
  role: "listbox",
12
- label: "AddOne agents",
14
+ label: WORKSPACE_LABEL,
13
15
  selectedAgentId: view.selectedAgentId,
14
16
  rows: Object.freeze(rows),
15
17
  overflowCount,
@@ -66,4 +68,3 @@ function boundedInteger(value, minimum, maximum, name) {
66
68
  }
67
69
  return value;
68
70
  }
69
- //# sourceMappingURL=presentation.js.map
@@ -13,4 +13,3 @@ export interface WorkspaceReconciliationReport {
13
13
  readonly entries: readonly WorkspaceReconciliationEntry[];
14
14
  }
15
15
  export declare function reconcileWorkspaceRestart(reducer: WorkspaceReducer, store: WorkspaceStore, proofs: ReadonlyMap<string, StructuredResumeProof>, reconciledAt?: string): WorkspaceReconciliationReport;
16
- //# sourceMappingURL=reconciliation.d.ts.map
@@ -80,4 +80,3 @@ function persistRecoveryOutcome(store, authority, previousStatus, status, reconc
80
80
  function entry(agentId, outcome, code, diagnostic) {
81
81
  return Object.freeze({ agentId, outcome, code, diagnostic });
82
82
  }
83
- //# sourceMappingURL=reconciliation.js.map
@@ -40,4 +40,3 @@ export declare class WorkspaceReducer {
40
40
  markFailed(agentId: string, code: string, message: string): WorkspaceReducerResult<WorkspaceAgentState>;
41
41
  view(): WorkspaceView;
42
42
  }
43
- //# sourceMappingURL=reducer.d.ts.map
@@ -211,4 +211,3 @@ function assertDisplayName(value) {
211
211
  throw new TypeError("workspace display name is invalid");
212
212
  }
213
213
  }
214
- //# sourceMappingURL=reducer.js.map
@@ -29,4 +29,3 @@ export declare class WorkspaceRouter {
29
29
  cancelStructuredCommand(agentId: string, targetCorrelationId: string): Promise<WorkspaceRouterResult<StructuredCommandRecord>>;
30
30
  view(): WorkspaceView;
31
31
  }
32
- //# sourceMappingURL=router.d.ts.map
@@ -122,4 +122,3 @@ function applied(view, value) {
122
122
  function reject(code, diagnostic) {
123
123
  return { kind: "rejected", code, diagnostic };
124
124
  }
125
- //# sourceMappingURL=router.js.map
@@ -15,4 +15,3 @@ export declare class WorkspaceStore {
15
15
  persistRecoveryReference(authority: AgentRecoveryAuthority, status: "pending" | "accepted" | "rejected" | "discontinuous", rollbackMetadata: Readonly<Record<string, unknown>>, updatedAt?: string): void;
16
16
  close(): void;
17
17
  }
18
- //# sourceMappingURL=store.d.ts.map
@@ -52,4 +52,3 @@ function toWorkspaceAgent(record) {
52
52
  failure: record.presentation.failure,
53
53
  };
54
54
  }
55
- //# sourceMappingURL=store.js.map
@@ -0,0 +1,95 @@
1
+ import type { AgentJsonValue, AgentModelDescriptor, AgentResourceDescriptor, AgentSettingDescriptor } from "./domain.js";
2
+ export interface AgentModelPort {
3
+ readonly capabilities: {
4
+ readonly selection: boolean;
5
+ readonly refresh: boolean;
6
+ readonly scopedCatalog: boolean;
7
+ };
8
+ listModels(scope?: string): Promise<readonly AgentModelDescriptor[]>;
9
+ currentModel(): Promise<AgentModelDescriptor | null>;
10
+ selectModel?(providerId: string, modelId: string): Promise<void>;
11
+ refreshModels?(): Promise<void>;
12
+ }
13
+ export interface AgentAuthenticationPort {
14
+ readonly capabilities: {
15
+ readonly login: boolean;
16
+ readonly logout: boolean;
17
+ };
18
+ status(providerId: string): Promise<"authenticated" | "unauthenticated" | "unavailable">;
19
+ login?(providerId: string, signal?: AbortSignal): Promise<void>;
20
+ logout?(providerId: string): Promise<void>;
21
+ }
22
+ export interface AgentSettingsPort {
23
+ readonly capabilities: {
24
+ readonly write: boolean;
25
+ readonly flush: boolean;
26
+ };
27
+ listSettings(): Promise<readonly AgentSettingDescriptor[]>;
28
+ readSetting(key: string): Promise<AgentJsonValue | undefined>;
29
+ writeSetting?(key: string, value: AgentJsonValue): Promise<void>;
30
+ flush?(): Promise<void>;
31
+ }
32
+ export interface AgentResourcesPort {
33
+ readonly capabilities: {
34
+ readonly reload: boolean;
35
+ readonly extensionBinding: boolean;
36
+ };
37
+ discoverResources(): Promise<readonly AgentResourceDescriptor[]>;
38
+ reload?(): Promise<void>;
39
+ bindExtensions?(sessionId: string): Promise<AgentExtensionBinding>;
40
+ }
41
+ export interface AgentExtensionBinding {
42
+ readonly sessionId: string;
43
+ dispose(): Promise<void>;
44
+ }
45
+ export interface AgentExtensionCommand {
46
+ readonly name: string;
47
+ readonly description: string;
48
+ }
49
+ export interface AgentSessionMetadata {
50
+ readonly sessionId: string;
51
+ readonly sessionName: string | null;
52
+ readonly sessionPath: string | null;
53
+ readonly cwd: string;
54
+ }
55
+ export interface AgentExtensionFailure {
56
+ readonly extensionPath: string | null;
57
+ readonly operation: string;
58
+ readonly message: string;
59
+ readonly recoverable: boolean;
60
+ }
61
+ export interface AgentExtensionPort {
62
+ readonly capabilities: {
63
+ readonly reload: boolean;
64
+ readonly binding: boolean;
65
+ readonly renderers: boolean;
66
+ };
67
+ discoverCommands(): Promise<readonly AgentExtensionCommand[]>;
68
+ sessionMetadata(): Promise<AgentSessionMetadata>;
69
+ bind?(sessionId: string): Promise<AgentExtensionBinding>;
70
+ reload?(): Promise<void>;
71
+ resolveMessageRenderer?(customType: string): unknown;
72
+ resolveToolRenderer?(toolName: string): unknown;
73
+ subscribeFailures(listener: (failure: AgentExtensionFailure) => void): () => void;
74
+ }
75
+ export interface AgentWorkflowDescriptor {
76
+ readonly id: string;
77
+ readonly label: string;
78
+ readonly requiredCommands: readonly string[];
79
+ }
80
+ export interface AgentWorkflowPort {
81
+ readonly capabilities: {
82
+ readonly execute: boolean;
83
+ };
84
+ listWorkflows(): Promise<readonly AgentWorkflowDescriptor[]>;
85
+ executeWorkflow?(workflowId: string, input: AgentJsonValue, signal?: AbortSignal): Promise<AgentJsonValue>;
86
+ }
87
+ export interface AgentServicePorts {
88
+ readonly models: AgentModelPort;
89
+ readonly authentication: AgentAuthenticationPort;
90
+ readonly settings: AgentSettingsPort;
91
+ readonly resources: AgentResourcesPort;
92
+ readonly extensions: AgentExtensionPort;
93
+ readonly workflows: AgentWorkflowPort;
94
+ }
95
+ export declare function assertAgentServicePorts(ports: AgentServicePorts): void;
@@ -0,0 +1,35 @@
1
+ export function assertAgentServicePorts(ports) {
2
+ required(ports.models, ["listModels", "currentModel"], "model");
3
+ advertised(ports.models, "selection", "selectModel", "model");
4
+ advertised(ports.models, "refresh", "refreshModels", "model");
5
+ required(ports.authentication, ["status"], "authentication");
6
+ advertised(ports.authentication, "login", "login", "authentication");
7
+ advertised(ports.authentication, "logout", "logout", "authentication");
8
+ required(ports.settings, ["listSettings", "readSetting"], "settings");
9
+ advertised(ports.settings, "write", "writeSetting", "settings");
10
+ advertised(ports.settings, "flush", "flush", "settings");
11
+ required(ports.resources, ["discoverResources"], "resources");
12
+ advertised(ports.resources, "reload", "reload", "resources");
13
+ advertised(ports.resources, "extensionBinding", "bindExtensions", "resources");
14
+ required(ports.extensions, ["discoverCommands", "sessionMetadata", "subscribeFailures"], "extensions");
15
+ advertised(ports.extensions, "reload", "reload", "extensions");
16
+ advertised(ports.extensions, "binding", "bind", "extensions");
17
+ advertised(ports.extensions, "renderers", "resolveMessageRenderer", "extensions");
18
+ advertised(ports.extensions, "renderers", "resolveToolRenderer", "extensions");
19
+ required(ports.workflows, ["listWorkflows"], "workflow");
20
+ advertised(ports.workflows, "execute", "executeWorkflow", "workflow");
21
+ }
22
+ function required(port, operations, label) {
23
+ if (!port || typeof port.capabilities !== "object")
24
+ throw new TypeError(`${label} port and capabilities are required`);
25
+ for (const operation of operations)
26
+ if (typeof port[operation] !== "function")
27
+ throw new TypeError(`${label} port requires ${operation}`);
28
+ }
29
+ function advertised(port, capability, operation, label) {
30
+ const enabled = port.capabilities[capability];
31
+ if (typeof enabled !== "boolean")
32
+ throw new TypeError(`${label} capability ${capability} must be explicit`);
33
+ if (enabled && typeof port[operation] !== "function")
34
+ throw new TypeError(`${label} capability ${capability} requires ${operation}`);
35
+ }
@@ -0,0 +1,12 @@
1
+ import type { AgentDomainCapabilities, AgentFailure, AgentMessage, AgentMessageContent, AgentModelDescriptor, AgentResourceDescriptor, AgentSettingDescriptor, AgentThemeDescriptor, AgentToolDescriptor, AgentUiContribution, AgentUsage } from "./domain.js";
2
+ export declare function assertAgentDomainCapabilities(value: AgentDomainCapabilities): void;
3
+ export declare function assertAgentMessage(message: AgentMessage): void;
4
+ export declare function assertAgentMessageContent(content: AgentMessageContent): void;
5
+ export declare function assertAgentToolDescriptor(value: AgentToolDescriptor): void;
6
+ export declare function assertAgentUsage(value: AgentUsage): void;
7
+ export declare function assertAgentModelDescriptor(value: AgentModelDescriptor): void;
8
+ export declare function assertAgentSettingDescriptor(value: AgentSettingDescriptor): void;
9
+ export declare function assertAgentResourceDescriptor(value: AgentResourceDescriptor): void;
10
+ export declare function assertAgentThemeDescriptor(value: AgentThemeDescriptor): void;
11
+ export declare function assertAgentUiContribution(value: AgentUiContribution): void;
12
+ export declare function assertAgentFailure(value: AgentFailure): void;
@@ -0,0 +1,89 @@
1
+ const CONTENT = new Set(["text", "thinking", "image", "tool-call", "tool-result", "unknown"]);
2
+ const CAPABILITIES = {
3
+ tools: new Set(["discovery", "invocation", "streaming-results"]),
4
+ usage: new Set(["tokens", "cache", "cost"]),
5
+ models: new Set(["discovery", "selection", "thinking-level"]),
6
+ settings: new Set(["read", "write"]),
7
+ resources: new Set(["commands", "prompts", "skills", "extensions", "themes"]),
8
+ uiContributions: new Set(["transcript", "tool", "editor", "status", "dialog", "overlay", "unknown"]),
9
+ };
10
+ const FAILURES = new Set(["configuration", "authentication", "authorization", "network", "rate-limit", "context-limit", "tool", "cancelled", "engine", "unknown"]);
11
+ export function assertAgentDomainCapabilities(value) {
12
+ unique(value.messageContent, CONTENT, "message content capability");
13
+ for (const [key, allowed] of Object.entries(CAPABILITIES))
14
+ unique(value[key], allowed, `${key} capability`);
15
+ }
16
+ export function assertAgentMessage(message) {
17
+ id(message.id, "message id");
18
+ if (!["user", "assistant", "tool", "system"].includes(message.role) || !["streaming", "final"].includes(message.status))
19
+ throw new TypeError("message metadata is invalid");
20
+ if (!Array.isArray(message.content) || message.content.length === 0)
21
+ throw new TypeError("message content is empty");
22
+ for (const content of message.content)
23
+ assertAgentMessageContent(content);
24
+ }
25
+ export function assertAgentMessageContent(content) {
26
+ if (!CONTENT.has(content.kind))
27
+ throw new TypeError("message content kind is unknown and must use the unknown envelope");
28
+ if (content.kind === "text" || content.kind === "thinking")
29
+ text(content.text, "message text", true);
30
+ if (content.kind === "image") {
31
+ text(content.mediaType, "image media type");
32
+ text(content.data, "image data");
33
+ }
34
+ if (content.kind === "tool-call") {
35
+ id(content.invocationId, "tool invocation id");
36
+ id(content.toolName, "tool name");
37
+ json(content.input, "tool input");
38
+ }
39
+ if (content.kind === "tool-result") {
40
+ id(content.invocationId, "tool result invocation id");
41
+ json(content.output, "tool output");
42
+ if (typeof content.failed !== "boolean")
43
+ throw new TypeError("tool result failure flag is invalid");
44
+ }
45
+ if (content.kind === "unknown") {
46
+ text(content.sourceType, "unknown content source type");
47
+ json(content.payload, "unknown content payload");
48
+ }
49
+ }
50
+ export function assertAgentToolDescriptor(value) { id(value.name, "tool name"); text(value.description, "tool description", true); json(value.inputSchema, "tool input schema"); }
51
+ export function assertAgentUsage(value) { for (const amount of [value.inputTokens, value.outputTokens, value.cacheReadTokens, value.cacheWriteTokens])
52
+ nonNegative(amount, "usage token count"); if (value.cost !== null && (!(typeof value.cost === "number") || !Number.isFinite(value.cost) || value.cost < 0))
53
+ throw new TypeError("usage cost is invalid"); }
54
+ export function assertAgentModelDescriptor(value) { id(value.providerId, "model provider id"); id(value.modelId, "model id"); text(value.displayName, "model display name"); nonNegative(value.contextWindow, "model context window"); unique(value.thinkingLevels, undefined, "model thinking levels"); }
55
+ export function assertAgentSettingDescriptor(value) { id(value.key, "setting key"); if (!["boolean", "number", "string", "enum", "json"].includes(value.valueType) || typeof value.writable !== "boolean")
56
+ throw new TypeError("setting descriptor is invalid"); if (value.choices)
57
+ for (const choice of value.choices)
58
+ json(choice, "setting choice"); }
59
+ export function assertAgentResourceDescriptor(value) { id(value.id, "resource id"); if (!["command", "prompt", "skill", "extension", "other"].includes(value.kind))
60
+ throw new TypeError("resource kind is invalid"); text(value.label, "resource label"); json(value.metadata, "resource metadata"); }
61
+ export function assertAgentThemeDescriptor(value) { id(value.id, "theme id"); text(value.label, "theme label"); if (!value.tokens || typeof value.tokens !== "object" || Object.values(value.tokens).some(token => typeof token !== "string"))
62
+ throw new TypeError("theme tokens are invalid"); }
63
+ export function assertAgentUiContribution(value) { id(value.id, "UI contribution id"); if (!CAPABILITIES.uiContributions.has(value.slot) || !Number.isSafeInteger(value.version) || value.version < 1)
64
+ throw new TypeError("UI contribution metadata is invalid"); json(value.payload, "UI contribution payload"); }
65
+ export function assertAgentFailure(value) { if (!FAILURES.has(value.category))
66
+ throw new TypeError("failure category is invalid"); id(value.code, "failure code"); text(value.message, "failure message"); if (typeof value.retryable !== "boolean")
67
+ throw new TypeError("failure retryability is invalid"); json(value.details, "failure details"); }
68
+ function unique(values, allowed, label) { if (!Array.isArray(values))
69
+ throw new TypeError(`${label} must be an array`); const found = new Set(); for (const value of values) {
70
+ if ((allowed && !allowed.has(value)) || typeof value !== "string")
71
+ throw new TypeError(`${label} is invalid: ${String(value)}`);
72
+ if (found.has(value))
73
+ throw new TypeError(`${label} is duplicated: ${String(value)}`);
74
+ found.add(value);
75
+ } }
76
+ function id(value, label) { if (typeof value !== "string" || !/^[A-Za-z0-9][A-Za-z0-9._:/-]{0,127}$/.test(value))
77
+ throw new TypeError(`${label} is invalid`); }
78
+ function text(value, label, empty = false) { if (typeof value !== "string" || (!empty && value.length === 0) || Buffer.byteLength(value) > 256 * 1024)
79
+ throw new TypeError(`${label} is invalid`); }
80
+ function nonNegative(value, label) { if (!Number.isSafeInteger(value) || value < 0)
81
+ throw new TypeError(`${label} is invalid`); }
82
+ function json(value, label) { try {
83
+ const encoded = JSON.stringify(value);
84
+ if (encoded === undefined || Buffer.byteLength(encoded) > 256 * 1024)
85
+ throw new Error();
86
+ }
87
+ catch {
88
+ throw new TypeError(`${label} must be bounded JSON`);
89
+ } }