check:push
Prevents .husky/pre-push failures. Command mirrors CI quality + mothership hook freshness (no dashboard build).
Run
pnpm check:push
Equivalent to:
pnpm lint && \
pnpm --filter pockethost check:types && \
pnpm --filter phio check:types && \
pnpm --filter @pockethost/dashboard check:types && \
pnpm check:mothership-hooks && \
pnpm test
Procedure
- Run
pnpm check:pushfrom repo root. - On failure, fix only what the output names. Re-run the failing step (or full
check:pushbefore push). - Repeat until exit code 0.
- Only then suggest
git pushor create the PR.
Do not use --no-verify unless the user explicitly asked to skip hooks.
Failure triage
Prettier (pnpm lint)
pnpm lint:fix
Or format touched files only. Re-run pnpm lint.
Types — pockethost
pnpm --filter pockethost check:types
Types — phio
pnpm --filter phio check:types
Types — dashboard
pnpm --filter @pockethost/dashboard check:types
Mothership hooks stale
pnpm --filter pockethost-mothership-app build
Commit regenerated pb_hooks/, then re-run pnpm check:mothership-hooks.
Tests
pnpm test
For a single file: pnpm vitest run path/to/file.test.ts
Dashboard build (CI only)
Pre-push does not run dashboard build. svelte-check will not catch prerender failures.
Run pnpm check:ci (adds dashboard build) before push or merge when you changed any of:
- Files under
packages/dashboard/src/routes/(static)/ $page.url,page.url.searchParams, query-string banners, or URL-driven UI+layout.ts/+page.tswithprerender,ssr, orcsrsvelte.config, Vite config, or static adapter settings
pnpm check:ci
Prerender build failure
Symptom: Cannot access url.searchParams on a page with prerendering enabled or Error: 500 /some-route during vite build.
Fix: see Prerender (static routes) in .cursor/rules/dashboard-ux.mdc. Usually guard with browser or move the read to onMount. Re-run pnpm check:ci.
Pair with commit
After /commit or when commits are done and push is next, run check:push before git push.
Report
State pass/fail, what you fixed, and that the branch is safe to push (or what still blocks).