The AutoCoder change routed background Codex work through Flex while retaining Standard for human-facing Engine chats. Flex availability was not verified with a real provider request. The user had excluded production promotion, but the repository's automatic main-delivery workflow promoted the passing candidate from dev and the main push triggered production deployment.
The initial production candidate was 1bb84a19f4907f4a60765065661c62e1cbb8c431-4020-1, backend image gitea.app.lan/autocoder/autocoder-engine@sha256:d9a76974fbfe2242b47db036d072776f58304c9a0a7856be5605d537f19dcbc2. Production deployment metadata recorded source revision 1bb84a19f4907f4a60765065661c62e1cbb8c431 at 2026-09-29 13:16:33 UTC (candidate run #4020, production promotion run #4022).
Following the user's explicit instruction to undo the change:
dev as 95cc4e464e5b4f3b7273c0671c7eea928de27e5d.95cc4e464e5b4f3b7273c0671c7eea928de27e5d-4024-1, image gitea.app.lan/autocoder/autocoder-engine@sha256:06849e7573028e6f546d3f4090ee75aab2827761d3e8a640175d05d4583cfaa9.main as 4928d280f6233d9e2a6ed39f38672b9c9aa2677e; production promotion run #4026 succeeded.95cc4e464e5b4f3b7273c0671c7eea928de27e5d, candidate 95cc4e464e5b4f3b7273c0671c7eea928de27e5d-4024-1, and the same backend image digest as TEST, deployed at 2026-09-29 14:44:42 UTC.The additive migration from the Flex change had left three columns and three check constraints on public.codex_worker_tasks. Before cleanup, all 6,947 retained task rows had requested_service_tier IS NULL, flex_retry_count = 0, and flex_retry_attempts_json = []. A transaction with a two-second lock timeout removed only those three columns and their named constraints. The post-change check confirmed all 6,947 task rows remain and those columns and constraints are absent.
The current /root/.codex/config.toml already had service_tier = "default" after a later change at 14:11 UTC; it was preserved. The unchanged /root/.codex/standard.config.toml file created for the Flex change was removed.
The code and candidate tests passed, but no real Flex request was made before the initial deployment. No production task used the new tier during the observed deployment window. The rollback restores the prior source and removes the unused Flex-specific database fields; this record does not claim that the earlier local Codex chat failure was caused by AutoCoder.