Skip to content

fix(web): tokenize mounted homepage hero chrome#10127

Merged
itstimwhite merged 2 commits into
mainfrom
codex/jov-2808-mounted-homepage-hero-shell-system-b
Jun 5, 2026
Merged

fix(web): tokenize mounted homepage hero chrome#10127
itstimwhite merged 2 commits into
mainfrom
codex/jov-2808-mounted-homepage-hero-shell-system-b

Conversation

@itstimwhite

@itstimwhite itstimwhite commented Jun 5, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Moves the mounted homepage hero shell and hero actions onto system-b-mounted-home-hero-* primitives.
  • Adds a final tokenized home.css System B contract for the active hero shell, copy, CTA, and first-viewport chrome.
  • Adds 100vh and token fallbacks behind @supports guards for 100svh and color-mix(...) refinements.
  • Adds a focused source guard for the mounted hero slice and fallback contract.

Verification Results

  • pnpm --filter @jovie/web exec vitest run tests/unit/home/mounted-home-hero-system-b-style-guard.test.ts — passed.
  • pnpm biome check --write 'apps/web/app/(home)/page.tsx' 'apps/web/app/(home)/home.css' apps/web/tests/unit/home/mounted-home-hero-system-b-style-guard.test.ts — passed.
  • pnpm --filter @jovie/web run typecheck -- --pretty false — passed.
  • git diff --check — passed.
  • Commit hook — proxy guard, lint-staged Biome/ESLint, web typecheck passed.
  • Pre-push hook — full Biome, proxy guard, Tailwind guard, web typecheck, web lint passed.

Screenshot Evidence

  • Desktop: /Users/timwhite/.codex/worktrees/7060/jov-2808-home-hero-surface-cluster-system-b/.gstack/design-reports/screenshots/jov-2808-homepage-hero-desktop-reviewfix.png
  • Mobile: /Users/timwhite/.codex/worktrees/7060/jov-2808-home-hero-surface-cluster-system-b/.gstack/design-reports/screenshots/jov-2808-homepage-hero-mobile-reviewfix.png

Browser metrics: desktop scrollWidth=1440, bodyWidth=1440, shell min-height=1100px; mobile scrollWidth=390, bodyWidth=390, shell min-height=844px; headline letter spacing resolves to normal; beam and grid display resolve to none.

Layout Stability

States checked: desktop hero, mobile hero, optional secondary CTA present, product rail present. The shell uses a 100vh fallback with 100svh guarded by @supports, CTA controls keep a fixed tokenized min-height, and the product rail remains in its existing reserved command-center slot.

Linear: JOV-2808

@linear-code

linear-code Bot commented Jun 5, 2026

Copy link
Copy Markdown

JOV-2808

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.

@coderabbitai

coderabbitai Bot commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

This PR implements System B mounted homepage hero styling by adding CSS primitives using design-system tokens, applying corresponding class names to the hero markup, and enforcing a source/CSS contract test to prevent styling leakage and maintain the design pattern integrity.

Changes

System B Mounted Homepage Hero

Layer / File(s) Summary
System B mounted hero CSS primitives
apps/web/app/(home)/home.css
Introduces .system-b-mounted-home-hero-* classes with System B tokens for stage/shell/inner/copy/headline/subhead/actions; hides existing hero beam/grid elements within mounted shell; defines flex layout and primary/secondary button/link styling with secondary hover/focus foreground swap.
Markup application of System B hero classes
apps/web/app/(home)/page.tsx
Updates hero stage, shell, inner, copy, and headline JSX elements with system-b-mounted-home-hero-* class names; applies classes to primary/secondary CTA link wrappers in HomepageHeroActions.
System B mounted hero source/CSS contract test
apps/web/tests/unit/home/mounted-home-hero-system-b-style-guard.test.ts
Enforces bidirectional contract: hero markup must contain required System B classes and avoid forbidden Tailwind patterns; hero CSS must contain expected System B tokens and layout rules while avoiding forbidden color/gradient/shadow/typography leakage.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related issues

  • JovieInc/Jovie#10125: This PR directly implements the goal of tokenizing the mounted homepage hero shell chrome by adding System B class names and CSS primitives in the same files.

Possibly related PRs

  • JovieInc/Jovie#9935: The main PR relies on --system-b-* design-system tokens that were introduced/normalized by this PR for the /download page, creating a direct styling-token dependency.

Suggested reviewers

  • jovie-bot

Poem

