gsd-pi 2.78.1-dev.84a383f51 → 2.78.1-dev.8e0e96cfc

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 (1365) hide show
  1. package/README.md +16 -7
  2. package/dist/bundled-resource-path.d.ts +7 -0
  3. package/dist/bundled-resource-path.js +34 -2
  4. package/dist/claude-cli-check.js +18 -6
  5. package/dist/cli-auto-routing.d.ts +1 -0
  6. package/dist/cli-auto-routing.js +5 -0
  7. package/dist/cli.js +5 -14
  8. package/dist/headless-query.js +21 -6
  9. package/dist/loader.js +17 -6
  10. package/dist/resource-loader.js +28 -25
  11. package/dist/resources/.managed-resources-content-hash +1 -1
  12. package/dist/resources/GSD-WORKFLOW.md +29 -42
  13. package/dist/resources/extensions/async-jobs/job-manager.js +4 -0
  14. package/dist/resources/extensions/bg-shell/bg-shell-lifecycle.js +3 -2
  15. package/dist/resources/extensions/bg-shell/utilities.js +2 -1
  16. package/dist/resources/extensions/browser-tools/tools/intent.js +8 -1
  17. package/dist/resources/extensions/claude-code-cli/readiness.js +19 -7
  18. package/dist/resources/extensions/claude-code-cli/stream-adapter.js +22 -8
  19. package/dist/resources/extensions/github-sync/cli.js +3 -0
  20. package/dist/resources/extensions/github-sync/sync.js +86 -58
  21. package/dist/resources/extensions/google-search/index.js +2 -6
  22. package/dist/resources/extensions/gsd/auto/phases.js +83 -32
  23. package/dist/resources/extensions/gsd/auto/run-unit.js +23 -11
  24. package/dist/resources/extensions/gsd/auto/session.js +5 -6
  25. package/dist/resources/extensions/gsd/auto-artifact-paths.js +49 -31
  26. package/dist/resources/extensions/gsd/auto-dashboard.js +14 -2
  27. package/dist/resources/extensions/gsd/auto-direct-dispatch.js +57 -21
  28. package/dist/resources/extensions/gsd/auto-dispatch.js +253 -94
  29. package/dist/resources/extensions/gsd/auto-post-unit.js +101 -45
  30. package/dist/resources/extensions/gsd/auto-prompts.js +145 -8
  31. package/dist/resources/extensions/gsd/auto-recovery.js +69 -15
  32. package/dist/resources/extensions/gsd/auto-start.js +54 -64
  33. package/dist/resources/extensions/gsd/auto-timeout-recovery.js +18 -0
  34. package/dist/resources/extensions/gsd/auto-timers.js +24 -4
  35. package/dist/resources/extensions/gsd/auto-worktree.js +159 -181
  36. package/dist/resources/extensions/gsd/auto.js +75 -26
  37. package/dist/resources/extensions/gsd/bootstrap/agent-end-recovery.js +20 -2
  38. package/dist/resources/extensions/gsd/bootstrap/db-tools.js +40 -7
  39. package/dist/resources/extensions/gsd/bootstrap/dynamic-tools.js +9 -77
  40. package/dist/resources/extensions/gsd/bootstrap/register-hooks.js +98 -9
  41. package/dist/resources/extensions/gsd/bootstrap/subagent-input.js +22 -0
  42. package/dist/resources/extensions/gsd/bootstrap/system-context.js +14 -4
  43. package/dist/resources/extensions/gsd/bootstrap/write-gate.js +166 -17
  44. package/dist/resources/extensions/gsd/branch-patterns.js +3 -3
  45. package/dist/resources/extensions/gsd/commands/catalog.js +14 -6
  46. package/dist/resources/extensions/gsd/commands/context.js +41 -5
  47. package/dist/resources/extensions/gsd/commands/dispatcher.js +11 -5
  48. package/dist/resources/extensions/gsd/commands/handlers/auto.js +2 -1
  49. package/dist/resources/extensions/gsd/commands/handlers/core.js +3 -0
  50. package/dist/resources/extensions/gsd/commands/handlers/ops.js +13 -0
  51. package/dist/resources/extensions/gsd/commands/handlers/workflow.js +24 -2
  52. package/dist/resources/extensions/gsd/commands-bootstrap.js +6 -0
  53. package/dist/resources/extensions/gsd/commands-codebase.js +2 -1
  54. package/dist/resources/extensions/gsd/commands-config.js +3 -2
  55. package/dist/resources/extensions/gsd/commands-debug.js +22 -1
  56. package/dist/resources/extensions/gsd/commands-eval-review.js +534 -0
  57. package/dist/resources/extensions/gsd/commands-extensions.js +50 -7
  58. package/dist/resources/extensions/gsd/commands-handlers.js +8 -7
  59. package/dist/resources/extensions/gsd/commands-logs.js +2 -1
  60. package/dist/resources/extensions/gsd/commands-mcp-status.js +2 -2
  61. package/dist/resources/extensions/gsd/commands-scan.js +2 -1
  62. package/dist/resources/extensions/gsd/commands-ship.js +67 -1
  63. package/dist/resources/extensions/gsd/commands-workflow-templates.js +5 -4
  64. package/dist/resources/extensions/gsd/commands-worktree.js +309 -0
  65. package/dist/resources/extensions/gsd/context-budget.js +11 -3
  66. package/dist/resources/extensions/gsd/db-writer.js +61 -83
  67. package/dist/resources/extensions/gsd/deep-project-setup-policy.js +212 -0
  68. package/dist/resources/extensions/gsd/detection.js +7 -7
  69. package/dist/resources/extensions/gsd/dispatch-guard.js +6 -10
  70. package/dist/resources/extensions/gsd/docs/preferences-reference.md +12 -4
  71. package/dist/resources/extensions/gsd/doctor-engine-checks.js +2 -2
  72. package/dist/resources/extensions/gsd/doctor-providers.js +2 -1
  73. package/dist/resources/extensions/gsd/doctor-runtime-checks.js +54 -0
  74. package/dist/resources/extensions/gsd/eval-review-schema.js +208 -0
  75. package/dist/resources/extensions/gsd/forensics.js +15 -7
  76. package/dist/resources/extensions/gsd/git-service.js +74 -4
  77. package/dist/resources/extensions/gsd/gsd-db.js +77 -10
  78. package/dist/resources/extensions/gsd/gsd-home.js +29 -0
  79. package/dist/resources/extensions/gsd/guided-flow.js +274 -96
  80. package/dist/resources/extensions/gsd/init-wizard.js +16 -23
  81. package/dist/resources/extensions/gsd/interrupted-session.js +37 -2
  82. package/dist/resources/extensions/gsd/key-manager.js +2 -1
  83. package/dist/resources/extensions/gsd/markdown-renderer.js +59 -66
  84. package/dist/resources/extensions/gsd/migrate/command.js +3 -2
  85. package/dist/resources/extensions/gsd/milestone-scope-classifier.js +10 -8
  86. package/dist/resources/extensions/gsd/native-git-bridge.js +19 -42
  87. package/dist/resources/extensions/gsd/onboarding-state.js +2 -2
  88. package/dist/resources/extensions/gsd/parallel-merge.js +14 -13
  89. package/dist/resources/extensions/gsd/parallel-monitor-overlay.js +5 -2
  90. package/dist/resources/extensions/gsd/paths.js +72 -1
  91. package/dist/resources/extensions/gsd/planning-depth.js +114 -0
  92. package/dist/resources/extensions/gsd/preferences-models.js +18 -1
  93. package/dist/resources/extensions/gsd/preferences-skills.js +2 -1
  94. package/dist/resources/extensions/gsd/preferences-types.js +4 -0
  95. package/dist/resources/extensions/gsd/preferences-validation.js +9 -0
  96. package/dist/resources/extensions/gsd/preferences.js +20 -4
  97. package/dist/resources/extensions/gsd/project-research-policy.js +182 -0
  98. package/dist/resources/extensions/gsd/prompt-loader.js +2 -3
  99. package/dist/resources/extensions/gsd/prompts/complete-milestone.md +10 -0
  100. package/dist/resources/extensions/gsd/prompts/complete-slice.md +11 -1
  101. package/dist/resources/extensions/gsd/prompts/guided-discuss-milestone.md +2 -0
  102. package/dist/resources/extensions/gsd/prompts/guided-discuss-project.md +133 -0
  103. package/dist/resources/extensions/gsd/prompts/guided-discuss-requirements.md +122 -0
  104. package/dist/resources/extensions/gsd/prompts/guided-research-decision.md +70 -0
  105. package/dist/resources/extensions/gsd/prompts/guided-research-project.md +120 -0
  106. package/dist/resources/extensions/gsd/prompts/guided-workflow-preferences.md +68 -0
  107. package/dist/resources/extensions/gsd/prompts/parallel-research-slices.md +2 -0
  108. package/dist/resources/extensions/gsd/prompts/plan-milestone.md +8 -2
  109. package/dist/resources/extensions/gsd/prompts/plan-slice.md +18 -6
  110. package/dist/resources/extensions/gsd/prompts/refine-slice.md +10 -0
  111. package/dist/resources/extensions/gsd/prompts/rewrite-docs.md +2 -0
  112. package/dist/resources/extensions/gsd/prompts/system.md +4 -4
  113. package/dist/resources/extensions/gsd/queue-order.js +6 -1
  114. package/dist/resources/extensions/gsd/repo-identity.js +20 -9
  115. package/dist/resources/extensions/gsd/rethink.js +2 -1
  116. package/dist/resources/extensions/gsd/safety/git-checkpoint.js +8 -1
  117. package/dist/resources/extensions/gsd/schemas/__fixtures__/valid-project.md +26 -0
  118. package/dist/resources/extensions/gsd/schemas/__fixtures__/valid-requirements.md +57 -0
  119. package/dist/resources/extensions/gsd/schemas/__fixtures__/valid-roadmap.md +19 -0
  120. package/dist/resources/extensions/gsd/schemas/parsers.js +276 -0
  121. package/dist/resources/extensions/gsd/schemas/validate.js +364 -0
  122. package/dist/resources/extensions/gsd/skill-telemetry.js +3 -2
  123. package/dist/resources/extensions/gsd/slice-cadence.js +56 -7
  124. package/dist/resources/extensions/gsd/state.js +91 -372
  125. package/dist/resources/extensions/gsd/token-counter.js +1 -0
  126. package/dist/resources/extensions/gsd/tools/complete-milestone.js +6 -5
  127. package/dist/resources/extensions/gsd/tools/complete-slice.js +7 -12
  128. package/dist/resources/extensions/gsd/tools/complete-task.js +19 -31
  129. package/dist/resources/extensions/gsd/tools/plan-slice.js +6 -5
  130. package/dist/resources/extensions/gsd/tools/validate-milestone.js +7 -5
  131. package/dist/resources/extensions/gsd/tools/workflow-tool-executors.js +74 -11
  132. package/dist/resources/extensions/gsd/unit-context-manifest.js +125 -5
  133. package/dist/resources/extensions/gsd/unit-runtime.js +88 -24
  134. package/dist/resources/extensions/gsd/uok/plan-v2.js +14 -1
  135. package/dist/resources/extensions/gsd/user-input-boundary.js +157 -0
  136. package/dist/resources/extensions/gsd/watch/header-renderer.js +2 -1
  137. package/dist/resources/extensions/gsd/workflow-install.js +2 -3
  138. package/dist/resources/extensions/gsd/workflow-manifest.js +2 -1
  139. package/dist/resources/extensions/gsd/workflow-mcp-auto-prep.js +3 -21
  140. package/dist/resources/extensions/gsd/workflow-mcp.js +39 -3
  141. package/dist/resources/extensions/gsd/workflow-migration.js +4 -3
  142. package/dist/resources/extensions/gsd/workflow-plugins.js +3 -5
  143. package/dist/resources/extensions/gsd/workflow-reconcile.js +3 -3
  144. package/dist/resources/extensions/gsd/workflow-templates.js +2 -3
  145. package/dist/resources/extensions/gsd/worktree-command.js +4 -3
  146. package/dist/resources/extensions/gsd/worktree-manager.js +26 -7
  147. package/dist/resources/extensions/gsd/worktree-resolver.js +34 -19
  148. package/dist/resources/extensions/gsd/worktree-root.js +163 -0
  149. package/dist/resources/extensions/gsd/worktree.js +4 -115
  150. package/dist/resources/extensions/mcp-client/index.js +2 -8
  151. package/dist/resources/extensions/ollama/index.js +15 -2
  152. package/dist/resources/extensions/ollama/model-capabilities.js +31 -0
  153. package/dist/resources/extensions/ollama/ollama-client.js +40 -4
  154. package/dist/resources/extensions/remote-questions/remote-command.js +2 -1
  155. package/dist/resources/extensions/remote-questions/status.js +2 -5
  156. package/dist/resources/extensions/remote-questions/store.js +2 -5
  157. package/dist/resources/extensions/search-the-web/provider.js +9 -8
  158. package/dist/resources/extensions/shared/next-action-ui.js +7 -0
  159. package/dist/resources/extensions/subagent/index.js +341 -190
  160. package/dist/resources/extensions/subagent/isolation.js +2 -2
  161. package/dist/resources/extensions/ttsr/rule-loader.js +2 -3
  162. package/dist/resources/extensions/voice/index.js +3 -2
  163. package/dist/resources/extensions/voice/linux-ready.js +2 -2
  164. package/dist/resources/skills/lint/SKILL.md +4 -0
  165. package/dist/resources/skills/review/SKILL.md +4 -0
  166. package/dist/resources/skills/test/SKILL.md +3 -0
  167. package/dist/resources/skills/verify-before-complete/SKILL.md +1 -1
  168. package/dist/tool-bootstrap.js +7 -0
  169. package/dist/tsconfig.extensions.tsbuildinfo +1 -1
  170. package/dist/web/standalone/.next/BUILD_ID +1 -1
  171. package/dist/web/standalone/.next/app-path-routes-manifest.json +17 -17
  172. package/dist/web/standalone/.next/build-manifest.json +4 -4
  173. package/dist/web/standalone/.next/prerender-manifest.json +3 -3
  174. package/dist/web/standalone/.next/react-loadable-manifest.json +7 -7
  175. package/dist/web/standalone/.next/server/app/_global-error/page.js +3 -3
  176. package/dist/web/standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  177. package/dist/web/standalone/.next/server/app/_global-error.html +1 -1
  178. package/dist/web/standalone/.next/server/app/_global-error.rsc +1 -1
  179. package/dist/web/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  180. package/dist/web/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  181. package/dist/web/standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  182. package/dist/web/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  183. package/dist/web/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  184. package/dist/web/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  185. package/dist/web/standalone/.next/server/app/_not-found/page.js +2 -2
  186. package/dist/web/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  187. package/dist/web/standalone/.next/server/app/_not-found.html +1 -1
  188. package/dist/web/standalone/.next/server/app/_not-found.rsc +2 -2
  189. package/dist/web/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  190. package/dist/web/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  191. package/dist/web/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  192. package/dist/web/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  193. package/dist/web/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  194. package/dist/web/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  195. package/dist/web/standalone/.next/server/app/api/boot/route.js +1 -1
  196. package/dist/web/standalone/.next/server/app/api/boot/route.js.nft.json +1 -1
  197. package/dist/web/standalone/.next/server/app/api/bridge-terminal/input/route.js +1 -1
  198. package/dist/web/standalone/.next/server/app/api/bridge-terminal/input/route.js.nft.json +1 -1
  199. package/dist/web/standalone/.next/server/app/api/bridge-terminal/resize/route.js +1 -1
  200. package/dist/web/standalone/.next/server/app/api/bridge-terminal/resize/route.js.nft.json +1 -1
  201. package/dist/web/standalone/.next/server/app/api/bridge-terminal/stream/route.js +2 -2
  202. package/dist/web/standalone/.next/server/app/api/bridge-terminal/stream/route.js.nft.json +1 -1
  203. package/dist/web/standalone/.next/server/app/api/browse-directories/route.js +1 -1
  204. package/dist/web/standalone/.next/server/app/api/captures/route.js +1 -1
  205. package/dist/web/standalone/.next/server/app/api/captures/route.js.nft.json +1 -1
  206. package/dist/web/standalone/.next/server/app/api/cleanup/route.js +1 -1
  207. package/dist/web/standalone/.next/server/app/api/cleanup/route.js.nft.json +1 -1
  208. package/dist/web/standalone/.next/server/app/api/dev-mode/route.js +1 -1
  209. package/dist/web/standalone/.next/server/app/api/doctor/route.js +1 -1
  210. package/dist/web/standalone/.next/server/app/api/doctor/route.js.nft.json +1 -1
  211. package/dist/web/standalone/.next/server/app/api/experimental/route.js +2 -2
  212. package/dist/web/standalone/.next/server/app/api/export-data/route.js +1 -1
  213. package/dist/web/standalone/.next/server/app/api/export-data/route.js.nft.json +1 -1
  214. package/dist/web/standalone/.next/server/app/api/files/route.js +1 -1
  215. package/dist/web/standalone/.next/server/app/api/files/route.js.nft.json +1 -1
  216. package/dist/web/standalone/.next/server/app/api/forensics/route.js +1 -1
  217. package/dist/web/standalone/.next/server/app/api/forensics/route.js.nft.json +1 -1
  218. package/dist/web/standalone/.next/server/app/api/git/route.js +1 -1
  219. package/dist/web/standalone/.next/server/app/api/git/route.js.nft.json +1 -1
  220. package/dist/web/standalone/.next/server/app/api/history/route.js +1 -1
  221. package/dist/web/standalone/.next/server/app/api/history/route.js.nft.json +1 -1
  222. package/dist/web/standalone/.next/server/app/api/hooks/route.js +1 -1
  223. package/dist/web/standalone/.next/server/app/api/hooks/route.js.nft.json +1 -1
  224. package/dist/web/standalone/.next/server/app/api/inspect/route.js +1 -1
  225. package/dist/web/standalone/.next/server/app/api/inspect/route.js.nft.json +1 -1
  226. package/dist/web/standalone/.next/server/app/api/knowledge/route.js +1 -1
  227. package/dist/web/standalone/.next/server/app/api/knowledge/route.js.nft.json +1 -1
  228. package/dist/web/standalone/.next/server/app/api/live-state/route.js +1 -1
  229. package/dist/web/standalone/.next/server/app/api/live-state/route.js.nft.json +1 -1
  230. package/dist/web/standalone/.next/server/app/api/notifications/route.js +2 -2
  231. package/dist/web/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  232. package/dist/web/standalone/.next/server/app/api/onboarding/route.js +1 -1
  233. package/dist/web/standalone/.next/server/app/api/onboarding/route.js.nft.json +1 -1
  234. package/dist/web/standalone/.next/server/app/api/preferences/route.js +1 -1
  235. package/dist/web/standalone/.next/server/app/api/projects/route.js +1 -1
  236. package/dist/web/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  237. package/dist/web/standalone/.next/server/app/api/recovery/route.js +1 -1
  238. package/dist/web/standalone/.next/server/app/api/recovery/route.js.nft.json +1 -1
  239. package/dist/web/standalone/.next/server/app/api/remote-questions/route.js +2 -2
  240. package/dist/web/standalone/.next/server/app/api/session/browser/route.js +1 -1
  241. package/dist/web/standalone/.next/server/app/api/session/browser/route.js.nft.json +1 -1
  242. package/dist/web/standalone/.next/server/app/api/session/command/route.js +1 -1
  243. package/dist/web/standalone/.next/server/app/api/session/command/route.js.nft.json +1 -1
  244. package/dist/web/standalone/.next/server/app/api/session/events/route.js +2 -2
  245. package/dist/web/standalone/.next/server/app/api/session/events/route.js.nft.json +1 -1
  246. package/dist/web/standalone/.next/server/app/api/session/manage/route.js +1 -1
  247. package/dist/web/standalone/.next/server/app/api/session/manage/route.js.nft.json +1 -1
  248. package/dist/web/standalone/.next/server/app/api/settings-data/route.js +1 -1
  249. package/dist/web/standalone/.next/server/app/api/settings-data/route.js.nft.json +1 -1
  250. package/dist/web/standalone/.next/server/app/api/shutdown/route.js +1 -1
  251. package/dist/web/standalone/.next/server/app/api/skill-health/route.js +1 -1
  252. package/dist/web/standalone/.next/server/app/api/skill-health/route.js.nft.json +1 -1
  253. package/dist/web/standalone/.next/server/app/api/steer/route.js +1 -1
  254. package/dist/web/standalone/.next/server/app/api/steer/route.js.nft.json +1 -1
  255. package/dist/web/standalone/.next/server/app/api/switch-root/route.js +1 -1
  256. package/dist/web/standalone/.next/server/app/api/switch-root/route.js.nft.json +1 -1
  257. package/dist/web/standalone/.next/server/app/api/terminal/input/route.js +2 -2
  258. package/dist/web/standalone/.next/server/app/api/terminal/resize/route.js +2 -2
  259. package/dist/web/standalone/.next/server/app/api/terminal/sessions/route.js +2 -2
  260. package/dist/web/standalone/.next/server/app/api/terminal/sessions/route.js.nft.json +1 -1
  261. package/dist/web/standalone/.next/server/app/api/terminal/stream/route.js +3 -3
  262. package/dist/web/standalone/.next/server/app/api/terminal/stream/route.js.nft.json +1 -1
  263. package/dist/web/standalone/.next/server/app/api/terminal/upload/route.js +1 -1
  264. package/dist/web/standalone/.next/server/app/api/undo/route.js +1 -1
  265. package/dist/web/standalone/.next/server/app/api/undo/route.js.nft.json +1 -1
  266. package/dist/web/standalone/.next/server/app/api/update/route.js +1 -1
  267. package/dist/web/standalone/.next/server/app/api/visualizer/route.js +1 -1
  268. package/dist/web/standalone/.next/server/app/api/visualizer/route.js.nft.json +1 -1
  269. package/dist/web/standalone/.next/server/app/index.html +1 -1
  270. package/dist/web/standalone/.next/server/app/index.rsc +3 -3
  271. package/dist/web/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  272. package/dist/web/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  273. package/dist/web/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  274. package/dist/web/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
  275. package/dist/web/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  276. package/dist/web/standalone/.next/server/app/page.js +2 -2
  277. package/dist/web/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  278. package/dist/web/standalone/.next/server/app-paths-manifest.json +17 -17
  279. package/dist/web/standalone/.next/server/chunks/2331.js +16 -16
  280. package/dist/web/standalone/.next/server/chunks/4741.js +12 -12
  281. package/dist/web/standalone/.next/server/chunks/5822.js +2 -2
  282. package/dist/web/standalone/.next/server/chunks/63.js +8 -8
  283. package/dist/web/standalone/.next/server/chunks/6336.js +1 -0
  284. package/dist/web/standalone/.next/server/chunks/6897.js +3 -3
  285. package/dist/web/standalone/.next/server/functions-config-manifest.json +9 -0
  286. package/dist/web/standalone/.next/server/middleware-build-manifest.js +1 -1
  287. package/dist/web/standalone/.next/server/middleware-manifest.json +2 -29
  288. package/dist/web/standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
  289. package/dist/web/standalone/.next/server/middleware.js +12 -4
  290. package/dist/web/standalone/.next/server/pages/404.html +1 -1
  291. package/dist/web/standalone/.next/server/pages/500.html +1 -1
  292. package/dist/web/standalone/.next/server/server-reference-manifest.json +1 -1
  293. package/dist/web/standalone/.next/server/webpack-runtime.js +1 -1
  294. package/dist/web/standalone/.next/static/chunks/{9058.01ef3a463bda88f1.js → 2059.d6f49d697b624f2b.js} +2 -2
  295. package/dist/web/standalone/.next/static/chunks/2824.461404167557f2cd.js +1 -0
  296. package/dist/web/standalone/.next/static/chunks/363642f4.c6481b47ee815ba0.js +1 -0
  297. package/dist/web/standalone/.next/static/chunks/{3794-42fdce068d44fa4f.js → 3794-3fb4e6ee851037bb.js} +1 -1
  298. package/dist/web/standalone/.next/static/chunks/{4447.5bad7871be61ca73.js → 4447.fe6f304888d5ac71.js} +2 -2
  299. package/dist/web/standalone/.next/static/chunks/5326.def6842b53fecd26.js +1 -0
  300. package/dist/web/standalone/.next/static/chunks/{8336.31b019697882acfb.js → 8336.6f6f30e410419aff.js} +1 -1
  301. package/dist/web/standalone/.next/static/chunks/app/{page-9bf2e0c50fb2ca05.js → page-fab3ebb85b006001.js} +1 -1
  302. package/dist/web/standalone/.next/static/chunks/{framework-711ef29bc66f648c.js → framework-34a8c4228d7fd161.js} +1 -1
  303. package/dist/web/standalone/.next/static/chunks/{main-6919d9dd919bd15f.js → main-2b7d1294417bb6bc.js} +1 -1
  304. package/dist/web/standalone/.next/static/chunks/webpack-d82dbee6356c1733.js +1 -0
  305. package/dist/web/standalone/.next/static/css/{632cd626b1731d88.css → 54ec2745c1da488b.css} +1 -1
  306. package/dist/web/standalone/node_modules/@next/env/package.json +1 -1
  307. package/dist/web/standalone/node_modules/baseline-browser-mapping/dist/index.cjs +1 -1
  308. package/dist/web/standalone/node_modules/baseline-browser-mapping/package.json +3 -3
  309. package/dist/web/standalone/node_modules/caniuse-lite/data/agents.js +1 -1
  310. package/dist/web/standalone/node_modules/caniuse-lite/data/browserVersions.js +1 -1
  311. package/dist/web/standalone/node_modules/caniuse-lite/data/features/aac.js +1 -1
  312. package/dist/web/standalone/node_modules/caniuse-lite/data/features/abortcontroller.js +1 -1
  313. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ac3-ec3.js +1 -1
  314. package/dist/web/standalone/node_modules/caniuse-lite/data/features/accelerometer.js +1 -1
  315. package/dist/web/standalone/node_modules/caniuse-lite/data/features/addeventlistener.js +1 -1
  316. package/dist/web/standalone/node_modules/caniuse-lite/data/features/alternate-stylesheet.js +1 -1
  317. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ambient-light.js +1 -1
  318. package/dist/web/standalone/node_modules/caniuse-lite/data/features/apng.js +1 -1
  319. package/dist/web/standalone/node_modules/caniuse-lite/data/features/array-find-index.js +1 -1
  320. package/dist/web/standalone/node_modules/caniuse-lite/data/features/array-find.js +1 -1
  321. package/dist/web/standalone/node_modules/caniuse-lite/data/features/array-flat.js +1 -1
  322. package/dist/web/standalone/node_modules/caniuse-lite/data/features/array-includes.js +1 -1
  323. package/dist/web/standalone/node_modules/caniuse-lite/data/features/arrow-functions.js +1 -1
  324. package/dist/web/standalone/node_modules/caniuse-lite/data/features/asmjs.js +1 -1
  325. package/dist/web/standalone/node_modules/caniuse-lite/data/features/async-clipboard.js +1 -1
  326. package/dist/web/standalone/node_modules/caniuse-lite/data/features/async-functions.js +1 -1
  327. package/dist/web/standalone/node_modules/caniuse-lite/data/features/atob-btoa.js +1 -1
  328. package/dist/web/standalone/node_modules/caniuse-lite/data/features/audio-api.js +1 -1
  329. package/dist/web/standalone/node_modules/caniuse-lite/data/features/audio.js +1 -1
  330. package/dist/web/standalone/node_modules/caniuse-lite/data/features/audiotracks.js +1 -1
  331. package/dist/web/standalone/node_modules/caniuse-lite/data/features/autofocus.js +1 -1
  332. package/dist/web/standalone/node_modules/caniuse-lite/data/features/auxclick.js +1 -1
  333. package/dist/web/standalone/node_modules/caniuse-lite/data/features/av1.js +1 -1
  334. package/dist/web/standalone/node_modules/caniuse-lite/data/features/avif.js +1 -1
  335. package/dist/web/standalone/node_modules/caniuse-lite/data/features/background-attachment.js +1 -1
  336. package/dist/web/standalone/node_modules/caniuse-lite/data/features/background-clip-text.js +1 -1
  337. package/dist/web/standalone/node_modules/caniuse-lite/data/features/background-img-opts.js +1 -1
  338. package/dist/web/standalone/node_modules/caniuse-lite/data/features/background-position-x-y.js +1 -1
  339. package/dist/web/standalone/node_modules/caniuse-lite/data/features/background-repeat-round-space.js +1 -1
  340. package/dist/web/standalone/node_modules/caniuse-lite/data/features/background-sync.js +1 -1
  341. package/dist/web/standalone/node_modules/caniuse-lite/data/features/battery-status.js +1 -1
  342. package/dist/web/standalone/node_modules/caniuse-lite/data/features/beacon.js +1 -1
  343. package/dist/web/standalone/node_modules/caniuse-lite/data/features/beforeafterprint.js +1 -1
  344. package/dist/web/standalone/node_modules/caniuse-lite/data/features/bigint.js +1 -1
  345. package/dist/web/standalone/node_modules/caniuse-lite/data/features/blobbuilder.js +1 -1
  346. package/dist/web/standalone/node_modules/caniuse-lite/data/features/bloburls.js +1 -1
  347. package/dist/web/standalone/node_modules/caniuse-lite/data/features/border-image.js +1 -1
  348. package/dist/web/standalone/node_modules/caniuse-lite/data/features/border-radius.js +1 -1
  349. package/dist/web/standalone/node_modules/caniuse-lite/data/features/broadcastchannel.js +1 -1
  350. package/dist/web/standalone/node_modules/caniuse-lite/data/features/brotli.js +1 -1
  351. package/dist/web/standalone/node_modules/caniuse-lite/data/features/calc.js +1 -1
  352. package/dist/web/standalone/node_modules/caniuse-lite/data/features/canvas-blending.js +1 -1
  353. package/dist/web/standalone/node_modules/caniuse-lite/data/features/canvas-text.js +1 -1
  354. package/dist/web/standalone/node_modules/caniuse-lite/data/features/canvas.js +1 -1
  355. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ch-unit.js +1 -1
  356. package/dist/web/standalone/node_modules/caniuse-lite/data/features/chacha20-poly1305.js +1 -1
  357. package/dist/web/standalone/node_modules/caniuse-lite/data/features/channel-messaging.js +1 -1
  358. package/dist/web/standalone/node_modules/caniuse-lite/data/features/childnode-remove.js +1 -1
  359. package/dist/web/standalone/node_modules/caniuse-lite/data/features/classlist.js +1 -1
  360. package/dist/web/standalone/node_modules/caniuse-lite/data/features/client-hints-dpr-width-viewport.js +1 -1
  361. package/dist/web/standalone/node_modules/caniuse-lite/data/features/clipboard.js +1 -1
  362. package/dist/web/standalone/node_modules/caniuse-lite/data/features/colr-v1.js +1 -1
  363. package/dist/web/standalone/node_modules/caniuse-lite/data/features/colr.js +1 -1
  364. package/dist/web/standalone/node_modules/caniuse-lite/data/features/comparedocumentposition.js +1 -1
  365. package/dist/web/standalone/node_modules/caniuse-lite/data/features/console-basic.js +1 -1
  366. package/dist/web/standalone/node_modules/caniuse-lite/data/features/console-time.js +1 -1
  367. package/dist/web/standalone/node_modules/caniuse-lite/data/features/const.js +1 -1
  368. package/dist/web/standalone/node_modules/caniuse-lite/data/features/constraint-validation.js +1 -1
  369. package/dist/web/standalone/node_modules/caniuse-lite/data/features/contenteditable.js +1 -1
  370. package/dist/web/standalone/node_modules/caniuse-lite/data/features/contentsecuritypolicy.js +1 -1
  371. package/dist/web/standalone/node_modules/caniuse-lite/data/features/contentsecuritypolicy2.js +1 -1
  372. package/dist/web/standalone/node_modules/caniuse-lite/data/features/cookie-store-api.js +1 -1
  373. package/dist/web/standalone/node_modules/caniuse-lite/data/features/cors.js +1 -1
  374. package/dist/web/standalone/node_modules/caniuse-lite/data/features/createimagebitmap.js +1 -1
  375. package/dist/web/standalone/node_modules/caniuse-lite/data/features/credential-management.js +1 -1
  376. package/dist/web/standalone/node_modules/caniuse-lite/data/features/cross-document-view-transitions.js +1 -1
  377. package/dist/web/standalone/node_modules/caniuse-lite/data/features/cryptography.js +1 -1
  378. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-all.js +1 -1
  379. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-anchor-positioning.js +1 -1
  380. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-animation.js +1 -1
  381. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-any-link.js +1 -1
  382. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-appearance.js +1 -1
  383. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-at-counter-style.js +1 -1
  384. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-autofill.js +1 -1
  385. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-backdrop-filter.js +1 -1
  386. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-background-offsets.js +1 -1
  387. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-backgroundblendmode.js +1 -1
  388. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-boxdecorationbreak.js +1 -1
  389. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-boxshadow.js +1 -1
  390. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-canvas.js +1 -1
  391. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-caret-color.js +1 -1
  392. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-cascade-layers.js +1 -1
  393. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-cascade-scope.js +1 -1
  394. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-case-insensitive.js +1 -1
  395. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-clip-path.js +1 -1
  396. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-color-adjust.js +1 -1
  397. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-color-function.js +1 -1
  398. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-conic-gradients.js +1 -1
  399. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-container-queries-style.js +1 -1
  400. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-container-queries.js +1 -1
  401. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-container-query-units.js +1 -1
  402. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-containment.js +1 -1
  403. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-content-visibility.js +1 -1
  404. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-counters.js +1 -1
  405. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-crisp-edges.js +1 -1
  406. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-cross-fade.js +1 -1
  407. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-default-pseudo.js +1 -1
  408. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-descendant-gtgt.js +1 -1
  409. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-deviceadaptation.js +1 -1
  410. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-dir-pseudo.js +1 -1
  411. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-display-contents.js +1 -1
  412. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-element-function.js +1 -1
  413. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-env-function.js +1 -1
  414. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-exclusions.js +1 -1
  415. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-featurequeries.js +1 -1
  416. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-file-selector-button.js +1 -1
  417. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-filter-function.js +1 -1
  418. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-filters.js +1 -1
  419. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-first-letter.js +1 -1
  420. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-first-line.js +1 -1
  421. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-fixed.js +1 -1
  422. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-focus-visible.js +1 -1
  423. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-focus-within.js +1 -1
  424. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-font-palette.js +1 -1
  425. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-font-rendering-controls.js +1 -1
  426. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-font-stretch.js +1 -1
  427. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-gencontent.js +1 -1
  428. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-gradients.js +1 -1
  429. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-grid-animation.js +1 -1
  430. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-grid-lanes.js +1 -1
  431. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-grid.js +1 -1
  432. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-hanging-punctuation.js +1 -1
  433. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-has.js +1 -1
  434. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-hyphens.js +1 -1
  435. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-if.js +1 -1
  436. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-image-orientation.js +1 -1
  437. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-image-set.js +1 -1
  438. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-in-out-of-range.js +1 -1
  439. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-indeterminate-pseudo.js +1 -1
  440. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-initial-letter.js +1 -1
  441. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-initial-value.js +1 -1
  442. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-lch-lab.js +1 -1
  443. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-letter-spacing.js +1 -1
  444. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-line-clamp.js +1 -1
  445. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-logical-props.js +1 -1
  446. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-marker-pseudo.js +1 -1
  447. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-masks.js +1 -1
  448. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-matches-pseudo.js +1 -1
  449. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-math-functions.js +1 -1
  450. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-media-interaction.js +1 -1
  451. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-media-range-syntax.js +1 -1
  452. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-media-resolution.js +1 -1
  453. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-media-scripting.js +1 -1
  454. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-mediaqueries.js +1 -1
  455. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-mixblendmode.js +1 -1
  456. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-module-scripts.js +1 -1
  457. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-motion-paths.js +1 -1
  458. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-namespaces.js +1 -1
  459. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-nesting.js +1 -1
  460. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-not-sel-list.js +1 -1
  461. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-nth-child-of.js +1 -1
  462. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-opacity.js +1 -1
  463. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-optional-pseudo.js +1 -1
  464. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-overflow-anchor.js +1 -1
  465. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-overflow-overlay.js +1 -1
  466. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-overflow.js +1 -1
  467. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-overscroll-behavior.js +1 -1
  468. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-page-break.js +1 -1
  469. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-paged-media.js +1 -1
  470. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-paint-api.js +1 -1
  471. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-placeholder-shown.js +1 -1
  472. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-placeholder.js +1 -1
  473. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-print-color-adjust.js +1 -1
  474. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-read-only-write.js +1 -1
  475. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-rebeccapurple.js +1 -1
  476. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-reflections.js +1 -1
  477. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-regions.js +1 -1
  478. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-relative-colors.js +1 -1
  479. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-repeating-gradients.js +1 -1
  480. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-resize.js +1 -1
  481. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-revert-value.js +1 -1
  482. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-rrggbbaa.js +1 -1
  483. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-scroll-behavior.js +1 -1
  484. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-scrollbar.js +1 -1
  485. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-sel2.js +1 -1
  486. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-sel3.js +1 -1
  487. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-selection.js +1 -1
  488. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-shapes.js +1 -1
  489. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-snappoints.js +1 -1
  490. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-sticky.js +1 -1
  491. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-subgrid.js +1 -1
  492. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-supports-api.js +1 -1
  493. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-table.js +1 -1
  494. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-text-align-last.js +1 -1
  495. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-text-box-trim.js +1 -1
  496. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-text-indent.js +1 -1
  497. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-text-justify.js +1 -1
  498. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-text-orientation.js +1 -1
  499. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-text-spacing.js +1 -1
  500. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-text-wrap-balance.js +1 -1
  501. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-textshadow.js +1 -1
  502. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-touch-action.js +1 -1
  503. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-transitions.js +1 -1
  504. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-unicode-bidi.js +1 -1
  505. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-unset-value.js +1 -1
  506. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-variables.js +1 -1
  507. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-when-else.js +1 -1
  508. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-widows-orphans.js +1 -1
  509. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-width-stretch.js +1 -1
  510. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-writing-mode.js +1 -1
  511. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css-zoom.js +1 -1
  512. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css3-attr.js +1 -1
  513. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css3-boxsizing.js +1 -1
  514. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css3-colors.js +1 -1
  515. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css3-cursors-grab.js +1 -1
  516. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css3-cursors-newer.js +1 -1
  517. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css3-cursors.js +1 -1
  518. package/dist/web/standalone/node_modules/caniuse-lite/data/features/css3-tabsize.js +1 -1
  519. package/dist/web/standalone/node_modules/caniuse-lite/data/features/currentcolor.js +1 -1
  520. package/dist/web/standalone/node_modules/caniuse-lite/data/features/custom-elements.js +1 -1
  521. package/dist/web/standalone/node_modules/caniuse-lite/data/features/custom-elementsv1.js +1 -1
  522. package/dist/web/standalone/node_modules/caniuse-lite/data/features/customevent.js +1 -1
  523. package/dist/web/standalone/node_modules/caniuse-lite/data/features/customizable-select.js +1 -1
  524. package/dist/web/standalone/node_modules/caniuse-lite/data/features/datalist.js +1 -1
  525. package/dist/web/standalone/node_modules/caniuse-lite/data/features/dataset.js +1 -1
  526. package/dist/web/standalone/node_modules/caniuse-lite/data/features/datauri.js +1 -1
  527. package/dist/web/standalone/node_modules/caniuse-lite/data/features/date-tolocaledatestring.js +1 -1
  528. package/dist/web/standalone/node_modules/caniuse-lite/data/features/declarative-shadow-dom.js +1 -1
  529. package/dist/web/standalone/node_modules/caniuse-lite/data/features/decorators.js +1 -1
  530. package/dist/web/standalone/node_modules/caniuse-lite/data/features/details.js +1 -1
  531. package/dist/web/standalone/node_modules/caniuse-lite/data/features/deviceorientation.js +1 -1
  532. package/dist/web/standalone/node_modules/caniuse-lite/data/features/devicepixelratio.js +1 -1
  533. package/dist/web/standalone/node_modules/caniuse-lite/data/features/dialog.js +1 -1
  534. package/dist/web/standalone/node_modules/caniuse-lite/data/features/dispatchevent.js +1 -1
  535. package/dist/web/standalone/node_modules/caniuse-lite/data/features/dnssec.js +1 -1
  536. package/dist/web/standalone/node_modules/caniuse-lite/data/features/do-not-track.js +1 -1
  537. package/dist/web/standalone/node_modules/caniuse-lite/data/features/document-currentscript.js +1 -1
  538. package/dist/web/standalone/node_modules/caniuse-lite/data/features/document-evaluate-xpath.js +1 -1
  539. package/dist/web/standalone/node_modules/caniuse-lite/data/features/document-execcommand.js +1 -1
  540. package/dist/web/standalone/node_modules/caniuse-lite/data/features/document-policy.js +1 -1
  541. package/dist/web/standalone/node_modules/caniuse-lite/data/features/document-scrollingelement.js +1 -1
  542. package/dist/web/standalone/node_modules/caniuse-lite/data/features/documenthead.js +1 -1
  543. package/dist/web/standalone/node_modules/caniuse-lite/data/features/dom-manip-convenience.js +1 -1
  544. package/dist/web/standalone/node_modules/caniuse-lite/data/features/dom-range.js +1 -1
  545. package/dist/web/standalone/node_modules/caniuse-lite/data/features/domcontentloaded.js +1 -1
  546. package/dist/web/standalone/node_modules/caniuse-lite/data/features/dommatrix.js +1 -1
  547. package/dist/web/standalone/node_modules/caniuse-lite/data/features/download.js +1 -1
  548. package/dist/web/standalone/node_modules/caniuse-lite/data/features/dragndrop.js +1 -1
  549. package/dist/web/standalone/node_modules/caniuse-lite/data/features/element-closest.js +1 -1
  550. package/dist/web/standalone/node_modules/caniuse-lite/data/features/element-from-point.js +1 -1
  551. package/dist/web/standalone/node_modules/caniuse-lite/data/features/element-scroll-methods.js +1 -1
  552. package/dist/web/standalone/node_modules/caniuse-lite/data/features/eme.js +1 -1
  553. package/dist/web/standalone/node_modules/caniuse-lite/data/features/eot.js +1 -1
  554. package/dist/web/standalone/node_modules/caniuse-lite/data/features/es5.js +1 -1
  555. package/dist/web/standalone/node_modules/caniuse-lite/data/features/es6-class.js +1 -1
  556. package/dist/web/standalone/node_modules/caniuse-lite/data/features/es6-generators.js +1 -1
  557. package/dist/web/standalone/node_modules/caniuse-lite/data/features/es6-module-dynamic-import.js +1 -1
  558. package/dist/web/standalone/node_modules/caniuse-lite/data/features/es6-module.js +1 -1
  559. package/dist/web/standalone/node_modules/caniuse-lite/data/features/es6-number.js +1 -1
  560. package/dist/web/standalone/node_modules/caniuse-lite/data/features/es6-string-includes.js +1 -1
  561. package/dist/web/standalone/node_modules/caniuse-lite/data/features/es6.js +1 -1
  562. package/dist/web/standalone/node_modules/caniuse-lite/data/features/eventsource.js +1 -1
  563. package/dist/web/standalone/node_modules/caniuse-lite/data/features/extended-system-fonts.js +1 -1
  564. package/dist/web/standalone/node_modules/caniuse-lite/data/features/feature-policy.js +1 -1
  565. package/dist/web/standalone/node_modules/caniuse-lite/data/features/fetch.js +1 -1
  566. package/dist/web/standalone/node_modules/caniuse-lite/data/features/fieldset-disabled.js +1 -1
  567. package/dist/web/standalone/node_modules/caniuse-lite/data/features/fileapi.js +1 -1
  568. package/dist/web/standalone/node_modules/caniuse-lite/data/features/filereader.js +1 -1
  569. package/dist/web/standalone/node_modules/caniuse-lite/data/features/filereadersync.js +1 -1
  570. package/dist/web/standalone/node_modules/caniuse-lite/data/features/filesystem.js +1 -1
  571. package/dist/web/standalone/node_modules/caniuse-lite/data/features/flac.js +1 -1
  572. package/dist/web/standalone/node_modules/caniuse-lite/data/features/flexbox-gap.js +1 -1
  573. package/dist/web/standalone/node_modules/caniuse-lite/data/features/flexbox.js +1 -1
  574. package/dist/web/standalone/node_modules/caniuse-lite/data/features/flow-root.js +1 -1
  575. package/dist/web/standalone/node_modules/caniuse-lite/data/features/focusin-focusout-events.js +1 -1
  576. package/dist/web/standalone/node_modules/caniuse-lite/data/features/font-family-system-ui.js +1 -1
  577. package/dist/web/standalone/node_modules/caniuse-lite/data/features/font-feature.js +1 -1
  578. package/dist/web/standalone/node_modules/caniuse-lite/data/features/font-kerning.js +1 -1
  579. package/dist/web/standalone/node_modules/caniuse-lite/data/features/font-loading.js +1 -1
  580. package/dist/web/standalone/node_modules/caniuse-lite/data/features/font-size-adjust.js +1 -1
  581. package/dist/web/standalone/node_modules/caniuse-lite/data/features/font-smooth.js +1 -1
  582. package/dist/web/standalone/node_modules/caniuse-lite/data/features/font-unicode-range.js +1 -1
  583. package/dist/web/standalone/node_modules/caniuse-lite/data/features/font-variant-alternates.js +1 -1
  584. package/dist/web/standalone/node_modules/caniuse-lite/data/features/font-variant-numeric.js +1 -1
  585. package/dist/web/standalone/node_modules/caniuse-lite/data/features/fontface.js +1 -1
  586. package/dist/web/standalone/node_modules/caniuse-lite/data/features/form-attribute.js +1 -1
  587. package/dist/web/standalone/node_modules/caniuse-lite/data/features/form-submit-attributes.js +1 -1
  588. package/dist/web/standalone/node_modules/caniuse-lite/data/features/form-validation.js +1 -1
  589. package/dist/web/standalone/node_modules/caniuse-lite/data/features/forms.js +1 -1
  590. package/dist/web/standalone/node_modules/caniuse-lite/data/features/fullscreen.js +1 -1
  591. package/dist/web/standalone/node_modules/caniuse-lite/data/features/gamepad.js +1 -1
  592. package/dist/web/standalone/node_modules/caniuse-lite/data/features/geolocation.js +1 -1
  593. package/dist/web/standalone/node_modules/caniuse-lite/data/features/getboundingclientrect.js +1 -1
  594. package/dist/web/standalone/node_modules/caniuse-lite/data/features/getcomputedstyle.js +1 -1
  595. package/dist/web/standalone/node_modules/caniuse-lite/data/features/getelementsbyclassname.js +1 -1
  596. package/dist/web/standalone/node_modules/caniuse-lite/data/features/getrandomvalues.js +1 -1
  597. package/dist/web/standalone/node_modules/caniuse-lite/data/features/gyroscope.js +1 -1
  598. package/dist/web/standalone/node_modules/caniuse-lite/data/features/hardwareconcurrency.js +1 -1
  599. package/dist/web/standalone/node_modules/caniuse-lite/data/features/hashchange.js +1 -1
  600. package/dist/web/standalone/node_modules/caniuse-lite/data/features/heif.js +1 -1
  601. package/dist/web/standalone/node_modules/caniuse-lite/data/features/hevc.js +1 -1
  602. package/dist/web/standalone/node_modules/caniuse-lite/data/features/hidden.js +1 -1
  603. package/dist/web/standalone/node_modules/caniuse-lite/data/features/high-resolution-time.js +1 -1
  604. package/dist/web/standalone/node_modules/caniuse-lite/data/features/history.js +1 -1
  605. package/dist/web/standalone/node_modules/caniuse-lite/data/features/html-media-capture.js +1 -1
  606. package/dist/web/standalone/node_modules/caniuse-lite/data/features/html5semantic.js +1 -1
  607. package/dist/web/standalone/node_modules/caniuse-lite/data/features/http-live-streaming.js +1 -1
  608. package/dist/web/standalone/node_modules/caniuse-lite/data/features/http2.js +1 -1
  609. package/dist/web/standalone/node_modules/caniuse-lite/data/features/http3.js +1 -1
  610. package/dist/web/standalone/node_modules/caniuse-lite/data/features/iframe-sandbox.js +1 -1
  611. package/dist/web/standalone/node_modules/caniuse-lite/data/features/iframe-seamless.js +1 -1
  612. package/dist/web/standalone/node_modules/caniuse-lite/data/features/iframe-srcdoc.js +1 -1
  613. package/dist/web/standalone/node_modules/caniuse-lite/data/features/imagecapture.js +1 -1
  614. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ime.js +1 -1
  615. package/dist/web/standalone/node_modules/caniuse-lite/data/features/img-naturalwidth-naturalheight.js +1 -1
  616. package/dist/web/standalone/node_modules/caniuse-lite/data/features/import-maps.js +1 -1
  617. package/dist/web/standalone/node_modules/caniuse-lite/data/features/imports.js +1 -1
  618. package/dist/web/standalone/node_modules/caniuse-lite/data/features/indeterminate-checkbox.js +1 -1
  619. package/dist/web/standalone/node_modules/caniuse-lite/data/features/indexeddb.js +1 -1
  620. package/dist/web/standalone/node_modules/caniuse-lite/data/features/indexeddb2.js +1 -1
  621. package/dist/web/standalone/node_modules/caniuse-lite/data/features/inline-block.js +1 -1
  622. package/dist/web/standalone/node_modules/caniuse-lite/data/features/innertext.js +1 -1
  623. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-autocomplete-onoff.js +1 -1
  624. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-color.js +1 -1
  625. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-datetime.js +1 -1
  626. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-email-tel-url.js +1 -1
  627. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-event.js +1 -1
  628. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-file-accept.js +1 -1
  629. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-file-directory.js +1 -1
  630. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-file-multiple.js +1 -1
  631. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-inputmode.js +1 -1
  632. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-minlength.js +1 -1
  633. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-number.js +1 -1
  634. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-pattern.js +1 -1
  635. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-placeholder.js +1 -1
  636. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-range.js +1 -1
  637. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-search.js +1 -1
  638. package/dist/web/standalone/node_modules/caniuse-lite/data/features/input-selection.js +1 -1
  639. package/dist/web/standalone/node_modules/caniuse-lite/data/features/insert-adjacent.js +1 -1
  640. package/dist/web/standalone/node_modules/caniuse-lite/data/features/insertadjacenthtml.js +1 -1
  641. package/dist/web/standalone/node_modules/caniuse-lite/data/features/internationalization.js +1 -1
  642. package/dist/web/standalone/node_modules/caniuse-lite/data/features/intersectionobserver-v2.js +1 -1
  643. package/dist/web/standalone/node_modules/caniuse-lite/data/features/intersectionobserver.js +1 -1
  644. package/dist/web/standalone/node_modules/caniuse-lite/data/features/intl-pluralrules.js +1 -1
  645. package/dist/web/standalone/node_modules/caniuse-lite/data/features/intrinsic-width.js +1 -1
  646. package/dist/web/standalone/node_modules/caniuse-lite/data/features/jpeg2000.js +1 -1
  647. package/dist/web/standalone/node_modules/caniuse-lite/data/features/jpegxl.js +1 -1
  648. package/dist/web/standalone/node_modules/caniuse-lite/data/features/jpegxr.js +1 -1
  649. package/dist/web/standalone/node_modules/caniuse-lite/data/features/js-regexp-lookbehind.js +1 -1
  650. package/dist/web/standalone/node_modules/caniuse-lite/data/features/json.js +1 -1
  651. package/dist/web/standalone/node_modules/caniuse-lite/data/features/justify-content-space-evenly.js +1 -1
  652. package/dist/web/standalone/node_modules/caniuse-lite/data/features/kerning-pairs-ligatures.js +1 -1
  653. package/dist/web/standalone/node_modules/caniuse-lite/data/features/keyboardevent-charcode.js +1 -1
  654. package/dist/web/standalone/node_modules/caniuse-lite/data/features/keyboardevent-code.js +1 -1
  655. package/dist/web/standalone/node_modules/caniuse-lite/data/features/keyboardevent-getmodifierstate.js +1 -1
  656. package/dist/web/standalone/node_modules/caniuse-lite/data/features/keyboardevent-key.js +1 -1
  657. package/dist/web/standalone/node_modules/caniuse-lite/data/features/keyboardevent-location.js +1 -1
  658. package/dist/web/standalone/node_modules/caniuse-lite/data/features/keyboardevent-which.js +1 -1
  659. package/dist/web/standalone/node_modules/caniuse-lite/data/features/lazyload.js +1 -1
  660. package/dist/web/standalone/node_modules/caniuse-lite/data/features/let.js +1 -1
  661. package/dist/web/standalone/node_modules/caniuse-lite/data/features/link-icon-png.js +1 -1
  662. package/dist/web/standalone/node_modules/caniuse-lite/data/features/link-icon-svg.js +1 -1
  663. package/dist/web/standalone/node_modules/caniuse-lite/data/features/link-rel-dns-prefetch.js +1 -1
  664. package/dist/web/standalone/node_modules/caniuse-lite/data/features/link-rel-modulepreload.js +1 -1
  665. package/dist/web/standalone/node_modules/caniuse-lite/data/features/link-rel-preconnect.js +1 -1
  666. package/dist/web/standalone/node_modules/caniuse-lite/data/features/link-rel-prefetch.js +1 -1
  667. package/dist/web/standalone/node_modules/caniuse-lite/data/features/link-rel-preload.js +1 -1
  668. package/dist/web/standalone/node_modules/caniuse-lite/data/features/link-rel-prerender.js +1 -1
  669. package/dist/web/standalone/node_modules/caniuse-lite/data/features/loading-lazy-attr.js +1 -1
  670. package/dist/web/standalone/node_modules/caniuse-lite/data/features/loading-lazy-media.js +1 -1
  671. package/dist/web/standalone/node_modules/caniuse-lite/data/features/localecompare.js +1 -1
  672. package/dist/web/standalone/node_modules/caniuse-lite/data/features/magnetometer.js +1 -1
  673. package/dist/web/standalone/node_modules/caniuse-lite/data/features/matchesselector.js +1 -1
  674. package/dist/web/standalone/node_modules/caniuse-lite/data/features/matchmedia.js +1 -1
  675. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mathml.js +1 -1
  676. package/dist/web/standalone/node_modules/caniuse-lite/data/features/maxlength.js +1 -1
  677. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mdn-css-backdrop-pseudo-element.js +1 -1
  678. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate-override.js +1 -1
  679. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate.js +1 -1
  680. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-plaintext.js +1 -1
  681. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mdn-text-decoration-color.js +1 -1
  682. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mdn-text-decoration-line.js +1 -1
  683. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mdn-text-decoration-shorthand.js +1 -1
  684. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mdn-text-decoration-style.js +1 -1
  685. package/dist/web/standalone/node_modules/caniuse-lite/data/features/media-fragments.js +1 -1
  686. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mediacapture-fromelement.js +1 -1
  687. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mediarecorder.js +1 -1
  688. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mediasource.js +1 -1
  689. package/dist/web/standalone/node_modules/caniuse-lite/data/features/menu.js +1 -1
  690. package/dist/web/standalone/node_modules/caniuse-lite/data/features/meta-theme-color.js +1 -1
  691. package/dist/web/standalone/node_modules/caniuse-lite/data/features/meter.js +1 -1
  692. package/dist/web/standalone/node_modules/caniuse-lite/data/features/midi.js +1 -1
  693. package/dist/web/standalone/node_modules/caniuse-lite/data/features/minmaxwh.js +1 -1
  694. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mp3.js +1 -1
  695. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mpeg-dash.js +1 -1
  696. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mpeg4.js +1 -1
  697. package/dist/web/standalone/node_modules/caniuse-lite/data/features/multibackgrounds.js +1 -1
  698. package/dist/web/standalone/node_modules/caniuse-lite/data/features/multicolumn.js +1 -1
  699. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mutation-events.js +1 -1
  700. package/dist/web/standalone/node_modules/caniuse-lite/data/features/mutationobserver.js +1 -1
  701. package/dist/web/standalone/node_modules/caniuse-lite/data/features/namevalue-storage.js +1 -1
  702. package/dist/web/standalone/node_modules/caniuse-lite/data/features/native-filesystem-api.js +1 -1
  703. package/dist/web/standalone/node_modules/caniuse-lite/data/features/nav-timing.js +1 -1
  704. package/dist/web/standalone/node_modules/caniuse-lite/data/features/netinfo.js +1 -1
  705. package/dist/web/standalone/node_modules/caniuse-lite/data/features/notifications.js +1 -1
  706. package/dist/web/standalone/node_modules/caniuse-lite/data/features/object-entries.js +1 -1
  707. package/dist/web/standalone/node_modules/caniuse-lite/data/features/object-fit.js +1 -1
  708. package/dist/web/standalone/node_modules/caniuse-lite/data/features/object-observe.js +1 -1
  709. package/dist/web/standalone/node_modules/caniuse-lite/data/features/object-values.js +1 -1
  710. package/dist/web/standalone/node_modules/caniuse-lite/data/features/objectrtc.js +1 -1
  711. package/dist/web/standalone/node_modules/caniuse-lite/data/features/offline-apps.js +1 -1
  712. package/dist/web/standalone/node_modules/caniuse-lite/data/features/offscreencanvas.js +1 -1
  713. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ogg-vorbis.js +1 -1
  714. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ogv.js +1 -1
  715. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ol-reversed.js +1 -1
  716. package/dist/web/standalone/node_modules/caniuse-lite/data/features/once-event-listener.js +1 -1
  717. package/dist/web/standalone/node_modules/caniuse-lite/data/features/online-status.js +1 -1
  718. package/dist/web/standalone/node_modules/caniuse-lite/data/features/opus.js +1 -1
  719. package/dist/web/standalone/node_modules/caniuse-lite/data/features/orientation-sensor.js +1 -1
  720. package/dist/web/standalone/node_modules/caniuse-lite/data/features/outline.js +1 -1
  721. package/dist/web/standalone/node_modules/caniuse-lite/data/features/pad-start-end.js +1 -1
  722. package/dist/web/standalone/node_modules/caniuse-lite/data/features/page-transition-events.js +1 -1
  723. package/dist/web/standalone/node_modules/caniuse-lite/data/features/pagevisibility.js +1 -1
  724. package/dist/web/standalone/node_modules/caniuse-lite/data/features/passive-event-listener.js +1 -1
  725. package/dist/web/standalone/node_modules/caniuse-lite/data/features/passkeys.js +1 -1
  726. package/dist/web/standalone/node_modules/caniuse-lite/data/features/passwordrules.js +1 -1
  727. package/dist/web/standalone/node_modules/caniuse-lite/data/features/path2d.js +1 -1
  728. package/dist/web/standalone/node_modules/caniuse-lite/data/features/payment-request.js +1 -1
  729. package/dist/web/standalone/node_modules/caniuse-lite/data/features/pdf-viewer.js +1 -1
  730. package/dist/web/standalone/node_modules/caniuse-lite/data/features/permissions-api.js +1 -1
  731. package/dist/web/standalone/node_modules/caniuse-lite/data/features/permissions-policy.js +1 -1
  732. package/dist/web/standalone/node_modules/caniuse-lite/data/features/picture-in-picture.js +1 -1
  733. package/dist/web/standalone/node_modules/caniuse-lite/data/features/picture.js +1 -1
  734. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ping.js +1 -1
  735. package/dist/web/standalone/node_modules/caniuse-lite/data/features/png-alpha.js +1 -1
  736. package/dist/web/standalone/node_modules/caniuse-lite/data/features/pointer-events.js +1 -1
  737. package/dist/web/standalone/node_modules/caniuse-lite/data/features/pointer.js +1 -1
  738. package/dist/web/standalone/node_modules/caniuse-lite/data/features/pointerlock.js +1 -1
  739. package/dist/web/standalone/node_modules/caniuse-lite/data/features/portals.js +1 -1
  740. package/dist/web/standalone/node_modules/caniuse-lite/data/features/prefers-color-scheme.js +1 -1
  741. package/dist/web/standalone/node_modules/caniuse-lite/data/features/prefers-reduced-motion.js +1 -1
  742. package/dist/web/standalone/node_modules/caniuse-lite/data/features/progress.js +1 -1
  743. package/dist/web/standalone/node_modules/caniuse-lite/data/features/promise-finally.js +1 -1
  744. package/dist/web/standalone/node_modules/caniuse-lite/data/features/promises.js +1 -1
  745. package/dist/web/standalone/node_modules/caniuse-lite/data/features/proximity.js +1 -1
  746. package/dist/web/standalone/node_modules/caniuse-lite/data/features/proxy.js +1 -1
  747. package/dist/web/standalone/node_modules/caniuse-lite/data/features/publickeypinning.js +1 -1
  748. package/dist/web/standalone/node_modules/caniuse-lite/data/features/push-api.js +1 -1
  749. package/dist/web/standalone/node_modules/caniuse-lite/data/features/queryselector.js +1 -1
  750. package/dist/web/standalone/node_modules/caniuse-lite/data/features/readonly-attr.js +1 -1
  751. package/dist/web/standalone/node_modules/caniuse-lite/data/features/referrer-policy.js +1 -1
  752. package/dist/web/standalone/node_modules/caniuse-lite/data/features/registerprotocolhandler.js +1 -1
  753. package/dist/web/standalone/node_modules/caniuse-lite/data/features/rel-noopener.js +1 -1
  754. package/dist/web/standalone/node_modules/caniuse-lite/data/features/rel-noreferrer.js +1 -1
  755. package/dist/web/standalone/node_modules/caniuse-lite/data/features/rellist.js +1 -1
  756. package/dist/web/standalone/node_modules/caniuse-lite/data/features/rem.js +1 -1
  757. package/dist/web/standalone/node_modules/caniuse-lite/data/features/requestanimationframe.js +1 -1
  758. package/dist/web/standalone/node_modules/caniuse-lite/data/features/requestidlecallback.js +1 -1
  759. package/dist/web/standalone/node_modules/caniuse-lite/data/features/resizeobserver.js +1 -1
  760. package/dist/web/standalone/node_modules/caniuse-lite/data/features/resource-timing.js +1 -1
  761. package/dist/web/standalone/node_modules/caniuse-lite/data/features/rest-parameters.js +1 -1
  762. package/dist/web/standalone/node_modules/caniuse-lite/data/features/rtcpeerconnection.js +1 -1
  763. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ruby.js +1 -1
  764. package/dist/web/standalone/node_modules/caniuse-lite/data/features/run-in.js +1 -1
  765. package/dist/web/standalone/node_modules/caniuse-lite/data/features/same-site-cookie-attribute.js +1 -1
  766. package/dist/web/standalone/node_modules/caniuse-lite/data/features/screen-orientation.js +1 -1
  767. package/dist/web/standalone/node_modules/caniuse-lite/data/features/script-async.js +1 -1
  768. package/dist/web/standalone/node_modules/caniuse-lite/data/features/script-defer.js +1 -1
  769. package/dist/web/standalone/node_modules/caniuse-lite/data/features/scrollintoview.js +1 -1
  770. package/dist/web/standalone/node_modules/caniuse-lite/data/features/scrollintoviewifneeded.js +1 -1
  771. package/dist/web/standalone/node_modules/caniuse-lite/data/features/sdch.js +1 -1
  772. package/dist/web/standalone/node_modules/caniuse-lite/data/features/selection-api.js +1 -1
  773. package/dist/web/standalone/node_modules/caniuse-lite/data/features/server-timing.js +1 -1
  774. package/dist/web/standalone/node_modules/caniuse-lite/data/features/serviceworkers.js +1 -1
  775. package/dist/web/standalone/node_modules/caniuse-lite/data/features/setimmediate.js +1 -1
  776. package/dist/web/standalone/node_modules/caniuse-lite/data/features/shadowdom.js +1 -1
  777. package/dist/web/standalone/node_modules/caniuse-lite/data/features/shadowdomv1.js +1 -1
  778. package/dist/web/standalone/node_modules/caniuse-lite/data/features/sharedarraybuffer.js +1 -1
  779. package/dist/web/standalone/node_modules/caniuse-lite/data/features/sharedworkers.js +1 -1
  780. package/dist/web/standalone/node_modules/caniuse-lite/data/features/sni.js +1 -1
  781. package/dist/web/standalone/node_modules/caniuse-lite/data/features/spdy.js +1 -1
  782. package/dist/web/standalone/node_modules/caniuse-lite/data/features/speech-recognition.js +1 -1
  783. package/dist/web/standalone/node_modules/caniuse-lite/data/features/speech-synthesis.js +1 -1
  784. package/dist/web/standalone/node_modules/caniuse-lite/data/features/spellcheck-attribute.js +1 -1
  785. package/dist/web/standalone/node_modules/caniuse-lite/data/features/sql-storage.js +1 -1
  786. package/dist/web/standalone/node_modules/caniuse-lite/data/features/srcset.js +1 -1
  787. package/dist/web/standalone/node_modules/caniuse-lite/data/features/stream.js +1 -1
  788. package/dist/web/standalone/node_modules/caniuse-lite/data/features/streams.js +1 -1
  789. package/dist/web/standalone/node_modules/caniuse-lite/data/features/stricttransportsecurity.js +1 -1
  790. package/dist/web/standalone/node_modules/caniuse-lite/data/features/style-scoped.js +1 -1
  791. package/dist/web/standalone/node_modules/caniuse-lite/data/features/subresource-bundling.js +1 -1
  792. package/dist/web/standalone/node_modules/caniuse-lite/data/features/subresource-integrity.js +1 -1
  793. package/dist/web/standalone/node_modules/caniuse-lite/data/features/svg-css.js +1 -1
  794. package/dist/web/standalone/node_modules/caniuse-lite/data/features/svg-filters.js +1 -1
  795. package/dist/web/standalone/node_modules/caniuse-lite/data/features/svg-fonts.js +1 -1
  796. package/dist/web/standalone/node_modules/caniuse-lite/data/features/svg-fragment.js +1 -1
  797. package/dist/web/standalone/node_modules/caniuse-lite/data/features/svg-html.js +1 -1
  798. package/dist/web/standalone/node_modules/caniuse-lite/data/features/svg-html5.js +1 -1
  799. package/dist/web/standalone/node_modules/caniuse-lite/data/features/svg-img.js +1 -1
  800. package/dist/web/standalone/node_modules/caniuse-lite/data/features/svg-smil.js +1 -1
  801. package/dist/web/standalone/node_modules/caniuse-lite/data/features/svg.js +1 -1
  802. package/dist/web/standalone/node_modules/caniuse-lite/data/features/sxg.js +1 -1
  803. package/dist/web/standalone/node_modules/caniuse-lite/data/features/tabindex-attr.js +1 -1
  804. package/dist/web/standalone/node_modules/caniuse-lite/data/features/template-literals.js +1 -1
  805. package/dist/web/standalone/node_modules/caniuse-lite/data/features/template.js +1 -1
  806. package/dist/web/standalone/node_modules/caniuse-lite/data/features/temporal.js +1 -1
  807. package/dist/web/standalone/node_modules/caniuse-lite/data/features/testfeat.js +1 -1
  808. package/dist/web/standalone/node_modules/caniuse-lite/data/features/text-decoration.js +1 -1
  809. package/dist/web/standalone/node_modules/caniuse-lite/data/features/text-emphasis.js +1 -1
  810. package/dist/web/standalone/node_modules/caniuse-lite/data/features/text-overflow.js +1 -1
  811. package/dist/web/standalone/node_modules/caniuse-lite/data/features/text-size-adjust.js +1 -1
  812. package/dist/web/standalone/node_modules/caniuse-lite/data/features/text-stroke.js +1 -1
  813. package/dist/web/standalone/node_modules/caniuse-lite/data/features/textcontent.js +1 -1
  814. package/dist/web/standalone/node_modules/caniuse-lite/data/features/textencoder.js +1 -1
  815. package/dist/web/standalone/node_modules/caniuse-lite/data/features/tls1-1.js +1 -1
  816. package/dist/web/standalone/node_modules/caniuse-lite/data/features/tls1-2.js +1 -1
  817. package/dist/web/standalone/node_modules/caniuse-lite/data/features/tls1-3.js +1 -1
  818. package/dist/web/standalone/node_modules/caniuse-lite/data/features/touch.js +1 -1
  819. package/dist/web/standalone/node_modules/caniuse-lite/data/features/transforms2d.js +1 -1
  820. package/dist/web/standalone/node_modules/caniuse-lite/data/features/transforms3d.js +1 -1
  821. package/dist/web/standalone/node_modules/caniuse-lite/data/features/trusted-types.js +1 -1
  822. package/dist/web/standalone/node_modules/caniuse-lite/data/features/ttf.js +1 -1
  823. package/dist/web/standalone/node_modules/caniuse-lite/data/features/typedarrays.js +1 -1
  824. package/dist/web/standalone/node_modules/caniuse-lite/data/features/u2f.js +1 -1
  825. package/dist/web/standalone/node_modules/caniuse-lite/data/features/unhandledrejection.js +1 -1
  826. package/dist/web/standalone/node_modules/caniuse-lite/data/features/upgradeinsecurerequests.js +1 -1
  827. package/dist/web/standalone/node_modules/caniuse-lite/data/features/url-scroll-to-text-fragment.js +1 -1
  828. package/dist/web/standalone/node_modules/caniuse-lite/data/features/url.js +1 -1
  829. package/dist/web/standalone/node_modules/caniuse-lite/data/features/urlsearchparams.js +1 -1
  830. package/dist/web/standalone/node_modules/caniuse-lite/data/features/use-strict.js +1 -1
  831. package/dist/web/standalone/node_modules/caniuse-lite/data/features/user-select-none.js +1 -1
  832. package/dist/web/standalone/node_modules/caniuse-lite/data/features/user-timing.js +1 -1
  833. package/dist/web/standalone/node_modules/caniuse-lite/data/features/variable-fonts.js +1 -1
  834. package/dist/web/standalone/node_modules/caniuse-lite/data/features/vector-effect.js +1 -1
  835. package/dist/web/standalone/node_modules/caniuse-lite/data/features/vibration.js +1 -1
  836. package/dist/web/standalone/node_modules/caniuse-lite/data/features/video.js +1 -1
  837. package/dist/web/standalone/node_modules/caniuse-lite/data/features/videotracks.js +1 -1
  838. package/dist/web/standalone/node_modules/caniuse-lite/data/features/view-transitions.js +1 -1
  839. package/dist/web/standalone/node_modules/caniuse-lite/data/features/viewport-unit-variants.js +1 -1
  840. package/dist/web/standalone/node_modules/caniuse-lite/data/features/viewport-units.js +1 -1
  841. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wai-aria.js +1 -1
  842. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wake-lock.js +1 -1
  843. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-bigint.js +1 -1
  844. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-bulk-memory.js +1 -1
  845. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-extended-const.js +1 -1
  846. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-gc.js +1 -1
  847. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-multi-memory.js +1 -1
  848. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-multi-value.js +1 -1
  849. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-mutable-globals.js +1 -1
  850. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-nontrapping-fptoint.js +1 -1
  851. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-reference-types.js +1 -1
  852. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-relaxed-simd.js +1 -1
  853. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-signext.js +1 -1
  854. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-simd.js +1 -1
  855. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-tail-calls.js +1 -1
  856. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm-threads.js +1 -1
  857. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wasm.js +1 -1
  858. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wav.js +1 -1
  859. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wbr-element.js +1 -1
  860. package/dist/web/standalone/node_modules/caniuse-lite/data/features/web-animation.js +1 -1
  861. package/dist/web/standalone/node_modules/caniuse-lite/data/features/web-app-manifest.js +1 -1
  862. package/dist/web/standalone/node_modules/caniuse-lite/data/features/web-bluetooth.js +1 -1
  863. package/dist/web/standalone/node_modules/caniuse-lite/data/features/web-serial.js +1 -1
  864. package/dist/web/standalone/node_modules/caniuse-lite/data/features/web-share.js +1 -1
  865. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webauthn.js +1 -1
  866. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webcodecs.js +1 -1
  867. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webgl.js +1 -1
  868. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webgl2.js +1 -1
  869. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webgpu.js +1 -1
  870. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webhid.js +1 -1
  871. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webkit-user-drag.js +1 -1
  872. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webm.js +1 -1
  873. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webnfc.js +1 -1
  874. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webp.js +1 -1
  875. package/dist/web/standalone/node_modules/caniuse-lite/data/features/websockets.js +1 -1
  876. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webtransport.js +1 -1
  877. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webusb.js +1 -1
  878. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webvr.js +1 -1
  879. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webvtt.js +1 -1
  880. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webworkers.js +1 -1
  881. package/dist/web/standalone/node_modules/caniuse-lite/data/features/webxr.js +1 -1
  882. package/dist/web/standalone/node_modules/caniuse-lite/data/features/will-change.js +1 -1
  883. package/dist/web/standalone/node_modules/caniuse-lite/data/features/woff.js +1 -1
  884. package/dist/web/standalone/node_modules/caniuse-lite/data/features/woff2.js +1 -1
  885. package/dist/web/standalone/node_modules/caniuse-lite/data/features/word-break.js +1 -1
  886. package/dist/web/standalone/node_modules/caniuse-lite/data/features/wordwrap.js +1 -1
  887. package/dist/web/standalone/node_modules/caniuse-lite/data/features/x-doc-messaging.js +1 -1
  888. package/dist/web/standalone/node_modules/caniuse-lite/data/features/x-frame-options.js +1 -1
  889. package/dist/web/standalone/node_modules/caniuse-lite/data/features/xhr2.js +1 -1
  890. package/dist/web/standalone/node_modules/caniuse-lite/data/features/xhtml.js +1 -1
  891. package/dist/web/standalone/node_modules/caniuse-lite/data/features/xhtmlsmil.js +1 -1
  892. package/dist/web/standalone/node_modules/caniuse-lite/data/features/xml-serializer.js +1 -1
  893. package/dist/web/standalone/node_modules/caniuse-lite/data/features/zstd.js +1 -1
  894. package/dist/web/standalone/node_modules/caniuse-lite/package.json +7 -7
  895. package/dist/web/standalone/node_modules/next/dist/build/swc/index.js +1 -1
  896. package/dist/web/standalone/node_modules/next/dist/build/webpack-config.js +3 -3
  897. package/dist/web/standalone/node_modules/next/dist/compiled/next-server/pages-turbo.runtime.prod.js +7 -7
  898. package/dist/web/standalone/node_modules/next/dist/compiled/next-server/pages.runtime.prod.js +6 -6
  899. package/dist/web/standalone/node_modules/next/dist/lib/patch-incorrect-lockfile.js +3 -3
  900. package/dist/web/standalone/node_modules/next/dist/server/config-schema.js +10 -2
  901. package/dist/web/standalone/node_modules/next/dist/server/config.js +1 -1
  902. package/dist/web/standalone/node_modules/next/dist/server/dev/hot-reloader-turbopack.js +2 -2
  903. package/dist/web/standalone/node_modules/next/dist/server/dev/hot-reloader-webpack.js +1 -1
  904. package/dist/web/standalone/node_modules/next/dist/server/lib/app-info-log.js +1 -1
  905. package/dist/web/standalone/node_modules/next/dist/server/lib/start-server.js +1 -1
  906. package/dist/web/standalone/node_modules/next/dist/server/render.js +27 -20
  907. package/dist/web/standalone/node_modules/next/dist/shared/lib/errors/canary-only-config-error.js +1 -1
  908. package/dist/web/standalone/node_modules/next/dist/telemetry/anonymous-meta.js +1 -1
  909. package/dist/web/standalone/node_modules/next/dist/telemetry/events/swc-load-failure.js +1 -1
  910. package/dist/web/standalone/node_modules/next/dist/telemetry/events/version.js +2 -2
  911. package/dist/web/standalone/node_modules/next/package.json +15 -15
  912. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/container.js +26 -18
  913. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/css-syntax-error.js +47 -14
  914. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/input.js +54 -29
  915. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/lazy-result.js +47 -37
  916. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/map-generator.js +26 -9
  917. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/no-work-result.js +57 -55
  918. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/node.js +99 -31
  919. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/parser.js +10 -9
  920. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/previous-map.js +30 -11
  921. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/processor.js +7 -7
  922. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/result.js +5 -5
  923. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/stringifier.js +69 -28
  924. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/tokenize.js +6 -2
  925. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/package.json +48 -48
  926. package/dist/web/standalone/node_modules/react/cjs/react.development.js +1 -1
  927. package/dist/web/standalone/node_modules/react/cjs/react.production.js +1 -1
  928. package/dist/web/standalone/node_modules/react/package.json +1 -1
  929. package/dist/web/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js +1 -1
  930. package/dist/web/standalone/node_modules/react-dom/cjs/react-dom-server-legacy.node.production.js +1 -1
  931. package/dist/web/standalone/node_modules/react-dom/cjs/react-dom-server.browser.production.js +3 -3
  932. package/dist/web/standalone/node_modules/react-dom/cjs/react-dom-server.edge.production.js +3 -3
  933. package/dist/web/standalone/node_modules/react-dom/cjs/react-dom-server.node.production.js +3 -3
  934. package/dist/web/standalone/node_modules/react-dom/cjs/react-dom.production.js +1 -1
  935. package/dist/web/standalone/node_modules/react-dom/package.json +2 -2
  936. package/dist/web/standalone/package.json +12 -7
  937. package/dist/welcome-screen.js +27 -1
  938. package/dist/worktree-cli.d.ts +6 -4
  939. package/dist/worktree-cli.js +26 -20
  940. package/package.json +2 -4
  941. package/packages/mcp-server/README.md +11 -0
  942. package/packages/mcp-server/dist/env-writer.d.ts +5 -1
  943. package/packages/mcp-server/dist/env-writer.d.ts.map +1 -1
  944. package/packages/mcp-server/dist/env-writer.js +41 -8
  945. package/packages/mcp-server/dist/env-writer.js.map +1 -1
  946. package/packages/mcp-server/dist/readers/graph.d.ts.map +1 -1
  947. package/packages/mcp-server/dist/readers/graph.js +7 -6
  948. package/packages/mcp-server/dist/readers/graph.js.map +1 -1
  949. package/packages/mcp-server/dist/readers/paths.d.ts +2 -0
  950. package/packages/mcp-server/dist/readers/paths.d.ts.map +1 -1
  951. package/packages/mcp-server/dist/readers/paths.js +163 -59
  952. package/packages/mcp-server/dist/readers/paths.js.map +1 -1
  953. package/packages/mcp-server/dist/remote-questions.d.ts.map +1 -1
  954. package/packages/mcp-server/dist/remote-questions.js +19 -2
  955. package/packages/mcp-server/dist/remote-questions.js.map +1 -1
  956. package/packages/mcp-server/dist/server.d.ts +11 -1
  957. package/packages/mcp-server/dist/server.d.ts.map +1 -1
  958. package/packages/mcp-server/dist/server.js +138 -52
  959. package/packages/mcp-server/dist/server.js.map +1 -1
  960. package/packages/mcp-server/dist/session-manager.d.ts +6 -1
  961. package/packages/mcp-server/dist/session-manager.d.ts.map +1 -1
  962. package/packages/mcp-server/dist/session-manager.js +35 -13
  963. package/packages/mcp-server/dist/session-manager.js.map +1 -1
  964. package/packages/mcp-server/dist/workflow-tools.d.ts +7 -1
  965. package/packages/mcp-server/dist/workflow-tools.d.ts.map +1 -1
  966. package/packages/mcp-server/dist/workflow-tools.js +160 -30
  967. package/packages/mcp-server/dist/workflow-tools.js.map +1 -1
  968. package/packages/mcp-server/src/env-writer.test.ts +76 -1
  969. package/packages/mcp-server/src/env-writer.ts +48 -9
  970. package/packages/mcp-server/src/import-candidates.test.ts +9 -4
  971. package/packages/mcp-server/src/mcp-server.test.ts +196 -2
  972. package/packages/mcp-server/src/parse-workflow-args.test.ts +80 -0
  973. package/packages/mcp-server/src/readers/graph.test.ts +5 -2
  974. package/packages/mcp-server/src/readers/graph.ts +14 -6
  975. package/packages/mcp-server/src/readers/paths.test.ts +67 -0
  976. package/packages/mcp-server/src/readers/paths.ts +173 -56
  977. package/packages/mcp-server/src/remote-questions.ts +18 -2
  978. package/packages/mcp-server/src/server.ts +159 -57
  979. package/packages/mcp-server/src/session-manager.ts +33 -12
  980. package/packages/mcp-server/src/workflow-tools.test.ts +282 -136
  981. package/packages/mcp-server/src/workflow-tools.ts +171 -33
  982. package/packages/mcp-server/tsconfig.tsbuildinfo +1 -1
  983. package/packages/native/dist/stream-process/index.js +207 -6
  984. package/packages/native/src/__tests__/stream-process.test.mjs +51 -18
  985. package/packages/native/src/stream-process/index.ts +249 -11
  986. package/packages/native/tsconfig.tsbuildinfo +1 -1
  987. package/packages/pi-ai/dist/providers/anthropic-bearer-auth.test.js +8 -2
  988. package/packages/pi-ai/dist/providers/anthropic-bearer-auth.test.js.map +1 -1
  989. package/packages/pi-ai/dist/providers/minimax-tool-name.test.js +8 -2
  990. package/packages/pi-ai/dist/providers/minimax-tool-name.test.js.map +1 -1
  991. package/packages/pi-ai/src/providers/anthropic-bearer-auth.test.ts +8 -2
  992. package/packages/pi-ai/src/providers/minimax-tool-name.test.ts +9 -2
  993. package/packages/pi-ai/tsconfig.tsbuildinfo +1 -1
  994. package/packages/pi-coding-agent/dist/core/agent-session-abort-order.test.js +278 -0
  995. package/packages/pi-coding-agent/dist/core/agent-session-abort-order.test.js.map +1 -1
  996. package/packages/pi-coding-agent/dist/core/agent-session.d.ts +7 -0
  997. package/packages/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -1
  998. package/packages/pi-coding-agent/dist/core/agent-session.js +125 -55
  999. package/packages/pi-coding-agent/dist/core/agent-session.js.map +1 -1
  1000. package/packages/pi-coding-agent/dist/core/extensions/runner.d.ts +1 -0
  1001. package/packages/pi-coding-agent/dist/core/extensions/runner.d.ts.map +1 -1
  1002. package/packages/pi-coding-agent/dist/core/extensions/runner.js +43 -2
  1003. package/packages/pi-coding-agent/dist/core/extensions/runner.js.map +1 -1
  1004. package/packages/pi-coding-agent/dist/core/extensions/runner.test.js +79 -1
  1005. package/packages/pi-coding-agent/dist/core/extensions/runner.test.js.map +1 -1
  1006. package/packages/pi-coding-agent/dist/core/tools/bash-spawn-windows.test.js +24 -6
  1007. package/packages/pi-coding-agent/dist/core/tools/bash-spawn-windows.test.js.map +1 -1
  1008. package/packages/pi-coding-agent/src/core/agent-session-abort-order.test.ts +319 -0
  1009. package/packages/pi-coding-agent/src/core/agent-session.ts +128 -59
  1010. package/packages/pi-coding-agent/src/core/extensions/runner.test.ts +89 -1
  1011. package/packages/pi-coding-agent/src/core/extensions/runner.ts +46 -2
  1012. package/packages/pi-coding-agent/src/core/tools/bash-spawn-windows.test.ts +26 -6
  1013. package/packages/pi-coding-agent/tsconfig.tsbuildinfo +1 -1
  1014. package/src/resources/GSD-WORKFLOW.md +29 -42
  1015. package/src/resources/extensions/async-jobs/job-manager.ts +3 -0
  1016. package/src/resources/extensions/bg-shell/bg-shell-lifecycle.ts +3 -2
  1017. package/src/resources/extensions/bg-shell/utilities.ts +2 -1
  1018. package/src/resources/extensions/browser-tools/tools/intent.ts +13 -2
  1019. package/src/resources/extensions/claude-code-cli/readiness.ts +20 -7
  1020. package/src/resources/extensions/claude-code-cli/stream-adapter.ts +21 -8
  1021. package/src/resources/extensions/claude-code-cli/tests/stream-adapter.test.ts +34 -13
  1022. package/src/resources/extensions/github-sync/cli.ts +3 -0
  1023. package/src/resources/extensions/github-sync/sync.ts +88 -58
  1024. package/src/resources/extensions/github-sync/tests/sync-source.test.ts +26 -0
  1025. package/src/resources/extensions/google-search/index.ts +2 -9
  1026. package/src/resources/extensions/gsd/auto/loop-deps.ts +1 -1
  1027. package/src/resources/extensions/gsd/auto/phases.ts +95 -37
  1028. package/src/resources/extensions/gsd/auto/run-unit.ts +23 -11
  1029. package/src/resources/extensions/gsd/auto/session.ts +5 -6
  1030. package/src/resources/extensions/gsd/auto-artifact-paths.ts +60 -30
  1031. package/src/resources/extensions/gsd/auto-dashboard.ts +13 -2
  1032. package/src/resources/extensions/gsd/auto-direct-dispatch.ts +62 -24
  1033. package/src/resources/extensions/gsd/auto-dispatch.ts +265 -97
  1034. package/src/resources/extensions/gsd/auto-post-unit.ts +123 -44
  1035. package/src/resources/extensions/gsd/auto-prompts.ts +170 -9
  1036. package/src/resources/extensions/gsd/auto-recovery.ts +75 -13
  1037. package/src/resources/extensions/gsd/auto-start.ts +72 -72
  1038. package/src/resources/extensions/gsd/auto-timeout-recovery.ts +22 -0
  1039. package/src/resources/extensions/gsd/auto-timers.ts +37 -5
  1040. package/src/resources/extensions/gsd/auto-worktree.ts +180 -200
  1041. package/src/resources/extensions/gsd/auto.ts +74 -21
  1042. package/src/resources/extensions/gsd/bootstrap/agent-end-recovery.ts +20 -1
  1043. package/src/resources/extensions/gsd/bootstrap/db-tools.ts +38 -7
  1044. package/src/resources/extensions/gsd/bootstrap/dynamic-tools.ts +9 -84
  1045. package/src/resources/extensions/gsd/bootstrap/register-hooks.ts +102 -8
  1046. package/src/resources/extensions/gsd/bootstrap/subagent-input.ts +20 -0
  1047. package/src/resources/extensions/gsd/bootstrap/system-context.ts +14 -4
  1048. package/src/resources/extensions/gsd/bootstrap/write-gate.ts +195 -16
  1049. package/src/resources/extensions/gsd/branch-patterns.ts +3 -3
  1050. package/src/resources/extensions/gsd/commands/catalog.ts +14 -6
  1051. package/src/resources/extensions/gsd/commands/context.ts +40 -6
  1052. package/src/resources/extensions/gsd/commands/dispatcher.ts +11 -5
  1053. package/src/resources/extensions/gsd/commands/handlers/auto.ts +2 -1
  1054. package/src/resources/extensions/gsd/commands/handlers/core.ts +3 -0
  1055. package/src/resources/extensions/gsd/commands/handlers/ops.ts +15 -0
  1056. package/src/resources/extensions/gsd/commands/handlers/workflow.ts +23 -2
  1057. package/src/resources/extensions/gsd/commands-bootstrap.ts +7 -0
  1058. package/src/resources/extensions/gsd/commands-codebase.ts +2 -1
  1059. package/src/resources/extensions/gsd/commands-config.ts +3 -2
  1060. package/src/resources/extensions/gsd/commands-debug.ts +27 -1
  1061. package/src/resources/extensions/gsd/commands-eval-review.ts +716 -0
  1062. package/src/resources/extensions/gsd/commands-extensions.ts +47 -7
  1063. package/src/resources/extensions/gsd/commands-handlers.ts +8 -7
  1064. package/src/resources/extensions/gsd/commands-logs.ts +2 -1
  1065. package/src/resources/extensions/gsd/commands-mcp-status.ts +2 -2
  1066. package/src/resources/extensions/gsd/commands-scan.ts +2 -1
  1067. package/src/resources/extensions/gsd/commands-ship.ts +101 -1
  1068. package/src/resources/extensions/gsd/commands-workflow-templates.ts +5 -4
  1069. package/src/resources/extensions/gsd/commands-worktree.ts +383 -0
  1070. package/src/resources/extensions/gsd/context-budget.ts +13 -2
  1071. package/src/resources/extensions/gsd/db-writer.ts +63 -79
  1072. package/src/resources/extensions/gsd/deep-project-setup-policy.ts +257 -0
  1073. package/src/resources/extensions/gsd/detection.ts +7 -7
  1074. package/src/resources/extensions/gsd/dispatch-guard.ts +6 -11
  1075. package/src/resources/extensions/gsd/docs/preferences-reference.md +12 -4
  1076. package/src/resources/extensions/gsd/doctor-engine-checks.ts +2 -2
  1077. package/src/resources/extensions/gsd/doctor-providers.ts +2 -1
  1078. package/src/resources/extensions/gsd/doctor-runtime-checks.ts +53 -0
  1079. package/src/resources/extensions/gsd/doctor-types.ts +1 -0
  1080. package/src/resources/extensions/gsd/eval-review-schema.ts +243 -0
  1081. package/src/resources/extensions/gsd/forensics.ts +17 -6
  1082. package/src/resources/extensions/gsd/git-service.ts +81 -3
  1083. package/src/resources/extensions/gsd/gsd-db.ts +88 -10
  1084. package/src/resources/extensions/gsd/gsd-home.ts +30 -0
  1085. package/src/resources/extensions/gsd/guided-flow.ts +345 -96
  1086. package/src/resources/extensions/gsd/init-wizard.ts +17 -20
  1087. package/src/resources/extensions/gsd/interrupted-session.ts +39 -2
  1088. package/src/resources/extensions/gsd/journal.ts +4 -1
  1089. package/src/resources/extensions/gsd/key-manager.ts +2 -1
  1090. package/src/resources/extensions/gsd/markdown-renderer.ts +58 -79
  1091. package/src/resources/extensions/gsd/migrate/command.ts +3 -2
  1092. package/src/resources/extensions/gsd/milestone-scope-classifier.ts +15 -8
  1093. package/src/resources/extensions/gsd/native-git-bridge.ts +19 -41
  1094. package/src/resources/extensions/gsd/onboarding-state.ts +2 -2
  1095. package/src/resources/extensions/gsd/parallel-merge.ts +14 -13
  1096. package/src/resources/extensions/gsd/parallel-monitor-overlay.ts +5 -2
  1097. package/src/resources/extensions/gsd/paths.ts +91 -1
  1098. package/src/resources/extensions/gsd/planning-depth.ts +137 -0
  1099. package/src/resources/extensions/gsd/preferences-models.ts +18 -1
  1100. package/src/resources/extensions/gsd/preferences-skills.ts +2 -1
  1101. package/src/resources/extensions/gsd/preferences-types.ts +11 -0
  1102. package/src/resources/extensions/gsd/preferences-validation.ts +9 -0
  1103. package/src/resources/extensions/gsd/preferences.ts +26 -5
  1104. package/src/resources/extensions/gsd/project-research-policy.ts +259 -0
  1105. package/src/resources/extensions/gsd/prompt-loader.ts +2 -3
  1106. package/src/resources/extensions/gsd/prompts/complete-milestone.md +10 -0
  1107. package/src/resources/extensions/gsd/prompts/complete-slice.md +11 -1
  1108. package/src/resources/extensions/gsd/prompts/guided-discuss-milestone.md +2 -0
  1109. package/src/resources/extensions/gsd/prompts/guided-discuss-project.md +133 -0
  1110. package/src/resources/extensions/gsd/prompts/guided-discuss-requirements.md +122 -0
  1111. package/src/resources/extensions/gsd/prompts/guided-research-decision.md +70 -0
  1112. package/src/resources/extensions/gsd/prompts/guided-research-project.md +120 -0
  1113. package/src/resources/extensions/gsd/prompts/guided-workflow-preferences.md +68 -0
  1114. package/src/resources/extensions/gsd/prompts/parallel-research-slices.md +2 -0
  1115. package/src/resources/extensions/gsd/prompts/plan-milestone.md +8 -2
  1116. package/src/resources/extensions/gsd/prompts/plan-slice.md +18 -6
  1117. package/src/resources/extensions/gsd/prompts/refine-slice.md +10 -0
  1118. package/src/resources/extensions/gsd/prompts/rewrite-docs.md +2 -0
  1119. package/src/resources/extensions/gsd/prompts/system.md +4 -4
  1120. package/src/resources/extensions/gsd/queue-order.ts +6 -1
  1121. package/src/resources/extensions/gsd/repo-identity.ts +15 -9
  1122. package/src/resources/extensions/gsd/rethink.ts +2 -1
  1123. package/src/resources/extensions/gsd/safety/git-checkpoint.ts +10 -1
  1124. package/src/resources/extensions/gsd/schemas/__fixtures__/valid-project.md +26 -0
  1125. package/src/resources/extensions/gsd/schemas/__fixtures__/valid-requirements.md +57 -0
  1126. package/src/resources/extensions/gsd/schemas/__fixtures__/valid-roadmap.md +19 -0
  1127. package/src/resources/extensions/gsd/schemas/parsers.ts +346 -0
  1128. package/src/resources/extensions/gsd/schemas/validate.ts +452 -0
  1129. package/src/resources/extensions/gsd/skill-telemetry.ts +3 -2
  1130. package/src/resources/extensions/gsd/slice-cadence.ts +71 -6
  1131. package/src/resources/extensions/gsd/state.ts +91 -389
  1132. package/src/resources/extensions/gsd/tests/artifact-corruption-2630.test.ts +1 -0
  1133. package/src/resources/extensions/gsd/tests/artifact-validators.test.ts +524 -0
  1134. package/src/resources/extensions/gsd/tests/auto-dashboard.test.ts +20 -0
  1135. package/src/resources/extensions/gsd/tests/auto-discuss-milestone-deadlock-4973.test.ts +29 -4
  1136. package/src/resources/extensions/gsd/tests/auto-loop.test.ts +98 -31
  1137. package/src/resources/extensions/gsd/tests/auto-paused-session-validation.test.ts +6 -0
  1138. package/src/resources/extensions/gsd/tests/auto-remediate-slice-status.test.ts +21 -34
  1139. package/src/resources/extensions/gsd/tests/auto-session-encapsulation.test.ts +15 -0
  1140. package/src/resources/extensions/gsd/tests/auto-start-clean-runtime-db-gated.test.ts +32 -1
  1141. package/src/resources/extensions/gsd/tests/auto-start-index-lock.test.ts +38 -0
  1142. package/src/resources/extensions/gsd/tests/auto-wrapup-inflight-guard.test.ts +56 -0
  1143. package/src/resources/extensions/gsd/tests/bundled-skill-triggers.test.ts +50 -27
  1144. package/src/resources/extensions/gsd/tests/commands-eval-review.test.ts +612 -0
  1145. package/src/resources/extensions/gsd/tests/commands-extensions-version-compare.test.ts +58 -0
  1146. package/src/resources/extensions/gsd/tests/commands-ship-eval-warn.test.ts +155 -0
  1147. package/src/resources/extensions/gsd/tests/commands-worktree-clean.test.ts +48 -0
  1148. package/src/resources/extensions/gsd/tests/complete-task-rollback-evidence.test.ts +6 -7
  1149. package/src/resources/extensions/gsd/tests/complete-task.test.ts +8 -6
  1150. package/src/resources/extensions/gsd/tests/completed-at-reconcile.test.ts +12 -27
  1151. package/src/resources/extensions/gsd/tests/completed-units-metrics-sync.test.ts +18 -5
  1152. package/src/resources/extensions/gsd/tests/context-budget.test.ts +28 -0
  1153. package/src/resources/extensions/gsd/tests/crash-recovery.test.ts +50 -0
  1154. package/src/resources/extensions/gsd/tests/custom-engine-loop-integration.test.ts +2 -1
  1155. package/src/resources/extensions/gsd/tests/db-path-worktree-symlink.test.ts +4 -4
  1156. package/src/resources/extensions/gsd/tests/db-writer.test.ts +165 -21
  1157. package/src/resources/extensions/gsd/tests/debug-command-handler.test.ts +37 -0
  1158. package/src/resources/extensions/gsd/tests/deep-mode-integration.test.ts +406 -0
  1159. package/src/resources/extensions/gsd/tests/deep-planning-mode-dispatch.test.ts +881 -0
  1160. package/src/resources/extensions/gsd/tests/deep-project-auto-loop.test.ts +1562 -0
  1161. package/src/resources/extensions/gsd/tests/deep-project-setup-policy.test.ts +193 -0
  1162. package/src/resources/extensions/gsd/tests/derive-state-crossval.test.ts +6 -5
  1163. package/src/resources/extensions/gsd/tests/derive-state-db-disk-reconcile.test.ts +10 -38
  1164. package/src/resources/extensions/gsd/tests/derive-state-db.test.ts +136 -56
  1165. package/src/resources/extensions/gsd/tests/derive-state-draft.test.ts +3 -0
  1166. package/src/resources/extensions/gsd/tests/derive-state-helpers.test.ts +119 -61
  1167. package/src/resources/extensions/gsd/tests/derive-state.test.ts +4 -0
  1168. package/src/resources/extensions/gsd/tests/dispatch-complete-milestone-guard.test.ts +6 -20
  1169. package/src/resources/extensions/gsd/tests/dispatch-guard.test.ts +4 -5
  1170. package/src/resources/extensions/gsd/tests/dispatcher-stuck-planning.test.ts +14 -15
  1171. package/src/resources/extensions/gsd/tests/ensure-db-open.test.ts +11 -16
  1172. package/src/resources/extensions/gsd/tests/escalation.test.ts +2 -1
  1173. package/src/resources/extensions/gsd/tests/eval-review-schema.test.ts +282 -0
  1174. package/src/resources/extensions/gsd/tests/git-checkpoint.test.ts +9 -0
  1175. package/src/resources/extensions/gsd/tests/google-search-stub.test.ts +25 -65
  1176. package/src/resources/extensions/gsd/tests/gsd-db.test.ts +2 -1
  1177. package/src/resources/extensions/gsd/tests/gsd-home.test.ts +43 -0
  1178. package/src/resources/extensions/gsd/tests/gsd-no-project-error-runtime.test.ts +15 -1
  1179. package/src/resources/extensions/gsd/tests/gsd-root-home-guard.test.ts +86 -0
  1180. package/src/resources/extensions/gsd/tests/gsdroot-worktree-detection.test.ts +15 -36
  1181. package/src/resources/extensions/gsd/tests/guided-flow-prompt-consolidation.test.ts +133 -0
  1182. package/src/resources/extensions/gsd/tests/handler-worktree-write-isolation.test.ts +57 -0
  1183. package/src/resources/extensions/gsd/tests/has-pending-deep-stage.test.ts +98 -0
  1184. package/src/resources/extensions/gsd/tests/init-skip-git.test.ts +19 -0
  1185. package/src/resources/extensions/gsd/tests/init-wizard.test.ts +17 -0
  1186. package/src/resources/extensions/gsd/tests/integration/auto-worktree.test.ts +51 -1
  1187. package/src/resources/extensions/gsd/tests/integration/commands-eval-review.integration.test.ts +254 -0
  1188. package/src/resources/extensions/gsd/tests/integration/doctor-runtime.test.ts +40 -0
  1189. package/src/resources/extensions/gsd/tests/integration/git-service.test.ts +42 -0
  1190. package/src/resources/extensions/gsd/tests/integration/parallel-merge.test.ts +15 -15
  1191. package/src/resources/extensions/gsd/tests/integration/state-machine-edge-cases.test.ts +15 -5
  1192. package/src/resources/extensions/gsd/tests/journal-integration.test.ts +124 -7
  1193. package/src/resources/extensions/gsd/tests/markdown-renderer.test.ts +84 -9
  1194. package/src/resources/extensions/gsd/tests/md-importer.test.ts +2 -1
  1195. package/src/resources/extensions/gsd/tests/memory-store.test.ts +3 -2
  1196. package/src/resources/extensions/gsd/tests/milestone-report-path.test.ts +18 -1
  1197. package/src/resources/extensions/gsd/tests/milestone-scope-classifier.test.ts +19 -0
  1198. package/src/resources/extensions/gsd/tests/model-unittype-mapping.test.ts +19 -0
  1199. package/src/resources/extensions/gsd/tests/native-git-bridge-exec-fallback.test.ts +22 -2
  1200. package/src/resources/extensions/gsd/tests/none-mode-gates.test.ts +51 -3
  1201. package/src/resources/extensions/gsd/tests/park-milestone.test.ts +2 -0
  1202. package/src/resources/extensions/gsd/tests/plan-milestone-artifact-verification.test.ts +40 -0
  1203. package/src/resources/extensions/gsd/tests/plan-slice-prompt.test.ts +0 -43
  1204. package/src/resources/extensions/gsd/tests/plan-slice.test.ts +33 -0
  1205. package/src/resources/extensions/gsd/tests/planning-depth-setter.test.ts +172 -0
  1206. package/src/resources/extensions/gsd/tests/post-unit-git-failure.test.ts +18 -0
  1207. package/src/resources/extensions/gsd/tests/preferences.test.ts +72 -0
  1208. package/src/resources/extensions/gsd/tests/prefs-wizard-coverage.test.ts +1 -0
  1209. package/src/resources/extensions/gsd/tests/progressive-planning.test.ts +25 -16
  1210. package/src/resources/extensions/gsd/tests/project-root-cwd-crash.test.ts +4 -4
  1211. package/src/resources/extensions/gsd/tests/projection-regression.test.ts +1 -0
  1212. package/src/resources/extensions/gsd/tests/prompt-budget-enforcement.test.ts +2 -2
  1213. package/src/resources/extensions/gsd/tests/prompt-contracts.test.ts +82 -21
  1214. package/src/resources/extensions/gsd/tests/quality-gates.test.ts +7 -16
  1215. package/src/resources/extensions/gsd/tests/ready-phrase-no-files-4573.test.ts +193 -0
  1216. package/src/resources/extensions/gsd/tests/register-hooks-compaction-checkpoint.test.ts +6 -1
  1217. package/src/resources/extensions/gsd/tests/register-hooks-depth-verification.test.ts +156 -0
  1218. package/src/resources/extensions/gsd/tests/replan-slice.test.ts +3 -0
  1219. package/src/resources/extensions/gsd/tests/resolve-ts.mjs +4 -0
  1220. package/src/resources/extensions/gsd/tests/rogue-file-detection.test.ts +3 -4
  1221. package/src/resources/extensions/gsd/tests/safety-harness-false-positives.test.ts +34 -0
  1222. package/src/resources/extensions/gsd/tests/slice-cadence.test.ts +36 -0
  1223. package/src/resources/extensions/gsd/tests/slice-disk-reconcile.test.ts +10 -56
  1224. package/src/resources/extensions/gsd/tests/stale-slice-rows.test.ts +15 -16
  1225. package/src/resources/extensions/gsd/tests/start-auto-detached.test.ts +53 -0
  1226. package/src/resources/extensions/gsd/tests/stash-pop-gsd-conflict.test.ts +8 -2
  1227. package/src/resources/extensions/gsd/tests/stash-queued-context-files.test.ts +12 -6
  1228. package/src/resources/extensions/gsd/tests/state-corruption-2945.test.ts +1 -0
  1229. package/src/resources/extensions/gsd/tests/state-machine-full-walkthrough.test.ts +23 -27
  1230. package/src/resources/extensions/gsd/tests/steer-worktree-path.test.ts +30 -15
  1231. package/src/resources/extensions/gsd/tests/stop-auto-remote.test.ts +4 -3
  1232. package/src/resources/extensions/gsd/tests/sync-worktree-skip-current.test.ts +10 -33
  1233. package/src/resources/extensions/gsd/tests/token-counter.test.ts +9 -0
  1234. package/src/resources/extensions/gsd/tests/tool-param-optionality.test.ts +34 -0
  1235. package/src/resources/extensions/gsd/tests/unit-context-manifest.test.ts +48 -3
  1236. package/src/resources/extensions/gsd/tests/unit-runtime.test.ts +41 -0
  1237. package/src/resources/extensions/gsd/tests/uok-plan-v2-wiring.test.ts +48 -0
  1238. package/src/resources/extensions/gsd/tests/validate-milestone-write-order.test.ts +7 -8
  1239. package/src/resources/extensions/gsd/tests/validate-milestone.test.ts +9 -15
  1240. package/src/resources/extensions/gsd/tests/verify-artifact-tightened.test.ts +52 -1
  1241. package/src/resources/extensions/gsd/tests/workflow-logger-wiring.test.ts +12 -7
  1242. package/src/resources/extensions/gsd/tests/workflow-mcp-auto-prep.test.ts +4 -4
  1243. package/src/resources/extensions/gsd/tests/workflow-mcp.test.ts +81 -2
  1244. package/src/resources/extensions/gsd/tests/workflow-tool-executors.test.ts +244 -1
  1245. package/src/resources/extensions/gsd/tests/worktree-db-same-file.test.ts +13 -0
  1246. package/src/resources/extensions/gsd/tests/worktree-main-branch.test.ts +5 -0
  1247. package/src/resources/extensions/gsd/tests/worktree-path-injection.test.ts +236 -0
  1248. package/src/resources/extensions/gsd/tests/worktree-resolver.test.ts +103 -0
  1249. package/src/resources/extensions/gsd/tests/worktree-root-resolution.test.ts +50 -0
  1250. package/src/resources/extensions/gsd/tests/worktree-root.test.ts +69 -0
  1251. package/src/resources/extensions/gsd/tests/worktree-symlink-removal.test.ts +34 -33
  1252. package/src/resources/extensions/gsd/tests/worktree-sync-milestones.test.ts +65 -71
  1253. package/src/resources/extensions/gsd/tests/worktree-sync-tasks.test.ts +26 -151
  1254. package/src/resources/extensions/gsd/tests/worktree.test.ts +8 -0
  1255. package/src/resources/extensions/gsd/tests/write-gate-planning-unit.test.ts +116 -1
  1256. package/src/resources/extensions/gsd/tests/write-gate-predicates.test.ts +8 -6
  1257. package/src/resources/extensions/gsd/tests/write-gate.test.ts +121 -13
  1258. package/src/resources/extensions/gsd/token-counter.ts +2 -1
  1259. package/src/resources/extensions/gsd/tools/complete-milestone.ts +7 -5
  1260. package/src/resources/extensions/gsd/tools/complete-slice.ts +7 -14
  1261. package/src/resources/extensions/gsd/tools/complete-task.ts +19 -34
  1262. package/src/resources/extensions/gsd/tools/plan-slice.ts +10 -9
  1263. package/src/resources/extensions/gsd/tools/validate-milestone.ts +7 -5
  1264. package/src/resources/extensions/gsd/tools/workflow-tool-executors.ts +81 -14
  1265. package/src/resources/extensions/gsd/unit-context-manifest.ts +133 -5
  1266. package/src/resources/extensions/gsd/unit-runtime.ts +76 -24
  1267. package/src/resources/extensions/gsd/uok/plan-v2.ts +19 -1
  1268. package/src/resources/extensions/gsd/user-input-boundary.ts +166 -0
  1269. package/src/resources/extensions/gsd/watch/header-renderer.ts +2 -1
  1270. package/src/resources/extensions/gsd/workflow-install.ts +2 -3
  1271. package/src/resources/extensions/gsd/workflow-manifest.ts +4 -1
  1272. package/src/resources/extensions/gsd/workflow-mcp-auto-prep.ts +2 -18
  1273. package/src/resources/extensions/gsd/workflow-mcp.ts +41 -4
  1274. package/src/resources/extensions/gsd/workflow-migration.ts +4 -3
  1275. package/src/resources/extensions/gsd/workflow-plugins.ts +4 -5
  1276. package/src/resources/extensions/gsd/workflow-reconcile.ts +3 -3
  1277. package/src/resources/extensions/gsd/workflow-templates.ts +2 -3
  1278. package/src/resources/extensions/gsd/worktree-command.ts +4 -3
  1279. package/src/resources/extensions/gsd/worktree-manager.ts +46 -7
  1280. package/src/resources/extensions/gsd/worktree-resolver.ts +35 -21
  1281. package/src/resources/extensions/gsd/worktree-root.ts +182 -0
  1282. package/src/resources/extensions/gsd/worktree.ts +8 -119
  1283. package/src/resources/extensions/mcp-client/index.ts +2 -9
  1284. package/src/resources/extensions/ollama/index.ts +16 -2
  1285. package/src/resources/extensions/ollama/model-capabilities.ts +34 -0
  1286. package/src/resources/extensions/ollama/ollama-client.ts +41 -4
  1287. package/src/resources/extensions/ollama/tests/model-capabilities.test.ts +96 -0
  1288. package/src/resources/extensions/ollama/tests/ollama-client-timeout-env.test.ts +147 -0
  1289. package/src/resources/extensions/remote-questions/remote-command.ts +2 -1
  1290. package/src/resources/extensions/remote-questions/status.ts +2 -6
  1291. package/src/resources/extensions/remote-questions/store.ts +2 -6
  1292. package/src/resources/extensions/search-the-web/provider.ts +9 -8
  1293. package/src/resources/extensions/shared/next-action-ui.ts +8 -0
  1294. package/src/resources/extensions/shared/tests/next-action-ui-hasui.test.ts +112 -0
  1295. package/src/resources/extensions/subagent/index.ts +187 -16
  1296. package/src/resources/extensions/subagent/isolation.ts +2 -2
  1297. package/src/resources/extensions/subagent/tests/model-override.test.ts +55 -0
  1298. package/src/resources/extensions/ttsr/rule-loader.ts +2 -3
  1299. package/src/resources/extensions/voice/index.ts +3 -2
  1300. package/src/resources/extensions/voice/linux-ready.ts +2 -3
  1301. package/src/resources/skills/lint/SKILL.md +4 -0
  1302. package/src/resources/skills/review/SKILL.md +4 -0
  1303. package/src/resources/skills/test/SKILL.md +3 -0
  1304. package/src/resources/skills/verify-before-complete/SKILL.md +1 -1
  1305. package/dist/resources/extensions/gsd/auto-loop.js +0 -13
  1306. package/dist/resources/extensions/gsd/prompts/guided-complete-slice.md +0 -3
  1307. package/dist/resources/extensions/gsd/prompts/guided-execute-task.md +0 -3
  1308. package/dist/resources/extensions/gsd/prompts/guided-plan-milestone.md +0 -30
  1309. package/dist/resources/extensions/gsd/prompts/guided-plan-slice.md +0 -3
  1310. package/dist/web/standalone/.next/server/chunks/1926.js +0 -1
  1311. package/dist/web/standalone/.next/server/edge-runtime-webpack.js +0 -2
  1312. package/dist/web/standalone/.next/static/chunks/2824.08296bc2f9654698.js +0 -1
  1313. package/dist/web/standalone/.next/static/chunks/363642f4.cf8b455e0d94b478.js +0 -1
  1314. package/dist/web/standalone/.next/static/chunks/5326.adc4bf49a22f4e67.js +0 -1
  1315. package/dist/web/standalone/.next/static/chunks/webpack-f9f0dc45e4f3ac10.js +0 -1
  1316. package/dist/web/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +0 -1
  1317. package/dist/web/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  1318. package/dist/web/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +0 -42
  1319. package/dist/web/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +0 -30
  1320. package/dist/web/standalone/node_modules/@img/sharp-linuxmusl-x64/LICENSE +0 -191
  1321. package/dist/web/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
  1322. package/dist/web/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +0 -46
  1323. package/src/resources/extensions/gsd/auto-loop.ts +0 -16
  1324. package/src/resources/extensions/gsd/prompts/guided-complete-slice.md +0 -3
  1325. package/src/resources/extensions/gsd/prompts/guided-execute-task.md +0 -3
  1326. package/src/resources/extensions/gsd/prompts/guided-plan-milestone.md +0 -30
  1327. package/src/resources/extensions/gsd/prompts/guided-plan-slice.md +0 -3
  1328. package/dist/web/standalone/.next/static/{UF5VF4F1tB0miEtJS7LyX → w9G0PxMD-Pnt83-0UQ1fv}/_buildManifest.js +0 -0
  1329. package/dist/web/standalone/.next/static/{UF5VF4F1tB0miEtJS7LyX → w9G0PxMD-Pnt83-0UQ1fv}/_ssgManifest.js +0 -0
  1330. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/at-rule.js +0 -0
  1331. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/comment.js +0 -0
  1332. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/declaration.js +4 -4
  1333. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/document.js +0 -0
  1334. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/fromJSON.js +3 -3
  1335. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/list.js +0 -0
  1336. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/parse.js +1 -1
  1337. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/postcss.js +12 -12
  1338. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/root.js +0 -0
  1339. package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/rule.js +6 -6
  1340. /package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/stringify.js +0 -0
  1341. /package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/symbols.js +0 -0
  1342. /package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/terminal-highlight.js +0 -0
  1343. /package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/warn-once.js +0 -0
  1344. /package/dist/web/standalone/node_modules/{next/node_modules/postcss → postcss}/lib/warning.js +0 -0
  1345. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/classes/comparator.js +0 -0
  1346. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/classes/range.js +0 -0
  1347. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/classes/semver.js +0 -0
  1348. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/cmp.js +0 -0
  1349. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/coerce.js +0 -0
  1350. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/compare.js +0 -0
  1351. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/eq.js +0 -0
  1352. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/gt.js +0 -0
  1353. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/gte.js +0 -0
  1354. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/lt.js +0 -0
  1355. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/lte.js +0 -0
  1356. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/neq.js +0 -0
  1357. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/parse.js +0 -0
  1358. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/functions/satisfies.js +0 -0
  1359. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/constants.js +0 -0
  1360. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/debug.js +0 -0
  1361. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/identifiers.js +0 -0
  1362. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/lrucache.js +0 -0
  1363. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/parse-options.js +0 -0
  1364. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/internal/re.js +0 -0
  1365. /package/dist/web/standalone/node_modules/{semver → sharp/node_modules/semver}/package.json +0 -0
