# Precode System Foundations

> Inspeciona evidências de um projeto e mantém uma fundação pré-código corrigível, sem converter inferência em decisão.

- Skill: `cadugevaerd/precode-system-foundations` (Agent Skill)
- Install (CLI): `npx skillmds@latest add cadugevaerd/precode-system-foundations`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cadugevaerd/precode-system-foundations/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: cadugevaerd (https://skillmd.com/u/cadugevaerd)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/cadugevaerd/precode-system-foundations

---

# Pre-code System Foundations

Use antes de implementar. Inspecione o repositório (código, testes e docs) e registre cada módulo com `necessary`, `existing`, `missing`, `invalid` ou `not-verifiable`, sempre com evidência e confiança (`verified`, `inferred`, `unknown`). Inferências são hipóteses revisáveis, nunca decisões.

## Contrato operacional
1. Declare escopo, usuários, resultado e dono das decisões.
2. Inspecione contexto real antes de classificar; cite caminhos, testes ou decisões do usuário.
3. Atualize o estado com `scripts/foundationctl.py`, preservando `change_log` append-only.
4. Recomende separadamente `mvp`, `go_live` e `future`; use `decision_status: proposed` até aprovação explícita. Perguntas abertas bloqueiam decisões materiais.
5. Valide semanticamente e entregue uma leitura que permita correção posterior.

## Decomposição visível (obrigatória)

Todo bundle contém `decomposition` com `mode` (`modular` ou `single-module`), `rationale`, `boundaries`, `review_triggers` e `decision_status`. Modular exige boundaries que referenciem módulos existentes; single-module exige justificativa e gatilhos de revisão. A decisão permanece explícita e revisável.

## CLI
`python3 scripts/foundationctl.py init foundation.json --project Nome`
`python3 scripts/foundationctl.py validate foundation.json`
`python3 scripts/foundationctl.py apply-patch foundation.json patch.json`
`python3 scripts/foundationctl.py summary foundation.json`

O CLI aceita JSON Patch limitado a `add`, `remove`, `replace` e `test`, aplica em cópia, rejeita qualquer estado inválido e grava atomicamente. IDs de módulos seguem `MOD-NNN`; IDs de mudanças são únicos. O bundle é framework/database-neutral: não invente componentes, autorização, invariantes ou isolamento sem evidência. A fundação não é aprovação de produção.

