@angelmsger/fx 0.11.0 → 0.12.0

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 (548) hide show
  1. package/CHANGELOG.md +110 -0
  2. package/README.md +9 -42
  3. package/defaults/tools.yaml +6 -1
  4. package/dist/adapters/agent-host/toml-mcp.js +1 -3
  5. package/dist/adapters/agent-host/toml-mcp.js.map +1 -1
  6. package/dist/adapters/calendar/wecom-calendar-cli/provider.js +42 -0
  7. package/dist/adapters/calendar/wecom-calendar-cli/provider.js.map +1 -0
  8. package/dist/adapters/ci/github-actions/ci.js +9 -7
  9. package/dist/adapters/ci/github-actions/ci.js.map +1 -1
  10. package/dist/adapters/ci/github-actions/provider.js +2 -2
  11. package/dist/adapters/ci/github-actions/provider.js.map +1 -1
  12. package/dist/adapters/ci/jenkins-cli/ci.js +6 -1
  13. package/dist/adapters/ci/jenkins-cli/ci.js.map +1 -1
  14. package/dist/adapters/cluster/kubectl/provider.js +2 -3
  15. package/dist/adapters/cluster/kubectl/provider.js.map +1 -1
  16. package/dist/adapters/code-host/bitbucket-cli/contribution-call.js +5 -27
  17. package/dist/adapters/code-host/bitbucket-cli/contribution-call.js.map +1 -1
  18. package/dist/adapters/code-host/bitbucket-cli/provider.js.map +1 -1
  19. package/dist/adapters/code-host/bitbucket-cli/pull-request-reference.js +1 -19
  20. package/dist/adapters/code-host/bitbucket-cli/pull-request-reference.js.map +1 -1
  21. package/dist/adapters/code-host/bitbucket-cli/pull-request.js +3 -17
  22. package/dist/adapters/code-host/bitbucket-cli/pull-request.js.map +1 -1
  23. package/dist/adapters/code-host/bitbucket-cli/repository-identity.js +1 -4
  24. package/dist/adapters/code-host/bitbucket-cli/repository-identity.js.map +1 -1
  25. package/dist/adapters/code-host/github/contribution.js +179 -0
  26. package/dist/adapters/code-host/github/contribution.js.map +1 -0
  27. package/dist/adapters/code-host/github/import.js +27 -0
  28. package/dist/adapters/code-host/github/import.js.map +1 -0
  29. package/dist/adapters/code-host/github/provider.js +12 -14
  30. package/dist/adapters/code-host/github/provider.js.map +1 -1
  31. package/dist/adapters/code-host/local-git/import.js +2 -2
  32. package/dist/adapters/code-host/local-git/import.js.map +1 -1
  33. package/dist/adapters/code-host/local-git/provider.js +3 -3
  34. package/dist/adapters/code-host/local-git/provider.js.map +1 -1
  35. package/dist/adapters/error-tracker/sentry/client.js +1 -1
  36. package/dist/adapters/error-tracker/sentry/client.js.map +1 -1
  37. package/dist/adapters/family/cli.js +15 -17
  38. package/dist/adapters/family/cli.js.map +1 -1
  39. package/dist/adapters/family/contribution.js +65 -0
  40. package/dist/adapters/family/contribution.js.map +1 -0
  41. package/dist/adapters/family/service-protocol.js +1 -0
  42. package/dist/adapters/family/service-protocol.js.map +1 -1
  43. package/dist/adapters/fs/node-fs.js +5 -8
  44. package/dist/adapters/fs/node-fs.js.map +1 -1
  45. package/dist/adapters/git/run.js +17 -0
  46. package/dist/adapters/git/run.js.map +1 -0
  47. package/dist/adapters/git/system-git.js +36 -16
  48. package/dist/adapters/git/system-git.js.map +1 -1
  49. package/dist/adapters/github/gh.js +1 -1
  50. package/dist/adapters/github/gh.js.map +1 -1
  51. package/dist/adapters/manifest-source/git-repo.js +38 -18
  52. package/dist/adapters/manifest-source/git-repo.js.map +1 -1
  53. package/dist/adapters/manifest-source/stdin.js +4 -6
  54. package/dist/adapters/manifest-source/stdin.js.map +1 -1
  55. package/dist/adapters/metrics/prometheus-cli/service.js +9 -1
  56. package/dist/adapters/metrics/prometheus-cli/service.js.map +1 -1
  57. package/dist/adapters/process/deadline-process.js +7 -3
  58. package/dist/adapters/process/deadline-process.js.map +1 -1
  59. package/dist/adapters/process/diagnostic-process.js +2 -3
  60. package/dist/adapters/process/diagnostic-process.js.map +1 -1
  61. package/dist/adapters/registry/registry-policy.js +4 -14
  62. package/dist/adapters/registry/registry-policy.js.map +1 -1
  63. package/dist/application/agent/list.js +12 -0
  64. package/dist/application/agent/list.js.map +1 -1
  65. package/dist/application/agent/pick.js +12 -30
  66. package/dist/application/agent/pick.js.map +1 -1
  67. package/dist/application/agent/workspace-cleanup.js +4 -1
  68. package/dist/application/agent/workspace-cleanup.js.map +1 -1
  69. package/dist/application/config/export.js +3 -2
  70. package/dist/application/config/export.js.map +1 -1
  71. package/dist/application/config/import-registry.js +3 -3
  72. package/dist/application/config/import-registry.js.map +1 -1
  73. package/dist/application/config/import.js +12 -4
  74. package/dist/application/config/import.js.map +1 -1
  75. package/dist/application/config/resolve.js +2 -4
  76. package/dist/application/config/resolve.js.map +1 -1
  77. package/dist/application/contribution/identity.js +3 -3
  78. package/dist/application/contribution/identity.js.map +1 -1
  79. package/dist/application/contribution/push-registered.js +77 -0
  80. package/dist/application/contribution/push-registered.js.map +1 -0
  81. package/dist/application/contribution/push.js +12 -19
  82. package/dist/application/contribution/push.js.map +1 -1
  83. package/dist/application/contribution/validate.js +12 -13
  84. package/dist/application/contribution/validate.js.map +1 -1
  85. package/dist/application/docs/rendered.js +2 -1
  86. package/dist/application/docs/rendered.js.map +1 -1
  87. package/dist/application/doctor/index.js +43 -27
  88. package/dist/application/doctor/index.js.map +1 -1
  89. package/dist/application/doctor/manifest.js +5 -1
  90. package/dist/application/doctor/manifest.js.map +1 -1
  91. package/dist/application/doctor/repos.js +1 -1
  92. package/dist/application/doctor/repos.js.map +1 -1
  93. package/dist/application/doctor/tools.js +20 -31
  94. package/dist/application/doctor/tools.js.map +1 -1
  95. package/dist/application/doctor/types.js +0 -8
  96. package/dist/application/doctor/types.js.map +1 -1
  97. package/dist/application/env/names.js.map +1 -1
  98. package/dist/application/harness/apply.js +4 -3
  99. package/dist/application/harness/apply.js.map +1 -1
  100. package/dist/application/harness/cleanup.js +5 -14
  101. package/dist/application/harness/cleanup.js.map +1 -1
  102. package/dist/application/harness/mcp-readiness.js +3 -1
  103. package/dist/application/harness/mcp-readiness.js.map +1 -1
  104. package/dist/application/harness/names.js +2 -4
  105. package/dist/application/harness/names.js.map +1 -1
  106. package/dist/application/harness/plan.js +12 -10
  107. package/dist/application/harness/plan.js.map +1 -1
  108. package/dist/application/harness/reconcile.js +4 -14
  109. package/dist/application/harness/reconcile.js.map +1 -1
  110. package/dist/application/harness/session.js +2 -13
  111. package/dist/application/harness/session.js.map +1 -1
  112. package/dist/application/harness/stages.js +8 -18
  113. package/dist/application/harness/stages.js.map +1 -1
  114. package/dist/application/harness/types.js +1 -8
  115. package/dist/application/harness/types.js.map +1 -1
  116. package/dist/application/hook/apply.js +5 -4
  117. package/dist/application/hook/apply.js.map +1 -1
  118. package/dist/application/hook/automatic-sync.js +8 -3
  119. package/dist/application/hook/automatic-sync.js.map +1 -1
  120. package/dist/application/hook/cleanup.js +5 -14
  121. package/dist/application/hook/cleanup.js.map +1 -1
  122. package/dist/application/hook/dispatch.js +24 -3
  123. package/dist/application/hook/dispatch.js.map +1 -1
  124. package/dist/application/hook/observe.js +11 -9
  125. package/dist/application/hook/observe.js.map +1 -1
  126. package/dist/application/hook/plan.js.map +1 -1
  127. package/dist/application/hook/reconcile.js +2 -9
  128. package/dist/application/hook/reconcile.js.map +1 -1
  129. package/dist/application/hook/session.js +5 -12
  130. package/dist/application/hook/session.js.map +1 -1
  131. package/dist/application/hook/supervisor-report.js +2 -1
  132. package/dist/application/hook/supervisor-report.js.map +1 -1
  133. package/dist/application/hook/types.js +8 -1
  134. package/dist/application/hook/types.js.map +1 -1
  135. package/dist/application/init/errors.js +19 -19
  136. package/dist/application/init/errors.js.map +1 -1
  137. package/dist/application/init/index.js +60 -42
  138. package/dist/application/init/index.js.map +1 -1
  139. package/dist/application/init/preview-initialization.js +40 -0
  140. package/dist/application/init/preview-initialization.js.map +1 -0
  141. package/dist/application/init/preview.js +37 -19
  142. package/dist/application/init/preview.js.map +1 -1
  143. package/dist/application/init/resume.js +30 -0
  144. package/dist/application/init/resume.js.map +1 -0
  145. package/dist/application/init/source.js +8 -0
  146. package/dist/application/init/source.js.map +1 -0
  147. package/dist/application/{doctor/login.js → login/check.js} +22 -43
  148. package/dist/application/login/check.js.map +1 -0
  149. package/dist/application/login/collect.js +2 -1
  150. package/dist/application/login/collect.js.map +1 -1
  151. package/dist/application/login/command-failure.js +2 -0
  152. package/dist/application/login/command-failure.js.map +1 -1
  153. package/dist/application/login/deps.js +2 -3
  154. package/dist/application/login/deps.js.map +1 -1
  155. package/dist/application/login/run.js +149 -54
  156. package/dist/application/login/run.js.map +1 -1
  157. package/dist/application/login/stage.js +146 -0
  158. package/dist/application/login/stage.js.map +1 -0
  159. package/dist/application/login/verify.js +45 -34
  160. package/dist/application/login/verify.js.map +1 -1
  161. package/dist/application/manifest/context.js +5 -1
  162. package/dist/application/manifest/context.js.map +1 -1
  163. package/dist/application/{import.js → manifest/import.js} +34 -27
  164. package/dist/application/manifest/import.js.map +1 -0
  165. package/dist/application/manifest/lint.js +15 -23
  166. package/dist/application/manifest/lint.js.map +1 -1
  167. package/dist/application/manifest/load.js +7 -11
  168. package/dist/application/manifest/load.js.map +1 -1
  169. package/dist/application/manifest/prepare.js +3 -2
  170. package/dist/application/manifest/prepare.js.map +1 -1
  171. package/dist/application/manifest/providers.js +4 -1
  172. package/dist/application/manifest/providers.js.map +1 -1
  173. package/dist/application/{refresh-manifest.js → manifest/refresh.js} +26 -2
  174. package/dist/application/manifest/refresh.js.map +1 -0
  175. package/dist/application/manifest/set.js +2 -1
  176. package/dist/application/manifest/set.js.map +1 -1
  177. package/dist/application/member/list.js +2 -4
  178. package/dist/application/member/list.js.map +1 -1
  179. package/dist/application/member/show.js +2 -3
  180. package/dist/application/member/show.js.map +1 -1
  181. package/dist/application/preparation.js +92 -25
  182. package/dist/application/preparation.js.map +1 -1
  183. package/dist/application/probe-record/index.js +19 -18
  184. package/dist/application/probe-record/index.js.map +1 -1
  185. package/dist/application/probe-record/plan.js +6 -4
  186. package/dist/application/probe-record/plan.js.map +1 -1
  187. package/dist/application/{can.js → readiness/can.js} +23 -11
  188. package/dist/application/readiness/can.js.map +1 -0
  189. package/dist/application/readiness/index.js +22 -35
  190. package/dist/application/readiness/index.js.map +1 -1
  191. package/dist/application/readiness/resolve.js +13 -15
  192. package/dist/application/readiness/resolve.js.map +1 -1
  193. package/dist/application/readiness/verdicts.js +2 -7
  194. package/dist/application/readiness/verdicts.js.map +1 -1
  195. package/dist/application/{where.js → readiness/where.js} +19 -21
  196. package/dist/application/readiness/where.js.map +1 -0
  197. package/dist/application/release/ci.js +1 -1
  198. package/dist/application/release/ci.js.map +1 -1
  199. package/dist/application/release/index.js +12 -17
  200. package/dist/application/release/index.js.map +1 -1
  201. package/dist/application/safety/trust.js +12 -14
  202. package/dist/application/safety/trust.js.map +1 -1
  203. package/dist/application/self/update.js +23 -13
  204. package/dist/application/self/update.js.map +1 -1
  205. package/dist/application/services/command.js +6 -8
  206. package/dist/application/services/command.js.map +1 -1
  207. package/dist/application/services/operation.js +12 -19
  208. package/dist/application/services/operation.js.map +1 -1
  209. package/dist/application/services/recipes.js +7 -2
  210. package/dist/application/services/recipes.js.map +1 -1
  211. package/dist/application/services/stage.js +6 -4
  212. package/dist/application/services/stage.js.map +1 -1
  213. package/dist/application/services/types.js +7 -1
  214. package/dist/application/services/types.js.map +1 -1
  215. package/dist/application/skill/copies.js +13 -22
  216. package/dist/application/skill/copies.js.map +1 -1
  217. package/dist/application/skill/fx-copies.js +1 -1
  218. package/dist/application/skill/fx-copies.js.map +1 -1
  219. package/dist/application/skill/stage.js +24 -26
  220. package/dist/application/skill/stage.js.map +1 -1
  221. package/dist/application/skill/standalone.js +1 -1
  222. package/dist/application/skill/standalone.js.map +1 -1
  223. package/dist/application/skill/targets.js +2 -16
  224. package/dist/application/skill/targets.js.map +1 -1
  225. package/dist/application/skill/tool-skills.js +20 -10
  226. package/dist/application/skill/tool-skills.js.map +1 -1
  227. package/dist/application/sync/checks.js +7 -45
  228. package/dist/application/sync/checks.js.map +1 -1
  229. package/dist/application/sync/index.js +76 -26
  230. package/dist/application/sync/index.js.map +1 -1
  231. package/dist/application/sync/stages.js +33 -26
  232. package/dist/application/sync/stages.js.map +1 -1
  233. package/dist/application/sync/types.js +6 -1
  234. package/dist/application/sync/types.js.map +1 -1
  235. package/dist/application/tool/check.js +8 -0
  236. package/dist/application/tool/check.js.map +1 -1
  237. package/dist/application/tool/history.js +16 -0
  238. package/dist/application/tool/history.js.map +1 -0
  239. package/dist/application/tool/initialize.js +2 -1
  240. package/dist/application/tool/initialize.js.map +1 -1
  241. package/dist/application/tool/install.js +15 -18
  242. package/dist/application/tool/install.js.map +1 -1
  243. package/dist/application/tool/installed.js +1 -1
  244. package/dist/application/tool/installed.js.map +1 -1
  245. package/dist/application/tool/list.js.map +1 -1
  246. package/dist/application/tool/scope.js +8 -7
  247. package/dist/application/tool/scope.js.map +1 -1
  248. package/dist/application/tool/select.js +2 -4
  249. package/dist/application/tool/select.js.map +1 -1
  250. package/dist/application/tool/show.js.map +1 -1
  251. package/dist/application/tool/toolchain.js +19 -6
  252. package/dist/application/tool/toolchain.js.map +1 -1
  253. package/dist/application/update/check.js +2 -1
  254. package/dist/application/update/check.js.map +1 -1
  255. package/dist/application/workspace/command-operation.js +4 -3
  256. package/dist/application/workspace/command-operation.js.map +1 -1
  257. package/dist/application/{workspace-context.js → workspace/context.js} +26 -19
  258. package/dist/application/workspace/context.js.map +1 -0
  259. package/dist/application/workspace/deps.js +3 -3
  260. package/dist/application/workspace/deps.js.map +1 -1
  261. package/dist/application/workspace/guidance.js +2 -4
  262. package/dist/application/workspace/guidance.js.map +1 -1
  263. package/dist/application/workspace/health.js +4 -2
  264. package/dist/application/workspace/health.js.map +1 -1
  265. package/dist/application/workspace/inspect.js +1 -4
  266. package/dist/application/workspace/inspect.js.map +1 -1
  267. package/dist/application/workspace/manage.js +83 -97
  268. package/dist/application/workspace/manage.js.map +1 -1
  269. package/dist/application/workspace/operation.js +13 -14
  270. package/dist/application/workspace/operation.js.map +1 -1
  271. package/dist/application/workspace/plan.js +2 -1
  272. package/dist/application/workspace/plan.js.map +1 -1
  273. package/dist/application/workspace/registry.js +4 -3
  274. package/dist/application/workspace/registry.js.map +1 -1
  275. package/dist/application/workspace/resolve.js +10 -12
  276. package/dist/application/workspace/resolve.js.map +1 -1
  277. package/dist/application/workspace/resources.js +39 -32
  278. package/dist/application/workspace/resources.js.map +1 -1
  279. package/dist/application/workspace/source-preview.js +6 -3
  280. package/dist/application/workspace/source-preview.js.map +1 -1
  281. package/dist/application/{status.js → workspace/status.js} +51 -6
  282. package/dist/application/workspace/status.js.map +1 -0
  283. package/dist/cli/base.js +22 -28
  284. package/dist/cli/base.js.map +1 -1
  285. package/dist/cli/commands/agent/pick.js +4 -1
  286. package/dist/cli/commands/agent/pick.js.map +1 -1
  287. package/dist/cli/commands/agent/unpick.js +5 -1
  288. package/dist/cli/commands/agent/unpick.js.map +1 -1
  289. package/dist/cli/commands/can.js +5 -21
  290. package/dist/cli/commands/can.js.map +1 -1
  291. package/dist/cli/commands/config/import.js +1 -8
  292. package/dist/cli/commands/config/import.js.map +1 -1
  293. package/dist/cli/commands/doctor.js +2 -1
  294. package/dist/cli/commands/doctor.js.map +1 -1
  295. package/dist/cli/commands/env/pick.js +1 -0
  296. package/dist/cli/commands/env/pick.js.map +1 -1
  297. package/dist/cli/commands/env/select.js +1 -0
  298. package/dist/cli/commands/env/select.js.map +1 -1
  299. package/dist/cli/commands/env/unpick.js +1 -0
  300. package/dist/cli/commands/env/unpick.js.map +1 -1
  301. package/dist/cli/commands/hook/disable.js +1 -0
  302. package/dist/cli/commands/hook/disable.js.map +1 -1
  303. package/dist/cli/commands/hook/enable.js +1 -0
  304. package/dist/cli/commands/hook/enable.js.map +1 -1
  305. package/dist/cli/commands/init.js +14 -11
  306. package/dist/cli/commands/init.js.map +1 -1
  307. package/dist/cli/commands/login.js +13 -2
  308. package/dist/cli/commands/login.js.map +1 -1
  309. package/dist/cli/commands/manifest/import.js +6 -2
  310. package/dist/cli/commands/manifest/import.js.map +1 -1
  311. package/dist/cli/commands/manifest/lint.js +5 -1
  312. package/dist/cli/commands/manifest/lint.js.map +1 -1
  313. package/dist/cli/commands/manifest/record-probe.js +1 -0
  314. package/dist/cli/commands/manifest/record-probe.js.map +1 -1
  315. package/dist/cli/commands/manifest/render.js +1 -0
  316. package/dist/cli/commands/manifest/render.js.map +1 -1
  317. package/dist/cli/commands/manifest/repo-set.js +1 -0
  318. package/dist/cli/commands/manifest/repo-set.js.map +1 -1
  319. package/dist/cli/commands/repo/add.js +1 -0
  320. package/dist/cli/commands/repo/add.js.map +1 -1
  321. package/dist/cli/commands/repo/fork.js +1 -0
  322. package/dist/cli/commands/repo/fork.js.map +1 -1
  323. package/dist/cli/commands/repo/pick.js +1 -0
  324. package/dist/cli/commands/repo/pick.js.map +1 -1
  325. package/dist/cli/commands/repo/remove.js +1 -0
  326. package/dist/cli/commands/repo/remove.js.map +1 -1
  327. package/dist/cli/commands/repo/select.js +1 -0
  328. package/dist/cli/commands/repo/select.js.map +1 -1
  329. package/dist/cli/commands/repo/unpick.js +1 -0
  330. package/dist/cli/commands/repo/unpick.js.map +1 -1
  331. package/dist/cli/commands/selection.js +1 -2
  332. package/dist/cli/commands/selection.js.map +1 -1
  333. package/dist/cli/commands/self/update.js +11 -14
  334. package/dist/cli/commands/self/update.js.map +1 -1
  335. package/dist/cli/commands/source/push.js +14 -13
  336. package/dist/cli/commands/source/push.js.map +1 -1
  337. package/dist/cli/commands/status.js +6 -36
  338. package/dist/cli/commands/status.js.map +1 -1
  339. package/dist/cli/commands/sync.js +7 -5
  340. package/dist/cli/commands/sync.js.map +1 -1
  341. package/dist/cli/commands/tool/history.js +2 -2
  342. package/dist/cli/commands/tool/history.js.map +1 -1
  343. package/dist/cli/commands/where.js +2 -1
  344. package/dist/cli/commands/where.js.map +1 -1
  345. package/dist/cli/commands/workspace/rebind.js +1 -4
  346. package/dist/cli/commands/workspace/rebind.js.map +1 -1
  347. package/dist/cli/completion.js +2 -4
  348. package/dist/cli/completion.js.map +1 -1
  349. package/dist/cli/hook-command.js +2 -2
  350. package/dist/cli/hook-command.js.map +1 -1
  351. package/dist/cli/main.js +4 -3
  352. package/dist/cli/main.js.map +1 -1
  353. package/dist/cli/notices.js +26 -24
  354. package/dist/cli/notices.js.map +1 -1
  355. package/dist/cli/preparation-view.js +170 -52
  356. package/dist/cli/preparation-view.js.map +1 -1
  357. package/dist/cli/render/exceptional.js +11 -4
  358. package/dist/cli/render/exceptional.js.map +1 -1
  359. package/dist/cli/render/fields.js +1 -3
  360. package/dist/cli/render/fields.js.map +1 -1
  361. package/dist/cli/render/human.js +1 -3
  362. package/dist/cli/render/human.js.map +1 -1
  363. package/dist/cli/render/index.js +1 -1
  364. package/dist/cli/render/index.js.map +1 -1
  365. package/dist/cli/render/status-line.js +17 -3
  366. package/dist/cli/render/status-line.js.map +1 -1
  367. package/dist/cli/render/tone.js +29 -10
  368. package/dist/cli/render/tone.js.map +1 -1
  369. package/dist/cli/tool-command.js +4 -11
  370. package/dist/cli/tool-command.js.map +1 -1
  371. package/dist/cli/workspace-write-policy.js +8 -33
  372. package/dist/cli/workspace-write-policy.js.map +1 -1
  373. package/dist/composition/agent-cleanup.js +5 -1
  374. package/dist/composition/agent-cleanup.js.map +1 -1
  375. package/dist/composition/bundled.js +4 -1
  376. package/dist/composition/bundled.js.map +1 -1
  377. package/dist/composition/command-wiring.js +44 -99
  378. package/dist/composition/command-wiring.js.map +1 -1
  379. package/dist/composition/container.js +25 -20
  380. package/dist/composition/container.js.map +1 -1
  381. package/dist/composition/contributions.js +26 -71
  382. package/dist/composition/contributions.js.map +1 -1
  383. package/dist/composition/harness.js +3 -4
  384. package/dist/composition/harness.js.map +1 -1
  385. package/dist/composition/hook-entry.js +2 -1
  386. package/dist/composition/hook-entry.js.map +1 -1
  387. package/dist/composition/hook-wiring.js +8 -16
  388. package/dist/composition/hook-wiring.js.map +1 -1
  389. package/dist/composition/hook-worker.js +9 -11
  390. package/dist/composition/hook-worker.js.map +1 -1
  391. package/dist/composition/hooks.js +6 -3
  392. package/dist/composition/hooks.js.map +1 -1
  393. package/dist/composition/import.js +8 -6
  394. package/dist/composition/import.js.map +1 -1
  395. package/dist/composition/manifest-edit.js +1 -2
  396. package/dist/composition/manifest-edit.js.map +1 -1
  397. package/dist/composition/manifest-sources.js +3 -16
  398. package/dist/composition/manifest-sources.js.map +1 -1
  399. package/dist/composition/probe-record.js +1 -2
  400. package/dist/composition/probe-record.js.map +1 -1
  401. package/dist/composition/refresh.js +1 -1
  402. package/dist/composition/refresh.js.map +1 -1
  403. package/dist/composition/registry.js +8 -37
  404. package/dist/composition/registry.js.map +1 -1
  405. package/dist/composition/tool-install.js +5 -1
  406. package/dist/composition/tool-install.js.map +1 -1
  407. package/dist/composition/tool-inventory.js +10 -1
  408. package/dist/composition/tool-inventory.js.map +1 -1
  409. package/dist/composition/trace.js +3 -4
  410. package/dist/composition/trace.js.map +1 -1
  411. package/dist/composition/update.js +12 -1
  412. package/dist/composition/update.js.map +1 -1
  413. package/dist/composition/workspace-management.js +8 -2
  414. package/dist/composition/workspace-management.js.map +1 -1
  415. package/dist/domain/config/codec.js +2 -1
  416. package/dist/domain/config/codec.js.map +1 -1
  417. package/dist/domain/config/profile.js +0 -1
  418. package/dist/domain/config/profile.js.map +1 -1
  419. package/dist/domain/contribution/pull-request.js +12 -1
  420. package/dist/domain/contribution/pull-request.js.map +1 -1
  421. package/dist/domain/contribution/selection.js +4 -8
  422. package/dist/domain/contribution/selection.js.map +1 -1
  423. package/dist/domain/errors.js +10 -3
  424. package/dist/domain/errors.js.map +1 -1
  425. package/dist/domain/fuzzy.js +6 -1
  426. package/dist/domain/fuzzy.js.map +1 -1
  427. package/dist/domain/harness/actions.js +60 -0
  428. package/dist/domain/harness/actions.js.map +1 -0
  429. package/dist/domain/harness/deadlines.js +14 -0
  430. package/dist/domain/harness/deadlines.js.map +1 -0
  431. package/dist/domain/harness/hooks.js +8 -0
  432. package/dist/domain/harness/hooks.js.map +1 -1
  433. package/dist/domain/harness/session-start.js +2 -1
  434. package/dist/domain/harness/session-start.js.map +1 -1
  435. package/dist/domain/harness/state-recovery.js.map +1 -1
  436. package/dist/domain/import/infer.js +2 -9
  437. package/dist/domain/import/infer.js.map +1 -1
  438. package/dist/domain/lease.js +30 -0
  439. package/dist/domain/lease.js.map +1 -0
  440. package/dist/domain/manifest/decode.js +5 -8
  441. package/dist/domain/manifest/decode.js.map +1 -1
  442. package/dist/domain/manifest/document.js +3 -5
  443. package/dist/domain/manifest/document.js.map +1 -1
  444. package/dist/domain/manifest/editor.js +3 -7
  445. package/dist/domain/manifest/editor.js.map +1 -1
  446. package/dist/domain/manifest/explain.js +2 -4
  447. package/dist/domain/manifest/explain.js.map +1 -1
  448. package/dist/domain/manifest/issues.js +2 -2
  449. package/dist/domain/manifest/issues.js.map +1 -1
  450. package/dist/domain/manifest/loader.js +2 -1
  451. package/dist/domain/manifest/loader.js.map +1 -1
  452. package/dist/domain/manifest/overlay.js +6 -9
  453. package/dist/domain/manifest/overlay.js.map +1 -1
  454. package/dist/domain/manifest/providers.js +34 -2
  455. package/dist/domain/manifest/providers.js.map +1 -1
  456. package/dist/domain/manifest/quarantine.js +21 -1
  457. package/dist/domain/manifest/quarantine.js.map +1 -1
  458. package/dist/domain/manifest/reflect.js +2 -31
  459. package/dist/domain/manifest/reflect.js.map +1 -1
  460. package/dist/domain/manifest/rules/harness.js +2 -16
  461. package/dist/domain/manifest/rules/harness.js.map +1 -1
  462. package/dist/domain/manifest/service.schema.js +5 -14
  463. package/dist/domain/manifest/service.schema.js.map +1 -1
  464. package/dist/domain/manifest/skill-frontmatter.js +1 -1
  465. package/dist/domain/manifest/skill-frontmatter.js.map +1 -1
  466. package/dist/domain/manifest/types.js.map +1 -1
  467. package/dist/domain/outcome.js +5 -0
  468. package/dist/domain/outcome.js.map +1 -0
  469. package/dist/domain/path.js +9 -1
  470. package/dist/domain/path.js.map +1 -1
  471. package/dist/domain/preparation.js.map +1 -1
  472. package/dist/domain/projection.js +8 -0
  473. package/dist/domain/projection.js.map +1 -0
  474. package/dist/domain/public-url.js +22 -0
  475. package/dist/domain/public-url.js.map +1 -0
  476. package/dist/domain/release/ci.js +19 -8
  477. package/dist/domain/release/ci.js.map +1 -1
  478. package/dist/domain/report.js +1 -1
  479. package/dist/domain/report.js.map +1 -1
  480. package/dist/domain/setup/names.js +23 -0
  481. package/dist/domain/setup/names.js.map +1 -0
  482. package/dist/domain/setup/planner.js +19 -21
  483. package/dist/domain/setup/planner.js.map +1 -1
  484. package/dist/domain/setup/progress.js +57 -0
  485. package/dist/domain/setup/progress.js.map +1 -0
  486. package/dist/domain/setup/types.js +5 -0
  487. package/dist/domain/setup/types.js.map +1 -1
  488. package/dist/domain/shell.js +0 -7
  489. package/dist/domain/shell.js.map +1 -1
  490. package/dist/domain/skills/frontmatter.js +1 -1
  491. package/dist/domain/skills/frontmatter.js.map +1 -1
  492. package/dist/domain/skills/projection.js +2 -3
  493. package/dist/domain/skills/projection.js.map +1 -1
  494. package/dist/domain/sync-selection.js +2 -4
  495. package/dist/domain/sync-selection.js.map +1 -1
  496. package/dist/domain/toolchain/resolve.js +4 -0
  497. package/dist/domain/toolchain/resolve.js.map +1 -1
  498. package/dist/domain/toolchain/select.js +15 -9
  499. package/dist/domain/toolchain/select.js.map +1 -1
  500. package/dist/domain/toolchain/stderr.js +34 -14
  501. package/dist/domain/toolchain/stderr.js.map +1 -1
  502. package/dist/domain/values.js +18 -2
  503. package/dist/domain/values.js.map +1 -1
  504. package/dist/domain/workspace/commits.js +5 -0
  505. package/dist/domain/workspace/commits.js.map +1 -1
  506. package/dist/domain/workspace/operation-journal.js +93 -0
  507. package/dist/domain/workspace/operation-journal.js.map +1 -0
  508. package/dist/domain/workspace/plan.js +17 -1
  509. package/dist/domain/workspace/plan.js.map +1 -1
  510. package/dist/infra/config-store.js +8 -13
  511. package/dist/infra/config-store.js.map +1 -1
  512. package/dist/infra/contribution-store.js +21 -67
  513. package/dist/infra/contribution-store.js.map +1 -1
  514. package/dist/infra/harness-state.js +21 -49
  515. package/dist/infra/harness-state.js.map +1 -1
  516. package/dist/infra/local-store.js +8 -15
  517. package/dist/infra/local-store.js.map +1 -1
  518. package/dist/infra/owned-journal.js +57 -0
  519. package/dist/infra/owned-journal.js.map +1 -0
  520. package/dist/infra/projection-store.js +4 -3
  521. package/dist/infra/projection-store.js.map +1 -1
  522. package/dist/infra/tool-history.js +19 -49
  523. package/dist/infra/tool-history.js.map +1 -1
  524. package/dist/infra/trust-store.js +2 -9
  525. package/dist/infra/trust-store.js.map +1 -1
  526. package/dist/infra/workspace-home.js +7 -1
  527. package/dist/infra/workspace-home.js.map +1 -1
  528. package/dist/ports/ci.js +2 -1
  529. package/dist/ports/ci.js.map +1 -1
  530. package/package.json +1 -1
  531. package/skills/fx-workspace/SKILL.md +2 -3
  532. package/skills/fx-workspace/references/commands.md +35 -26
  533. package/skills/fx-workspace/references/workspace-tasks.md +6 -7
  534. package/dist/application/can.js.map +0 -1
  535. package/dist/application/doctor/login.js.map +0 -1
  536. package/dist/application/import.js.map +0 -1
  537. package/dist/application/init/setup.js +0 -125
  538. package/dist/application/init/setup.js.map +0 -1
  539. package/dist/application/preview-initialization.js +0 -41
  540. package/dist/application/preview-initialization.js.map +0 -1
  541. package/dist/application/refresh-manifest.js.map +0 -1
  542. package/dist/application/refresh-workspace-manifest.js +0 -27
  543. package/dist/application/refresh-workspace-manifest.js.map +0 -1
  544. package/dist/application/status.js.map +0 -1
  545. package/dist/application/where.js.map +0 -1
  546. package/dist/application/workspace-context.js.map +0 -1
  547. package/dist/domain/deadline.js +0 -17
  548. package/dist/domain/deadline.js.map +0 -1
