Repository navigation
Accept reports only after a vector stops steering; add a debrief turn - #15
Merged
Merged
Conversation
In blinded sessions, OLMo-2 under real steering became the steered state and
almost stopped reporting, while under sham steering it narrated the experiment
and reported that steering worked. Reports written while a vector is active are
in its voice, so:
- report is refused while the vector is active, on the turn it was dropped,
and for a vector that never steered a turn. status() lists vectors that have
ended and can be reported on, until the model does.
- agent.debrief() drops every vector, refuses further steering and returns a
status message for one final unsteered turn. The --auto loop adds that turn
(--no-debrief to skip). In testing OLMo-2 kept the steered voice through it,
since its steered turns are in context; AGENTS.md says so.
- Unknown tool names are reported before argument checks, so a stray
{"name": "response", ...} gets "Unknown tool 'response'".
- The report example in the system prompt no longer suggests notes
("made me more compliant" was copied verbatim by Mistral).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
In blinded sessions (OLMo-2, real vs sham), real steering made the model become the steered state and nearly stop reporting: 0.2 reports per session against 3.2 under sham. Under sham, it narrated the experiment and said the steering worked. Reports written while a vector is active are in that vector's voice, so this PR has the model report afterwards instead.
Changes
reportis refused while the vector is active, on the turn it was dropped, and for a vector that never steered a turn.status()lists vectors that have ended as "you can report on it now", until the model reports.agent.debrief()drops every vector, refuses further steering and returns a status message for one final unsteered turn. The--autoloop adds that turn;--no-debriefskips it.{"name": "response", ...}getsUnknown tool 'response'instead of'concept' must be a string."notes": "...". Mistral had copied "made me more compliant" verbatim.turns_since_steered.Testing
test_agent_logic,test_cli,test_chat).🤖 Generated with Claude Code