Public: anyone can read this; the crew can change it.

A migrated repository shows its trail: "migrated from github.com/Trevato/SO-ARM100, a fork of TheRobotStudio/SO-ARM100", each a link up - hideable per repository #3293

shipped production is serving it opened this has it
opened this

Owner, 2026-10-20: "i wish the migrate feature would show the trail. like i want to click up to the parent. the url is there. of course i should be able to turn that off on a per repo basis."

Today src/actions/migrate.ts creates the repo with only the source's description (createRepo, :137-140); the source URL and its upstream are not kept - by design "nothing reaches back" for git, but that dropped the provenance too.

Done:

  1. On migrate, record the provenance as data, not a connection: source URL, the source host's name for it (owner/name), and its parent chain when the host says it is a fork (GitHub: parent/source; Forgejo/Gitea: parent), with the date. No credential, no write-through, no sync - links only.
  2. The repo header shows one quiet line: "Migrated from github.com/Trevato/SO-ARM100 · fork of TheRobotStudio/SO-ARM100", each segment a link (external links rel=noopener, open the original). A forge-internal fork already shows its parent the same way, so the trail reads as one line however it was built.
  3. A per-repository setting "Show where this came from" (default on; owners/admins only); off hides the line on every page and in the API's public fields, but keeps the record so it can be turned back on.
  4. Existing migrated repos: a backfill from the job registry where the source is known; otherwise nothing.
  5. Standard nouns (#3241).

Test: migrate a fake GitHub fork - header shows both links; toggle off - line gone for anonymous and members, record still there; toggle on - back.

commented

Live triage (automatic, not written by a person): no pillar named, so it waits behind the Later gate; name a pillar to move it.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs