# Changelog

## 0.16.0 - 2026-06-30

- **Feature:** Corrige a rastreabilidade de provider/model/effort por etapa e por cliente.
  **Descrição:** Artefatos passam a resolver provider, modelo e effort a partir da seleção efetiva da etapa, incluindo OpenCode com `Kimi K2.7` em Project Discovery e respeito a overrides explícitos de `--model`/`--effort`. Isso evita registrar execuções de outros editores como se tivessem sido feitas no Codex.
- **Feature:** Adiciona telemetria de tokens na seção `## Rastreabilidade`.
  **Descrição:** Artefatos gerados pelo CLI agora registram tokens de entrada, saída e total com estimativa local por padrão, valores reportados pelo provider via `SDD_USAGE_*` quando disponíveis e custo estimado em USD quando houver pricing configurado para o modelo.
- **Feature:** Adiciona tempo de geração por artefato.
  **Descrição:** A rastreabilidade passa a registrar início, fim, duração total e, quando informado pelo provider/editor, início da execução e duração das fases de reasoning e execution via `SDD_GENERATION_*`.
- **Alteração:** Integra telemetria provider-reported ao `sdd artifact save`.
  **Descrição:** Artefatos produzidos fora do CLI podem receber os campos de tokens e tempo ao serem salvos, sem duplicar linhas existentes de rastreabilidade e preservando a fonte como `provider-reported`.
- **Alteração:** Sincroniza documentação e superfícies de clientes.
  **Descrição:** Docs, clients e skills geradas para Codex, Claude, Cursor, OpenCode, Devin, Trae e Antigravity documentam os novos contratos de rastreabilidade, variáveis de ambiente e comportamento esperado em editores diferentes.
- **Teste:** Cobre roteamento OpenCode/Kimi, telemetria de tokens, tempo de geração e injeção em `artifact save`.
  **Descrição:** A suíte valida os cenários de provider/model/effort corretos, contagem provider-reported, campos de duração e ausência de regressão nos artefatos gerados.

## 0.13.3 - 2026-06-16

- **Feature:** Adiciona `sdd resolve-input`, fonte única do contexto-esqueleto do orquestrador.
  **Descrição:** Detecta card ID, retomada ou nova orquestração e devolve o `--name` canônico, a próxima etapa e os artefatos existentes — idêntico para card, bot ou texto livre. A detecção de card funciona inclusive quando a entrada chega num único argumento citado (`"$ARGUMENTS"`).
