operator: text monolog is FYI-only; anything needing a response is a widget#386
Merged
Conversation
…widget Sharpen the operator's surfacing rule. The text monolog is literally the operator's monolog -- it types over the matrix animation, fades, and the user has no way to reply. So text is for low-stakes, passing narration only. Anything the user should act on, decide, or be reliably notified of MUST be an Operator widget (widgets persist and carry action links). Also fixes stale/contradictory guidance left by the #376 monitor split: - The ambient paragraph keyed on "OBSERVATION: ambient operator loop tick", which the operator no longer receives (it gets "ambient fleet monitor flagged"), so its guidance never fired. Updated the string. - Removed "Prefer updating/removing compact Operator widgets over chatting," which contradicted the FYI-text guidance; SURFACING is now the single rule. Guard test asserts the stale string is gone, the new string + principle are present, and the contradiction stays removed. Spec 0023 updated.
edwin-zvs
force-pushed
the
operator-surfacing-prompt
branch
from
June 7, 2026 17:57
158ad24 to
1189f00
Compare
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.
Sharpens the operator's text-vs-widget rule per the design principle: the text monolog is literally the operator's monolog — it types over the matrix animation, fades, and the user has no way to reply. So:
noted→ nothing to surface.Also fixes stale/contradictory guidance from the #376 monitor split
OBSERVATION: ambient operator loop tick, but since operator: triage the ambient fleet scan off-context, escalate only findings #376 the operator receivesOBSERVATION: ambient fleet monitor flagged …— so that guidance never fired. Updated the string. (Same stale-string family as the panel-echo andnoted→edbugs.)SURFACINGis now the single authoritative rule.(Corrected my earlier claim: the two "Dynamic session UI" paragraphs are in different prompt consts — regular session vs orchestrator — not a duplicate, so left as-is.)
Tests
Guard test (
orchestrator_surfacing_guidance_is_current_and_unambiguous) asserts the stale string is gone, the new string +monolog+ the "MUST be a widget" rule are present, and the contradiction stays removed. Builds clean (construct-adapter-smith). Spec 0023 updated with the channel principle.Prompt-only behavior change — the operator picks it up on
/agents restart.