testsAndMisc/docs/superpowers/contracts/billsplit-split-2026-08-16.json
Krzysztof kuhy Rudnicki a68313f236 Split every over-cap billsplit Dart file
Four lib files and the 536-line UI flow test, into seven new files. Only
Flutter's generated windows/runner/win32_window.cpp remains, and editing
that would be undone by regeneration.

All four lib splits used part/part of first time, applying the rule
learned in focus_owner. models.dart needed a hand fix: it has a
`library;` directive, which must precede any `part`.

60 tests passing before and after. flutter analyze reports the same 4
pre-existing infos as a detached worktree at HEAD - which is how I
caught that an intermediate run's 7 issues were 3 of my own.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011w2Pj4Ek3ZNMQVYcFHgXDY
2026-08-16 20:57:56 +02:00

19 lines
1.3 KiB
JSON

{
"title": "Split the billsplit Dart files under the 250-line cap",
"objective": "Bring all four over-cap billsplit Dart sources and its 536-line UI flow test under the cap, leaving only Flutter's generated Windows runner.",
"acceptance_criteria": [
"Every billsplit Dart file is at most 250 lines.",
"flutter test reports exactly 60 passing tests, the same as before the split.",
"flutter analyze reports no MORE issues than the pre-split baseline. That baseline is 4 pre-existing unnecessary_unawaited infos, measured from a detached worktree at HEAD rather than assumed.",
"Library-private declarations that cross a seam use part/part of. A `library;` directive must come before any `part`.",
"Split widget-test halves each call TestWidgetsFlutterBinding.ensureInitialized().",
"No test is deleted, skipped or weakened."
],
"out_of_scope": [
"windows/runner/win32_window.cpp, which is Flutter-generated scaffolding that regeneration would overwrite.",
"Changing what any test asserts.",
"The 4 pre-existing unnecessary_unawaited infos, which are not this task's to fix."
],
"verifier": "flutter test (expects 60 passed), flutter analyze compared against the same command run in a detached worktree at HEAD, and check_file_length.sh over billsplit."
}