2.6 KiB
OpenAI login recovery gate before phone/SMS runs (2026-05-10)
Trigger
Use this note before any new country-specific OpenAI phone-verification run, especially when BOSS asks to test a new 5sim country such as Chile.
Incident
BOSS requested testing Chile numbers 5 times.
Intended mapping:
5sim country: chile
OpenAI ISO: CL
Visible selector: 智利 (+56)
Dial prefix: 56
Total attempts: 5
Two blockers appeared before any 5sim number was bought:
- The generated Chile runner still read
FIVE_SIM_COUNTRY_ORDERfrom env, so it started with the old Europe list (italy,poland,spain,england) instead ofchile. - OpenAI account recovery could not return to
add-phone:- Password login showed
Incorrect email address or password. - Clicking
使用一次性验证码登录returnedinvalid_state. - Fresh Codex2API OAuth URLs plus stale-tab cleanup still landed on the password page/error state.
- Password login showed
Because the runner failed before add-phone, no Chile 5sim activation was bought and no number was submitted.
Rule
Before buying any 5sim activation for a new country, enforce a hard pre-buy gate:
current URL must be https://auth.openai.com/add-phone
OpenAI account must already be usable / email-verified
country selector can be set and read back for the target country
If the page is any of the following, stop before buying numbers:
/auth.openai.com/log-in/password
Incorrect email address or password
invalid_state
account_deactivated
email-verification stale state
Runner implementation guard
Country-specific test runners must not accidentally read a stale env country order.
For one-off country tests, explicitly set:
ORDER = ['chile'] # or requested country only
LIMIT = 5 # requested total/per-country budget
Also emit the effective order at startup and verify it matches the request before attempting OAuth recovery:
{"phase":"phone_strict_start","countries":["chile"],"max_total_attempts":5}
If startup emits a different country list than requested, abort immediately rather than buying or submitting any number.
Recovery recommendation
When login recovery fails with password mismatch plus invalid_state, do not keep generating OAuth URLs in a loop. The next step should be one of:
- create a fresh ClawEmail sub-mailbox and restart the OpenAI account flow;
- manually verify/reset the account password;
- manually test visible browser
使用一次性验证码登录once to confirm whetherinvalid_statepersists.
Only resume 5sim phone attempts after add-phone is restored.