Skip to content

v0.6.0 — ADR drafts for widespread rule violations

Choose a tag to compare

@einvoice-dev1 einvoice-dev1 released this 18 Jul 00:35
· 13 commits to main since this release

New

archsteer adr only ever looked backwards — it diffed the current snapshot against the previous one, so a repo's existing, systemic violations (SOQL scattered across a dozen controllers, say) never surfaced as anything an architect could act on. check/govern just listed them one by one.

Added a second, complementary source: a rule violated across 3+ components in the current snapshot is drafted as its own ADR — a standing architectural question ("ratify this as accepted debt, or the rule is wrong for this codebase") regardless of whether time has passed since the last map. Wired into adr, xray, report, and push alongside the existing diff-based drafts.

  • A single violation isn't a pattern — check/govern already surface those individually; this only fires on genuine repetition.
  • Idempotent: the draft's slug is derived from the rule id, not the violation count, so re-running as counts drift never duplicates a draft already on disk.
  • Distinguishes rules that already have a backing ADR (rule.adr in architecture.yaml) from ones that don't, and tailors the context accordingly.

Validation

Same benchmark pair used for 0.5.0: trailheadapps/dreamhouse-lwc (86.4% conformant) now drafts a real ADR reviewing soql-only-in-selectors against its 6 violating files. Spring PetClinic (100% conformant) and archsteer's own dogfooded repo both stay silent, as they should — no violations, nothing to review.

Full diff: v0.5.0...v0.6.0