@paradigma-inc/flywheel 0.1.111 → 0.1.134

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 (628) hide show
  1. package/README.md +79 -13
  2. package/package.json +14 -6
  3. package/skills/flywheel/SKILL.md +9 -6
  4. package/skills/flywheel/example-workflows/organizing-exploring-and-iterating-on-a-research-topic.md +38 -46
  5. package/skills/flywheel/example-workflows/reproducing-papers-on-a-budget.md +34 -36
  6. package/skills/flywheel/getting-started/flywheel-quickstart.md +2 -5
  7. package/skills/flywheel/getting-started/flywheel-tutorial-overview.md +1 -1
  8. package/skills/flywheel/references/INTERFACES.md +2 -2
  9. package/skills/flywheel/references/experiment-design-protocol.md +32 -25
  10. package/skills/flywheel/references/flywheel-cli-tool-map.md +120 -76
  11. package/skills/flywheel/references/flywheel-mcp-tool-map.md +42 -32
  12. package/skills/flywheel/setting-up-flywheel/claude-code-cli-installation.md +1 -1
  13. package/skills/flywheel/setting-up-flywheel/codex-cli-installation.md +1 -1
  14. package/skills/flywheel/setting-up-flywheel/how-can-i-get-an-authorized-client_id-for-the-oauth-flow.md +12 -4
  15. package/skills/flywheel/setting-up-flywheel/installation-overview.md +2 -6
  16. package/skills/flywheel/setting-up-flywheel/other-hosts-installation.md +53 -26
  17. package/skills/flywheel/setting-up-flywheel/updating-flywheel-mcp.md +34 -11
  18. package/skills/flywheel-auto/SKILL.md +40 -23
  19. package/skills/flywheel-auto/evals/evals.json +1 -1
  20. package/skills/flywheel-auto/references/INTERFACES.md +2 -2
  21. package/skills/flywheel-auto/references/experiment-design-protocol.md +31 -23
  22. package/skills/flywheel-auto/references/flywheel-cli-tool-map.md +172 -127
  23. package/skills/flywheel-auto/references/flywheel-mcp-tool-map.md +22 -24
  24. package/skills/flywheel-lookahead/SKILL.md +47 -28
  25. package/skills/flywheel-lookahead/agents/openai.yaml +1 -1
  26. package/skills/flywheel-lookahead/evals/evals.json +6 -6
  27. package/skills/flywheel-lookahead/references/INTERFACES.md +2 -2
  28. package/skills/flywheel-lookahead/references/flywheel-cli-tool-map.md +172 -127
  29. package/skills/flywheel-lookahead/references/flywheel-mcp-tool-map.md +22 -24
  30. package/skills/flywheel-prove/SKILL.md +2 -2
  31. package/skills/flywheel-prove/references/workflow.md +21 -2
  32. package/skills/flywheel-reproduce/SKILL.md +39 -19
  33. package/skills/flywheel-reproduce/evals/evals.json +1 -1
  34. package/skills/flywheel-reproduce/references/INTERFACES.md +2 -2
  35. package/skills/flywheel-reproduce/references/experiment-design-protocol.md +31 -23
  36. package/skills/flywheel-reproduce/references/flywheel-cli-tool-map.md +172 -127
  37. package/skills/flywheel-reproduce/references/flywheel-mcp-tool-map.md +22 -24
  38. package/skills/flywheel-to-graph/SKILL.md +37 -17
  39. package/skills/flywheel-to-graph/references/INTERFACES.md +2 -2
  40. package/skills/flywheel-to-graph/references/flywheel-cli-tool-map.md +172 -127
  41. package/skills/flywheel-to-graph/references/flywheel-mcp-tool-map.md +22 -24
  42. package/skills/flywheel-tree/references/workflow.md +6 -37
  43. package/src/cli.mjs +1145 -1141
  44. package/src/mcp-writer.mjs +413 -435
  45. package/src/public-command-metadata.mjs +28 -5
  46. package/src/runtime/delegate.mjs +2 -19
  47. package/src/runtime/required-runtime-commands.json +83 -28
  48. package/src/runtime/runtime-config.mjs +39 -60
  49. package/src/runtime/vendor/flywheel-cli-dist/auth/credentials.js +330 -0
  50. package/src/runtime/vendor/flywheel-cli-dist/auth/credentials.js.map +1 -0
  51. package/src/runtime/vendor/flywheel-cli-dist/auth/login.js +90 -139
  52. package/src/runtime/vendor/flywheel-cli-dist/auth/login.js.map +1 -1
  53. package/src/runtime/vendor/flywheel-cli-dist/auth/profiles.js +1 -1
  54. package/src/runtime/vendor/flywheel-cli-dist/auth/profiles.js.map +1 -1
  55. package/src/runtime/vendor/flywheel-cli-dist/auth/secure-write.js +116 -0
  56. package/src/runtime/vendor/flywheel-cli-dist/auth/secure-write.js.map +1 -0
  57. package/src/runtime/vendor/flywheel-cli-dist/commands/_browser-handoff.js +36 -14
  58. package/src/runtime/vendor/flywheel-cli-dist/commands/_browser-handoff.js.map +1 -1
  59. package/src/runtime/vendor/flywheel-cli-dist/commands/_open-url.js +15 -6
  60. package/src/runtime/vendor/flywheel-cli-dist/commands/_open-url.js.map +1 -1
  61. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-test-users-create.js +256 -0
  62. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-test-users-create.js.map +1 -0
  63. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-test-users-delete.js +11 -0
  64. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-test-users-delete.js.map +1 -0
  65. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-test-users-login.js +84 -0
  66. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-test-users-login.js.map +1 -0
  67. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-test-users-revoke-api-key.js +17 -0
  68. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-test-users-revoke-api-key.js.map +1 -0
  69. package/src/runtime/vendor/flywheel-cli-dist/commands/aliases.js +3 -7
  70. package/src/runtime/vendor/flywheel-cli-dist/commands/aliases.js.map +1 -1
  71. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-credentials-clear.js +12 -0
  72. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-credentials-clear.js.map +1 -0
  73. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-credentials-set.js +29 -0
  74. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-credentials-set.js.map +1 -0
  75. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-login.js +12 -0
  76. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-login.js.map +1 -1
  77. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-status.js +46 -10
  78. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-status.js.map +1 -1
  79. package/src/runtime/vendor/flywheel-cli-dist/commands/env.js +17 -40
  80. package/src/runtime/vendor/flywheel-cli-dist/commands/env.js.map +1 -1
  81. package/src/runtime/vendor/flywheel-cli-dist/commands/graph-operation-resources.js +305 -0
  82. package/src/runtime/vendor/flywheel-cli-dist/commands/graph-operation-resources.js.map +1 -0
  83. package/src/runtime/vendor/flywheel-cli-dist/commands/graph-operation-support.js +72 -0
  84. package/src/runtime/vendor/flywheel-cli-dist/commands/graph-operation-support.js.map +1 -0
  85. package/src/runtime/vendor/flywheel-cli-dist/commands/graph-operation.js +286 -0
  86. package/src/runtime/vendor/flywheel-cli-dist/commands/graph-operation.js.map +1 -0
  87. package/src/runtime/vendor/flywheel-cli-dist/commands/help-metadata.js +30 -5
  88. package/src/runtime/vendor/flywheel-cli-dist/commands/help-metadata.js.map +1 -1
  89. package/src/runtime/vendor/flywheel-cli-dist/commands/help.js +27 -12
  90. package/src/runtime/vendor/flywheel-cli-dist/commands/help.js.map +1 -1
  91. package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-commit-replay.js +284 -0
  92. package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-commit-replay.js.map +1 -0
  93. package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-graph.js +169 -0
  94. package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-graph.js.map +1 -0
  95. package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-lineage-list.js +13 -0
  96. package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-lineage-list.js.map +1 -0
  97. package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-repository-snapshot.js +227 -0
  98. package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-repository-snapshot.js.map +1 -0
  99. package/src/runtime/vendor/flywheel-cli-dist/commands/index.js +239 -263
  100. package/src/runtime/vendor/flywheel-cli-dist/commands/index.js.map +1 -1
  101. package/src/runtime/vendor/flywheel-cli-dist/commands/node-create-schema.js +25 -0
  102. package/src/runtime/vendor/flywheel-cli-dist/commands/node-create-schema.js.map +1 -0
  103. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-list.js +11 -9
  104. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-list.js.map +1 -1
  105. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-set.js +38 -45
  106. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-set.js.map +1 -1
  107. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-show.js +14 -17
  108. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-show.js.map +1 -1
  109. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-unset.js +13 -8
  110. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-unset.js.map +1 -1
  111. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/admin.js +237 -66
  112. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/admin.js.map +1 -1
  113. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/auth.js +9 -9
  114. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/auth.js.map +1 -1
  115. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/hosted.js +76 -0
  116. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/hosted.js.map +1 -0
  117. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/lifecycle.js +4 -138
  118. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/lifecycle.js.map +1 -1
  119. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/profile.js +8 -13
  120. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/profile.js.map +1 -1
  121. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/repository.js +362 -0
  122. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/repository.js.map +1 -0
  123. package/src/runtime/vendor/flywheel-cli-dist/commands/registry.js +45 -183
  124. package/src/runtime/vendor/flywheel-cli-dist/commands/registry.js.map +1 -1
  125. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-edit.js +47 -0
  126. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-edit.js.map +1 -0
  127. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-operation.js +181 -0
  128. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-operation.js.map +1 -0
  129. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-output.js +163 -0
  130. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-output.js.map +1 -0
  131. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-projection.js +79 -0
  132. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-projection.js.map +1 -0
  133. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-selection.js +80 -0
  134. package/src/runtime/vendor/flywheel-cli-dist/commands/repository-selection.js.map +1 -0
  135. package/src/runtime/vendor/flywheel-cli-dist/commands/retired-command-names.js +78 -0
  136. package/src/runtime/vendor/flywheel-cli-dist/commands/retired-command-names.js.map +1 -0
  137. package/src/runtime/vendor/flywheel-cli-dist/commands/types.js.map +1 -1
  138. package/src/runtime/vendor/flywheel-cli-dist/commands/usage-spec.js +3 -2
  139. package/src/runtime/vendor/flywheel-cli-dist/commands/usage-spec.js.map +1 -1
  140. package/src/runtime/vendor/flywheel-cli-dist/config/index.js +5 -0
  141. package/src/runtime/vendor/flywheel-cli-dist/config/index.js.map +1 -0
  142. package/src/runtime/vendor/flywheel-cli-dist/config/io.js +139 -0
  143. package/src/runtime/vendor/flywheel-cli-dist/config/io.js.map +1 -0
  144. package/src/runtime/vendor/flywheel-cli-dist/config/migration.js +299 -0
  145. package/src/runtime/vendor/flywheel-cli-dist/config/migration.js.map +1 -0
  146. package/src/runtime/vendor/flywheel-cli-dist/config/model.js +214 -0
  147. package/src/runtime/vendor/flywheel-cli-dist/config/model.js.map +1 -0
  148. package/src/runtime/vendor/flywheel-cli-dist/config/path.js +30 -0
  149. package/src/runtime/vendor/flywheel-cli-dist/config/path.js.map +1 -0
  150. package/src/runtime/vendor/flywheel-cli-dist/credential-output.js +29 -0
  151. package/src/runtime/vendor/flywheel-cli-dist/credential-output.js.map +1 -0
  152. package/src/runtime/vendor/flywheel-cli-dist/errors.js +1 -16
  153. package/src/runtime/vendor/flywheel-cli-dist/errors.js.map +1 -1
  154. package/src/runtime/vendor/flywheel-cli-dist/generatedProductTelemetryContract.js +3 -3
  155. package/src/runtime/vendor/flywheel-cli-dist/generatedProductTelemetryContract.js.map +1 -1
  156. package/src/runtime/vendor/flywheel-cli-dist/grammar/globals.js +19 -9
  157. package/src/runtime/vendor/flywheel-cli-dist/grammar/globals.js.map +1 -1
  158. package/src/runtime/vendor/flywheel-cli-dist/grammar/parse.js +33 -4
  159. package/src/runtime/vendor/flywheel-cli-dist/grammar/parse.js.map +1 -1
  160. package/src/runtime/vendor/flywheel-cli-dist/http/client.js +322 -302
  161. package/src/runtime/vendor/flywheel-cli-dist/http/client.js.map +1 -1
  162. package/src/runtime/vendor/flywheel-cli-dist/http/debug.js +1 -21
  163. package/src/runtime/vendor/flywheel-cli-dist/http/debug.js.map +1 -1
  164. package/src/runtime/vendor/flywheel-cli-dist/http/retry.js +1 -0
  165. package/src/runtime/vendor/flywheel-cli-dist/http/retry.js.map +1 -1
  166. package/src/runtime/vendor/flywheel-cli-dist/local/adapter.js +244 -0
  167. package/src/runtime/vendor/flywheel-cli-dist/local/adapter.js.map +1 -0
  168. package/src/runtime/vendor/flywheel-cli-dist/local/domain/errors.js +7 -0
  169. package/src/runtime/vendor/flywheel-cli-dist/local/domain/errors.js.map +1 -0
  170. package/src/runtime/vendor/flywheel-cli-dist/local/domain/history.js +35 -0
  171. package/src/runtime/vendor/flywheel-cli-dist/local/domain/history.js.map +1 -0
  172. package/src/runtime/vendor/flywheel-cli-dist/local/domain/invariants.js +42 -0
  173. package/src/runtime/vendor/flywheel-cli-dist/local/domain/invariants.js.map +1 -0
  174. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/artifact-properties.js +179 -0
  175. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/artifact-properties.js.map +1 -0
  176. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/commits.js +152 -0
  177. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/commits.js.map +1 -0
  178. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/constants.js +71 -0
  179. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/constants.js.map +1 -0
  180. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/encoding.js +73 -0
  181. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/encoding.js.map +1 -0
  182. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/imported-artifact-properties.js +82 -0
  183. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/imported-artifact-properties.js.map +1 -0
  184. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/operations.js +345 -0
  185. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/operations.js.map +1 -0
  186. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/tags.js +57 -0
  187. package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/tags.js.map +1 -0
  188. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/conflicts.js +149 -0
  189. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/conflicts.js.map +1 -0
  190. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/context.js +115 -0
  191. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/context.js.map +1 -0
  192. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/keys.js +44 -0
  193. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/keys.js.map +1 -0
  194. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/pull.js +159 -0
  195. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/pull.js.map +1 -0
  196. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/replay.js +346 -0
  197. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/replay.js.map +1 -0
  198. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/resolve.js +37 -0
  199. package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/resolve.js.map +1 -0
  200. package/src/runtime/vendor/flywheel-cli-dist/local/domain/revert/inverses.js +203 -0
  201. package/src/runtime/vendor/flywheel-cli-dist/local/domain/revert/inverses.js.map +1 -0
  202. package/src/runtime/vendor/flywheel-cli-dist/local/domain/revert/plan.js +207 -0
  203. package/src/runtime/vendor/flywheel-cli-dist/local/domain/revert/plan.js.map +1 -0
  204. package/src/runtime/vendor/flywheel-cli-dist/local/domain/revert/tag-inverses.js +109 -0
  205. package/src/runtime/vendor/flywheel-cli-dist/local/domain/revert/tag-inverses.js.map +1 -0
  206. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/commit.js +61 -0
  207. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/commit.js.map +1 -0
  208. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/projection.js +46 -0
  209. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/projection.js.map +1 -0
  210. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/revert.js +203 -0
  211. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/revert.js.map +1 -0
  212. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/staging.js +44 -0
  213. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/staging.js.map +1 -0
  214. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/writes.js +188 -0
  215. package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/writes.js.map +1 -0
  216. package/src/runtime/vendor/flywheel-cli-dist/local/domain/sync/cursors.js +54 -0
  217. package/src/runtime/vendor/flywheel-cli-dist/local/domain/sync/cursors.js.map +1 -0
  218. package/src/runtime/vendor/flywheel-cli-dist/local/domain/sync/local-pull.js +25 -0
  219. package/src/runtime/vendor/flywheel-cli-dist/local/domain/sync/local-pull.js.map +1 -0
  220. package/src/runtime/vendor/flywheel-cli-dist/local/domain/sync-models.js +2 -0
  221. package/src/runtime/vendor/flywheel-cli-dist/local/domain/sync-models.js.map +1 -0
  222. package/src/runtime/vendor/flywheel-cli-dist/local/fs/native.js +7 -0
  223. package/src/runtime/vendor/flywheel-cli-dist/local/fs/native.js.map +1 -0
  224. package/src/runtime/vendor/flywheel-cli-dist/local/fs/state.js +129 -0
  225. package/src/runtime/vendor/flywheel-cli-dist/local/fs/state.js.map +1 -0
  226. package/src/runtime/vendor/flywheel-cli-dist/local/fs/writer-lock.js +277 -0
  227. package/src/runtime/vendor/flywheel-cli-dist/local/fs/writer-lock.js.map +1 -0
  228. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/bootstrap.js +183 -0
  229. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/bootstrap.js.map +1 -0
  230. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/context.js +2 -0
  231. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/context.js.map +1 -0
  232. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/dispatch.js +121 -0
  233. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/dispatch.js.map +1 -0
  234. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/doctor.js +16 -0
  235. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/doctor.js.map +1 -0
  236. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/identity.js +72 -0
  237. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/identity.js.map +1 -0
  238. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/conflicts.js +59 -0
  239. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/conflicts.js.map +1 -0
  240. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/core.js +125 -0
  241. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/core.js.map +1 -0
  242. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/history.js +129 -0
  243. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/history.js.map +1 -0
  244. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/index.js +31 -0
  245. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/index.js.map +1 -0
  246. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/maintenance.js +49 -0
  247. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/maintenance.js.map +1 -0
  248. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/projections.js +30 -0
  249. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/projections.js.map +1 -0
  250. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/shared.js +12 -0
  251. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/operations/shared.js.map +1 -0
  252. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/platform.js +18 -0
  253. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/platform.js.map +1 -0
  254. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/projection.js +125 -0
  255. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/projection.js.map +1 -0
  256. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/clone.js +37 -0
  257. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/clone.js.map +1 -0
  258. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/pull.js +44 -0
  259. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/pull.js.map +1 -0
  260. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/purge.js +58 -0
  261. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/purge.js.map +1 -0
  262. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/push.js +118 -0
  263. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/push.js.map +1 -0
  264. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/transport.js +277 -0
  265. package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/transport.js.map +1 -0
  266. package/src/runtime/vendor/flywheel-cli-dist/local/store/apply.js +132 -0
  267. package/src/runtime/vendor/flywheel-cli-dist/local/store/apply.js.map +1 -0
  268. package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/archive.js +372 -0
  269. package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/archive.js.map +1 -0
  270. package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/backup.js +210 -0
  271. package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/backup.js.map +1 -0
  272. package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/restore.js +278 -0
  273. package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/restore.js.map +1 -0
  274. package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/retained-directory.js +192 -0
  275. package/src/runtime/vendor/flywheel-cli-dist/local/store/backup/retained-directory.js.map +1 -0
  276. package/src/runtime/vendor/flywheel-cli-dist/local/store/commits.js +114 -0
  277. package/src/runtime/vendor/flywheel-cli-dist/local/store/commits.js.map +1 -0
  278. package/src/runtime/vendor/flywheel-cli-dist/local/store/contract.js +65 -0
  279. package/src/runtime/vendor/flywheel-cli-dist/local/store/contract.js.map +1 -0
  280. package/src/runtime/vendor/flywheel-cli-dist/local/store/diagnostics-worker.js +145 -0
  281. package/src/runtime/vendor/flywheel-cli-dist/local/store/diagnostics-worker.js.map +1 -0
  282. package/src/runtime/vendor/flywheel-cli-dist/local/store/diagnostics.js +218 -0
  283. package/src/runtime/vendor/flywheel-cli-dist/local/store/diagnostics.js.map +1 -0
  284. package/src/runtime/vendor/flywheel-cli-dist/local/store/gc.js +71 -0
  285. package/src/runtime/vendor/flywheel-cli-dist/local/store/gc.js.map +1 -0
  286. package/src/runtime/vendor/flywheel-cli-dist/local/store/history-validation.js +298 -0
  287. package/src/runtime/vendor/flywheel-cli-dist/local/store/history-validation.js.map +1 -0
  288. package/src/runtime/vendor/flywheel-cli-dist/local/store/latest-values.js +121 -0
  289. package/src/runtime/vendor/flywheel-cli-dist/local/store/latest-values.js.map +1 -0
  290. package/src/runtime/vendor/flywheel-cli-dist/local/store/migrate.js +69 -0
  291. package/src/runtime/vendor/flywheel-cli-dist/local/store/migrate.js.map +1 -0
  292. package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/provenance.js +49 -0
  293. package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/provenance.js.map +1 -0
  294. package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/steps.js +424 -0
  295. package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/steps.js.map +1 -0
  296. package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/versions.js +10 -0
  297. package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/versions.js.map +1 -0
  298. package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations/001_initial.sql +319 -0
  299. package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations/002_staged_latest_values.sql +8 -0
  300. package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations/003_remove_cli_editing_lease.sql +21 -0
  301. package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations/004_hosted_association.sql +7 -0
  302. package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations/005_artifact_properties.sql +68 -0
  303. package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations.js +12 -0
  304. package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations.js.map +1 -0
  305. package/src/runtime/vendor/flywheel-cli-dist/local/store/objects.js +410 -0
  306. package/src/runtime/vendor/flywheel-cli-dist/local/store/objects.js.map +1 -0
  307. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/apply.js +77 -0
  308. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/apply.js.map +1 -0
  309. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/artifacts.js +240 -0
  310. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/artifacts.js.map +1 -0
  311. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/nodes.js +127 -0
  312. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/nodes.js.map +1 -0
  313. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/relations.js +107 -0
  314. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/relations.js.map +1 -0
  315. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/rules.js +80 -0
  316. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/rules.js.map +1 -0
  317. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/tags.js +219 -0
  318. package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/tags.js.map +1 -0
  319. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/hosted.js +164 -0
  320. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/hosted.js.map +1 -0
  321. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/read.js +20 -0
  322. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/read.js.map +1 -0
  323. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/replace.js +41 -0
  324. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/replace.js.map +1 -0
  325. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/schema.js +22 -0
  326. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/schema.js.map +1 -0
  327. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/validate.js +188 -0
  328. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/validate.js.map +1 -0
  329. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot.js +5 -0
  330. package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot.js.map +1 -0
  331. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/connection.js +214 -0
  332. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/connection.js.map +1 -0
  333. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/errors.js +4 -0
  334. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/errors.js.map +1 -0
  335. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/rows.js +44 -0
  336. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/rows.js.map +1 -0
  337. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/schema.js +38 -0
  338. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/schema.js.map +1 -0
  339. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/store.js +284 -0
  340. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/store.js.map +1 -0
  341. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/verify.js +133 -0
  342. package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/verify.js.map +1 -0
  343. package/src/runtime/vendor/flywheel-cli-dist/local/store/sync-commits.js +98 -0
  344. package/src/runtime/vendor/flywheel-cli-dist/local/store/sync-commits.js.map +1 -0
  345. package/src/runtime/vendor/flywheel-cli-dist/local/store/sync.js +161 -0
  346. package/src/runtime/vendor/flywheel-cli-dist/local/store/sync.js.map +1 -0
  347. package/src/runtime/vendor/flywheel-cli-dist/local/store/workspace-state.js +97 -0
  348. package/src/runtime/vendor/flywheel-cli-dist/local/store/workspace-state.js.map +1 -0
  349. package/src/runtime/vendor/flywheel-cli-dist/local/store/workspace.js +69 -0
  350. package/src/runtime/vendor/flywheel-cli-dist/local/store/workspace.js.map +1 -0
  351. package/src/runtime/vendor/flywheel-cli-dist/main.js +651 -376
  352. package/src/runtime/vendor/flywheel-cli-dist/main.js.map +1 -1
  353. package/src/runtime/vendor/flywheel-cli-dist/output/format.js +18 -11
  354. package/src/runtime/vendor/flywheel-cli-dist/output/format.js.map +1 -1
  355. package/src/runtime/vendor/flywheel-cli-dist/prebuilds/darwin-arm64/node.napi.node +0 -0
  356. package/src/runtime/vendor/flywheel-cli-dist/prebuilds/darwin-x64/node.napi.node +0 -0
  357. package/src/runtime/vendor/flywheel-cli-dist/prebuilds/linux-arm64/node.napi.glibc.node +0 -0
  358. package/src/runtime/vendor/flywheel-cli-dist/prebuilds/linux-arm64/node.napi.musl.node +0 -0
  359. package/src/runtime/vendor/flywheel-cli-dist/prebuilds/linux-x64/node.napi.glibc.node +0 -0
  360. package/src/runtime/vendor/flywheel-cli-dist/prebuilds/linux-x64/node.napi.musl.node +0 -0
  361. package/src/runtime/vendor/manifest.json +252 -254
  362. package/src/setup/command.mjs +5 -0
  363. package/src/setup/io/patchers/json.mjs +1 -1
  364. package/src/setup/io/patchers/toml.mjs +3 -1
  365. package/src/setup/io/patchers/yaml.mjs +1 -1
  366. package/src/setup/modes/cli.mjs +76 -7
  367. package/src/setup/modes/mcp-command.mjs +802 -793
  368. package/src/setup/modes/mcp.mjs +7 -3
  369. package/src/setup/shared/prior-mode-detect.mjs +18 -21
  370. package/src/setup/test-seams.mjs +25 -0
  371. package/src/setup-auth.mjs +76 -10
  372. package/src/toml-lines.mjs +52 -0
  373. package/src/unified-cli.mjs +31 -16
  374. package/skills/flywheel-llm-proof-paper/scripts/__pycache__/check_paper.cpython-312.pyc +0 -0
  375. package/src/runtime/vendor/flywheel-cli-dist/auth/active-key-id.d.ts +0 -1
  376. package/src/runtime/vendor/flywheel-cli-dist/auth/baseurl.d.ts +0 -35
  377. package/src/runtime/vendor/flywheel-cli-dist/auth/config.d.ts +0 -34
  378. package/src/runtime/vendor/flywheel-cli-dist/auth/config.js +0 -92
  379. package/src/runtime/vendor/flywheel-cli-dist/auth/config.js.map +0 -1
  380. package/src/runtime/vendor/flywheel-cli-dist/auth/fingerprint.d.ts +0 -5
  381. package/src/runtime/vendor/flywheel-cli-dist/auth/keychain.d.ts +0 -4
  382. package/src/runtime/vendor/flywheel-cli-dist/auth/keychain.js +0 -31
  383. package/src/runtime/vendor/flywheel-cli-dist/auth/keychain.js.map +0 -1
  384. package/src/runtime/vendor/flywheel-cli-dist/auth/login.d.ts +0 -24
  385. package/src/runtime/vendor/flywheel-cli-dist/auth/profile.d.ts +0 -15
  386. package/src/runtime/vendor/flywheel-cli-dist/auth/profile.js +0 -150
  387. package/src/runtime/vendor/flywheel-cli-dist/auth/profile.js.map +0 -1
  388. package/src/runtime/vendor/flywheel-cli-dist/auth/profiles.d.ts +0 -27
  389. package/src/runtime/vendor/flywheel-cli-dist/commands/_admin-auth.d.ts +0 -27
  390. package/src/runtime/vendor/flywheel-cli-dist/commands/_artifacts-upload-helpers.d.ts +0 -32
  391. package/src/runtime/vendor/flywheel-cli-dist/commands/_artifacts-upload-helpers.js +0 -213
  392. package/src/runtime/vendor/flywheel-cli-dist/commands/_artifacts-upload-helpers.js.map +0 -1
  393. package/src/runtime/vendor/flywheel-cli-dist/commands/_browser-handoff.d.ts +0 -21
  394. package/src/runtime/vendor/flywheel-cli-dist/commands/_open-url.d.ts +0 -2
  395. package/src/runtime/vendor/flywheel-cli-dist/commands/_secret-param.d.ts +0 -7
  396. package/src/runtime/vendor/flywheel-cli-dist/commands/_stream-file-out.d.ts +0 -39
  397. package/src/runtime/vendor/flywheel-cli-dist/commands/_stream-writer.d.ts +0 -34
  398. package/src/runtime/vendor/flywheel-cli-dist/commands/_wait-polling.d.ts +0 -50
  399. package/src/runtime/vendor/flywheel-cli-dist/commands/account-detach.d.ts +0 -2
  400. package/src/runtime/vendor/flywheel-cli-dist/commands/account-emails-add.d.ts +0 -2
  401. package/src/runtime/vendor/flywheel-cli-dist/commands/account-emails-remove.d.ts +0 -2
  402. package/src/runtime/vendor/flywheel-cli-dist/commands/account-emails-set-primary.d.ts +0 -2
  403. package/src/runtime/vendor/flywheel-cli-dist/commands/account-get.d.ts +0 -2
  404. package/src/runtime/vendor/flywheel-cli-dist/commands/account-merge-preview.d.ts +0 -2
  405. package/src/runtime/vendor/flywheel-cli-dist/commands/account-merge-proof.d.ts +0 -2
  406. package/src/runtime/vendor/flywheel-cli-dist/commands/account-merge.d.ts +0 -2
  407. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-compute-policy-get.d.ts +0 -2
  408. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-compute-policy-set.d.ts +0 -2
  409. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-graphs-export-stream.d.ts +0 -2
  410. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-graphs-export.d.ts +0 -2
  411. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-graphs-list.d.ts +0 -4
  412. package/src/runtime/vendor/flywheel-cli-dist/commands/admin-nodes-audit-list.d.ts +0 -2
  413. package/src/runtime/vendor/flywheel-cli-dist/commands/aliases.d.ts +0 -13
  414. package/src/runtime/vendor/flywheel-cli-dist/commands/api-keys-create.d.ts +0 -2
  415. package/src/runtime/vendor/flywheel-cli-dist/commands/api-keys-delete.d.ts +0 -2
  416. package/src/runtime/vendor/flywheel-cli-dist/commands/api-keys-list.d.ts +0 -18
  417. package/src/runtime/vendor/flywheel-cli-dist/commands/api-keys-rotate.d.ts +0 -2
  418. package/src/runtime/vendor/flywheel-cli-dist/commands/approval-sessions-expire.d.ts +0 -2
  419. package/src/runtime/vendor/flywheel-cli-dist/commands/approval-sessions-heartbeat.d.ts +0 -2
  420. package/src/runtime/vendor/flywheel-cli-dist/commands/approval-sessions-list.d.ts +0 -2
  421. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-delete-bulk.d.ts +0 -2
  422. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-delete-bulk.js +0 -22
  423. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-delete-bulk.js.map +0 -1
  424. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-delete.d.ts +0 -2
  425. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-delete.js +0 -8
  426. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-delete.js.map +0 -1
  427. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-get.d.ts +0 -2
  428. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-list.d.ts +0 -2
  429. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-note-set.d.ts +0 -2
  430. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-note-set.js +0 -9
  431. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-note-set.js.map +0 -1
  432. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-upload-finalize.d.ts +0 -2
  433. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-upload-finalize.js +0 -7
  434. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-upload-finalize.js.map +0 -1
  435. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-upload-prepare.d.ts +0 -2
  436. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-upload-prepare.js +0 -15
  437. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-upload-prepare.js.map +0 -1
  438. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-upload.d.ts +0 -2
  439. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-upload.js +0 -5
  440. package/src/runtime/vendor/flywheel-cli-dist/commands/artifacts-upload.js.map +0 -1
  441. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-keychain-clear.d.ts +0 -2
  442. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-keychain-clear.js +0 -8
  443. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-keychain-clear.js.map +0 -1
  444. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-keychain-set.d.ts +0 -2
  445. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-keychain-set.js +0 -30
  446. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-keychain-set.js.map +0 -1
  447. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-login.d.ts +0 -2
  448. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-mode.d.ts +0 -4
  449. package/src/runtime/vendor/flywheel-cli-dist/commands/auth-status.d.ts +0 -2
  450. package/src/runtime/vendor/flywheel-cli-dist/commands/blobs-get.d.ts +0 -2
  451. package/src/runtime/vendor/flywheel-cli-dist/commands/campaign-budgets-create.d.ts +0 -2
  452. package/src/runtime/vendor/flywheel-cli-dist/commands/campaign-budgets-list.d.ts +0 -1
  453. package/src/runtime/vendor/flywheel-cli-dist/commands/campaign-budgets-revoke.d.ts +0 -1
  454. package/src/runtime/vendor/flywheel-cli-dist/commands/campaign-budgets-update.d.ts +0 -2
  455. package/src/runtime/vendor/flywheel-cli-dist/commands/campaign-snapshot.d.ts +0 -1
  456. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-acquire.d.ts +0 -2
  457. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-budgets.d.ts +0 -2
  458. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-connection.d.ts +0 -2
  459. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-funding.d.ts +0 -2
  460. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-grants-list.d.ts +0 -2
  461. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-grants-request-approval.d.ts +0 -2
  462. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-options.d.ts +0 -2
  463. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-release-all.d.ts +0 -2
  464. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-release.d.ts +0 -2
  465. package/src/runtime/vendor/flywheel-cli-dist/commands/compute-status.d.ts +0 -2
  466. package/src/runtime/vendor/flywheel-cli-dist/commands/credits-balance.d.ts +0 -1
  467. package/src/runtime/vendor/flywheel-cli-dist/commands/credits-billing-portal.d.ts +0 -2
  468. package/src/runtime/vendor/flywheel-cli-dist/commands/credits-purchase.d.ts +0 -2
  469. package/src/runtime/vendor/flywheel-cli-dist/commands/credits-referral-claim.d.ts +0 -2
  470. package/src/runtime/vendor/flywheel-cli-dist/commands/credits-referral.d.ts +0 -1
  471. package/src/runtime/vendor/flywheel-cli-dist/commands/credits-subscribe.d.ts +0 -2
  472. package/src/runtime/vendor/flywheel-cli-dist/commands/credits-subscription.d.ts +0 -1
  473. package/src/runtime/vendor/flywheel-cli-dist/commands/credits-transactions.d.ts +0 -2
  474. package/src/runtime/vendor/flywheel-cli-dist/commands/credits-usage.d.ts +0 -2
  475. package/src/runtime/vendor/flywheel-cli-dist/commands/destructive-confirmation.d.ts +0 -2
  476. package/src/runtime/vendor/flywheel-cli-dist/commands/enums.d.ts +0 -22
  477. package/src/runtime/vendor/flywheel-cli-dist/commands/env.d.ts +0 -8
  478. package/src/runtime/vendor/flywheel-cli-dist/commands/executions-launch.d.ts +0 -2
  479. package/src/runtime/vendor/flywheel-cli-dist/commands/executions-list.d.ts +0 -1
  480. package/src/runtime/vendor/flywheel-cli-dist/commands/executions-terminate.d.ts +0 -2
  481. package/src/runtime/vendor/flywheel-cli-dist/commands/export-history.d.ts +0 -2
  482. package/src/runtime/vendor/flywheel-cli-dist/commands/export-subgraph.d.ts +0 -2
  483. package/src/runtime/vendor/flywheel-cli-dist/commands/export-summary-pdf.d.ts +0 -2
  484. package/src/runtime/vendor/flywheel-cli-dist/commands/export-summary-render-pdf.d.ts +0 -2
  485. package/src/runtime/vendor/flywheel-cli-dist/commands/export-summary-stream.d.ts +0 -2
  486. package/src/runtime/vendor/flywheel-cli-dist/commands/export-summary.d.ts +0 -2
  487. package/src/runtime/vendor/flywheel-cli-dist/commands/feedback-create.d.ts +0 -2
  488. package/src/runtime/vendor/flywheel-cli-dist/commands/files-list.d.ts +0 -2
  489. package/src/runtime/vendor/flywheel-cli-dist/commands/github-disconnect.d.ts +0 -1
  490. package/src/runtime/vendor/flywheel-cli-dist/commands/github-link.d.ts +0 -2
  491. package/src/runtime/vendor/flywheel-cli-dist/commands/github-refresh-repos.d.ts +0 -1
  492. package/src/runtime/vendor/flywheel-cli-dist/commands/github-status.d.ts +0 -1
  493. package/src/runtime/vendor/flywheel-cli-dist/commands/graph-get.d.ts +0 -2
  494. package/src/runtime/vendor/flywheel-cli-dist/commands/handler-factory.d.ts +0 -22
  495. package/src/runtime/vendor/flywheel-cli-dist/commands/help-format.d.ts +0 -31
  496. package/src/runtime/vendor/flywheel-cli-dist/commands/help-metadata.d.ts +0 -36
  497. package/src/runtime/vendor/flywheel-cli-dist/commands/help.d.ts +0 -17
  498. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-create.d.ts +0 -2
  499. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-delete.d.ts +0 -1
  500. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-list.d.ts +0 -2
  501. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-runs-list.d.ts +0 -2
  502. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-secrets-create.d.ts +0 -2
  503. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-secrets-delete.d.ts +0 -1
  504. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-secrets-list.d.ts +0 -1
  505. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-secrets-update.d.ts +0 -2
  506. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-set-enabled.d.ts +0 -2
  507. package/src/runtime/vendor/flywheel-cli-dist/commands/hooks-update.d.ts +0 -2
  508. package/src/runtime/vendor/flywheel-cli-dist/commands/import-subgraph.d.ts +0 -2
  509. package/src/runtime/vendor/flywheel-cli-dist/commands/index.d.ts +0 -23
  510. package/src/runtime/vendor/flywheel-cli-dist/commands/integrations-huggingface-remove.d.ts +0 -1
  511. package/src/runtime/vendor/flywheel-cli-dist/commands/integrations-huggingface-set.d.ts +0 -2
  512. package/src/runtime/vendor/flywheel-cli-dist/commands/integrations-status.d.ts +0 -1
  513. package/src/runtime/vendor/flywheel-cli-dist/commands/integrations-wandb-remove.d.ts +0 -1
  514. package/src/runtime/vendor/flywheel-cli-dist/commands/integrations-wandb-set.d.ts +0 -2
  515. package/src/runtime/vendor/flywheel-cli-dist/commands/machines-list.d.ts +0 -1
  516. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-add-parent.d.ts +0 -2
  517. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-add-parent.js +0 -15
  518. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-add-parent.js.map +0 -1
  519. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-branch.d.ts +0 -2
  520. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-branch.js +0 -10
  521. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-branch.js.map +0 -1
  522. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-children.d.ts +0 -2
  523. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-children.js +0 -8
  524. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-children.js.map +0 -1
  525. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-commit-new.d.ts +0 -2
  526. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-commit-new.js +0 -6
  527. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-commit-new.js.map +0 -1
  528. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-commit.d.ts +0 -2
  529. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-commit.js +0 -7
  530. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-commit.js.map +0 -1
  531. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-create.d.ts +0 -2
  532. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-create.js +0 -6
  533. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-create.js.map +0 -1
  534. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-delete-bulk.d.ts +0 -2
  535. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-delete-bulk.js +0 -16
  536. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-delete-bulk.js.map +0 -1
  537. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-delete.d.ts +0 -2
  538. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-delete.js +0 -11
  539. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-delete.js.map +0 -1
  540. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-files.d.ts +0 -1
  541. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-get.d.ts +0 -2
  542. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-list.d.ts +0 -2
  543. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-merge.d.ts +0 -2
  544. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-merge.js +0 -33
  545. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-merge.js.map +0 -1
  546. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-parents.d.ts +0 -2
  547. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-parents.js +0 -8
  548. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-parents.js.map +0 -1
  549. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-remove-parent.d.ts +0 -2
  550. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-remove-parent.js +0 -15
  551. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-remove-parent.js.map +0 -1
  552. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-render-ancestry.d.ts +0 -2
  553. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-render-summary.d.ts +0 -2
  554. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-render-tree.d.ts +0 -2
  555. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-resolve-slug.d.ts +0 -2
  556. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-sharing-get.d.ts +0 -1
  557. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-sharing-set-bulk.d.ts +0 -2
  558. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-sharing-set.d.ts +0 -2
  559. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-sharing-summaries.d.ts +0 -2
  560. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-stage-lease-acquire.d.ts +0 -2
  561. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-stage-lease-heartbeat.d.ts +0 -2
  562. package/src/runtime/vendor/flywheel-cli-dist/commands/nodes-stage-lease-release.d.ts +0 -2
  563. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-list.d.ts +0 -2
  564. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-set.d.ts +0 -2
  565. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-show.d.ts +0 -2
  566. package/src/runtime/vendor/flywheel-cli-dist/commands/profile-unset.d.ts +0 -2
  567. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/account.d.ts +0 -2
  568. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/admin.d.ts +0 -8
  569. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/api-keys.d.ts +0 -2
  570. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/approval.d.ts +0 -2
  571. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/artifacts.d.ts +0 -2
  572. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/artifacts.js +0 -140
  573. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/artifacts.js.map +0 -1
  574. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/auth.d.ts +0 -2
  575. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/budgets.d.ts +0 -2
  576. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/compute.d.ts +0 -2
  577. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/credits.d.ts +0 -2
  578. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/env.d.ts +0 -2
  579. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/executions.d.ts +0 -2
  580. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/export.d.ts +0 -2
  581. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/github.d.ts +0 -2
  582. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/graph.d.ts +0 -2
  583. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/hooks.d.ts +0 -2
  584. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/integrations.d.ts +0 -2
  585. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/lifecycle.d.ts +0 -2
  586. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/profile.d.ts +0 -2
  587. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/resources.d.ts +0 -2
  588. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/sharing.d.ts +0 -2
  589. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/tagging.d.ts +0 -2
  590. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/tagging.js +0 -98
  591. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/tagging.js.map +0 -1
  592. package/src/runtime/vendor/flywheel-cli-dist/commands/registry/updates.d.ts +0 -2
  593. package/src/runtime/vendor/flywheel-cli-dist/commands/registry.d.ts +0 -27
  594. package/src/runtime/vendor/flywheel-cli-dist/commands/remote-artifacts-refresh.d.ts +0 -2
  595. package/src/runtime/vendor/flywheel-cli-dist/commands/remote-artifacts-resolve.d.ts +0 -2
  596. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-assign.d.ts +0 -2
  597. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-assign.js +0 -25
  598. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-assign.js.map +0 -1
  599. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-create.d.ts +0 -2
  600. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-create.js +0 -25
  601. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-create.js.map +0 -1
  602. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-delete.d.ts +0 -2
  603. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-delete.js +0 -11
  604. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-delete.js.map +0 -1
  605. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-update.d.ts +0 -2
  606. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-update.js +0 -28
  607. package/src/runtime/vendor/flywheel-cli-dist/commands/tags-update.js.map +0 -1
  608. package/src/runtime/vendor/flywheel-cli-dist/commands/types.d.ts +0 -30
  609. package/src/runtime/vendor/flywheel-cli-dist/commands/updates-hide-all-active.d.ts +0 -1
  610. package/src/runtime/vendor/flywheel-cli-dist/commands/updates-hide.d.ts +0 -2
  611. package/src/runtime/vendor/flywheel-cli-dist/commands/updates-list.d.ts +0 -2
  612. package/src/runtime/vendor/flywheel-cli-dist/commands/usage-spec.d.ts +0 -6
  613. package/src/runtime/vendor/flywheel-cli-dist/commands/utils.d.ts +0 -11
  614. package/src/runtime/vendor/flywheel-cli-dist/errors.d.ts +0 -86
  615. package/src/runtime/vendor/flywheel-cli-dist/exit-codes.d.ts +0 -8
  616. package/src/runtime/vendor/flywheel-cli-dist/generatedFeedbackContract.d.ts +0 -41
  617. package/src/runtime/vendor/flywheel-cli-dist/generatedProductTelemetryContract.d.ts +0 -13
  618. package/src/runtime/vendor/flywheel-cli-dist/grammar/globals.d.ts +0 -26
  619. package/src/runtime/vendor/flywheel-cli-dist/grammar/parse.d.ts +0 -17
  620. package/src/runtime/vendor/flywheel-cli-dist/http/client.d.ts +0 -91
  621. package/src/runtime/vendor/flywheel-cli-dist/http/debug.d.ts +0 -5
  622. package/src/runtime/vendor/flywheel-cli-dist/http/poll.d.ts +0 -18
  623. package/src/runtime/vendor/flywheel-cli-dist/http/retry.d.ts +0 -30
  624. package/src/runtime/vendor/flywheel-cli-dist/main.d.ts +0 -33
  625. package/src/runtime/vendor/flywheel-cli-dist/output/format.d.ts +0 -9
  626. package/src/runtime/vendor/flywheel-cli-dist/runtime-entry.d.ts +0 -1
  627. package/src/runtime/vendor/flywheel-cli-dist/version.d.ts +0 -3
  628. package/src/secure-write.mjs +0 -43