@@ -1,10 +1,9 @@
1
1
  // A versioned personal ledger preserves every checkpoint under an atomic, locked append.
2
2
  // Invalid or foreign files fail closed, so installation cannot silently lose its audit trail.
3
- import { promises as fs } from 'node:fs';
4
3
  import path from 'node:path';
5
4
  import * as z from 'zod';
6
5
  import { busyError, DevkitError } from '../domain/errors.js';
7
- import { writeAtomicFile } from './atomic-file.js';
6
+ import { OwnedJournal } from './owned-journal.js';
8
7
  const entry = {
9
8
  id: z.string().uuid(),
10
9
  at: z.string().datetime(),
@@ -30,58 +29,29 @@ const ledger = (object) => object({
30
29
  const written = ledger(z.strictObject);
31
30
  const read = ledger(z.object);
32
31
  export class FileToolHistoryStore {
33
- home;
34
- lock;
32
+ ledger;
35
33
  constructor(home, lock) {
36
- this.home = home;
37
- this.lock = lock;
34
+ this.ledger = new OwnedJournal({
35
+ home,
36
+ file: path.join(home, 'tool-history.json'),
37
+ lock,
38
+ lease: { key: 'tool-history', waitMs: 2000 },
39
+ encode: (value) => `${JSON.stringify(written.parse(value))}\n`,
40
+ decode: (document) => read.parse(document),
41
+ invalid,
42
+ busy: () => busyError('TOOL_HISTORY_BUSY', 'The tool history', {
43
+ nextSteps: ['Retry after the other tool operation finishes.'],
44
+ }),
45
+ });
38
46
  }
39
47
  async read() {
40
- await this.checkHome();
41
- try {
42
- const stat = await fs.lstat(this.file());
43
- if (!stat.isFile() || stat.nlink !== 1)
44
- throw invalid();
45
- return read.parse(JSON.parse(await fs.readFile(this.file(), 'utf8'))).entries;
46
- }
47
- catch (error) {
48
- if (error.code === 'ENOENT')
49
- return [];
50
- throw invalid();
51
- }
48
+ return (await this.ledger.read())?.entries ?? [];
52
49
  }
53
50
  async append(entry) {
54
- await this.checkHome();
55
- const lease = await this.lock.acquire({ key: 'tool-history', waitMs: 2000 });
56
- if (!lease)
57
- throw busyError('TOOL_HISTORY_BUSY', 'The tool history', {
58
- nextSteps: ['Retry after the other tool operation finishes.'],
59
- });
60
- try {
61
- const entries = [...(await this.read()), entry];
62
- const parsed = written.safeParse({ owner: 'fx:tool-history:v2', entries });
63
- if (!parsed.success)
64
- throw invalid();
65
- await fs.mkdir(this.home, { recursive: true, mode: 0o700 });
66
- await this.checkHome();
67
- await writeAtomicFile(this.file(), JSON.stringify(parsed.data) + '\n', { durable: true });
68
- }
69
- finally {
70
- await lease.release();
71
- }
72
- }
73
- file() {
74
- return path.join(this.home, 'tool-history.json');
75
- }
76
- async checkHome() {
77
- try {
78
- if (!(await fs.lstat(this.home)).isDirectory())
79
- throw invalid();
80
- }
81
- catch (error) {
82
- if (error.code !== 'ENOENT')
83
- throw invalid();
84
- }
51
+ await this.ledger.update((current) => ({
52
+ owner: 'fx:tool-history:v2',
53
+ entries: [...(current?.entries ?? []), entry],
54
+ }));
85
55
  }
86
56
  }
87
57
  function invalid() {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-history.js","sourceRoot":"","sources":["../../src/infra/tool-history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-history.js","sourceRoot":"","sources":["../../src/infra/tool-history.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { promises as fs } from 'node:fs';
4
4
  import path from 'node:path';
5
5
  import { parse, stringify } from 'yaml';
6
6
  import { busyError } from '../domain/errors.js';
7
+ import { withLease } from '../domain/lease.js';
7
8
  import { writeAtomicFile } from './atomic-file.js';
8
9
  export class FileTrustStore {
9
10
  home;
@@ -27,15 +28,7 @@ export class FileTrustStore {
27
28
  return operation;
28
29
  }
29
30
  async record(workspace, fingerprint, label) {
30
- const lease = await this.lock.acquire({ key: this.path(), waitMs: 2000 });
31
- if (lease === null)
32
- throw busyError('LOCK_BUSY', 'The trust record');
33
- try {
34
- await this.writeRecord(workspace, fingerprint, label);
35
- }
36
- finally {
37
- await lease.release();
38
- }
31
+ await withLease(this.lock, { key: this.path(), waitMs: 2000 }, () => busyError('LOCK_BUSY', 'The trust record'), () => this.writeRecord(workspace, fingerprint, label));
39
32
  }
40
33
  async writeRecord(workspace, fingerprint, label) {
41
34
  const file = await this.read();
@@ -1 +1 @@
1
- {"version":3,"file":"trust-store.js","sourceRoot":"","sources":["../../src/infra/trust-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trust-store.js","sourceRoot":"","sources":["../../src/infra/trust-store.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,13 @@ export function localLayerPath(home, name) {
8
8
  export function manifestSourceDir(home, name) {
9
9
  return path.join(workspaceHome(home, name), 'source');
10
10
  }
11
- function workspaceHome(home, name) {
11
+ export function harnessStatePath(home, name) {
12
+ return path.join(workspaceHome(home, name), 'harness.json');
13
+ }
14
+ export function contributionJournalPath(home, name) {
15
+ return path.join(workspaceHome(home, name), 'contributions.json');
16
+ }
17
+ export function workspaceHome(home, name) {
12
18
  assertWorkspaceName(name);
13
19
  return path.join(home, 'workspaces', name);
14
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-home.js","sourceRoot":"","sources":["../../src/infra/workspace-home.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4DAA4D;AAE5D,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,IAAY;IACvD,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,IAAY;IAC1D,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,IAAY;IAC/C,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"workspace-home.js","sourceRoot":"","sources":["../../src/infra/workspace-home.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4DAA4D;AAE5D,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,IAAY;IACvD,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,IAAY;IAC1D,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,IAAY;IACzD,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAAY,EAAE,IAAY;IAChE,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,oBAAoB,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,IAAY;IACtD,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC"}
package/dist/ports/ci.js CHANGED
@@ -1,4 +1,5 @@
1
1
  // Where builds run: a platform that can also say how a job's last build
2
- // went. `release` asks it that, and nothing else.
2
+ // went, and which commit it built when the platform records that. `release`
3
+ // asks it that, and nothing else.
3
4
  export {};
4
5
  //# sourceMappingURL=ci.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ci.js","sourceRoot":"","sources":["../../src/ports/ci.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,kDAAkD"}
1
+ {"version":3,"file":"ci.js","sourceRoot":"","sources":["../../src/ports/ci.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,4EAA4E;AAC5E,kCAAkC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angelmsger/fx",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "Manifest-driven multi-repository workspaces for people and coding agents",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: fx-workspace
3
- version: 0.11.0
3
+ version: 0.12.0
4
4
  description: 'Use only when the user explicitly asks for the fx workspace CLI or manifest, or the current task is inside an fx-managed workspace or routed by its fx-derived AGENTS.md. Drive workspace init and sync, repository status and selection, manifest validation and editing, companion tools and login, doctor, agent Skills, repository ownership, environment coordinates and readiness through can/where, and release checks across dependencies, branches, builds and errors. Do not use for generic Sentry, OpenObserve, Jenkins, Kubernetes, logs, errors or builds outside an fx-managed workspace.'
5
5
  metadata:
6
6
  requires:
@@ -30,5 +30,4 @@ For initialization, the source and target directory are sufficient. Follow the
30
30
  initialization guide and `preparation.next`; it already includes verification.
31
31
  Continue the user's original task on `complete`, or hand off the named missing
32
32
  prerequisites. A list of other fx capabilities is not an initialization checklist.
33
- No Skill-loaded declaration is needed for initialization. Read the other guides
34
- only when that task or a specific failure needs them.
33
+ Read the other guides only when that task or a specific failure needs them.
@@ -18,7 +18,8 @@ not pagination. All warning/failure rows and exact pending command vectors remai
18
18
  `--details` returns the full application result; explicit `--fields` projects it.
19
19
  Explicit report projection applies in every format: JSON/NDJSON emit one object;
20
20
  human output emits selected key/value pairs. Dotted paths retain flat keys and
21
- array alignment. Without explicit fields, human/NDJSON defaults are unchanged.
21
+ array alignment. Only JSON is summarized: without explicit fields, human output
22
+ keeps its own view and NDJSON carries the complete result.
22
23
  Fact-query projections still apply per item and retain collection metadata. Error envelopes are never
23
24
  projected or compacted.
24
25
 
@@ -31,7 +32,9 @@ Initialization summaries retain selected repository, guide and Skill outcomes,
31
32
  along with setup results, so callers can verify effects without extra discovery.
32
33
  The setup stage retains completed outcomes in summary mode so callers do not
33
34
  repeat local side effects while another step needs human input.
34
- Only required blockers prevent readiness. Actions contain `actor`, `id`, `description`,
35
+ Only required blockers prevent readiness. A blocker may carry `cause` (`credential`,
36
+ `permission`, `network`) and `waits_on`, the blocker it waited on unchecked; resolve
37
+ that one first. Actions contain `actor`, `id`, `description`,
35
38
  `argv`, `cwd` and `requires_approval`, with optional `env` coordinates for the
36
39
  current configuration/home and Agent selection. Preserve these values and use
37
40
  the returned exact executable. Credentials are never included.
@@ -42,9 +45,8 @@ retains existing selection and work.
42
45
 
43
46
  `self info.bundled_skill_version` identifies the instructions shipped with the
44
47
  running executable. `skill status` reports `embedded_version`, installation
45
- versions and `activation: unverified`. Installation or an environment declaration
46
- cannot establish native host activation. Commands do not require a Skill-loaded
47
- handshake; load the bundled task guide when the task needs it.
48
+ versions and `activation: unverified`. Installation cannot establish native host
49
+ activation. Load the bundled task guide when the task needs it.
48
50
 
49
51
  `SKILL_WRITE_DENIED` keeps denied filesystem paths and partial stage evidence.
50
52
  Check access before repeating writes. To continue local repository/guide work,
@@ -61,7 +63,7 @@ management; these preserve business checkouts and respect owned-resource cleanup
61
63
 
62
64
  `repo select` / `env select` replace a personal collection. `--all` removes its
63
65
  explicit scope and follows future shared entries; `--none` stores an empty set.
64
- `pick/unpick` retain additive/removal semantics. Selection output reports modes
66
+ `pick/unpick` add or remove individual names. Selection output reports modes
65
67
  and next steps; repository selection is separate from downloading via sync.
66
68
 
67
69
  `status` keeps `{items, has_more}` and adds workspace/root/selection context,
@@ -157,7 +159,7 @@ same ambiguous setup. Doctor marks its missing verification as incomplete.
157
159
  `fx doctor` returns `preparation`, diagnostic `coverage` (`complete` or `incomplete`),
158
160
  `summary {ok, warn, fail}` and `findings[]`. The preparation verdict owns task completion;
159
161
  optional host activation can remain unverified. An incomplete verdict exits 12.
160
- `fx release check` retains `ok`, `complete`, summary and findings and exits zero when its
162
+ `fx release check` returns `ok`, `complete`, summary and findings and exits zero when its
161
163
  checklist was produced. Findings carry group, id, level, coverage, message, fix and
162
164
  handoff; full results also carry evidence. `repos[]` says what each release would ship,
163
165
  in summaries too. For `can`, inspect its capability status.
@@ -200,12 +202,14 @@ Evidence is grouped by check:
200
202
  | -------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
201
203
  | `merge` | `source`, `target`, `ahead[]`, `behind[]`, `filtered`, `unknown[]` directions; commits have `sha`, `author {id, name}`, `date`, `message` |
202
204
  | `deps` | `file`, `offending[] {name, version, section, runtime}` |
203
- | `ci` | `builds[] {side, env, branch, path, number, status, started_at, url, head, current}`; null `path` means no declared job |
205
+ | `ci` | `builds[] {side, env, branch, path, number, status, started_at, url, commit, head, current}`; null `path` means no declared job |
204
206
  | `errors` | `env`, `slug`, `since`, `capped`, `undated`, `issues[] {short_id, title, level, first_seen, last_seen, count, url}` |
205
207
 
206
- CI `current` compares build start time with the time of the branch head `head`. The CI
207
- result has no built-commit field, so it is a freshness heuristic, not revision verification.
208
- Use the companion's SCM/build details when the task requires an exact commit match.
208
+ CI `current` compares the commit the build checked out, `commit`, with the branch head
209
+ `head` when the platform names it. A null `commit` (Jenkins before jenkins-cli 0.12.0)
210
+ falls back to comparing the build's start time with the head commit's time, which is a
211
+ freshness heuristic, not revision verification; use the companion's build details then
212
+ when the task requires an exact commit match.
209
213
  The full report's merge/dependency/issue evidence is available with `--details`.
210
214
 
211
215
  Uncovered explicit repositories yield `REPO_NOT_COVERED`, unmatched tags
@@ -232,11 +236,11 @@ loaded performs no update check.
232
236
  is optional `FX_REGISTRY`, npm's package-scope setting, then npm's default setting.
233
237
  Discovery uses global mode, honoring user/global config and `NPM_CONFIG_USERCONFIG`
234
238
  while excluding project npmrc. Invalid chosen settings remain unresolved; internal
235
- packages never fall back to a public Registry. Historical tarball URLs are not used
236
- to guess Registry APIs. Metadata authentication is delegated to npm; the existing
237
- private `FX_REGISTRY_TOKEN` override remains supported when paired with explicit
238
- `FX_REGISTRY`; it is not applied to an inferred target. Self-update pins only the
239
- fx package scope, preserving npm's default route for other dependencies.
239
+ packages never fall back to a public Registry, while the public package falls back
240
+ to npmjs. Historical tarball URLs are not used to guess Registry APIs. Metadata
241
+ authentication is delegated to npm; the private `FX_REGISTRY_TOKEN` override applies
242
+ only with an explicit `FX_REGISTRY`, never to an inferred target. Self-update pins
243
+ only the fx package scope, preserving npm's default route for other dependencies.
240
244
 
241
245
  ### Initialization and synchronization
242
246
 
@@ -256,8 +260,8 @@ hook and MCP `items` where those stages ran. Rules rows are nested under
256
260
  `stage_details.docs.rules.items`. Skill tool rows retain exit `code`, a concise
257
261
  `note`, and the companion's structured `failure` when supplied. `code: null`
258
262
  means no exit result is available; consult item status and `ran` where supplied.
259
- A dry run executes no command, but an interrupted process may also lack an exit result. `stages` keeps its existing
260
- counter shape; details supplement those counts rather than replacing them.
263
+ A dry run executes no command, but an interrupted process may also lack an exit result.
264
+ `stages` holds the counts; `stage_details` holds the rows behind them.
261
265
  `fx init` nests this result under `sync`; its `written` field confirms local
262
266
  registration work, not complete synchronization or readiness.
263
267
 
@@ -317,9 +321,8 @@ is not applicable. Use `sync --only mcp` for projection and `doctor` for repair.
317
321
  `skill path` uses the collection envelope. Each row has an optional `agent`, `path`,
318
322
  `status` (`installed`, `not_installed`, `foreign`), `version` (nullable) and
319
323
  `version_state` (`matching`, `older`, `newer`, `unknown`, `missing`). `skill status`
320
- returns `loaded`, `loaded_env`, `loaded_version`, `version_env`, `version_verified`,
321
- `embedded_version`, `installs` and `next`. The declared loaded flag and declared
322
- version are separate; neither proves reading. Neither command needs a workspace.
324
+ returns `embedded_version`, `activation: unverified` and `installs`, which holds the
325
+ same rows. Neither command needs a workspace.
323
326
 
324
327
  Install/uninstall detect agents in the selected scope by default; `--agent`
325
328
  accepts repeated or comma-separated IDs. Path/status list all known agents unless
@@ -394,12 +397,16 @@ These bundled service commands need no trust approval. Vectors the team's
394
397
  `--list` includes plan problems even with `--quiet`. If a step needs human input
395
398
  or a later step throws, read the partial result on stdout as well as the error
396
399
  on stderr. Results distinguish `handoff`, `blocked`, `failed` and `not_started`;
397
- completed steps remain visible. Handoff rows include the required action, and
398
- service preparation rows retain available `failure` and `next_steps` fields.
400
+ completed steps remain visible. After a sign-in, the same tool's earlier `failed` rows
401
+ are checked again and `blocked` ones whose prerequisite now passes are attempted. A
402
+ row passing on recheck is `verified` with a `detail` naming the sign-in; one still
403
+ failing keeps its result and adds `recheck` (`after`, `detail`, optional `code`).
404
+ Handoff rows include the required action, and service preparation rows retain
405
+ available `failure` and `next_steps` fields.
399
406
  After resolving the blocker, repeat the same invocation: setup verifies current
400
- state before rerunning actions. Consumers that previously discarded stdout on
401
- nonzero exit must now parse it when present. `self update` also captures installer
402
- output so its stdout remains parseable; inspect the returned installer `code`.
407
+ state before rerunning actions. Parse stdout on a nonzero exit whenever it is
408
+ present. `self update` also captures installer output so its stdout remains
409
+ parseable; inspect the returned installer `code`.
403
410
 
404
411
  Retain the original task, repository/environment and readiness query while
405
412
  repairing prerequisites. Authorization already given in this session persists;
@@ -433,6 +440,8 @@ recover an executable that cannot start.
433
440
  vectors; it is not just a prompt suppressor. If only part is authorized,
434
441
  use the companion's supported scoped operation, keeping the same trust
435
442
  boundary. Inspect `failed`, `blocked`, `skipped` rows and setup problems.
443
+ Bundled `phase: prepare` steps, such as reusing an existing login, run in
444
+ `fx login` without `--yes` even with `--no-input`, as they do in init and sync.
436
445
  3. **Hand off only the human part.** Prepare supported local configuration and
437
446
  start an authorized login flow when useful; leave QR/device/browser consent,
438
447
  obtaining access and new vector approval to the person. For manual/file
@@ -13,7 +13,7 @@ or resuming its preparation, use the [initialization guide](initialization.md).
13
13
  `node <checkout>/bin/fx.js`, keep using that prefix. Bare `fx` can resolve to
14
14
  a different installation after shell startup.
15
15
  2. Use `--format json` for machine-readable results. Rediscover the bundled
16
- version when the executable changes; no environment acknowledgement is needed.
16
+ version when the executable changes.
17
17
  3. Discover the task's resources using the routes below. For team-specific
18
18
  workflows, read the matching Skill from the root AGENTS.md catalog.
19
19
 
@@ -158,6 +158,8 @@ Sync clones missing repositories and fast-forwards eligible clean branches. When
158
158
  a different branch is checked out, it updates only the tracked branch ref.
159
159
  It never checks out, resets, stashes, merges or rebases. Dirty or diverged work is
160
160
  reported as `skip_dirty` / `skip_diverged`; inspect repository and resource outcomes.
161
+ An empty upstream is skipped with outcome `empty_remote`; one lacking the tracked branch
162
+ is skipped with `no_remote_branch` and still blocks readiness. Neither is a failure.
161
163
 
162
164
  The workspace root is a plain directory. Do not initialize or run Git there.
163
165
  Write output that belongs to no repository under `.workbench/` as the derived
@@ -210,11 +212,8 @@ queries; background hooks only check. Conflicts preserve existing settings.
210
212
  Follow the [service reference](commands.md#service-preparation) for
211
213
  native context conflicts and scoped login.
212
214
 
213
- fx reuses npm's effective user/global scope Registry, then its default Registry;
214
- `FX_REGISTRY` is an optional override. `self info` reports `registry_source`.
215
- Project npmrc does not redirect global self-update. Internal `@fx/devkit` still
216
- needs a private target; public `@angelmsger/fx` can fall back to npmjs. Normal
217
- metadata reads use npm authentication, including `NPM_CONFIG_USERCONFIG`.
215
+ `self info` reports the Registry fx updates from and its `registry_source`;
216
+ [update notices](commands.md#update-notices) explains how it is chosen.
218
217
  `FX_OUTDATED` and `MANIFEST_OUTDATED` are advisory. Update within the user's scope,
219
218
  then rediscover the running version and read its bundled Skill. `fx skill install`
220
- refreshes installed copies explicitly. See [update notices](commands.md#update-notices).
219
+ refreshes installed copies explicitly.
@@ -1 +0,0 @@
1
- {"version":3,"file":"can.js","sourceRoot":"","sources":["../../src/application/can.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/application/doctor/login.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/application/import.ts"],"names":[],"mappings":"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"}
@@ -1,125 +0,0 @@
1
- // Initialization and every explicit sync perform local preparation, so a login the
2
- // person already has is associated without anyone asking for it. Personal sign-in and
3
- // operator-owned files always remain explicit handoffs.
4
- import path from 'node:path';
5
- import { preparationCheck } from '../../domain/preparation.js';
6
- import { expectedPath } from '../login/handoff.js';
7
- import { Login } from '../login/run.js';
8
- import { expandHome, gaveNoAnswer } from '../login/verify.js';
9
- import { noAnswerAction, resumeAction, verifyAction } from '../preparation.js';
10
- import { workspaceToolScope } from '../tool/scope.js';
11
- export async function prepareWorkspaceSetup(deps, login, input) {
12
- const scope = workspaceToolScope(deps.ctx, {});
13
- const useCase = new Login(deps, login);
14
- const plan = await useCase.plan({ tools: scope.configuredNames });
15
- const output = await useCase.execute({
16
- tools: scope.configuredNames,
17
- mode: 'prepare',
18
- skipManual: false,
19
- dryRun: input.dryRun,
20
- noInput: true,
21
- posture: input.posture,
22
- });
23
- const unanswered = unansweredSteps(plan, output.items);
24
- return {
25
- summary: output.summary,
26
- details: { items: output.items, problems: output.problems },
27
- checks: [
28
- ...output.items.map((item) => {
29
- const step = plan.steps.find((step) => step.id === item.id);
30
- const ready = item.result === 'verified' || item.result === 'done';
31
- const unknown = unanswered.has(item.id);
32
- const expected = ready || unknown ? undefined : expectedFile(deps, step, login.home);
33
- const detail = `${item.title}: ${item.detail ?? item.result}${expected === undefined ? '' : `; expected ${expected}`}`;
34
- const pending = unknown ? 'unknown' : 'blocked';
35
- return preparationCheck(`login:${item.id}`, ready ? 'ready' : pending, detail, {
36
- resource: item.id,
37
- required: scope.required.has(item.tool),
38
- owner: unknown || step.phase === 'prepare' ? 'agent' : 'user',
39
- ...(ready
40
- ? {}
41
- : {
42
- actions: item.actions ??
43
- actionsFor(deps, step, login.home, {
44
- item,
45
- unknown,
46
- initializing: input.initializing,
47
- }),
48
- }),
49
- ...(item.failure ? { failure: item.failure, code: item.failure.code } : {}),
50
- });
51
- }),
52
- ...output.problems.map((problem) => preparationCheck(`setup:${problem.step}`, 'blocked', problem.detail, {
53
- owner: 'maintainer',
54
- })),
55
- ],
56
- };
57
- }
58
- // Steps whose check gave no answer and, the plan listing prerequisites first, the steps
59
- // that wait on them: as unknown as the check, and nobody's to act on.
60
- function unansweredSteps(plan, items) {
61
- const codes = new Map(items.map((item) => [item.id, item.failure?.code]));
62
- const unanswered = new Set();
63
- for (const step of plan.steps)
64
- if (gaveNoAnswer(codes.get(step.id)) || step.requires.some((id) => unanswered.has(id)))
65
- unanswered.add(step.id);
66
- return unanswered;
67
- }
68
- // A check that gave no answer offers its own recovery; a step waiting on it offers none.
69
- function actionsFor(deps, step, home, row) {
70
- const code = row.item.failure?.code;
71
- if (code !== undefined && gaveNoAnswer(code))
72
- return [noAnswerAction(deps, step, code)];
73
- if (row.unknown)
74
- return [];
75
- if (step.phase !== 'prepare' && code === 'VECTOR_UNTRUSTED')
76
- return [verifyAction(deps, step.tool)];
77
- const { initializing, item } = row;
78
- return setupActions(deps, step, home, { initializing, handoff: item.handoff });
79
- }
80
- // The handoff a finding already carries for a step, with what its check said.
81
- export function handoffOf(finding, step) {
82
- return finding.handoff?.user_steps.find((item) => item.id === step.id);
83
- }
84
- function expectedFile(deps, step, home) {
85
- const expected = expectedPath(step);
86
- return expected === undefined
87
- ? undefined
88
- : path.resolve(deps.ctx.root, expandHome(expected, home));
89
- }
90
- export function setupActions(deps, step, home, options = {}) {
91
- const { initializing = false, handoff } = options;
92
- const expected = expectedFile(deps, step, home);
93
- if (step.phase === 'prepare')
94
- return [
95
- {
96
- ...resumeAction(deps),
97
- id: `approve:${step.id}`,
98
- description: initializing
99
- ? 'Review the remaining initialization effects and continue this workspace'
100
- : `Repair ${step.tool}'s local preparation and the workspace's managed guides and Skills`,
101
- argv: initializing
102
- ? [...resumeAction(deps).argv, '--yes']
103
- : ['fx', 'doctor', '--fix', '--tool', step.tool, '--workspace', deps.ctx.name, '--yes'],
104
- requires_approval: true,
105
- },
106
- ];
107
- return [
108
- {
109
- actor: 'user',
110
- id: `login:${step.id}`,
111
- description: `${handoff?.instructions ?? step.instructions ?? step.title}${expected === undefined ? '' : ` Expected file: ${expected}.`}`,
112
- argv: [
113
- 'fx',
114
- 'login',
115
- step.tool,
116
- '--workspace',
117
- deps.ctx.name,
118
- ...(step.env ? ['--env', step.env] : []),
119
- ],
120
- cwd: deps.ctx.root,
121
- requires_approval: true,
122
- },
123
- ];
124
- }
125
- //# sourceMappingURL=setup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/application/init/setup.ts"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- import { prepareServices } from './services/stage.js';
2
- import { toolchainOf } from './tool/toolchain.js';
3
- export class PreviewInitialization {
4
- deps;
5
- login;
6
- install;
7
- skills;
8
- constructor(deps, login, install, skills) {
9
- this.deps = deps;
10
- this.login = login;
11
- this.install = install;
12
- this.skills = skills;
13
- }
14
- async execute(trust) {
15
- const { ctx } = this.deps;
16
- const tools = toolchainOf(ctx).tools;
17
- const installs = await this.install.execute({
18
- tools: tools.filter((tool) => tool.enabled && tool.installOnInit),
19
- all: true,
20
- update: false,
21
- dryRun: true,
22
- posture: trust.posture,
23
- trust,
24
- });
25
- const skills = await this.skills.execute({
26
- dryRun: true,
27
- posture: trust.posture,
28
- toolchain: tools,
29
- trust,
30
- });
31
- return {
32
- root: ctx.root,
33
- source: ctx.manifestDir,
34
- tool_install: installs,
35
- skills,
36
- note: 'Missing tools may reveal additional Skill vectors after installation; those require their own exact trust check. Foreign paths still require replacement approval and backup.',
37
- services: await prepareServices(this.deps, this.login, true),
38
- };
39
- }
40
- }
41
- //# sourceMappingURL=preview-initialization.js.map