Service 01

Critic Orchestrator

Four critic vendors run in parallel. One quorum verdict. No single point of bias — and no single vendor's outage brings down your merge gate.


The problem

Single-vendor review has single-vendor blind spots.

The model that approves your code shares a lineage with the model that wrote it. A single-vendor critic ships the same blind spots that produced the bug in the first place. GitHub Copilot autofix defaults to OpenAI. Cursor BugBot defaults to Anthropic. Whichever vendor wrote 80% of your codebase will also be 80% of the reviewer you ship.

That's not adversarial review. That's a self-grading exam.


How it works

Min-complete-quorum aggregation across four vendor lineages.

Critic Orchestrator runs four adapters in parallel against the same diff. Each produces a structured verdict with findings tagged by severity. The aggregator composes them under a min-complete-quorum policy: a BLOCKER from any critic blocks the merge; HIGH findings require ≥2 critic agreement; LOW findings are surfaced but advisory.

Vendor outages graduate the policy automatically. If Codex SDK times out, the aggregator records partial-quorum and applies the relevant fallback rule from darkfactory.yaml. The customer sees what was checked and what wasn't, on every gate.

  • Each adapter ships in OSS CLI — Cursor SDK, Codex SDK, Gemini SDK, Grok direct
  • min-complete-quorum: BLOCKER from any critic → blocker; HIGH if N≥2 critics agree
  • Vendor outage handling — gate graduates to available-critic verdict per policy
  • Per-critic timeouts + retry semantics calibrated per vendor SLA
  • Output schema is stable across critics — aggregation is a pure function on findings
darkfactory.yaml yaml
critics:
  - id: cursor-sdk
    vendor: anthropic
    model: claude-sonnet-4-6
    timeout: 90s
  - id: codex-sdk
    vendor: openai
    model: gpt-5
    timeout: 90s
  - id: gemini-sdk
    vendor: google
    model: gemini-3-pro
    timeout: 90s
  - id: grok-direct
    vendor: xai
    model: grok-4
    timeout: 60s

aggregation:
  policy: min-complete-quorum
  graduation:
    on_vendor_outage: continue-with-available
    min_critics_for_merge: 3
  severity:
    blocker:  any-critic
    high:     two-or-more-critics
    medium:  advisory
    low:     advisory

Pricing relevance

The critic count + diff size drive LLM passthrough cost. Team/Business tiers include a 1.3× markup on vendor tokens; Enterprise BYOK is pass-through. Diff-aware routing caps per-PR cost.

Open-source posture

Adapter code is OSS (Apache-2.0). Aggregation policy + critic personas + severity calibration stay hosted — that's the curated portfolio IP.

Get Started

Stop trusting one model to grade another model's code.

Install the GitHub App for the hosted runtime, or the OSS CLI for local + air-gapped use. Same binary, same aggregation policy.