{
  "projectRoot": "<PROJECT_ROOT>",
  "framework": "nextjs",
  "support": "supported",
  "scripts": {
    "dev": "next dev",
    "build": "pnpm build:packages && pnpm build:web",
    "build:web": "next build",
    "build:packages": "pnpm --filter @bhashafix/cli build && pnpm --filter @bhashafix/mcp build",
    "build:vercel": "pnpm build",
    "build:sites": "vinext build",
    "start": "next start",
    "lint": "eslint . --ignore-pattern \"dist/**\" --ignore-pattern \"packages/*/dist/**\" --ignore-pattern \".next/**\" --ignore-pattern \".vinext/**\" --ignore-pattern \".npm-cache/**\" --ignore-pattern \"coverage/**\" --ignore-pattern \"fixtures/**/.next/**\" --ignore-pattern \"fixtures/**/out/**\" --ignore-pattern \"artifacts/**\"",
    "typecheck": "tsc --noEmit -p tsconfig.typecheck.json && pnpm -r --if-present typecheck",
    "test": "vitest run tests/unit --config vitest.config.mjs",
    "test:integration": "vitest run tests/integration --config vitest.config.mjs",
    "test:e2e": "playwright test",
    "test:mcp": "vitest run tests/mcp --config vitest.config.mjs",
    "test:cli": "vitest run tests/cli --config vitest.config.mjs",
    "verify": "pnpm measure:build && pnpm lint && pnpm typecheck && pnpm test && pnpm test:cli && pnpm test:mcp && pnpm build && pnpm repair:nextjs && pnpm test:integration && pnpm fixtures:clean && pnpm fixtures:broken && pnpm fixtures:failed && pnpm pack:verify && pnpm mcp:inspect && pnpm mcpc:smoke && pnpm test:e2e && pnpm demo:reset && pnpm demo:scan && pnpm demo:repair && pnpm demo:verify && pnpm benchmark && tsx scripts/release-receipt.ts && pnpm evidence:publish && pnpm submission:prepare && pnpm pptx:verify && pnpm audit:hostile",
    "demo:reset": "tsx scripts/platform-demo.ts reset",
    "demo:scan": "tsx scripts/platform-demo.ts scan",
    "demo:repair": "tsx scripts/platform-demo.ts repair",
    "demo:prove": "tsx scripts/platform-demo.ts prove",
    "demo:verify": "tsx scripts/platform-demo.ts prove",
    "fixtures:clean": "tsx scripts/fixture-acceptance.ts clean",
    "fixtures:broken": "tsx scripts/fixture-acceptance.ts broken",
    "fixtures:failed": "tsx scripts/fixture-acceptance.ts blocked",
    "repair:nextjs": "tsx scripts/nextjs-repair-proof.ts",
    "benchmark": "tsx scripts/benchmark.ts",
    "scan:live:smoke": "tsx scripts/live-public-smoke.ts",
    "bhashafix": "tsx packages/cli/src/cli.ts",
    "pack:verify": "pnpm build:packages && tsx scripts/pack-verify.ts",
    "mcp:inspect": "pnpm build:packages && tsx scripts/mcp-inspector-smoke.ts && tsx scripts/mcp-inspect.ts",
    "mcpc:smoke": "pnpm build:packages && tsx scripts/mcpc-smoke.ts",
    "submission:prepare": "tsx scripts/prepare-submission.ts",
    "pptx:verify": "tsx scripts/validate-pptx.ts",
    "audit:hostile": "tsx scripts/hostile-audit.ts",
    "db:generate": "drizzle-kit generate",
    "scan:real-sites": "tsx scripts/real-site-scans.ts",
    "worker:browser": "tsx scripts/browser-worker.ts",
    "screenshots:capture": "tsx scripts/capture-submission-screenshots.ts",
    "production:smoke": "playwright test --config playwright.production.config.ts",
    "evidence:publish": "tsx scripts/publish-evidence.ts",
    "deck:build": "tsx scripts/build-deck.ts",
    "measure:build": "tsx scripts/build-measurement-script.ts"
  },
  "commandsRequireApproval": true
}
