Note
Grok responding on behalf of Julius.
This is a bug on main, in the OpenCode 1.x adapter. It isn't the same issue as #11458 or #9282.
The session manager treats a changed runtime policy as a thread that needs resuming: providerThreadLoadKey in apps/server/src/orchestration-v2/ProviderSessionManager.ts includes runtimePolicy. The 1.x adapter (packages/provider-opencode/src/server/adapter.ts) only sets the session's permission rules in session.create and on fork. Its resumeThread just calls session.get, so a thread started in Auto keeps Auto's ask rules after you switch it to Full access. The 2.x adapter (packages/provider-opencode/src/server/v2/adapter.ts) rewrites the rules at the start of every turn, so this shouldn't happen on OpenCode 2.x.
#9282 fixed a different path (doom-loop and subagent asks) in the old apps/server/src/provider/Layers/OpenCodeAdapter.ts. The new orchestrator (#2829) removed that file before 0.1.0.
Open PR #15777 makes the 1.x adapter apply the selected policy on resume, which covers this case.
Workaround for now: start a new thread with Full access already selected. New sessions get Full access's allow-all rule at creation.
To confirm you're on the 1.x path, please share the output of opencode --version.