🐰 A hero now cloaked in System B's grace,
Class names and tokens in their rightful place,
CSS guards the contract with care,
No sneaky Tailwind leaks anywhere!
The mounted stage shines, pristine and bright. ✨

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly describes the main change: tokenizing the mounted homepage hero chrome using System B primitives, which aligns with the primary objective of moving the hero onto tokenized primitives and establishing a CSS contract.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/jov-2808-mounted-homepage-hero-shell-system-b

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@apps/web/app/`(home)/home.css:
- Around line 4791-4794: The CSS uses experimental features that need fallbacks:
wrap the min-height: 100svh declaration in a feature guard and add a 100vh
fallback for .system-b-mounted-home-hero-shell (use `@supports` (height: 100svh)
to apply the svh rule and leave a plain min-height: 100vh as the default), and
likewise guard each color-mix(in oklab, ...) usage (the color declarations
around ~4803, ~4863-4867) with `@supports` (color-mix(in oklab, white 0%)) or
similar and provide a non-color-mix fallback color (or a precomputed hex/oklch
value) as the base; update or keep the existing selectors (e.g.,
.system-b-mounted-home-hero-shell and the specific color rules) so older
browsers get the fallback values while modern browsers get the experimental
features.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 5c8c9694-7e84-4f8c-b0d2-ddfb6f45e359

📥 Commits

Reviewing files that changed from the base of the PR and between 4cf7473 and 6ebfc65.

📒 Files selected for processing (3)
  • apps/web/app/(home)/home.css
  • apps/web/app/(home)/page.tsx
  • apps/web/tests/unit/home/mounted-home-hero-system-b-style-guard.test.ts

Comment thread apps/web/app/(home)/home.css Outdated
@sentry

sentry Bot commented Jun 5, 2026

Copy link
Copy Markdown

✅ All tests passed.

@github-actions

github-actions Bot commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

CI Summary

A crisp snapshot of this PR run — executed vs. skipped, with timing for every key lane.

Risk: medium (smoke: false, preview: true, blocks unattended auto-merge: false)
Matched risk rules: public-ui
Machine artifact: ci-harness.v1.json uploaded to this workflow run.

Job Status Context Time
PR Ready (merge gate) ✅ Passed Executed 2s
CI Risk Classifier ✅ Passed Executed 1m 17s
Structural Contract ✅ Passed Executed 1m 22s
Env Example Guard ✅ Passed Executed 7s
Guardrails ✅ Passed Executed 19s
Biome ⚪️ Not run Skipped (job not applicable)
Migration Guard ✅ Passed Executed 14s
Neon DB ⚠️ Skipped Skipped (job not applicable) 0s
Drizzle Check ⚠️ Skipped Skipped (job not applicable) 0s
Build ⚠️ Skipped Skipped (job not applicable) 0s
Build (public routes) ✅ Passed Executed 3m 51s
Layout Guard ✅ Passed Executed 1m 6s
Lighthouse (public routes PR) ⚠️ Skipped Skipped (job not applicable) 0s
Lighthouse (dashboard PR) ⚠️ Skipped Skipped (job not applicable) 0s
Lighthouse (onboarding PR) ⚠️ Skipped Skipped (job not applicable) 0s
Lighthouse (admin PR) ✅ Passed Executed 3m 20s
A11y (axe) ⚠️ Skipped Skipped (job not applicable) 0s
Unit Tests ⚪️ Not run Skipped (conditional job)
E2E Smoke ⚠️ Skipped Skipped (job not applicable) 0s
Test Performance Budgets ⚠️ Skipped Skipped (job not applicable) 0s
E2E Tests ⚪️ Not run Skipped (job not applicable)
DB Migrate (PR main) ⚠️ Skipped Skipped (job not applicable) 0s
Preview Deploy ✅ Passed Executed 5m 33s

Run: 27019207062

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.

@sonarqubecloud

sonarqubecloud Bot commented Jun 5, 2026

Copy link
Copy Markdown

@itstimwhite

Copy link
Copy Markdown
Collaborator Author

⚠️ Merge Conflict Detected — This PR has state 'BLOCKED' and cannot be auto-merged.

Branch: 'codex/jov-2808-mounted-homepage-hero-shell-system-b'
State: BLOCKED

To resolve:

  1. git fetch origin main
  2. git checkout codex/jov-2808-mounted-homepage-hero-shell-system-b
  3. git rebase origin/main
  4. Fix any conflicts, then git rebase --continue
  5. git push --force-with-lease origin codex/jov-2808-mounted-homepage-hero-shell-system-b

This comment will not repeat for 2 hours.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant