Repository navigation
tui: remove Go shell bridge and adopt infra/ workspace conventions - #4
Conversation
Remove the Go shell bridge (provision/go, the @ollin/shell portal and the
Go TUI reimplementation) — it was a real-terminal harness, not part of the
shipped runtime — and prune its now-dead cache plumbing (bin/go-build/
go-mod/go-tmp).
Rename provision/ -> infra/ and adopt the sibling sasu repo's infra
conventions by consolidating @ollin/artefacts + @ollin/tsconfig + the old
provision-ts helpers into a single @ollin/infra package:
- infra/src/index.ts: cache/path helpers (infraRoot, cacheDir, distDir,
workspacePath, ...)
- infra/tsconfig/{base,tui,acceptance}.json: centralized configs exported
via @ollin/infra/tsconfig/*.json
- infra/.cache: single tool-cache root; .npmrc store-dir -> infra/.cache/
pnpm-store
- infra/make/*.mk: modular Makefile with the root Makefile as a transparent
forwarder
Rewire all consumers (root, tui, docs, acceptance) onto @ollin/infra,
repoint every provision/.cache path to infra/.cache, drop the deleted
packages from the workspace, and update UPSTREAM.md.
Verified: pnpm install / typecheck / build / test all green (tui 401,
docs 5, acceptance 10 incl. the ESM package-consumption test); make help
reaches infra/make/* via the forwarder.
There was a problem hiding this comment.
Code Review
This pull request restructures the repository's tooling by replacing the old provision workspace and @ollin/tsconfig package with a unified @ollin/infra workspace. The Go-based TUI shell implementation and old artefacts package have been completely removed. All tool caches, centralized TypeScript configurations, and Makefile targets have been consolidated under the new infra directory, with the root Makefile acting as a transparent forwarder to modular makefiles in infra/make. As there are no review comments provided, I have no additional feedback to offer on these changes.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
What
provision/go) — the@ollin/shellportal CLI and the Go TUI reimplementation. It was a real-terminal harness, not part of the shipped runtime. Pruned its now-dead cache plumbing (bin/go-build/go-mod/go-tmp).provision/→infra/and adopt the sibling sasu repo'sinfra/conventions by consolidating@ollin/artefacts+@ollin/tsconfig+ the oldprovision-tshelpers into a single@ollin/infrapackage:infra/src/index.ts— cache/path helpers (infraRoot,cacheDir,workspacePath, named tool buckets).infra/tsconfig/{base,tui,acceptance}.json— centralized configs, exported via@ollin/infra/tsconfig/*.json.infra/.cache— single tool-cache root;.npmrcstore-dir →infra/.cache/pnpm-store.infra/make/*.mk— modular Makefile; the repo-rootMakefileis now a transparent forwarder intoinfra/make/Makefile.tui,docs,acceptance) onto@ollin/infra, repoint everyprovision/.cachepath toinfra/.cache, drop the deleted packages from the pnpm workspace, and updateUPSTREAM.md..idea/to.gitignore.Why
provision/split tooling across several workspace packages and shipped a Go harness that isn't part of the public runtime. This aligns tui with sasu's single-packageinfra/convention: one owner for the tool cache, centralized tsconfigs, and the Makefile.Notes for reviewers
infra/artefacts/: deliberately not ported. tui packages build to their ownpackages/*/dist, so the sasu-styleartefacts/dist|.logshelpers were dropped rather than carried over dead.packages/artefacts/provision/tswas never imported at runtime (configs compute paths inline); only the tsconfig exports were consumed — so the consolidation is mostlyextends+ workspace-dep rewiring.tsBuildInfoFilepaths in the relocatedinfra/tsconfig/*.jsonresolve relative to the base-config dir (verified by typecheck).Verification
pnpm install→ 4 workspace packages,@ollin/infraswapped in for the two removed packages.pnpm typecheck✓ ·pnpm build✓ ·pnpm test✓ (tui 401, docs 5, acceptance 10 incl. the ESM package-consumption test).make helpreachesinfra/make/*via the root forwarder.git grep provision | @ollin/artefacts | @ollin/tsconfig→ clean.