8000 App completion roadmap: reports, collections, CARES and Member guidance · Issue #558 · jra3/mulm · GitHub
[go: up one dir, main page]

Skip to content

App completion roadmap: reports, collections, CARES and Member guidance #558

Open
7 of 8 issues completed

Description

@jra3

Goal and evidence

Complete the underdeveloped Member and committee journeys identified from the site map, source at d162221, and development history as of 2026-10-15. The next investment is finishing these flows through the existing domain boundaries, rather than another broad architectural rewrite.

The report form captures more than its report displays; collection creation/persistence has received recent fixes but some controls remain incomplete; CARES has substantial implemented code but is still admin-only. Newcomer guidance lags the October lifecycle changes. External enrichment has an unresolved operational choice. These are source/history findings, not usage analytics.

Recommended delivery order

1. HAP/CAP report completeness — start here

These can ship independently. Finish this phase when a HAP/CAP Member and reviewer can see the complete report, and a committee correction survives reload without changing points or Witness state.

2. Collection usability — three independent slices

Suggested order is entry, maintenance, history. There are no artificial blocking edges between these fixes. Finish when the complete add/edit/remove/view-history journey is demonstrated.

3. CARES — complete behind the gate, then launch

Work within that umbrella:

  1. [Feature] Annual renewal system #283 Annual re-confirmation and [Feature] Article submission #281 article entry establish trustworthy registration/activity data. [Feature] BAP-CARES integration prompt #282 adds the BAP opt-in prompt behind the gate and can proceed independently.
  2. [Feature] CARES liaison report export #284 delivers liaison reporting after [Feature] Annual renewal system #283 and [Feature] Article submission #281.
  3. Verify the complete CARES journey and prepare the Member launch #564 verifies the whole journey and prepares launch after [Feature] Article submission #281, [Feature] Annual renewal system #283, [Feature] CARES liaison report export #284 and [Feature] BAP-CARES integration prompt #282.

Do not interpret old unchecked boxes on #279/#285 as absent features: reconcile against the existing profile/browser first. CARES registration uses the independent model from #478. Keep the admin-only gate until the documented release checks and decision are complete. #286 standings are optional follow-up.

4. First-time Member guidance — can run alongside phases 1–2

Use CONTEXT.md and accepted ADRs for lifecycle behavior. Publish examples against the completed report experience; establish any undocumented club logistics before presenting them as instructions.

5. External enrichment — make the decision in parallel

#249 is conditional on #461 choosing supported sync. Use Fly-era operations and an observed manual sync, not the historical EC2 cron recipe. Do not enable providers or implement both alternatives as part of this planning task.

Architecture and verification

  • Extend existing lifecycle operations so approved details, supplement rows and audit records form one transaction; preserve the separation between details and Species/points corrections.
  • Reuse collection ownership/privacy queries and shared media conventions; do not infer object ownership from a client-provided storage key.
  • Use one CARES confirmation/state rule across profiles, coverage and reporting; retained evidence must support claimed consecutive years.
  • Each implementation issue specifies focused behavioral tests. Verify UI journeys on public staging with chikin-farm; remote browser tests cannot use localhost.
  • Existing in-progress Member-save transaction changes are separate work; this plan does not assume they have merged.

Decisions still to record

  • CARES: treatment of incomplete historical confirmations and precise date boundaries (the prior March 31 grace-period decision is preserved), PDF storage/access policy, and liaison report period/field semantics.
  • External enrichment: the operating model, owner and conditional implementation scope.

Tickets with unresolved decisions carry needs-triage; specified slices carry ready-for-agent. Phase order expresses priority, while native dependencies represent actual prerequisites. No production rollout or new implementation is performed by this filing pass.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestpriority:highHigh priority - should be addressed soonwayfinder:mapWayfinder map issue

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0