Skip to content

Make Starred the default landing tab; disable broken notification code#66

Merged
sohamM97 merged 5 commits into
mainfrom
feature/starred-first-tab
May 28, 2026
Merged

Make Starred the default landing tab; disable broken notification code#66
sohamM97 merged 5 commits into
mainfrom
feature/starred-first-tab

Conversation

@sohamM97
Copy link
Copy Markdown
Owner

Summary

  • Tab reorder. Bottom-nav is now Starred / Today / All Tasks so the app opens on the Starred view. Tab indices extracted into named constants in _AppShellState (_tabStarred, _tabToday, _tabAllTasks, _defaultTab) so any future reorder is a one-place change. Lists whose order must match the constants are marked with "MUST match" comments.
  • Notification code disabled. The daily 8 AM reminder wasn't firing on the dev setup. Rather than debug a feature that's currently dead weight, the entire NotificationService body, its call sites in main.dart, and the matching test file are block-commented. Packages remain in pubspec.yaml so re-enabling is just an uncomment.
  • Manual-test SKILL.md rule. Added a rule requiring "refresh / side-effect" tests to spell out the mutation that produces the new state, so future agents don't emit vague "switch tab → reflects latest" checklists.
  • TEST_COVERAGE.md updated to reflect the disabled notification tests (1333 → 1320 tests; service entry marked DISABLED; main.dart gap entry de-listed).

Test plan

  • flutter analyze clean
  • Full suite passes (1320 active tests)
  • Tab reorder auto-tests added (8 new tests in test/app/app_test.dart: 1 baseline / 3 regression / 3 mechanism / 1 edge case)
  • Manual sweep on Linux: default landing, nav-bar taps, swipe gestures (incl. leftmost/rightmost no-wrap), "Go to task" navigation from Today + Starred, refresh-on-tab-entry, drill-down state persistence across tab cycling
  • Backgrounding tab persistence — mobile-only, deferred (not testable on Linux dev)
  • Notification-tap manual tests — N/A (notification code disabled)

🤖 Generated with Claude Code

Soham Marik and others added 2 commits May 28, 2026 14:06
Reorder bottom-nav to Starred / Today / All Tasks so the app opens on
the Starred view. Tab indices extracted into named constants
(_tabStarred, _tabToday, _tabAllTasks, _defaultTab) so future reorders
touch a single place. Comments mark the lists whose order must match
the constants.

Notification code is commented out across NotificationService,
main.dart call sites, and its test file. Daily 8 AM reminders weren't
firing on the user's setup and disabling beats debugging a feature
that's currently dead weight; packages stay in pubspec for an easy
re-enable later.

Refreshed manual-test SKILL.md with a rule requiring refresh /
side-effect tests to spell out the mutation that produces the new
state, so future agents don't generate vague "switch tab → reflects
latest" tests.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The notification service file and its test file were block-commented in
the previous commit. Update the coverage doc so the test count, file
count, and "untested gaps" entry stay accurate.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@claude
Copy link
Copy Markdown

claude Bot commented May 28, 2026

Code review

1 issue found.


docs/UI_VIEWS.md line 7 — CLAUDE.md violation: Verify before documenting

The sentence "Notification taps still jump to Today's 5." documents active behavior that does not exist on this branch.

This PR block-comments the entire NotificationService class, its import, and every call site in main.dart — including onNotificationTap = _navigateToToday and the _navigateToToday() method itself. There is no live code path that routes notification taps anywhere.

Relevant CLAUDE.md rule (link):

Verify before documenting. Before writing any factual claim in a doc, verify it exists in the codebase first … If it's not in the code on the current branch, don't claim it exists.

Affected line:

- **Bottom nav bar** — 3 tabs: "Starred", "Today", "All Tasks". Swiping also switches tabs. **Starred is the default landing tab** (leftmost). Notification taps still jump to Today's 5.

Suggested fix — remove the notification claim until the feature is re-enabled:

-**Bottom nav bar** — 3 tabs: "Starred", "Today", "All Tasks". Swiping also switches tabs. **Starred is the default landing tab** (leftmost). Notification taps still jump to Today's 5.
+**Bottom nav bar** — 3 tabs: "Starred", "Today", "All Tasks". Swiping also switches tabs. **Starred is the default landing tab** (leftmost).

Soham Marik and others added 3 commits May 28, 2026 14:28
Two fixes:

1. CI was failing because Flutter 3.44 (CI) flags `ReorderableListView`'s
   `onReorder` callback as deprecated. The replacement `onReorderItem`
   isn't available until Flutter 3.42, and the dev machine pins 3.41.
   Add an `// ignore: deprecated_member_use` comment with a note to swap
   when local Flutter is bumped, instead of breaking the local build.
2. Claude review flagged a stale claim in `docs/UI_VIEWS.md` about
   notification taps jumping to Today's 5 — that code path is commented
   out on this branch. Remove the sentence.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The previous attempt placed the // ignore: deprecated_member_use
directive above an explanatory comment block, which broke the
directive — the analyzer only honours it on the line directly above
(or trailing) the offending code. Move it to a trailing comment on the
same line as `onReorder:` to be unambiguous and survive future comment
edits.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
`flutter test` exits 79 when a file registers zero tests, so the
fully-commented file broke CI. Replace it with a single `skip:`-tagged
placeholder so the runner sees the file as valid while the actual
tests stay block-commented alongside the disabled service.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@sohamM97 sohamM97 merged commit 5ddbdbd into main May 28, 2026
2 checks passed
@sohamM97 sohamM97 deleted the feature/starred-first-tab branch May 28, 2026 09:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant