Skip to content

fix(sync): keep installed skills when a registry cannot be read - #347

Open
Fluzko wants to merge 1 commit into
symposium-dev:mainfrom
Fluzko:fix/reap-unreadable-registry
Open

Fluzko wants to merge 1 commit into
symposium-dev:mainfrom
Fluzko:fix/reap-unreadable-registry

Conversation

@Fluzko

@Fluzko Fluzko commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

What does this PR do?

If a configured registry cannot be read, cargo agents sync treats it as empty and silently deletes every skill it installed. A [[registry]] path on an unmounted drive or pointing at one package, or a deleted git copy, is enough; the same sync runs inside agent sessions.

Now such a registry is reported by name and sync removes nothing until it can be read again, while still installing the rest. A git registry never fetched points to cargo agents plugin sync <name>. A missing ~/.symposium/plugins/ is left out (nobody configured it). plugin list and plugin show report it too.

Verified by reproducing it before and after (moved or chmod 000 path registry, deleted git copy, session-start sync) and by tests, including a package path.

Take into account:

  • While a registry stays unreadable (say, a recommendations registry never fetched), nothing is cleaned up and every sync warns.
  • Only the registry directory is checked: an unreadable subdirectory still reads as empty.
  • Whichever of this PR and feat(agent-plugins): compile global plugins and install for Claude Code #332 merges second puts compiled-plugin reaping behind the same check.
Disclosure questions

AI disclosure.

  • The AI tool authored large parts of the code

@Fluzko
Fluzko force-pushed the fix/reap-unreadable-registry branch from 0d703c7 to 4189c45 Compare October 19, 2026 16:40

This branch has not been deployed

No deployments
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