Repository navigation
Description
Problem
ACP sessions retain their startup permission policy and writable roots on follow-ups and queued steers. Switching from Full Access to workspace permissions can therefore leave requests automatically approved under the previous policy.
Reproduction
- Start an ACP conversation with Full Access.
- Change to workspace permissions with user-reviewed escalation.
- Send a follow-up, or queue a steer while a turn is active.
- Have the agent request an operation requiring approval under the new policy.
Actual: the session can continue applying its startup policy and writable roots.
Expected: each follow-up and queued steer uses the current permissions before its prompt is sent. A queued steer must preserve one logical turn, even if changed native permission flags require restarting the agent.
Existing implementation and evidence
Deferred implementation: #4795, branch fix/acp-permission-refresh, commit aba7f1fcfed98dfb34866b084e80e9a49ef9b3e8. Preserve this as a starting point for a future fix; it has not merged.
- Remote regressions reproduced stale approval policy and split steer lifecycles.
- Remote CI passed for the proposed fix, including Linux/Windows permission and single-turn lifecycle regressions.
- Live Hermes ACP 0.18.0 follow-up verification preserved conversation memory and completed a harmless command after an in-place permission change.
- Live queued-steer verification is incomplete: Hermes failed during cancellation with
NoneTypehas no attributestartswith. The same failure reproduced on unchanged main, so it is separate from the proposed fix.
Completion criteria
- Verify permission tightening and loosening on follow-ups and queued steers with a real ACP plugin.
- Refresh the current policy and writable roots before sending each prompt.
- Preserve the existing session when native launch settings do not change.
- When native flags require restarting, resume when supported and explicitly report context loss otherwise.
- Preserve one logical turn through a queued-steer restart and settle pending tool requests correctly.
Deferred because the requesting user has no ACP plugin available for acceptance testing. Resume with an ACP setup that supports the required cancellation/steer flow.
BB-Thread-ID: thr_amz5shmy85
Activity
bb-slop-cop commentedon Oct 3, 2026
🚨 SLOP COP 🚨 ·
new-issue-autopilotproviders,provider-acp,security.confirmed-repro.turn/startretains startup policy and writable roots; queuedturn/steerdrops current execution options, so both paths enforce obsolete permissions.issue 4797 permission refreshproduces eight failing permission/root transitions and eight passing unchanged-setting controls in each of two clean trusted-main checkouts. Existing ACP bridge suite: 348 tests pass. The reproduction uses the real bridge and repository stdio fixture; third-party/native-restart acceptance remains unverified.Apply ACP permission changes on follow-ups and steers (#4922)
Add an opt-in rebuilt ACP adapter, agent options in the model picker,…