node_modules/
dist/
.wrangler/
.dev.vars
.dev.vars.*
!.dev.vars.example
*.log
.DS_Store

# Alchemy local state — holds auto-generated secrets and resource ids for the
# bun ./alchemy.run.ts one-liner deploy. Commit if you want the same secrets
# shared across machines; default is to keep them local.
.alchemy/

# Local-only artifacts from screencasts, E2E captures, ad-hoc dogfooding output.
artifacts/

# Generated by scripts/build-brand.mjs and `tailwindcss build`. CI runs the
# build before `wrangler deploy`. We deliberately do NOT commit these so
# they can't drift out of sync with the master font + src/styles/app.css.
public/static/styles.css
public/static/vendor/
public/static/brand/wordmark.svg
public/static/brand/wordmark-dark.svg
public/static/brand/icon-mark.svg
public/static/brand/icon-mask.svg
public/static/brand/favicon-*.png
public/static/brand/icon-*.png
public/static/brand/apple-touch-icon.png
public/static/brand/manifest.webmanifest
public/static/brand/og.png
public/favicon.ico
public/.DS_Store
src/ui/bundles.generated.ts
src/docs-content.generated.ts
src/ui/build/
src/ui/*.ssr.mjs
*.ssr.css
.notes/
.deploy-logs/
src/*.bak-*

.env
.env.*
!.env.example

# guardrail deploy artifacts (local only)
.guardrail/

# Internal terraloop / campaign state (never ship in the public engine)
.context/
.pi/fresh-session-handoff/
.factory/
wrangler.preview-d1.json
proof/recipe-dogfood-learning-curve*.json
proof/experiments/
