Conversation
- Add ci-web.yml: parallel lint, typecheck, integration tests on every PR/push to dev and main; e2e tests run only on PRs targeting main - Fix eas.yml: move credentials setup before Android build (was after), split into preview (PRs) and production (push to main) jobs, fix workflow_dispatch submit condition, remove false-positive PR comment - Simplify pre-commit to fast lint-only (web + mobile staged files) - Simplify pre-push to typecheck for web, lint for mobile; remove e2e from local hooks (moved to CI where a server can be provisioned) - Add CLAUDE.md with codebase documentation Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- playwright.config.ts: uncomment webServer (pnpm start) and baseURL so e2e tests have a server to connect to; was failing with ECONNREFUSED - ci-web.yml: install all Playwright browsers (not just chromium) to match the three active projects in playwright.config.ts; remove redundant NEXT_PUBLIC_APP_URL from test step (baked in at build time) - eas.yml: gate OTA update on push or dispatch-with-platform=all so a partial platform build cannot push a mismatched JS bundle - eas.yml: re-add OTA deploy to the preview branch (was dropped in the previous refactor, leaving preview-channel testers on stale builds) - eas.yml: remove unconditional store submission on push; submission now requires explicit workflow_dispatch with submit=true and the correct platform selection, preventing accidental store releases on every merge - eas.yml: add platform guard to submit steps so iOS submit cannot run when only an Android build was produced (and vice versa) - pre-push: fix fallback diff to use merge-base against origin/main instead of HEAD~1 which was empty on first push of a new branch, silently skipping all typecheck/lint hooks Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- playwright.config.ts: webServer.command now uses 'pnpm start' in CI (app already built by Build app step) and 'pnpm dev' locally (no prior build required), fixing cold-start breakage for developers - pre-push: switch two-dot to three-dot range (origin/BRANCH...HEAD) so only commits being pushed are diffed, not the entire working tree — unstaged files no longer trigger checks spuriously - eas.yml: pin eas-version to '16.13.3' in both preview and production jobs (restored from original); expo-github-action resolves 'latest' at runtime so an EAS CLI breaking release would have silently hit both pipelines simultaneously with no canary - eas.yml: add 'pnpm-lock.yaml' to pull_request paths, mirroring the push trigger; a lockfile-only dependency bump now correctly triggers a preview build on the PR instead of only post-merge - ci-web.yml: extend e2e job condition to include base_ref == 'dev' so E2E tests run on all day-to-day feature→dev PRs, not only dev→main Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- ci-web: fix playwright install to use root node_modules/.bin (hoisted linker) - ci-web: promote runtime secrets to job-level env so next start sees them - ci-web/eas: replace pnpm-lock.yaml path filter with app-specific package.json to prevent cross-contamination - eas: replace silent || echo on OTA preview with continue-on-error: true - pre-push: run tsc --noEmit for mobile instead of duplicating lint Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…template flexibility - Rename mobile package from 'mobile-2' to 'mobile' so --filter mobile actually matches - Replace 'pnpm --filter X tsc' with 'pnpm --filter X exec tsc' (exec runs the binary; run looks for a script and exits 0 when not found, masking all TypeScript errors) - Remove service-specific secrets (RESEND_API_KEY, GOOGLE_ID, GOOGLE_SECRET) from e2e job env — template projects may not use these services; only DATABASE_URL and BETTER_AUTH_SECRET are truly required - Remove redundant web/package.json path entry in ci-web.yml (already covered by web/**) - Remove redundant mobile/package.json path entry in eas.yml (already covered by mobile/**) - Fix pre-existing TypeScript error in users test exposed by the now-working tsc command - Fix mobile Prettier formatting issues now surfaced by the working hook Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Agents (Next.js specialized): - frontend: App Router, shadcn/ui, SWR, component structure - backend: controller/service/schema, Better Auth, Prisma, Zod - security: OWASP, auth audit, input validation, code review User-invoked skills (slash commands): - /setup: project initialization wizard with full skill overview - /new-route: scaffold API route + services + schema + test stub - /new-page: scaffold Next.js page with _components/ and actions/ - /new-screen: scaffold Expo screen with NativeWind and auth guard - /check: lint + tsc for web and/or mobile Caveman skills (juliusbrussee/caveman — ~75% token reduction): - /caveman, /caveman-commit, /caveman-compress, /caveman-review, /cavecrew Model-invoked skills (auto-triggered by context): - backend-patterns, frontend-patterns, security-patterns Updated README with full Claude Code section documenting all agents, commands, and skills. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The previous test referenced UI text specific to the Noctiluz project
("Embarque agora", "Aprenda se divertindo!") and would fail on every
project derived from this template. Replaced with a project-agnostic
homepage status check.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Feature: Enhance CI/CD workflows and address code review findings ninguem revisou essa porra, mesmo eu pedindo, ent só dei merge foda-se
mudei um pouco a SKILL.md do .claude
Author
|
@LourencoPeronti @nalberthkagiya @Gaaudio @mathiasdev00 revisem o PR fazendo favor |
Author
|
@jv-aquino se tiver tempo e conseguir revisar, agradeço |
zuff0
requested review from
Gaaudio,
LourencoPeronti,
jvaquiino,
mathiasdev00 and
nalberthkagiya
June 23, 2026 13:24
Author
|
Ainda preciso atualizar o SDK 55 -> 56, mas o Como é uma breaking change requer um pouco mais de tempo e carinho na revisão de vcs. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
O que esse PR faz
Três entregas pra mehorar umas coisas, adicionar funcionalidades e manter o template atualizado.
Tem umas coisas escritas no README novo, leia
CI/CD (GitHub Actions + Husky)
ci-web.yml— novo workflow para o workspaceweb: lint, typecheck(
exec tsc --noEmit), testes de integração (Vitest) e e2e (Playwright,apenas em PRs para
main/dev)eas.yml— reescrita completa: preview build em PRs, production buildno push para
main, OTA separado de store submit,--no-waitcom linkpara o dashboard do EAS
.husky/pre-commit— lint seletivo por workspace (só roda web searquivos
web/mudaram; idem mobile).husky/pre-push— typecheck seletivo por workspace viaexec tsc(corrige bug onde
pnpm run tscretornava exit 0 silencioso)web/playwright.config.ts—pnpm startem CI,pnpm devlocal;e2e test substituído por health-check genérico (sem texto hardcoded do
projeto Noctiluz)
Claude Code —
.claude/frontend(Next.js App Router, shadcn/ui,SWR),
backend(controller/service/schema, Better Auth, Prisma, Zod),security(OWASP Top 10, auditoria de auth)/setup,/new-route,/new-page,/new-screen,/check/caveman,/caveman-commit,/caveman-compress,/caveman-review,/cavecrewbackend-patterns,frontend-patterns,security-patterns(ativam automaticamente por contexto)CLAUDE.md— guia completo de arquitetura, padrões e comandosREADME.md— seção de Claude Code com tabelas de agents e skillsAtualização de stack (web)
@auth/prisma-adapterremovido — pacote do NextAuth.js, incompatívelcom Better Auth que usa
better-auth/adapters/prismatailwindcss4.1.16 → 4.3.1 +@tailwindcss/postcssalinhadoreact-hot-toast→ Sonner — padrão atual do shadcn/ui; API idêntica,zero mudança nos call sites (
toast.success/toast.error)Checklist