package/README.md CHANGED
@@ -310,7 +310,9 @@ This is what makes GSD different. Run it, walk away, come back to built software
310
310
  /gsd auto
311
311
  ```
312
312
 
313
- Auto mode is a state machine driven by files on disk. It reads `.gsd/STATE.md`, determines the next unit of work, creates a fresh agent session, injects a focused prompt with all relevant context pre-inlined, and lets the LLM execute. When the LLM finishes, auto mode reads disk state again and dispatches the next unit.
313
+ Auto mode is a state machine driven by the GSD database at the project root. It derives the next unit of work from authoritative SQLite state, creates a fresh agent session, injects a focused prompt with all relevant context pre-inlined, and lets the LLM execute. When the LLM finishes, auto mode persists the result to the database, refreshes markdown projections such as `STATE.md`, and dispatches the next unit.
314
+
315
+ The database is authoritative for milestones, slices, tasks, requirements, decisions, summaries, and completion status. Markdown under `.gsd/` is a rendered projection for review, prompts, and git-friendly history; it is not a runtime fallback unless you explicitly run a recovery/import command. In worktree mode, project-root DB state remains authoritative and worktree markdown projections are not synced back as state.
314
316
 
315
317
  **What happens under the hood:**
316
318
 
@@ -318,7 +320,7 @@ Auto mode is a state machine driven by files on disk. It reads `.gsd/STATE.md`,
318
320
 
319
321
  2. **Context pre-loading** — The dispatch prompt includes inlined task plans, slice plans, prior task summaries, dependency summaries, roadmap excerpts, and decisions register. The LLM starts with everything it needs instead of spending tool calls reading files.
320
322
 
321
- 3. **Git isolation** — When `git.isolation` is set to `worktree` or `branch`, each milestone runs on its own `milestone/<MID>` branch (in a worktree or in-place). All slice work commits sequentially — no branch switching, no merge conflicts. When the milestone completes, it's squash-merged to main as one clean commit. The default is `none` (work on the current branch), configurable via preferences.
323
+ 3. **Git isolation** — When `git.isolation` is set to `worktree` or `branch`, each milestone runs on its own `milestone/<MID>` branch (in a worktree or in-place). All slice work commits sequentially — no branch switching, no merge conflicts. When the milestone completes, it's squash-merged to main as one clean commit. The default is `none` (work on the current branch), configurable via preferences. If `worktree` is configured in a repo with no committed `HEAD`, GSD temporarily behaves as `none` until the first commit exists because git worktrees need a committed start point.
322
324
 
323
325
  4. **Crash recovery** — A lock file tracks the current unit. If the session dies, the next `/gsd auto` reads the surviving session file, synthesizes a recovery briefing from every tool call that made it to disk, and resumes with full context. Parallel orchestrator state is persisted to disk with PID liveness detection, so multi-worker sessions survive crashes too. In headless mode, crashes trigger automatic restart with exponential backoff (default 3 attempts).
324
326
 
@@ -450,6 +452,7 @@ On first run, GSD launches a branded setup wizard that walks you through LLM pro
450
452
  | `/gsd` | Step mode — executes one unit at a time, pauses between each |
451
453
  | `/gsd next` | Explicit step mode (same as bare `/gsd`) |
452
454
  | `/gsd auto` | Autonomous mode — researches, plans, executes, commits, repeats |
455
+ | `/gsd new-project [--deep]` | Bootstrap a project with staged project-level discovery |
453
456
  | `/gsd quick` | Execute a quick task with GSD guarantees, skip planning overhead |
454
457
  | `/gsd stop` | Stop auto mode gracefully |
455
458
  | `/gsd steer` | Hard-steer plan documents during execution |
@@ -471,6 +474,7 @@ On first run, GSD launches a branded setup wizard that walks you through LLM pro
471
474
  | `/gsd logs` | Browse activity, debug, and metrics logs |
472
475
  | `/gsd export --html` | Generate HTML report for current or completed milestone |
473
476
  | `/worktree` (`/wt`) | Git worktree lifecycle — create, switch, merge, remove |
477
+ | `/gsd worktree` (`/gsd wt`) | TUI worktree management — list, merge, clean, remove with safety checks |
474
478
  | `/voice` | Toggle real-time speech-to-text (macOS, Linux) |
475
479
  | `/exit` | Graceful shutdown — saves session state before exiting |
476
480
  | `/kill` | Kill GSD process immediately |
@@ -497,11 +501,15 @@ Every dispatch is carefully constructed. The LLM never wastes tool calls on orie
497
501
 
498
502
  | Artifact | Purpose |
499
503
  | ------------------ | --------------------------------------------------------------- |
504
+ | `gsd.db` | Authoritative runtime state for hierarchy and completion |
500
505
  | `PROJECT.md` | Living doc — what the project is right now |
506
+ | `REQUIREMENTS.md` | Project-level capability contract and out-of-scope list |
501
507
  | `DECISIONS.md` | Append-only register of architectural decisions |
502
508
  | `KNOWLEDGE.md` | Cross-session rules, patterns, and lessons learned |
503
509
  | `RUNTIME.md` | Runtime context — API endpoints, env vars, services (v2.39) |
504
- | `STATE.md` | Quick-glance dashboard always read first |
510
+ | `runtime/research-decision.json` | Deep-mode marker for project research vs skip |
511
+ | `research/*.md` | Optional deep-mode project research: stack, features, architecture, pitfalls |
512
+ | `STATE.md` | Quick-glance dashboard rendered from the database |
505
513
  | `M001-ROADMAP.md` | Milestone plan with slice checkboxes, risk levels, dependencies |
506
514
  | `M001-CONTEXT.md` | User decisions from the discuss phase |
507
515
  | `M001-RESEARCH.md` | Codebase and ecosystem research |
@@ -597,6 +605,7 @@ auto_report: true
597
605
  | Setting | What it controls |
598
606
  | --------------------------------- | ----------------------------------------------------------------------------------------------------- |
599
607
  | `models.*` | Per-phase model selection — string for a single model, or `{model, fallbacks}` for automatic failover |
608
+ | `planning_depth` | `light` / `deep` — opt into staged project discovery before milestone planning |
600
609
  | `skill_discovery` | `auto` / `suggest` / `off` — how GSD finds and applies skills |
601
610
  | `auto_supervisor.*` | Timeout thresholds for auto mode supervision |
602
611
  | `budget_ceiling` | USD ceiling — auto mode pauses when reached |
@@ -605,7 +614,7 @@ auto_report: true
605
614
  | `skill_rules` | Situational rules for skill routing |
606
615
  | `skill_staleness_days` | Skills unused for N days get deprioritized (default: 60, 0 = disabled) |
607
616
  | `unique_milestone_ids` | Uses unique milestone names to avoid clashes when working in teams of people |
608
- | `git.isolation` | `none` (default), `worktree`, or `branch` — enable worktree or branch isolation for milestone work |
617
+ | `git.isolation` | `none` (default), `worktree`, or `branch` — enable worktree or branch isolation for milestone work. `worktree` requires a committed `HEAD`; zero-commit repos temporarily run as `none` |
609
618
  | `git.manage_gitignore` | Set `false` to prevent GSD from modifying `.gitignore` |
610
619
  | `verification_commands` | Array of shell commands to run after task execution (e.g., `["npm run lint", "npm run test"]`) |
611
620
  | `verification_auto_fix` | Auto-retry on verification failures (default: true) |
@@ -702,7 +711,7 @@ The best practice for working in teams is to ensure unique milestone names acros
702
711
  .gsd/completed-units*.json
703
712
  # State manifest — workflow state for recovery
704
713
  .gsd/state-manifest.json
705
- # Derived state cache — regenerated from plan/roadmap files on disk
714
+ # Derived state projection — regenerated from the authoritative database
706
715
  .gsd/STATE.md
707
716
  # Per-developer token/cost accumulator
708
717
  .gsd/metrics.json
@@ -714,7 +723,7 @@ The best practice for working in teams is to ensure unique milestone names acros
714
723
  .gsd/worktrees/
715
724
  # Parallel orchestration IPC and worker status
716
725
  .gsd/parallel/
717
- # SQLite database and WAL sidecars — checkpoint state, forensics data
726
+ # SQLite database and WAL sidecars — authoritative runtime state, local only
718
727
  .gsd/gsd.db*
719
728
  # Daily-rotated event journal — structured event log for forensics
720
729
  .gsd/journal/
@@ -779,7 +788,7 @@ gsd (CLI binary)
779
788
  - **`pkg/` shim directory** — `PI_PACKAGE_DIR` points here (not project root) to avoid Pi's theme resolution collision with our `src/` directory. Contains only `piConfig` and theme assets.
780
789
  - **Two-file loader pattern** — `loader.ts` sets all env vars with zero SDK imports, then dynamic-imports `cli.ts` which does static SDK imports. This ensures `PI_PACKAGE_DIR` is set before any SDK code evaluates.
781
790
  - **Always-overwrite sync** — `npm update -g` takes effect immediately. Bundled extensions and agents are synced to `~/.gsd/agent/` on every launch, not just first run.
782
- - **State lives on disk** — `.gsd/` is the source of truth. Auto mode reads it, writes it, and advances based on what it finds. No in-memory state survives across sessions.
791
+ - **DB-authoritative state** — the project-root GSD database is the runtime source of truth. `.gsd/` markdown files are rendered projections for review, prompt context, and git history. No in-memory state survives across sessions.
783
792
 
784
793
  ---
785
794
 
@@ -1,3 +1,10 @@
1
+ export type FileExists = (path: string) => boolean;
2
+ export declare function resolvePackageRoot(importUrl: string): string;
3
+ export declare function hasCompleteBundledResources(resourcesDir: string, fileExists?: FileExists): boolean;
4
+ export declare function resolveBundledResourcesDirFromPackageRoot(packageRoot: string, fileExists?: FileExists): string;
5
+ export declare function resolveBundledResourcesDir(importUrl: string, fileExists?: FileExists): string;
6
+ export declare function resolveBundledResource(importUrl: string, ...segments: string[]): string;
7
+ export declare function resolveBundledGsdExtensionModule(importUrl: string, moduleFile: string, fileExists?: FileExists): string;
1
8
  /**
2
9
  * Resolve bundled raw resource files from the package root.
3
10
  *
@@ -1,5 +1,38 @@
1
+ import { existsSync } from "node:fs";
1
2
  import { dirname, join, resolve } from "node:path";
2
3
  import { fileURLToPath } from "node:url";
4
+ export function resolvePackageRoot(importUrl) {
5
+ const moduleDir = dirname(fileURLToPath(importUrl));
6
+ return resolve(moduleDir, "..");
7
+ }
8
+ export function hasCompleteBundledResources(resourcesDir, fileExists = existsSync) {
9
+ return fileExists(join(resourcesDir, "agents")) &&
10
+ fileExists(join(resourcesDir, "extensions"));
11
+ }
12
+ export function resolveBundledResourcesDirFromPackageRoot(packageRoot, fileExists = existsSync) {
13
+ const distResources = join(packageRoot, "dist", "resources");
14
+ const srcResources = join(packageRoot, "src", "resources");
15
+ return hasCompleteBundledResources(distResources, fileExists)
16
+ ? distResources
17
+ : srcResources;
18
+ }
19
+ export function resolveBundledResourcesDir(importUrl, fileExists = existsSync) {
20
+ return resolveBundledResourcesDirFromPackageRoot(resolvePackageRoot(importUrl), fileExists);
21
+ }
22
+ export function resolveBundledResource(importUrl, ...segments) {
23
+ return join(resolveBundledResourcesDir(importUrl), ...segments);
24
+ }
25
+ export function resolveBundledGsdExtensionModule(importUrl, moduleFile, fileExists = existsSync) {
26
+ const packageRoot = resolvePackageRoot(importUrl);
27
+ const distResources = join(packageRoot, "dist", "resources");
28
+ const jsFile = moduleFile.replace(/\.ts$/, ".js");
29
+ const distModule = join(distResources, "extensions", "gsd", jsFile);
30
+ if (hasCompleteBundledResources(distResources, fileExists) && fileExists(distModule)) {
31
+ return distModule;
32
+ }
33
+ const tsFile = moduleFile.replace(/\.js$/, ".ts");
34
+ return join(packageRoot, "src", "resources", "extensions", "gsd", tsFile);
35
+ }
3
36
  /**
4
37
  * Resolve bundled raw resource files from the package root.
5
38
  *
@@ -8,7 +41,6 @@ import { fileURLToPath } from "node:url";
8
41
  * `src/resources/**`, not next to the compiled entry point.
9
42
  */
