Skip to content

fix(skill): manage global skill distribution explicitly - #215

Merged
pablontiv merged 16 commits into
masterfrom
fix/issue-210-skill-distribution
Aug 29, 2026
Merged

fix(skill): manage global skill distribution explicitly#215
pablontiv merged 16 commits into
masterfrom
fix/issue-210-skill-distribution

Conversation

@pablontiv

@pablontiv pablontiv commented Aug 29, 2026

Copy link
Copy Markdown
Owner

What

Replace implicit Git-hook skill copying with an explicit, product-owned lifecycle:

  • add rootline skill install|status|uninstall|restore
  • plan every mutation and bind approval to an exact digest
  • install only supported symlinks for Claude and the shared Agents/Pi root
  • preserve verified backups and append-only receipts
  • remove all skill mutation from Git hooks
  • document the breaking migration and operational workflow

Related issue

Refs #210

This deliberately does not auto-close the issue. The real-home migration and Claude/OpenCode/Pi discovery verification must run after merge from the updated primary checkout; #210 closes only after that evidence is recorded.

Why

Independent global copies can drift and cause different agents to execute different Rootline guidance. Hook-driven copying also mutates user state implicitly and cannot provide planning, approval, rollback, or receipt evidence.

How

The CLI separates inventory/planning from approved execution. Plans include canonical source and destination evidence and produce deterministic approval digests. Mutations fail closed on source drift, destination drift, unsupported state, stale approval, invalid receipts, and filesystem conflicts.

Active installations are symlink-only; copied trees are backups, never fallback installations. Restore publication uses native atomic no-replace primitives on Darwin, Linux, and Windows, with unsupported platforms failing closed. Tests use temporary homes and cover lifecycle, rollback, receipt validation, concurrency boundaries, race execution, and cross-platform compilation.

Verification

  • just test
  • go vet ./...
  • just check
  • just coverage-check — total 89.9%; internal/skilldist 85.4%
  • go run ./cmd/rootline validate --all docs/adr/ — 7 valid, 0 invalid
  • Linux and Windows test cross-compilation
  • focused skill lifecycle and race tests
  • production legacy/copy/force diagnostics
  • two independent final reviews of 97e68d8..91da062: ready to merge; no Critical/Important findings; minor hygiene follow-ups recorded

Checklist

  • Tests pass (go test ./... -race)
  • Code is clean (go vet ./...)
  • Changes are documented if user-facing
  • Deliberately linked with Refs #210; closure waits for the post-merge observed-environment gate

@pablontiv
pablontiv merged commit ef0aa60 into master Aug 29, 2026
11 checks passed
@pablontiv
pablontiv deleted the fix/issue-210-skill-distribution branch August 29, 2026 03:27
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