From 0cb28022fb132d9d5390a08c11ab39d2d896451f Mon Sep 17 00:00:00 2001 From: Dmitriy Vasilev Date: Wed, 23 Sep 2026 13:11:47 +0700 Subject: [PATCH] fix(queen): cite the law that exists, and show it on the tab that measures it Two files here cited "trios CLAUDE.md, law L0" for the rewrite goal. That file carries L1-L9 about shell scripts, Closes #N, clippy, tests and port 9005. There was no L0 in it, in t27, or anywhere else - the citation did not resolve, which is exactly what the honesty law removes. It resolves now: L0 PURPOSE was adopted in the t27 constitution (gHashTag/t27 #4606) as an addition rather than a rewrite, with the two exceptions this board already describes - the seed stays hand-written Rust, the interface stays Swift and TSX. Both citations are corrected to name it. And the ROADMAP tab now shows it. The tab measured the goal for days with nothing behind the number: a visitor could see 5.6% and had no way to know whether that was an ambition or a rule. It is a rule, and the number IS its enforcement - the share may not fall - so the two belong on the same screen. Contracts: language 375/375, fallback parity 179/179, contrast 24 pairs worst 5.39:1, typecheck ratchet unchanged, build clean. Co-Authored-By: Claude Opus 5 --- apps/website/scripts/roadmap-stack.mjs | 3 ++- apps/website/src/components/QueenRoadmap.tsx | 20 +++++++++++++++++++- apps/website/src/components/queenRoadmap.css | 15 +++++++++++++++ 3 files changed, 36 insertions(+), 2 deletions(-) diff --git a/apps/website/scripts/roadmap-stack.mjs b/apps/website/scripts/roadmap-stack.mjs index f4b370db0d..dd6de86126 100644 --- a/apps/website/scripts/roadmap-stack.mjs +++ b/apps/website/scripts/roadmap-stack.mjs @@ -2,7 +2,8 @@ // Measure what the t27 stack is written in, for the ROADMAP tab. // // The game's goal is one language: everything below the interface in .t27, -// generated to its target (trios CLAUDE.md, law L0). A roadmap toward that is +// generated to its target (law L0 PURPOSE, gHashTag/t27 docs/T27-CONSTITUTION.md +// section 2). A roadmap toward that is // only honest if it starts from a count anyone can reproduce, so this reads the // files git TRACKS in each repository that runs app.t27.ai, at a named commit, // from GitHub's tree API - sizes without a checkout. The first version cloned diff --git a/apps/website/src/components/QueenRoadmap.tsx b/apps/website/src/components/QueenRoadmap.tsx index 6017261693..3e6ce3fd36 100644 --- a/apps/website/src/components/QueenRoadmap.tsx +++ b/apps/website/src/components/QueenRoadmap.tsx @@ -1,5 +1,6 @@ // ROADMAP: the game's goal, measured. Everything below the interface in .t27, -// generated to its target (trios CLAUDE.md, law L0) - and how far the stack +// generated to its target (law L0 PURPOSE, gHashTag/t27 docs/T27-CONSTITUTION.md +// section 2) - and how far the stack // that runs app.t27.ai is from that today, repository by repository and // language by language. // @@ -107,6 +108,8 @@ const COPY = { joinLendBody: 'No time to write code? A bee runs on somebody’s provider API key. Lend one and its work earns you XP on the leaderboard — several providers give a key away for nothing.', joinLearn: 'How to join, step by step', + law: 'Law L0 PURPOSE', + lawBody: 'This is not an ambition, it is a law: L0 in the constitution, enforced by the number above \u2014 the .t27 share may not fall.', }, ru: { title: 'ДОРОЖНАЯ КАРТА', @@ -139,6 +142,8 @@ const COPY = { joinLendBody: 'Нет времени писать код? Пчела работает на чьём-то API-ключе провайдера. Одолжите свой — и его работа принесёт вам XP в лидерборде; несколько провайдеров выдают ключ бесплатно.', joinLearn: 'Как присоединиться, по шагам', + law: 'Закон L0 PURPOSE', + lawBody: 'Это не стремление, а закон: L0 в конституции, и проверяется он числом выше — доля .t27 не должна падать.', }, } as const @@ -275,6 +280,19 @@ export default function QueenRoadmap({ lang }: { lang: 'en' | 'ru' }) {

{c.goal}

{c.goalBody}

+ {/* The goal was measured here for days with no law behind it, while + the board's own source cited an L0 that did not exist anywhere. + It exists now, so the tab cites the real one. */} +

+ + {c.law} + {' '} + {c.lawBody} +

diff --git a/apps/website/src/components/queenRoadmap.css b/apps/website/src/components/queenRoadmap.css index 02cd4ab32d..c0d2da7fe6 100644 --- a/apps/website/src/components/queenRoadmap.css +++ b/apps/website/src/components/queenRoadmap.css @@ -359,3 +359,18 @@ a.rm-chip:hover { .rm-join-lend b { color: var(--hud-gold, #ffd700); } + +/* The law behind the number. */ +.rm-law { + margin-top: 10px !important; + font-size: 13px; +} +.rm-law a { + color: var(--hud-gold, #ffd700); + text-decoration: none; + border-bottom: 1px solid rgba(255, 215, 0, 0.4); +} +.rm-law a:hover, +.rm-law a:focus-visible { + border-bottom-color: var(--hud-gold, #ffd700); +}