fix(public): net the live site against WCAG 2.2 tap-target drift without blocking PRs - #152
Conversation
…out blocking PRs PR #22 (footer) and #25 (in-content) brought every link in public/styles.css up to the WCAG 2.2 SC 2.5.8 24px minimum, and scripts/test-public-link-targets.mjs guards the worktree sheet, but the backlog item keeps re-opening because the live site still serves the pre-fix stylesheet (June-20 bundle), so rendered in-content links are ~17px. PR #66 wired a live guard into the blocking npm test/ci chain, but PR #84 established that the blocking chains must stay green on repo state alone. Land the detector the same way #84 landed the soft-404 net: - scripts/check-public-live-tap-targets.mjs: fetches the deployed https://tinystudio.in/styles.css and re-asserts the five link rules the local suite requires (.top-nav a, .plain-list a, .product-links a, .rail-item strong a, .footer-links a: block-level box, min-height 24px, >= 4px vertical padding). A non-2xx response or a stylesheet that misses a rule fails loudly (the CodeRabbit P1 on #66); only a network-level failure skips, and SKIP_LIVE_CHECKS=1 is honored like the sibling live checks. - npm run site:check-live entry point now runs both live checks. - .github/workflows/live-site-check.yml gains a nightly + manual-dispatch live-tap-targets job. Verify: node --check clean; against the current live stylesheet the check reports 11 failures and exits 1 (the point of the net: public/ is compliant, the deployment is not - the red run is the signal to re-deploy from origin/main); npm test stays green (blocking chain untouched); git diff --check clean. Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
|
Warning Review limit reached
Next review available in: 45 minutes Limit details: You’ve used the included review currently available. Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits within each organization. For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Free Run ID: 📒 Files selected for processing (4)
Note 🎁 Summarized by CodeRabbit FreeYour organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login. Comment |
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
There was a problem hiding this comment.
Your trial has ended. Reactivate Greptile to resume code reviews.
PR #152 landed a live-tap-targets job in live-site-check.yml at the same place this branch adds live-social-preview. Kept both as separate jobs with the same scaffolding; YAML re-validated.
Workflow header comment conflicted with the WCAG tap-target wording PR #152 landed; merged both descriptions. package.json took main ci/test chains plus this PR site:check-live-heading-hierarchy script.
… live check now green (#221) PR #22 fixed only footer links; PR #25 (b0f5f06) brought the in-content links (top-nav, plain-list, product-links, rail-item strong a) up to the WCAG 2.2 24px minimum and is merged on main. Static guard: 77 checks, 0 failures. Live guard: 32 checks, 0 failures — the stale-deployment gap from the PR #152 lane is closed. Co-authored-by: minimax-vps <minimax-vps@MiniMax.local> Co-authored-by: CommandCodeBot <noreply@commandcode.ai>
What
The WCAG 2.2 SC 2.5.8 24px tap-target fix has been merged in source twice (PR #22 footer, PR #25 in-content) and
scripts/test-public-link-targets.mjsguards the worktree stylesheet (77 checks green on main). But the live site still serves the pre-fix June-20 bundle: rendered in-content links are ~17px, so the backlog item keeps re-opening.This PR lands the live detector the same way #84 landed the soft-404 net:
scripts/check-public-live-tap-targets.mjs— fetches the deployedhttps://tinystudio.in/styles.cssand re-asserts the five link rules the local suite requires (.top-nav a,.plain-list a,.product-links a,.rail-item strong a,.footer-links a: block-level box,min-height: 24px, ≥4px vertical padding). A non-2xx response or a stylesheet missing a rule fails loudly (the CodeRabbit P1 from fix(public): guard the live site against WCAG 2.2 tap-target drift (closes in-content link backlog item) #66); only a network-level failure skips;SKIP_LIVE_CHECKS=1honored like sibling live checks.npm run site:check-livenow runs both live checks..github/workflows/live-site-check.ymlgains a nightly + manual-dispatchlive-tap-targetsjob.Deliberately not part of
npm test/npm ci— blocking chains stay green on repo state alone (PR #84); the nightly workflow is the staleness alarm.Verify
node --check scripts/check-public-live-tap-targets.mjscleannode scripts/test-public-link-targets.mjs→ 77 checks, 0 failures (blocking chain untouched)node scripts/test-public-soft-404.mjs→ 19 checks, 0 failuresnode scripts/test-deploy-public-site-workflow.mjs→ 10 checks, 0 failures;node scripts/test-pages-release.mjs→ 38 checks, 0 failuresgit diff --checkcleanSupersedes the stale, conflicting PR #107 (same change shape, now out of date against main's third live-check job).
Resolve
Once the Pages token is provisioned (the documented release-lane blocker), re-deploy from origin/main and this check must report 0 failures.