aprimorar ia

This commit is contained in:
Luiz Silva 2026-07-01 17:40:59 -03:00
parent a449f909f6
commit f3c9e7b60c
15 changed files with 155 additions and 13 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,65 @@
---
type: rule
name: tsconfig-ignore-deprecations
description: Workaround obrigatório para tsup v8.5.0 que injeta baseUrl depreciado no TS 6.0
scope: global
trigger: file_match
globs:
- "**/tsconfig.json"
updatedAt: "2026-07-01"
---
# Regra: ignoreDeprecations no tsconfig.json
## Contexto
O `tsup` v8.5.0 injeta internamente `baseUrl: "."` no `rollup-dts-plugin` durante a geração de arquivos `.d.ts` (DTS Build). O TypeScript 6.0 trata `baseUrl` como depreciado (erro TS5101), causando falha fatal no build DTS.
## Regra
Todo `tsconfig.json` de pacotes que usam `tsup` **DEVE** incluir:
```json
{
"compilerOptions": {
"ignoreDeprecations": "6.0"
}
}
```
Isso silencia todas as deprecações da era 5.x/6.0 sem efeito colateral.
## Quando remover
Esta regra é um **workaround temporário**. Deve ser removida quando o `tsup` lançar uma versão que não injete `baseUrl` automaticamente. Monitorar releases do tsup para deprecar esta rule.
## Exemplos
```json
// ✅ Correto — com workaround
{
"compilerOptions": {
"moduleResolution": "bundler",
"module": "ESNext",
"ignoreDeprecations": "6.0"
}
}
// ❌ Incorreto — build DTS falhará
{
"compilerOptions": {
"moduleResolution": "bundler",
"module": "ESNext"
}
}
```
## Impacto
Sem `ignoreDeprecations`, o comando `pnpm run build` falhará com erro TS5101 em qualquer pacote que gere arquivos `.d.ts` via tsup.
## Referências
- Memória Azteca: código 53
- Rule: `global/rules/typescript-module-resolution`
- Código responsável: `node_modules/tsup/dist/rollup.js`

View file

@ -0,0 +1,74 @@
---
type: rule
name: typescript-module-resolution
description: Padrão obrigatório de moduleResolution para todos os pacotes do monorepo Azteca
scope: global
trigger: file_match
globs:
- "**/tsconfig.json"
priority: alta
updatedAt: "2026-07-01"
---
# Regra: moduleResolution Padrão do Monorepo
## Contexto
O TypeScript 6.0 deprecia `moduleResolution: "node"` (alias de `"node10"`), que deixará de funcionar no TS 7.0 (erro TS5107). Todos os pacotes do ecossistema Azteca compilam via **tsup** ou **vite**, portanto devem usar o modo `bundler`.
## Regra
Todo `tsconfig.json` no monorepo **DEVE** usar:
```json
{
"compilerOptions": {
"moduleResolution": "bundler",
"module": "ESNext"
}
}
```
### Alternativa `node16` — REJEITADA
A opção `node16` foi testada e rejeitada por ser excessivamente estrita com dependências externas que não declaram corretamente as fronteiras ESM/CJS (erro TS1479).
## Exemplos
```json
// ✅ Correto — modo bundler
{
"compilerOptions": {
"moduleResolution": "bundler",
"module": "ESNext"
}
}
// ❌ Incorreto — modo depreciado
{
"compilerOptions": {
"moduleResolution": "node"
}
}
// ❌ Incorreto — estrito demais para o ecossistema
{
"compilerOptions": {
"moduleResolution": "node16",
"module": "Node16"
}
}
```
## Procedimento ao corrigir
Ao corrigir `moduleResolution` em um pacote, **varrer todos os `tsconfig.json` do monorepo** para garantir consistência. Não corrigir isoladamente.
## Impacto
Sem este padrão, o build falhará no TypeScript 7.0 com erro fatal TS5107. Já no TS 6.0 gera warnings de depreciação que poluem o output.
## Referências
- Memória Azteca: códigos 51, 52, 54
- Rule: `global/rules/tsconfig-ignore-deprecations`

View file

@ -1,7 +1,7 @@
{ {
"versao": "3.0.0", "versao": "3.0.0",
"base_url": "https://paiol.idz.one/desenvolvimento/agent-ia", "base_url": "https://paiol.idz.one/desenvolvimento/agent-ia",
"gerado_em": "2026-07-01T16:29:11-03:00", "gerado_em": "2026-07-01T20:38:56-03:00",
"artefatos": { "artefatos": {
"global": { "global": {
"rules": [ "rules": [
@ -9,6 +9,7 @@
"global/rules/carta-principios-agente-azteca", "global/rules/carta-principios-agente-azteca",
"global/rules/consultar-banco-query-ia", "global/rules/consultar-banco-query-ia",
"global/rules/escrita-natural", "global/rules/escrita-natural",
"global/rules/estilos-design-system",
"global/rules/feedback-visivel", "global/rules/feedback-visivel",
"global/rules/fronteiras-monorepo", "global/rules/fronteiras-monorepo",
"global/rules/funcoes-anonimas-arrow", "global/rules/funcoes-anonimas-arrow",
@ -17,6 +18,8 @@
"global/rules/mensagens-usuario", "global/rules/mensagens-usuario",
"global/rules/proibido-commit-ia", "global/rules/proibido-commit-ia",
"global/rules/regras-negocio-md", "global/rules/regras-negocio-md",
"global/rules/tsconfig-ignore-deprecations",
"global/rules/typescript-module-resolution",
"global/rules/typescript-sem-any", "global/rules/typescript-sem-any",
"global/rules/usar-memoria-persistente", "global/rules/usar-memoria-persistente",
"global/rules/zod-validacao-padrao" "global/rules/zod-validacao-padrao"