# Composer vendor directory (third-party PHP code) — root only
/vendor/
compose.lock

### Test databases ###
app/storage/test.db
*.db
*.db-wal
*.db-shm
*.db.gz
app/.env

### Logs ###
error.log
app/storage/logs/*
!app/storage/logs/.gitkeep
app/public/admin/actions/error.log

# Rate limit cache (keep .gitkeep)
app/storage/cache/rate_limit/*
!app/storage/cache/rate_limit/.gitkeep

# FilePond tmp uploads + trash (keep .gitkeep)
app/storage/tmp/filepond/*
!app/storage/tmp/filepond/.gitkeep
app/storage/tmp/_trash/*

# Thesis storage (keep .gitkeep)
app/storage/theses/*
!app/storage/theses/.gitkeep
app/storage/tfe/*
!app/storage/tfe/.gitkeep

app/public/admin/actions/error.log

error.log


# Nix
.direnv/
result

# OS files
.DS_Store
Thumbs.db

# IDE
.vscode/
.idea/

/node_modules

# Build output
app/public/assets/dist/

# PHPStan cache
.phpstan.result.cache

# PHP CS Fixer cache
.php-cs-fixer.cache

# creds-test probe log (may contain error traces — no secrets, but generated per-run)
creds-test.log

# sso-diagnose output log (generated per-run)
sso-diagnose.log

# PHPUnit
.phpunit.result.cache
coverage/


# td (TODO manager) local database
.todo.sqlite
.todo.sqlite-shm
.todo.sqlite-wal

# test-env: generated throwaway SSH keypair (never commit)
test-env/keys/