@@ -0,0 +1,181 @@
1
+ import { randomUUID } from "node:crypto";
2
+ import os from "node:os";
3
+ import path, { resolve } from "node:path";
4
+ import { readFile } from "node:fs/promises";
5
+ import { loadFlywheelConfig, saveFlywheelConfig } from "../config/index.js";
6
+ import { shellQuote } from "./repository-selection.js";
7
+ import { requiredString } from "./utils.js";
8
+ const local = (method, suffix) => ({
9
+ method,
10
+ path: () => suffix,
11
+ transport: "local",
12
+ });
13
+ const SPECS = {
14
+ "repo:init": { method: "POST", path: () => "", transport: "bootstrap" },
15
+ "repo:clone": { method: "POST", path: () => "", transport: "bootstrap" },
16
+ "repo:restore": { method: "POST", path: () => "", transport: "bootstrap" },
17
+ "repo:status": local("GET", "/status"),
18
+ "repo:doctor": local("GET", "/doctor"),
19
+ "repo:commit": local("POST", "/commits"),
20
+ "repo:log": local("GET", "/commits"),
21
+ "repo:diff": local("GET", "/diff"),
22
+ "repo:revert": local("POST", "/reverts"),
23
+ "repo:pull": local("POST", "/sync/pulls"),
24
+ "repo:push": local("POST", "/sync/pushes"),
25
+ "repo:purge": local("POST", "/sync/purges"),
26
+ "repo:backup": local("POST", "/backups"),
27
+ "repo:gc": local("POST", "/gc"),
28
+ "repo:conflicts:list": local("GET", "/conflicts"),
29
+ "repo:conflicts:show": {
30
+ ...local("GET", "/conflicts"),
31
+ path: (params) => `/conflicts/${encodeURIComponent(requiredString(params, "conflict_id"))}`,
32
+ },
33
+ "repo:conflicts:resolve": {
34
+ ...local("POST", "/conflicts"),
35
+ path: (params) => `/conflicts/${encodeURIComponent(requiredString(params, "conflict_id"))}/resolution`,
36
+ },
37
+ "repo:rebase:continue": {
38
+ ...local("POST", "/rebases"),
39
+ path: (params) => `/rebases/${encodeURIComponent(requiredString(params, "rebase_id"))}/continue`,
40
+ },
41
+ "repo:rebase:abort": {
42
+ ...local("POST", "/rebases"),
43
+ path: (params) => `/rebases/${encodeURIComponent(requiredString(params, "rebase_id"))}/abort`,
44
+ },
45
+ };
46
+ function operationHandler(command) {
47
+ const spec = SPECS[command];
48
+ if (!spec)
49
+ throw new Error(`unknown repository operation command: ${command}`);
50
+ return async (context) => {
51
+ if (spec.transport === "bootstrap") {
52
+ if (!context.repositoryBootstrap) {
53
+ throw new Error("local repository bootstrap is unavailable");
54
+ }
55
+ if (command === "repo:init" && context.repositoryInitPersonal) {
56
+ const input = typeof context.params.directory === "string"
57
+ ? context.params.directory
58
+ : path.join(os.homedir(), "Flywheel");
59
+ const expanded = input === "~" || input.startsWith("~/")
60
+ ? path.join(os.homedir(), input.slice(2))
61
+ : input;
62
+ const target = resolve(expanded);
63
+ const result = await context.repositoryBootstrap("init", {
64
+ directory: target,
65
+ adopt: true,
66
+ });
67
+ try {
68
+ const config = await loadFlywheelConfig({
69
+ env: {
70
+ ...process.env,
71
+ FLYWHEEL_CLI_CONFIG_PATH: context.configPath,
72
+ },
73
+ });
74
+ config.repositories = { personal: target };
75
+ await saveFlywheelConfig(config, context.configPath);
76
+ }
77
+ catch (cause) {
78
+ throw new Error(`The repository was initialized at ${target}, but the personal repository setting was not saved. Retry: flywheel repo:init --personal ${shellQuote(target)}`, { cause });
79
+ }
80
+ return result;
81
+ }
82
+ const bootstrapOperation = command.slice("repo:".length);
83
+ return context.repositoryBootstrap(bootstrapOperation, context.params);
84
+ }
85
+ if (!context.requestLocalJson) {
86
+ throw new Error("local repository transport is unavailable");
87
+ }
88
+ const repositoryPath = context.repositorySelection?.root;
89
+ if (!repositoryPath) {
90
+ throw new Error("resolved local repository selection is unavailable");
91
+ }
92
+ let body = Object.fromEntries(Object.entries(context.params).filter(([name]) => !["repo", "personal", "conflict_id", "rebase_id"].includes(name)));
93
+ if (command === "repo:commit" || command === "repo:revert") {
94
+ // Two read-only direct requests run concurrently and neither takes the
95
+ // writer lock. They are only precondition hints: a racing commit is
96
+ // rejected inside the write transaction by the stale-head and stale-
97
+ // staging checks, rather than committing the wrong staging.
98
+ const [staging, head] = await Promise.all([
99
+ context.requestLocalJson(repositoryPath, "GET", "/staging"),
100
+ context.requestLocalJson(repositoryPath, "GET", "/local-head"),
101
+ ]);
102
+ body =
103
+ command === "repo:commit"
104
+ ? {
105
+ expected_local_head: head.current_local_head,
106
+ staging_digest: staging.staging_digest,
107
+ message: typeof context.params.message === "string"
108
+ ? context.params.message
109
+ : null,
110
+ }
111
+ : {
112
+ operation_id: randomUUID(),
113
+ expected_local_head: head.current_local_head,
114
+ commit_id: requiredString(context.params, "commit_id"),
115
+ };
116
+ }
117
+ else if (command === "repo:conflicts:resolve") {
118
+ const valueFile = context.params["value-file"];
119
+ body = {
120
+ operation_id: randomUUID(),
121
+ strategy: requiredString(context.params, "strategy"),
122
+ manual_value: typeof valueFile === "string"
123
+ ? await readFile(valueFile, "utf8")
124
+ : null,
125
+ };
126
+ }
127
+ else if (command === "repo:rebase:continue" ||
128
+ command === "repo:rebase:abort") {
129
+ const head = await context.requestLocalJson(repositoryPath, "GET", "/local-head");
130
+ body = {
131
+ operation_id: randomUUID(),
132
+ expected_local_head: head.current_local_head,
133
+ };
134
+ }
135
+ else if (command === "repo:pull") {
136
+ const status = await context.requestLocalJson(repositoryPath, "GET", "/status");
137
+ body = {
138
+ pull_id: context.globals?.idempotencyKey ?? randomUUID(),
139
+ object_mode: typeof context.params.objects === "string"
140
+ ? context.params.objects
141
+ : status.sync.object_mode,
142
+ };
143
+ }
144
+ else if (command === "repo:push") {
145
+ body = {
146
+ push_id: context.globals?.idempotencyKey ?? randomUUID(),
147
+ create_remote: context.params["create-remote"] === true,
148
+ };
149
+ }
150
+ else if (command === "repo:purge") {
151
+ body = {
152
+ purge_id: context.globals?.idempotencyKey ?? randomUUID(),
153
+ node_id: requiredString(context.params, "node_id"),
154
+ confirm_node_id: requiredString(context.params, "confirm"),
155
+ };
156
+ }
157
+ if (command === "repo:gc") {
158
+ body = { dry_run: context.params["dry-run"] === true };
159
+ }
160
+ if (command === "repo:backup") {
161
+ body = {
162
+ ...body,
163
+ destination: resolve(requiredString(context.params, "destination")),
164
+ };
165
+ }
166
+ const suffix = spec.path(context.params);
167
+ return context.requestLocalJson(repositoryPath, spec.method, suffix, spec.method === "GET" ? queryOptions(body) : { body });
168
+ };
169
+ }
170
+ function queryOptions(body) {
171
+ const query = {};
172
+ for (const [name, value] of Object.entries(body)) {
173
+ if (typeof value === "string" || typeof value === "boolean") {
174
+ query[name] = value;
175
+ }
176
+ }
177
+ return { query };
178
+ }
179
+ export const repositoryOperationHandlers = Object.fromEntries(Object.keys(SPECS).map((command) => [command, operationHandler(command)]));
180
+ export const repositoryLocalOperationNames = Object.freeze(Object.keys(SPECS));
181
+ //# sourceMappingURL=repository-operation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repository-operation.js","sourceRoot":"","sources":["../../src/commands/repository-operation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,163 @@
1
+ import { shellQuote, } from "./repository-selection.js";
2
+ function record(value) {
3
+ return value !== null && typeof value === "object" && !Array.isArray(value)
4
+ ? value
5
+ : {};
6
+ }
7
+ function string(value) {
8
+ return typeof value === "string" && value.trim() ? value : "none";
9
+ }
10
+ function count(value) {
11
+ return typeof value === "number" && Number.isInteger(value) && value >= 0
12
+ ? value
13
+ : 0;
14
+ }
15
+ function plural(countValue, singular) {
16
+ return `${countValue} ${singular}${countValue === 1 ? "" : "s"}`;
17
+ }
18
+ function repositoryArgument(selection) {
19
+ if (selection?.source === "working-directory")
20
+ return "";
21
+ if (selection?.source === "personal")
22
+ return " --personal";
23
+ return selection ? ` --repo ${shellQuote(selection.root)}` : "";
24
+ }
25
+ function arrayCount(value) {
26
+ return Array.isArray(value) ? value.length : 0;
27
+ }
28
+ function renderDiff(payload, selection) {
29
+ const diff = record(payload);
30
+ const operations = arrayCount(diff.operation_changes);
31
+ const latestValues = arrayCount(diff.latest_field_changes);
32
+ const staged = count(record(diff.staging).operation_count);
33
+ const repo = repositoryArgument(selection);
34
+ const state = staged > 0
35
+ ? "staged"
36
+ : operations > 0 || latestValues > 0
37
+ ? "committed local history differs from remote-tracking head"
38
+ : "clean";
39
+ const next = staged > 0
40
+ ? `flywheel repo:commit${repo}`
41
+ : state === "clean"
42
+ ? `flywheel repo:node:create${repo} --title "First node"`
43
+ : `flywheel repo:push${repo}`;
44
+ return [
45
+ `State: ${state}`,
46
+ `Diff: ${plural(operations, "graph operation")}, ${plural(latestValues, "latest-value change")}`,
47
+ `Staged: ${plural(staged, "graph operation")}`,
48
+ `Next: ${next}`,
49
+ "",
50
+ ].join("\n");
51
+ }
52
+ function renderStatus(payload, selection) {
53
+ const status = record(payload);
54
+ const heads = record(status.heads);
55
+ const staging = record(status.staging);
56
+ const conflicts = record(status.conflicts);
57
+ const hosted = record(status.hosted_repository);
58
+ const repo = repositoryArgument(selection);
59
+ const staged = count(staging.operation_count);
60
+ const openConflicts = count(conflicts.open);
61
+ const localHead = string(heads.workspace);
62
+ const remoteHead = string(heads.remote_tracking);
63
+ const hostedAttached = hosted.state === "attached";
64
+ let state;
65
+ let next;
66
+ if (openConflicts > 0) {
67
+ state = `conflict (${plural(openConflicts, "open conflict")})`;
68
+ next = `flywheel repo:conflicts:list${repo}`;
69
+ }
70
+ else if (staged > 0) {
71
+ state = `staged (${plural(staged, "graph operation")})`;
72
+ next = `flywheel repo:commit${repo}`;
73
+ }
74
+ else if (localHead === "none") {
75
+ state = "clean (no committed graph history)";
76
+ next = `flywheel repo:node:create${repo} --title "First node"`;
77
+ }
78
+ else if (!hostedAttached) {
79
+ state = "committed local history has no hosted repository";
80
+ next = `flywheel repo:push${repo} --create-remote`;
81
+ }
82
+ else if (localHead !== remoteHead) {
83
+ state = "committed local history differs from remote-tracking head";
84
+ next = `flywheel repo:push${repo}`;
85
+ }
86
+ else {
87
+ state = "clean";
88
+ next = `flywheel repo:node:create${repo} --title "Next node"`;
89
+ }
90
+ return [
91
+ `Repository: ${string(status.repository_id)}`,
92
+ `Hosted repository: ${hostedAttached ? string(hosted.repository_id) : "not attached"}`,
93
+ ...(hostedAttached
94
+ ? [
95
+ `Hosted service: ${string(hosted.service_url)}`,
96
+ `Hosted profile: ${string(hosted.profile)}`,
97
+ `Hosted readiness: ${string(hosted.readiness)}`,
98
+ ]
99
+ : []),
100
+ `State: ${state}`,
101
+ `Local head: ${localHead}`,
102
+ `Remote-tracking head: ${remoteHead}`,
103
+ `Next: ${next}`,
104
+ "",
105
+ ].join("\n");
106
+ }
107
+ function renderHostedMutation(payload) {
108
+ const result = record(payload);
109
+ const resource = [
110
+ ["node_id", "Node"],
111
+ ["tag_id", "Tag"],
112
+ ["edge_id", "Edge"],
113
+ ["containment_id", "Containment"],
114
+ ["artifact_id", "Artifact"],
115
+ ].find(([field]) => typeof result[field] === "string");
116
+ return [
117
+ `Created hosted commit ${string(result.commit_id)}`,
118
+ `Head: ${string(result.head)}`,
119
+ `Cursor: ${string(result.cursor)}`,
120
+ ...(resource ? [`${resource[1]}: ${string(result[resource[0]])}`] : []),
121
+ "",
122
+ ].join("\n");
123
+ }
124
+ export function renderRepositoryHumanOutput(command, payload, selection, initPersonal = false) {
125
+ if (command.startsWith("hosted:")) {
126
+ return renderHostedMutation(payload);
127
+ }
128
+ if (command === "repo:init" ||
129
+ command === "repo:clone" ||
130
+ command === "repo:restore") {
131
+ const result = record(payload);
132
+ const repositoryPath = string(result.path);
133
+ const lock = record(result.bootstrap_lock);
134
+ return [
135
+ command === "repo:init"
136
+ ? `Initialized Flywheel repository in ${repositoryPath}/.flywheel`
137
+ : `Repository ready at ${repositoryPath}`,
138
+ ...(typeof lock.path === "string"
139
+ ? [
140
+ `Bootstrap lock: ${lock.path} (retained so concurrent bootstrap attempts use the same file)`,
141
+ ]
142
+ : []),
143
+ `Next: flywheel repo:node:create${initPersonal ? " --personal" : ` --repo ${shellQuote(repositoryPath)}`} --title "First node"`,
144
+ "",
145
+ ].join("\n");
146
+ }
147
+ if (command === "repo:status") {
148
+ return renderStatus(payload, selection);
149
+ }
150
+ if (command === "repo:diff") {
151
+ return renderDiff(payload, selection);
152
+ }
153
+ if (command === "repo:node:create") {
154
+ const staged = count(record(payload).operation_count);
155
+ return [
156
+ `Staged: ${plural(staged, "graph operation")}`,
157
+ `Next: flywheel repo:status${repositoryArgument(selection)}`,
158
+ "",
159
+ ].join("\n");
160
+ }
161
+ return null;
162
+ }
163
+ //# sourceMappingURL=repository-output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repository-output.js","sourceRoot":"","sources":["../../src/commands/repository-output.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ import { CliUsageError } from "../errors.js";
2
+ import { queryFromParams, requiredString } from "./utils.js";
3
+ const SPECS = {
4
+ "repo:node:get": {
5
+ targetParam: "node_id",
6
+ path: (nodeId) => `/nodes/${encodeURIComponent(nodeId)}`,
7
+ },
8
+ "repo:tag:list": {
9
+ targetParam: "scope_node_id",
10
+ path: () => "/tags",
11
+ },
12
+ "repo:lineage:list": {
13
+ targetParam: "node_id",
14
+ path: () => "/lineage",
15
+ },
16
+ "repo:node-artifact:list": {
17
+ targetParam: "node_id",
18
+ path: (nodeId) => `/nodes/${encodeURIComponent(nodeId)}/artifacts`,
19
+ },
20
+ "repo:edge-artifact:list": {
21
+ targetParam: "edge_id",
22
+ path: (edgeId) => `/edges/${encodeURIComponent(edgeId)}/artifacts`,
23
+ },
24
+ "repo:artifact:get": {
25
+ targetParam: "artifact_id",
26
+ path: (artifactId) => `/artifacts/${encodeURIComponent(artifactId)}`,
27
+ },
28
+ "repo:containment:get": {
29
+ targetParam: "child_node_id",
30
+ path: (nodeId) => `/nodes/${encodeURIComponent(nodeId)}/container`,
31
+ },
32
+ "repo:containment:list": {
33
+ targetParam: "container_node_id",
34
+ path: (nodeId) => `/nodes/${encodeURIComponent(nodeId)}/contained`,
35
+ },
36
+ "repo:edge:list": {
37
+ targetParam: "graph_node_id",
38
+ path: (nodeId) => `/nodes/${encodeURIComponent(nodeId)}/edges`,
39
+ },
40
+ "repo:edge:get": {
41
+ targetParam: "edge_id",
42
+ path: (edgeId) => `/edges/${encodeURIComponent(edgeId)}`,
43
+ },
44
+ };
45
+ function projectionHandler(command) {
46
+ const spec = SPECS[command];
47
+ if (!spec)
48
+ throw new Error(`unknown repository projection command: ${command}`);
49
+ return async (context) => {
50
+ const repositoryPath = context.repositorySelection?.root;
51
+ if (!repositoryPath) {
52
+ throw new Error("resolved local repository selection is unavailable");
53
+ }
54
+ const targetId = requiredString(context.params, spec.targetParam);
55
+ if (!context.requestLocalJson) {
56
+ throw new Error("local repository transport is unavailable");
57
+ }
58
+ const suppliedHead = context.params.at_head;
59
+ const after = context.params.after;
60
+ if (after !== undefined && suppliedHead === undefined) {
61
+ throw new CliUsageError("--after requires an explicit --at_head");
62
+ }
63
+ let atHead = typeof suppliedHead === "string" ? suppliedHead : undefined;
64
+ if (!atHead) {
65
+ const head = await context.requestLocalJson(repositoryPath, "GET", "/local-head");
66
+ atHead = head.current_local_head ?? undefined;
67
+ }
68
+ const targetIsQuery = command === "repo:tag:list" || command === "repo:lineage:list";
69
+ const query = queryFromParams(context.params, targetIsQuery
70
+ ? ["repo", "personal"]
71
+ : ["repo", "personal", spec.targetParam]);
72
+ if (atHead)
73
+ query.at_head = atHead;
74
+ return context.requestLocalJson(repositoryPath, "GET", spec.path(targetId), { query });
75
+ };
76
+ }
77
+ export const repositoryProjectionHandlers = Object.fromEntries(Object.keys(SPECS).map((command) => [command, projectionHandler(command)]));
78
+ export const repositoryProjectionNames = Object.freeze(Object.keys(SPECS));
79
+ //# sourceMappingURL=repository-projection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repository-projection.js","sourceRoot":"","sources":["../../src/commands/repository-projection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ import { lstat } from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { loadFlywheelConfig } from "../config/index.js";
4
+ export class RepositorySelectionError extends Error {
5
+ code;
6
+ path;
7
+ constructor(code, message, markerPath) {
8
+ super(message);
9
+ this.name = "RepositorySelectionError";
10
+ this.code = code;
11
+ this.path = markerPath;
12
+ }
13
+ }
14
+ export function shellQuote(value) {
15
+ return `'${value.replaceAll("'", "'\"'\"'")}'`;
16
+ }
17
+ async function markerState(root) {
18
+ const markerPath = path.join(root, ".flywheel");
19
+ try {
20
+ const state = await lstat(markerPath);
21
+ return state.isDirectory() && !state.isSymbolicLink() ? "valid" : "invalid";
22
+ }
23
+ catch (error) {
24
+ if (error.code === "ENOENT")
25
+ return "missing";
26
+ throw new RepositorySelectionError("repository_marker_invalid", `Unable to inspect Flywheel repository marker ${markerPath}: ${error.message}`, markerPath);
27
+ }
28
+ }
29
+ async function requireRepository(root) {
30
+ const resolved = path.resolve(root);
31
+ const state = await markerState(resolved);
32
+ if (state === "invalid")
33
+ throw new RepositorySelectionError("repository_marker_invalid", `Invalid Flywheel repository marker: ${path.join(resolved, ".flywheel")}`, path.join(resolved, ".flywheel"));
34
+ if (state === "missing")
35
+ throw new RepositorySelectionError("repository_not_found", `No Flywheel repository at ${resolved}. Run flywheel repo:init, pass --repo <root>, or use --personal.`, resolved);
36
+ return resolved;
37
+ }
38
+ export async function resolveRepositorySelection({ params, cwd = process.cwd(), loadConfig = () => loadFlywheelConfig(), }) {
39
+ const explicit = typeof params.repo === "string" && params.repo.trim()
40
+ ? params.repo.trim()
41
+ : undefined;
42
+ const personal = params.personal === true;
43
+ if (explicit && personal)
44
+ throw new RepositorySelectionError("repository_selector_conflict", "--repo and --personal cannot be used together.");
45
+ if (explicit)
46
+ return {
47
+ root: await requireRepository(path.resolve(cwd, explicit)),
48
+ source: "explicit",
49
+ };
50
+ if (personal) {
51
+ const configured = (await loadConfig()).repositories?.personal;
52
+ if (!configured)
53
+ throw new RepositorySelectionError("personal_repository_not_configured", "No personal repository is configured. Run flywheel repo:init --personal.");
54
+ try {
55
+ return { root: await requireRepository(configured), source: "personal" };
56
+ }
57
+ catch (error) {
58
+ if (error instanceof RepositorySelectionError &&
59
+ (error.code === "repository_not_found" ||
60
+ error.code === "repository_marker_invalid")) {
61
+ throw new RepositorySelectionError("personal_repository_invalid", `Cannot use the configured personal repository at ${configured}.\n${error.message}\nRetry: flywheel repo:init --personal ${shellQuote(configured)}`);
62
+ }
63
+ throw error;
64
+ }
65
+ }
66
+ let candidate = path.resolve(cwd);
67
+ while (true) {
68
+ const state = await markerState(candidate);
69
+ if (state === "valid")
70
+ return { root: candidate, source: "working-directory" };
71
+ if (state === "invalid")
72
+ throw new RepositorySelectionError("repository_marker_invalid", `Invalid Flywheel repository marker: ${path.join(candidate, ".flywheel")}`, path.join(candidate, ".flywheel"));
73
+ const parent = path.dirname(candidate);
74
+ if (parent === candidate)
75
+ break;
76
+ candidate = parent;
77
+ }
78
+ throw new RepositorySelectionError("repository_not_found", `No Flywheel repository found from ${cwd}. Run flywheel repo:init, pass --repo <root>, or use --personal.`);
79
+ }
80
+ //# sourceMappingURL=repository-selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repository-selection.js","sourceRoot":"","sources":["../../src/commands/repository-selection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAyB,MAAM,oBAAoB,CAAC;AAQ/E,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACxC,IAAI,CAKqB;IACzB,IAAI,CAAU;IACvB,YACE,IAAsC,EACtC,OAAe,EACf,UAAmB;QAEnB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,CAAC;CACF;AAED,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC;AACjD,CAAC;AACD,KAAK,UAAU,WAAW,CACxB,IAAY;IAEZ,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAChD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QACzE,MAAM,IAAI,wBAAwB,CAChC,2BAA2B,EAC3B,gDAAgD,UAAU,KAAM,KAAe,CAAC,OAAO,EAAE,EACzF,UAAU,CACX,CAAC;IACJ,CAAC;AACH,CAAC;AACD,KAAK,UAAU,iBAAiB,CAAC,IAAY;IAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS;QACrB,MAAM,IAAI,wBAAwB,CAChC,2BAA2B,EAC3B,uCAAuC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,EACzE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CACjC,CAAC;IACJ,IAAI,KAAK,KAAK,SAAS;QACrB,MAAM,IAAI,wBAAwB,CAChC,sBAAsB,EACtB,6BAA6B,QAAQ,kEAAkE,EACvG,QAAQ,CACT,CAAC;IACJ,OAAO,QAAQ,CAAC;AAClB,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,EAC/C,MAAM,EACN,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,EACnB,UAAU,GAAG,GAAG,EAAE,CAAC,kBAAkB,EAAE,GAKxC;IACC,MAAM,QAAQ,GACZ,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;QACnD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE;QACpB,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC;IAC1C,IAAI,QAAQ,IAAI,QAAQ;QACtB,MAAM,IAAI,wBAAwB,CAChC,8BAA8B,EAC9B,gDAAgD,CACjD,CAAC;IACJ,IAAI,QAAQ;QACV,OAAO;YACL,IAAI,EAAE,MAAM,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC1D,MAAM,EAAE,UAAU;SACnB,CAAC;IACJ,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,UAAU,GAAG,CAAC,MAAM,UAAU,EAAE,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC;QAC/D,IAAI,CAAC,UAAU;YACb,MAAM,IAAI,wBAAwB,CAChC,oCAAoC,EACpC,0EAA0E,CAC3E,CAAC;QACJ,IAAI,CAAC;YACH,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IACE,KAAK,YAAY,wBAAwB;gBACzC,CAAC,KAAK,CAAC,IAAI,KAAK,sBAAsB;oBACpC,KAAK,CAAC,IAAI,KAAK,2BAA2B,CAAC,EAC7C,CAAC;gBACD,MAAM,IAAI,wBAAwB,CAChC,6BAA6B,EAC7B,oDAAoD,UAAU,MAAM,KAAK,CAAC,OAAO,0CAA0C,UAAU,CAAC,UAAU,CAAC,EAAE,CACpJ,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IACD,IAAI,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAClC,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,KAAK,KAAK,OAAO;YACnB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;QAC1D,IAAI,KAAK,KAAK,SAAS;YACrB,MAAM,IAAI,wBAAwB,CAChC,2BAA2B,EAC3B,uCAAuC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,EAC1E,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAClC,CAAC;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM;QAChC,SAAS,GAAG,MAAM,CAAC;IACrB,CAAC;IACD,MAAM,IAAI,wBAAwB,CAChC,sBAAsB,EACtB,qCAAqC,GAAG,kEAAkE,CAC3G,CAAC;AACJ,CAAC"}
@@ -0,0 +1,78 @@
1
+ export const RETIRED_COMMAND_NAMES = {
2
+ 'auth:keychain:set': 'flywheel auth:credentials:set [--profile <name>]',
3
+ 'auth:keychain:clear': 'flywheel auth:credentials:clear [--profile <name>]',
4
+ init: 'flywheel repo:init [directory]',
5
+ clone: 'flywheel repo:clone <repository-id> [directory]',
6
+ restore: 'flywheel repo:restore <archive> <empty-directory>',
7
+ status: 'flywheel repo:status --repo <path>',
8
+ doctor: 'flywheel repo:doctor --repo <path>',
9
+ commit: 'flywheel repo:commit --repo <path> --message "Describe the staged graph change"',
10
+ log: 'flywheel repo:log --repo <path>',
11
+ diff: 'flywheel repo:diff --repo <path>',
12
+ revert: 'flywheel repo:revert <commit-id> --repo <path>',
13
+ push: 'flywheel repo:push --repo <path>',
14
+ pull: 'flywheel repo:pull --repo <path>',
15
+ purge: 'flywheel repo:purge <node-id> --repo <path> --confirm <node-id>',
16
+ backup: 'flywheel repo:backup <destination> --repo <path>',
17
+ gc: 'flywheel repo:gc --repo <path>',
18
+ 'conflicts:list': 'flywheel repo:conflicts:list --repo <path>',
19
+ 'conflicts:show': 'flywheel repo:conflicts:show <conflict-id> --repo <path>',
20
+ 'conflicts:resolve': 'flywheel repo:conflicts:resolve <conflict-id> --repo <path> --strategy <local|remote|manual>',
21
+ 'rebase:continue': 'flywheel repo:rebase:continue <rebase-id> --repo <path>',
22
+ 'rebase:abort': 'flywheel repo:rebase:abort <rebase-id> --repo <path>',
23
+ 'node:get': 'flywheel repo:node:get <node-id> --repo <path>',
24
+ 'tag:list': 'flywheel repo:tag:list <scope-node-id> --repo <path>',
25
+ 'lineage:list': 'flywheel repo:lineage:list <node-id> --repo <path>',
26
+ 'node-artifact:list': 'flywheel repo:node-artifact:list <node-id> --repo <path>',
27
+ 'edge-artifact:list': 'flywheel repo:edge-artifact:list <edge-id> --repo <path>',
28
+ 'artifact:get': 'flywheel repo:artifact:get <artifact-id> --repo <path>',
29
+ 'containment:get': 'flywheel repo:containment:get <child-node-id> --repo <path>',
30
+ 'containment:list': 'flywheel repo:containment:list <container-node-id> --repo <path>',
31
+ 'edge:list': 'flywheel repo:edge:list <graph-node-id> --repo <path>',
32
+ 'edge:get': 'flywheel repo:edge:get <edge-id> --repo <path>',
33
+ 'node:create': 'flywheel repo:node:create --repo <path> --title "First node"',
34
+ 'node:set': 'flywheel repo:node:set <node-id> --repo <path> --field <field> --value-file <path>',
35
+ 'node:tombstone': 'flywheel repo:node:tombstone <node-id> --repo <path>',
36
+ 'node:restore': 'flywheel repo:node:restore <node-id> --repo <path>',
37
+ 'tag:define': 'flywheel repo:tag:define <scope-node-id> --repo <path> --definition-file tag.json',
38
+ 'tag:update': 'flywheel repo:tag:update <scope-node-id> <tag-id> --repo <path> --definition-file tag.json',
39
+ 'tag:retire': 'flywheel repo:tag:retire <scope-node-id> <tag-id> --repo <path>',
40
+ 'node-tag:assign': 'flywheel repo:node-tag:assign <scope-node-id> <node-id> <tag-id> --repo <path>',
41
+ 'node-tag:remove': 'flywheel repo:node-tag:remove <scope-node-id> <node-id> <tag-id> --repo <path>',
42
+ 'lineage:add': 'flywheel repo:lineage:add <parent-node-id> <child-node-id> --repo <path>',
43
+ 'lineage:remove': 'flywheel repo:lineage:remove <parent-node-id> <child-node-id> --repo <path>',
44
+ 'containment:assign': 'flywheel repo:containment:assign <container-node-id> <child-node-id> --repo <path>',
45
+ 'containment:remove': 'flywheel repo:containment:remove <containment-id> --repo <path>',
46
+ 'edge:add': 'flywheel repo:edge:add <graph-node-id> <source-node-id> <target-node-id> --repo <path>',
47
+ 'edge:set-content': 'flywheel repo:edge:set-content <edge-id> --repo <path> --value-file <path>',
48
+ 'edge:remove': 'flywheel repo:edge:remove <edge-id> --repo <path>',
49
+ 'artifact:attach': 'flywheel repo:artifact:attach node <owner-id> --repo <path> --file <path> --metadata-file artifact.json',
50
+ 'artifact:detach': 'flywheel repo:artifact:detach node <owner-id> <artifact-id> --repo <path>',
51
+ 'artifact:set-metadata': 'flywheel repo:artifact:set-metadata node <owner-id> <artifact-id> --repo <path> --metadata-file artifact.json',
52
+ 'nodes:get': 'flywheel hosted:node:get <node-id>',
53
+ 'nodes:list': 'flywheel hosted:node:list',
54
+ 'nodes:children': 'flywheel hosted:lineage:list <node-id> --direction children',
55
+ 'nodes:parents': 'flywheel hosted:lineage:list <node-id> --direction parents',
56
+ 'artifacts:get': 'flywheel hosted:artifact:get --node_id <node-id> --artifact_id <artifact-id>',
57
+ 'artifacts:list': 'flywheel hosted:artifact:list --node_id <node-id>',
58
+ 'nodes:create': 'flywheel hosted:node:create --repository-id <uuid> --title "First node"',
59
+ 'nodes:commit': 'flywheel hosted:node:set <node-id> --repository-id <uuid> --field <field> --value-file <path>',
60
+ 'nodes:commit-new': 'flywheel hosted:node:create --repository-id <uuid> --values-file node.json',
61
+ 'nodes:delete': 'flywheel hosted:node:tombstone <node-id> --repository-id <uuid>',
62
+ 'nodes:delete-bulk': 'Run flywheel hosted:node:tombstone <node-id> --repository-id <uuid> once for each node.',
63
+ 'nodes:add-parent': 'flywheel hosted:lineage:add <parent-node-id> <child-node-id> --repository-id <uuid>',
64
+ 'nodes:remove-parent': 'flywheel hosted:lineage:remove <parent-node-id> <child-node-id> --repository-id <uuid>',
65
+ 'nodes:branch': 'flywheel hosted:node:branch <node-id> --repository-id <uuid>',
66
+ 'nodes:merge': 'flywheel hosted:node:merge --repository-id <uuid> --source <node-id> --source <node-id>',
67
+ 'tags:create': 'flywheel hosted:tag:define <scope-node-id> --repository-id <uuid> --definition-file tag.json',
68
+ 'tags:update': 'flywheel hosted:tag:update <scope-node-id> <tag-id> --repository-id <uuid> --definition-file tag.json',
69
+ 'tags:delete': 'flywheel hosted:tag:retire <scope-node-id> <tag-id> --repository-id <uuid>',
70
+ 'tags:assign': 'flywheel hosted:node-tag:assign <scope-node-id> <node-id> <tag-id> --repository-id <uuid>',
71
+ 'artifacts:upload': 'flywheel hosted:artifact:attach node <owner-id> --repository-id <uuid> --file <path> --metadata-file artifact.json',
72
+ 'artifacts:upload:prepare': 'flywheel hosted:artifact:attach node <owner-id> --repository-id <uuid> --file <path> --metadata-file artifact.json',
73
+ 'artifacts:upload:finalize': 'flywheel hosted:artifact:attach node <owner-id> --repository-id <uuid> --file <path> --metadata-file artifact.json',
74
+ 'artifacts:delete': 'flywheel hosted:artifact:detach node <owner-id> <artifact-id> --repository-id <uuid>',
75
+ 'artifacts:delete-bulk': 'Run flywheel hosted:artifact:detach node <owner-id> <artifact-id> --repository-id <uuid> once for each artifact.',
76
+ 'artifacts:note:set': 'flywheel hosted:artifact:set-metadata node <owner-id> <artifact-id> --repository-id <uuid> --metadata-file artifact.json',
77
+ };
78
+ //# sourceMappingURL=retired-command-names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retired-command-names.js","sourceRoot":"","sources":["../../src/commands/retired-command-names.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAqC;IACrE,mBAAmB,EAAE,kDAAkD;IACvE,qBAAqB,EAAE,oDAAoD;IAC3E,IAAI,EAAE,gCAAgC;IACtC,KAAK,EAAE,iDAAiD;IACxD,OAAO,EAAE,mDAAmD;IAC5D,MAAM,EAAE,oCAAoC;IAC5C,MAAM,EAAE,oCAAoC;IAC5C,MAAM,EAAE,iFAAiF;IACzF,GAAG,EAAE,iCAAiC;IACtC,IAAI,EAAE,kCAAkC;IACxC,MAAM,EAAE,gDAAgD;IACxD,IAAI,EAAE,kCAAkC;IACxC,IAAI,EAAE,kCAAkC;IACxC,KAAK,EAAE,iEAAiE;IACxE,MAAM,EAAE,kDAAkD;IAC1D,EAAE,EAAE,gCAAgC;IACpC,gBAAgB,EAAE,4CAA4C;IAC9D,gBAAgB,EAAE,0DAA0D;IAC5E,mBAAmB,EAAE,8FAA8F;IACnH,iBAAiB,EAAE,yDAAyD;IAC5E,cAAc,EAAE,sDAAsD;IAEtE,UAAU,EAAE,gDAAgD;IAC5D,UAAU,EAAE,sDAAsD;IAClE,cAAc,EAAE,oDAAoD;IACpE,oBAAoB,EAAE,0DAA0D;IAChF,oBAAoB,EAAE,0DAA0D;IAChF,cAAc,EAAE,wDAAwD;IACxE,iBAAiB,EAAE,6DAA6D;IAChF,kBAAkB,EAAE,kEAAkE;IACtF,WAAW,EAAE,uDAAuD;IACpE,UAAU,EAAE,gDAAgD;IAE5D,aAAa,EAAE,8DAA8D;IAC7E,UAAU,EAAE,oFAAoF;IAChG,gBAAgB,EAAE,sDAAsD;IACxE,cAAc,EAAE,oDAAoD;IACpE,YAAY,EAAE,mFAAmF;IACjG,YAAY,EAAE,4FAA4F;IAC1G,YAAY,EAAE,iEAAiE;IAC/E,iBAAiB,EAAE,gFAAgF;IACnG,iBAAiB,EAAE,gFAAgF;IACnG,aAAa,EAAE,0EAA0E;IACzF,gBAAgB,EAAE,6EAA6E;IAC/F,oBAAoB,EAAE,oFAAoF;IAC1G,oBAAoB,EAAE,iEAAiE;IACvF,UAAU,EAAE,wFAAwF;IACpG,kBAAkB,EAAE,4EAA4E;IAChG,aAAa,EAAE,mDAAmD;IAClE,iBAAiB,EAAE,yGAAyG;IAC5H,iBAAiB,EAAE,2EAA2E;IAC9F,uBAAuB,EAAE,+GAA+G;IAExI,WAAW,EAAE,oCAAoC;IACjD,YAAY,EAAE,2BAA2B;IACzC,gBAAgB,EAAE,6DAA6D;IAC/E,eAAe,EAAE,4DAA4D;IAC7E,eAAe,EAAE,8EAA8E;IAC/F,gBAAgB,EAAE,mDAAmD;IAErE,cAAc,EAAE,yEAAyE;IACzF,cAAc,EAAE,+FAA+F;IAC/G,kBAAkB,EAAE,4EAA4E;IAChG,cAAc,EAAE,iEAAiE;IACjF,mBAAmB,EAAE,yFAAyF;IAC9G,kBAAkB,EAAE,qFAAqF;IACzG,qBAAqB,EAAE,wFAAwF;IAC/G,cAAc,EAAE,8DAA8D;IAC9E,aAAa,EAAE,yFAAyF;IACxG,aAAa,EAAE,8FAA8F;IAC7G,aAAa,EAAE,uGAAuG;IACtH,aAAa,EAAE,4EAA4E;IAC3F,aAAa,EAAE,2FAA2F;IAC1G,kBAAkB,EAAE,oHAAoH;IACxI,0BAA0B,EAAE,oHAAoH;IAChJ,2BAA2B,EAAE,oHAAoH;IACjJ,kBAAkB,EAAE,sFAAsF;IAC1G,uBAAuB,EAAE,kHAAkH;IAC3I,oBAAoB,EAAE,0HAA0H;CACjJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/commands/types.ts"],"names":[],"mappings":"AA0CA,MAAM,UAAU,cAAc,CAAC,MAAkB;IAC/C,OAAO;QACL,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/commands/types.ts"],"names":[],"mappings":"AAoFA,MAAM,UAAU,cAAc,CAC7B,MAAkB;IAElB,OAAO;QACN,WAAW,EAAE,MAAM,CAAC,WAAW;KAC/B,CAAC;AACH,CAAC"}