Skip to content

Mission v1.0.0 — Factory-Grade 3-Role Orchestration for Claude Code

Latest

Choose a tag to compare

@ryan-mt ryan-mt released this 29 Mar 17:23

Mission v1.0.0 — Factory-Grade 3-Role Orchestration

The most robust mission orchestration plugin for Claude Code. Achieve Factory Droid AI-level quality with strict role enforcement, structured feature tracking, and 10+ defense layers — all powered by Python hooks with zero external dependencies.


Highlights

3-Role Separation, Enforced at Tool-Call Level
Not just instructions — actual hook-level enforcement. Orchestrator plans, Workers implement, Validators test. Each role is physically blocked from actions outside its scope.

10 Defense Layers
Completion Guard, Cleanup Guard, Worker Test Block, Validator Path Lock, Anti-Premature-Completion, Model Enforcement, Phase Lock, Unknown Phase Block, Stop Guard, SubagentStop Guard — all enforced by phase-guard.py.

Structured Feature Tracking (features.json)
Machine-tracked feature lifecycle: pending → in-progress → completed | failed. Per-feature dispatch, structured JSON handoffs, dependency resolution, and failureReason taxonomy.

8 Hooks Across 7 Event Types

Hook Event Purpose
phase-guard.py PreToolUse Role enforcement + defense layers
mission-reminder.py PreToolUse Anti-drift context injection
mission-continue.py PostToolUse Continuation reminders with strength gradient
mission-stop.py Stop Prevents premature session stop
mission-subagent-stop.py SubagentStop Ensures structured handoffs from sub-agents
mission-precompact.py PreCompact Checkpoint before context compaction
mission-session-start.py SessionStart Auto-resume with full context recovery
mission-prompt.py UserPromptSubmit Keeps model aware of active mission

Model Enforcement
Configure models per role (opus/sonnet/haiku). Hooks auto-inject the correct model on Agent dispatch or block mismatches. State-level overrides take precedence over global config.


What's New in v1.0.0

Factory Droid Parity Features

  • Atomic file writesstate.json and features.json use write-to-tmp + os.replace() to prevent corruption on crash
  • Backup recoveryload_features() automatically falls back to .bak copy when primary file is corrupt
  • maxRounds + maxDurationMinutes enforcement — Blocks dispatch when limits exceeded (standard/cautious mode), warns in relentless mode
  • Structured failureReason — Failed features carry machine-parseable failure reasons, shown in checkpoint and recovery context

Critical Security Fixes

  • Exit-mission bypass hardened — Only Orchestrator can force-exit via endedAt; Workers/Validators are blocked
  • MultiEdit guard bypass closedMultiEdit tool now properly extracts content for all state.json guards
  • Verdict regex anchored — Prevents false-positive completion when report contains "PASS" in non-verdict context

Quality Improvements

  • is_test_file() precisiontest_* pattern restricted to code extensions; data files (test_data.json) no longer blocked for Workers
  • Failed feature counting_feature_progress() counts "failed" separately instead of bucketing as "pending"
  • Legacy plan.md removedfeatures.json is the sole source of truth
  • Checkpoint error handling — PreCompact write failures now emit diagnostic warnings

Test Coverage

757 tests across 6 suites, verified on 3 OS platforms:

Suite Tests Coverage
phase-guard 222 Role enforcement, defense layers, model validation, round/duration limits
mission-reminder 120 Context injection, feature-awareness, role separation
mission-continue 143 Strength gradient, worker counts, compaction recovery
mission-stop 94 Stop prevention, infinite loop guard, feature context
mission-lifecycle 97 PreCompact, SessionStart, UserPromptSubmit
E2E simulation 81 Full lifecycle: init → dispatch → enforce → complete → cleanup

CI: Ubuntu + macOS + Windows — all green.


Quick Start

# Install as Claude Code plugin
claude plugin add riftzen-bit/mission

# Enter mission mode
/enter-mission Build a user authentication system with JWT

# View progress
/mission-status

# Emergency stop (always works)
/exit-mission

Configuration

# Set models per role
/mission-config models.worker=sonnet
/mission-config models.validator=opus

# Set persistence mode
/mission-config persistence=relentless  # never stop until PASS
/mission-config persistence=standard    # respect round/duration limits
/mission-config persistence=cautious    # stop at first critical issue

# Set limits
/mission-config maxRounds=10
/mission-config maxDurationMinutes=120

Requirements

  • Python 3.8+ (stdlib only — zero external dependencies)
  • Claude Code with hook support

Full documentation: See CLAUDE.md and AGENTS.md in the repository.