Files
wehub-resource-sync a1fa97429b
Release / Tag + GitHub Release (push) Waiting to run
Deploy Documentation to Pages / build (push) Waiting to run
Deploy Documentation to Pages / deploy (push) Blocked by required conditions
Sync Codex Skills Symlinks / sync (push) Waiting to run
chore: import upstream snapshot with attribution
2026-07-13 12:41:47 +08:00

3.2 KiB

description, argument-hint
description argument-hint
Frontend engineering review — walks the 7 Matt Pocock forcing questions (device, LCP target, rendering, bundle budget, SEO vs auth, design system, WCAG), picks the framework + rendering profile, forks into specialists (a11y-audit, performance-profiler, epic-design). Invokes the cs-frontend-engineer agent with context fork. <problem or surface to review>

/cs:frontend-review — Frontend engineering review

Use the cs-frontend-engineer agent (uses context: fork) to handle this inquiry:

$ARGUMENTS

Forcing-question library

Canonical source: engineering-team/skills/senior-frontend/references/forcing_questions.md (7 questions, one-per-turn, recommendation + canon citation per question).

  1. Primary device + network (desktop-fiber / mobile-4G / low-end Android / corporate)
  2. LCP target on primary device (milliseconds)
  3. Server Components vs SPA vs SSR vs SSG
  4. JS bundle budget per route (KB gzipped)
  5. SEO-dependent or auth-walled
  6. Design-system location (Figma + tokens / ad-hoc Tailwind / headless UI)
  7. WCAG target (AA / AAA / best-effort) + accessibility owner

Routing protocol

  1. Walk the 7 forcing questions in engineering-team/skills/senior-frontend/references/forcing_questions.md. One per turn. Recommend with cited canon. Track in /tmp/frontend-grill-<date>.md.
  2. Surface kill criteria — e.g., "SEO-dependent + SPA-only" trips. STOP and resolve.
  3. Run the deterministic profile picker:
    python engineering-team/skills/senior-frontend/scripts/frontend_decision_engine.py \
      --primary-device <mobile-4g|desktop-fiber|low-end-android|corporate-network> \
      --lcp-target-ms <N> --seo-dependent <true|false> \
      --auth-walled <true|false> --team-size <N>
    
  4. Surface the matched profile + runner-up tradeoff (if within 15%).
  5. Fork into specialists (one at a time, depth-first):
    • a11y-audit for WCAG baseline (always)
    • performance-profiler for CWV baseline + bundle audit
    • epic-design only for astro-or-static marketing surfaces
    • apple-hig-expert only for Apple-platform-native surfaces
    • dependency-auditor before any major release
    • cs-karpathy-reviewer before any commit

Output expectations (≤ 200-word digest)

  • Matched profile + reason
  • Three CWV targets (LCP, INP, CLS) at p75 on the primary device
  • Per-route JS bundle budget in KB-gzip
  • Named a11y owner
  • List of specialists invoked + artifact paths
  • Recommended next sub-skill

Anti-patterns

  • Recommending Next App Router as a universal default. Device + SEO + auth decide rendering.
  • Setting "fast" as a target. Pick a number in ms.
  • Skipping a11y-audit on customer-facing surface.
  • Reimplementing perf-profiling logic. Fork into performance-profiler.

Customization

Profiles live at engineering-team/skills/senior-frontend/profiles/. Four built-in: next-app-router, remix-or-sveltekit, vite-spa, astro-or-static. Copy one to <your-org>.json and adjust to add your org's defaults.

  • /cs:fullstack-review — full-stack lens (parent)
  • /cs:backend-review — for API contract on the consumer side
  • /cs:engineer-grill — cross-role 21-question grill
  • /karpathy-check — Karpathy 4-principle review