Status: clarify optional lineage and Board version - #1060
Conversation
|
Note Automatic reviews are paused because your team has used its included automatic processing for this billing period (headroom scales with your seat count). You can still comment "Gitar review" to run one anytime, and automatic reviews resume on their own by October 1. Add seats for more headroom. Code Review ✅ Approved🟡 Medium risk Clarifies optional lineage policy and Board presentation to prevent missing configuration from blocking owner actions. Status and Board views now preserve readable PR and gate state when lineage is not configured, label that posture Review coverageRules No rules evaluated OptionsDisplay: compact → Counting what did not apply, without listing it. Comment with these commands to change the behavior for this request:
Was this helpful? React with 👍 / 👎 | Gitar |
Claude audit (merge-authority lane)Head SHA: |
Problem and behavior
Status and Board views could turn missing optional lineage policy into an owner-action blocker, render an empty workflow section as prose, and make the running package version easy to overlook. They now preserve readable PR and gate state when lineage is not configured, label that lineage posture
optionalwith the exact--config code-mower.ymlnext step, and reserveunavailablefor configured lineage that cannot be read. The terminal and Board surfaces render an empty recent-workflow list asnone, and the Board primary header explicitly saysServing version: ….Share-oriented doctor path redaction and its focused fixture landed immediately beforehand in #1059; this PR retains that accepted boundary and completes the remaining #1055 surfaces.
Closes #1055.
Validation
pytest -q tests/test_lane_status.py tests/test_board.py tests/test_remote_observer_doctor_1053.py tests/test_doctor_output.py— 318 passed, 302 subtests passedruff check src/code_mower/lane_status.py src/code_mower/board.py tests/test_lane_status.py tests/test_board.py— passedgit diff --check— passedRisk and privacy
The change is presentation and decision-posture logic over existing metadata. It adds no source, transcript, provider output, token, or local path to Board/status output; the remote observer's no-path contract remains covered by #1059.