From f3df69407bbac8b7196646c22ac4bcbf8d34bbd9 Mon Sep 17 00:00:00 2001 From: Varna Sri Raman Date: Wed, 23 Sep 2026 02:28:35 +0000 Subject: [PATCH] Fix the row opacity compounding, and the test count this repo states twice Two things, both a number or a rule that nothing checked. The CSS. `.row span { opacity: .7 }` matched more than the tag it was written for: `.t` is itself a span wrapping the title and the tag, so the selector applied to the tag twice (0.7 x 0.7 = 0.49) and to the title once. On this landing page that put 12 tags at #84827f on #f6f2ea, 3.43:1 at 10.56px against AA's 4.5:1, and dimmed 12 row titles that `.row b { font-weight: 600 }` exists to make prominent. Scoped to `.row .t > span`: tag 6.98:1, title 17.39:1, hover 8.68:1. assets/css/stack.css is byte-identical across the four stack repositories by design, so the change lands in all four. Counted before: InsightStack 18 elements, EquityStack 12, SignalStack 7, FieldStack 0 (different markup on its landing page). After, on all four: 0 serious or critical axe violations at 1280x900 and 390x844, no overflow. The test count. CLAUDE.md's Testing section said 25 tests and the header comment in requirements.txt said 25, while CLAUDE.md's own Layout section fifteen lines earlier said 101. The suite is 101, run today against the pinned set on Python 3.11. Two numbers for one suite in one repository, disagreeing with each other and with pytest, and nothing compared any of them. Both corrected to 101, with a line recording that the disagreement was there and unnoticed. Note the suite still emits pydantic @validator deprecation warnings, which CLAUDE.md already flags: the pin holds pydantic at 2.13.5 and @validator is removed in 3, so whoever raises it moves those to @field_validator in the same change. Also checked while here: pip-audit over the pinned set reports no known vulnerabilities. It flags setuptools 79.0.1, which is the venv's own build tooling and is required by nothing in requirements.txt except under dev, testing and build extras. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01MrvR2NXsJFVRCeJZFCPuNL --- CLAUDE.md | 7 ++++++- assets/css/stack.css | 11 ++++++++++- requirements.txt | 2 +- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index a9464cb..c52926c 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -44,7 +44,12 @@ Two things a future session should know: ## Testing `.github/workflows/python-tests.yml` runs `pytest tests/` on pull requests and -pushes to main. 25 tests. +pushes to main. **101 tests**, verified on 2026-09-23 against the pinned set on +Python 3.11. + +This said 25 for as long as the file existed, and so did the header comment in +`requirements.txt`, while the Layout section above said 101. Two numbers for one +suite, in one repository, and nothing compared either against `pytest`. ``` pip install -r requirements.txt diff --git a/assets/css/stack.css b/assets/css/stack.css index d44bd78..cb49da2 100644 --- a/assets/css/stack.css +++ b/assets/css/stack.css @@ -129,7 +129,16 @@ a { color: inherit; text-decoration: none; } transition: background .12s, color .12s; } .row:hover, .row:focus-visible { background: var(--ink); color: var(--bg); } .row b { font-weight: 600; font-size: .95rem; } -.row span { font-family: var(--mono); font-size: .66rem; opacity: .7; white-space: nowrap; } +.row span { font-family: var(--mono); font-size: .66rem; white-space: nowrap; } +/* Opacity belongs on the tag, not on every span in the row. `.t` is itself a + span wrapping the title and the tag, so `.row span { opacity: .7 }` applied + twice to the tag (0.7 x 0.7 = 0.49) and once to the title. Measured on the + InsightStack landing page: the tag came out #84827f on #f6f2ea, 3.43:1 at + 10.56px, failing AA on 18 elements, and every row title rendered at 70% + opacity, which is the opposite of what `.row b { font-weight: 600 }` is for. + The comment below already records the same selector doing the same thing to + white-space; that was scoped and this was not. */ +.row .t > span { opacity: .7; } /* --- calculator layout --------------------------------------------------- */ .calc { display: grid; grid-template-columns: 1.05fr .95fr; gap: 0; diff --git a/requirements.txt b/requirements.txt index 2dda487..190acae 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ # failure waiting for a quiet week. # # Every version below was resolved together and verified on Python 3.11 with the -# full test suite green (25 tests). Raise them deliberately, together, and re-run +# full test suite green (101 tests). Raise them deliberately, together, and re-run # the suite; do not let a resolver do it silently. pandas==2.3.3