Break the old core-owned WebUI delivery law and make the active operator web app an ecosystem package:
packages/webui/@agenter/webuibecomespackages/studio/@agenter/studio.agenter studiois descriptor-driven likeagenter shell.agenter webis removed without compatibility alias.packages/ui-studio/@agenter/ui-studiobecomespackages/icon-studio/@agenter/icon-studio.
The change is OpenSpec migrate-webui-to-studio-app, schema spec-driven.
Confirmed from openspec status --change migrate-webui-to-studio-app --json and openspec instructions apply --change migrate-webui-to-studio-app --json:
- Artifacts are complete:
proposal,design,specs,tasks. - Tasks are complete:
24/24. - State is
all_done; OpenSpec says the change is ready to archive after review.
Landed on main with:
41469166 docs(spec): propose studio app migration462a3db1 feat: migrate webui to studio appd8b2ac8b docs(spec): close studio app migration tasks
Feature worktree and branch were cleaned:
- Worktree removed:
.worktree/migrate-webui-to-studio-app - Branch removed:
feature/migrate-webui-to-studio-app
Verified before landing:
bun test packages/cli/test/app-command-launcher.test.ts packages/app-runtime/test/app-runtime.test.ts packages/studio/test/static-root.test.ts --timeout 30000bun run --filter '@agenter/icon-studio' typecheckbun run --filter '@agenter/studio' typecheckbun run --filter '@agenter/studio' test:unitbun run --filter '@agenter/icon-studio' testbun run --filter '@agenter/icon-studio' buildbun run --filter '@agenter/studio' buildbun run --filter '@agenter/studio' test:domopenspec validate migrate-webui-to-studio-app --strictopenspec validate --specs --strictgit diff --check./.gemini/scripts/wt-merge-verify.sh --target main./.gemini/scripts/wt-land-ff.sh feature/migrate-webui-to-studio-app
Important observed non-fatal warnings:
@agenter/studio buildexits 0 but reports existing lightningcss:global(...)warnings and plugin timing warnings.@agenter/studio test:domexits 0 with a ghostty wasm 404 log; 22 files and 109 tests passed.@agenter/icon-studio buildexits 0 with plugin timing and adapter-auto environment hints.
- One attempted
apply_patchtargeted the main checkout path before using the worktree absolute path. It failed before writing anything. - Main checkout had unrelated dirty/untracked work during landing. The ff-only landing script created snapshot ref
snapshot/main-pre-land-20260520T115721Zand restored the non-overlapping untrackedopenspec/changes/refine-cli-shell-chat-scrollbox/path.
Confirmed next workflow step is human/main-branch review, then archive if accepted:
- Review current
maincommits and app behavior. - Re-run any desired acceptance gates on
main. - Archive
migrate-webui-to-studio-appafter acceptance. - Be aware that current
mainalso has unrelated WIP forrefine-cli-shell-chat-scrollbox; do not mix that WIP into Studio archive unless intentionally continuing it.