feat(miner-governor): build production CodingAgentDriver construction (#5131) - #5138
Conversation
…#5131) Closes the gap coding-agent-house-rules.js's own header names explicitly: nothing in packages/gittensory-miner ever constructs a coding-agent driver in production, only test doubles exist. Adds a real child_process-backed spawn (CliSubprocessSpawnFn) and a real driver-construction call site that resolves MINER_CODING_AGENT_PROVIDER and wires house-rule enforcement (#2343) in by default via buildHouseRulesAgentSdkHooks.
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
gittensory-ui | 016e061 | Commit Preview URL Branch Preview URL |
Jul 12 2026, 04:12 AM |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #5138 +/- ##
=======================================
Coverage 94.32% 94.32%
=======================================
Files 471 471
Lines 39837 39837
Branches 14535 14535
=======================================
Hits 37576 37576
Misses 1583 1583
Partials 678 678
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
|
Tip 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 ✅ Gittensory review result - approve/merge recommendedReview updated: 2026-07-12 04:17:54 UTC
✅ Suggested Action - Approve/Merge
Review summary Nits — 6 non-blocking
Linked issue satisfactionPartially addressed Review context
Contributor next steps
Signal definitions
[BETA] Chat with GittensoryAsk Gittensory a question about this PR directly in a comment — grounded only in the same cached, public-safe facts shown above, never a new claim.
Full command reference: https://gittensory.aethereal.dev/docs/gittensory-commands 🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed 💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →. Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.
|
Summary
packages/gittensory-minerever constructed a coding-agent driver in production —coding-agent-house-rules.js's own header names this explicitly. Adds the missing call site: a realchild_process-backed spawn (createRealCliSubprocessSpawn, matching the engine'sCliSubprocessSpawnFncontract, mirroringsrc/selfhost/ai.ts'sdefaultSpawn) andconstructProductionCodingAgentDriver, which resolvesMINER_CODING_AGENT_PROVIDERfrom env and builds a real driver with house-rule enforcement (maintainer: PreToolUse-hook-enforced house rules (deny even under bypassPermissions) #2343) wired in by default viabuildHouseRulesAgentSdkHooks.Scope
type(scope): short summaryConventional Commit format.CONTRIBUTING.mdand does not reintroduce GitHub Pages, VitePress,site/, orCNAME.Validation
git diff --checknpm run actionlint— not run (no workflow files touched)npm run typechecknpm run test:coverage(targeted to the new/related files:test/unit/miner-coding-agent-construction.test.ts12/12 passing, 100% statement/branch/function/line coverage; also re-ranminer-coding-agent-house-rules.test.tsandminer-attempt-runner.test.tsfor regression)npm run test:workers— not run (this PR touches onlypackages/gittensory-miner, no Workers runtime code)npm run build:mcp/npm run test:mcp-pack— not run (no MCP server changes)npm run ui:openapi:check/npm run ui:lint/npm run ui:typecheck/npm run ui:build— not run (no UI changes)npm audit --audit-level=moderate— no new dependencies addedIf any required check was skipped, explain why:
packages/gittensory-miner/lib/(a Node CLI package with its ownnode --check-only build/typecheck convention, not the root TS project or the UI workspace) plus one new roottest/unit/file — the UI/Workers/MCP-pack checks above have no surface this diff touches, and were skipped on that basis rather than run and ignored.Safety
Notes
bin/gittensory-miner.jsoutward: Wave 1-3 milestones are all legitimately closed (every closing PR merged, cross-checked via GraphQL), but the actual autonomous loop has zero live entrypoint today. This closes gap feat(docs): add install site and mcp diagnostics #1 of 5 (driver construction); Wire CLI dispatch for the real attempt pipeline (attempt command) #5132 (CLI dispatch), Build a real production runSlopAssessment implementation #5133 (production self-review), Persist governor cross-attempt state (rate-limit, budget, convergence, reputation, self-plagiarism) #5134 (governor persistence), and Build the autonomous repeat/supervising loop (discover → attempt → manage → repeat) #5135 (autonomous repeat loop) remain.