real dev verification, 2026-10-30 main: 32ecd71726fee16f335484c1f95cbce126d461f6; vp i; vp run dev; server 16733, web 8693 pr: 166ed321abd81261738e43b52bda3ff96c2bcad8; vp i; vp run dev --home-dir ; server 13773, web 5733 main {"provider":"codex","model":"gpt-6.1-sol","status":"completed","startedAt":"2026-10-30T12:41:13.014Z","completedAt":"2026-10-30T12:41:19.077Z"} {"role":"assistant","text":"codex provider verification ok.","streaming":false} pr {"provider":"codex","model":"gpt-6.1-sol","status":"completed","startedAt":"2026-10-30T12:44:30.472Z","completedAt":"2026-10-30T12:44:36.000Z"} {"role":"assistant","text":"codex provider verification ok.","streaming":false} manual provider refresh: available, eight models including gpt-6.1-sol, no ChatGPT subscription badge on both builds main response persisted but required page reload to render; PR first response rendered live blacksmith: vp i && cd apps/server && vp test run src/provider/ProviderRegistry.test.ts -t checkCodexProviderStatus result: 4 passed, 34 skipped limitation: local Codex uses custom proxy with requires_openai_auth=false and no ChatGPT auth.json. Cached Pro/live Free mismatch could not be reproduced; no downgrade verified. No mocks or fixture data used. PR follow-up: {"provider":"codex","model":"gpt-6.1-sol","status":"completed","startedAt":"2026-10-30T12:46:28.853Z","completedAt":"2026-10-30T12:46:32.834Z"} follow-up verification ok.