focus-flow/archive/Archived plans/V1_TEST_COVERAGE_MATRIX.md

4.9 KiB

V1 Test Coverage Matrix

Status: Re-verified during Block 11.1 on 2026-06-24.

Fresh baseline:

  • Starting commit: 775c2ed406f03a73a9b0ca621dea5b4482468616
  • Dart SDK: 3.12.2
  • dart test: 143 passing tests
  • dart pub get, dart format lib test, dart analyze, and git diff --check passed.

Scheduling rule coverage

V1 behavior Status Representative coverage
Flexible insert into a free slot Covered test/scheduling_engine_test.dart verifies inserting a backlog task into an open 20-minute slot. test/edge_case_regression_test.dart verifies next-available insertion uses the earliest fitting open slot.
Flexible insert pushes other flexible tasks Covered test/scheduling_engine_test.dart verifies inserting before a flexible task and pushing the later task. test/edge_case_regression_test.dart verifies quick-capture immediate scheduling uses normal insertion and push rules.
Locked blocks are never moved Covered test/scheduling_engine_test.dart verifies inserts skip locked time and respect expanded locked blocks. test/timeline_state_test.dart verifies locked occurrences expose overlay data without becoming task items.
Inflexible tasks are never moved Covered test/scheduling_engine_test.dart verifies inserts do not move inflexible items. test/required_task_actions_test.dart verifies invalid push destinations leave fixed task types unchanged.
Critical tasks remain visible and required Covered test/scheduling_engine_test.dart verifies inserts do not move critical items. test/required_task_actions_test.dart verifies missed critical tasks move to backlog with schedule cleared, and required push actions keep fixed items visible.
Push to next available Covered test/required_task_actions_test.dart verifies the next-available push destination uses the scheduling engine. test/scheduling_engine_test.dart verifies a flexible task moves after the current slot.
Push to tomorrow top of queue Covered test/required_task_actions_test.dart verifies tomorrow top-of-queue metadata. test/scheduling_engine_test.dart verifies tomorrow placement respects required and locked time.
Push to backlog Covered test/required_task_actions_test.dart verifies backlog push clears active schedule placement. test/edge_case_regression_test.dart verifies backlog moves do not duplicate task IDs.
End-of-day rollover Covered test/scheduling_engine_test.dart verifies unfinished flexible tasks roll to tomorrow in order and fixed/completed/cancelled items are excluded. test/edge_case_regression_test.dart verifies rollover uses an explicit source window and ignores future tasks.
Required task states Covered test/required_task_actions_test.dart verifies done, missed, cancelled, no-longer-relevant, backlog, and invalid push state transitions for required task types.
Surprise task overlaps Covered test/surprise_task_logging_test.dart verifies surprise tasks keep overlap metadata, can coexist with other scheduled items, and preserve the expected timeline order.
Child task parent completion Covered test/child_tasks_test.dart verifies parent-child ownership, child ordering, child movement, parent auto-completion, and no dependency graph behavior.
Timeline state mapping Covered test/timeline_state_test.dart verifies visible task mapping, required visibility, hidden locked overlay state, reveal state, manual compact mode, and timeline ordering.
Persistence-sensitive model behavior Covered test/persistence_edge_cases_test.dart, test/document_mapping_test.dart, and test/repositories_test.dart verify MongoDB-shaped document mapping, enum/date persistence names, repository contracts, and in-memory repository behavior.

Block 06-09 regression representation

Area Status Representative coverage
Quick capture and backlog ordering Covered test/edge_case_regression_test.dart covers quick-capture title validation, immediate scheduling behavior, and stale backlog age preservation.
Scheduling edge cases Covered test/edge_case_regression_test.dart covers earliest fitting insertion, locked-boundary placement, fixed item preservation, rollover windows, and backlog ID uniqueness.
Required task action edge cases Covered test/required_task_actions_test.dart covers non-punitive terminal states and fixed-task push guards.
Locked time and timeline overlays Covered test/timeline_state_test.dart covers hidden locked time, revealed overlay state, compact mode, and overlay/task separation.
MongoDB persistence boundary Covered test/persistence_edge_cases_test.dart, test/document_mapping_test.dart, and test/repositories_test.dart cover document-shaped serialization without adding a MongoDB runtime dependency.

Audit result

No uncovered implemented V1 scheduling behavior was found during this audit, so no production code or new tests were required for Chunk 10.1.