Skip to content

Add a verified basectl uninstall command for full local and per-repo removal #2110

Description

@codeforester

Goal

Give adopters a single, tested command to fully remove Base — from one project or an entire workstation — plus a way to verify nothing was left behind.

Background

In pilot-readiness review, the largest single objection to org-wide adoption from a prospective platform-engineering adopter was that Base wires into shell startup files and a local trust store, so unwinding it from 15+ repositories later is real work, not git rm. Today, removal is piecemeal (trust revoke, manual shell-startup edits, manual cache cleanup) with no single command and no way to confirm complete removal. A low-friction, verifiable exit path directly de-risks adoption of a single-maintainer tool, since teams can trial it knowing the rollback cost is bounded and provable.

Scope

  • Add basectl uninstall [project] to reverse a single project's trust grant, manifest reference, and generated caches.
  • Add basectl uninstall --all to additionally revert the managed shell-startup section and workspace-level state.
  • Add a verification check (e.g. basectl doctor --check-clean or an uninstall --verify-style dry run) that confirms no Base-managed residue remains after removal.
  • Document the command in docs/command-reference.md and classify its output/flags in docs/stability-tiers.md.

Acceptance Criteria

  • Running basectl uninstall --all on a workstation that has run basectl setup leaves no trust-store entries, shell-startup section, or Base caches behind, confirmed by the verification check.
  • Per-project uninstall does not disturb other projects' trust grants or manifests.
  • Documented in the command reference with stable/experimental classification.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

  • Status
    Triage

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions