# ══════════════════════════════════════════════════════════════════════════════
# OLAV Platform .gitignore
#
# AUTO-GENERATED from ownership_manifest.yaml
# Do not edit manually — run: uv run python scripts/gen_gitignore.py --write
# ══════════════════════════════════════════════════════════════════════════════

# ── python ──
__pycache__/
*.py[cod]
*.so
*.egg-info/
*.egg
build/
sdist/
wheels/
MANIFEST

# ── venv ──
venv/
env/

# ── ide ──
.idea/
*.swp
*.swo
*~
.DS_Store

# ── lint_cache ──
htmlcov/
.tox/
.hypothesis/
.mypy_cache/
.pyright_cache/
MagicMock/

# ── misc ──
*.log
logs/
agent_outputs/
node_modules/

# ── temp_scripts ──
demo_*.py
parse_test.py
fix_openconfig_closure.py
test_playwright.py
test_watermark_integration.py
WATERMARK_IMPLEMENTATION_REPORT.md
TRAINING_DATA_*.md

# ── Paths ignored by manifest rules ──

# platform
uv.lock
CHANGELOG.md
PARTNERS.md
.dockerignore
dev_docs/
scripts/
run/
.vscode/
.claude/

# testing
tests/

# generated
dist/
exports/
tmp/
.coverage
.pytest_cache/
.ruff_cache/
.venv/
.agent/
olav-post/
olav-netops/exports/
olav-doc/site/
olav-web/dist/
olav-web/node_modules/
olav-web/.wrangler/
.olav/databases/
.olav/logs/

# legacy
_legacy_archived/

# netops
olav-netops/
.olav/workspace/ops/
.olav/workspace/ops-lab/

# enterprise
olav-ent/

# docs
olav-doc/

# website
olav-web/

# runtime-workspace
.olav/

# ── Whitelist (tracked paths inside ignored parents) ──
!.olav/
.olav/*
!.olav/config/
!.olav/config/*.example
!.olav/config/schemas/
!.olav/workspace/
.olav/workspace/*
!.olav/workspace/config/
!.olav/workspace/core/

# ── Secrets (NEVER commit) ──
.env
.pypirc
.pypirc_test
.env.local
.env.*.local
*.token
*.key
*.pem
