A Restart Is Not Permission: When an Agent Gate Forgets “No”
Cenab Batu Bora
Submitted to AI Incident Response Sprint. Sprint projects are early-stage work by participants, not Apart Research publications.
An agent gate decides whether a proposed tool call may run. This project shows how a restart can undo a recorded rejection in SoundGate 0.1.3, even when the decision’s bytes remain in its log. The failure occurs when a new decision is appended to an unfinished record: the next recovery skips the combined invalid line and forgets the restriction.
We implement a recovery barrier that repairs the log ending before accepting requests. Across 153 constructed histories per policy, 459 executions in total, the barrier preserved restrictions while allowing unrelated work in every history. Original recovery led to 143 prohibited tool executions. Strict refusal prevented these executions but refused 147 startups. The barrier also restored restrictions after 30 forced exits during recovery.
The project provides a reproducible failure case, a repair with explicit storage assumptions, and tests of both restriction enforcement and useful operation. These controlled tests cover one source revision; they do not estimate deployment failure rates or guarantee exactly-once tool execution.

Reviews
This is strong systems-security work with a clear failure scenario and a practical fix. I especially liked the separation between recorded permissions and what the tool actually executed, along with the recovery testing and independent execution receipts. The main question is how well this generalizes beyond this specific SoundGate version and storage model. Testing this with concurrent clients, distributed systems, storage failures, and other agent authorization frameworks would make the work much stronger.
I think the underlying bug is real, and the engineering investigation is impressively thorough. Testing every byte-prefix cut of multiple record types, interrupted recovery, injected storage failures, and separate evidence of actual tool execution goes substantially beyond simply noticing a malformed-log bug.
That said, I struggled quite a bit with the framing at the beginning. I did not initially understand what SoundGate was, what exactly a "restart" meant, or why this particular SoundGate failure mattered for the incident-response sprint. I think the introduction needs a much simpler setup first: SoundGate is an existing gate between an agent and its tools, it persists allow/reject decisions, restarting the gate process reloads those decisions from disk, and here is the condition under which a recorded "no" disappears.
For the innovation dimension, I was less convinced by the broader contribution. To me this looks primarily like a crash-consistency bug in one implementation of SoundGate, followed by a very careful patch and regression suite. The repair uses established WAL, synchronization, locking, and idempotent-recovery techniques, which the paper itself acknowledges.
I think the work would feel substantially more general if the artifact became a crash-safety testing framework for agent-control systems broadly, rather than a very deep investigation of one SoundGate revision. As written, I think the execution is strong, but I am less convinced by the broader incident-response impact. Great work though!
Read full reviewShow less
Cite this project
@misc{bora2026restart,
title = {{A Restart Is Not Permission: When an Agent Gate Forgets “No”}},
author = {Cenab Batu Bora},
year = {2026},
month = sep,
note = {Submitted to AI Incident Response Sprint, an Apart Research Sprint},
howpublished = {\url{https://apartresearch.com/sprints/projects/a-restart-is-not-permission-when-an-agent-gate-forgets-no-ga92}},
url = {https://apartresearch.com/sprints/projects/a-restart-is-not-permission-when-an-agent-gate-forgets-no-ga92}
}More from AI Incident Response Sprint
- View project: Adaptive AI-Based Containment of Autonomous Cyber Attacks: A Reproducible Docker Cyber Range Study
Adaptive AI-Based Containment of Autonomous Cyber Attacks: A Reproducible Docker Cyber Range Study
Saarlanders
The study evaluates whether an incident-history-reasoning defender outperforms a fixed response policy against an autonomous LLM attacker changing paths after containment. Using a minimal, isolated Docker cyber range …
- View project: When the Evaluation Is the Incident: Testing AI Incident-Reporting Regimes on the OpenAI–Hugging Face Intrusion
When the Evaluation Is the Incident: Testing AI Incident-Reporting Regimes on the OpenAI–Hugging Face Intrusion
Arathi
AI incident-reporting regimes are being introduced in fast succession to address the concerns that exist in the public sphere and government on the risks associated with frontier AI systems, yet we have limited insight …
- View project: A Recomputable Containment Record for Evaluation Sandboxes
A Recomputable Containment Record for Evaluation Sandboxes
Shadow
In this paper, I address the critical issue of AI agents escaping evaluation sandboxes (as seen in the July 2026 incidents where monitors failed) by proposing an externally audit-able containment layer that doesn't rely …