garrytan and capy-ai[bot]
df6cd725c2
design-lint: second review cycle
...
Waivers settle once per page after both tiers, so a blocking rule only the
render tier suspects is waivable and one it measures is refused; a claim in a
stylesheet answers for that stylesheet on every page that links it (no
shared-word check), so a sheet shared by two pages is no longer waived on one
and refused on the other. Every printed field is one line with control
characters stripped; the waiver regex is linear and ends at a carriage
return; a root-relative href cannot climb out of the lint root. The ancestor
map closes optional end tags implicitly and pops to the matching open tag, so
unclosed <li> no longer makes it quadratic. The static tier reports outline:
none with no ring anywhere as missing-focus-visible at its line;
literal-outside-tokens needs a --color-* or --font-* token to exist; the
banned gradient includes indigo-to-violet; a new banned-font rule reads
gstack's BANNED_FONTS; MONO_FACE matches whole words; bold keywords and
tokens count as weight 700 for the contrast threshold. stylesFor reads only
the entries that can match; glOcclusion memoises the pinned walk; the
confirm screenshot is taken at 1x; a page that throws in the render tier is a
render finding and the CLI exits 3 on an internal error. Docs name the token
conventions and what the lint does not cover.
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
2026-10-26 07:44:56 +00:00
..
2026-10-08 16:17:18 +00:00
2026-06-09 22:29:23 -07:00
2026-10-04 07:58:41 -07:00
2026-10-20 00:24:28 +00:00
2026-10-20 23:55:41 +00:00
2026-10-20 00:24:28 +00:00
2026-10-07 23:29:05 +00:00
2026-09-21 12:27:25 -04:00
2026-10-20 23:55:41 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-10 23:26:08 +00:00
2026-10-07 23:29:05 +00:00
2026-10-07 23:29:05 +00:00
2026-10-26 04:32:27 +00:00
2026-10-17 21:17:39 +00:00
2026-10-17 21:17:39 +00:00
2026-10-26 04:32:27 +00:00
2026-04-18 15:05:42 +08:00
2026-10-25 01:00:05 +00:00
2026-10-17 02:40:45 +00:00
2026-10-17 01:52:40 +00:00
2026-10-04 07:58:41 -07:00
2026-10-16 22:00:32 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-16 22:00:32 +00:00
2026-10-20 00:24:28 +00:00
2026-10-11 00:32:15 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-07 23:29:05 +00:00
2026-10-04 07:58:41 -07:00
2026-10-19 23:31:59 +00:00
2026-10-20 00:24:28 +00:00
2026-10-03 07:54:09 -07:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-03 16:13:45 -07:00
2026-10-26 00:29:01 +00:00
2026-10-20 01:06:17 +00:00
2026-10-25 22:31:08 +00:00
2026-10-26 07:44:56 +00:00
2026-10-20 00:24:28 +00:00
2026-08-31 08:55:30 -07:00
2026-10-26 04:32:27 +00:00
2026-10-25 12:39:53 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-22 20:10:23 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-20 23:55:41 +00:00
2026-10-20 00:24:28 +00:00
2026-10-06 23:42:19 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-03-26 11:15:24 -06:00
2026-10-16 22:00:32 +00:00
2026-06-25 09:42:45 -07:00
2026-10-24 23:55:21 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-26 04:32:27 +00:00
2026-05-21 21:21:07 -07:00
2026-10-04 07:58:41 -07:00
2026-10-20 00:24:28 +00:00
2026-10-25 05:06:30 +00:00
2026-10-26 04:32:27 +00:00
2026-10-20 00:24:28 +00:00
2026-04-24 01:38:21 -07:00
2026-10-25 16:35:45 +00:00
2026-10-25 11:48:39 +00:00
2026-10-20 00:24:28 +00:00
2026-10-14 17:36:39 +00:00
2026-10-26 04:32:27 +00:00
2026-10-08 20:05:06 +00:00
2026-10-11 16:48:11 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-04 07:58:41 -07:00
2026-10-20 00:24:28 +00:00
2026-10-08 15:43:32 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:46:42 +00:00
2026-10-26 04:32:27 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-17 00:41:41 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 23:55:41 +00:00
2026-03-30 22:25:46 -06:00
2026-10-11 16:48:11 +00:00
2026-10-03 07:54:09 -07:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 23:55:41 +00:00
2026-10-07 23:29:05 +00:00
2026-10-25 10:50:18 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-26 04:32:27 +00:00
2026-10-02 11:11:00 -07:00
2026-10-19 23:31:59 +00:00
2026-10-20 00:24:28 +00:00
2026-10-01 11:57:48 -07:00
2026-10-20 00:24:28 +00:00
2026-10-04 07:58:41 -07:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-20 00:24:28 +00:00
2026-10-01 13:55:16 -07:00
2026-10-16 22:00:32 +00:00
2026-10-04 07:58:41 -07:00
2026-10-10 23:26:08 +00:00
2026-10-25 22:45:05 +00:00
2026-10-26 04:32:27 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-20 00:24:28 +00:00
2026-10-17 03:32:16 +00:00
2026-10-25 16:22:14 +00:00
2026-10-26 00:14:08 +00:00
2026-10-26 04:32:27 +00:00
2026-10-20 00:24:28 +00:00
2026-10-01 11:57:48 -07:00
2026-10-20 00:24:28 +00:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-01 11:57:48 -07:00
2026-10-26 04:32:27 +00:00
2026-10-26 04:32:27 +00:00
2026-10-20 00:24:28 +00:00
2026-10-08 20:05:06 +00:00
2026-10-17 03:32:16 +00:00
2026-10-17 00:06:43 +00:00
2026-10-01 11:57:48 -07:00
2026-10-25 02:04:24 +00:00
2026-10-20 00:24:28 +00:00
2026-10-11 16:48:11 +00:00