Skip to content

Commit c76d444

Browse files
sametbasbugclaude
andcommitted
Record the switch to production and what stays untested
Names the one link that live probes cannot reach: a real consent press and the session it mints. Everything up to it is verified; saying so is cheaper than someone later reading "production works" as "production was used". Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1 parent 3e2d4de commit c76d444

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

‎docs/V6_PROJECT_LEDGER.md‎

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2227,3 +2227,28 @@ Anything under `docs/archive/` describes an earlier state and is frozen. Read it
22272227
issuer and client secret are switched by hand. That switch and the anime
22282228
repository's push belong together — one without the other leaves the live site
22292229
pointing at the wrong Orbit.
2230+
- The switch to production happened on 12 August, in the only order that is
2231+
safe: the Supabase provider record was repointed at the production issuer
2232+
first, then the anime repository was pushed. The reverse order would have put
2233+
a live site's sign-in through staging.
2234+
- Supabase's Discovery URL field was emptied rather than repointed. The field's
2235+
own note says an empty value derives `{issuer}/.well-known/openid-configuration`,
2236+
which is exactly where the document lives, so leaving both filled would have
2237+
created a pair that can drift — one changed, the other not, failing at a
2238+
moment nobody connects to the edit.
2239+
- The pasted client secret was verified without needing anyone to sign in: a
2240+
token request carrying the secret and a deliberately invalid code answered
2241+
`invalid_grant` rather than `invalid_client`. The distinction is the whole
2242+
test — the client credentials were accepted and only the code was rejected.
2243+
A wrong secret answers 401 `invalid_client`, which an earlier probe confirmed.
2244+
- One silent failure path was checked because the hosting layer introduced it:
2245+
`/hesap` answers 301 to `/hesap/`, and the authorization code rides in the
2246+
query string. The redirect preserves the query, so the code survives. Had it
2247+
not, sign-in would have failed with an empty account page and no error
2248+
anywhere.
2249+
- Live end to end on production: the anime site's button reaches
2250+
`orbit.sametbasbug.dev` with `client_id=orbit-equinox-rota`, `S256`, scopes
2251+
`openid email profile`, and no staging host anywhere in the chain. What has
2252+
NOT been exercised on production is a real consent-to-session round trip —
2253+
that needs a signed-in human pressing the consent button, and it remains the
2254+
one untested link. Staging drove that path in full on the same day.

0 commit comments

Comments
 (0)