docs: rebuild Doctor structured repair RFC 0004 - #41
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 13455f60-afbb-4a92-b883-5a6ef040ee30
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 13455f60-afbb-4a92-b883-5a6ef040ee30
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 13455f60-afbb-4a92-b883-5a6ef040ee30
|
Codex review: needs real behavior proof before merge. Reviewed August 21, 2026, 12:22 PM ET / 16:22 UTC. ClawSweeper reviewWhat this changesThe PR replaces the archived Doctor health RFC with numbered RFC 0004 and a sidecar specification for structured linting and repair behavior. Merge readinessKeep this PR open: RFC 0004 is marked accepted while its required implementation-issue field is blank, so it does not meet the repository’s RFC lifecycle before merge. Priority: P3 Review scores
Verification
How this fits togetherThis RFC repository records design contracts for OpenClaw Doctor, whose health checks produce findings and may perform repairs. RFC lifecycle metadata connects an accepted contract to its implementation issue so implementers can trace the approved work. flowchart LR
A[Doctor behavior] --> B[Structured health contract]
B --> C[RFC 0004]
C --> D[RFC lifecycle metadata]
D --> E[Implementation issue]
E --> F[Implementation work]
Decision needed
Why: Acceptance makes the Doctor contract normative, but the required implementation handoff is absent and cannot be inferred from this documentation-only branch. Before merge
Findings
Agent review detailsSecurityNone. Review metrics
Merge-risk optionsMaintainer options:
Technical reviewBest possible solution: Merge a lifecycle-valid RFC: keep it draft until acceptance, or record the approved implementation issue URL before retaining accepted status. Do we have a high-confidence way to reproduce the issue? Not applicable as a runtime reproduction: source inspection directly shows accepted status alongside a blank implementation-issue field, contrary to the checked-in lifecycle policy. Is this the best way to solve the issue? No: the current accepted metadata is not the maintainable path because it omits the required implementation handoff; keep the RFC draft or link the approved issue. Full review comments:
Overall correctness: patch is incorrect AGENTS.md: not found in the target repository. Codex review notes: model internal, reasoning high; reviewed against af708f0ddb6f. LabelsLabel justifications:
EvidenceWhat I checked:
Likely related people:
Rank-up movesOptional improvements that raise the rating; they are not merge blockers.
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
HistoryReview history (42 earlier review cycles; latest 8 shown)
|
|
Closing as shipped — the behavior this rebuild documents is live in the product. Doctor structured health checks shipped and are canonical in the product: Same basis as #40: we're not restructuring accepted RFCs for surfaces that have since shipped — product docs and code are canonical for shipped behavior, and the RFC repo keeps decision records as accepted. This close reflects that policy, not the rebuild's accuracy. What would reopen this: a new Doctor capability decision (new check families, changed repair ownership) proposed as a fresh RFC. |
What Problem This Solves
The accepted Doctor health RFC remained under
rfcs/needs_refactoring/and still described the migration as future work, before the tracked 44-of-44 lint coverage milestone and the addition ofdoctor --lint --all.Why This Change Was Made
Moves the Doctor RFC to numbered RFC 0004, rebuilds it in the current repository template, and adds a normative sidecar specification. The update documents ordered core contributions, default versus complete lint selection,
--all/--only/--skip, structured repair results, post-repair validation, the plugin SDK boundary, and the completed legacy rule-family lint migration.The RFC intentionally leaves general repair dry-run as a future project. Existing
dryRun/ diff / effect plumbing is documented as substrate, not as a completed CLI or parity claim.User Impact
RFC readers and implementers now have a current Doctor structured-health and repair contract in the normal RFC layout. The stale
needs_refactoringcopy is removed.Evidence
openclaw/openclawDoctor lint selection, CLI documentation, health contribution ordering, structured repair types, and representative migrated checks.git diff --check