Handbook
Forge Platform roadmap rows
Outcome-first rows aligned with docs/product-roadmap.md. Status: Ready | Hold for evidence | Needs discovery | Needs Versona routing.
Milestones
| ID | Release | Phase | Milestone | Epic | Outcome | Evidence | Horizon | Strategy fit | Dependencies | Non-goals | Next gate | Owner product | Consumer product | Contract touched | Approval boundary | Evidence expected | Status |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| R0.M0 | R0 | P0.1 | Platform charter close | — | Stakeholders agree mission, loop, MVP objective for planning | Charter + boundaries exist | NOW | S1 | None | Lenses UI build | PM sign-off on roadmap applicability | Forge Platform | All attach products | docs/platform-charter.md | PM / sponsor acceptance | Assay answers recorded | Ready |
| R0.M1 | R0 | P0.1 | Roadmap Definition of Ready | R0.E1 | Rows R0–R2 pass DoR or are flagged | This table + product-roadmap | NOW | S1 | R0.M0 | Perfect certainty | Complete R0.M2 boundary pass | Forge Platform | All | docs/product-roadmap.md | PM gate | DoR checklist | Ready |
| R0.M2 | R0 | P0.2 | Product boundary assay | R0.E2 | No role collapse; Lenses SoR affirmed | Assay log in sprint M0 evidence | NOW | S1 | R0.M1 | Resolving all future risks | Contract gap register | Forge Platform | All | docs/product-boundaries.md | Governance review | platform-assay-log.md updated | Ready |
| R0.M3 | R0 | P0.2 | Contract gap register | R0.E3 | Gaps between schemas and intersection map owned | Schema audit draft | NOW | S1 | R0.M2 | Fixing all gaps in R0 | M1 charge prep | Forge Platform | Lenses, LCDL, Fleet | schemas/*, docs/intersection-map.md | Architecture waiver | Gap list + owners | Hold for evidence |
| R0.M4 | R0 | P0.2 | Sprint 1 charge prepared | R0.E1 | M1 scope, stories, Sparks listed for execution | Roadmap handoff doc | NOW | S1 | R0.M3 | Executing M1 in R0 | Start M1 Sparks | Forge Platform | Lenses (future) | sprints/M1-forge-run-spine/ | Team lead | Charge + handoff | Ready |
| R1.M1 | R1 | P1.1 | ForgeRun v1 hardened | R1.E1 | Stable identifiers, nesting, extensions for cross-product attach | Schema review | R1 | S1 | R0.M4 | Live integrations | Story breakdown | Forge Platform | Lenses, LCDL, Fleet | schemas/forge_run.v1.schema.json | Schema breaking-change review | Validated schema + sample | Ready |
| R1.M2 | R1 | P1.1 | EvidencePacket v1 hardened | R1.E2 | Evidence shape supports human decision per charter | Sample + narrative | R1 | S1 | R1.M1 | All evidence types filled | LCDL live traces | Forge Platform | Lenses | schemas/evidence_packet.v1.schema.json | Human evidence review policy | Sample + checklist | Ready |
| R1.M3 | R1 | P1.1 | ApprovalRequest v1 hardened | R1.E1 | Approval boundary explicit in artifacts | approval-model.md alignment | R1 | S1 | R1.M1 | Auto-approval for destructive work | Fleet template binding | Forge Platform | Lenses, Fleet | schemas/approval_request.v1.schema.json | Named approver role | Sample + assay | Ready |
| R1.M4 | R1 | P1.1 | AgentRun / Workcell hardened | R1.E1 | Workcells attach without parallel run model | Static correlation demo | R1 | S1 | R1.M1 | Hermes/Factory required | Execution in R1 | Forge Platform | Lenses | agent_run, workcell_* schemas | Workcell output review | Samples | Ready |
| R1.M5 | R1 | P1.2 | Static sample chain validates | R1.E2 | CI or checklist proves chain coherence | check_foundation.py + manual | R1 | S1 | R1.M1–M4 | Production deploy | M2 handoff | Forge Platform | All consumers | samples/*.json | QA sign-off on samples | Pass log | Hold for evidence |
| R1.M6 | R1 | P1.2 | M2 Lenses handoff complete | R1.E2 | Fixture set + glossary for Lenses IA/spec | Handoff doc | R1 | S2 | R1.M5 | Building full UI in forge-platform | R2.M1 kickoff | Forge Platform | Lenses | docs/ + samples/ | Lenses PM | Handoff package | Ready |
| SH.M1 | SELFHOST | P.SH.1 | Static selfhost chain validates | — | R1.M5 narrative closed for platform repo | validate script log | NOW | S2 | R1.M5–R1.M6 | Hermes required | M2-lite kickoff | Forge Platform | Lenses | sprints/selfhost-alpha/samples/ | QA | Chain pass | Ready |
| SH.M2 | SELFHOST | P.SH.2 | Lenses forge-runs API live | — | Workspace child exposes .forge/runs/ read path | API doc + smoke | NOW | S2 | SH.M1 | Full R2 UX | Runner wiring | Lenses | Humans | HTTP JSON | Read policy | Handoff | Ready |
| SH.M3 | SELFHOST | P.SH.3 | Approval-gated runner + importer | — | check_foundation → EvidencePacket merge | Runner logs | NOW | S2 | SH.M1 | Arbitrary code | SH.M4 demo | Forge Platform | Lenses | LocalRunner* | Maintainer | EvidencePacket | Ready |
| SH.M4 | SELFHOST | P.SH.4 | Close assay + gap register path | — | Second vertical produces BA/Architecture sparks | close-assay.md | NOW | S2 | SH.M2–SH.M3 | Fleet live jobs | R3 planning | Forge Platform | PM | intersection + schemas | PM gate | Assay | Ready |
| R2.M1 | R2 | P2.1 | ForgeRun list/detail | R2.E1 | Humans browse runs locally | Lenses repo UX | R2 | S2 | R1.M6 | Backend scale | Detail at R2.M4 scope | Lenses | Humans | ForgeRun UI contract | Read vs write policy | Demo recording | Needs discovery |
| R2.M2 | R2 | P2.1 | EvidencePacket panel | R2.E1 | Evidence readable in one place | UX + fixtures | R2 | S2 | R1.M6 | All sections interactive | Live LCDL in R2 | Lenses | Reviewers | EvidencePacket views | Evidence tamper policy | Screenshots | Needs discovery |
| R2.M3 | R2 | P2.1 | Approval card | R2.E1 | Approval state visible | State machine copy | R2 | S2 | R1.M3 | Channel approval | Execution | Lenses | Approvers | Approval UX + API later | Approver identity | UI review | Needs discovery |
| R2.M4 | R2 | P2.1 | Agent/workcell panel | R2.E1 | Workcell activity visible | R1 correlation | R2 | S2 | R1.M4 | Live agent runs | R5 depth | Lenses | Reviewers | AgentRun views | Workcell accountability | Demo | Needs discovery |
| R2.M5 | R2 | P2.2 | LCDL trace placeholder real shape | R2.E2 | Panel wired to LCDLTraceSummary | Schema fidelity | R2 | S2 | R1.M6 | Real trace payload | R3 truthy data | Lenses | Reviewers | lcdl_trace_summary | N/A (placeholder) | Fixture render | Ready |
| R2.M6 | R2 | P2.2 | Fleet job placeholder real shape | R2.E3 | Panel wired to FleetJobSummary | Schema fidelity | R2 | S2 | R1.M6 | Live jobs | R4 live jobs | Lenses | Operators | fleet_job_summary | N/A (placeholder) | Fixture render | Ready |
| R2.M7 | R2 | P2.2 | UI copy boundary check | R2.E4 | Copy says Lenses ≠ reasoning/runtime | UX + PM review | R2 | S2 | R2.M1–M6 | Full policy editor | R3 | Lenses | All | docs/product-boundaries.md | PM + UX | Copy review log | Needs Versona routing |
| R3.M1 | R3 | P3.1 | LCDLTraceSummary emitted | R3.E1 | Traces are artifacts, not chat | LCDL task run | R3 | S3 | R2.M5 | Full verification breadth | R4 jobs | LCDL | Lenses | lcdl_trace_summary schema | Task policy | Trace JSON | Hold for evidence |
| R3.M2 | R3 | P3.2 | Decompose mapped to ForgeRun | R3.E2 | Intent decomposition on spine | Task mapping doc | R3 | S3 | R3.M1 | Exact task names (decompose_problem TBD) | All LCDL tasks | LCDL | Lenses, forge-platform | ForgeRun extensions | Operator | Mapping ADR/sample | Hold for evidence |
| R3.M3 | R3 | P3.2 | Plan DecisionPack mapped | R3.E2 | Planning outputs attach to run | Task mapping | R3 | S3 | R3.M1 | Full PDLC automation | Contradiction scan | LCDL | Lenses | EvidencePacket refs | Governance | Samples | Hold for evidence |
| R3.M4 | R3 | P3.2 | Contradiction scan in EvidencePacket | R3.E2 | Contradictions reviewable | Pipeline demo | R3 | S3 | R3.M1 | Auto-resolution | Answer-from-evidence | LCDL | Lenses | Evidence sections | Human adjudication | EvidencePacket | Hold for evidence |
| R3.M5 | R3 | P3.2 | Answer-from-evidence / failure reduction | R3.E1 | Classified outcomes for decisions | LCDL catalog | R3 | S3 | R3.M4 | Zero manual review | Fleet classification | LCDL | Lenses | Verification status fields | Human on fail | Trace + packet | Hold for evidence |
| R3.M6 | R3 | P3.3 | Lenses real trace render | R3.E3 | Non-placeholder LCDL in UI | Integration | R3 | S3 | R3.M1 | All R2 panels live | R4 | Lenses | Reviewers | UI + API | Read-only first | Demo | Hold for evidence |
| R4.M1 | R4 | P4.1 | FleetTemplate v1 hardened | R4.E1 | Templates express evidence expectations | Fleet + BP alignment | R4 | S4 | R3.M6 | Arbitrary argv ON | docs_health path | Fleet | Lenses | fleet_template schema | Template approval | Schema/sample | Hold for evidence |
| R4.M2 | R4 | P4.1 | docs_health template | R4.E2 | One approved job path works | Fleet runbook | R4 | S4 | R4.M1 | All templates | Multi-host | Fleet | Platform | FleetTemplate instance | Ops approval | Job success log | Hold for evidence |
| R4.M3 | R4 | P4.2 | FleetJobSummary in EvidencePacket | R4.E1 | Job outcome is first-class evidence | Correlation | R4 | S4 | R4.M2 | Full log ingest | LCDL classification | Fleet | Lenses | fleet_job_summary | Failure escalation | Packet + summary | Hold for evidence |
| R4.M4 | R4 | P4.2 | forge_run_id / approval propagation | R4.E1 | End-to-end lineage | Arch note | R4 | S4 | R1.M3 | OpenClaw ingress | Hermes shortcuts | Fleet + Lenses | All | IDs in APIs | Approver on submit | Trace diagram | Hold for evidence |
| R4.M5 | R4 | P4.2 | Lenses Fleet job card live | R4.E3 | Operators see live job | UI integration | R4 | S4 | R4.M3 | Full telemetry | R5 agents | Lenses | Operators | Job card | Kill job policy | Live demo | Hold for evidence |
| R4.M6 | R4 | P4.2 | LCDL classifies Fleet output | R4.E3 | Pass/warn/fail/needs_decision | Classifier task | R4 | S4 | R3.M5 | Auto-remediation | Factory lane | LCDL | Lenses | Classification in packet | Human on needs_decision | Trace | Hold for evidence |
| R4.M7 | R4 | P4.2 | EvidencePacket includes Fleet result | R4.E1 | Fleet outcome first-class in packet | E2E demo | R4 | S4 | R4.M3 | Full artifact capture | R5 agents | Fleet + Lenses | Reviewers | EvidencePacket | Escalation policy | Packet + job | Hold for evidence |
| R5.M1 | R5 | P5.1 | Hermes Forge skill pack | R5.E1 | Hermes has platform-scoped skills | MCP manifest | LATER | S5 | R4.M4 | Autonomous approval | R5.M2 | Hermes | Lenses | Skills YAML | Operator | Manifest review | Hold for evidence |
| R5.M2 | R5 | P5.1 | Hermes ↔ Lenses MCP readonly | R5.E1 | Perception without SoR bypass | Tool audit | LATER | S5 | R5.M1 | Write tools | Security review | Hermes | Lenses | MCP | Readonly allowlist | Audit log | Hold for evidence |
| R5.M3 | R5 | P5.1 | Hermes ↔ LCDL MCP | R5.E2 | Structured reasoning via contract | Trace proof | LATER | S5 | R3.M6 | Unbounded tokens | R5.M4 | Hermes | LCDL | MCP + LCDL | Task policy | Traces | Hold for evidence |
| R5.M4 | R5 | P5.1 | Hermes ↔ Fleet template-only | R5.E3 | Execution requests are template-bound | Job IDs | LATER | S5 | R4.M2 | Raw argv default | R5.M5 | Hermes | Fleet | MCP submit | Template approval | Job summary | Hold for evidence |
| R5.M5 | R5 | P5.2 | Factory Workcell path E2E | R5.E4 | Request→Result on spine | E2E | LATER | S5 | R4.M4 | Unreviewed merge | R5.M6 | Factory | Lenses | Workcell schemas | Human review | WorkcellResult | Hold for evidence |
| R5.M6 | R5 | P5.2 | Factory through Fleet template | R5.E4 | Contained execution lane | Fleet run | LATER | S5 | R5.M5 + R4.E2 | Interactive shells | R5.M7 | Fleet | Lenses | FleetTemplate | Ops | Logs | Hold for evidence |
| R5.M7 | R5 | P5.3 | LCDL verifies Factory output | R5.E5 | Independent verification | Reports | LATER | S5 | R3.M5 | Perfect patch understanding | R5.M8 | LCDL | Lenses | Verification | Human on dispute | Verifier trace | Hold for evidence |
| R5.M8 | R5 | P5.3 | Lenses agent/workcell review | R5.E4 | Outputs reviewable like other evidence | UI | LATER | S5 | R5.M5 | Auto-merge | R6 | Lenses | Reviewers | UI panels | Approver | Demo | Hold for evidence |
| R6.M1 | R6 | R6.1 | ChatIntent v1 hardened | R6.E1 | Channel intent is structured artifact | Schema | LATER | S5 | R2.M1 | Chat as SoR | Bridge design | OpenClaw | Lenses | chat_intent schema | Lenses creates run | Sample intents | Hold for evidence |
| R6.M2 | R6 | R6.1 | OpenClaw → Lenses bridge | R6.E1 | Ingress creates/updates ForgeRun | Proto | LATER | S5 | R6.M1 | Inline approval | R6.M3 | OpenClaw | Lenses | HTTP/MQ contract | AuthZ | Integration log | Hold for evidence |
| R6.M3 | R6 | R6.2 | ForgeRunStatusSummary projection | R6.E2 | Safe status to channel | DTO | LATER | S5 | R6.M2 | Full packet on mobile | R6.M4 | Lenses | OpenClaw | Summary schema | Redaction rules | Sample | Hold for evidence |
| R6.M4 | R6 | R6.2 | EvidenceSummary projection | R6.E3 | Evidence digest exfil safe | DTO | LATER | S5 | R6.M3 | Secrets in chat | R6.M5 | Lenses | OpenClaw | Evidence summary | DLP | Summary sample | Hold for evidence |
| R6.M5 | R6 | R6.2 | Safe approval relay policy | R6.E1 | Policy blocks chat-only approval | Doc + code | LATER | S5 | R6.M2 | Implicit approvals | R6.M6 | Lenses | OpenClaw | Policy | Legal/Sec | Policy review | Hold for evidence |
| R6.M6 | R6 | R6.3 | Channel ingress demo | R6.E2 | E2E chat→run→status | Recorded | LATER | S5 | R6.M5 | Prod load | R7 | OpenClaw + Lenses | Users | Demo script | Sponsor | Recording | Hold for evidence |
| R7.M1 | R7 | R7.1 | Cross-product smoke test | R7.E1 | Repeatable smoke passes | CI | LATER | S6 | R4+ | Full prod fidelity | R7.M2 | Forge Platform | All | Test manifest | Release mgr | Report | Needs discovery |
| R7.M2 | R7 | R7.1 | Docs-health dogfood loop | R7 | Platform docs under health job | Job schedule | LATER | S6 | R4.E2 | All repos | R7.M3 | Fleet + Platform | Humans | Fleet job | Maintainer | EvidencePacket | Hold for evidence |
| R7.M3 | R7 | R7.1 | Roadmap-gate dogfood loop | R7 | Roadmap gate uses spine | Process | LATER | S6 | R0 process | Auto-PM | R7.M4 | PM + Platform | Humans | Versona outputs | PM | Gate log | Needs discovery |
| R7.M4 | R7 | R7.2 | Schema hardening loop | R7 | Drift reduction institutionalized | CI | LATER | S6 | R1–R4 stable | Zero manual review | R7.M5 | Forge Platform | All | schemas/* | Release manager | CI report | Needs discovery |
| R7.M5 | R7 | R7.2 | Release readiness assay | R7 | Release gates evidence-based | Checklist | LATER | S6 | R7.M1 | Full compliance cert | R7.M6 | Governance | Humans | Assay template | Release board | Assay | Needs discovery |
| R7.M6 | R7 | R7.2 | Public docs alignment | R7 | Narrative matches shipped truth | Review | LATER | S6 | Marketing input | Full market launch | R7.M7 | Marketing + Platform | Public | Public site | Exec | Published diff | Hold for evidence |
| R7.M7 | R7 | R7.2 | Known limitations + next cycle | R7 | Honest limitation list | Doc | LATER | S6 | R7.M6 | Hiding gaps | Next PI | PM | Stake-holders | Roadmap | PM | Limitations doc | Needs discovery |
Note: R5–R7 rows stay Hold for evidence / Needs discovery until R4 closes; refine owners and exact task names with LCDL/Fleet/Hermes maintainers.
Epics (representative register)
| ID | Release | Phase | Milestone | Epic | Outcome | Evidence | Horizon | Strategy fit | Dependencies | Non-goals | Next gate | Owner product | Consumer product | Contract touched | Approval boundary | Evidence expected | Status |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| R0.E1 | R0 | P0.2 | R0.M4 | EPIC-CORE-ROADMAP-READINESS | Planning artifacts align execution | Docs exist | NOW | S1 | — | Implementation | R0.M4 | Forge Platform | All | docs/* | PM | Roadmap + rows | Ready |
| R0.E2 | R0 | P0.2 | R0.M2 | EPIC-CORE-BOUNDARY-ASSAY | Violations visible | Assay | NOW | S1 | R0.M1 | Fix-all | R0.M3 | Forge Platform | All | Boundaries doc | Governance | Assay log | Ready |
| R0.E3 | R0 | P0.2 | R0.M3 | EPIC-CORE-CONTRACT-GAP-REGISTER | Schema gaps owned | Audit | NOW | S1 | R0.M2 | Schema edits in R0 | M1 kickoff | Forge Platform | Lenses, LCDL, Fleet | Schemas | Architecture | Register | Hold for evidence |
| R1.E1 | R1 | P1.1 | R1.M4 | EPIC-CORE-FORGE-RUN-SPINE | Shared correlation model | Samples | R1 | S1 | R0.M4 | Optional agents | R1.M5 | Forge Platform | All | ForgeRun family | Breaking change | Samples | Ready |
| R1.E2 | R1 | P1.2 | R1.M6 | EPIC-CORE-EVIDENCE-PACKET | Human-decision evidence | Samples | R1 | S1 | R1.E1 | Live jobs | R2 | Forge Platform | Lenses | EvidencePacket | Evidence policy | Packet demo | Ready |
| R1.E3 | R1 | P1.1 | R1.M6 | EPIC-LENSES-BLUEPRINTS-CONTEXT-PANEL | Context contract alignment | Stub/plan | R1 | S2 | Blueprints submodule | Full UI | R2 | Forge Platform | Lenses | BlueprintContextPack | N/A | Contract note | Ready |
| R1.E4 | R1 | P1.1 | R1.M6 | EPIC-BLUEPRINTS-VERSONA-DEFINITIONS | Session report traceability | Refs | R1 | S3 | Blueprints | All Versonas automated | R3 | Blueprints / Platform | LCDL | VersonaSessionReport | N/A | Ref matrix | Hold for evidence |
| SH.E1 | SELFHOST | P.SH.1 | SH.M4 | EPIC-SELFHOST-LOCAL-LOOP | Lenses-local improvement run | Demos | NOW | S2 | R1.M6 | Hermes / full Fleet | R3 | Forge Platform + Lenses | Maintainers | ForgeRun + Evidence + LocalRunner | Maintainer | Assays | Ready |
| R2.E1 | R2 | P2.1 | R2.M4 | EPIC-LENSES-EVIDENCE-PACKET | Read-only spine visible | Demo | R2 | S2 | R1.M6 | Write path | R3 | Lenses | Humans | UI routes | Viewer role | Demo | Needs discovery |
| R2.E2 | R2 | P2.2 | R2.M5 | EPIC-LENSES-LCDL-TRACE-PANEL | Trace readable | Fixture | R2 | S2 | R1.M6 | Live LCDL | R3 | Lenses | Reviewers | LCDL panel | N/A | UX review | Ready |
| R2.E3 | R2 | P2.2 | R2.M6 | EPIC-LENSES-FLEET-JOB-CARD | Job readable | Fixture | R2 | S2 | R1.M6 | Live Fleet | R4 | Lenses | Operators | Fleet panel | N/A | UX review | Ready |
| R2.E4 | R2 | P2.2 | R2.M7 | EPIC-LENSES-BLUEPRINTS-CONTEXT-PANEL | Policy surfaced read-only | UX spec | R2 | S2 | R1.E3 | Editing BP in Lenses | R5 | Lenses | Reviewers | Context pack | N/A | Spec | Needs discovery |
| R3.E1 | R3 | P3.1 | R3.M1 | EPIC-LCDL-TRACE-SUMMARY | Traces export | JSON | R3 | S3 | R2.M5 | All tasks | R4 | LCDL | Lenses | Trace schema | Task gating | Trace files | Hold for evidence |
| R3.E2 | R3 | P3.2 | R3.M4 | EPIC-VERSONA-LCDL-CONTRACT-MAPPING | Discipline → governed tasks | ADR | R3 | S3 | R3.E1 | Full catalog | R4 | LCDL + Blueprints | Lenses | Contracts | Methodology gov | ADR | Hold for evidence |
| R3.E3 | R3 | P3.3 | R3.M6 | EPIC-LENSES-LCDL-DECISIONPACK-VIEW | Decision structure visible | UI | R3 | S3 | R3.E1 | Editing packs | R4 | Lenses | Reviewers | UI | Read-only | Demo | Hold for evidence |
| R3.E4 | R3 | P3.2 | R3.M5 | EPIC-LCDL-STANDARDS-TRACEABILITY | Standards refs in trace | Standards ladder | R3 | S3 | Blueprints | Full compliance | R5 | LCDL | Governance | Trace §5.1 analog | Waiver | Trace audit | Hold for evidence |
| R4.E1 | R4 | P4.2 | R4.M3 | EPIC-FLEET-TEMPLATE-EVIDENCE | Template = evidence program | Run | R4 | S4 | R3 stable enough for job context | Raw shell | R5 | Fleet | Lenses | Template + summary | Ops | Job + packet | Hold for evidence |
| R4.E2 | R4 | P4.1 | R4.M2 | EPIC-FLEET-DOCS-HEALTH-TEMPLATE | Concrete bounded job | Job logs | R4 | S4 | R4.E1 | All doc types | R5 | Fleet | Lenses | Job template | Submit approval | Logs | Hold for evidence |
| R4.E3 | R4 | P4.2 | R4.M6 | EPIC-LCDL-FLEET-OUTPUT-CLASSIFIER | Outcome classification | LCDL task | R4 | S4 | R3.M5 | Auto-fix | R5 | LCDL | Lenses | Classifier output | Human edge cases | Trace | Hold for evidence |
| R4.E4 | R4 | P4.1 | R4.M2 | EPIC-BLUEPRINTS-FLEET-TASKLET-MAPPING | Recipe → template | BP refs | R4 | S4 | Blueprints | Policy in Fleet | R5 | Blueprints | Fleet | Tasklets/recipes | Methodology | Mapping doc | Hold for evidence |
| R5.E1 | R5 | P5.1 | R5.M2 | EPIC-HERMES-LENSES-MCP | Hermes reads SoR via tools | MCP audit | LATER | S5 | R4.M7 | Write without approval | Security gate | Hermes | Lenses | MCP tools | Tool allowlist | Security review | Hold for evidence |
| R5.E2 | R5 | P5.1 | R5.M3 | EPIC-HERMES-LCDL-VERIFY | Structured reasoning path | MCP | LATER | S5 | R3.6 | Unstructured chat | R5.M4 | Hermes | LCDL | MCP + LCDL | Rate limits | Trace | Hold for evidence |
| R5.E3 | R5 | P5.1 | R5.M4 | EPIC-HERMES-FLEET-TEMPLATE-LIST | Template-only submit | MCP | LATER | S5 | R4.2 | Arbitrary argv | R5.M5 | Hermes | Fleet | MCP | Template approval | Job IDs | Hold for evidence |
| R5.E4 | R5 | P5.2 | R5.M5 | EPIC-FACTORY-WORKCELL-RESULT | Factory returns WorkcellResult | E2E | LATER | S5 | R4 + R3 | Unverified patches | R5.M7 | Factory | Lenses | Workcell schemas | Human merge | Result packet | Hold for evidence |
| R5.E5 | R5 | P5.3 | R5.M7 | EPIC-LCDL-FACTORY-PATCH-VERIFIER | Independent verification | LCDL | LATER | S5 | R3.5 | Perfect diff understanding | R7 | LCDL | Lenses | Verification | Human | Report | Hold for evidence |
| R6.E1 | R6 | R6.1 | R6.M1 | EPIC-OPENCLAW-CHATINTENT | Chat becomes intent artifact | Proto | LATER | S5 | R2.M1 | Chat approves jobs | Policy review | OpenClaw | Lenses | ChatIntent | Lenses creates run | Intent JSON | Hold for evidence |
| R6.E2 | R6 | R6.1 | R6.M3 | EPIC-OPENCLAW-RUN-STATUS | Status relay safe | Policy | LATER | S5 | R6.E1 | Full ForgeRun in chat | R6.M5 | OpenClaw | Users | Summary DTO | No approval in chat | Relay log | Hold for evidence |
| R6.E3 | R6 | R6.2 | R6.M4 | EPIC-OPENCLAW-EVIDENCE-SUMMARY | Evidence digest to channel | Proto | LATER | S5 | R2.2 | Full packet in SMS | R7 | OpenClaw | Users | EvidenceSummary | Redaction | Summary sample | Hold for evidence |
| R7.E1 | R7 | R7.1 | R7.M1 | EPIC-CORE-SMOKE-CROSS-PRODUCT | Repeatable smoke | CI | LATER | S6 | R4+ | Prod scale | Release | Platform | All | Test manifest | Release mgr | Report | Needs discovery |