Skip to content

feat(dashboard): wire 4 home-grid TODO tiles + dock notifications (E11.S01)#13

Open
abdout wants to merge 1 commit into
mainfrom
feat/E11-S01-dashboard-tile-wiring
Open

feat(dashboard): wire 4 home-grid TODO tiles + dock notifications (E11.S01)#13
abdout wants to merge 1 commit into
mainfrom
feat/E11-S01-dashboard-tile-wiring

Conversation

@abdout
Copy link
Copy Markdown
Contributor

@abdout abdout commented May 25, 2026

Summary

  • Threads onNavigateToNotifications / onNavigateToExams / onNavigateToEvents lambdas through dashboardScreenDashboardScreenHomeScreenbuildHomeTiles
  • Wires 4 of the 6 dashboard TODOs to real routes: Notifications tile, Notifications dock item, Exams tile, Events tile
  • Leaves Universal Search + Assignments as documented deferrals (E11.S02 Phase 3; no feature/assignments module yet)

Story

E11.S01 (Phase 1 Pilot v1, Sprint P3, 5 pts) — first pilot-grade UX story shipped.

Atomic-pattern + reusability notes

The dashboard already follows the HomeTileSpec (data) → HomeTile (composable) → BadgedAppIcon (atom) chain from core/designsystem. This PR doesn't introduce or refactor atoms — it threads navigation lambdas through the existing shape so the 16 grid tiles stay uniform.

References:

Test plan

  • ./gradlew :feature:dashboard:lint :feature:dashboard:test green
  • ./gradlew :app:assembleDebug succeeds (validates dashboardScreen callers consume the 3 new lambdas)
  • Manual smoke on a debug build:
    • Notifications tile → opens notifications list
    • Notifications dock item → opens notifications list
    • Exams tile → opens exams list
    • Events tile → opens events list
    • Universal search pill + Assignments tile → no-op (intentional, deferred)
  • grep -r 'TODO' feature/dashboard/src/main returns no /* TODO: markers (only the explicit deferred comments)

Coexistence with other open PRs

Touches dashboard + nav-host files only; no overlap with PRs #3/#5/#7/#9/#11.

Closes #12

Generated with Claude Code

…1.S01)

Six tap targets on the iOS-style home grid + dock + search were stubbed
with /* TODO */ placeholders. Pilot Seat 1 (King Fahad parent persona)
needs at minimum the Notifications + Events + Exams tap-throughs because
the school is already publishing announcements + schedule on those
surfaces.

Threads three new lambdas through the dashboard chain
(dashboard-nav-graph -> DashboardScreen -> HomeScreen -> buildHomeTiles):

- onNavigateToNotifications -> Notifications route
- onNavigateToExams         -> Exams route
- onNavigateToEvents        -> EventsList route

Wires four of the six TODOs:

- Notifications tile          (home-tile-spec.kt:114) -> Notifications
- Notifications dock item     (dashboard-screen.kt:96) -> Notifications
- Exams tile                  (home-tile-spec.kt:122) -> Exams
- Events tile                 (home-tile-spec.kt:147) -> EventsList

The remaining two TODOs are replaced with explicit deferred comments
naming the blocking work:

- Universal search pill — E11.S02 (Phase 3 polish); no-op so the pill
  keeps its grid slot.
- Assignments tile — no feature/assignments module exists; folds into
  E14 grading/exams alongside teacher grade entry.

Atomic chain stays intact: HomeTileSpec (data) -> HomeTile (composable)
-> BadgedAppIcon (atom). No atom changes; the wiring just plumbs the
existing navigation lambdas into the same shape as Grades, Fees, Stream
etc.

Closes #12

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@abdout
Copy link
Copy Markdown
Contributor Author

abdout commented May 25, 2026

Figma verification gate (per ios-design-doctrine): the Figma frame at https://www.figma.com/design/WJPT23xMx4B6oXrCavmHbQ/iso?node-id=35-2950 was not opened during this PR — automated tooling can't auth the Figma desktop view. Since this PR is wiring (no pixel changes), the existing iOS 26 grid layout is unchanged. Please confirm the layout still matches the Figma frame before merge.

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.

feat(dashboard): wire 4 home-grid TODO tiles + dock notifications (E11.S01)

1 participant