Feature 0 complete. addNote/addHelp bundle notes and help-blocks under a
primary diagnostic (handle from new addId/addFmtId); help blocks carry an
optional fix-it line that substitutes the suggested source. renderExtended
now renders primary -> notes -> helps with blank-line separators.
Wire the CLI to the extended renderer (renderErrors -> renderStderr) and
flip render_style default to .extended; the previous renderErrors ->
renderDebug path bypassed render() entirely, so flipping the field alone
was a no-op. 13 diagnostic snapshots re-rendered to the extended format.
Both repros emit their target diagnostics cleanly today (verified
2026-05-28 against HEAD):
- `issue-0033` → "no visible xx conversion from 's64' to 'Wrap'
— impl exists in another module but is not imported". Catches
the case where an `impl Into(X) for Y` is registered globally
via one module's import chain but is NOT transitively imported
by the file containing the `xx` site.
- `issue-0034` → "duplicate xx conversion from 's64' to 'Wrap':
impls in <a> and <b>". Catches two impls covering the same
(Source, Target) pair both reachable from a single `xx` site.
Renamed to focused feature names:
- `issue-0033*` → `179-impl-visibility*` (4 files: main + impl +
types + user).
- `issue-0034*` → `180-impl-duplicate*` (4 files: main + impl-a +
impl-b + types).
Path references inside the files updated. Comment headers tightened
to feature-focused (drop issue-NNNN provenance — that's in git
history now). Expected `.txt` / `.exit` files captured against the
full diagnostic text and exit code 1.
The `issue-*` namespace in `examples/` now shrinks to the literal
list of UNRESOLVED bug repros. 218/218.