# Maintainability Backlog This backlog tracks large-file and boundary risks that should be reduced in small, focused follow-up changes. It is intentionally separate from feature plans so stabilization work does not become a hidden refactor. ## Current Priority 1. `Backend/Endpoints/AdminSiteSettingsEndpoints.cs` - Risk: settings, content, operational toggles, OAuth/demo handling, and mapping live in one endpoint file. - Next split: move mapping/snapshot/change-detection helpers into a focused support file or service. 2. `frontend/src/components/admin/useAdminSeasonManager.ts` - Risk: season forms, phase gateways, readiness facts, dashboard links, and navigation helpers are coupled in one composable. - Next split: extract phase-gateway/readiness builders into a pure TypeScript helper with unit-test-friendly functions. 3. `frontend/src/components/home/HomeExtrasSection.vue` - Risk: public extras, showact/sponsor presentation, and responsive layout are harder to reason about in one component. - Next split: separate showact, sponsor, and footer/content blocks into focused presentational components. 4. `Backend/Endpoints/AdminSeasonDetailEndpoints.cs` - Risk: one endpoint assembles categories, nominations, voting workspace, winners, clips, rules, and mappings. - Next split: move voting-workspace assembly into an admin voting service and keep the endpoint as orchestration. 5. `frontend/src/views/admin/AdminTeamView.vue` - Risk: member table, role matrix, modals, permission explanations, and actions share one route-level view. - Next split: extract the permission matrix and member editor into separate components. ## Audit Command Run: ```bash scripts/file-size-audit.sh ``` Default warning threshold is 500 lines. Override with: ```bash MAX_LINES=650 scripts/file-size-audit.sh ``` ## Refactor Rules - Do not combine these refactors with unrelated feature work. - Prefer pure helper extraction before behavior changes. - Keep route-level Vue views thin. - Keep backend endpoint files focused on HTTP shape and orchestration. - Re-run frontend/backend builds after any extraction.