# 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/

# Build counter files: the authoritative counter is the shared blob
# (agent container, buildcounter-v{N}.txt, ETag-CAS — see internal/docs/agent/build-counter-blob.md).
# The local file is only an offline fallback for -SkipUpload/bare-dotnet smoke builds.
buildcounter.txt

# Visual Studio cache/options
.vs/

*.rsuser
*.suo
*.user
*.userosscache
*.sln.docstates
*.csproj.lscache

# Build Results
*.dll
*.exe
*.pdb
*.cache

# NuGet Packages
*.nupkg
*.snupkg
**/packages/*
!**/packages/build/
*.nuget.props
*.nuget.targets

# Azure Functions
local.settings.json
__blobstorage__
__queuestorage__
__azurite_db*__.json

# Node.js / Next.js
node_modules/
.next/
out/
# Managed by Next.js since v16 (regenerated by next dev/build/typegen; path
# inside flips between .next/types and .next/dev/types) — must not be tracked.
next-env.d.ts
build/
dist/
!rules/dist/
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*
.npm
.eslintcache

# TypeScript incremental build cache
*.tsbuildinfo

# Environment variables
.env
.env*.local
*.env

# IDE
.idea/
*.swp
*.swo
*~

# OS
.DS_Store
Thumbs.db
desktop.ini

# Test results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
*.trx
*.coverage

# Secrets and certificates
*.pfx
*.p12
*.key
*.crt
appsettings.*.json
!appsettings.json
!appsettings.Development.json

# Local development
.local/
*.local.*
temp/
tmp/

# Claude Code temporary files
tmpclaude-*-cwd
.claude/worktrees/

# Claude skills and scripts are now in a private submodule (.claude/commands/)
# No individual file ignores needed — the submodule handles everything

# Infra: tracked. The Bicep templates carry no credentials — every secret is a
# @secure() parameter with an empty default, injected at deploy time, and image
# pull runs on managed identity. Keep it that way: never commit a resolved secret
# value or a *.parameters.json holding one.

# M2 — local raw session fixtures before anonymization (plan §4 M2)
tests/fixtures/enrollment-sessions-local/


.dotnet-home/
.vscode/
TODO.txt
tools/orphan-analysis.py
tools/export-session-fixture.mjs

# Azure Table cleanup backups (dry-run exports + delete manifests)
# Produced by operator tooling — never commit deletion payloads
db-backups/
plans/REFACTOR_AGENT_V2.md
.claude/scheduled_tasks.lock
.claude/plans/health-script-remediation-fix.md
internal/docs/Introduction-AutopilotMonitor.pptx
internal/docs/~$Introduction-AutopilotMonitor.pptx

# Playwright MCP browser artifacts (snapshots, screenshots, console logs)
.playwright-mcp/

# Web build stamp: generated by scripts/generate-version.js on every build (buildUtc
# changes each run) and served at /version.json from the static export.
src/Web/autopilot-monitor-web/public/version.json

# What's new payload: generated by scripts/whats-new/build-whats-new.js from the docs
# checkout on every build and served at /whats-new.json from the static export.
src/Web/autopilot-monitor-web/public/whats-new.json


# Local IME installer scratch (MSI + extracted payload per version, for grepping
# in binaries). Operator-only, never committed.
ime-files/
