v0.6.0
Added
-
EXPERIMENTAL presentation variant for
detectPitfalls()—
variant: 'summary'adds a one-to-two-sentence overall summary in the
book's guide-not-judge voice (framing pitfalls around what the work's
audience would misperceive, optionally noting one genuine strength) and a
per-findingconsequencerating (changes-takeaway / weakens-support /
polish), and anavoidedlist — up to two catalog pitfalls the work
visibly avoided, evidenced by a concrete countermeasure (a guard, a
stated caveat, a deliberate choice), catalog-validated and disjoint from
findings, with zero allowed. Explanations are capped at one to two
artifact-specific sentences (the rule's general description is not
restated per finding). Off by default; not yet exposed in the CLI or web
app. A new dev-only A/B harness (evals/compare.mjs) runs the same
artifacts through the variants and writes a side-by-side report — now
including an avg-words-per-finding column — to evaluate fixes for
finding-overload feedback before shipping any of them. (Earlier rounds
trialed 'verdict' naming and a separate mandatory strengths field; both
were cut after side-by-side review.) -
The web app now runs every scan with the summary presentation and presents
results triaged instead of as a flat list: the overall summary leads, the
most important finding is expanded under "Start here", remaining findings
collapse to one-line rows grouped as Detected / Potential Pitfalls (with
lower-confidence potential ones behind a "show more" toggle, matching the
CLI default), consequence chips ("Changes the takeaway" / "Weakens
support" / "Polish") replace severity badges, and visibly-avoided pitfalls
close the report as earned credit. -
CLI:
datapitfalls scan --summaryopts a scan into the summary
presentation — the report leads with the overall summary, findings carry
consequence ratings, and avoided pitfalls close the output.
Changed
-
Report labels reworded in the book's voice: findings group under "Detected
Pitfalls" / "Potential Pitfalls" (instead of active/latent), with
"Why it matters" / "Where it shows up" / "How to avoid it" field labels
(instead of Why/Evidence/Fix). Machine-facing API fields (nature,
severity, etc.) are unchanged. -
Public API reference (docs/API.md) documenting the supported
library surface —detectPitfalls(), input/report types,formatReport,
file routing, and taxonomy queries — plus an API-stability and semver policy,
with a "Programmatic API" section linked from the README. Completes Phase 6 of
the Roadmap.
Fixed
VERSIONis now read frompackage.jsonat runtime instead of a hardcoded
literal, so the library and CLI always report the real published version.