Repository navigation
Conversation
|
Nerve seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
|
Nerve PR review · 🔴 Needs rework Updated for 3fab94d: live budget metering now counts the native Codex parent turn, a late meter sample can no longer change a finished run, and Mermaid retries note labels that contain semicolons. The metering is correct and tested. All three blockers are unchanged. This adds an opt-in PR-review controller: GitHub polling, immutable review versions, a budget ledger, a task projection and a board. Budget reservation and restart recovery are careful. Completeness: thorough backend tests and docs; migration v062 is unique and merges cleanly into main. CI has not run (fork PR). Before merge:
Worth considering:
Checked: full suite in an offline sandbox at |
Pull requests requested from a team currently have no durable review queue or separate board in Nerve. Add an opt-in Code Review service that keeps one task per PR until confirmed closure, polls tracked PRs independently of search membership, and preserves immutable review versions and partial attempts.
The authenticated board shows queue state, SHAs, CI, per-version history, schedule health and committed budget. Mermaid diagrams render locally with strict settings, sanitization and a source fallback. Repository selection, schedule, board name and limits live in configuration; profiles default to disabled.
The controller reserves budget before workflow creation, retains cumulative version spend across retries/restarts, shares a daily cap, and separates measured spend from uncertain interrupted usage. Draft/head checks run immediately before execution and result admission. Failed admission retries do not launch another paid audit. PR-level queue age survives base churn; workflow teardown is awaited before releasing a reservation.
Review workers use session-bound MCP tools for SHA-pinned source reads and atomic report checkpoints, so analysis does not require shell access or weaker sandbox settings. The tools restrict access to the active workflow and reject other sessions, stopped attempts, path traversal and symlinks. CI failure context is canonicalized before the first fingerprint to prevent redundant versions from API ordering. Native Codex parent token usage is metered during a turn and retained across interrupted final accounting; late meter samples cannot overwrite terminal costs. Heuristic child estimates remain separate from the measured parent floor.
The renderer preserves immutable diagram source, retries literal note punctuation only after a syntax error, preserves inline sequence commands, and keeps pale highlights readable in dark mode.
No GitHub writes are performed. Repository tests are not executed because this feature does not provision a secret-free test sandbox; reports must disclose this limitation. Startup/restart behavior, pause/resume, backup and installation steps are documented in docs/code-review.md.
Validation: the initial implementation passed the full backend suite — 8,223 passed, 46 skipped; frontend — 1,250 passed; production build and migration numbering check passed. Backend tests ran with ambient NERVE_DOCKER and NERVE_WORKSPACE unset. An independent review found issues that were fixed and covered by regression tests. New frontend files pass lint; the full lint result has the same 125 errors and 17 warnings as the base commit. npm audit reports the same 19 affected packages as the base, with no newly affected packages. The follow-up source/checkpoint tools and CI-order fix passed 312 backend checks, including workflow, MCP, budget and artifact integration, and independent review. Automated tests use synthetic PRs and temporary state.
The metering follow-up passed 396 affected backend checks and independent review. The final frontend suite passed 1,263 tests across 94 files; production build and changed-file lint passed. Browser checks covered authenticated board/history, all four report diagrams and five green highlights in both themes, source copying, and no external rendering requests.