openpencil/crates/op-design-lint
Fini 4ae03919f9 refactor(agent): move the surface classifier below the orchestrator
The design lint detectors need the same answer the repair passes do —
what kind of surface is this root — and the detectors sit in a crate
below the orchestrator, so the judge has to live there too. Otherwise
each detector would re-derive the form from a width comparison of its
own, which is precisely the drift the single classifier exists to stop.

Nothing changes behaviourally: the orchestrator re-exports the types so
every existing import path still resolves, `detect_all` classifies its
own root, no detector branches on the form yet, and the plan layer's
mobile-width constant now aliases the classifier's band instead of
carrying a second copy of the number.

Claude-Session: https://claude.ai/code/session_01FqKQqNj8exYwopGDpYUU7x
2026-08-09 19:56:12 +08:00
..
src refactor(agent): move the surface classifier below the orchestrator 2026-08-09 19:56:12 +08:00
tests fix(agent): lint mobile section rails 2026-07-24 00:10:29 +08:00
Cargo.toml refactor: dedupe cross-crate code and converge hardcoded literals 2026-07-26 11:24:22 +08:00