Skip to content

MEMBERS-DIRECTORY-001F: Review profile photos before upload - #630

Merged
daliu merged 1 commit into
mainfrom
codex/issue-629-photo-review
Aug 13, 2026
Merged

MEMBERS-DIRECTORY-001F: Review profile photos before upload#630
daliu merged 1 commit into
mainfrom
codex/issue-629-photo-review

Conversation

@daliu

@daliu daliu commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Closes #629

Officer impact: No live officer duty changes. The preserved future My Account photo flow now reviews a selected image locally and requires an explicit Save or Cancel before any upload.

Officer documentation: SYSTEM_DESIGN.md; IMPLEMENTATION_PLAN.md; SECURITY.md; docs/officers/EVENTS_SHOP_MEMBERS.md

Deployment evidence: Source and tests only. Availability remains false; no website publication, Firebase Rules, index, Function, provider, account/sign-in, or production-data action was performed. Production remains inert #623 deploy 6a7e072f8f346b0008510d29.

Summary:

  • hold a valid selected JPG, PNG, or WebP in a local centered-square draft without creating a request or calling a directory service
  • require explicit Save profile photo to upload, while Cancel discards the draft and sends nothing
  • fence stale reads and image events across reselection, Cancel, app/account changes, and unmount
  • keep authoritative saved-photo state distinct, with an accessible version-reset fallback
  • preserve retryable drafts only for safe definitive failures and clear bytes on unknown/readback failures
  • restore keyboard focus after Cancel and confirmed Save; keep 44-pixel actions and narrow-screen containment
  • never read, retain, render, log, send, or expose File.name

Testing:

  • RED: old runtime failed the two initial review-before-upload contracts
  • full frontend: 18 suites, 1,109 tests passed
  • focused photo suite: 71/71 passed
  • TypeScript noEmit passed
  • targeted ESLint passed
  • frontend lint baseline passed: 120 files, 113 reviewed legacy errors, 6 reviewed warnings
  • diagnostic production build passed
  • workflow/release checks: 35/35 passed
  • git diff --check passed
  • independent security/privacy, code-quality, frontend/accessibility/mobile, and backup-officer reviews: GO

Connection boundary: The member-directory availability value remains byte-identical false. This PR does not satisfy #507 privacy, scoped authorization, staging, backend deployment/readback, source-flip, publication, or live-proof gates.

@netlify

netlify Bot commented Aug 13, 2026

Copy link
Copy Markdown

Deploy Preview for luminous-fox-7c393f ready!

Name Link
🔨 Latest commit 916cae5
🔍 Latest deploy log https://app.netlify.com/projects/luminous-fox-7c393f/deploys/6a7e28e931e2b50008c622d1
😎 Deploy Preview https://deploy-preview-630--luminous-fox-7c393f.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

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.

MEMBERS-DIRECTORY-001F — Review and confirm a profile photo before upload

1 participant