External Blockers Register
Status: Active Last reviewed: 2026-10-16
Single register for launch and runtime gates that cannot be closed by normal repo edits alone. Detailed step-by-step instructions remain in Pre-launch Checklist; this page is the routing view.
Authority
- Use this register to decide whether a blocker needs owner, vendor, platform, counsel, or production-runtime action.
- Use Pre-launch Checklist for the exact action sequence once the external prerequisite is available.
- Use the Owner credential run-sheet for the owner-only part: which console to open, what to copy, where it goes.
- Use Production Readiness for the broader launch risk ledger.
Blocking Register
| ID | Status | External owner | Gate | Action route | Launch impact |
|---|---|---|---|---|---|
| EXT-1 | Verify | Owner | A real CPO (이성규, privacy@twomore.app) is already named in privacy.ko.ts §11 — owner confirms it is still current before launch | Pre-launch #1 | Public signup blocked |
| EXT-2 | Blocked | Korean counsel | Counsel-reviewed Korean legal text and policy-version bump; four stale GPS 출석 체크 passages and two location questions are listed for counsel (pre-launch item 2) | Pre-launch #2 | Public launch blocked |
| EXT-3 | Blocked | Owner / KCC | Location-based-services filing at lbsc.kr (GPS check-in is retired; the remaining location uses run on the device — whether the filing is still required is counsel's question, item 2) | Pre-launch #3 | GPS feature public launch blocked |
| EXT-4 | Blocked | Apple Developer / owner | iOS preview and production credentials/builds | Pre-launch #4 | iOS launch blocked |
| EXT-5 | Blocked | GitHub repo admin | main branch protection with required CI checks | Pre-launch #5 | Quality gate not enforced at merge |
| EXT-6 | Optional | Supabase / GitHub repo admin | SUPABASE_ACCESS_TOKEN secret for live type-drift CI | Pre-launch #6 | Type drift caught late if skipped |
| EXT-7 | Verify | EAS / release owner | First production OTA smoke evidence | Pre-launch #7 | Production OTA unproven |
| EXT-8 | Optional | Store-owner accounts | App Store / Play Store listing assets and questionnaires | Pre-launch #8 | Store submission blocked |
| EXT-9 | Done | Claude (repo work) | App-update gating / force-update path — built (migration 00669 + AppVersionGate mounted at the app root, canon/data-and-hooks.md); only the update button's destination still needs the real store URLs from EXT-8 (app_store_url_android/app_store_url_ios in app_config, currently empty) | Pre-launch #9 | Gate is live and fails open (offline/error/missing-config never blocks); store URLs pending EXT-8 — until then the update screen shows no CTA button |
| EXT-10 | Verify | Release owner | DevPanel and seed/simulate production gating smoke | Pre-launch #11 | Production data safety unproven |
| EXT-11 | Blocked | Kakao / owner | Production Kakao auth credentials and IdP onboarding | Current Project State | Production social login blocked |
| EXT-12 | Blocked | PortOne / owner | Real PortOne console setup, secrets, deploy, and native adapter | PortOne guide | Real card/payment rail blocked |
| EXT-13 | Blocked | Apple / Android / web domain owner / release owner | Universal/App Link association identifiers and live twomore.app deployment | Pre-launch #12 | HTTP share links cannot be accepted; the session share card's Kakao FEED image and OG unfurl (2026-09-20) render from twomore.app/s/<id>/opengraph-image — until the domain is live the Kakao bubble shows no image |
| EXT-14 | Blocked | Kakao / owner / release owner | KakaoTalk Share template IDs, native app key, preview build, and device smoke | Pre-launch #13 | Kakao-native growth sharing unproven |
| EXT-15 | Blocked | Owner / Kakao | KakaoTalk support channel URL (pf.kakao.com) set as EXPO_PUBLIC_SUPPORT_KAKAO_CHANNEL_URL | contact screen | In-app help stays email-only until set |
| EXT-16 | Blocked | Owner (Higgsfield connector + licence) / Claude | Owned visual asset set generated with Higgsfield: onboarding illustrations, share-card backgrounds, store listing assets and preview video — candidates reviewed on a board. Club default photos dropped from scope 2026-09-24; superseded 2026-09-26 — a photo-less club renders one of 27 in-repo default covers (resolveClubCoverUrl), so no generated club photos are needed | Pre-launch #14 | Ships on code-drawn art |
| EXT-17 | Optional | Owner / 변리사 | Set aside by the owner, 2026-11-13. File 올코트 / ALLCOURT at KIPO (classes 9, 35, 36, 38, 41, 42, 45), then Madrid. The owner picked allcourt on 2026-11-01 (the screen: no Korean mark in our classes); a 변리사's sound (칭호) search first, then the filing. The in-code rename follows the filing date, not the registration | Owner review 47 | The brand can be refused if 다붓 is filed first |
| EXT-18 | Optional | Owner | Set aside by the owner, 2026-11-13. Register allcourt's addresses and handles: allcourt.app and allcourt.kr (free on 2026-11-01; .com and .co.kr are taken), @allcourtapp, the App Store Connect name and a Kakao Channel; then the links and emails move from twomore.app. The owner picked allcourt on 2026-11-01; nothing was bought under Dabusi | Owner review 47 | Share links, emails and the store name stay on TwoMore |
| EXT-19 | Blocked | Owner / KG이니시스, Danal | 본인인증 vendor quotes: prices and contract timing | Verified-identity sign-up | Verified sign-up cannot be contracted |
| EXT-20 | Optional | Owner (Cloudflare dashboard) | Set aside by the owner, 2026-11-13. The cockpit's Cloudflare Access gate is not enforced (twomore-cockpit.pages.dev and its deploy-hash hosts answer without a login) | Cloudflare Zero Trust › Access › Applications | Design boards are publicly reachable |
Hosted state (2026-10-18)
The hosted Supabase project is the QA bed, not production. Per the 2026-10-18 handoff of the previous lead session it is at migration 00698 (00698_release_event_rsvps_on_leave.sql); that session reported it from migration list on 2026-10-17 and the handoff did not re-check it. seed-scenario was redeployed on 2026-10-17. Since the 2026-10-06 state (migration 00690, the Codex landing 00678–00690, with send-push, check-push-receipts, seed-scenario, fetch-holidays and export-user-data deployed) it has taken 00691 (faces are members-only, 2026-10-11) and 00692–00698 (the flat v2 data waves and the 행사 departure fix, 2026-10-16 and 2026-10-17; see Build waves).
The last preview OTA recorded, 1719d507 on 0.11.0 (2026-10-06), no longer matches the hosted schema. Preview OTA has been paused since 2026-10-14 (the owner holds the next native build until the flat v2 migration is done, so the fingerprint guard refuses yarn ota:preview), and no OTA is recorded after 1719d507. The handoff records that the previous session checked backward compatibility for complete_session and that the other hosted changes are additive, and marks that partly unverified. None of this closes an EXT row.
Update Rule
When a blocker changes state, update this register and the detailed source doc in the same slice. Run:
yarn docs:generate
yarn docs:check