diff --git a/docs/roadmap-status.md b/docs/roadmap-status.md index d6d0e27..891488c 100644 --- a/docs/roadmap-status.md +++ b/docs/roadmap-status.md @@ -41,6 +41,7 @@ Implemented now: 14. Public `/trust` page scaffold aligned with trust-page spec. 15. Dedicated marketplace OpenAPI contract and examples. 16. Member app channel contract, examples, backend handoff checklist, and conformance vectors. +17. Download endpoints now validate wallet membership status before authorizing channel messaging. Remaining in this repo: diff --git a/docs/secret-system-spec.md b/docs/secret-system-spec.md index 266138a..9905a82 100644 --- a/docs/secret-system-spec.md +++ b/docs/secret-system-spec.md @@ -30,7 +30,8 @@ This flow is the pre-launch identity and commerce envelope. It is not a throwawa 12. Page confirms via `POST /secret/membership/confirm` and/or status poll. 13. UI shows `acknowledged ยท {token}` when membership is active. 14. Post-mint success state presents `download your platform` links (Desktop/iOS/Android). -15. Member opens the app, signs in with the same wallet, and receives platform updates through app notifications. +15. Download endpoints perform wallet membership status checks before channel authorization messaging. +16. Member opens the app, signs in with the same wallet, and receives platform updates through app notifications. Privacy and Terms links bypass flow and navigate normally. diff --git a/public/downloads/android/index.html b/public/downloads/android/index.html index a2f4d8e..8cff867 100644 --- a/public/downloads/android/index.html +++ b/public/downloads/android/index.html @@ -36,6 +36,34 @@ border: 1px solid #d6dce4; background: #f7fafc; } + .status { + margin-top: 14px; + color: #4c535c; + min-height: 18px; + } + .status.error { + color: #7a3a3a; + } + .cta { + margin-top: 8px; + border: 1px solid #c8d0da; + background: #ffffff; + color: #2c2c2c; + padding: 8px 14px; + font: inherit; + letter-spacing: 0.1em; + text-transform: lowercase; + cursor: pointer; + } + .download-instructions { + margin-top: 12px; + border-top: 1px solid #d6dce4; + padding-top: 12px; + display: none; + } + .download-instructions.visible { + display: block; + } a { color: #2c2c2c; text-decoration: underline; text-underline-offset: 2px; } @@ -43,12 +71,79 @@
membership channel acknowledged
+membership channel verification
This endpoint is bound to wallet-authenticated membership access.
-When Android distribution is staged for your designation era, this channel delivers current install instructions.
-Member updates and entitlement notices are delivered inside the EDUT app after wallet sign-in.
+Android delivery is tied to wallet-authenticated membership state.
+ + +Membership verified. Android distribution remains staged by designation era.
+When your channel opens, this endpoint delivers current install instructions for Android onboarding.
+Member updates and entitlement notices are delivered inside the EDUT app after wallet sign-in.
+