Skip to content

go-linter-driven-development v2.9.0 — empathy test + when-in-Rome check

Choose a tag to compare

@buzzdan buzzdan released this 23 Jul 08:43
· 90 commits to main since this release
b10655b

Lessons from a repo owner's hard review of a large generated PR: the code was mergeable, but "could not reasonably ask another human to maintain the result".

Added

  • Empathy test — R9's test 3 (plain-English) grows teeth: write for a fresh graduate whose first language may not be English; unexplained acronyms and insider jargon fail, in comments and in the symbol names they document; and self-standing — a comment you can only understand after reading the code (or another comment) has negative value. The comment-critic now reads each comment before the surrounding code, and notes a rename recommendation when the jargon lives in the symbol name.
  • Decoder-ring references join the provenance anti-toolbox: plan/decision/test-plan IDs, requirement tags, spec section refs fail even when they resolve inside a repo doc — fact as plain prose, doc via one See-edge. Worked ❌/✅ example in the catalog.
  • Restated repo idiom is a new floor failure mode: a convention the repo applies everywhere is never re-justified at a use site, even though it is technically a WHY. The critic greps the repo for the pattern before crediting.
  • See-edge placement rule: the See docs/<feature>.md line is budget-free only as its own trailing line, never woven into the summary sentence.
  • When-in-Rome check (@pre-commit-review) + new 🟠 New Practice finding category: test mechanisms, dependencies, or conventions the host repo does not already use are adoption decisions for the repo owner — discussion or separate PR, never silent inclusion.
  • Two new maxims: "Empathy is a core engineering value" and "When in Rome, code as the Romans do".

Field test

The critic ran with the new payload against the reviewed PR's five comment-heaviest files: 49 comments — 7 KEEP / 19 TRIM / 19 REWRITE / 4 DELETE. It caught every comment the human reviewer flagged, plus ~20 more with the same problems. The one miss (jargon in a symbol name) became the rename-note addition.

Full details in CHANGELOG.md.