@maestro-ai/mcp-server 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +227 -0
- package/dist/analyzers/base.d.ts +64 -0
- package/dist/analyzers/base.d.ts.map +1 -0
- package/dist/analyzers/base.js +104 -0
- package/dist/analyzers/base.js.map +1 -0
- package/dist/analyzers/index.d.ts +12 -0
- package/dist/analyzers/index.d.ts.map +1 -0
- package/dist/analyzers/index.js +31 -0
- package/dist/analyzers/index.js.map +1 -0
- package/dist/analyzers/performance-analyzer.d.ts +11 -0
- package/dist/analyzers/performance-analyzer.d.ts.map +1 -0
- package/dist/analyzers/performance-analyzer.js +162 -0
- package/dist/analyzers/performance-analyzer.js.map +1 -0
- package/dist/analyzers/quality-analyzer.d.ts +11 -0
- package/dist/analyzers/quality-analyzer.d.ts.map +1 -0
- package/dist/analyzers/quality-analyzer.js +196 -0
- package/dist/analyzers/quality-analyzer.js.map +1 -0
- package/dist/analyzers/security-analyzer.d.ts +11 -0
- package/dist/analyzers/security-analyzer.d.ts.map +1 -0
- package/dist/analyzers/security-analyzer.js +177 -0
- package/dist/analyzers/security-analyzer.js.map +1 -0
- package/dist/content/content/design-system/README.md +231 -0
- package/dist/content/content/design-system/data/charts.csv +26 -0
- package/dist/content/content/design-system/data/colors.csv +97 -0
- package/dist/content/content/design-system/data/icons.csv +101 -0
- package/dist/content/content/design-system/data/landing.csv +31 -0
- package/dist/content/content/design-system/data/products.csv +97 -0
- package/dist/content/content/design-system/data/prompts.csv +24 -0
- package/dist/content/content/design-system/data/react-performance.csv +45 -0
- package/dist/content/content/design-system/data/styles.csv +59 -0
- package/dist/content/content/design-system/data/typography.csv +58 -0
- package/dist/content/content/design-system/data/ui-reasoning.csv +101 -0
- package/dist/content/content/design-system/data/ux-guidelines.csv +100 -0
- package/dist/content/content/design-system/data/web-interface.csv +31 -0
- package/dist/content/content/design-system/indexes/README.md +211 -0
- package/dist/content/content/design-system/indexes/colors-index.md +156 -0
- package/dist/content/content/design-system/indexes/quick-search.md +111 -0
- package/dist/content/content/design-system/indexes/stacks-index.md +341 -0
- package/dist/content/content/design-system/stacks/flutter.csv +53 -0
- package/dist/content/content/design-system/stacks/html-tailwind.csv +56 -0
- package/dist/content/content/design-system/stacks/jetpack-compose.csv +53 -0
- package/dist/content/content/design-system/stacks/nextjs.csv +53 -0
- package/dist/content/content/design-system/stacks/nuxt-ui.csv +51 -0
- package/dist/content/content/design-system/stacks/nuxtjs.csv +59 -0
- package/dist/content/content/design-system/stacks/react-native.csv +52 -0
- package/dist/content/content/design-system/stacks/react.csv +54 -0
- package/dist/content/content/design-system/stacks/shadcn.csv +61 -0
- package/dist/content/content/design-system/stacks/svelte.csv +54 -0
- package/dist/content/content/design-system/stacks/swiftui.csv +51 -0
- package/dist/content/content/design-system/stacks/vue.csv +50 -0
- package/dist/content/content/examples/Exemplo de Fluxo Completo com Java e Spring Boot.md +250 -0
- package/dist/content/content/examples/Exemplo de Fluxo Completo com Laravel e Filament.md +278 -0
- package/dist/content/content/examples/Exemplo de Fluxo Completo com Laravel e Livewire.md +261 -0
- package/dist/content/content/examples/Exemplo de Fluxo Completo com Node e NestJS.md +258 -0
- package/dist/content/content/guides/Cat/303/241logo de Stacks para Cloud Moderna.md" +119 -0
- package/dist/content/content/guides/Cat/303/241logo de Stacks para Hospedagem Compartilhada.md" +147 -0
- package/dist/content/content/guides/Checklist Mestre de Entrega.md +68 -0
- package/dist/content/content/guides/Gates de Qualidade.md +209 -0
- package/dist/content/content/guides/Guia de Adi/303/247/303/243o de Novas Funcionalidades.md" +355 -0
- package/dist/content/content/guides/Guia de Chaos Engineering.md +267 -0
- package/dist/content/content/guides/Guia de Debugging com IA.md +135 -0
- package/dist/content/content/guides/Guia de Estrat/303/251gias de Cache.md" +352 -0
- package/dist/content/content/guides/Guia de Migrations Zero-Downtime.md +311 -0
- package/dist/content/content/guides/Guia de Multi-tenancy.md +368 -0
- package/dist/content/content/guides/Guia de Otimiza/303/247/303/243o de Custos Cloud.md" +195 -0
- package/dist/content/content/guides/Guia de Refatora/303/247/303/243o de C/303/263digo Legado com IA.md" +162 -0
- package/dist/content/content/guides/Guia de SLOs e Error Budgets.md +315 -0
- package/dist/content/content/guides/M/303/251tricas de Efici/303/252ncia do Desenvolvimento com IA.md" +93 -0
- package/dist/content/content/guides/Rules base.md +90 -0
- package/dist/content/content/playbook/Playbook de Desenvolvimento com IA.md +364 -0
- package/dist/content/content/prompts/README.md +203 -0
- package/dist/content/content/prompts/acessibilidade/analise-acessibilidade.md +257 -0
- package/dist/content/content/prompts/apis/design-api-rest.md +303 -0
- package/dist/content/content/prompts/apis/idempotencia.md +254 -0
- package/dist/content/content/prompts/apis/versionamento.md +313 -0
- package/dist/content/content/prompts/arquitetura/arquitetura-c4-completo.md +190 -0
- package/dist/content/content/prompts/arquitetura/clean-architecture.md +151 -0
- package/dist/content/content/prompts/arquitetura/ddd-bounded-contexts.md +183 -0
- package/dist/content/content/prompts/arquitetura/ddd-cqrs.md +176 -0
- package/dist/content/content/prompts/arquitetura/modelo-dominio.md +207 -0
- package/dist/content/content/prompts/arquitetura/multi-tenancy.md +235 -0
- package/dist/content/content/prompts/database/migrations-zero-downtime.md +192 -0
- package/dist/content/content/prompts/database/otimizacao-queries.md +296 -0
- package/dist/content/content/prompts/desenvolvimento/code-review.md +301 -0
- package/dist/content/content/prompts/desenvolvimento/gerar-servico.md +271 -0
- package/dist/content/content/prompts/devops/docker-compose.md +336 -0
- package/dist/content/content/prompts/devops/feature-flags.md +374 -0
- package/dist/content/content/prompts/devops/kubernetes-deploy.md +460 -0
- package/dist/content/content/prompts/devops/pipeline-cicd.md +358 -0
- package/dist/content/content/prompts/devops/terraform-iac.md +502 -0
- package/dist/content/content/prompts/escalabilidade/analise-performance.md +240 -0
- package/dist/content/content/prompts/escalabilidade/analise-performance.txt +94 -0
- package/dist/content/content/prompts/escalabilidade/caching.md +255 -0
- package/dist/content/content/prompts/observabilidade/chaos-testing.md +237 -0
- package/dist/content/content/prompts/observabilidade/estrategia-observabilidade.md +263 -0
- package/dist/content/content/prompts/observabilidade/estrategia-observabilidade.txt +134 -0
- package/dist/content/content/prompts/observabilidade/slos.md +215 -0
- package/dist/content/content/prompts/produto/discovery-inicial.md +203 -0
- package/dist/content/content/prompts/produto/discovery-inicial.txt +33 -0
- package/dist/content/content/prompts/requisitos/refinar-requisitos.md +232 -0
- package/dist/content/content/prompts/requisitos/refinar-requisitos.txt +40 -0
- package/dist/content/content/prompts/seguranca/analise-seguranca.md +243 -0
- package/dist/content/content/prompts/seguranca/pentest-checklist.md +333 -0
- package/dist/content/content/prompts/seguranca/rate-limiting.md +356 -0
- package/dist/content/content/prompts/seguranca/revisao-lgpd.md +227 -0
- package/dist/content/content/prompts/seguranca/threat-modeling.md +224 -0
- package/dist/content/content/prompts/testes/contract-testing.md +340 -0
- package/dist/content/content/prompts/testes/gerar-testes-unitarios.md +474 -0
- package/dist/content/content/prompts/testes/testes-e2e.md +460 -0
- package/dist/content/content/prompts/testes/testes-integracao.md +418 -0
- package/dist/content/content/prompts/testes/testes-performance.md +458 -0
- package/dist/content/content/prompts/ux/gerar-ui-stitch.md +151 -0
- package/dist/content/content/rules/GEMINI.md +841 -0
- package/dist/content/content/rules/RULES.md +835 -0
- package/dist/content/content/rules/adapters/copilot.md +10 -0
- package/dist/content/content/rules/adapters/cursor.md +10 -0
- package/dist/content/content/rules/adapters/gemini.md +13 -0
- package/dist/content/content/rules/adapters/windsurf.md +10 -0
- package/dist/content/content/skills/api-patterns/SKILL.md +81 -0
- package/dist/content/content/skills/api-patterns/api-style.md +42 -0
- package/dist/content/content/skills/api-patterns/auth.md +24 -0
- package/dist/content/content/skills/api-patterns/documentation.md +26 -0
- package/dist/content/content/skills/api-patterns/graphql.md +41 -0
- package/dist/content/content/skills/api-patterns/rate-limiting.md +31 -0
- package/dist/content/content/skills/api-patterns/response.md +37 -0
- package/dist/content/content/skills/api-patterns/rest.md +40 -0
- package/dist/content/content/skills/api-patterns/scripts/api_validator.py +211 -0
- package/dist/content/content/skills/api-patterns/security-testing.md +122 -0
- package/dist/content/content/skills/api-patterns/trpc.md +41 -0
- package/dist/content/content/skills/api-patterns/versioning.md +22 -0
- package/dist/content/content/skills/app-builder/SKILL.md +75 -0
- package/dist/content/content/skills/app-builder/agent-coordination.md +71 -0
- package/dist/content/content/skills/app-builder/feature-building.md +53 -0
- package/dist/content/content/skills/app-builder/project-detection.md +34 -0
- package/dist/content/content/skills/app-builder/scaffolding.md +118 -0
- package/dist/content/content/skills/app-builder/tech-stack.md +40 -0
- package/dist/content/content/skills/app-builder/templates/SKILL.md +39 -0
- package/dist/content/content/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/dist/content/content/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/dist/content/content/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/dist/content/content/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/dist/content/content/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/dist/content/content/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/dist/content/content/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/dist/content/content/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
- package/dist/content/content/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
- package/dist/content/content/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
- package/dist/content/content/skills/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
- package/dist/content/content/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/dist/content/content/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
- package/dist/content/content/skills/architecture/SKILL.md +55 -0
- package/dist/content/content/skills/architecture/context-discovery.md +43 -0
- package/dist/content/content/skills/architecture/examples.md +94 -0
- package/dist/content/content/skills/architecture/pattern-selection.md +68 -0
- package/dist/content/content/skills/architecture/patterns-reference.md +50 -0
- package/dist/content/content/skills/architecture/trade-off-analysis.md +77 -0
- package/dist/content/content/skills/bash-linux/SKILL.md +199 -0
- package/dist/content/content/skills/behavioral-modes/SKILL.md +242 -0
- package/dist/content/content/skills/brainstorming/SKILL.md +163 -0
- package/dist/content/content/skills/brainstorming/dynamic-questioning.md +350 -0
- package/dist/content/content/skills/clean-code/SKILL.md +201 -0
- package/dist/content/content/skills/code-review-checklist/SKILL.md +109 -0
- package/dist/content/content/skills/database-design/SKILL.md +52 -0
- package/dist/content/content/skills/database-design/database-selection.md +43 -0
- package/dist/content/content/skills/database-design/indexing.md +39 -0
- package/dist/content/content/skills/database-design/migrations.md +48 -0
- package/dist/content/content/skills/database-design/optimization.md +36 -0
- package/dist/content/content/skills/database-design/orm-selection.md +30 -0
- package/dist/content/content/skills/database-design/schema-design.md +56 -0
- package/dist/content/content/skills/database-design/scripts/schema_validator.py +172 -0
- package/dist/content/content/skills/deployment-procedures/SKILL.md +241 -0
- package/dist/content/content/skills/doc.md +177 -0
- package/dist/content/content/skills/documentation-templates/SKILL.md +194 -0
- package/dist/content/content/skills/frontend-design/SKILL.md +396 -0
- package/dist/content/content/skills/frontend-design/animation-guide.md +331 -0
- package/dist/content/content/skills/frontend-design/color-system.md +311 -0
- package/dist/content/content/skills/frontend-design/decision-trees.md +418 -0
- package/dist/content/content/skills/frontend-design/motion-graphics.md +306 -0
- package/dist/content/content/skills/frontend-design/scripts/accessibility_checker.py +183 -0
- package/dist/content/content/skills/frontend-design/scripts/ux_audit.py +722 -0
- package/dist/content/content/skills/frontend-design/typography-system.md +345 -0
- package/dist/content/content/skills/frontend-design/ux-psychology.md +541 -0
- package/dist/content/content/skills/frontend-design/visual-effects.md +383 -0
- package/dist/content/content/skills/game-development/2d-games/SKILL.md +119 -0
- package/dist/content/content/skills/game-development/3d-games/SKILL.md +135 -0
- package/dist/content/content/skills/game-development/SKILL.md +167 -0
- package/dist/content/content/skills/game-development/game-art/SKILL.md +185 -0
- package/dist/content/content/skills/game-development/game-audio/SKILL.md +190 -0
- package/dist/content/content/skills/game-development/game-design/SKILL.md +129 -0
- package/dist/content/content/skills/game-development/mobile-games/SKILL.md +108 -0
- package/dist/content/content/skills/game-development/multiplayer/SKILL.md +132 -0
- package/dist/content/content/skills/game-development/pc-games/SKILL.md +144 -0
- package/dist/content/content/skills/game-development/vr-ar/SKILL.md +123 -0
- package/dist/content/content/skills/game-development/web-games/SKILL.md +150 -0
- package/dist/content/content/skills/geo-fundamentals/SKILL.md +156 -0
- package/dist/content/content/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/dist/content/content/skills/i18n-localization/SKILL.md +154 -0
- package/dist/content/content/skills/i18n-localization/scripts/i18n_checker.py +241 -0
- package/dist/content/content/skills/intelligent-routing/SKILL.md +334 -0
- package/dist/content/content/skills/lint-and-validate/SKILL.md +45 -0
- package/dist/content/content/skills/lint-and-validate/scripts/lint_runner.py +172 -0
- package/dist/content/content/skills/lint-and-validate/scripts/type_coverage.py +173 -0
- package/dist/content/content/skills/mcp-builder/SKILL.md +176 -0
- package/dist/content/content/skills/mobile-design/SKILL.md +394 -0
- package/dist/content/content/skills/mobile-design/decision-trees.md +516 -0
- package/dist/content/content/skills/mobile-design/mobile-backend.md +491 -0
- package/dist/content/content/skills/mobile-design/mobile-color-system.md +420 -0
- package/dist/content/content/skills/mobile-design/mobile-debugging.md +122 -0
- package/dist/content/content/skills/mobile-design/mobile-design-thinking.md +357 -0
- package/dist/content/content/skills/mobile-design/mobile-navigation.md +458 -0
- package/dist/content/content/skills/mobile-design/mobile-performance.md +767 -0
- package/dist/content/content/skills/mobile-design/mobile-testing.md +356 -0
- package/dist/content/content/skills/mobile-design/mobile-typography.md +433 -0
- package/dist/content/content/skills/mobile-design/platform-android.md +666 -0
- package/dist/content/content/skills/mobile-design/platform-ios.md +561 -0
- package/dist/content/content/skills/mobile-design/scripts/mobile_audit.py +670 -0
- package/dist/content/content/skills/mobile-design/touch-psychology.md +537 -0
- package/dist/content/content/skills/nextjs-best-practices/SKILL.md +203 -0
- package/dist/content/content/skills/nodejs-best-practices/SKILL.md +333 -0
- package/dist/content/content/skills/parallel-agents/SKILL.md +175 -0
- package/dist/content/content/skills/performance-profiling/SKILL.md +143 -0
- package/dist/content/content/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
- package/dist/content/content/skills/plan-writing/SKILL.md +152 -0
- package/dist/content/content/skills/powershell-windows/SKILL.md +167 -0
- package/dist/content/content/skills/python-patterns/SKILL.md +441 -0
- package/dist/content/content/skills/react-patterns/SKILL.md +198 -0
- package/dist/content/content/skills/red-team-tactics/SKILL.md +199 -0
- package/dist/content/content/skills/seo-fundamentals/SKILL.md +129 -0
- package/dist/content/content/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/dist/content/content/skills/server-management/SKILL.md +161 -0
- package/dist/content/content/skills/systematic-debugging/SKILL.md +109 -0
- package/dist/content/content/skills/tailwind-patterns/SKILL.md +269 -0
- package/dist/content/content/skills/tdd-workflow/SKILL.md +149 -0
- package/dist/content/content/skills/testing-patterns/SKILL.md +178 -0
- package/dist/content/content/skills/testing-patterns/scripts/test_runner.py +219 -0
- package/dist/content/content/skills/vulnerability-scanner/SKILL.md +276 -0
- package/dist/content/content/skills/vulnerability-scanner/checklists.md +121 -0
- package/dist/content/content/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/dist/content/content/skills/webapp-testing/SKILL.md +187 -0
- package/dist/content/content/skills/webapp-testing/scripts/playwright_runner.py +173 -0
- package/dist/content/content/specialists/Especialista em Acessibilidade.md +266 -0
- package/dist/content/content/specialists/Especialista em An/303/241lise de Testes.md" +434 -0
- package/dist/content/content/specialists/Especialista em Arquitetura Avan/303/247ada.md" +358 -0
- package/dist/content/content/specialists/Especialista em Arquitetura de Software.md +177 -0
- package/dist/content/content/specialists/Especialista em Banco de Dados.md +260 -0
- package/dist/content/content/specialists/Especialista em Contrato de API.md +172 -0
- package/dist/content/content/specialists/Especialista em Dados e Analytics com IA.md +246 -0
- package/dist/content/content/specialists/Especialista em Debugging e Troubleshooting.md +191 -0
- package/dist/content/content/specialists/Especialista em Desenvolvimento Frontend.md +477 -0
- package/dist/content/content/specialists/Especialista em Desenvolvimento Mobile.md +241 -0
- package/dist/content/content/specialists/Especialista em Desenvolvimento e Vibe Coding Estruturado.md +417 -0
- package/dist/content/content/specialists/Especialista em DevOps e Infraestrutura.md +294 -0
- package/dist/content/content/specialists/Especialista em Documenta/303/247/303/243o T/303/251cnica.md" +227 -0
- package/dist/content/content/specialists/Especialista em Engenharia de Requisitos com IA.md +299 -0
- package/dist/content/content/specialists/Especialista em Explora/303/247/303/243o de Codebase.md" +179 -0
- package/dist/content/content/specialists/Especialista em Gest/303/243o de Produto.md" +179 -0
- package/dist/content/content/specialists/Especialista em Migra/303/247/303/243o e Moderniza/303/247/303/243o.md" +410 -0
- package/dist/content/content/specialists/Especialista em Modelagem e Arquitetura de Dom/303/255nio com IA.md" +248 -0
- package/dist/content/content/specialists/Especialista em Observabilidade.md +415 -0
- package/dist/content/content/specialists/Especialista em Performance e Escalabilidade.md +373 -0
- package/dist/content/content/specialists/Especialista em Plano de Execu/303/247/303/243o com IA.md" +341 -0
- package/dist/content/content/specialists/Especialista em Prototipagem R/303/241pida com Google Stitch.md" +419 -0
- package/dist/content/content/specialists/Especialista em Seguran/303/247a da Informa/303/247/303/243o.md" +508 -0
- package/dist/content/content/specialists/Especialista em UX Design.md +453 -0
- package/dist/content/content/specialists/INDEX.md +43 -0
- package/dist/content/content/templates/PRD.md +165 -0
- package/dist/content/content/templates/README.md +65 -0
- package/dist/content/content/templates/adr.md +103 -0
- package/dist/content/content/templates/arquitetura.md +279 -0
- package/dist/content/content/templates/backlog.md +185 -0
- package/dist/content/content/templates/checklist-seguranca.md +180 -0
- package/dist/content/content/templates/contexto.md +120 -0
- package/dist/content/content/templates/criterios-aceite.md +99 -0
- package/dist/content/content/templates/design-banco.md +270 -0
- package/dist/content/content/templates/design-doc.md +240 -0
- package/dist/content/content/templates/feature.md +88 -0
- package/dist/content/content/templates/historia-backend.md +84 -0
- package/dist/content/content/templates/historia-frontend.md +75 -0
- package/dist/content/content/templates/historia-usuario.md +125 -0
- package/dist/content/content/templates/mapa-navegacao.md +133 -0
- package/dist/content/content/templates/matriz-rastreabilidade.md +121 -0
- package/dist/content/content/templates/modelo-dominio.md +219 -0
- package/dist/content/content/templates/plano-testes.md +199 -0
- package/dist/content/content/templates/prototipo-stitch.md +138 -0
- package/dist/content/content/templates/requisitos.md +162 -0
- package/dist/content/content/templates/slo-sli.md +197 -0
- package/dist/content/content/workflows/README-MCP.md +363 -0
- package/dist/content/content/workflows/brainstorm.md +113 -0
- package/dist/content/content/workflows/create.md +59 -0
- package/dist/content/content/workflows/debug.md +103 -0
- package/dist/content/content/workflows/deploy.md +176 -0
- package/dist/content/content/workflows/enhance.md +63 -0
- package/dist/content/content/workflows/mcp-debug.md +506 -0
- package/dist/content/content/workflows/mcp-feature.md +385 -0
- package/dist/content/content/workflows/mcp-gate.md +413 -0
- package/dist/content/content/workflows/mcp-next.md +388 -0
- package/dist/content/content/workflows/mcp-refactor.md +600 -0
- package/dist/content/content/workflows/mcp-start.md +304 -0
- package/dist/content/content/workflows/mcp-status.md +400 -0
- package/dist/content/content/workflows/orchestrate.md +237 -0
- package/dist/content/content/workflows/plan.md +89 -0
- package/dist/content/content/workflows/preview.md +81 -0
- package/dist/content/content/workflows/status.md +86 -0
- package/dist/content/content/workflows/test.md +144 -0
- package/dist/content/content/workflows/ui-ux-pro-max.md +296 -0
- package/dist/content/design-system/README.md +231 -0
- package/dist/content/design-system/data/charts.csv +26 -0
- package/dist/content/design-system/data/colors.csv +97 -0
- package/dist/content/design-system/data/icons.csv +101 -0
- package/dist/content/design-system/data/landing.csv +31 -0
- package/dist/content/design-system/data/products.csv +97 -0
- package/dist/content/design-system/data/prompts.csv +24 -0
- package/dist/content/design-system/data/react-performance.csv +45 -0
- package/dist/content/design-system/data/styles.csv +59 -0
- package/dist/content/design-system/data/typography.csv +58 -0
- package/dist/content/design-system/data/ui-reasoning.csv +101 -0
- package/dist/content/design-system/data/ux-guidelines.csv +100 -0
- package/dist/content/design-system/data/web-interface.csv +31 -0
- package/dist/content/design-system/indexes/README.md +211 -0
- package/dist/content/design-system/indexes/colors-index.md +156 -0
- package/dist/content/design-system/indexes/quick-search.md +111 -0
- package/dist/content/design-system/indexes/stacks-index.md +341 -0
- package/dist/content/design-system/stacks/flutter.csv +53 -0
- package/dist/content/design-system/stacks/html-tailwind.csv +56 -0
- package/dist/content/design-system/stacks/jetpack-compose.csv +53 -0
- package/dist/content/design-system/stacks/nextjs.csv +53 -0
- package/dist/content/design-system/stacks/nuxt-ui.csv +51 -0
- package/dist/content/design-system/stacks/nuxtjs.csv +59 -0
- package/dist/content/design-system/stacks/react-native.csv +52 -0
- package/dist/content/design-system/stacks/react.csv +54 -0
- package/dist/content/design-system/stacks/shadcn.csv +61 -0
- package/dist/content/design-system/stacks/svelte.csv +54 -0
- package/dist/content/design-system/stacks/swiftui.csv +51 -0
- package/dist/content/design-system/stacks/vue.csv +50 -0
- package/dist/content/examples/Exemplo de Fluxo Completo com Java e Spring Boot.md +250 -0
- package/dist/content/examples/Exemplo de Fluxo Completo com Laravel e Filament.md +278 -0
- package/dist/content/examples/Exemplo de Fluxo Completo com Laravel e Livewire.md +261 -0
- package/dist/content/examples/Exemplo de Fluxo Completo com Node e NestJS.md +258 -0
- package/dist/content/guides/Cat/303/241logo de Stacks para Cloud Moderna.md" +119 -0
- package/dist/content/guides/Cat/303/241logo de Stacks para Hospedagem Compartilhada.md" +147 -0
- package/dist/content/guides/Checklist Mestre de Entrega.md +68 -0
- package/dist/content/guides/Gates de Qualidade.md +209 -0
- package/dist/content/guides/Guia de Adi/303/247/303/243o de Novas Funcionalidades.md" +355 -0
- package/dist/content/guides/Guia de Chaos Engineering.md +267 -0
- package/dist/content/guides/Guia de Debugging com IA.md +135 -0
- package/dist/content/guides/Guia de Estrat/303/251gias de Cache.md" +352 -0
- package/dist/content/guides/Guia de Migrations Zero-Downtime.md +311 -0
- package/dist/content/guides/Guia de Multi-tenancy.md +368 -0
- package/dist/content/guides/Guia de Otimiza/303/247/303/243o de Custos Cloud.md" +195 -0
- package/dist/content/guides/Guia de Refatora/303/247/303/243o de C/303/263digo Legado com IA.md" +162 -0
- package/dist/content/guides/Guia de SLOs e Error Budgets.md +315 -0
- package/dist/content/guides/M/303/251tricas de Efici/303/252ncia do Desenvolvimento com IA.md" +93 -0
- package/dist/content/guides/Rules base.md +90 -0
- package/dist/content/playbook/Playbook de Desenvolvimento com IA.md +364 -0
- package/dist/content/prompts/README.md +203 -0
- package/dist/content/prompts/acessibilidade/analise-acessibilidade.md +257 -0
- package/dist/content/prompts/apis/design-api-rest.md +303 -0
- package/dist/content/prompts/apis/idempotencia.md +254 -0
- package/dist/content/prompts/apis/versionamento.md +313 -0
- package/dist/content/prompts/arquitetura/arquitetura-c4-completo.md +190 -0
- package/dist/content/prompts/arquitetura/clean-architecture.md +151 -0
- package/dist/content/prompts/arquitetura/ddd-bounded-contexts.md +183 -0
- package/dist/content/prompts/arquitetura/ddd-cqrs.md +176 -0
- package/dist/content/prompts/arquitetura/modelo-dominio.md +207 -0
- package/dist/content/prompts/arquitetura/multi-tenancy.md +235 -0
- package/dist/content/prompts/database/migrations-zero-downtime.md +192 -0
- package/dist/content/prompts/database/otimizacao-queries.md +296 -0
- package/dist/content/prompts/desenvolvimento/code-review.md +301 -0
- package/dist/content/prompts/desenvolvimento/gerar-servico.md +271 -0
- package/dist/content/prompts/devops/docker-compose.md +336 -0
- package/dist/content/prompts/devops/feature-flags.md +374 -0
- package/dist/content/prompts/devops/kubernetes-deploy.md +460 -0
- package/dist/content/prompts/devops/pipeline-cicd.md +358 -0
- package/dist/content/prompts/devops/terraform-iac.md +502 -0
- package/dist/content/prompts/escalabilidade/analise-performance.md +240 -0
- package/dist/content/prompts/escalabilidade/analise-performance.txt +94 -0
- package/dist/content/prompts/escalabilidade/caching.md +255 -0
- package/dist/content/prompts/observabilidade/chaos-testing.md +237 -0
- package/dist/content/prompts/observabilidade/estrategia-observabilidade.md +263 -0
- package/dist/content/prompts/observabilidade/estrategia-observabilidade.txt +134 -0
- package/dist/content/prompts/observabilidade/slos.md +215 -0
- package/dist/content/prompts/produto/discovery-inicial.md +203 -0
- package/dist/content/prompts/produto/discovery-inicial.txt +33 -0
- package/dist/content/prompts/requisitos/refinar-requisitos.md +232 -0
- package/dist/content/prompts/requisitos/refinar-requisitos.txt +40 -0
- package/dist/content/prompts/seguranca/analise-seguranca.md +243 -0
- package/dist/content/prompts/seguranca/pentest-checklist.md +333 -0
- package/dist/content/prompts/seguranca/rate-limiting.md +356 -0
- package/dist/content/prompts/seguranca/revisao-lgpd.md +227 -0
- package/dist/content/prompts/seguranca/threat-modeling.md +224 -0
- package/dist/content/prompts/testes/contract-testing.md +340 -0
- package/dist/content/prompts/testes/gerar-testes-unitarios.md +474 -0
- package/dist/content/prompts/testes/testes-e2e.md +460 -0
- package/dist/content/prompts/testes/testes-integracao.md +418 -0
- package/dist/content/prompts/testes/testes-performance.md +458 -0
- package/dist/content/prompts/ux/gerar-ui-stitch.md +151 -0
- package/dist/content/rules/GEMINI.md +841 -0
- package/dist/content/rules/RULES.md +835 -0
- package/dist/content/rules/adapters/copilot.md +10 -0
- package/dist/content/rules/adapters/cursor.md +10 -0
- package/dist/content/rules/adapters/gemini.md +13 -0
- package/dist/content/rules/adapters/windsurf.md +10 -0
- package/dist/content/skills/api-patterns/SKILL.md +81 -0
- package/dist/content/skills/api-patterns/api-style.md +42 -0
- package/dist/content/skills/api-patterns/auth.md +24 -0
- package/dist/content/skills/api-patterns/documentation.md +26 -0
- package/dist/content/skills/api-patterns/graphql.md +41 -0
- package/dist/content/skills/api-patterns/rate-limiting.md +31 -0
- package/dist/content/skills/api-patterns/response.md +37 -0
- package/dist/content/skills/api-patterns/rest.md +40 -0
- package/dist/content/skills/api-patterns/scripts/api_validator.py +211 -0
- package/dist/content/skills/api-patterns/security-testing.md +122 -0
- package/dist/content/skills/api-patterns/trpc.md +41 -0
- package/dist/content/skills/api-patterns/versioning.md +22 -0
- package/dist/content/skills/app-builder/SKILL.md +75 -0
- package/dist/content/skills/app-builder/agent-coordination.md +71 -0
- package/dist/content/skills/app-builder/feature-building.md +53 -0
- package/dist/content/skills/app-builder/project-detection.md +34 -0
- package/dist/content/skills/app-builder/scaffolding.md +118 -0
- package/dist/content/skills/app-builder/tech-stack.md +40 -0
- package/dist/content/skills/app-builder/templates/SKILL.md +39 -0
- package/dist/content/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/dist/content/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/dist/content/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/dist/content/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/dist/content/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/dist/content/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/dist/content/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/dist/content/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
- package/dist/content/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
- package/dist/content/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
- package/dist/content/skills/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
- package/dist/content/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/dist/content/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
- package/dist/content/skills/architecture/SKILL.md +55 -0
- package/dist/content/skills/architecture/context-discovery.md +43 -0
- package/dist/content/skills/architecture/examples.md +94 -0
- package/dist/content/skills/architecture/pattern-selection.md +68 -0
- package/dist/content/skills/architecture/patterns-reference.md +50 -0
- package/dist/content/skills/architecture/trade-off-analysis.md +77 -0
- package/dist/content/skills/bash-linux/SKILL.md +199 -0
- package/dist/content/skills/behavioral-modes/SKILL.md +242 -0
- package/dist/content/skills/brainstorming/SKILL.md +163 -0
- package/dist/content/skills/brainstorming/dynamic-questioning.md +350 -0
- package/dist/content/skills/clean-code/SKILL.md +201 -0
- package/dist/content/skills/code-review-checklist/SKILL.md +109 -0
- package/dist/content/skills/database-design/SKILL.md +52 -0
- package/dist/content/skills/database-design/database-selection.md +43 -0
- package/dist/content/skills/database-design/indexing.md +39 -0
- package/dist/content/skills/database-design/migrations.md +48 -0
- package/dist/content/skills/database-design/optimization.md +36 -0
- package/dist/content/skills/database-design/orm-selection.md +30 -0
- package/dist/content/skills/database-design/schema-design.md +56 -0
- package/dist/content/skills/database-design/scripts/schema_validator.py +172 -0
- package/dist/content/skills/deployment-procedures/SKILL.md +241 -0
- package/dist/content/skills/doc.md +177 -0
- package/dist/content/skills/documentation-templates/SKILL.md +194 -0
- package/dist/content/skills/frontend-design/SKILL.md +396 -0
- package/dist/content/skills/frontend-design/animation-guide.md +331 -0
- package/dist/content/skills/frontend-design/color-system.md +311 -0
- package/dist/content/skills/frontend-design/decision-trees.md +418 -0
- package/dist/content/skills/frontend-design/motion-graphics.md +306 -0
- package/dist/content/skills/frontend-design/scripts/accessibility_checker.py +183 -0
- package/dist/content/skills/frontend-design/scripts/ux_audit.py +722 -0
- package/dist/content/skills/frontend-design/typography-system.md +345 -0
- package/dist/content/skills/frontend-design/ux-psychology.md +541 -0
- package/dist/content/skills/frontend-design/visual-effects.md +383 -0
- package/dist/content/skills/game-development/2d-games/SKILL.md +119 -0
- package/dist/content/skills/game-development/3d-games/SKILL.md +135 -0
- package/dist/content/skills/game-development/SKILL.md +167 -0
- package/dist/content/skills/game-development/game-art/SKILL.md +185 -0
- package/dist/content/skills/game-development/game-audio/SKILL.md +190 -0
- package/dist/content/skills/game-development/game-design/SKILL.md +129 -0
- package/dist/content/skills/game-development/mobile-games/SKILL.md +108 -0
- package/dist/content/skills/game-development/multiplayer/SKILL.md +132 -0
- package/dist/content/skills/game-development/pc-games/SKILL.md +144 -0
- package/dist/content/skills/game-development/vr-ar/SKILL.md +123 -0
- package/dist/content/skills/game-development/web-games/SKILL.md +150 -0
- package/dist/content/skills/geo-fundamentals/SKILL.md +156 -0
- package/dist/content/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/dist/content/skills/i18n-localization/SKILL.md +154 -0
- package/dist/content/skills/i18n-localization/scripts/i18n_checker.py +241 -0
- package/dist/content/skills/intelligent-routing/SKILL.md +334 -0
- package/dist/content/skills/lint-and-validate/SKILL.md +45 -0
- package/dist/content/skills/lint-and-validate/scripts/lint_runner.py +172 -0
- package/dist/content/skills/lint-and-validate/scripts/type_coverage.py +173 -0
- package/dist/content/skills/mcp-builder/SKILL.md +176 -0
- package/dist/content/skills/mobile-design/SKILL.md +394 -0
- package/dist/content/skills/mobile-design/decision-trees.md +516 -0
- package/dist/content/skills/mobile-design/mobile-backend.md +491 -0
- package/dist/content/skills/mobile-design/mobile-color-system.md +420 -0
- package/dist/content/skills/mobile-design/mobile-debugging.md +122 -0
- package/dist/content/skills/mobile-design/mobile-design-thinking.md +357 -0
- package/dist/content/skills/mobile-design/mobile-navigation.md +458 -0
- package/dist/content/skills/mobile-design/mobile-performance.md +767 -0
- package/dist/content/skills/mobile-design/mobile-testing.md +356 -0
- package/dist/content/skills/mobile-design/mobile-typography.md +433 -0
- package/dist/content/skills/mobile-design/platform-android.md +666 -0
- package/dist/content/skills/mobile-design/platform-ios.md +561 -0
- package/dist/content/skills/mobile-design/scripts/mobile_audit.py +670 -0
- package/dist/content/skills/mobile-design/touch-psychology.md +537 -0
- package/dist/content/skills/nextjs-best-practices/SKILL.md +203 -0
- package/dist/content/skills/nodejs-best-practices/SKILL.md +333 -0
- package/dist/content/skills/parallel-agents/SKILL.md +175 -0
- package/dist/content/skills/performance-profiling/SKILL.md +143 -0
- package/dist/content/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
- package/dist/content/skills/plan-writing/SKILL.md +152 -0
- package/dist/content/skills/powershell-windows/SKILL.md +167 -0
- package/dist/content/skills/python-patterns/SKILL.md +441 -0
- package/dist/content/skills/react-patterns/SKILL.md +198 -0
- package/dist/content/skills/red-team-tactics/SKILL.md +199 -0
- package/dist/content/skills/seo-fundamentals/SKILL.md +129 -0
- package/dist/content/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/dist/content/skills/server-management/SKILL.md +161 -0
- package/dist/content/skills/systematic-debugging/SKILL.md +109 -0
- package/dist/content/skills/tailwind-patterns/SKILL.md +269 -0
- package/dist/content/skills/tdd-workflow/SKILL.md +149 -0
- package/dist/content/skills/testing-patterns/SKILL.md +178 -0
- package/dist/content/skills/testing-patterns/scripts/test_runner.py +219 -0
- package/dist/content/skills/vulnerability-scanner/SKILL.md +276 -0
- package/dist/content/skills/vulnerability-scanner/checklists.md +121 -0
- package/dist/content/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/dist/content/skills/webapp-testing/SKILL.md +187 -0
- package/dist/content/skills/webapp-testing/scripts/playwright_runner.py +173 -0
- package/dist/content/specialists/Especialista em Acessibilidade.md +266 -0
- package/dist/content/specialists/Especialista em An/303/241lise de Testes.md" +434 -0
- package/dist/content/specialists/Especialista em Arquitetura Avan/303/247ada.md" +358 -0
- package/dist/content/specialists/Especialista em Arquitetura de Software.md +177 -0
- package/dist/content/specialists/Especialista em Banco de Dados.md +260 -0
- package/dist/content/specialists/Especialista em Contrato de API.md +172 -0
- package/dist/content/specialists/Especialista em Dados e Analytics com IA.md +246 -0
- package/dist/content/specialists/Especialista em Debugging e Troubleshooting.md +191 -0
- package/dist/content/specialists/Especialista em Desenvolvimento Frontend.md +477 -0
- package/dist/content/specialists/Especialista em Desenvolvimento Mobile.md +241 -0
- package/dist/content/specialists/Especialista em Desenvolvimento e Vibe Coding Estruturado.md +417 -0
- package/dist/content/specialists/Especialista em DevOps e Infraestrutura.md +294 -0
- package/dist/content/specialists/Especialista em Documenta/303/247/303/243o T/303/251cnica.md" +227 -0
- package/dist/content/specialists/Especialista em Engenharia de Requisitos com IA.md +299 -0
- package/dist/content/specialists/Especialista em Explora/303/247/303/243o de Codebase.md" +179 -0
- package/dist/content/specialists/Especialista em Gest/303/243o de Produto.md" +179 -0
- package/dist/content/specialists/Especialista em Migra/303/247/303/243o e Moderniza/303/247/303/243o.md" +410 -0
- package/dist/content/specialists/Especialista em Modelagem e Arquitetura de Dom/303/255nio com IA.md" +248 -0
- package/dist/content/specialists/Especialista em Observabilidade.md +415 -0
- package/dist/content/specialists/Especialista em Performance e Escalabilidade.md +373 -0
- package/dist/content/specialists/Especialista em Plano de Execu/303/247/303/243o com IA.md" +341 -0
- package/dist/content/specialists/Especialista em Prototipagem R/303/241pida com Google Stitch.md" +419 -0
- package/dist/content/specialists/Especialista em Seguran/303/247a da Informa/303/247/303/243o.md" +508 -0
- package/dist/content/specialists/Especialista em UX Design.md +453 -0
- package/dist/content/specialists/INDEX.md +43 -0
- package/dist/content/templates/PRD.md +165 -0
- package/dist/content/templates/README.md +65 -0
- package/dist/content/templates/adr.md +103 -0
- package/dist/content/templates/arquitetura.md +279 -0
- package/dist/content/templates/backlog.md +185 -0
- package/dist/content/templates/checklist-seguranca.md +180 -0
- package/dist/content/templates/contexto.md +120 -0
- package/dist/content/templates/criterios-aceite.md +99 -0
- package/dist/content/templates/design-banco.md +270 -0
- package/dist/content/templates/design-doc.md +240 -0
- package/dist/content/templates/feature.md +88 -0
- package/dist/content/templates/historia-backend.md +84 -0
- package/dist/content/templates/historia-frontend.md +75 -0
- package/dist/content/templates/historia-usuario.md +125 -0
- package/dist/content/templates/mapa-navegacao.md +133 -0
- package/dist/content/templates/matriz-rastreabilidade.md +121 -0
- package/dist/content/templates/modelo-dominio.md +219 -0
- package/dist/content/templates/plano-testes.md +199 -0
- package/dist/content/templates/prototipo-stitch.md +138 -0
- package/dist/content/templates/requisitos.md +162 -0
- package/dist/content/templates/slo-sli.md +197 -0
- package/dist/content/workflows/README-MCP.md +363 -0
- package/dist/content/workflows/brainstorm.md +113 -0
- package/dist/content/workflows/create.md +59 -0
- package/dist/content/workflows/debug.md +103 -0
- package/dist/content/workflows/deploy.md +176 -0
- package/dist/content/workflows/enhance.md +63 -0
- package/dist/content/workflows/mcp-debug.md +506 -0
- package/dist/content/workflows/mcp-feature.md +385 -0
- package/dist/content/workflows/mcp-gate.md +413 -0
- package/dist/content/workflows/mcp-next.md +388 -0
- package/dist/content/workflows/mcp-refactor.md +600 -0
- package/dist/content/workflows/mcp-start.md +304 -0
- package/dist/content/workflows/mcp-status.md +400 -0
- package/dist/content/workflows/orchestrate.md +237 -0
- package/dist/content/workflows/plan.md +89 -0
- package/dist/content/workflows/preview.md +81 -0
- package/dist/content/workflows/status.md +86 -0
- package/dist/content/workflows/test.md +144 -0
- package/dist/content/workflows/ui-ux-pro-max.md +296 -0
- package/dist/flows/alternativas.d.ts +5 -0
- package/dist/flows/alternativas.d.ts.map +1 -0
- package/dist/flows/alternativas.js +218 -0
- package/dist/flows/alternativas.js.map +1 -0
- package/dist/flows/classifier.d.ts +10 -0
- package/dist/flows/classifier.d.ts.map +1 -0
- package/dist/flows/classifier.js +112 -0
- package/dist/flows/classifier.js.map +1 -0
- package/dist/flows/types.d.ts +23 -0
- package/dist/flows/types.d.ts.map +1 -0
- package/dist/flows/types.js +470 -0
- package/dist/flows/types.js.map +1 -0
- package/dist/gates/estrutura.d.ts +43 -0
- package/dist/gates/estrutura.d.ts.map +1 -0
- package/dist/gates/estrutura.js +199 -0
- package/dist/gates/estrutura.js.map +1 -0
- package/dist/gates/tiers.d.ts +42 -0
- package/dist/gates/tiers.d.ts.map +1 -0
- package/dist/gates/tiers.js +255 -0
- package/dist/gates/tiers.js.map +1 -0
- package/dist/gates/tiers.test.d.ts +2 -0
- package/dist/gates/tiers.test.d.ts.map +1 -0
- package/dist/gates/tiers.test.js +86 -0
- package/dist/gates/tiers.test.js.map +1 -0
- package/dist/gates/validator.d.ts +18 -0
- package/dist/gates/validator.d.ts.map +1 -0
- package/dist/gates/validator.js +171 -0
- package/dist/gates/validator.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +596 -0
- package/dist/index.js.map +1 -0
- package/dist/resources/index.d.ts +6 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +166 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/server.d.ts +6 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +27 -0
- package/dist/server.js.map +1 -0
- package/dist/state/context.d.ts +43 -0
- package/dist/state/context.d.ts.map +1 -0
- package/dist/state/context.js +92 -0
- package/dist/state/context.js.map +1 -0
- package/dist/state/memory.d.ts +54 -0
- package/dist/state/memory.d.ts.map +1 -0
- package/dist/state/memory.js +173 -0
- package/dist/state/memory.js.map +1 -0
- package/dist/state/storage.d.ts +37 -0
- package/dist/state/storage.d.ts.map +1 -0
- package/dist/state/storage.js +127 -0
- package/dist/state/storage.js.map +1 -0
- package/dist/stdio.d.ts +3 -0
- package/dist/stdio.d.ts.map +1 -0
- package/dist/stdio.js +350 -0
- package/dist/stdio.js.map +1 -0
- package/dist/tools/analise/index.d.ts +8 -0
- package/dist/tools/analise/index.d.ts.map +1 -0
- package/dist/tools/analise/index.js +8 -0
- package/dist/tools/analise/index.js.map +1 -0
- package/dist/tools/analise/performance.d.ts +25 -0
- package/dist/tools/analise/performance.d.ts.map +1 -0
- package/dist/tools/analise/performance.js +82 -0
- package/dist/tools/analise/performance.js.map +1 -0
- package/dist/tools/analise/qualidade.d.ts +25 -0
- package/dist/tools/analise/qualidade.d.ts.map +1 -0
- package/dist/tools/analise/qualidade.js +82 -0
- package/dist/tools/analise/qualidade.js.map +1 -0
- package/dist/tools/analise/relatorio.d.ts +31 -0
- package/dist/tools/analise/relatorio.d.ts.map +1 -0
- package/dist/tools/analise/relatorio.js +162 -0
- package/dist/tools/analise/relatorio.js.map +1 -0
- package/dist/tools/analise/seguranca.d.ts +25 -0
- package/dist/tools/analise/seguranca.d.ts.map +1 -0
- package/dist/tools/analise/seguranca.js +87 -0
- package/dist/tools/analise/seguranca.js.map +1 -0
- package/dist/tools/aprovar-gate.d.ts +40 -0
- package/dist/tools/aprovar-gate.d.ts.map +1 -0
- package/dist/tools/aprovar-gate.js +217 -0
- package/dist/tools/aprovar-gate.js.map +1 -0
- package/dist/tools/atualizar-codebase.d.ts +184 -0
- package/dist/tools/atualizar-codebase.d.ts.map +1 -0
- package/dist/tools/atualizar-codebase.js +199 -0
- package/dist/tools/atualizar-codebase.js.map +1 -0
- package/dist/tools/avaliar-entregavel.d.ts +31 -0
- package/dist/tools/avaliar-entregavel.d.ts.map +1 -0
- package/dist/tools/avaliar-entregavel.js +164 -0
- package/dist/tools/avaliar-entregavel.js.map +1 -0
- package/dist/tools/carregar-projeto.d.ts +32 -0
- package/dist/tools/carregar-projeto.d.ts.map +1 -0
- package/dist/tools/carregar-projeto.js +202 -0
- package/dist/tools/carregar-projeto.js.map +1 -0
- package/dist/tools/classificar.d.ts +46 -0
- package/dist/tools/classificar.d.ts.map +1 -0
- package/dist/tools/classificar.js +148 -0
- package/dist/tools/classificar.js.map +1 -0
- package/dist/tools/confirmar-classificacao.d.ts +35 -0
- package/dist/tools/confirmar-classificacao.d.ts.map +1 -0
- package/dist/tools/confirmar-classificacao.js +121 -0
- package/dist/tools/confirmar-classificacao.js.map +1 -0
- package/dist/tools/confirmar-stitch.d.ts +32 -0
- package/dist/tools/confirmar-stitch.d.ts.map +1 -0
- package/dist/tools/confirmar-stitch.js +176 -0
- package/dist/tools/confirmar-stitch.js.map +1 -0
- package/dist/tools/contexto.d.ts +29 -0
- package/dist/tools/contexto.d.ts.map +1 -0
- package/dist/tools/contexto.js +138 -0
- package/dist/tools/contexto.js.map +1 -0
- package/dist/tools/fluxos-alternativos.d.ts +79 -0
- package/dist/tools/fluxos-alternativos.d.ts.map +1 -0
- package/dist/tools/fluxos-alternativos.js +221 -0
- package/dist/tools/fluxos-alternativos.js.map +1 -0
- package/dist/tools/implementar-historia.d.ts +34 -0
- package/dist/tools/implementar-historia.d.ts.map +1 -0
- package/dist/tools/implementar-historia.js +175 -0
- package/dist/tools/implementar-historia.js.map +1 -0
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +291 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/iniciar-projeto.d.ts +64 -0
- package/dist/tools/iniciar-projeto.d.ts.map +1 -0
- package/dist/tools/iniciar-projeto.js +366 -0
- package/dist/tools/iniciar-projeto.js.map +1 -0
- package/dist/tools/injetar-conteudo.d.ts +41 -0
- package/dist/tools/injetar-conteudo.d.ts.map +1 -0
- package/dist/tools/injetar-conteudo.js +107 -0
- package/dist/tools/injetar-conteudo.js.map +1 -0
- package/dist/tools/proximo.d.ts +45 -0
- package/dist/tools/proximo.d.ts.map +1 -0
- package/dist/tools/proximo.js +571 -0
- package/dist/tools/proximo.js.map +1 -0
- package/dist/tools/salvar.d.ts +46 -0
- package/dist/tools/salvar.d.ts.map +1 -0
- package/dist/tools/salvar.js +176 -0
- package/dist/tools/salvar.js.map +1 -0
- package/dist/tools/status.d.ts +29 -0
- package/dist/tools/status.d.ts.map +1 -0
- package/dist/tools/status.js +171 -0
- package/dist/tools/status.js.map +1 -0
- package/dist/tools/validar-gate.d.ts +39 -0
- package/dist/tools/validar-gate.d.ts.map +1 -0
- package/dist/tools/validar-gate.js +131 -0
- package/dist/tools/validar-gate.js.map +1 -0
- package/dist/types/index.d.ts +81 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/memory.d.ts +171 -0
- package/dist/types/memory.d.ts.map +1 -0
- package/dist/types/memory.js +185 -0
- package/dist/types/memory.js.map +1 -0
- package/dist/types/response.d.ts +38 -0
- package/dist/types/response.d.ts.map +1 -0
- package/dist/types/response.js +35 -0
- package/dist/types/response.js.map +1 -0
- package/dist/utils/code-parser.d.ts +58 -0
- package/dist/utils/code-parser.d.ts.map +1 -0
- package/dist/utils/code-parser.js +182 -0
- package/dist/utils/code-parser.js.map +1 -0
- package/dist/utils/content-injector.d.ts +14 -0
- package/dist/utils/content-injector.d.ts.map +1 -0
- package/dist/utils/content-injector.js +88 -0
- package/dist/utils/content-injector.js.map +1 -0
- package/dist/utils/files.d.ts +73 -0
- package/dist/utils/files.d.ts.map +1 -0
- package/dist/utils/files.js +282 -0
- package/dist/utils/files.js.map +1 -0
- package/dist/utils/history.d.ts +28 -0
- package/dist/utils/history.d.ts.map +1 -0
- package/dist/utils/history.js +32 -0
- package/dist/utils/history.js.map +1 -0
- package/dist/utils/instructions.d.ts +16 -0
- package/dist/utils/instructions.d.ts.map +1 -0
- package/dist/utils/instructions.js +70 -0
- package/dist/utils/instructions.js.map +1 -0
- package/dist/utils/local-content.d.ts +21 -0
- package/dist/utils/local-content.d.ts.map +1 -0
- package/dist/utils/local-content.js +85 -0
- package/dist/utils/local-content.js.map +1 -0
- package/dist/utils/prompt-mapper.d.ts +33 -0
- package/dist/utils/prompt-mapper.d.ts.map +1 -0
- package/dist/utils/prompt-mapper.js +184 -0
- package/dist/utils/prompt-mapper.js.map +1 -0
- package/dist/utils/system-md.d.ts +7 -0
- package/dist/utils/system-md.d.ts.map +1 -0
- package/dist/utils/system-md.js +51 -0
- package/dist/utils/system-md.js.map +1 -0
- package/package.json +68 -0
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Estrutura obrigatória de entregáveis por fase
|
|
3
|
+
* Define seções que devem existir e tamanhos mínimos adaptativos por tier
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Estruturas obrigatórias por fase
|
|
7
|
+
*/
|
|
8
|
+
export const ESTRUTURAS_FASES = [
|
|
9
|
+
{
|
|
10
|
+
fase: 1,
|
|
11
|
+
nome: "PRD",
|
|
12
|
+
tamanho_minimo_por_tier: { essencial: 100, base: 300, avancado: 500 },
|
|
13
|
+
peso_estrutura: 0.3,
|
|
14
|
+
secoes: [
|
|
15
|
+
{ header: "^#{1,2}\\s*(problema|problem)", descricao: "Seção de Problema" },
|
|
16
|
+
{ header: "^#{1,2}\\s*(usuário|usuario|user|persona)", descricao: "Seção de Usuários/Personas", obrigatorio_tier: "base" },
|
|
17
|
+
{ header: "^#{1,2}\\s*(funcionalidade|feature|mvp|escopo)", descricao: "Seção de Funcionalidades/MVP" },
|
|
18
|
+
{ header: "^#{1,2}\\s*(métrica|metrica|sucesso|kpi)", descricao: "Seção de Métricas de Sucesso", obrigatorio_tier: "base" },
|
|
19
|
+
],
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
fase: 2,
|
|
23
|
+
nome: "Requisitos",
|
|
24
|
+
tamanho_minimo_por_tier: { essencial: 100, base: 300, avancado: 400 },
|
|
25
|
+
peso_estrutura: 0.3,
|
|
26
|
+
secoes: [
|
|
27
|
+
{ header: "^#{1,2}\\s*(requisito|requirement|rf\\d|funcional)", descricao: "Requisitos Funcionais" },
|
|
28
|
+
{ header: "^#{1,2}\\s*(não.?funcional|nfr|rnf|performance|segurança)", descricao: "Requisitos Não-Funcionais", obrigatorio_tier: "base" },
|
|
29
|
+
],
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
fase: 3,
|
|
33
|
+
nome: "UX/Design",
|
|
34
|
+
tamanho_minimo_por_tier: { essencial: 50, base: 200, avancado: 300 },
|
|
35
|
+
peso_estrutura: 0.2,
|
|
36
|
+
secoes: [
|
|
37
|
+
{ header: "^#{1,2}\\s*(jornada|journey|fluxo|flow)", descricao: "Jornadas/Fluxos" },
|
|
38
|
+
{ header: "^#{1,2}\\s*(wireframe|protótipo|prototipo|tela|screen)", descricao: "Wireframes/Protótipos", obrigatorio_tier: "base" },
|
|
39
|
+
],
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
fase: 4,
|
|
43
|
+
nome: "Domínio",
|
|
44
|
+
tamanho_minimo_por_tier: { essencial: 50, base: 200, avancado: 300 },
|
|
45
|
+
peso_estrutura: 0.3,
|
|
46
|
+
secoes: [
|
|
47
|
+
{ header: "^#{1,2}\\s*(entidade|entity|modelo|model)", descricao: "Entidades" },
|
|
48
|
+
{ header: "^#{1,2}\\s*(relacionamento|relação|relation)", descricao: "Relacionamentos", obrigatorio_tier: "base" },
|
|
49
|
+
],
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
fase: 5,
|
|
53
|
+
nome: "Banco de Dados",
|
|
54
|
+
tamanho_minimo_por_tier: { essencial: 50, base: 200, avancado: 300 },
|
|
55
|
+
peso_estrutura: 0.3,
|
|
56
|
+
secoes: [
|
|
57
|
+
{ header: "^#{1,2}\\s*(tabela|table|schema|modelo)", descricao: "Schema/Tabelas" },
|
|
58
|
+
],
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
fase: 6,
|
|
62
|
+
nome: "Arquitetura",
|
|
63
|
+
tamanho_minimo_por_tier: { essencial: 100, base: 300, avancado: 400 },
|
|
64
|
+
peso_estrutura: 0.3,
|
|
65
|
+
secoes: [
|
|
66
|
+
{ header: "^#{1,2}\\s*(c4|diagrama|arquitetura|architecture)", descricao: "Diagrama C4/Arquitetura", obrigatorio_tier: "base" },
|
|
67
|
+
{ header: "^#{1,2}\\s*(stack|tecnologia|technology)", descricao: "Stack Tecnológica" },
|
|
68
|
+
{ header: "^#{1,2}\\s*(adr|decisão|decision)", descricao: "ADRs/Decisões", obrigatorio_tier: "base" },
|
|
69
|
+
],
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
fase: 7,
|
|
73
|
+
nome: "Segurança",
|
|
74
|
+
tamanho_minimo_por_tier: { essencial: 50, base: 200, avancado: 300 },
|
|
75
|
+
peso_estrutura: 0.3,
|
|
76
|
+
secoes: [
|
|
77
|
+
{ header: "^#{1,2}\\s*(owasp|vulnerabilidade|security)", descricao: "OWASP/Vulnerabilidades", obrigatorio_tier: "avancado" },
|
|
78
|
+
{ header: "^#{1,2}\\s*(autenticação|authentication|auth)", descricao: "Autenticação" },
|
|
79
|
+
],
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
fase: 8,
|
|
83
|
+
nome: "Testes",
|
|
84
|
+
tamanho_minimo_por_tier: { essencial: 50, base: 150, avancado: 250 },
|
|
85
|
+
peso_estrutura: 0.3,
|
|
86
|
+
secoes: [
|
|
87
|
+
{ header: "^#{1,2}\\s*(estratégia|strategy|plano)", descricao: "Estratégia de Testes" },
|
|
88
|
+
{ header: "^#{1,2}\\s*(caso|case|cenário|scenario)", descricao: "Casos de Teste", obrigatorio_tier: "base" },
|
|
89
|
+
],
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
fase: 9,
|
|
93
|
+
nome: "Backlog",
|
|
94
|
+
tamanho_minimo_por_tier: { essencial: 100, base: 300, avancado: 400 },
|
|
95
|
+
peso_estrutura: 0.3,
|
|
96
|
+
secoes: [
|
|
97
|
+
{ header: "^#{1,2}\\s*(épico|epic)", descricao: "Épicos" },
|
|
98
|
+
{ header: "^#{1,2}\\s*(história|story|us\\d)", descricao: "Histórias de Usuário" },
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
fase: 10,
|
|
103
|
+
nome: "Contratos API",
|
|
104
|
+
tamanho_minimo_por_tier: { essencial: 50, base: 200, avancado: 300 },
|
|
105
|
+
peso_estrutura: 0.3,
|
|
106
|
+
secoes: [
|
|
107
|
+
{ header: "^#{1,2}\\s*(endpoint|api|openapi|swagger)", descricao: "Endpoints/OpenAPI" },
|
|
108
|
+
],
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
fase: 11,
|
|
112
|
+
nome: "Implementação",
|
|
113
|
+
tamanho_minimo_por_tier: { essencial: 50, base: 150, avancado: 200 },
|
|
114
|
+
peso_estrutura: 0.2,
|
|
115
|
+
secoes: [
|
|
116
|
+
{ header: "^#{1,2}\\s*(código|code|implement)", descricao: "Código Implementado" },
|
|
117
|
+
],
|
|
118
|
+
},
|
|
119
|
+
];
|
|
120
|
+
/**
|
|
121
|
+
* Get estrutura for a specific phase
|
|
122
|
+
*/
|
|
123
|
+
export function getEstruturaFase(fase) {
|
|
124
|
+
return ESTRUTURAS_FASES.find(e => e.fase === fase);
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Verifica se uma seção é obrigatória para o tier atual
|
|
128
|
+
*/
|
|
129
|
+
function isSecaoObrigatoria(secao, tier) {
|
|
130
|
+
const tierMinimo = secao.obrigatorio_tier || "essencial";
|
|
131
|
+
const tierOrder = { essencial: 0, base: 1, avancado: 2 };
|
|
132
|
+
return tierOrder[tier] >= tierOrder[tierMinimo];
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Validate estrutura of an entregavel com suporte a tier
|
|
136
|
+
*/
|
|
137
|
+
export function validarEstrutura(fase, entregavel, tier = "base" // Tier para determinar exigências
|
|
138
|
+
) {
|
|
139
|
+
const estrutura = getEstruturaFase(fase);
|
|
140
|
+
if (!estrutura) {
|
|
141
|
+
// Fase sem estrutura definida - aceita qualquer coisa
|
|
142
|
+
return {
|
|
143
|
+
valido: true,
|
|
144
|
+
score: 100,
|
|
145
|
+
secoes_encontradas: [],
|
|
146
|
+
secoes_faltando: [],
|
|
147
|
+
tamanho_ok: true,
|
|
148
|
+
feedback: [],
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
const secoes_encontradas = [];
|
|
152
|
+
const secoes_faltando = [];
|
|
153
|
+
const feedback = [];
|
|
154
|
+
const conteudoLower = entregavel.toLowerCase();
|
|
155
|
+
// Filtra seções obrigatórias para o tier atual
|
|
156
|
+
const secoesObrigatorias = estrutura.secoes.filter(s => isSecaoObrigatoria(s, tier));
|
|
157
|
+
// Check each section
|
|
158
|
+
for (const secao of secoesObrigatorias) {
|
|
159
|
+
const regex = new RegExp(secao.header, "im");
|
|
160
|
+
const match = conteudoLower.match(regex);
|
|
161
|
+
if (match) {
|
|
162
|
+
secoes_encontradas.push(secao.descricao);
|
|
163
|
+
// Check minimum size if specified
|
|
164
|
+
if (secao.tamanho_minimo) {
|
|
165
|
+
const startIndex = match.index + match[0].length;
|
|
166
|
+
const restContent = entregavel.slice(startIndex, startIndex + secao.tamanho_minimo + 100);
|
|
167
|
+
if (restContent.length < secao.tamanho_minimo) {
|
|
168
|
+
feedback.push(`⚠️ ${secao.descricao}: conteúdo muito curto (mín: ${secao.tamanho_minimo} chars)`);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
secoes_faltando.push(secao.descricao);
|
|
174
|
+
feedback.push(`❌ Seção obrigatória faltando: ${secao.descricao}`);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
// Check total size based on tier
|
|
178
|
+
const tamanhoMinimo = estrutura.tamanho_minimo_por_tier[tier];
|
|
179
|
+
const tamanho_ok = entregavel.length >= tamanhoMinimo;
|
|
180
|
+
if (!tamanho_ok) {
|
|
181
|
+
feedback.push(`⚠️ Documento muito curto: ${entregavel.length}/${tamanhoMinimo} caracteres`);
|
|
182
|
+
}
|
|
183
|
+
// Calculate score
|
|
184
|
+
const secaoScore = secoesObrigatorias.length > 0
|
|
185
|
+
? (secoes_encontradas.length / secoesObrigatorias.length) * 100
|
|
186
|
+
: 100;
|
|
187
|
+
const tamanhoScore = tamanho_ok ? 100 : (entregavel.length / tamanhoMinimo) * 100;
|
|
188
|
+
const score = Math.round((secaoScore * estrutura.peso_estrutura) + (tamanhoScore * (1 - estrutura.peso_estrutura)));
|
|
189
|
+
const valido = secoes_faltando.length === 0 && tamanho_ok;
|
|
190
|
+
return {
|
|
191
|
+
valido,
|
|
192
|
+
score,
|
|
193
|
+
secoes_encontradas,
|
|
194
|
+
secoes_faltando,
|
|
195
|
+
tamanho_ok,
|
|
196
|
+
feedback,
|
|
197
|
+
};
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=estrutura.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"estrutura.js","sourceRoot":"","sources":["../../src/gates/estrutura.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sistema de Gates Adaptativos - Tiers
|
|
3
|
+
*
|
|
4
|
+
* Define itens de gate por tier:
|
|
5
|
+
* - essencial: mínimo viável (POCs, scripts)
|
|
6
|
+
* - base: desenvolvimento padrão (tools internas, produtos simples)
|
|
7
|
+
* - avancado: sistemas críticos (produtos complexos)
|
|
8
|
+
*
|
|
9
|
+
* Cada tier herda os itens do tier anterior.
|
|
10
|
+
*/
|
|
11
|
+
import type { TierGate, TipoArtefato, NivelComplexidade } from "../types/index.js";
|
|
12
|
+
/**
|
|
13
|
+
* Itens de gate por tier e fase
|
|
14
|
+
* A herança funciona assim: base = essencial + base, avancado = essencial + base + avancado
|
|
15
|
+
*/
|
|
16
|
+
export declare const GATE_TIERS: Record<TierGate, Record<number, string[]>>;
|
|
17
|
+
/**
|
|
18
|
+
* Obtém checklist completo para uma fase baseado no tier
|
|
19
|
+
* Herda itens dos tiers anteriores automaticamente
|
|
20
|
+
*/
|
|
21
|
+
export declare function getChecklistPorTier(fase: number, tier: TierGate): string[];
|
|
22
|
+
/**
|
|
23
|
+
* Determina tier de gate baseado em tipo de artefato + complexidade
|
|
24
|
+
*
|
|
25
|
+
* Regras:
|
|
26
|
+
* - POC/Script: sempre essencial (mínimo viável)
|
|
27
|
+
* - Internal: essencial para simples, base para médio/complexo
|
|
28
|
+
* - Product: nunca essencial (base para simples/médio, avançado para complexo)
|
|
29
|
+
*/
|
|
30
|
+
export declare function determinarTierGate(tipo: TipoArtefato, nivel: NivelComplexidade): TierGate;
|
|
31
|
+
/**
|
|
32
|
+
* Retorna contagem de itens de gate por tier para uma configuração
|
|
33
|
+
*/
|
|
34
|
+
export declare function contarItensGate(tier: TierGate): {
|
|
35
|
+
fases: number;
|
|
36
|
+
itens: number;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Descrição amigável do tier para exibição
|
|
40
|
+
*/
|
|
41
|
+
export declare function descreverTier(tier: TierGate): string;
|
|
42
|
+
//# sourceMappingURL=tiers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tiers.d.ts","sourceRoot":"","sources":["../../src/gates/tiers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEnF;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAqJjE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,CAuB1E;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAC9B,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,iBAAiB,GACzB,QAAQ,CAoBV;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CA2BhF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAWpD"}
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sistema de Gates Adaptativos - Tiers
|
|
3
|
+
*
|
|
4
|
+
* Define itens de gate por tier:
|
|
5
|
+
* - essencial: mínimo viável (POCs, scripts)
|
|
6
|
+
* - base: desenvolvimento padrão (tools internas, produtos simples)
|
|
7
|
+
* - avancado: sistemas críticos (produtos complexos)
|
|
8
|
+
*
|
|
9
|
+
* Cada tier herda os itens do tier anterior.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Itens de gate por tier e fase
|
|
13
|
+
* A herança funciona assim: base = essencial + base, avancado = essencial + base + avancado
|
|
14
|
+
*/
|
|
15
|
+
export const GATE_TIERS = {
|
|
16
|
+
essencial: {
|
|
17
|
+
// Fase 1: Produto
|
|
18
|
+
1: [
|
|
19
|
+
"Problema claramente definido",
|
|
20
|
+
"Escopo MVP com funcionalidades listadas",
|
|
21
|
+
],
|
|
22
|
+
// Fase 2: Requisitos
|
|
23
|
+
2: [
|
|
24
|
+
"Funcionalidades principais listadas",
|
|
25
|
+
],
|
|
26
|
+
// Fase 3: UX/Design
|
|
27
|
+
3: [
|
|
28
|
+
"Fluxo principal esboçado",
|
|
29
|
+
],
|
|
30
|
+
// Fase 4: Arquitetura
|
|
31
|
+
4: [
|
|
32
|
+
"Stack tecnológica definida",
|
|
33
|
+
],
|
|
34
|
+
// Fase 5: Código/Implementação
|
|
35
|
+
5: [
|
|
36
|
+
"Código principal implementado",
|
|
37
|
+
"Funcionalidade testada manualmente",
|
|
38
|
+
],
|
|
39
|
+
},
|
|
40
|
+
base: {
|
|
41
|
+
// Fase 1: Produto - adiciona
|
|
42
|
+
1: [
|
|
43
|
+
"Personas ou usuários identificados",
|
|
44
|
+
"Métricas de sucesso definidas",
|
|
45
|
+
],
|
|
46
|
+
// Fase 2: Requisitos - adiciona
|
|
47
|
+
2: [
|
|
48
|
+
"Requisitos com IDs únicos (RF001)",
|
|
49
|
+
"Critérios de aceite básicos",
|
|
50
|
+
"Requisitos não-funcionais principais",
|
|
51
|
+
],
|
|
52
|
+
// Fase 3: UX/Design - adiciona
|
|
53
|
+
3: [
|
|
54
|
+
"Wireframes ou protótipos criados",
|
|
55
|
+
"Jornadas do usuário mapeadas",
|
|
56
|
+
],
|
|
57
|
+
// Fase 4: Modelo de Domínio
|
|
58
|
+
4: [
|
|
59
|
+
"Entidades identificadas",
|
|
60
|
+
"Relacionamentos definidos",
|
|
61
|
+
],
|
|
62
|
+
// Fase 5: Banco de Dados
|
|
63
|
+
5: [
|
|
64
|
+
"Modelo de dados definido",
|
|
65
|
+
"Índices planejados",
|
|
66
|
+
],
|
|
67
|
+
// Fase 6: Arquitetura
|
|
68
|
+
6: [
|
|
69
|
+
"Diagrama C4 básico (níveis 1-2)",
|
|
70
|
+
"ADRs para decisões críticas",
|
|
71
|
+
],
|
|
72
|
+
// Fase 7: Segurança
|
|
73
|
+
7: [
|
|
74
|
+
"Autenticação definida",
|
|
75
|
+
"Dados sensíveis identificados",
|
|
76
|
+
],
|
|
77
|
+
// Fase 8: Testes
|
|
78
|
+
8: [
|
|
79
|
+
"Estratégia de testes definida",
|
|
80
|
+
"Meta de cobertura estabelecida",
|
|
81
|
+
],
|
|
82
|
+
// Fase 9: Backlog
|
|
83
|
+
9: [
|
|
84
|
+
"Épicos definidos",
|
|
85
|
+
"Histórias com critérios de aceite",
|
|
86
|
+
"Definition of Done estabelecido",
|
|
87
|
+
],
|
|
88
|
+
// Fase 10: Contrato API
|
|
89
|
+
10: [
|
|
90
|
+
"Esquema OpenAPI definido",
|
|
91
|
+
"Tipos gerados",
|
|
92
|
+
],
|
|
93
|
+
// Fase 11: Frontend
|
|
94
|
+
11: [
|
|
95
|
+
"Componentes implementados",
|
|
96
|
+
"Integração com mocks",
|
|
97
|
+
],
|
|
98
|
+
// Fase 12: Backend
|
|
99
|
+
12: [
|
|
100
|
+
"API implementada",
|
|
101
|
+
"Testes unitários passando",
|
|
102
|
+
],
|
|
103
|
+
// Fase 13: Integração
|
|
104
|
+
13: [
|
|
105
|
+
"Frontend integrado ao Backend",
|
|
106
|
+
"Testes E2E básicos",
|
|
107
|
+
],
|
|
108
|
+
},
|
|
109
|
+
avancado: {
|
|
110
|
+
// Fase 2: Requisitos - adiciona
|
|
111
|
+
2: [
|
|
112
|
+
"Critérios de aceite em Gherkin",
|
|
113
|
+
"Matriz de rastreabilidade",
|
|
114
|
+
],
|
|
115
|
+
// Fase 4: Modelo de Domínio - adiciona DDD
|
|
116
|
+
4: [
|
|
117
|
+
"Bounded Contexts definidos",
|
|
118
|
+
"Aggregates identificados",
|
|
119
|
+
"Regras de negócio por entidade",
|
|
120
|
+
],
|
|
121
|
+
// Fase 6: Arquitetura - adiciona
|
|
122
|
+
6: [
|
|
123
|
+
"Diagrama C4 completo (níveis 1-4)",
|
|
124
|
+
"CQRS/Event Sourcing avaliados",
|
|
125
|
+
"Microserviços mapeados se aplicável",
|
|
126
|
+
],
|
|
127
|
+
// Fase 7: Segurança - adiciona
|
|
128
|
+
7: [
|
|
129
|
+
"OWASP Top 10 avaliado",
|
|
130
|
+
"Threat modeling realizado",
|
|
131
|
+
"Compliance verificado (LGPD/GDPR)",
|
|
132
|
+
],
|
|
133
|
+
// Fase 8: Performance (nova)
|
|
134
|
+
8: [
|
|
135
|
+
"Load testing planejado",
|
|
136
|
+
"Caching strategy definida",
|
|
137
|
+
"Métricas de performance",
|
|
138
|
+
],
|
|
139
|
+
// Fase 9: Observabilidade (nova)
|
|
140
|
+
9: [
|
|
141
|
+
"Estratégia de logs definida",
|
|
142
|
+
"Métricas configuradas",
|
|
143
|
+
"Tracing distribuído planejado",
|
|
144
|
+
"SLOs definidos",
|
|
145
|
+
],
|
|
146
|
+
// Fase 10: Testes - adiciona
|
|
147
|
+
10: [
|
|
148
|
+
"Contract testing planejado",
|
|
149
|
+
"Pirâmide de testes definida",
|
|
150
|
+
],
|
|
151
|
+
// Fase 11: Backlog - adiciona
|
|
152
|
+
11: [
|
|
153
|
+
"Sprints planejadas",
|
|
154
|
+
"Dependências mapeadas",
|
|
155
|
+
],
|
|
156
|
+
// Fase 13: Integração - adiciona
|
|
157
|
+
13: [
|
|
158
|
+
"Pipeline CI/CD completo",
|
|
159
|
+
"Monitoramento ativo",
|
|
160
|
+
],
|
|
161
|
+
},
|
|
162
|
+
};
|
|
163
|
+
/**
|
|
164
|
+
* Obtém checklist completo para uma fase baseado no tier
|
|
165
|
+
* Herda itens dos tiers anteriores automaticamente
|
|
166
|
+
*/
|
|
167
|
+
export function getChecklistPorTier(fase, tier) {
|
|
168
|
+
const items = [];
|
|
169
|
+
// Sempre inclui essencial
|
|
170
|
+
if (GATE_TIERS.essencial[fase]) {
|
|
171
|
+
items.push(...GATE_TIERS.essencial[fase]);
|
|
172
|
+
}
|
|
173
|
+
// Se tier >= base, inclui base
|
|
174
|
+
if (tier === "base" || tier === "avancado") {
|
|
175
|
+
if (GATE_TIERS.base[fase]) {
|
|
176
|
+
items.push(...GATE_TIERS.base[fase]);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
// Se tier == avancado, inclui avancado
|
|
180
|
+
if (tier === "avancado") {
|
|
181
|
+
if (GATE_TIERS.avancado[fase]) {
|
|
182
|
+
items.push(...GATE_TIERS.avancado[fase]);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
return items;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Determina tier de gate baseado em tipo de artefato + complexidade
|
|
189
|
+
*
|
|
190
|
+
* Regras:
|
|
191
|
+
* - POC/Script: sempre essencial (mínimo viável)
|
|
192
|
+
* - Internal: essencial para simples, base para médio/complexo
|
|
193
|
+
* - Product: nunca essencial (base para simples/médio, avançado para complexo)
|
|
194
|
+
*/
|
|
195
|
+
export function determinarTierGate(tipo, nivel) {
|
|
196
|
+
// POC e scripts sempre essencial
|
|
197
|
+
if (tipo === "poc" || tipo === "script") {
|
|
198
|
+
return "essencial";
|
|
199
|
+
}
|
|
200
|
+
// Internal: base para médio/complexo, essencial para simples
|
|
201
|
+
if (tipo === "internal") {
|
|
202
|
+
return nivel === "simples" ? "essencial" : "base";
|
|
203
|
+
}
|
|
204
|
+
// Product: escala com complexidade, nunca essencial
|
|
205
|
+
switch (nivel) {
|
|
206
|
+
case "simples":
|
|
207
|
+
return "base";
|
|
208
|
+
case "medio":
|
|
209
|
+
return "base";
|
|
210
|
+
case "complexo":
|
|
211
|
+
return "avancado";
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Retorna contagem de itens de gate por tier para uma configuração
|
|
216
|
+
*/
|
|
217
|
+
export function contarItensGate(tier) {
|
|
218
|
+
let totalItens = 0;
|
|
219
|
+
const fasesSet = new Set();
|
|
220
|
+
// Conta essencial
|
|
221
|
+
for (const [fase, items] of Object.entries(GATE_TIERS.essencial)) {
|
|
222
|
+
fasesSet.add(Number(fase));
|
|
223
|
+
totalItens += items.length;
|
|
224
|
+
}
|
|
225
|
+
// Se tier >= base
|
|
226
|
+
if (tier === "base" || tier === "avancado") {
|
|
227
|
+
for (const [fase, items] of Object.entries(GATE_TIERS.base)) {
|
|
228
|
+
fasesSet.add(Number(fase));
|
|
229
|
+
totalItens += items.length;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
// Se tier == avancado
|
|
233
|
+
if (tier === "avancado") {
|
|
234
|
+
for (const [fase, items] of Object.entries(GATE_TIERS.avancado)) {
|
|
235
|
+
fasesSet.add(Number(fase));
|
|
236
|
+
totalItens += items.length;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
return { fases: fasesSet.size, itens: totalItens };
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Descrição amigável do tier para exibição
|
|
243
|
+
*/
|
|
244
|
+
export function descreverTier(tier) {
|
|
245
|
+
const stats = contarItensGate(tier);
|
|
246
|
+
switch (tier) {
|
|
247
|
+
case "essencial":
|
|
248
|
+
return `Tier Essencial (${stats.fases} fases, ${stats.itens} validações) - Mínimo viável para POCs e scripts`;
|
|
249
|
+
case "base":
|
|
250
|
+
return `Tier Base (${stats.fases} fases, ${stats.itens} validações) - Desenvolvimento padrão`;
|
|
251
|
+
case "avancado":
|
|
252
|
+
return `Tier Avançado (${stats.fases} fases, ${stats.itens} validações) - Sistemas críticos`;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
//# sourceMappingURL=tiers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tiers.js","sourceRoot":"","sources":["../../src/gates/tiers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tiers.test.d.ts","sourceRoot":"","sources":["../../src/gates/tiers.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { describe, it, expect } from 'vitest';
|
|
2
|
+
import { determinarTierGate, getChecklistPorTier, contarItensGate } from './tiers.js';
|
|
3
|
+
import { validarEstrutura } from './estrutura.js';
|
|
4
|
+
describe('Sistema de Gates Adaptativos', () => {
|
|
5
|
+
describe('determinarTierGate', () => {
|
|
6
|
+
it('deve retornar essencial para POCs e Scripts', () => {
|
|
7
|
+
expect(determinarTierGate('poc', 'simples')).toBe('essencial');
|
|
8
|
+
expect(determinarTierGate('poc', 'complexo')).toBe('essencial');
|
|
9
|
+
expect(determinarTierGate('script', 'medio')).toBe('essencial');
|
|
10
|
+
});
|
|
11
|
+
it('deve retornar base ou essencial para Internal', () => {
|
|
12
|
+
expect(determinarTierGate('internal', 'simples')).toBe('essencial');
|
|
13
|
+
expect(determinarTierGate('internal', 'medio')).toBe('base');
|
|
14
|
+
expect(determinarTierGate('internal', 'complexo')).toBe('base');
|
|
15
|
+
});
|
|
16
|
+
it('deve escalar Product de base até avancado', () => {
|
|
17
|
+
expect(determinarTierGate('product', 'simples')).toBe('base');
|
|
18
|
+
expect(determinarTierGate('product', 'medio')).toBe('base');
|
|
19
|
+
expect(determinarTierGate('product', 'complexo')).toBe('avancado');
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
describe('getChecklistPorTier', () => {
|
|
23
|
+
it('essencial deve ter itens minimos', () => {
|
|
24
|
+
const checklist = getChecklistPorTier(1, 'essencial');
|
|
25
|
+
expect(checklist).toContain('Problema claramente definido');
|
|
26
|
+
expect(checklist).not.toContain('Personas ou usuários identificados'); // Apenas base
|
|
27
|
+
});
|
|
28
|
+
it('base deve herdar essencial', () => {
|
|
29
|
+
const checklist = getChecklistPorTier(1, 'base');
|
|
30
|
+
expect(checklist).toContain('Problema claramente definido'); // Herdado
|
|
31
|
+
expect(checklist).toContain('Personas ou usuários identificados'); // Base
|
|
32
|
+
});
|
|
33
|
+
it('avancado deve ter itens especificos', () => {
|
|
34
|
+
const checklist = getChecklistPorTier(6, 'avancado'); // Arquitetura
|
|
35
|
+
expect(checklist).toContain('Diagrama C4 completo (níveis 1-4)'); // Avancado
|
|
36
|
+
expect(checklist).toContain('Diagrama C4 básico (níveis 1-2)'); // Base
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
describe('contarItensGate', () => {
|
|
40
|
+
it('advanced deve ter mais itens que base', () => {
|
|
41
|
+
const countBase = contarItensGate('base');
|
|
42
|
+
const countAdv = contarItensGate('avancado');
|
|
43
|
+
expect(countAdv.itens).toBeGreaterThan(countBase.itens);
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
describe('validarEstrutura (Adaptativo)', () => {
|
|
47
|
+
// Mock de PRD pequeno (200 chars)
|
|
48
|
+
const prdPequeno = `
|
|
49
|
+
# Problema
|
|
50
|
+
O problema é x.
|
|
51
|
+
# Funcionalidades
|
|
52
|
+
Func A, Func B.
|
|
53
|
+
`.padEnd(200, 'a'); // Preenche até 200 chars
|
|
54
|
+
// Mock de PRD médio (400 chars)
|
|
55
|
+
const prdMedio = `
|
|
56
|
+
# Problema
|
|
57
|
+
O problema é muito complexo...
|
|
58
|
+
# Usuários
|
|
59
|
+
Devs, QAs.
|
|
60
|
+
# Funcionalidades
|
|
61
|
+
Feature 1, 2, 3.
|
|
62
|
+
# Métricas
|
|
63
|
+
KPIs de sucesso.
|
|
64
|
+
`.padEnd(400, 'a');
|
|
65
|
+
it('PRD pequeno deve passar no tier essencial (min 100)', () => {
|
|
66
|
+
const result = validarEstrutura(1, prdPequeno, 'essencial');
|
|
67
|
+
expect(result.tamanho_ok).toBe(true);
|
|
68
|
+
expect(result.secoes_faltando).toHaveLength(0); // Essencial só pede problema e funcionalidades
|
|
69
|
+
});
|
|
70
|
+
it('PRD pequeno deve falhar no tier base (min 300)', () => {
|
|
71
|
+
const result = validarEstrutura(1, prdPequeno, 'base');
|
|
72
|
+
expect(result.tamanho_ok).toBe(false); // < 300
|
|
73
|
+
});
|
|
74
|
+
it('PRD pequeno deve falhar por seções faltantes no tier base', () => {
|
|
75
|
+
const result = validarEstrutura(1, prdPequeno, 'base');
|
|
76
|
+
// Base exige Usuários e Métricas, que não estão no prdPequeno
|
|
77
|
+
expect(result.secoes_faltando).toContain('Seção de Usuários/Personas');
|
|
78
|
+
});
|
|
79
|
+
it('PRD médio deve passar no tier base', () => {
|
|
80
|
+
const result = validarEstrutura(1, prdMedio, 'base');
|
|
81
|
+
expect(result.tamanho_ok).toBe(true); // >= 300
|
|
82
|
+
expect(result.secoes_faltando).toHaveLength(0);
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
//# sourceMappingURL=tiers.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tiers.test.js","sourceRoot":"","sources":["../../src/gates/tiers.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { GateResultado, Fase, TierGate } from "../types/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* Checklists de validação por fase (legado - mantido para compatibilidade)
|
|
4
|
+
* @deprecated Use getChecklistPorTier() para validação adaptativa
|
|
5
|
+
*/
|
|
6
|
+
export declare const GATE_CHECKLISTS: Record<number, string[]>;
|
|
7
|
+
/**
|
|
8
|
+
* Valida gate de uma fase com suporte a tier
|
|
9
|
+
* @param fase - Fase a validar
|
|
10
|
+
* @param entregavel - Conteúdo do entregável
|
|
11
|
+
* @param tier - Tier de validação (default: usa checklist da fase, que é tier 'base')
|
|
12
|
+
*/
|
|
13
|
+
export declare function validarGate(fase: Fase, entregavel: string, tier?: TierGate): GateResultado;
|
|
14
|
+
/**
|
|
15
|
+
* Formata resultado do gate para exibição
|
|
16
|
+
*/
|
|
17
|
+
export declare function formatarResultadoGate(resultado: GateResultado): string;
|
|
18
|
+
//# sourceMappingURL=validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/gates/validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGvE;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CA0DpD,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,WAAW,CACvB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,QAAQ,GAChB,aAAa,CAyBf;AAwDD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM,CA6BtE"}
|