Skip to content

fix: statusline BOUND-UNPROVEN channel state, doctor role-marker clear - #1733

Merged
fdaviddpt merged 3 commits into
mainfrom
fix/1728
Sep 23, 2026
Merged

fdaviddpt merged 3 commits into
mainfrom
fix/1728

Conversation

@fdaviddpt

Copy link
Copy Markdown
Contributor

Summary

Review

Two parallel review spawns (Explore, oss:auditor) against the first commit both independently found: (a) 5 remaining stale "five states" mentions in scripts/statusline.py, and (b) the _health_signal mapping gap above. Both fixed in a follow-up commit, including a new regression test (test_unproven_channel_health_is_a_single_consumer_reading_1726, confirmed red before / green after). A mandatory second-pass round (triggered by the fix commit touching 4 files) returned no further findings.

Test plan

  • tests/test_statusline_channel_613.py -- red before (1 failed, assert 5==6) / green after (54 passed)
  • tests/test_doctor_marker_clear_1728.py (new) -- red before (3 failed) / green after (3 passed)
  • tests/test_doctor_channel_health_agreement_860.py -- red before (1 failed on the new test) / green after (31 passed)
  • Combined targeted run (12 files, guard set derived via lane_setup.py --claim/--lane) -- all passed, 1 pre-existing unrelated skip
  • Full pytest suite not run locally per this repo's own rule; CI's 13 legs are the real run

🤖 Generated with Claude Code

[AI-generated]

fdaviddpt and others added 3 commits September 23, 2026 23:47
#1726, #1728)

- scripts/statusline.py CHANNEL_STATES now maps supertool 0.64.0's sixth
  channel:health verdict, "BOUND, UNPROVEN" (bound, verified and subscribed
  but has never forwarded anything), to its own state and its own glyph
  (ch(unproven), ASCII chu) instead of falling through to cannot_determine
  (#1726).
- agents/doctor.md now clears its own role marker as its last act before
  reporting, mirroring the sub-manager's tick_handback.py
  --clear-marker-root (#1585). A doctor spawn wrote its marker (#1690) but
  never cleared it, leaving every ordinary run's marker live for up to
  MARKER_TTL_SECONDS and making the very next tick's own sub-manager refuse
  to declare its role -- the #1716 conflict refusal, tripped by the
  doctor's own residue rather than a real rival (#1728).

Both diffs raise the budgeted files they touch (agents/doctor.md,
CLAUDE.md) per the repo's own editing-exception convention, with the
weighed sentence recording it in each.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…ing (#1726)

Self-review (Explore + oss:auditor, both independently) found the same two
gaps left by the #1726 fix:

- scripts/statusline.py still had five stray "five states"/"five recognised"
  mentions after the diff updated only two of the module's seven such
  docstrings/comments -- one of them ("scaled down for a field with five
  possible states") sitting seven lines above the diff's own corrected "six
  upstream states" in the very same docstring. All five brought to six.
- scripts/doctor_check_channel_health_agreement.py's _health_signal had no
  branch for the new "unproven" raw_state, so channel_health_agreement_state
  reported could-not-compare for a repo in BOUND, UNPROVEN even though a
  single, real consumer was identified -- the same single-consumer shape
  forwarding/not_delivering/not_subscribed already agree against. Added
  "unproven" to the single-consumer tuple, plus a red/green test.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…how" substring (CI)

PR #1733's CI failed 4/10 legs on tests/test_scaffold_cli.py::
test_show_includes_owned_files_even_when_every_template_already_exists,
disjoint from this diff's own files. Root cause: scaffold.py's `--show`
embeds the full content of .oss/statusline.py (an owned file this repo
vendors from scripts/statusline.py) inline in its output, and the new
BOUND-UNPROVEN glyph comment added in a19ea82 read '"just started,
nothing to show yet"' -- the literal substring "nothing to show" the test
asserts never appears anywhere in --show's output. Reworded to "no traffic
yet", same meaning, no collision. Confirmed the test passes locally, alone
and as part of the wider scaffold/statusline/doctor test files (282 passed).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@fdaviddpt
fdaviddpt merged commit 53b3e6d into main Sep 23, 2026
10 checks passed
@fdaviddpt
fdaviddpt deleted the fix/1728 branch September 23, 2026 22:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant