Skip to content

feat(pwa): make the control panel notification-ready #149

Description

@JSONbored

Background

Native mobile is probably not the first product surface, but the control panel should work well enough on mobile for maintainer/operator checks.

Goal

Make the web control panel PWA-ready before considering native mobile.

Current Behavior

The product direction includes a web control panel, but mobile/PWA readiness is not specified.

Desired Behavior

The control panel supports responsive maintainer/operator workflows and a future opt-in notification model.

Implementation Requirements

  • Define mobile-friendly layouts for key control-panel routes.
  • Design notification model but keep it opt-in.
  • Avoid native app dependency.
  • Keep private data protected on shared/mobile devices.
  • Document what native mobile would add later.

Public/Private Output Boundaries

Public GitHub output must never include wallets, hotkeys, payout/reward estimates, raw trust scores, public score estimates, private reviewability, private scoreability context, or farming language. Private API/MCP/control-panel surfaces may show authenticated scoreability, blockers, projections, and evidence, but must not claim guaranteed payout outcomes.

Acceptance Criteria

  • Responsive layout works for maintainer/operator checks.
  • Notification model is designed but opt-in.
  • No native app dependency.
  • Tests cover mobile route rendering at API/data level where applicable.

Testing Requirements

  • npm run test:ci must pass.
  • Global coverage must remain at or above 97% for lines, statements, functions, and branches.
  • Aim for 98%+ branch coverage locally.
  • Add tests for every new branch, fallback path, sanitizer rule, and regression.
  • Add invariant/property-style tests when behavior depends on sorting, gating, scoring, source-upload safety, public/private boundaries, or telemetry privacy.
  • MCP/local tooling must prove source contents are not uploaded when local metadata is involved.
  • Public GitHub output must be tested against forbidden language: wallet, hotkey, raw trust score, payout, reward estimate, farming, private reviewability, and public score estimate.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions