5 Commits

Author SHA1 Message Date
8488cab0ac Make surface rules token-aware 2026-04-04 16:11:46 +02:00
bd89fb476e Improve diagnostics and Guile corpus handling 2026-04-04 15:54:51 +02:00
6dc717186e Expand test suite: 84 → 139 tests covering all bugfixes
New test files:
- test-config.scm (15 tests): find-config directory walking,
  load-config with explicit/missing/auto-discovery paths,
  merge-configs override semantics, generate-template pretty-print
  output validity.

- test-engine.scm (40 tests): filter-rules-by-config with
  enable/disable/combined, severity>=? helper, lint-file with
  --pass surface (no compile errors leak), severity filtering
  (info excluded at warning level), rule disabling via config.

  Fix mode tests: trailing-whitespace fix, comment-semicolons
  fix (single ; → ;;), no-tabs fix (8-space expansion),
  tab-stop alignment, blank-lines deletion, fix composition
  (tabs + trailing whitespace on same line), idempotency
  (second pass changes nothing), multi-pass convergence
  (3-way conflict: tabs + trailing + comment on same line
  converges in 2 passes).

  Compile-error formatting: no raw ~S/~A format specifiers
  in error messages, module name present in output.

  Integration: lint-files with %fix mode applies fixes and
  returns 0 unfixed count.
2026-04-04 14:14:30 +02:00
f512e0aced style: Dog fooding 2026-04-02 00:20:24 +02:00
d0115672dd First iteration 2026-04-01 23:35:50 +02:00