Repository navigation
MEMBER-LAUNCH-002 — Polish member/free-event status and fence stale sessions #739
Description
Officer impact: Members get a clearer membership/free-event screen, status that cannot outlive known deadlines, and safe account-change/retry behavior. No real payment or new membership rule is introduced.
Officer documentation: OFFICER_START_HERE.md; docs/officers/STAGING_COMMUNITY.md; docs/officers/SYSTEM_MAPS.md. All new behavior remains NOT AVAILABLE YET until its separate deployment proof.
Deployment evidence: None at creation. Source, CI, merge, staging Functions/Hosting, provider configuration and production behavior will be recorded separately.
Outcome
Prepare the existing membership and free-event flow for its next deployment with a polished responsive screen and fail-closed status/identity boundary. The #114 source contracts do not supply end-to-end checkout; the minimum-member launch remains incomplete; online dues/family enrollment/policy/provider work are separate outcomes.
Invariants and transitions
- Native verified account, matching Firebase app/project/default tenant and observed session are required for member actions. Account/provider/session changes discard old responses, saved requests and consent.
- A validated server status carries server observation time. Neither membership display nor signup controls outlive the earliest known eligibility/window deadline or a bounded freshness interval. Invalidation never grants access or polls the backend.
- A changed/unknown/malformed response hides old state. Exact uncertain command retry remains possible only in its original observed session. Mutations always use the existing server membership/capacity/waiver checks.
- Existing signup cancellation remains possible after membership lapse via a fresh status. No discretionary member approval is introduced.
- Additive read-only response fields only; no persisted-schema migration, permissions, Rules, payment/provider calls or production fallback.
Acceptance
- Tests demonstrate deadline and session failure cases before/with implementation.
- Closed bounded status/acknowledgement parsing rejects corrupt, foreign, duplicate, mismatched and nonzero-price event state without raw error/record output.
- Late network results, same-UID session changes and account/provider changes cannot restore stale controls or replay commands across sessions.
- Membership expiry, event-window boundaries, freshness expiry, loading, empty, failure, retry and cancellation states are clear and accessible.
- Responsive layout, keyboard/focus states and Pacific event dates verified on fictional fixtures without provider calls.
- Relevant full checks and Opus 5.5 medium/max exact-head review pass before owner-delegated merge.
- Officer documentation distinguishes source/merge/deployment/provider/production and gives no-terminal review/undo/escalation.
Dependencies and boundaries
Existing #737/PR #738 member gate, isolated staging service, frontend quality gates and native-session pattern from sealed #731 are merged. Reuse source patterns only: never rerun sealed harness or recreate deleted fixtures. No production, secret, member-data, role, email, real-money or provider mutation. All new UI tests use local service doubles; this is not hosted Auth/App Check qualification.
Activity
daliu commentedon Oct 17, 2026
CLAIMED by /root at 2026-10-17T00:15:49Z; branch codex/member-screen-deployment-prep. Working from merged #738 at c12445c. Scope is the member/free-event screen, status freshness/native-session boundary, positive/negative tests and officer continuity. No production, real records, provider, mail, payment or sealed #731 test actions.
daliu commentedon Oct 17, 2026
#739 source outcome merged through PR740 as799565e4e8992b3bbf45809f339c276b0b1eb39c. Qualified Opus5.5 medium approved exact7f8d804e6a755011d07c19f349c441b332eb3134; PR CI38986750487 all six jobs/every step success.21file hashes and identical reviewed/merged tree56d1409790f3f9e6c75e1a33930139f84ef8b8a9 verified. Existing administrator merge capability used under Dave's explicit conditional delegation; no rule change/fake review.
Officer impact: responsive member/free-event screen, native-session fencing and bounded status display are merged source; hosted behavior still NOT AVAILABLE YET.
Officer documentation: OFFICER_START_HERE.md, docs/officers/MEMBER_SCREEN.md, README/maps and root scope/security/release notes.
Deployment evidence: none. Production41a9ae4 and staginge21be354 remain unchanged. Main CI still pending at this receipt; no website/Firebase/provider/policy/payment/real-data change. #739 stays open until final acceptance/release evidence is recorded.
daliu commentedon Oct 17, 2026
Staging follow-up claim by /root: current branch codex/member-screen-staging-verification, base799565e. Native Functionv7/archive/resource readback and62 Hosting files match;10 genuine Auth/AppCheck/member/retry/expiry/cancel checks passed and fresh fixtures cleaned. Actual full-site screenshots exposed global nav fixed-header styling on the member navigation. Scope is the smallest semantic markup fix, regression test and current officer release evidence; no backend/IAM/payment/policy change. Preserve sealed #731 work.
daliu commentedon Oct 17, 2026
Officer impact: The polished membership/free-event screen is published and verified on isolated staging, including working desktop/phone navigation. Online dues and production remain unavailable.
Officer documentation: docs/officers/MEMBER_SCREEN.md, STAGING_COMMUNITY.md, SYSTEM_MAPS.md, README.md and OFFICER_START_HERE.md; use this final receipt for the matching Hosting correction. Backup-officer walkthrough needs no terminal or secrets; specialist still owns release, fictional fixtures, native security checks and cleanup.
Deployment evidence (2026-10-16 Pacific): website https://run-mprc-staging.web.app/community source d08a6a3; all62 deployed asset hashes (20,011,186 bytes) and4 deep routes verified. Main CI38991529094 all6 jobs/every step green. PR740 and741 exact-head genuine Opus5.5 medium approvals and green checks preceded delegated merges; no fabricated review or protection change. Firebase communityActions v7 is source799565e4e8992b3bbf45809f339c276b0b1eb39c (unchanged backend, ancestor of final Hosting); downloaded101536-byte archive SHA256461754cbb4c59dbce1e5b9935d642467169abe0d0fda727369232bacb0688836; native resource/IAM/profile readback passed.
Ten native member/Auth/AppCheck/retry/real-clock expiry/cancellation checks and4 fresh final-layout checks passed; genuine ordinary AppCheck, 390px phone with main menu and keyboard focus verified. All fresh fictional users/records removed, manifest restored and absence checked; original ignored build restored with62 exact hashes. Original driver retry timing/error handling was corrected before clean reruns; no sealed731 harness/fixtures were reused.
Limits: verified fixture accounts do not prove verification-email delivery. No Stripe, live money, real member data, role grant, policy approval, officer MFA or production mutation. COMMERCE_ENABLED remains false. Owned redacted evidence: /Users/daveliu/.codex/artifacts/mprc-member-staging-dues-2026-10-16. Source/member-screen outcome complete; next test-only dues runtime is a separate child of historic114.