Skip to content

Epic: Devin peer participant and lifecycle support for v1.4.0 #901

Description

@jeffhuber

Part of roadmap #900.

Devin peer participant, hosted lifecycle, context, builder, and reviewer support for v1.4.0

Problem

Code Mower v1.3.1 recognizes Devin as a participant, has a maintained local CLI builder/informational reviewer, and can create and poll hosted Devin v3 release-qualification sessions. It does not yet provide a reusable provider-neutral lifecycle for dispatch, progress, questions, answers, cancellation, recovery, result collection, or PR binding. Coworker context supports only Claude and Codex. The dormant hosted devin reviewer configuration also declares merge authority despite current documentation and calibration policy saying Devin is not promoted.

Outcome

A session started from Claude, Codex, or Devin can select Devin and use the same provider-neutral commands to dispatch a trusted work order, inspect state, answer a clarification, collect a verified PR/result, cancel, and recover after restart. Devin receives the same explicitly authorized Coworker or later Graphify context packet as other participants. Local CLI and hosted API remain distinct transports under one product identity. Both reviewer transports remain informational until calibration independently earns promotion.

Target user surface:

code-mower session dispatch SESSION.json --to devin --role builder --work-order WORK_ORDER --max-acu 2 --apply
code-mower session status SESSION.json --participant devin
code-mower session message SESSION.json --participant devin --message-stdin --apply
code-mower session collect SESSION.json --participant devin --apply
code-mower session cancel SESSION.json --participant devin --apply

Scope and sequence

  1. Capability model and safe reviewer posture.
  2. Reusable Devin v3 create/get/list-messages/send/terminate/archive client plus lifecycle state machine and uncertain-create reconciliation.
  3. Provider-neutral session dispatch, status, message, cancel, collect, persistence, Board state, and recovery.
  4. Hosted Devin work-order delivery, exact repository/issue/branch policy, completion schema, PR binding, provenance, and fix rounds.
  5. Private context delivery to Devin orchestrator/builder/reviewer roles.
  6. Local and hosted exact-head reviewer parity, kept informational pending calibration.
  7. Devin host/skill/doctor and optional first-run setup.
  8. Qualification and public sanitized scorecard.
  9. v1.4.0 release, package rehearsal, campaign, Board refresh, and CodeMower.com metadata upload.

Architecture and safety contract

  • Product identity is separate from devin_cli and devin_api_v3 transports.
  • Capability declarations cover coordinate, build, review, message, cancel, context, and structured result behavior.
  • Normalize lifecycle to received/dispatching/active/waiting-for-user/waiting-for-approval/succeeded/failed/cancelled/creation-unknown.
  • Checkpoint before paid create. Reconcile uncertain creation through a unique bounded tag and created-after query; accept exactly one match. Never auto-retry a paid create.
  • Require exact repository allowlisting, bounded response sizes/time, explicit --apply, and a positive ACU cap for live work.
  • Keep credentials, context, prompts, messages, transcripts, and raw output in protected local state only. Board/cloud receive allowlisted metadata.
  • Verify returned repository, issue, PR, author/provenance, and current head before accepting completion.
  • Correct hosted reviewer merge authority immediately; selection never promotes a reviewer.

Dependencies

The lifecycle contract must stabilize before substantial Slack runtime work. Graphify #876 may run in parallel. The Graphify packet adapter later reuses the same context-recipient contract.

Delivery protocol

Each child issue produces one PR. Use a named Code Mower builder and an independent reviewer; exact-head evidence, focused tests, full relevant CI, privacy checks, and code-mower/gate are required. Once lane admission lands, use Devin itself for bounded subsequent child deliveries so the epic dogfoods the target capability.

Scorecard

Child Builder PR/head Peer audit Tests/gate Live evidence State
Capability/posture (#904) Codex #925 / b658d6f exact-head review complete CI and Code Mower gate passed metadata only merged
v3 lifecycle (#905) Codex #927 / 8ca1b0a Claude exact-head PASS CI and Code Mower gate passed bounded API fixtures merged
Session lifecycle (#906) Codex #928 / dbede0a Claude exact-head PASS CI and Code Mower gate passed recovery fixtures merged
Builder/PR binding (#907) Codex #930 / 88bd458 exact-head review complete CI and Code Mower gate passed bounded delivery merged
Context (#908) hosted Devin #932 / 6196388 Claude and Codex exact-head PASS CI and Code Mower gate passed live hosted delivery and verified round-10 collection merged
Completion recovery (#936) Codex #937 / b7fa6d8 Claude exact-head PASS CI and Code Mower gate passed #932 lifecycle regression merged
Bot login binding (#938) Codex #939 / 6dba0bc Claude exact-head PASS CI and Code Mower gate passed live #932 verified collection merged
Running-result precedence (#941) Codex #942 / a91fcc0 Claude exact-head PASS full local suite, CI, and Code Mower gate passed live #940 regression merged
Stale completion recollection (#943) Codex #944 / fd92d46 Claude exact-head PASS full local suite, CI, and Code Mower gate passed metadata-only builder event merged by configured gate automation
Reviewer parity (#909) Codex #931 / 945c622 Claude exact-head PASS CI and Code Mower gate passed calibration fixtures merged
Setup/doctor (#910) hosted Devin #940 / 965d002 Codex and Claude exact-head PASS 3,228 tests, Python 3.12-3.14 package CI, and Code Mower gate passed round-14 verified PR/head; optional setup and upgrade rehearsal merged
Qualification (#911) hosted Devin #958 / 0a1c25a Codex and Claude exact-head PASS Python 3.12-3.14 CI, containment, package, privacy, and Code Mower gate passed verified round-2 PR/head; live Coworker retrieval canary; Board/privacy inspection; zero-report CodeMower.com upload merged
Release (#912) hosted Devin with bounded Codex recovery #959 / a56b309 Claude exact-head PASS 3,391 tests, release readiness 20/20, Python 3.12–3.14 CI, privacy, containment, and Code Mower gate passed exact Claude + Codex + hosted Devin cold-install campaign; three Boards upgraded; four metadata-only events and zero reports uploaded released

Definition of done

  • Devin has peer-level session hosting, lifecycle control, local and hosted builder use, private context delivery, recoverability, and informational exact-head review.
  • Hosted and local transports expose consistent states and safe reason codes while preserving product-specific differences.
  • Five bounded delivery samples, two clean reviewer controls, two known-blocked catches, and adjudicated findings are recorded; reviewer authority changes only if the published promotion thresholds are met.
  • Claude + Codex remains the initial default; Devin setup is optional and clear.
  • v1.4.0 is published and installed, its qualification campaign passes, and allowlisted metadata is visible on CodeMower.com.

Delivery checklist

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    contract-firstRequires product/data/merge contract agreement before dependent work mergesenhancementNew feature or requestepicEpic tracking issue

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions