Skip to content

[AGENT] UIUX-003: Centralize theme tokens and navigation configuration #399

Description

@ucguy4u

Agent

Agent: agent/mobile-ui

Task Details

Estimate (hours): 20

Priority: P1

Description

Move shell-level design and navigation decisions into shared configuration so
feature screens stop hardcoding visual and IA choices.

Critical Agent Gate

Problem: Theme tokens and nav metadata are split between core_ui, shell
widgets, and feature screens, which weakens consistency and increases churn.

User / actor: End users expecting a unified app experience and engineers
building additional screens.

Framework or application layer: Mixed

Owning agent: agent/mobile-ui

Reviewing agents: agent/core-architecture, agent/qa-testing

Impacted modules/files: packages/core_ui/lib/src/theme/*,
app/lib/core/providers/navigation_provider.dart,
app/lib/core/platform/platform_config.dart, app/lib/core/app/app_shell.dart

Base branch/worktree: confirmed from latest origin/main: yes

Open questions: Should navigation overflow use a drawer, modal sheet, or
another secondary affordance on phones?

Decision: Ready

Feature Packet

Contract: Shared UI packages own token roles, shell destination metadata,
and breakpoint-aware navigation behavior. Application code consumes that config.

Deterministic use cases:

  • Shared colors and spacing come from centralized tokens
  • Mobile nav adapts when primary destinations exceed bottom-nav guidance
  • Desktop/tablet reuse the same destination source of truth

Automation flows:

  • Widget tests for mobile and large-screen nav rendering
  • Unit tests for destination metadata/config derivation where applicable

Security/privacy posture: None beyond preserving current route access and
auth actions.

Eval plan: Host-only widget tests and shared config review.

Observability/traces: Not required.

Rollback/migration plan: Retain compatibility wrappers while screens move to
the new config.

Verification environment: Host-only

Android Emulator risk accepted? No

Acceptance Criteria

  • Shared tokens cover the approved UI roles
  • Navigation configuration comes from one source of truth
  • Mobile overflow strategy is implemented or concretely specified
  • Widget or unit tests cover shared navigation behavior

CI Checklist

  • act local run passed
  • flutter analyze clean
  • flutter test passes
  • Device-only checks identify the exact environment used
  • Android Emulator was not used unless the issue explicitly accepts the risk
  • Unit tests added
  • Widget/golden tests added (if UI)
  • Docs/ADRs updated (if applicable)

Files to Modify

packages/core_ui/lib/src/theme/*.dart
app/lib/core/providers/navigation_provider.dart
app/lib/core/platform/platform_config.dart
app/lib/core/app/app_shell.dart
app/test/**/navigation*.dart

Dependencies

  • UIUX-001 governance epic

Release Note Required?

yes - navigation and visual consistency will be standardized across the app

Parent roadmap: #397

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions