# ============================================================================
# Docker Ignore File (Project Root)
# ============================================================================
# This file tells Docker which files to exclude when building images.
# Since the build context is the project root, this file applies to all
# COPY commands in Dockerfiles.

# ============================================================================
# Local Environment Files
# ============================================================================
# These files contain local development settings and should never be
# included in Docker images. Use environment variables from compose.yml
# or the root .env file instead.

services/platform/.env.local
services/platform/.env.development.local
services/platform/.env.test.local
services/platform/.env.production.local
services/platform/.env*.local

# ============================================================================
# Provider secrets
# ============================================================================
# *.secrets.json carries credentials in either form (SOPS-encrypted or
# plaintext). The convex image ships seeds from examples/default/providers/, but
# the secrets siblings should never bake into a layer — the entrypoint
# already filters them at seed time, but exclude them from the build
# context entirely so they cannot leak via image inspection.
**/*.secrets.json

# ============================================================================
# Git
# ============================================================================
.git
.gitignore
.gitattributes

# ============================================================================
# CI / tooling configuration not needed inside images
# ============================================================================
.github/
.husky/
.claude/
.agents/
.vscode/
.idea/
.ruff_cache/
.turbo/
.trivyignore
.oxlintrc.json
.oxfmtrc.json

# ============================================================================
# Repo-level directories not shipped in service images
# ============================================================================
# NOTE: keep tools/, examples/, and patches/ — Dockerfiles reference them:
#   - platform image copies tools/cli/package.json and patches/
#   - convex image copies examples/default/{agents,workflows,integrations,providers,branding,skills}
tests/
designs/
scripts/
knip-results.json
.playwright-mcp/

# ============================================================================
# Documentation
# ============================================================================
*.md
docs/
!docs/package.json
README.md
# Skill bundles ship their SKILL.md alongside the scripts; without
# this carve-out the convex image's COPY of examples/default/ would
# drop every skill's README and break runtime skill discovery.
!examples/**/*.md

# ============================================================================
# IDE and Editor Files
# ============================================================================
.vscode
.idea
*.swp
*.swo
*~
.DS_Store

# ============================================================================
# Node.js (Project Root)
# ============================================================================
# Exclude root node_modules - each service has its own
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# ============================================================================
# Build Artifacts
# ============================================================================
*.tsbuildinfo

# ============================================================================
# Docker Files
# ============================================================================
# Don't copy Docker files into images
docker-compose.yml
compose.yml
.dockerignore

# ============================================================================
# Testing
# ============================================================================
coverage/
.nyc_output/
*.test.ts
*.test.js
*.spec.ts
*.spec.js

# ============================================================================
# Temporary Files
# ============================================================================
*.log
*.tmp
*.temp
.cache/
# ============================================================================
# Storybook
# ============================================================================
# Development-only UI component documentation
.storybook/
services/platform/.storybook/
**/*.stories.tsx
**/*.stories.ts
**/*.stories.jsx
**/*.stories.js
storybook-static/
