ADORSYS-GIS / ADORSYS-GIS/lightbridge-governance
[Ticket]: Split app/governance-ctl/src/sync.rs (1178 LoC)
- Lingua principale
- Rust
- Stelle
- 1
- Fork
- 2
- Merge medio
- 14h 36m
- PR unite (30g)
- 107
Descrizione
### Type
Refactor
### Summary
`app/governance-ctl/src/sync.rs` is 1178 lines. Split it along its real seams to bring every resulting file under 200.
### Intent
It is one of the largest files in the repository and, at this size, is skimmed rather than reviewed.
### Source of truth (links)
- #162 (parent epic), #173 (baseline)
### Acceptance Criteria
1. No resulting file exceeds 200 LoC.
2. **Behaviour is unchanged** — the existing tests pass before and after, unmodified.
3. No test is weakened, deleted or made less specific to accommodate the split.
4. Module boundaries follow a real seam, not an arbitrary line count.
5. Public API unchanged, or the change is called out explicitly.
### Out of Scope
Behaviour changes of any kind. This is a pure refactor.
### Technical Context
The copilot-sync command. Seams: fetch, parse, upsert, manifest bookkeeping.
### Risks
⚠️ A shrinking file that also shrinks its assertions is a regression wearing a refactor's clothes. Reviewers should diff the test count and the assertion count, not just the line count.
### Test Plan
The existing suite, unmodified, before and after. If a test needed changing, say why in the PR — that is the signal worth reviewing.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Read app/governance-ctl/src/sync.rs and the linked baseline #173; map the fetch, parse, upsert, and manifest-bookkeeping seams, then run the existing suite before changing anything. Split only along those seams while preserving the public API and tests. Done means every resulting file is under 200 LoC, behavior is unchanged, and test and assertion counts are unchanged.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- rust
- Ambito
- cli
- Tipo di issue
- Refactoring
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 57/100