Repository navigation
Jig 0.5.0
Four things shipped in 0.4.0 were broken in ways that reported success. /jig update refreshed to the version already installed and said "Updated Jig → 0.4.0". Dark mode could not be reached by choosing it. check skipped nearly every colour in a project that had not run init. And operator prose sat at 16px against the 18px floor its own rule states.
Upgrading from 0.4.0 — one manual step
npx jig-ui@latest updateRun it from a terminal, not as /jig update. The fix cannot deliver itself: your command file is the broken one, so the slash command will keep reporting a successful no-op until the CLI replaces it. Once, from the terminal, and the slash command works from then on.
Fixed
/jig updatecould never upgrade anyone. Every subcommand runs at the installed pin so the CLI and the vendored rules agree.updateis the one exception, since its job is to move that pin — the skill file knew that and the slash command did not.- Dark mode was unreachable by explicit choice. One dark block, inside
@media (prefers-color-scheme: dark). A selector in a media query cannot match when the query is false, sodata-theme="dark"on a light-mode system produced no dark tokens at all. checkdid not resolve your own tokens. The token map held only Jig's vendored files, so anyvar(--your-token)was unresolvable and silently skipped.operatorprose at 16px — the mode most likely to be read for hours.- Rules cited tokens that do not exist (
--color-danger,--color-surface,--leading-heading,--leading-display,--font-weight-body,--spacing-unit). An agent following those wrote avar()resolving to nothing.
Added
P-13 · Ambient motion— slow, looping, decorative movement.G-44had forbidden all of it by stating a 300ms ceiling it never scoped.--duration-ambient-fast/base/slow(3s / 4.7s / 7.1s),editorialonly. Mutually prime so layered loops never re-align into one visible pulse.- Fluid headings.
--text-h1and--text-h2areclamp()ineditorialandproduct. Every term isrem-based — apxbound ignores the reader's font-size preference, which fails WCAG 1.4.4. explainfinds rules you cannot name.jig explain contrastsearches every title and body;--listprints every id.
Changed — worth knowing before you upgrade
--text-h1 now resolves to 32px on a 360px viewport, not 48px. This is the change most likely to be visible in an existing project. At a fixed 48px, a 45-character headline set as four lines and 211px of headline on a phone.
Reconciliation complete
RECONCILE.md is at 0 open rows. Every numeric default is adopted from the reference or deliberately kept with its argument stated in one line.
check-tokens grew from 5 rules to 12, each mutation-tested. Two exist because a guard had been passing vacuously: one regex covered 103 of 133 tokens while claiming all of them, and nothing checked that a token cited in the rules exists.
Full changelog: https://github.com/timessuman/jig/blob/main/CHANGELOG.md