# Decapod - Robust Git Ignore

# --- Build Artifacts ---
target/
dist/
build/
!build/
!build/constitution_index.rs
dev/
*.o
*.so
*.a
*.dll
*.exe
*.dylib

# --- Rust/Cargo ---
# Note: We keep Cargo.lock for the binary crate decapod
# but if we had workspace member crates that were libraries, 
# we might ignore their local locks.
# /crates/*/Cargo.lock

# --- IDEs / Editors ---
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store
.helix/

# --- Decapod Sidecar (State) ---
# Keep runtime state ignored by default, then allowlist deterministic artifacts.
.decapod/data
.decapod/data/*
!.decapod/data/
!.decapod/data/knowledge.promotions.jsonl
.decapod/.stfolder
.decapod/workspaces
# Generated runtime outputs are non-canonical; allowlist only governed artifacts.
.decapod/generated/*
# Allowlist deterministic generated artifact used as container build baseline.
!.decapod/data/
!.decapod/data/knowledge.promotions.jsonl
!.decapod/generated/Dockerfile
!.decapod/generated/context/
!.decapod/generated/context/*.json
!.decapod/generated/policy/
!.decapod/generated/policy/context_capsule_policy.json
!.decapod/generated/artifacts/
!.decapod/generated/artifacts/provenance/
!.decapod/generated/artifacts/provenance/*.json
!.decapod/generated/artifacts/provenance/kcr_trend.jsonl
!.decapod/generated/specs/
!.decapod/generated/specs/*.md
!.decapod/generated/specs/.manifest.json
# Allowlist skills - imported skill cards for reproducibility
!.decapod/skills/

# --- Environment & Secrets ---
.env
.env.*
!.env.example
*.pat
*.token
*.key

# --- Temp / Debug ---
*.log
*.tmp
debug/
out.log
err.log

# --- Claude Code Hooks ---
.claude/
