Problem / Why
Three QuickFiler files exceed the repository's 500-line cap defined in .claude/rules/general-code-change.md:
| Path |
Lines |
QuickFiler/Controllers/QfcCollectionController.cs |
2349 |
QuickFiler.Test/Controllers/QfcFormControllerTests.cs |
827 |
QuickFiler/Controllers/QfcQueue.cs |
610 |
All three predate issue #446 and none were in its owned file set, so #446 could not address them without widening its blast radius. The cap is not cosmetic here: during #446 the proximity of several files to the cap repeatedly constrained the shape of otherwise-straightforward changes and forced extraction work into unrelated tasks. QfcCollectionController.cs at 2349 lines is more than four times the cap.
Implementation Intent
Each file is decomposed into cohesive units under 500 lines, preserving public API and behavior. For the test file, split along fixture or scenario boundaries; note that QuickFiler.Test.csproj lists all Compile Include entries explicitly, so any new file must be registered there.
Acceptance Criteria
Dependencies / Risks
QuickFiler.Test.csproj enumerates every Compile Include explicitly; new files must be added there or they will not build.
QfcCollectionController.cs at 2349 lines is large enough that decomposition should be staged rather than attempted in one change.
- Partial-class splits are the lowest-risk mechanism where a type must stay whole.
Verification Steps
Evidence Checklist
Source
From: docs/features/potential/2026-08-26-quickfiler-500-line-cap-violations.md
Problem / Why
Three QuickFiler files exceed the repository's 500-line cap defined in
.claude/rules/general-code-change.md:QuickFiler/Controllers/QfcCollectionController.csQuickFiler.Test/Controllers/QfcFormControllerTests.csQuickFiler/Controllers/QfcQueue.csAll three predate issue #446 and none were in its owned file set, so #446 could not address them without widening its blast radius. The cap is not cosmetic here: during #446 the proximity of several files to the cap repeatedly constrained the shape of otherwise-straightforward changes and forced extraction work into unrelated tasks.
QfcCollectionController.csat 2349 lines is more than four times the cap.Implementation Intent
Each file is decomposed into cohesive units under 500 lines, preserving public API and behavior. For the test file, split along fixture or scenario boundaries; note that
QuickFiler.Test.csprojlists all Compile Include entries explicitly, so any new file must be registered there.Acceptance Criteria
QuickFiler/Controllers/QfcCollectionController.csis at most 500 linesQuickFiler.Test/Controllers/QfcFormControllerTests.csis at most 500 linesQuickFiler/Controllers/QfcQueue.csis at most 500 linesDependencies / Risks
QuickFiler.Test.csprojenumerates every Compile Include explicitly; new files must be added there or they will not build.QfcCollectionController.csat 2349 lines is large enough that decomposition should be staged rather than attempted in one change.Verification Steps
Evidence Checklist
Source
From: docs/features/potential/2026-08-26-quickfiler-500-line-cap-violations.md