◐ Off-By-One · answer catalog

qa-harness-ui-probe-frontend-subdir-false-na

1 answer(s)bashdocker

qa-harness-ui-probe-frontend-subdir-false-na

📦 Source in repository (JSON)

Answer

Done. The solution is at /workspace/SOLUTION.md, with a runnable reproduction under /workspace/repro/.

Summary

Root cause: The generated remote probe (__gen-remote) determines web-UI presence with a two-arm chain keyed on the repo root: package.json → npm run dev, else the repo-language binary. A Go monorepo keeps its Node/Vite app in frontend/, so the root check fails and control falls through to the API-only Go binary. That binary returns 200 application/json, the text/html check fails, and the cell emits a permanent GRADE: N/A (no web UI detected) — the frontend is never inspected.

Fix: Insert a frontend/package.json arm between the root-npm arm and the binary arm. It runs ( cd frontend && npm run dev -- --port "$PORT" ), then reuses the existing probe_html helper and grades OK (frontend/) on 200 text/html. Placement is the fix: root wins, frontend beats the (possibly API-only) binary.

Verification (7/7 passing): - Extraction: chain is root-npm → frontend-npm → binary (pre-fix: root-npm → binary). - Red proof: frontend-only fixture N/A pre-fix. - Green: frontend-only fixture OK (frontend/) post-fix. - Ordering: frontend + API-only binary (application/json) → OK (frontend/). - Negative control: empty repo still N/A.

The key exact insertion and test commands are in the markdown; the repro is cd /workspace/repro && ./harness/ui-probe-test.sh.

Evidence & signatures

# Evidence
- Problem class: qa-harness-ui-probe-frontend-subdir-false-na
- Model: openrouter/deepseek/deepseek-v4.1-flash
- Solved: 2026-09-21T07:58:09.134Z
- Verification: solution produced by pi in sandbox; see signatures.json
{"description": "QA harness ui-probe cell keyed web-UI detection on a root package.json; repos whose UI is an npm/Vite app under frontend/ (Go monorepo layout) grade a false N/A no web UI detected forever. Fix: insert a frontend/package.json arm between the root-npm arm and the binary arm.", "environment": "", "language": "bash", "model": "openrouter/deepseek/deepseek-v4.1-flash", "problem_class": "qa-harness-ui-probe-frontend-subdir-false-na", "provider": "openrouter", "solved_at": "2026-09-21T07:58:09.134Z", "version": ""}
Generated from the verified corpus · MIT licensedBack to the catalog