Skip to content

Remove arc-paste / share stack — revert to legacy planner - #57

Merged
bfirestone merged 12 commits into
mainfrom
remove-arc-paste
Jun 8, 2026
Merged

Remove arc-paste / share stack — revert to legacy planner#57
bfirestone merged 12 commits into
mainfrom
remove-arc-paste

Conversation

@bfirestone

@bfirestone bfirestone commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Summary

Removes the entire arc-paste / share stack (UI + standalone service + backend) and restores the legacy planner (arc plan/planner/[planId]) as the sole design-review surface. The share/paste feature was not well received; the legacy planner was, and it remained fully intact in the tree — so this is an additive-layer removal, not a code-restore.

Net: 100 files, +329 / −11,472.

What was removed

Layer Removed
Web /share/[id] route + components, lib/paste/ client/crypto; stripped share branches from +layout.svelte and the settings page; reverted vite proxy; removed vitest (it existed solely for the paste/share unit tests)
Service arc-paste/ standalone binary + Caddyfile/compose/Dockerfile; internal/paste/cmd; Makefile build-paste
API/CLI /api/paste/* + /shares handlers, arc share CLI, internal/client share methods, server wiring (paste route reg, share routes, legacy shares.json import, sharesconfig factory); regenerated OpenAPI + TS types
Storage/types Storage share methods + ErrShareNotFound, SQLite adapter, sqlc schema/queries (regenerated), types.Share/ShareKind, paste engine, internal/sharesconfig
Config ShareConfig struct/field/default/validation, legacy share_* migration mapping, arc config share handling, OpenAPI ShareConfig schema
DB Migration 018_drop_shares.sql drops shares + paste_shares/paste_events/paste_migrations (forward-only; 017 left intact as a released migration)
Docs docs/runbooks/paste-server.md, docs/runbooks/review_howto.md

Kept intact

Legacy planner: cmd/arc/plan.go, internal/api/plans.go, internal/storage/sqlite/plans.go, web/src/routes/planner/, migrations 004/013/014. CHANGELOG.md and historical docs/plans/* are deliberately untouched (historical records).

Verification

  • make build (frontend embedded), make test, make test-integration — green
  • web bun lint (biome+eslint) + bun run check — green
  • Residual sweep — zero arc-paste/share/paste/vitest references outside CHANGELOG and docs/plans/
  • All changed Go files gofmt-clean; no new lint issues introduced

Note: pre-existing goconst debt in some _test.go files surfaces only under golangci-lint ≥ v2.12 (CI pins v2.11.2); addressed separately in #55.

Follow-up (separate repo)

The arc plugin skills (brainstorm/plan) still reference arc share. They live in a separate marketplace repo, so they're out of scope here and need a follow-up there to point only at the legacy planner.

🤖 Generated with Claude Code

bfirestone added 12 commits June 7, 2026 22:09
Delete the /share/[id] SvelteKit route and web/src/lib/paste/ client lib. Strip isShareRoute special-casing from the global layout so it always renders the normal app shell. Remove the Share settings section from the settings page. Revert the vite proxy target to the hardcoded default port.
Remove ShareConfig struct, Config.Share field, share.server validation,
legacy share_author/share_server migration mapping, and arc config
command handling for share.author/share.server keys.
Remove the `share` property and `ShareConfig` schema from the OpenAPI
config schemas, and regenerate `openapi.gen.go` and `types.ts` to
match the Go `Config` struct which no longer has a `Share` field.
Delete vitest.config.ts, remove vitest devDependency, and restore the
test script to run playwright e2e — reverting the arc-paste foundation
additions now that all paste/share test files are gone.
# Conflicts:
#	arc-paste/main.go
#	cmd/arc/config.go
#	cmd/arc/config_test.go
#	cmd/arc/share.go
#	internal/config/validate_test.go
@bfirestone
bfirestone merged commit ab9136f into main Jun 8, 2026
3 checks passed
@bfirestone
bfirestone deleted the remove-arc-paste branch June 8, 2026 16:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant