Resuming a session that was in plan mode now puts you back in plan mode.
What's wrong with this entry?
When you resume a session whose previous run was in plan mode, Claude Code now re-enters plan mode instead of starting in whatever mode the caller asked for. The guard is the remote flag tengu_tranquil_fern, which falls back to on, so this is active unless the server turns it off. It is skipped when forking a session and when the permission layer refuses.
- The session records its permission mode into internal metadata; on resume, if the recorded mode was plan and the live context is not, the permission context is forced to plan with source "internal".
- Recording is latched: a call made during resume setup arms it, and permission-mode changes emit the metadata only once armed, so sessions that never went through that path record nothing.
- Also requires the plan-presentation tool to be enabled.
- An unrecognized recorded mode is logged and ignored rather than applied.
- Telemetry
tengu_worker_permission_mode_restorereports source, lane, trusted mode, recorded mode, target mode and whether the guard was on.
[planModeResume] ignoring unrecognized internal_metadata.worker_permission_mode, tengu_worker_permission_mode_restore
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
Related
Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.
-
v2.1.235
Very large plans cannot be approved
Both mention plan mode
-
v2.1.235
Plans over 200,000 characters cannot be approved
Both mention plan mode
-
v2.1.246
Plan mode can be restored by reading the transcript
Both mention plan mode