.vigiles/generated.d.ts

# Coverage artifacts (v8 / lcov output)
coverage/

# oh-my-claudecode transient session state (machine-written JSON, not ours)
.omc/

# Vendored third-party plugin snapshots (dogfood fixtures) — formatted by their
# upstreams, not us. See test/dogfood/*/SOURCE.
test/dogfood/

# API Extractor reports (tool-generated, exact format)
api-surface/

# Site Playwright / Vitest-browser run artifacts (machine-written, gitignored) —
# a stray fmt:check failure otherwise appears after any e2e run.
site/test-results/
site/playwright-report/
site/blob-report/
# Generated per-rule check pages (`site` prebuild → `gen-check-pages.ts`,
# gitignored by site/.gitignore) — same class: building the site locally would
# otherwise redden `fmt:check` on files nobody commits.
site/checks/
site/comparison/

# Ecosystem-benchmark run artifacts (machine-written JSON) + vendored upstream
# SKILL.md snapshots (pinned by SHA, formatted by their upstreams, not us).
bench/ecosystem/results/
bench/ecosystem/skills/
# Archived canonical run JSON is machine-written archival data — exact bytes, not
# formatter-owned (the README.md alongside it IS prettier-checked).
bench/ecosystem/results-archive/*.json
# Generated leaderboard snapshot (machine-written Markdown table, exact bytes).
bench/leaderboard/RESULTS.md

# The root CLAUDE.md is a vigiles-COMPILED artifact: `vigiles compile` owns its
# exact bytes (an integrity hash over the output gates it in CI). Prettier would
# re-escape markdown (e.g. `skills/*` → `skills/\*`) and desync that hash, so the
# two gates would fight forever. The spec (CLAUDE.md.spec.ts) IS prettier-checked.
/CLAUDE.md
# Same for the scoped compiled instruction files (nested CLAUDE.md build
# artifacts): vigiles compile owns their bytes + integrity hash, not prettier.
/src/CLAUDE.md
/src/core/CLAUDE.md
/research/CLAUDE.md

# Captured audit output (a rendered HTML report + its JSON + terminal .txt
# captures) — machine-generated artifacts kept as a reference record, exact
# bytes, not formatter-owned (same class as the bench/ result snapshots above).
research/audit-captures/

# The @vigiles/rule-enforcer sub-package is a self-contained package boundary with its
# own toolchain (its own eslint/typescript deps, CommonJS) — formatted
# independently, not by the root prettier gate. This is the fold of the former
# rule-enforcer engine; it also holds machine/agent-generated rule code
# (generated/, selftest/, synth-agent/), gold-set DATA (gold/), and exact-byte
# run artifacts (results.json, gate-demo-output.txt) that must not be reflowed.
rule-enforcer/
