Skip to content

feat(registry): follow renamed Skills with an alias redirect - #640

Merged
harlan-zw merged 3 commits into
mainfrom
feat/skill-rename-aliases
Oct 13, 2026
Merged

harlan-zw merged 3 commits into
mainfrom
feat/skill-rename-aliases

Conversation

@harlan-zw

@harlan-zw harlan-zw commented Oct 13, 2026 •

Copy link
Copy Markdown
Collaborator

❓ Type of change

  • 📖 Documentation
  • 🐞 Bug fix
  • 👌 Enhancement
  • ✨ New feature
  • 🧹 Chore
  • ⚠️ Breaking change

📚 Description

Follows #638.

When an author renamed a Skill folder, the registry saw a removal and an addition. The old page became a 410, its likes and collection entries stayed behind, skilld run with the old name failed, and the new name started with no history. On 2026-10-13 harlan-zw/brundlefly renamed im-not-a-fly and im-a-fly this way.

Architecture: sync pairs a missing Skill with a new one, moves its rows, and writes a skill_aliases row that the redirect middleware and run identity read

A sync's final sweep now pairs a missing Skill with a Skill first seen in the same sync. Their SKILL.md bodies must share at least 60% of their lines, and each must be the other's single best match. Brundlefly's renamed Skills scored 0.97 and 0.99 against their old copies and 0.00 against everything else. The old name's rows move through the same table list as a Repository move, and the old name stays in a new skill_aliases table. Old Skill URLs answer one 301, and skilld run with the old name resolves to the new identity. A removal without a match keeps its 410. ADR-0017 records the decision and its limits.

🤖 AI disclosure: Harlan Agent Kit modified this description. My AI open-source policy.

The scheduled sync declines to admit new Skills in a submitted
Repository, then records the tree it saw. Later syncs and index requests
skip that tree as unchanged, so renamed or added Skills never enter.
An index request for a stale indexed Repository now queues a
submission, and a submission rereads an unchanged tree.
A renamed Skill folder read as a removal and an addition: the old page
became a 410, its likes and collection entries stayed behind, and old
run commands failed. Sync now pairs a missing Skill with a new one whose
SKILL.md body matches, moves its rows, and keeps the old name as an
alias that answers with a 301 (ADR-0017).
@harlan-zw harlan-zw added the harlan-agent-review Pull request triage requires an adversarial Review. Adding this label manually always forces one. label Oct 13, 2026
@harlan-github-agent harlan-github-agent Bot added harlan-agent-review-required Pull request triage requires an adversarial Review for this head commit. harlan-agent-running An Agent holds a Task on this issue or pull request right now. and removed harlan-agent-review Pull request triage requires an adversarial Review. Adding this label manually always forces one. labels Oct 13, 2026
@harlan-github-agent

harlan-github-agent Bot commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

🤖 MERGED

Harlan Agent Kit posted this automated review. It is not Harlan's personal review or approval. AI open source policy. Last updated: 2026-10-13 12:28 UTC.

GitHub merged this pull request.

No material findings were recorded.

The pull request is not ready for review.

@harlan-zw
harlan-zw changed the base branch from fix/reindex-added-skills to main October 13, 2026 11:43
@harlan-github-agent harlan-github-agent Bot removed the harlan-agent-running An Agent holds a Task on this issue or pull request right now. label Oct 13, 2026
@harlan-zw
harlan-zw merged commit 4ce82b2 into main Oct 13, 2026
7 checks passed
@harlan-github-agent harlan-github-agent Bot removed the harlan-agent-review-required Pull request triage requires an adversarial Review for this head commit. label Oct 13, 2026
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