- **Correção (multiplataforma):** Resolve executáveis via PATH+PATHEXT e normaliza separadores de path para `/`.
  **Descrição:** Spawns de `npx`/`pnpm`/`pm2`/CLIs de provider/codegraph e dos adapters de IA passam a resolver shims `.cmd`/`.bat` no Windows; `command_available`/`command_exists` usam PATHEXT (CodeGraph/Lexa voltam a ser detectados); `.mcp.json`, as ações de install e a saída JSON do discover deixam de vazar `\`; `$EDITOR`/`$VISUAL` com argumentos são divididos corretamente.
- **Correção:** `sdd update` deixa de usar um projeto-consumidor (descoberto via cwd/exe) como fonte da camada ao atualizar OUTRO projeto.
  **Descrição:** A descoberta automática passa a aceitar apenas a distribuição real (layout flat) ou os arquivos embutidos; formas `.sdd` de consumidor só via `SDD_LAYER_ROOT` explícito. Evita copiar surfaces defasadas entre projetos.
- **Correção:** Sincroniza o gerador da orchestration skill do Claude com o surface deployado (seção de preflight/fallback manual do CLI), zerando o drift do `sdd doctor`.
- **Alteração:** `.mcp.json` e `.cursor/mcp.json` deixam de ser versionados e embutidos.
  **Descrição:** São gerados por projeto (`render_mcp_json`) e carregavam o path absoluto da máquina; `sdd update` agora os adiciona ao `.gitignore` de todo projeto e o binário não os embute mais.

## 0.13.2 - 2026-06-12

- **Correção:** Torna a resolução do CLI `sdd` resiliente em shells de editores e agents.
  **Descrição:** As superfícies de Trae, Cursor, Devin, opencode e os docs de cliente agora orientam o preflight `command -v sdd`, o fallback `cargo run --bin sdd -- ...` no checkout fonte `sdd-layer` e o ajuste de `$HOME/.cargo/bin` no `PATH`, evitando buscas manuais e atrasos quando o shell do cliente não herda o ambiente interativo.
- **Alteração:** Expande o Project Discovery como artefato de onboarding.
  **Descrição:** O discovery passa a materializar inventário técnico detalhado, evidências de arquitetura, visualizações Mermaid e companion HTML `00-project-discovery.html`, mantendo Markdown canônico e rastreabilidade local em `docs/<slug>/`.

## 0.13.0 - 2026-06-12

- **Feature:** Reformula a experiência terminal de `sdd init`, `sdd install` e `sdd update`.
  **Descrição:** Os fluxos de instalação agora usam trilho vertical com marcadores `◇/◆`, loader interativo sem poluir logs, agrupamento de ações com paths relativos, prompt do bot Slack integrado ao fluxo e bloco `Quick start` no estilo de instaladores modernos. O output preserva detalhes pesquisáveis como `Preset:` e `CodeGraph:` sem voltar ao despejo longo de arquivos.

## 0.12.0 - 2026-06-11

- **Feature:** Adiciona a camada MCP read-only e observabilidade estruturada do SDD.
  **Descrição:** O CLI agora expõe `sdd mcp serve --root .`, `sdd mcp config --targets all` e a família `sdd trace list|show|summary|doctor`, com servidor MCP stdio próprio compatível com o protocolo 2025-06-18. Traces passam a ser normalizados a partir de `.sdd/events.jsonl`, `.sdd/subagents.jsonl`, `.sdd/task-gates.jsonl` e `.sdd/runs.jsonl`, preservando JSONL local como fonte canônica e expondo tools, resources e prompts read-only para contexto, artifacts, clients doctor e revisão de execuções.
- **Alteração:** Integra geração MCP ao fluxo de install/update e endurece a sincronização de superfícies.
  **Descrição:** `.mcp.json`, `.cursor/mcp.json`, `.cursor/rules/codegraph.mdc`, `.claude/CLAUDE.md` e permissões MCP do Claude passam a ser gerados/sincronizados pelo próprio CLI, evitando drift entre clientes e corrigindo o caso em que `sdd update` falhava com `installer source missing: .mcp.json`. O update agora recria configs MCP com o `--root` correto do projeto destino em vez de copiar paths absolutos da camada fonte.
- **Correção:** Instrumenta hooks e execução real de tasks no contrato comum de traces.
  **Descrição:** `trace-log`, `subagent-audit` e `task-gate` passam a gravar eventos estruturados com redaction conservadora, IDs determinísticos, árvore `run_id`/`parent_run_id` e proteção contra path traversal. A execução real/paralela da TUI também emite `execution_task` para `runs.jsonl`, com duração, uso, contexto e erro/evidência preservados.

## 0.11.1 - 2026-06-11

- **Correção:** O `sdd init` agora aciona `codegraph init -i .` automaticamente quando `optimization.codegraph.auto_index` está ativo, CodeGraph existe no `PATH` e `.codegraph/` ainda não existe.
  **Descrição:** A indexação é best-effort: ausência ou falha do CodeGraph não bloqueia a instalação, e o CLI registra a decisão na saída. O default dos presets passa a habilitar `auto_index: true`, `.codegraph/` entra no `.gitignore` gerenciado e `.codegraph` passa a integrar os ignored paths do Optimization Wrapper.

## 0.11.0 - 2026-06-11

- **Feature:** Adiciona o SDD Optimization Wrapper com adapters opcionais para CodeGraph, RTK e Caveman.
  **Descrição:** O CLI passa a expor `sdd optimize status --json` para disponibilidade, versão, índice, capacidades e fallback de cada ferramenta, além de `sdd optimize compress --kind trace|handoff|memory-derived` para compactar relatos operacionais preservando paths, comandos, IDs, URLs e hashes. `sdd context build` agora aceita `--task` e injeta um Context Handoff curto com artefatos base, arquivos prováveis, testes sugeridos, fallback usado, paths fora de escopo e política de loop produtivo.
- **Alteração:** Centraliza bounds de busca e ignores operacionais.
  **Descrição:** Discovery, TUI execution snapshot e Context Packs passam a compartilhar a lista de diretórios ignorados (`.git`, `.sdd`, `target`, `node_modules`, `dist`, `build`, `.next`, caches e temporários), evitando varredura em pastas inúteis salvo justificativa explícita.

## 0.9.1 - 2026-06-10

- **Correção (CI):** Formata o código do bot e do orquestrador com `cargo fmt` e remove dois `needless_borrows_for_generic_args` (`.current_dir(&root)` → `.current_dir(root)`) que quebravam o gate `cargo clippy -- -D warnings` no Bitbucket/CI. Sem mudança de comportamento. Todos os gates locais passam: `cargo fmt --check`, `cargo clippy -- -D warnings`, `cargo test` (342), `cargo build --release` e `sdd ci`.

## 0.9.0 - 2026-06-10

- **Feature:** Integra o bot Slack (`sdd bot install/start/stop/status/uninstall`) ao mainline do orquestrador autônomo.
  **Descrição:** Mescla a linha de trabalho do bot (Slack/Jira/Bitbucket/LLM em `bot/`, comandos `/sdd bot-criar`, `/sdd card-editar`, `/aprovado`) com o Orquestrador Autônomo de Demandas (`sdd demand …`, `sdd auto tick/run`). O contexto de bot (`SDD_BOT_CONTEXT=true`) faz os comandos de stage e `risk` apenas devolverem o conteúdo no stdout — o bot grava arquivo, cria worktree e versiona. **Fora do bot, o fluxo é o de sempre:** `/sdd orchestrator "<descrição>"` sem card e sem chamada de bot continua gerando os artefatos em `docs/<slug>/` e versionando normalmente, sem impacto para quem usa o sdd-layer comum.
- **Correção (cross-platform):** Serializa os testes que mutam `EDITOR`/`VISUAL` com um lock process-wide tolerante a poison, eliminando uma corrida de ambiente que falhava no Windows. A resolução de editor (`VISUAL` → `EDITOR` → padrão por SO: `notepad` no Windows, `vi` nos demais) e todo o código novo do orquestrador (paths via `PathBuf`, escrita atômica, validação de slug/id contra path traversal, HMAC-SHA256 puro, detecção de `node`/`node.exe`) são cross-platform mac/linux/windows.

## 0.8.1 - 2026-06-09

- **Correção:** Garante acentuação PT-BR correta em todo artefato gerado.
  **Descrição:** Os templates de render do CLI (`risk`, `discovery`, `stage`, `adr`, Context Pack) e as strings embutidas que geram os clients (Cursor, Devin, Trae, opencode, Codex, Claude) estavam sem acento, fazendo o conteúdo gerado espelhar ASCII. Todos os templates, headers de seção (incluindo `Classificação de risco` e `Evidências mínimas` em `schemas/artifact-sections.json` e `schemas/sdd-contract.yaml`), skills, comandos, agentes e mirrors foram acentuados; os artefatos existentes em `docs/` foram normalizados.
- **Feature:** Gate determinístico de acentuação no harness.
  **Descrição:** `sdd validate-artifact` passa a falhar e `sdd artifact save --state approved` passa a bloquear quando o artefato contém palavras PT-BR sem acento (dicionário de 238 termos). Estados `draft`/`recorded` apenas avisam. A heurística ignora blocos/spans de código, slugs, paths e identificadores para evitar falso-positivo.
- **Correção:** Escopo do hook `artifact-gate` restrito a artefatos do artifact store.
  **Descrição:** O hook `PostToolUse` agora valida apenas arquivos com nome de etapa canônico (`NN-stage.md`), parando de classificar e cobrar seções obrigatórias em arquivos que não são artefatos SDD (ex.: `CHANGELOG.md`, `README.md`, `docs/USAGE.md` e o índice `docs/<slug>/README.md`). `sdd validate-artifact` continua disponível para validar arquivos avulsos sob demanda.

## 0.7.0 - 2026-06-08

- **Feature:** Orquestrador Autônomo de Demandas (Fase 1 — planejamento autônomo).
  **Descrição:** Fila durável (`sdd demand …`) e motor autônomo (`sdd auto tick/run`) que ingere demandas e conduz as etapas de planejamento com aprovação humana, pausando nos pontos críticos (allowlist `approvers` default-deny; o motor nunca auto-aprova). Percorre as etapas até a entrega revisável; runner real opt-in (`--real`) sobre o gerador headless existente; notificação de aprovação; auditoria redigida em `.sdd/orchestrator.jsonl`; redação ampliada de segredos (`redact_pii` separado para PII); verificação de assinatura Slack (HMAC-SHA256, anti-replay). Estado durável em `.sdd/queue/` e `.sdd/state/`. Artefatos e ADR em `docs/orquestrador-autonomo-de-demandas-sdd/`.

## 0.6.1 - 2026-06-08

- **Correção:** Evita que `sdd update` use uma instalação SDD parcial em diretório pai como fonte do pacote.
  **Descrição:** A detecção automática agora ignora fontes que sejam ancestrais do projeto-alvo, caindo nos assets embutidos do binário quando necessário e recriando superfícies como `.devin/` sem procurar arquivos ausentes no diretório pai.

## 0.6.0 - 2026-06-08

- **Alteração:** Adiciona Discovery Intelligence estruturado ao `sdd discover`.
  **Descrição:** O discovery agora coleta inventário determinístico de stack, paths, comandos derivados, linguagem de domínio, ADRs, status opcional de CodeGraph/Lexa e capability handoff, com saída `--json` e fallback read-only.
- **Alteração:** Integra catálogo SDD-native para skills externas adaptadas.
  **Descrição:** O pacote agora inclui `templates/capability-catalog.yaml` e skills `code-intelligence`, `execution-discipline`, `domain-language` e `architecture-deepening`, com atribuição para Taste Skill, Superpowers, Matt Pocock Skills, CodeGraph e Lexa sem vendorizar conteúdo externo longo.
- **Alteração:** Fortalece Execution com Context Pack e disciplina de evidência.
  **Descrição:** Prompts, comandos e Context Packs passam a orientar uso de `sdd context build --stage execution`, code-intelligence opcional, fallback `rg`, tracer bullets verticais, teste falhando quando houver seam correto, loop reproduzível para bug/performance e verificação fresca antes de conclusão.
- **Alteração:** Expande configuração de intelligence.
  **Descrição:** `sdd.config.yaml`, presets e template de configuração agora declaram `intelligence.code_intelligence` com providers opcionais `codegraph` e `lexa`, mantendo compatibilidade com projetos sem essas ferramentas.

## 0.5.3 - 2026-06-08

- **Correção:** Estabiliza instalações OpenCode quando `opencode.json` referência prompts locais ausentes.
  **Descrição:** `sdd init`, `sdd install` e `sdd clients sync --targets opencode` agora materializam stubs seguros para `{file:...}`/`{$file:...}` dentro de `.opencode/agents/`, sem sobrescrever arquivos existentes.
- **Correção:** Fortalece `sdd clients doctor` para detectar referências OpenCode quebradas.
  **Descrição:** O doctor agora reporta referências inválidas em `invalid`, cobrindo configs `opencode.json`, `opencode.jsonc`, `.opencode.json` e `.opencode.jsonc`.

## 0.5.2 - 2026-06-08

- **Alteração:** Expande a superfície do Cursor gerada por `sdd init`, `sdd update` e `sdd clients sync`.
  **Descrição:** Agora o pacote materializa `.cursor/model-routing.yaml`, `.cursor/rules/`, `.cursor/commands/`, `.cursor/agents/` e `.cursor/skills/`, incluindo comandos por etapa e agente SDD.
- **Alteração:** Expande a superfície do Devin com regras, agents, skills e workflows.
  **Descrição:** O target Devin passa a gerar `.devin/config.json`, `.devin/rules/`, `.devin/agents/`, `.devin/skills/` e `.devin/workflows/`, com workflows manuais SDD dentro de `.devin/workflows/`.
- **Alteração:** Fortalece o `sdd clients doctor` para detectar instalação parcial em Cursor e Devin.
  **Descrição:** O doctor agora valida comandos, workflows, agents, skills e arquivos de configuração esperados, evitando que uma instalação incompleta passe como saudável.
- **Alteração:** Atualiza documentação de clientes e changelog da release.
  **Descrição:** README, `docs/CLIENTS.md` e docs em `clients/` agora descrevem as superfícies nativas esperadas para Cursor, Devin e Trae, com foco em instalação determinística.

## 0.4.3

- Added provider catalog metadata, auth-method probing, model routing files and usage/price/limit surfaces across Codex, Claude, Cursor, opencode, Antigravity and Trae.
- Expanded the TUI runner with provider selection, usage events, context tracking, streaming timelines, refreshed stage execution and theme/palette support.
- Strengthened Cursor persistence rules so orchestration artifacts are materialized in `docs/<slug>/` before chat-only handoff.
- Hardened release/build embedding by ignoring transient agent worktrees and tracking embedded inputs correctly.
- Updated docs, presets, schemas and generated agent surfaces for the new provider and routing contracts.

## 0.4.2

- Added interactive `sdd tui` foundation with guided orchestration list, stage board, checkpoint actions, Markdown viewer, editor handoff, subprocess runner, loader behavior and atomic artifact writes.
- Added repo-local `plugins/design` package for provider-neutral design brief, IA, tokens, design-to-tasks, frontend-design and visual review flows.
- Added design-oriented orchestration skills for experience design, design interview, information architecture, design tokens, frontend design, visual review and design-to-tasks.
- Added `artifact-diagrams` support for planning with Mermaid in Markdown and Excalidraw canvases in artifact assets.
- Strengthened provider-neutral output contracts, checkpoint packages and PT-BR generation rules, including preserved UTF-8 acentuação in human-facing artifacts.

## 0.4.1

- Added native Trae surfaces to install/update/client sync, including commands, rules and orchestration skill coverage.
- Added opencode stage commands for Discovery, Risk, Idea, PRD, Tech Spec, Tasks, Refinement, Execution, ADR, Review and Memory.
- Standardized multi-client stage output contracts so Cursor, opencode, Trae, Antigravity and Devin follow the same `.codex`/`.claude` artifact format.
- Strengthened local artifact store guidance across generated client surfaces, requiring `sdd init "<nome-da-orquestracao>"` before persisting stage artifacts.
- Added client coverage tests for generated commands, rules, shared orchestration skills and artifact-store persistence instructions.

## 0.4.0

- Added DDD-oriented `domain` and `runtime` modules for risk classification, provider configuration, typed errors and central secret redaction.
- Added offline provider registry/configuration with `sdd providers list`, `sdd providers doctor`, provider/model/offline stage flags and safe artifact traceability.
- Added provider config schema and safe defaults for Codex/OpenAI-compatible, Claude, Gemini, opencode and custom providers.
- Added derived memory index commands with auditable `source_artifact` and `source_hash` entries.
- Added docs for provider selection precedence, secret handling, derived memory and the disabled-by-default Node+Effect.ts bridge.
- Added release coverage for preserving provider configuration across `sdd update`.

## 0.3.0

- Added Rust CLI `sdd` as the canonical deterministic harness for install, doctor, CI, risk, artifact store, artifact validation, stage scaffolds and hooks.
- Added target-project presets for FastAPI (`python-api`), Rust APIs (`rust-api`) and Hono (`hono-api`), with automatic detection in `sdd init`.
- Added Claude Code `/sdd` command and switched Claude hooks to `sdd hook ...`.
- Added Codex plugin commands for the full SDD pipeline using the CLI as the harness.
- Added Rust integration tests covering installer layouts, presets, artifact store, stages, validation, risk and hooks.
- Updated documentation and CI to use Cargo/Rust validation exclusively.
- Removed the legacy script compatibility layer; the repository is Rust-only for deterministic local behavior.

## 0.2.0

- Added project installer with presets.
- Added adapters for Atlassian, GitHub, GitLab, Linear/Notion and Markdown-only flows.
- Added Project Discovery and Risk Classification as pre-flight stage 00.
- Added artifact schemas, templates, doctor, risk classifier and artifact validator.
- Added Agent Teams, automation hooks and artifact gate.
- Added example feature walkthrough, tests and CI validation.

## 0.1.0

- Initial SDD pipeline with Idea, PRD, Tech Spec, Tasks, Refinement, Execution, Review and Memory.
