Use when changing Hussh frontend structure, route contracts, package-level conventions, or frontend verification ownership.
Recursos
1Instal·la
npx skillscat add hushh-labs/hushh-research/frontend-architecture Instal·la des del registre de SkillsCat.
SKILL.md
Hussh Frontend Architecture Skill
Purpose and Trigger
- Primary scope:
frontend-architecture - Trigger on frontend structure, route contracts, package conventions, shared frontend governance rules, and verification ownership.
- Avoid overlap with
frontend-design-systemandfrontend-surface-placement.
Coverage and Ownership
- Role:
spoke - Owner family:
frontend
Owned repo surfaces:
hushh-webapp/lib/navigationhushh-webapp/scripts/architecturehushh-webapp/package.jsondocs/reference/architecture/route-contracts.md
Non-owned surfaces:
frontendmobile-nativedocs-governance
Do Use
- Route-container and route-contract work.
- Frontend package-script and verification ownership changes.
- Shared frontend structure and governance decisions affecting multiple routes or folders.
Do Not Use
- Broad frontend intake where the correct spoke is still unclear.
- Purely visual design-system work where structure is not changing.
- Native-only plugin or parity work.
Read First
hushh-webapp/package.jsonscripts/ci/web-check.shdocs/reference/operations/ci.mddocs/reference/quality/frontend-ui-architecture-map.mddocs/reference/architecture/route-contracts.mddocs/reference/architecture/ui-contract-contributor-guide.md
Workflow
- Inspect current package scripts, route contracts, and frontend docs before changing structure. Read the UI contributor scaffold and run
cd hushh-webapp && npm run ui:doctorbefore UI edits; review Back cases and Search actions, then generate withnpm run build:ui-contractsand verify withnpm run verify:ui-contracts. - Keep CI and local package verification aligned when adding or changing frontend rules.
- Centralize route-container behavior in
AppPageShellorFullscreenFlowShell; signed-in routes useAppPageHeaderRegion/PageHeaderrather than route-local hero or logo chrome. - Keep signed-in route families covered by the contract-driven browser sweep.
- When adding Playwright route coverage, distinguish cold-entry checks from Next.js client navigation checks. Browser tests that assert memory, vault, cache, or provider continuity must run as a sequential UI-navigation lane through shell controls with a same-document navigation probe, or use the signed-in route sweep;
page.goto(...)alone is cold-entry evidence. - Keep Playwright
baseURL,webServer.url, and the dev-server port in one configuration path so local browser proof does not silently wait on a different origin than the one being tested. - For every added, renamed, or split app route, run the route contract cascade in one change:
ROUTES, route builders, breadcrumbs, bottom-nav/sign-in coverage, route layout contract, generated surface map, cache manifest, voice action reachability, native inventory, docs, and focused route tests. - Durable workspace panels should use finite nested routes when the route set is bounded. Keep query params for transient state, OAuth/redirects, filters/pagination, and static-export-sensitive identifiers.
- For a frontend runtime or bundle failure, reproduce it on the affected route and shipped engine, isolate the route/state/build boundary, fix the cause, then keep one focused regression. A working dev-server fallback does not prove the production or native bundle. Follow Toss's diagnose/reproduce/fix/prevent loop without copying its tooling into this repo.
Handoff Rules
- If the request is still broad or ambiguous, route it back to
frontend. - If the task is shared visual-system ownership, use
frontend-design-system. - If the task is deciding where code belongs between layers, use
frontend-surface-placement. - If the task begins as a cross-domain scan, start with
repo-context.
Required Checks
cd hushh-webapp && npm run verify:docs
cd hushh-webapp && npm run typecheck
cd hushh-webapp && npm run verify:routes
cd hushh-webapp && npm run ui:doctor