Skip to content

Commit 54ec47c

Browse files
committed
Validate live Supabase Auth flows before deeper database migration - PR_26166_147-supabase-auth-live-validation
1 parent f1472eb commit 54ec47c

32 files changed

Lines changed: 818 additions & 709 deletions
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# PR_26166_147-supabase-auth-live-validation
2+
3+
## Branch Validation
4+
- PASS: current branch `main`.
5+
- Expected branch: `main`.
6+
7+
## Requirement Checklist
8+
- PASS: Read `docs_build/dev/PROJECT_INSTRUCTIONS.md` before validation.
9+
- PASS: Main branch guard passed before any report artifacts were produced.
10+
- PASS: No product-table migration was performed.
11+
- PASS: No schema migration was performed.
12+
- PASS: `GAMEFOUNDRY_DB_PROVIDER=local-db` was enforced in the live validation process.
13+
- PASS: Supabase Auth remains the default auth provider; validation used `supabase-auth`.
14+
- PASS: Browser/backend boundary remains API-only; validation called local backend API contracts for auth/session flows.
15+
- PASS: Browser-visible missing-config failure remains generic: `The site is currently unavailable. Please try again later.`
16+
- PASS: Operator diagnostics/evidence include provider/config state and no secret values.
17+
- PASS: No secrets were committed.
18+
- PASS: `.env.local` was read for local validation only and was not modified.
19+
- FAIL: Live Supabase Auth health, Sign In, Create Account, Password Reset, user lookup, role lookup, and user_roles lookup could not complete because Node backend fetch fails TLS verification before HTTP.
20+
- FAIL: Live backend session resolution could not complete because live identity table lookups failed before an active live identity user could be resolved.
21+
22+
## Live Validation Evidence
23+
- Evidence file: `docs_build/dev/reports/supabase-auth-live-validation-evidence.json`.
24+
- Environment presence:
25+
- `GAMEFOUNDRY_AUTH_PROVIDER`: PRESENT
26+
- `GAMEFOUNDRY_DB_PROVIDER`: PRESENT
27+
- `GAMEFOUNDRY_SUPABASE_URL`: PRESENT
28+
- `GAMEFOUNDRY_SUPABASE_ANON_KEY`: PRESENT
29+
- `GAMEFOUNDRY_SUPABASE_SERVICE_ROLE_KEY`: PRESENT
30+
- Backend provider selection: PASS
31+
- auth provider: `supabase-auth`
32+
- DB provider: `local-db`
33+
- backend status: ready
34+
- Missing-config generic browser message: PASS
35+
- Live transport result: FAIL
36+
- sanitized cause code: `UNABLE_TO_VERIFY_LEAF_SIGNATURE`
37+
- sanitized cause message: `unable to verify the first certificate`
38+
- No Supabase secret values were printed or written to reports.
39+
40+
## Validation Lane Report
41+
- PASS: changed-file syntax/static checks:
42+
- `node --check src/dev-runtime/auth/provider-contract-stubs.mjs`
43+
- `node --check src/dev-runtime/server/local-api-router.mjs`
44+
- `node --check tests/dev-runtime/SupabaseProviderContractStub.test.mjs`
45+
- PASS: targeted auth/provider validation:
46+
- `node --test tests/dev-runtime/SupabaseProviderContractStub.test.mjs`
47+
- Result: 23 passed.
48+
- PASS: Playwright impacted validation:
49+
- `npm run test:workspace-v2`
50+
- Result: 5 passed.
51+
- PASS: diff guardrail:
52+
- `git diff --check`
53+
- Result: no whitespace errors; line-ending warning only.
54+
- FAIL: live Supabase DEV validation:
55+
- Live outbound requests failed at Node TLS verification before HTTP response.
56+
57+
## Playwright / V8 Coverage
58+
- Playwright impacted: Yes.
59+
- PASS: `npm run test:workspace-v2` passed.
60+
- V8 coverage: N/A because this PR did not change runtime JavaScript.
61+
- Coverage report path: `docs_build/dev/reports/playwright_v8_coverage_report.txt`.
62+
63+
## Impacted Lanes
64+
- Auth/provider validation lane.
65+
- Live Supabase connectivity/auth validation lane.
66+
- Workspace-contract Playwright lane.
67+
68+
## Skipped Lanes
69+
- Full samples smoke: SKIP. This PR validates Supabase Auth behavior only and does not touch sample runtime behavior.
70+
- Product DB migration: SKIP. Requirement explicitly forbids product-table migration.
71+
- Schema migration: SKIP. No schema changes were required for the attempted validation; live validation failed at TLS transport before schema-level validation could require any migration.
72+
73+
## Manual Validation Notes
74+
- To complete live DEV validation, fix the Node trust chain for the configured Supabase endpoint. The current Node transport error is `UNABLE_TO_VERIFY_LEAF_SIGNATURE`.
75+
- After the trust chain is fixed, rerun live validation against the same backend contract.
76+
- Expected live checks after TLS is resolved:
77+
- `/api/auth/status` reports Supabase Auth with Local DB product data.
78+
- `/api/auth/sign-in` routes through Supabase Auth and returns sanitized result.
79+
- `/api/auth/create-account` routes through Supabase Auth and returns sanitized result.
80+
- `/api/auth/password-reset` routes through Supabase Auth and returns sanitized result.
81+
- `/api/session/users` and `/api/session/user` resolve users/roles/user_roles through provider-owned identity tables.
82+
83+
## Changed Files
84+
See `docs_build/dev/reports/codex_changed_files.txt`.
Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
.env.example
2-
docs_build/dev/reports/codex_changed_files.txt
1+
docs_build/dev/reports/codex_changed_files.txt
32
docs_build/dev/reports/codex_review.diff
3+
docs_build/dev/reports/coverage_changed_js_guardrail.txt
44
docs_build/dev/reports/dependency_gating_report.md
55
docs_build/dev/reports/dependency_hydration_reuse_report.md
66
docs_build/dev/reports/execution_graph_reuse_report.md
@@ -10,28 +10,23 @@ docs_build/dev/reports/incremental_validation_report.md
1010
docs_build/dev/reports/lane_compilation_report.md
1111
docs_build/dev/reports/lane_deduplication_report.md
1212
docs_build/dev/reports/lane_input_validation_report.md
13-
docs_build/dev/reports/lane_manifests/workspace-contract.json
1413
docs_build/dev/reports/lane_runtime_optimization_report.md
1514
docs_build/dev/reports/lane_snapshot_report.md
16-
docs_build/dev/reports/lane_snapshots/workspace-contract.json
1715
docs_build/dev/reports/lane_warm_start_report.md
18-
docs_build/dev/reports/lane_warm_starts/workspace-contract.json
1916
docs_build/dev/reports/monolith_trigger_removal_report.md
2017
docs_build/dev/reports/persistent_lane_manifest_report.md
2118
docs_build/dev/reports/playwright_discovery_ownership_report.md
2219
docs_build/dev/reports/playwright_discovery_scope_report.md
2320
docs_build/dev/reports/playwright_structure_audit.md
2421
docs_build/dev/reports/playwright_v8_coverage_report.txt
25-
docs_build/dev/reports/PR_26166_146-supabase-auth-default-provider.md
22+
docs_build/dev/reports/PR_26166_147-supabase-auth-live-validation.md
2623
docs_build/dev/reports/retry_suppression_report.md
2724
docs_build/dev/reports/slow_path_pruning_report.md
2825
docs_build/dev/reports/static_validation_report.md
26+
docs_build/dev/reports/supabase-auth-live-validation-evidence.json
2927
docs_build/dev/reports/targeted_file_manifest_report.md
3028
docs_build/dev/reports/test_cleanup_performance_report.md
3129
docs_build/dev/reports/test_cleanup_routing_report.md
3230
docs_build/dev/reports/testing_lane_execution_report.md
3331
docs_build/dev/reports/validation_cache_report.md
3432
docs_build/dev/reports/zero_browser_preflight_report.md
35-
src/dev-runtime/auth/provider-contract-stubs.mjs
36-
tests/dev-runtime/SupabaseProviderContractStub.test.mjs
37-
tests/playwright/tools/RootToolsFutureState.spec.mjs

0 commit comments

Comments
 (0)