← roadmap

interflux

modernize priority P1 effort L wave 1

What it does: Per its code (.claude-plugin/plugin.json v0.2.71, skills/flux-engine/SKILL.md + phases, mcp-servers/openrouter-dispatch/index.ts, README/AGENTS.md): interflux is the orchestrator-worker multi-agent review + research engine behind /flux-drive, /flux-research, /flux-review, /flux-explore, /flux-gen. 12 review agents (7 technical + 5 cognitive) + 5 research agents, 7 commands, 2 skills (flux-engine, flux-review-engine), 2 MCP servers (exa web search; openrouter-dispatch for non-Claude challenger shadowing). Core flow: (1) LLM domain classification into 11 domains; (2) 0-8 scored triage (base + domain_boost + project_bonus + domain_agent + tier_bonus + interspect quality_signal_adjust) with dynamic slot ceiling + Stage1/Stage2 staging; (3) budget gate via estimate-costs.sh (fd-safety/fd-correctness exempt, ship-class inputs force fd-safety mandatory); (4) parallel dispatch with flock-enforced concurrency cap (default 6), run-UUID filename isolation + atomic occupancy lock to prevent same-target races; (5) per-agent content slicing; (6) peer-findings.jsonl intermediate sharing; (7) optional reaction round gated by intercept (local distilled classifier else haiku); (8) synthesis delegated to intersynth (host never reads agent prose — strict context isolation); (9) silent compounding of durable patterns into interknow. Plus FluxBench: closed-loop model qualify→score→sync→drift→challenger pipeline with write-once baselines and flock writes.

Rationale: This is a flagship, code-mature plugin that already embodies most 2025-2026 frontier patterns: orchestrator-worker with isolated subagent context returning distilled results (Anthropic effective-context-engineering: sub-agent isolation + compaction; host never touches agent prose via the intersynth delegation contract), an explicit cost gate so fan-out is reserved for breadth-first work (the ~15x-token caveat), flock-semaphore admission control + run-UUID isolation (the in-process analog of git-worktree isolation that the field standardized on), challenger-slot eval (reliability/eval-driven), self-improvement via silent compounding into interknow (experience-distillation without fine-tuning), and the intercept convergence gate already implements ‘distilled local classifier replaces the LLM judge’ (Agent Distillation / Select-then-Solve). It is not keep-as-is because it has one named, enabling-infra-present SOTA delta: triage and domain classification are LLM-judged/heuristic in-context, not embedding-gated, while intersearch (the ecosystem’s embedding infra) already exists and the harness’s own RAG-MCP/ToolSearch design proves the team understands embedding gating. That is the ‘real signal’ threshold for modernize rather than keep.

SOTA gap: Three concrete frontier deltas, in priority order. (1) Embedding-gated triage: Step 1.2 agent scoring and Step 1.0.1 domain classification run as in-context LLM/heuristic work; Select-then-Solve / RAG-MCP / MemRouter (June-2026 web research synthesis) say the common-case routing decision should be a sub-millisecond embedding gate over agent + domain descriptions, recovering accuracy at far lower token cost. intersearch embedding infra is in-house but not wired into triage. (2) Executable-grounded verification: the reaction round and synthesis operate on NL findings; ‘From Code to Courtroom’ (arXiv:2510.24367) + ReVeal (arXiv:2506.11442) show free-form LLM critique often fails to improve code while tool-grounded signals (tests, type checks, executors) drive correction — fd-correctness/fd-safety emit prose, not executed-test evidence. (3) Reliability-science eval: FluxBench scores single-shot (no trial/variance/seed handling found in fluxbench-score.sh); Beyond pass@1 (arXiv:2603.29231) / ReliabilityBench say measure k-trial variance and robustness, not one passing run.

Redundancy: Low and largely intentional. flux-review/flux-explore (semantic-distance review tracks) overlap thematically with intermonk (Hegelian dialectic) and interpeer (Claude↔Codex / Oracle cross-AI second opinion), but the mechanisms differ enough to keep separate — interflux is the only multi-track scored-triage engine. Clean separation of concerns elsewhere: synthesis is delegated to intersynth, knowledge compounding/injection to interknow (qmd), model ranking to interrank, routing calibration to interspect, trust scoring to intertrust, cost/token telemetry to interstat. No merge candidate; interflux is correctly the hub that composes these rather than reimplementing them.

Actions:

  • P1 (drives the modernize verdict): Wire intersearch embedding gating into Step 1.2 triage and Step 1.0.1 domain classification — index the 17 agent descriptions + 11 domain profiles once, then use a cosine-similarity prefilter to seed base_score for the common case, falling back to the existing LLM scoring only on low-confidence/ambiguous inputs. Log gate-vs-LLM agreement to the existing triage.jsonl so the change is measurable (drives Select-then-Solve / RAG-MCP gap).
  • P2: Add executable-grounded verification to fd-correctness/fd-safety where the input is code/diff — let them run available tests/type-checks/linters and attach pass/fail evidence to findings, so synthesis can weight tool-grounded findings above prose-only ones (drives the From-Code-to-Courtroom / ReVeal gap).
  • P2: Extend FluxBench scoring to k-trial mode — run each fixture N times (configurable, default 3), record per-metric variance/stddev, and gate qualification on consistency not just a single all-gate pass; surface variance in model-registry.yaml (drives the Beyond-pass@1 reliability-science gap).
  • P3: Generalize the proven intercept distilled-local-classifier pattern (already used for the convergence gate) to also back the embedding-triage confidence decision, so the routing fast-path can train a local model from logged triage outcomes over time.