You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 2b17cc4
Browse filesBrowse the repository at this point in the historyBrowse files
feat(registry): move Skills when GitHub moves their Repository (#499)
* feat(registry): move Repositories that GitHub renamed or transferred
ADR-0002 kept a moved Repository under its old name, so pages, sitemaps
and run commands named Repositories GitHub no longer serves, and two
renames left duplicate Repositories in the registry. Sync now follows
GitHub: it stores the Repository ID, moves every row to the new name in
one batch, and keeps the old name as an alias that answers 301.
ADR-0013 replaces ADR-0002.
* chore(scripts): add the moved Repository backfill
Sync moves a Repository the next time it reads it. The script runs the
same statements now for the 13 moves the 2026-10-07 run sweep found, with
a read-only dry run as the default.
* fix(registry): renumber the moves migration and parse the ID once
Main gained its own 0144 migration, and two migrations may not share a
number. The batched summary read narrowed the Repository ID with a check
TypeScript could not carry into the parser, so the parser now owns it.
* fix(registry): queue moved Repositories past the sync prefetch
The hourly prefetch records an unchanged Repository in place without a
sync job. A moved Repository with an unchanged tree never reached
syncRepo, so its rows would never move.
* fix(registry): refuse a move into a name another Repository holds
* fix(scripts): refuse a backfill merge into another Repository's row
The backfill now runs the held-row check sync runs, so it never merges
into a row stored for a different Repository ID. It also stops with a
clear message when the D1 lacks the moves migration.
* chore: renumber the repository move migration and ADR
#510 adds migration 0145 and ADR-0013, and #512 adds ADR-0014. This
branch moves to 0146 and ADR-0015 so all three merge without a clash.
* fix(scripts): reserve migration 0145 for pull request 510
---------
Co-authored-by: Harlan GitHub Agent <harlan-github-agent[bot]@users.noreply.github.com>
Copy file name to clipboardExpand all lines: VISION.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -95,7 +95,7 @@ The filter for skilld-scoped work, precise enough to hold a proposal next to it
95
95
96
96
### 1. Provenance is the quality signal
97
97
98
-
A Skill is trustworthy because you can see who wrote it and read it before you run it. Every surface that shows a Skill names the author. The Skill page links the exact source file in its repository; other surfaces link the Skill page, which is where a visitor inspects a Skill. Registry identity is frozen at admission (ADR-0002) so provenance URLs never rot. Machine-generated metadata is labeled as such and never dressed as authorship.
98
+
A Skill is trustworthy because you can see who wrote it and read it before you run it. Every surface that shows a Skill names the author. The Skill page links the exact source file in its repository; other surfaces link the Skill page, which is where a visitor inspects a Skill. When GitHub moves a Repository, its Skills move to the new name and every old URL answers 301 (ADR-0015), so provenance URLs never rot. Machine-generated metadata is labeled as such and never dressed as authorship.
99
99
100
100
**How to apply:** no Skill card, search result, or digest entry ships without its author and a link to its Skill page or its source. A layout that drops provenance to save space fails review. Trust signals (official repository, owner-verified) are earned facts, never editorial favors.
Copy file name to clipboardExpand all lines: docs/arch/README.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -87,4 +87,6 @@ See [ADR-0007](../adr/0007-contract-in-the-cli-repository.md).
87
87
| Framework page |`/frameworks/[name]`|
88
88
| Comparison |`/compare/<slug>`|
89
89
90
+
A Repository that GitHub renamed or transferred moves to its new name, and every `/gh` URL under the old name answers 301 to the same path under the new one ([ADR-0015](../adr/0015-follow-moved-repositories.md)).
91
+
90
92
The legacy `/people/[handle]` and `/people/[handle]/collections/[slug]` URLs are 410 Gone (with a 301 special-case for `/people/harlanzw.com → /@harlanzw`).
0 commit comments