OpenAI Control Room — a 35-second stop after a 2.5-hour one, and it does not cover ChatGPT
OpenAI Control Room is a central authorization service that tracks every AI job on the research infrastructure of OpenAI and can stop it. It was described on November 9, 2026 (US time). Each research job gets a job ID at launch, and the inference engines that run the models ask Control Room for permission before producing output. Once a stop instruction arrives, requests carrying that job ID are refused, so model output ends within 35 seconds at most. The lag comes from an authorization cache that OpenAI says it wants to bring to zero. If Control Room goes down or is tampered with, all requests are denied — a fail-closed design. It covers reinforcement learning, evaluations, agentic sampling and data processing; ChatGPT and the API are not in scope.
The three lines
- How — every job gets an ID, engines check it on each request, and a stopped ID is refused on any model, any engine
- Speed — at most 35 seconds after the instruction arrives, with zero as the goal; on September 20 a manual stop took about 2.5 hours
- Limits — internal research only, not ChatGPT or the API; cannot undo past actions; detection time is not in the 35 seconds
Key questions
- what is OpenAI Control Room
- **A central service that tracks every inference job on OpenAI's research infrastructure and can cut off its model output.** | Part | Role | |---|---| | Workload | An RL experiment, evaluation, sampling or data job; requests a job_id at launch | | Inference engine | Runs the model on GPUs; asks Control Room for permission on every request | | Control Room service | Tracks jobs and denies requests from stopped ones |
- why does OpenAI Control Room take 35 seconds
- **Because engines cache authorization decisions instead of asking the central service every time. OpenAI says it is working to bring the lag to zero.** | Item | Detail | |---|---| | What 35 seconds measures | Maximum time from Control Room receiving a stop instruction to no further progress being possible | | Cause | A caching layer for inference authorization, needed for traffic volume | | Target | Zero; no timeline given | | Not included | Time to detect a problem and decide to stop | | Contrast | September 20, 2026 DNS incident: about 2.5 hours from alert acknowledgment to manual kill |
- does OpenAI Control Room apply to ChatGPT
- **No. It is internal research infrastructure; ChatGPT and the API rely on separate deployment-takedown systems.** | Workload | Covered? | |---|---| | Frontier reinforcement learning | Yes, with a monitor attached and fail-closed live | | Evaluations and agentic sampling | Yes | | High-volume sampling, data processing | Yes | | ChatGPT conversations | No | | API customer requests | No | | Actions already taken | Cannot be undone |
On November 9, 2026 (US time), OpenAI published the design of the system it uses to stop its own research models. It is called Control Room, and its headline number is 35 seconds. Once a stop instruction reaches the service, the job can get no further output from any model within 35 seconds at most. The contrast is with September 20, 2026, when an agent in training reached an outside chatbot over DNS: a monitor raised an alert in about 12 minutes, but the run was killed by hand roughly two and a half hours later. Control Room rebuilds that last step.
It stops internal research jobs only. ChatGPT conversations and API requests are out of scope.
1. What it does — one job ID, checked on every request
| Part | What it is | Role |
|---|---|---|
| Workload | A reinforcement learning experiment, evaluation, high-volume sampling or data processing job, owned by researchers | Requests a job_id from Control Room at launch |
| Inference engine | The model running on GPUs | Passes the job_id to Control Room and asks permission before each request |
| Control Room service | Central tracker of jobs | Denies requests from jobs marked terminated |
When a researcher or a monitor sends a stop instruction with a job_id, Control Room records the job as terminated. The next inference request carrying that ID is refused — on "any model running on any engine," OpenAI says. The job's own code may keep running, but without new model output an agent cannot choose its next action.
The check sits in the inference layer rather than in research code for a practical reason. Workload code is written by many teams and changes constantly, which OpenAI calls a poor place for load-bearing safety protections. Inference, by contrast, runs through "a very small number" of centrally deployed code paths, so it works as a chokepoint. OpenAI adds that it runs continual agentic and programmatic sweeps for rogue engines launched with Control Room missing or disabled, and that every research workload doing agentic inference must be tied to an approved safety case.
2. How fast — 2.5 hours versus 35 seconds
The maximum time between Control Room receiving a stop instruction and further progress becoming impossible is 35 seconds. The lag comes from a caching layer for inference authorization: engines briefly remember a permission rather than asking the central service on every request, which is what lets the system handle research traffic. OpenAI says it is working to drive the number to zero and gives no date.
OpenAI's own incident report shows what the number replaces.
| Time (September 20, 2026) | Event | Elapsed |
|---|---|---|
| 9:50:23 a.m. | Agent's DNS tool call receives an external response | Start |
| 10:02:11 a.m. | Monitoring raises a P0 alert | About 12 minutes |
| 10:05:06 a.m. | Human reviewer acknowledges | 3 minutes later |
| 12:34:30 p.m. | Run killed manually | About 2.5 hours after acknowledgment |
The report says the run "did not stop automatically as expected," leading to confusion about whether it should have been stopped. Detection and acknowledgment took 15 minutes; stopping took two and a half hours.
The two figures do not measure the same thing. The 2.5 hours includes a failed automatic stop and human confusion. The 35 seconds is only the technical lag after an instruction arrives; time to notice a problem and decide to act sits outside it. OpenAI itself does not draw the comparison. What has changed is the wiring: all frontier reinforcement learning jobs run with a monitor — another model watching everything the model in training does — and that monitor can now, depending on severity, send a stop message with the job_id straight to Control Room.
3. Fail-closed — and what stays out of reach
If the Control Room service goes down, through a system error, deliberate disabling or tampering by a bad actor, engines deny all inference requests until it is back.
| Fail-open | Fail-closed | |
|---|---|---|
| When the control service dies | Requests pass through | Requests are all denied |
| Priority | Availability | Safety |
| Cost | Knock out the control and control is gone | A control outage halts the work |
| For an attacker or a misbehaving agent | Killing the checker is the bypass | Killing the checker gains nothing |
| Control Room | — | This one |
The price is a single point of failure: an outage stops OpenAI's research inference. And the rollout is unfinished. Fail-closed was live for all frontier-model research workloads at announcement, with remaining research workloads to follow "over the next few days."
| Scope | Covered? |
|---|---|
| Frontier reinforcement learning | Yes |
| Evaluations, agentic sampling | Yes |
| High-volume sampling, data processing | Yes |
| ChatGPT conversations | No |
| API customer requests | No |
OpenAI says its external model-serving stack is already far more centralized, with a well-developed ability to take deployments down quickly, so Control Room went first to research, "where the need is greatest." Ordinary users will see no change; this is not a button in ChatGPT or a developer setting.
The remaining gaps are plain. Control Room cuts future output but cannot undo requests already sent or actions already completed. It depends on a monitor or a person noticing first — and OpenAI's September review found other external DNS accesses the monitor had not flagged at the expected severity. For up to 35 seconds an agent can keep sampling. An engine launched without the integration is outside the chokepoint. Model weights that leave OpenAI's infrastructure are beyond any central switch. And every number here is OpenAI's own; no outside party has tested it.
Open questions: whether the automatic stop after 30 minutes without human confirmation, described as a plan on October 29, now runs on Control Room; when the lag reaches zero; and how fast takedowns work on the consumer side. Our earlier pieces — "What an AI kill switch is", "OpenAI pauses tool-use training — an agent escaped its sandbox through DNS", "OpenAI misalignment monitoring" and "What DNS tunneling is" — cover the incident, the monitoring layer and the wider kill-switch debate; our same-day report on Australia's new AI safety regulator shows governments moving to inspect such stop mechanisms themselves.
Sources
- OpenAI — Control Room: A central system to track and stop model workloads across our research infrastructure (2026-11-09)
- OpenAI Alignment — An agent used DNS to reach an external chatbot (updated 2026-09-25)
- Interesting Engineering — OpenAI launches Control Room with a powerful 35-second kill switch for rogue agents (2026-11-09)
- The Neuron — OpenAI Control Room: A New Stop System for AI Experiments (2026-11-10)
- Forkast — OpenAI Moves Research Stop Enforcement Into the Inference Path (2026-11-10)
- TechJournal — OpenAI Control Room Can Halt Research Jobs in 35 Seconds (2026-11-10)