chore: update docs and configs

This commit is contained in:
Esdras Renan 2025-11-05 20:49:19 -03:00
parent 7718f77d4c
commit 1079111de2
23 changed files with 102 additions and 10467 deletions

View file

@ -5,7 +5,7 @@ Este documento consolida o estado atual do ambiente de desenvolvimento, descreve
## Resumo rápido
- **Bun (runtime padrão)**: 1.3+ já instalado no runner e VPS (`bun --version`). Após instalar localmente, exporte `PATH="$HOME/.bun/bin:$PATH"` para tornar o binário disponível. Use `bun install`, `bun run dev:bun`, `bun run convex:dev:bun`, `bun run build:bun` e `bun test` como fluxo principal (scripts Node continuam disponíveis como fallback).
- **Node/pnpm**: Node 20.9+ permanece obrigatório para ferramentas CLI; pnpm 10 está disponível como alternativa apenas para fluxos do desktop/Tauri.
- **Node.js**: mantenha a versão 20.9+ instalada para ferramentas auxiliares (Prisma CLI, scripts legados em Node) quando não estiver usando o runtime do Bun.
- **Next.js 15.5.5**: Projeto voltou para a versão estável (`next@15.5.5`) com Turbopack como bundler padrão e whitelist de domínios garantida pelo middleware.
- **Lint/Test/Build**: `bun run lint`, `bun test`, `bun run build:bun`. O test runner do Bun já roda em modo não interativo; utilize `bunx vitest --watch` apenas quando precisar do modo watch manualmente.
- **Banco DEV**: SQLite em `prisma/prisma/db.dev.sqlite`. Defina `DATABASE_URL="file:./prisma/db.dev.sqlite"` ao chamar CLI do Prisma.
@ -28,7 +28,7 @@ Este documento consolida o estado atual do ambiente de desenvolvimento, descreve
```bash
bun run dev:bun
```
> Alternativas: `pnpm dev` (Node) ou `bun run dev:webpack` se precisar do fallback oficial.
> Alternativas: `bun run dev` (Node) ou `bun run dev:webpack` se precisar do fallback oficial.
3. Credenciais padrão (seed): `admin@sistema.dev / admin123`.
4. Herdou dados antigos? Execute `node scripts/remove-legacy-demo-users.mjs` para limpar contas demo legadas.
@ -74,7 +74,7 @@ O workflow dispara em todo `push`/`pull_request` para `main` e fornece feedback
## Testes rápidos via curl (Convites & acessos)
1. Rode `bun run dev:bun` (ou `pnpm dev` se preferir Node) e autentique-se em `http://localhost:3000/login` usando `admin@sistema.dev / admin123`.
1. Rode `bun run dev:bun` (ou `bun run dev` se preferir Node) e autentique-se em `http://localhost:3000/login` usando `admin@sistema.dev / admin123`.
2. Copie o valor do cookie `BETTER_AUTH_SESSION` e exporte no shell: `export COOKIE="BETTER_AUTH_SESSION=<valor>"`.
### Usuários
@ -140,11 +140,11 @@ curl -i -X PATCH http://localhost:3000/api/admin/invites/$INVITE_ID \
### Build local
```bash
corepack enable && corepack prepare pnpm@10.20.0 --activate
pnpm -C apps/desktop install
bun install
bun install --cwd apps/desktop
VITE_APP_URL=http://localhost:3000 \
VITE_API_BASE_URL=http://localhost:3000 \
pnpm -C apps/desktop tauri build
bun run --cwd apps/desktop tauri build
```
Artefatos: `apps/desktop/src-tauri/target/release/bundle/`.
@ -163,11 +163,11 @@ img.save("icons/icon.ico", sizes=[(16,16),(24,24),(32,32),(48,48),(64,64),(128,1
PY
```
- Depois de regerar `icon.ico`, faça o commit e rode novamente `pnpm -C apps/desktop tauri build` para empacotar o instalador com o ícone correto.
- Depois de regerar `icon.ico`, faça o commit e rode novamente `bun run --cwd apps/desktop tauri build` para empacotar o instalador com o ícone correto.
### Atualizações OTA
1. Gere chaves (`pnpm tauri signer generate`).
1. Gere chaves (`bun run --cwd apps/desktop tauri signer generate`).
2. Defina `TAURI_SIGNING_PRIVATE_KEY` (+ password) no ambiente de build.
3. Publique os pacotes e um `latest.json` em release GitHub.
4. O app verifica ao iniciar e pelo botão “Verificar atualizações”.
@ -176,9 +176,9 @@ PY
| Sintoma | Causa | Correção |
| --- | --- | --- |
| `ERR_PNPM_OUTDATED_LOCKFILE` no pipeline | Dependências do desktop alteradas sem atualizar `pnpm-lock.yaml` | Rodar `pnpm install` na raiz e commitar o lockfile. |
| `ERR_BUN_LOCKFILE_OUTDATED` no pipeline | Dependências do desktop alteradas sem atualizar o `bun.lock` | Rodar `bun install` (raiz e `apps/desktop`) e commitar o lockfile. |
| Prisma falha com `P2021` / tabelas Better Auth inexistentes | CLI leu `.env` da raiz (produção) | Usar `DATABASE_URL="file:./prisma/db.dev.sqlite"` nos comandos. |
| Vitest trava em modo watch | Script `pnpm test` sem `--run` e CI detecta TTY | Ajustado para `vitest --run --passWithNoTests`. Localmente, use `pnpm test -- --watch` se quiser. |
| Vitest trava em modo watch | Script `bun test` sem `--run` e CI detecta TTY | Ajustado para `vitest --run --passWithNoTests`. Localmente, use `bun test -- --watch` se quiser. |
| Desktop não encontra updater | Falta `latest.json` ou assinatura inválida | Publicar release com `*.sig` e `latest.json` apontando para os pacotes corretos. |
## Cronômetro dos tickets