# ============================================================================
# Project Sentinel - Git Ignore Rules
# ============================================================================

# ============================================================================
# Documentation Archives (pre-consolidation backups)
# ============================================================================
docs/archive/20032026/

# ============================================================================
# Environment Variables and Secrets
# ============================================================================
*.env
.env
.env.local
.env.*.local
.env.dev
src/python/.env
src/backend/.env

# Credentials and secrets
*credentials*.json
*secret*.json
*apikey*.txt

# ============================================================================
# Python
# ============================================================================
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg

# Virtual environments
venv/
ENV/
env/
.venv

# Testing
.pytest_cache/
.coverage
.coverage.*
htmlcov/
.tox/
.nox/
coverage.xml
coverage-detail.xml
coverage-final.xml
coverage.json
*.cover
.hypothesis/

# IDEs
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store

# Jupyter Notebook
.ipynb_checkpoints

# pyenv
.python-version

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# ruff
.ruff_cache/

# ============================================================================
# .NET
# ============================================================================
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.

# User-specific files
*.rsuser
*.suo
*.user
*.userosscache
*.sln.docstates

# Local development configuration
**/appsettings.Local.json
appsettings.Local.json
**/appsettings.Development.json

# Resilient message bus — on-disk spill files written when RabbitMQ is unavailable
**/message-buffer/

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
[Ww][Ii][Nn]32/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/
[Ll]ogs/

# Visual Studio cache/options directory
.vs/

# Visual Studio Code
.vscode/

# NuGet Packages
*.nupkg
*.snupkg
.nuget/

# Entity Framework migrations (keep these)
# !**/Migrations/

# ============================================================================
# Node.js / Frontend
# ============================================================================
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

# Build outputs
dist/
dist-ssr/
*.local

# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
*.suo
*.ntvs*
*.njsproj
# *.sln — kept tracked: required for Docker multi-stage builds in CI
*.sw?

# ============================================================================
# Docker
# ============================================================================
# Don't ignore docker-compose files
# !docker-compose*.yml

# Docker volumes and data
docker-data/
.docker-data/

# ============================================================================
# Phase 4: Local Document Storage
# ============================================================================
# Ignore document content but track directory structure via .gitkeep files
# The data/compliance-docs directory has its own .gitignore for fine-grained control
data/compliance-docs/**
!data/compliance-docs/
!data/compliance-docs/.gitignore
!data/compliance-docs/.gitkeep
!data/compliance-docs/README.md
!data/compliance-docs/*/
!data/compliance-docs/*/.gitkeep

# Database backups (local dev)
data/backups/

# ============================================================================
# Phase 6: C2PA Signing Certificates (dev self-signed, production real certs)
# ============================================================================
# Track the directory structure (.gitkeep) but NEVER commit private keys or certs
# (even dev self-signed certs should not be in version control)
data/c2pa-certs/**
!data/c2pa-certs/
!data/c2pa-certs/.gitkeep

# ============================================================================
# Database
# ============================================================================
*.db
*.sqlite
*.sqlite3

# ============================================================================
# Logs
# ============================================================================
*.log
logs/
log/

# ============================================================================
# OS Files
# ============================================================================
.DS_Store
Thumbs.db
Desktop.ini

# ============================================================================
# Temporary Files
# ============================================================================
*.tmp
*.temp
*.bak
*.swp
*~

# ============================================================================
# Generated Files
# ============================================================================
# Protocol Buffers generated files
*_pb2.py
*_pb2_grpc.py
*_pb2.pyi

# Keep original proto files
!*.proto

# ============================================================================
# Development Tools
# ============================================================================
.terraform/
*.tfstate
*.tfstate.backup

# ============================================================================
# Local Runtime / Generated
# ============================================================================
.dev/pids/
.claire/
*.pdf

# PDF report samples — binary files, no value in version control
reports/pdf-samples/

# Wiki output — old location (moved to /output/wiki at project root)
src/backend/VouchedTruth.API/output/
src/backend/VouchedTruth.Shield/output/

# ============================================================================
# Documentation Build Artifacts
# ============================================================================
site/
_site/
.mkdocs_cache/

.fake

# ============================================================================
# Personal / Business Files
# ============================================================================
VC convo.txt
pitch-deck.html
pitch-deck.md.claude/worktrees/

# Test results
**/TestResults/
tests/e2e/playwright/test-results.json