10
43
  export function resolveBundledSourceResource(importUrl, ...segments) {
11
- const moduleDir = dirname(fileURLToPath(importUrl));
12
- const packageRoot = resolve(moduleDir, "..");
44
+ const packageRoot = resolvePackageRoot(importUrl);
13
45
  return join(packageRoot, "src", "resources", ...segments);
14
46
  }
@@ -5,6 +5,21 @@
5
5
  // Set GSD_CLAUDE_DEBUG=1 to log probe output to stderr. Useful when
6
6
  // diagnosing platform-specific detection failures (Issue #4997).
7
7
  import { execFileSync } from 'node:child_process';
8
+ /**
9
+ * Spawn the Claude CLI without triggering Node's DEP0190.
10
+ *
11
+ * Passing `args` together with `shell: true` is deprecated in Node 22+
12
+ * because the args are concatenated into the command string without
13
+ * escaping. On Windows we still need a shell to resolve `.cmd` shims, so
14
+ * we invoke `cmd /c <command> <args...>` explicitly. On POSIX we don't
15
+ * need a shell at all.
16
+ */
17
+ function spawnClaude(command, args, opts) {
18
+ if (process.platform === 'win32') {
19
+ return execFileSync('cmd', ['/c', command, ...args], opts);
20
+ }
21
+ return execFileSync(command, args, opts);
22
+ }
8
23
  /**
9
24
  * Platform-correct binary name for the Claude Code CLI.
10
25
  *
@@ -44,10 +59,9 @@ function debugLog(...parts) {
44
59
  function findWorkingCommand() {
45
60
  for (const command of CLAUDE_COMMAND_CANDIDATES) {
46
61
  try {
47
- execFileSync(command, ['--version'], {
62
+ spawnClaude(command, ['--version'], {
48
63
  timeout: VERSION_TIMEOUT_MS,
49
64
  stdio: 'pipe',
50
- shell: process.platform === 'win32',
51
65
  });
52
66
  debugLog('version probe ok via', command);
53
67
  return command;
@@ -93,10 +107,9 @@ function parseAuthStatus(output) {
93
107
  function probeAuth(command) {
94
108
  // Try --json first (newer CLIs).
95
109
  try {
96
- const out = execFileSync(command, ['auth', 'status', '--json'], {
110
+ const out = spawnClaude(command, ['auth', 'status', '--json'], {
97
111
  timeout: AUTH_TIMEOUT_MS,
98
112
  stdio: 'pipe',
99
- shell: process.platform === 'win32',
100
113
  }).toString();
101
114
  debugLog('auth status --json output:', out.slice(0, 200));
102
115
  const parsed = parseAuthStatus(out);
@@ -108,10 +121,9 @@ function probeAuth(command) {
108
121
  }
109
122
  // Fallback: plain `auth status` (older CLIs that don't accept --json).
110
123
  try {
111
- const out = execFileSync(command, ['auth', 'status'], {
124
+ const out = spawnClaude(command, ['auth', 'status'], {
112
125
  timeout: AUTH_TIMEOUT_MS,
113
126
  stdio: 'pipe',
114
- shell: process.platform === 'win32',
115
127
  }).toString();
116
128
  debugLog('auth status output:', out.slice(0, 200));
117
129
  return parseAuthStatus(out);
@@ -0,0 +1 @@
1
+ export declare function shouldRedirectAutoToHeadless(subcommand: string | undefined, stdinIsTTY: boolean | undefined, stdoutIsTTY: boolean | undefined): boolean;
@@ -0,0 +1,5 @@
1
+ export function shouldRedirectAutoToHeadless(subcommand, stdinIsTTY, stdoutIsTTY) {
2
+ if (subcommand !== 'auto')
3
+ return false;
4
+ return stdinIsTTY !== true || stdoutIsTTY !== true;
5
+ }
package/dist/cli.js CHANGED
@@ -9,6 +9,7 @@ import { shouldRunOnboarding, runOnboarding } from './onboarding.js';
9
9
  import chalk from 'chalk';
10
10
  import { checkForUpdates } from './update-check.js';
11
11
  import { shouldBypassManagedResourceMismatchGate } from './cli-policy.js';
12
+ import { shouldRedirectAutoToHeadless } from './cli-auto-routing.js';
12
13
  import { printHelp, printSubcommandHelp } from './help-text.js';
13
14
  import { applySecurityOverrides } from './security-overrides.js';
14
15
  import { validateConfiguredModel } from './startup-model-validation.js';
@@ -409,10 +410,10 @@ function flushPendingProviderRegistrations(resourceLoader, modelRegistry) {
409
410
  }
410
411
  runtime.pendingProviderRegistrations = [];
411
412
  }
412
- // `gsd auto [args...]` — shorthand for `gsd headless auto [args...]` (#2732)
413
- // Without this, `gsd auto` falls through to the interactive TUI which hangs
414
- // when stdin/stdout are piped (non-TTY environments).
415
- if (cliFlags.messages[0] === 'auto') {
413
+ // `gsd auto [args...]` with piped stdin/stdout — shorthand for
414
+ // `gsd headless auto [args...]` (#2732). Keep terminal TTY launches in the
415
+ // interactive path so Warp/iTerm/Terminal retain foreground ownership.
416
+ if (shouldRedirectAutoToHeadless(cliFlags.messages[0], process.stdin.isTTY, process.stdout.isTTY)) {
416
417
  await runHeadlessFromAuto(buildHeadlessAutoArgs(cliFlags));
417
418
  }
418
419
  // ---------------------------------------------------------------------------
@@ -656,16 +657,6 @@ if (!cliFlags.worktree && !isPrintMode) {
656
657
  }
657
658
  markStartup('worktreeStatusBanner');
658
659
  // ---------------------------------------------------------------------------
659
- // Auto-redirect: `gsd auto` with piped stdout → headless mode (#2732)
660
- // When stdout is not a TTY (e.g. `gsd auto | cat`, `gsd auto > file`),
661
- // the TUI cannot render and the process hangs. Redirect to headless mode
662
- // which handles non-interactive output gracefully.
663
- // ---------------------------------------------------------------------------
664
- if (cliFlags.messages[0] === 'auto' && !process.stdout.isTTY) {
665
- process.stderr.write('[gsd] stdout is not a terminal — running auto-mode in headless mode.\n');
666
- await runHeadlessFromAuto(cliFlags.messages.slice(1));
667
- }
668
- // ---------------------------------------------------------------------------
669
660
  // Interactive mode — normal TTY session
670
661
  // ---------------------------------------------------------------------------
671
662
  await ensureRtkBootstrap();
@@ -17,7 +17,7 @@ import { createJiti } from '@mariozechner/jiti';
17
17
  import { fileURLToPath } from 'node:url';
18
18
  import { join } from 'node:path';
19
19
  import { homedir } from 'node:os';
20
- import { resolveBundledSourceResource } from './bundled-resource-path.js';
20
+ import { resolveBundledGsdExtensionModule } from './bundled-resource-path.js';
21
21
  const jiti = createJiti(fileURLToPath(import.meta.url), { interopDefault: true, debug: false });
22
22
  const { existsSync } = await import('node:fs');
23
23
  /**
@@ -30,7 +30,8 @@ const { existsSync } = await import('node:fs');
30
30
  * #3471 contract can be exercised in tests without spawning a subprocess.
31
31
  */
