Add CI merge-gate workflow (BUILD_PLAN §7)

↗ view on GitHub · sloth-ninja · 2026-07-12 · 257a8c7e

Three jobs on PRs to main and pushes to main, with per-branch
concurrency cancellation for superseded PR runs:

- backend: npm ci, tsc --noEmit, vitest run (Node 22, npm cache)
- frontend: npm ci, tsc --noEmit, eslint, next build - public
  NEXT_PUBLIC_* values come from repository variables with safe
  placeholder fallbacks (Supabase client construction at module
  scope makes next build throw on empty URL/key)
- evals: npm ci in evals/, full golden set including the citation
  hard gate; COMPANIES_HOUSE_API_KEY and ANTHROPIC_API_KEY from
  repository secrets - the runner skips those cases loudly when
  the keys are absent, so the job passes on forks without secrets

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KsUrp6sw58RCSeqJtx5RH6
Repository Sloth-ninja/JessicaOSS
Author sloth-ninja <ezanahaddis@gmail.com>
Authored
Parents 50c7cb8b
Stats 1 file changed , +93
Part of Eval harness + CI merge-gate hardening

Capture this commit into my fork

Download a Markdown prompt that tells Claude how to port this exact commit into your working tree. Run it via claude -p < capture-commit-257a8c7e.md from inside the repo you want the change in.

⬇ Download capture-commit-257a8c7e.md