#Open questions — DOC-ARCHITECTURE
Human clarifications from docs/ARCHITECTURE.md. Full HQ table copied for gate sync.
| Id | Question | Why unclear (plain + evidence) | Impact |
|---|---|---|---|
| HQ-1 | How should existing Bubble users authenticate on Supabase, and which signup activation path do we ship? | Plain: Sessions and password hashes do not transfer from Bubble native auth. Decompose assumes Supabase Auth but still requires an accepted ADR for cutover (forced reset vs dual-run) and for activation (preserve active=yes deep-link vs Supabase confirm-email). Evidence: chased catalog pages bTGYf / AAL and assess seed ACC-AUTH-SURFACE; inventory shows native LogIn/SignUp/Reset workflows — no portable credential material. |
blocks_implement |
| HQ-2 | Is Stripe Connect / KYC / balances / payouts a separate programme after core cutover, or in the same migration scope? | Plain: Export shows connected-account configuration and user Stripe id/name fields, but not a complete product decision on live Connect onboarding. Core architecture fences Connect as out of scope until answered; payments may still show read-only fields. Evidence: stripe_account_id_text, stripe_name_text, public_key:stripe_client_id_test, page bTIzV0; module-map MON-MARKETPLACE. |
blocks_implement |
| HQ-3 | Should ignore-privacy tracking API events become privileged service-role endpoints or be redesigned under ordinary RLS? | Plain: Two backend workflows run with privacy rules disabled; Postgres RLS has no automatic “ignore rules” switch. Time-tracking queue redesign must pick elevated RPC/Edge vs rewrite under normal policies. Evidence: inventory meta on bTLsx / bTMBg (ignore_privacy_rules: true, wf_name create_list_tracking / send_tracking_approve); assess seed ACC-IGNORE-PRIVACY. |
blocks_implement |
#Suggested options
#HQ-1 (ACC-AUTH-SURFACE)
- Forced password reset for all users onto Supabase Auth; preserve
active=yesactivation deep-link - Forced password reset; replace activation with Supabase confirm-email and document when
profiles.activebecomes true - Time-boxed dual-run (Bubble auth + Supabase) then forced cutover — only if product accepts dual identity risk
#HQ-2 (MON-MARKETPLACE)
- Separate Connect/KYC/balances/payouts programme after core app cutover (interim: read-only stripe fields + dashboard link)
- Include Connect and payouts in the same migration scope with its own estimate line
#HQ-3 (ACC-IGNORE-PRIVACY)
- Privileged Edge/RPC with service role, hard authz checks, never exposed to the browser
- Redesign
create_list_trackingandsend_tracking_approveso they succeed under ordinary RLS
#Chase notes
- HQ-1 / HQ-2 / HQ-3: inventory meta and prepared catalog refs resolved (
bTGYf,AAL, Stripe fields,bTLsx/bTMBg). Answers require ADR acceptance (needs_adr), not further IR chase.