jig-ui 0.26.2 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,64 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.27.0 (2026-10-14)
4
+
5
+ `check` finds Tailwind classes that do nothing, by asking your own Tailwind,
6
+ and a new rule says when a link should open a new tab.
7
+
8
+ ### Added
9
+
10
+ - **`check` reports a Tailwind class that generates no CSS.** Tailwind v4
11
+ writes nothing for a class whose value no token declares, and says nothing,
12
+ so `min-h-touch` with no `--spacing-touch` left a button at 22px and passed
13
+ every check. `check` now asks the project's own Tailwind which classes in the
14
+ markup are utilities that generate nothing, and reports them as a missing
15
+ token. A class the project names and styles itself is left alone. When the
16
+ project uses Tailwind v4 and it cannot be asked, the report says so.
17
+ - **A link that opens a new tab for no reason (`E-165`).** Same tab by
18
+ default; a new tab only where leaving would lose the reader's work, and then
19
+ the link says "(opens in a new tab)". `check` warns on a new-tab link that
20
+ never says so.
21
+
22
+ ### Fixed
23
+
24
+ - **`duration-fast` works as a Tailwind class.** Tailwind reads durations from
25
+ `--transition-duration-*`, and the alias file `init` writes said durations
26
+ had no utility at all. It now aliases them under that name. `init` asks the
27
+ project's own Tailwind which aliases generate a utility, and keeps its own
28
+ list only for a project where Tailwind is not installed yet. That list was
29
+ also wrong about opacity, which has a utility, and `--shadow-none`, which
30
+ does not.
31
+
32
+ ## 0.26.3 (2026-10-14)
33
+
34
+ Form text in `operator` stops making phones zoom, and `check` catches three
35
+ things it missed or got wrong.
36
+
37
+ ### Fixed
38
+
39
+ - **`operator` body text is 16px on touch screens.** At 14px, any input set in
40
+ the body size, or inheriting it, made iOS zoom the page when it took focus.
41
+ Under a coarse pointer the body token now rises to 16px, beside the rows
42
+ that already rose to the touch target. A mouse keeps the dense 14px.
43
+ - **`check` reads form text that inherits its size.** An input that wrote
44
+ `font: inherit` under a 14px body went unreported, and so did any page with
45
+ a touch-screen query, whatever that query changed. A touch query now counts
46
+ only when it raises form text.
47
+ - **Low contrast in small inline text is reported.** Text sized no larger than
48
+ the text around it (`0.9em`, `85%`, `smaller`) was read as possibly large and
49
+ held to 3:1, so an inline code span at 4.03:1 passed. It is held to 4.5:1.
50
+ - **A pale red is not cream.** The cream-palette warning fired on a red status
51
+ tint behind an "Overdue" badge. It now needs a tint that leans toward yellow,
52
+ and leaves alone a token named for a state or a component.
53
+ - **A signed-in page without a spec is not asked for search metadata.** A
54
+ review took every page without a spec as public. It now takes the project's
55
+ mode when `jig.config.json` declares one, so an `operator` or `product`
56
+ page is asked for `noindex` instead of a description and a link preview.
57
+ - **A table's scroll box holds what is hidden inside it.** The layout method
58
+ now says the box a wide table scrolls in is `position: relative`. Without
59
+ it, a label hidden for screen readers in each row was placed against the
60
+ page, and an invoices page scrolled sideways by 200px on a phone.
61
+
3
62
  ## 0.26.2 (2026-10-13)
4
63
 
5
64
  A button in a table row keeps the row's height, and the render probe reports
package/README.md CHANGED
@@ -27,13 +27,13 @@ later.
27
27
  Jig is **a skill your coding agent reads**, and **a CLI you can run yourself**.
28
28
  They are two halves of the same thing, and the split is not arbitrary:
29
29
 
30
- - Of the 160 rules, **40 can be decided by a machine** — a hard-coded colour, a
30
+ - Of the 161 rules, **41 can be decided by a machine** — a hard-coded colour, a
31
31
  contrast ratio below the floor, a removed focus ring. The CLI decides those.
32
32
  - The other **120 are judgment** — whether an empty state says anything useful,
33
33
  whether a label reads as an instruction, whether motion earns its place. No
34
34
  regex settles those. An agent reads the rules and applies them.
35
35
 
36
- Running only the CLI gets you the 40. Running only the agent gets you the 120 with
36
+ Running only the CLI gets you the 41. Running only the agent gets you the 120 with
37
37
  no verification. **A clean `jig check` is not a clean review**, and the skill
38
38
  says so to every agent that reads it.
39
39
 
@@ -797,7 +797,7 @@ treatment.
797
797
 
798
798
  | File | Contents |
799
799
  | --- | --- |
800
- | `rules/00-anti-patterns.md` | 129 universal rules with corrections |
800
+ | `rules/00-anti-patterns.md` | 130 universal rules with corrections |
801
801
  | `rules/01-modes.md` | `editorial` / `product` / `operator` profiles |
802
802
  | `rules/02-tokens.md` | Token contract, naming, consumption |
803
803
  | `rules/03-patterns.md` | Component anatomy and behaviour |