Add the legacy bug tracker migration module.
Review Request #15321 — Created Sept. 17, 2026 and updated
This change adds a new module for converting legacy per-repository bug
tracker state into the new configuration model. It classifies each
repository (in-repo, standalone tracker service, or custom URL),
extracts unprefixed settings, and createsConfiguredBugTracker
configurations scoped to the repositories that produced them.Identical standalone and custom configurations are deduplicated by
fingerprint. These fingerprints never span Local Sites. Each created
configuration records its fingerprint in extra_data, making the creation
idempotent. In-repo configurations aren't deduplicated, because they're
bound to individual repositories anyway.A repository's default bug tracker is only assigned when unset or when
it was itself derived from legacy settings, so manual edits are never
overwritten. The legacy fields are left untouched.Nothing calls this yet. The save-time sync, management command, and
upgrade step follow in later changes.
Ran unit tests.
| Summary | ID |
|---|---|
| ltmrkuxyuzowqlmlpsyyptprzpylonnk |