32
32
  export function resolveGsdAgentExtensionsDir(env = process.env) {
33
- return join(env.GSD_AGENT_DIR || join(homedir(), '.gsd', 'agent'), 'extensions', 'gsd');
33
+ const agentRoot = env.GSD_AGENT_DIR || join(env.GSD_HOME || join(homedir(), '.gsd'), 'agent');
34
+ return join(agentRoot, 'extensions', 'gsd');
34
35
  }
35
36
  /**
36
37
  * Decide whether headless-query should load extensions from the agent
@@ -41,13 +42,27 @@ export function shouldUseAgentExtensionsDir(opts) {
41
42
  const env = opts.env ?? process.env;
42
43
  const fileExists = opts.fileExists ?? existsSync;
43
44
  const agentDir = resolveGsdAgentExtensionsDir(env);
44
- return { agentDir, useAgentDir: fileExists(join(agentDir, 'state.ts')) };
45
+ return {
46
+ agentDir,
47
+ useAgentDir: fileExists(join(agentDir, 'state.ts')) || fileExists(join(agentDir, 'state.js')),
48
+ };
45
49
  }
46
50
  const agentExtensionsDir = resolveGsdAgentExtensionsDir();
47
- const useAgentDir = existsSync(join(agentExtensionsDir, 'state.ts'));
51
+ const { useAgentDir } = shouldUseAgentExtensionsDir({ env: process.env });
48
52
  const gsdExtensionPath = (...segments) => useAgentDir
49
- ? join(agentExtensionsDir, ...segments)
50
- : resolveBundledSourceResource(import.meta.url, 'extensions', 'gsd', ...segments);
53
+ ? resolveAgentExtensionModule(agentExtensionsDir, segments)
54
+ : resolveBundledGsdExtensionModule(import.meta.url, segments.join('/'));
55
+ function resolveAgentExtensionModule(agentDir, segments) {
56
+ const requested = join(agentDir, ...segments);
57
+ if (existsSync(requested))
58
+ return requested;
59
+ if (segments.length === 1 && segments[0].endsWith('.ts')) {
60
+ const jsPath = join(agentDir, segments[0].replace(/\.ts$/, '.js'));
61
+ if (existsSync(jsPath))
62
+ return jsPath;
63
+ }
64
+ return requested;
65
+ }
51
66
  async function loadExtensionModules() {
52
67
  const stateModule = await jiti.import(gsdExtensionPath('state.ts'), {});
53
68
  const dispatchModule = await jiti.import(gsdExtensionPath('auto-dispatch.ts'), {});
package/dist/loader.js CHANGED
@@ -60,6 +60,7 @@ if (firstArg === '--help' || firstArg === '-h') {
60
60
  import { agentDir, appRoot } from './app-paths.js';
61
61
  import { applyRtkProcessEnv } from './rtk-shared.js';
62
62
  import { serializeBundledExtensionPaths } from './bundled-extension-paths.js';
63
+ import { resolveBundledResourcesDirFromPackageRoot } from './bundled-resource-path.js';
63
64
  import { discoverExtensionEntryPaths } from './extension-discovery.js';
64
65
  import { loadRegistry, readManifestFromEntryPath, isExtensionEnabled } from './extension-registry.js';
65
66
  import { renderLogo } from './logo.js';
@@ -112,15 +113,25 @@ const { Module } = await import('module');
112
113
  Module._initPaths?.();
113
114
  // GSD_VERSION — expose package version so extensions can display it
114
115
  process.env.GSD_VERSION = gsdVersion;
115
- // GSD_BIN_PATH — absolute path to this loader (dist/loader.js), used by patched subagent
116
- // to spawn gsd instead of pi when dispatching workflow tasks
117
- process.env.GSD_BIN_PATH = process.argv[1];
116
+ // GSD_BIN_PATH — absolute path to the CLI entrypoint, used by patched
117
+ // subagent/parallel workers to spawn gsd instead of pi when dispatching
118
+ // workflow tasks. In source-dev mode this must remain scripts/dev-cli.js, not
119
+ // src/loader.ts, because child processes need the --import resolve-ts wrapper.
120
+ const invokedBinPath = process.argv[1];
121
+ const sourceLoaderPath = join(gsdRoot, 'src', 'loader.ts');
122
+ const devCliPath = process.env.GSD_DEV_CLI_PATH?.trim() || join(gsdRoot, 'scripts', 'dev-cli.js');
123
+ const explicitCliPath = process.env.GSD_CLI_PATH?.trim() || process.env.GSD_BIN_PATH?.trim();
124
+ const isSourceLoader = invokedBinPath && resolve(invokedBinPath) === sourceLoaderPath;
125
+ const rawGsdBinPath = explicitCliPath || (isSourceLoader && existsSync(devCliPath) ? devCliPath : invokedBinPath);
126
+ const resolvedGsdBinPath = rawGsdBinPath ? resolve(rawGsdBinPath) : undefined;
127
+ process.env.GSD_BIN_PATH = resolvedGsdBinPath;
128
+ if (!process.env.GSD_CLI_PATH) {
129
+ process.env.GSD_CLI_PATH = resolvedGsdBinPath;
130
+ }
118
131
  // GSD_WORKFLOW_PATH — absolute path to bundled GSD-WORKFLOW.md, used by patched gsd extension
119
132
  // when dispatching workflow prompts. Prefers dist/resources/ (stable, set at build time)
120
133
  // over src/resources/ (live working tree) — see resource-loader.ts for rationale.
121
- const distRes = join(gsdRoot, 'dist', 'resources');
122
- const srcRes = join(gsdRoot, 'src', 'resources');
123
- const resourcesDir = existsSync(distRes) ? distRes : srcRes;
134
+ const resourcesDir = resolveBundledResourcesDirFromPackageRoot(gsdRoot);
124
135
  process.env.GSD_WORKFLOW_PATH = join(resourcesDir, 'GSD-WORKFLOW.md');
125
136
  // GSD_BUNDLED_EXTENSION_PATHS — dynamically discovered bundled extension entry points.
126
137
  // Uses the shared discoverExtensionEntryPaths() to scan the bundled resources
@@ -6,6 +6,7 @@ import { fileURLToPath } from 'node:url';
6
6
  import { compareSemver } from './update-check.js';
7
7
  import { discoverExtensionEntryPaths } from './extension-discovery.js';
8
8
  import { loadRegistry, readManifestFromEntryPath, isExtensionEnabled, ensureRegistryEntries } from './extension-registry.js';
9
+ import { resolveBundledResourcesDirFromPackageRoot } from './bundled-resource-path.js';
9
10
  let piCodingAgentModulePromise;
10
11
  function loadPiCodingAgentModule() {
11
12
  return (piCodingAgentModulePromise ??= import('@gsd/pi-coding-agent'));
@@ -19,14 +20,7 @@ function loadPiCodingAgentModule() {
19
20
  // dist/resources/ is populated by the build step (`npm run copy-resources`) and
20
21
  // reflects the built state, not the currently checked-out branch.
21
22
  const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), '..');
22
- const distResources = join(packageRoot, 'dist', 'resources');
23
- const srcResources = join(packageRoot, 'src', 'resources');
24
- // Use dist/resources only if it has the full expected structure.
25
- // A partial build (tsc without copy-resources) creates dist/resources/extensions/
26
- // but not agents/ or skills/, causing initResources to sync from an incomplete source.
27
- const resourcesDir = (existsSync(distResources) && existsSync(join(distResources, 'agents')))
28
- ? distResources
29
- : srcResources;
23
+ const resourcesDir = resolveBundledResourcesDirFromPackageRoot(packageRoot);
30
24
  const bundledExtensionsDir = join(resourcesDir, 'extensions');
31
25
  const resourceVersionManifestName = 'managed-resources.json';
32
26
  const resourceFingerprintFileName = '.managed-resources-content-hash';
@@ -717,29 +711,38 @@ function migrateSkillsToEcosystemDir(agentDir) {
717
711
  export function hasStaleCompiledExtensionSiblings(extensionsDir, sourceDir = bundledExtensionsDir) {
718
712
  if (!existsSync(extensionsDir))
719
713
  return false;
720
- const sourceFiles = existsSync(sourceDir)
721
- ? new Set(readdirSync(sourceDir, { withFileTypes: true })
722
- .filter((entry) => entry.isFile())
723
- .map((entry) => entry.name))
724
- : new Set();
725
- for (const entry of readdirSync(extensionsDir, { withFileTypes: true })) {
726
- if (!entry.isFile())
727
- continue;
728
- if (!entry.name.endsWith('.ts') && !entry.name.endsWith('.js'))
729
- continue;
730
- const siblingName = entry.name.endsWith('.ts')
731
- ? entry.name.replace(/\.ts$/, '.js')
732
- : entry.name.replace(/\.js$/, '.ts');
733
- if (!existsSync(join(extensionsDir, siblingName)))
714
+ const sourceFiles = collectRelativeFiles(sourceDir);
715
+ const installedFiles = collectRelativeFiles(extensionsDir);
716
+ for (const relPath of installedFiles) {
717
+ if (!relPath.endsWith('.ts') && !relPath.endsWith('.js'))
734
718
  continue;
735
- if (sourceFiles.has(entry.name) && sourceFiles.has(siblingName))
719
+ if (sourceFiles.has(relPath))
736
720
  continue;
737
- if (sourceFiles.has(entry.name) || sourceFiles.has(siblingName)) {
721
+ const bundledSibling = relPath.endsWith('.ts')
722
+ ? relPath.replace(/\.ts$/, '.js')
723
+ : relPath.replace(/\.js$/, '.ts');
724
+ if (sourceFiles.has(bundledSibling))
738
725
  return true;
739
- }
740
726
  }
741
727
  return false;
742
728
  }
729
+ function collectRelativeFiles(rootDir) {
730
+ const files = new Set();
731
+ if (!existsSync(rootDir))
732
+ return files;
733
+ const visit = (dir) => {
734
+ for (const entry of readdirSync(dir, { withFileTypes: true })) {
735
+ const entryPath = join(dir, entry.name);
736
+ if (entry.isDirectory()) {
737
+ visit(entryPath);
738
+ continue;
739
+ }
740
+ files.add(relative(rootDir, entryPath).replaceAll('\\', '/'));
741
+ }
742
+ };
743
+ visit(rootDir);
744
+ return files;
745
+ }
743
746
  /**
744
747
  * Constructs a DefaultResourceLoader that loads extensions from both
745
748
  * ~/.gsd/agent/extensions/ (GSD's default) and ~/.pi/agent/extensions/ (pi's default).
@@ -1 +1 @@
1
- afb1073f61989a78
1
+ cc8431019a2c8873
@@ -542,74 +542,61 @@ If files disagree, **pause and surface to the user**:
542
542
 
543
543
  ---
544
544
 
545
- ## Git Strategy: Branch-Per-Slice with Squash Merge
545
+ ## Git Strategy: Sequential Commits with Optional Milestone Isolation
546
546
 
547
- **Principle:** Main is always clean and working. Each slice gets an isolated branch. The user never runs a git command — the agent handles everything.
547
+ **Principle:** GSD keeps work atomic and recoverable. By default, work happens on the current branch. If `git.isolation` is set to `worktree` or `branch`, a milestone branch is used and merged back to the recorded integration branch when the milestone completes. The user never runs a git command — the agent handles everything.
548
548
 
549
- ### Branch Lifecycle
549
+ ### Isolation Modes
550
550
 
551
- 1. **Slice starts** create branch `gsd/M001/S01` from main
552
- 2. **Per-task commits** on the branch — atomic, descriptive, bisectable
553
- 3. **Slice completes** squash merge to main as one clean commit
554
- 4. **Branch deleted** squash commit on main is the permanent record
551
+ | Mode | Where work happens | Branch behavior |
552
+ |------|--------------------|-----------------|
553
+ | `none` (default) | Project root | Current branch, no isolation branch |
554
+ | `worktree` | `.gsd/worktrees/<MID>/` | `milestone/<MID>` branch in a git worktree |
555
+ | `branch` | Project root | `milestone/<MID>` branch checked out in place |
555
556
 
556
- ### What Main Looks Like
557
+ In all modes, slices and tasks commit sequentially on the active branch; there are no per-slice branches. The integration branch is captured when the milestone starts, so stale `git.main_branch` preferences do not redirect merge-back.
557
558
 
558
- ```
559
- feat(M001/S03): milestone and slice discuss commands
560
- feat(M001/S02): extension scaffold and command routing
561
- feat(M001/S01): file I/O foundation
562
- ```
559
+ ### Milestone Lifecycle
563
560
 
564
- One commit per slice. Individually revertable. Reads like a changelog.
561
+ 1. **Milestone starts** capture the current integration branch.
562
+ 2. **Optional isolation** → create `milestone/M001` only when `git.isolation` is `worktree` or `branch`.
563
+ 3. **Per-task commits** — atomic, descriptive, bisectable.
564
+ 4. **Slice completes** → write slice summary, UAT script, roadmap checkbox, and milestone summary.
565
+ 5. **Milestone completes** → if isolated, squash-merge the milestone branch back to the captured integration branch and clean up the worktree/branch.
565
566
 
566
- ### What the Branch Looks Like
567
+ ### What History Looks Like
567
568
 
568
569
  ```
569
- gsd/M001/S01:
570
- test(S01/T03): round-trip tests passing
571
- feat(S01/T03): file writer with round-trip fidelity
572
- feat(S01/T02): markdown parser for plan files
573
- feat(S01/T01): core types and interfaces
574
- docs(S01): add slice plan
570
+ feat: core type definitions
571
+ feat: markdown parser for plan files
572
+ fix: handle empty state rebuild
575
573
  ```
576
574
 
575
+ In `none` mode these commits land directly on the current branch. In isolated modes they land on `milestone/<MID>` and are squashed back at milestone completion.
576
+
577
577
  ### Commit Conventions
578
578
 
579
579
  | When | Format | Example |
580
580
  |------|--------|---------|
581
- | Task completed | `{type}(S01/T02): <one-liner from summary>` | Type inferred from title (`feat`, `fix`, `test`, etc.) |
582
- | Plan/docs committed | `docs(S01): add slice plan` | Planning artifacts |
583
- | Slice squash to main | `type(M001/S01): <slice title>` | Type inferred from title |
584
- | State rebuild | `chore(S01/T02): auto-commit after state-rebuild` | Bookkeeping only |
581
+ | Task completed | `{type}: <one-liner from summary>` | Type inferred from title (`feat`, `fix`, `test`, etc.) |
582
+ | State rebuild | `chore: auto-commit after state-rebuild` | Bookkeeping only |
583
+ | Milestone squash | `{type}: <milestone title>` | Type inferred from title |
585
584
 
586
585
  The system reads the task summary after execution and builds a meaningful commit message:
587
- - **Subject**: `{type}({sliceId}/{taskId}): {one-liner}` — the one-liner from the summary frontmatter
586
+ - **Subject**: `{type}: {one-liner}` — the one-liner from the summary frontmatter, sanitized to one line
588
587
  - **Type**: Inferred from the task title and one-liner (`feat`, `fix`, `test`, `refactor`, `docs`, `perf`, `chore`)
589
588
  - **Body**: Key files from the summary frontmatter (up to 8 files listed)
589
+ - **Trailers**: `GSD-Task: S##/T##`; if GitHub sync linked an issue, `Resolves #N`
590
590
 
591
591
  Commit types: `feat`, `fix`, `test`, `refactor`, `docs`, `perf`, `chore`
592
592
 
593
- ### Squash Merge Message
594
-
595
- ```
596
- feat(M001/S01): file I/O foundation
597
-
598
- Agent can parse, format, load, and save all GSD file types with round-trip fidelity.
599
-
600
- Tasks completed:
601
- - T01: core types and interfaces
602
- - T02: markdown parser for plan files
603
- - T03: file writer with round-trip fidelity
604
- ```
605
-
606
593
  ### Rollback
607
594
 
608
595
  | Problem | Fix |
609
596
  |---------|-----|
610
- | Bad task | `git reset --hard HEAD~1` to previous commit on the branch |
611
- | Bad slice | `git revert <squash commit>` on main |
612
- | UAT failure after merge | Fix tasks on `gsd/M001/S01-fix` branch, squash as `fix(M001/S01): <fix>` |
597
+ | Bad task | Revert the task commit on the active branch |
598
+ | Bad milestone squash | Revert the squash commit on the integration branch |
599
+ | UAT failure after merge | Create follow-up fix tasks in the current or next milestone |
613
600
 
614
601
  ---
615
602
 
@@ -159,6 +159,10 @@ export class AsyncJobManager {
159
159
  this.evictionTimers.delete(id);
160
160
  this.jobs.delete(id);
161
161
  }, this.evictionMs);
162
+ // Eviction is housekeeping; it should not keep short-lived test/CLI
163
+ // processes alive after the real work has finished.
164
+ if (typeof timer === "object" && "unref" in timer)
165
+ timer.unref();
162
166
  this.evictionTimers.set(id, timer);
163
167
  }
164
168
  evictOldest() {
@@ -6,6 +6,7 @@ import { truncateToWidth, visibleWidth, } from "@gsd/pi-tui";
6
6
  import { processes, pendingAlerts, pushAlert, cleanupAll, cleanupSessionProcesses, persistManifest, loadManifest, pruneDeadProcesses, } from "./process-manager.js";
7
7
  import { formatUptime, getBgShellLiveCwd, resolveBgShellPersistenceCwd } from "./utilities.js";
8
8
  import { formatTokenCount } from "../shared/format-utils.js";
9
+ import { homedir } from "node:os";
9
10
  export function registerBgShellLifecycle(pi, state) {
10
11
  function syncLatestCtxCwd() {
11
12
  if (!state.latestCtx)
@@ -177,8 +178,8 @@ export function registerBgShellLifecycle(pi, state) {
177
178
  render(width) {
178
179
  // ── Line 1: pwd (branch) [session] ... bg status ──
179
180
  let pwd = getBgShellLiveCwd(state.latestCtx?.cwd);
180
- const home = process.env.HOME || process.env.USERPROFILE;
181
- if (home && pwd.startsWith(home)) {
181
+ const home = homedir();
182
+ if (pwd.startsWith(home)) {
182
183
  pwd = `~${pwd.slice(home.length)}`;
183
184
  }
184
185
  const branch = footerData.getGitBranch();
@@ -32,6 +32,7 @@ export function restoreWindowsVTInput() {
32
32
  }
33
33
  // ── Time Formatting ────────────────────────────────────────────────────────
34
34
  import { formatDuration } from "../shared/mod.js";
35
+ import { homedir } from "node:os";
35
36
  export const formatUptime = formatDuration;
36
37
  export function formatTimeAgo(timestamp) {
37
38
  return formatDuration(Date.now() - timestamp) + " ago";
@@ -48,7 +49,7 @@ export function getBgShellLiveCwd(cachedCwd, pathExists = existsSync, getCwd = (
48
49
  }
49
50
  catch {
50
51
  const projectRoot = deriveProjectRootFromAutoWorktree(cachedCwd);
51
- const home = process.env.HOME || process.env.USERPROFILE;
52
+ const home = homedir();
52
53
  const fallbacks = [projectRoot, cachedCwd, home, "/"].filter((candidate) => Boolean(candidate));
53
54
  for (const candidate of fallbacks) {
54
55
  if (candidate !== "/" && !pathExists(candidate))
@@ -1,5 +1,4 @@
1
1
  import { Type } from "@sinclair/typebox";
2
- import { StringEnum } from "@gsd/pi-ai";
3
2
  import { diffCompactStates } from "../core.js";
4
3
  import { setLastActionBeforeState, setLastActionAfterState, } from "../state.js";
5
4
  // ---------------------------------------------------------------------------
@@ -15,6 +14,14 @@ const INTENTS = [
15
14
  "auth_action",
16
15
  "back_navigation",
17
16
  ];
17
+ function StringEnum(values, options) {
18
+ return Type.Unsafe({
19
+ type: "string",
20
+ enum: values,
21
+ ...(options?.description && { description: options.description }),
22
+ ...(options?.default && { default: options.default }),
23
+ });
24
+ }
18
25
  // ---------------------------------------------------------------------------
19
26
  // Scoring evaluate script — runs entirely in-browser via page.evaluate()
20
27
  // ---------------------------------------------------------------------------