A mid-run profile switch (reviewer -> author -> reviewer) left workflow-load
proof, reviewer lease binding, the review decision lock, live namespace
health, and preflight identity/capability stamps intact, so a formal verdict
could be recorded under contaminated session state.
- gitea_activate_profile now invalidates all review-critical session state
on a cross-profile switch, in memory and in durable state keyed by either
profile identity, and reports the invalidation + re-preflight requirement.
- Full reviewer preflight (whoami, load_review_workflow,
resolve_task_capability(review_pr), head re-pin, lease re-acquire) is
required before any formal verdict after a switch; switching back cannot
resurrect the stale run.
- Namespace provenance: optional launcher-declared GITEA_MCP_NAMESPACE is
reported by whoami/runtime context/capability resolution, and a declared
namespace that disagrees with a task's required namespace fails closed.
- Docs: supported pattern is separate session/namespace per role, not
in-process profile hopping mid-review.