# These are some examples of commonly ignored file patterns.
# You should customize this list as applicable to your project.
# Learn more about .gitignore:
#     https://www.atlassian.com/git/tutorials/saving-changes/gitignore

# Node artifact files
node_modules/
dist/
dist-plugin/
build/

# Media lookup output (downloaded files + reports)
media_lookups/

# Playwright MCP screenshots and artifacts (DO NOT COMMIT)
.playwright-mcp/
**/test-results.json
backend/tests/evals/_runs/
**/test-results/
playwright-report/

# Playwright debug screenshots (one-off dev artifacts, not test baselines)
frontend/playwright/screenshots/

# Superpowers brainstorm plugin local state (machine-specific paths/ports)
.superpowers/

# Compliance scan output (per-run reports + raw scanner JSONs; see scripts/compliance-scan/)
.compliance-scan/

# C2PA signing credentials (generated locally; prod cert deployed via secrets)
backend/data/c2pa_*_cert.pem
backend/data/c2pa_*_key.pem

# Compiled Java class files
*.class

# Compiled Python bytecode
*.py[cod]
__pycache__/
*.pyc



# Log files
*.log
logs/

# Package files
*.jar

# Maven
target/
dist/

# JetBrains IDE
.idea/

# Unit test reports
TEST*.xml

# Generated by MacOS
.DS_Store

# Generated by Windows
Thumbs.db

# Applications
*.app
*.exe
*.war

# Large media files
*.mp4
*.tiff
*.avi
*.flv
*.mov
*.wmv
*.mp3
*.mpg

# Exceptions: fake test media files used by webhook tests
!**/fake/*.mp4
!**/fake/*.mp3
!**/fake/*.wav
!**/fake/*.jpg
!**/fake/*.jpeg
!**/fake/*.png
!**/fake/*.webp

# Local environment config
*.env
.env.*
.venv
/venv*/
backend/venv*/

# Test output
demo/

# Don't ignore episode-generator-adapters source code
!react-video-editor/episode-generator-adapters/
output.json
pipeline_helper/output/
script-formatted.txt
script-with-cameras.txt
script.txt
contestant_descriptions.txt
episode.md
episode.json
character_sheets.txt
script.json
contestants.json
episode-generator.code-workspace

# AI Models (large files) - only in root and character-renderer
/models/
character-renderer/models/
*.safetensors
*.ckpt
*.bin
*.pth
backend/.dockerignore.optimized
.gitignore
.claude/settings.local.json

# Next JS Dependencies
frontend/node_modules
/.pnp
.pnp.js

# Next JS Build outputs
frontend/.next/
frontend/out/
frontend/build/

# Next JS Runtime data

# Next JS typescript
*.tsbuildinfo
next-env.d.ts

# Playwright authentication artifacts (contain sensitive tokens)
frontend/playwright/.auth/
playwright-auth.json

# Terraform
**/.terraform/*
*.tfstate
*.tfstate.*
*.tfvars.json
.terraform.lock.hcl
.terraformrc
terraform.rc
deploy.plan

# Dynamically generated Terraform secrets files (generated fresh in pipeline)
terraform/secrets-*.auto.tfvars
terraform/terraform-secrets-*.tfvars
terraform/configs/secrets-*.json
terraform/configs/resolved-secrets-*.json
terraform/configs/environment-variables-*.json
terraform/backups
terraform/plan.out

.coverage
coverage.xml

# Merge/diff backup files
*.orig

.claude/settings.local.json
.claude/checkpoints/
.claude/preflight.json
.claude/.lint-queue
.mcp.json

# CloudWatch error monitor state
.cloudwatch-monitor-state.json

# Bug-to-PR daemon state and summaries
.bug-to-pr-state.json
.bug-to-pr-summaries/
docker-compose.dev.yml
.claude/scheduled_tasks.lock

# Agent worktree artifacts (generated by scripts/agent-*.sh)
.agent-config.json
.agent-backend.pid
.agent-frontend.pid
.agent-backend.log
.agent-frontend.log

# Local working notes — promote to specs/{issue}/ when worth preserving
scratchpad/

# genvid_nuke plugin build artifacts
genvid_nuke/dist/*.whl
genvid_nuke/dist/*.zip
# but keep the build script (parent `dist/` rule above would otherwise hide it)
!genvid_nuke/dist/
!genvid_nuke/dist/build.sh

# agent-cli
tooling/agent-cli/node_modules/
tooling/agent-cli/dist/

# merged API spec (generated by split_api_spec.py --merge, not committed)
context/openapi.yaml

# Git LFS hooks generated into agent-cli's core.hooksPath (post-commit is tracked)
tooling/agent-cli/hooks/post-checkout
tooling/agent-cli/hooks/pre-push
