Skip to content

Releases: berrzebb/quorum

v0.4.4 — Parliament Protocol, Implementation Loop, Daemon Control Center

24 Mar 20:11

Choose a tag to compare

Parliament Protocol (v1-v6)

  • 3-role diverge-converge deliberation (advocate/devil/judge)
  • Meeting log accumulation → convergence → CPS (Context-Problem-Solution)
  • Amendment propose/vote/resolve with majority voting
  • Confluence verification (4-point integrity check)
  • Normal Form convergence tracking with regression detection
  • Blueprint naming linter (blueprint_lint — 21st MCP tool)

5 Enforcement Gates

Gate Blocks When Bypass
Amendment Pending amendments unresolved --force
Verdict Latest audit != approved --force
Confluence Verification failed --force
Design Design artifacts missing --force
Regression Normal-form stage regressed alert only

Implementation Loop

  • quorum orchestrate plan — interactive Socratic planner (replaces interview)
  • quorum orchestrate run — full WB execution: agent → audit → approve → next → retro → merge
  • Auto-plan from CPS if no WBs exist

Daemon Control Center

  • ParliamentPanel: live sessions, convergence, amendments, normal form
  • AgentChatPanel: multi-pane interactive agent relay (select, pin, type, send)
  • ProcessMux.split(): backend-abstracted pane splitting
  • Version auto-synced from package.json

CLI

  • quorum parliament — deliberation with --rounds, --mux, --resume, --history
  • quorum agent attach — interactive terminal relay to mux sessions
  • quorum setup — locale selection (en/ko)
  • Deprecated: interview (→ orchestrate plan), ask (no quorum context)

Infrastructure

  • MuxAuditor: Auditor interface backed by ProcessMux (tmux/psmux)
  • Planner Phase 0: CPS auto-intake before intent capture
  • Design Phase mandatory for CPS-origin tracks
  • i18n: all hardcoded messages → locale keys
  • npm run version-sync — auto-sync package.json version to plugins
  • 7-component fitness score, 12-factor trigger scoring

1004 tests, 0 fail.

v0.4.0 — Autonomous Quality Loop, Blast Radius, Structured Orchestration

23 Mar 21:15

Choose a tag to compare

What's New

95 files changed, +10,168 -2,388. Three-pass /simplify review (reuse, quality, efficiency) — all clean.

AST Hybrid Scanning

  • Regex first pass (speed, <1ms/file) → TypeScript Compiler API second pass (precision, <50ms/file)
  • ast-analyzer.ts: 5 single-file analyzers + 2 cross-file analyzers
  • Program mode: unused export detection, import cycle detection via dependency graph DFS
  • ast-bridge.mjs: fail-safe MJS↔TS bridge for hybrid scanning
  • perf_scan is the first hybrid tool (regex detects while(true), AST verifies break/return)

Fitness Score Engine

  • 5-component quality metric (typeSafety, testCoverage, patternScan, buildHealth, complexity)
  • FitnessLoop gates LLM audit with 3 decisions:
    • auto-reject: score drop >0.15 → skip LLM (cost savings)
    • self-correct: mild drop (0.05–0.15) → warn agent
    • proceed: stable/improved → continue to audit
  • Daemon FitnessPanel shows real-time fitness trends

Blast Radius Analysis

  • BFS on reverse import graph (inEdges) for transitive dependent discovery
  • buildRawGraph() extracted from dependency_graph for reuse (5s TTL cache)
  • 10th trigger factor: ratio > 10% → score += up to 0.15 (auto-escalation)
  • Pre-verify evidence includes blast radius section
  • New MCP tool: blast_radius (19 tools total)

Structured Orchestration

  • ClaimService: per-file ownership (INSERT...ON CONFLICT), TTL-based expiry
  • ParallelPlanner: graph coloring for conflict-free execution groups
  • OrchestratorMode: auto-selects serial / parallel / fan-out / pipeline / hybrid
  • auto-learn.ts: repeat rejection pattern detection (3+) → CLAUDE.md rule suggestions
  • New CLI command: quorum orchestrate

Event Reactor

  • respond.mjs rewritten: SQLite verdict → side-effects only (-1043/+211 lines)
  • MessageBus: finding-level SQLite communication replaces file-based IPC
  • 39 event types including finding.detect/ack/resolve + fitness signals

Marketplace

  • plugin.json: mcpServers + skills declarations added
  • marketplace.json in separate repo (berrzebb/claude-plugins) — avoids #35842

Simplify Pass

  • Dedup: inline OLS → computeTrend() reuse, pre-verify → computeBlastRadius() reuse
  • Cache: tool-core module lazy-load cache, hasPlanDoc session cache
  • Batch: submitFindings N+1 transactions → single batch
  • Cleanup: dead recentDetect query, orphaned JSDoc, unused params

Tests

  • 743 tests (20 new: blast-radius, claim, orchestrator, fitness, hybrid-scan, trigger-fitness)
  • All passing, 0 failures

Full Changelog

v0.3.0...v0.4.0

v0.2.5 — Worktree Isolation, Integration Invariant, Language-Aware Quality Rules

22 Mar 02:24
a41e0c5

Choose a tag to compare

What's New

5-round Codex audit approved. 54 files changed, +1144 -303.

Worktree Audit Isolation

  • Per-worktree lock, log, session, debounce files
  • deriveAuditCwd() resolves worktree root from watch_file path
  • Codex -C flag uses auditCwd (not REPO_ROOT)
  • All pre-verification runs in worktree context
  • [INFRA_FAILURE] verdict with execution metadata (separated from [APPROVED])
  • Worktree depth=1 invariant with nesting guard

Windows Compatibility

  • cli-runner.mjs: PATHEXT extensions first, extensionless POSIX script fallback
  • All providers (Codex/Claude/OpenAI/Gemini): .cmd wrapper resolution
  • Prompt via stdin (not argv) — eliminates shell interpretation risk
  • needsShell only for .cmd/.bat wrappers
  • Fixes MinGW popup + Codex STATUS_HEAP_CORRUPTION crash

Integration Invariant

  • PRD template: 5 categories + 4 typed refinements (state_transition, state_machine, identifier_normalization, schema_contract)
  • RTM: Runtime column (consumed/instantiated/unwired) + integration-gap status
  • Audit prompt: phase-aware judgment via integration_owner
  • Work Breakdown: integration_owner field for convergence points

Language-Aware Quality Rules

  • config.json presets: TypeScript, Python, Rust, Go, Node fallback
  • All templates/prompts/skills reference quality_rules.presets (zero hardcoded tool names)
  • setup.ts auto-detects project type
  • verify TEMPLATE command detects hardcoded tool references
  • verify RUNTIME command checks save/load boundary contracts

Protocol Improvements

  • No-abandon policy: evidence submission mandatory regardless of Tier
  • minimum_tier experiment setting (forces audit for A/B experiments)
  • Completion gate: evidence existence check in task-completed.mjs
  • infra_failure propagated through all auditors, consensus, daemon, bus events

Experimental Results (tetris A/B/C)

  • tetris1 (no invariant): component 0/6, runtime 0/6
  • tetris2 (WB invariant): component 5/6, runtime 2/6
  • tetris3 (+ integration invariant): component 6/6, runtime 2/6 (Codex review)
  • Conclusion: invariant + independent audit are complementary, not substitutes

Full Changelog

v0.2.3...v0.2.5

v0.2.3

21 Mar 09:46

Choose a tag to compare