This repo had no CI. `nix build` alone would be close to worthless here:
mkLogosQmlModule only copies src/qml, so a green build is perfectly compatible
with `import Logos.Thmee` — and an unresolved import takes the WHOLE view down
at runtime, with the only useful message going to the host's stderr.
So CI runs the two pre-flight gates from the README as well. The design system
is checked out as a plain repo rather than added as a flake input: it is
static-linked into the host binary, so the plugin declares nothing, and adding
a lock entry for a lint's sake would be a real dependency for a tooling need.
Gate B's pass condition is exit 124, which deserves the comment it has: the
view is an Item rather than a Window, so a healthy load runs the event loop
until timeout kills it. Measured all three cases — healthy 124, bad import 2,
unknown property 2 — because the first draft treated a zero exit as success and
would have been permanently red on good input. The grep remains for
style-customization rejections, which arrive as qWarnings and change no exit
code.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>