Files
united-workforce/packages/workflow-template-develop
xiaoju 2b587612d5 refactor: replace maxRounds with supervisor check interval
Removes maxRounds as a hard stop limit from the entire stack. The supervisor
(already configured via workflow.yaml supervisorInterval) is now the sole
termination authority.

Changes across 27 files in 11 packages:
- workflow-protocol: StartStep.meta is now empty, StartNodePayload drops maxRounds
- workflow-cas: isStartPayload no longer checks maxRounds
- workflow-execute: engine, worker, fork-thread all stripped of maxRounds plumbing
- cli-workflow: --max-rounds flag removed from CLI and HTTP API
- workflow-runtime: build-context and create-workflow no longer reference maxRounds
- workflow-dashboard: UI no longer sends maxRounds
- workflow-template-develop/solve-issue: moderator no longer checks rounds remaining
- All tests updated

Fixes #185
2026-05-11 08:51:35 +00:00
..

@uncaged/workflow-template-develop

Reference develop workflow template: plan phases, implement in a loop, review, test, then commit.

Export a pure WorkflowDefinition (developWorkflowDefinition) and role/moderator pieces. Workflow instantiation (createWorkflow(definition, binding)) happens in the workflow instance layer, not in this template package.

Install

bun add @uncaged/workflow-template-develop @uncaged/workflow zod

In this monorepo: workspace:* for @uncaged/workflow-template-develop and @uncaged/workflow.

Usage

import { createWorkflow } from "@uncaged/workflow";
import { developWorkflowDefinition } from "@uncaged/workflow-template-develop";

const run = createWorkflow(developWorkflowDefinition, binding);

Roles

Role Purpose
planner Break work into ordered phases (hashes)
coder Implement current phase; repeats until phases complete or limits hit
reviewer Code review gate (approved vs send back to coder)
tester Verify via tests/build/lint (passed vs send back to coder)
committer Final commit step

Also exported: role factories/meta schemas (plannerRole, coderRole, …), DevelopMeta, developRoles.

Moderator flow

  1. Startplanner
  2. After plannercoder
  3. After coder → if all planned phases are done (or last phase completed) → reviewer; else coder again, until maxRounds then END
  4. After reviewer → if approved → tester; else coder (or END if out of rounds)
  5. After tester → if passed → committer; else coder (or END if out of rounds)
  6. After committerEND

API overview

Export Description
developWorkflowDefinition description, roles, developModerator
developModerator Moderator<DevelopMeta>
buildDevelopDescriptor buildDescriptor({ … }) for bundle metadata
DEVELOP_WORKFLOW_DESCRIPTION Human-readable one-liner