xiaoju
9c8b98a551
refactor: merge 7 workflow-role-* packages into templates
...
- planner/coder/reviewer/tester/committer → workflow-template-develop/src/roles/
- preparer/submitter → workflow-template-solve-issue/src/roles/
- Moved tests, updated imports, removed role packages
- 219 tests pass, build clean
Closes #76
Refs #75 , #73
小橘 🍊
2026-05-07 14:45:11 +00:00
xiaoju
1d6da18b18
feat: developer + submitter roles, solve-issue refactored to parent workflow
...
- Developer role (react extract): delegates to workflowAsAgent("develop")
- Submitter role: push branch + create PR
- solve-issue now 3-role parent: preparer → developer → submitter
- Removed direct planner/coder/reviewer/committer from solve-issue
- 188 tests passing
Fixes #59
2026-05-07 13:51:37 +00:00
xiaoju
fa9163e462
refactor: all-agentic architecture — roles as pure data, agent binding at runtime
...
BREAKING: Major architecture change.
- RoleDefinition = pure data (systemPrompt + schema + dryRunMeta)
- AgentFn = (ctx: ThreadContext) => Promise<string>, reads ctx.currentRole
- WorkflowDefinition decoupled from agents, bound via AgentBinding at runtime
- createWorkflow(def, binding, extract) replaces createRoleModerator
- Meta extraction moved into engine loop
- Delete workflow-util-role package (createRole, decorators, extract all gone)
- Role packages become pure data exports
- Agent packages updated to single-arg AgentFn
小橘 <xiaoju@shazhou.work >
2026-05-06 14:14:33 +00:00
xiaoju
c9cdfe37db
refactor: extract planner and coder into standalone role packages
...
- New @uncaged/workflow-role-planner (phaseSchema, createPlannerRole)
- New @uncaged/workflow-role-coder (coderMetaSchema, createCoderRole)
- solve-issue template imports from new packages, keeps dry-run defaults
小橘 <xiaoju@shazhou.work >
2026-05-06 11:40:19 +00:00
xiaoju
513c006ce3
refactor: rename workflow-role-llm → workflow-agent-llm
...
The package only contains createLlmAdapter (OpenAI chat → AgentFn),
which is an agent adapter, not a role. Aligns with workflow-agent-cursor
and workflow-agent-hermes naming.
2026-05-06 10:14:35 +00:00
xiaoju
c04e7c31af
refactor: move llmExtract, extractMeta, buildDescriptor, types to workflow-util-role
...
workflow-role-llm now only contains LLM-as-agent specifics:
- createRole (wires agent + extract)
- createLlmAdapter (OpenAI chat completions agent)
workflow-util-role now provides all role infrastructure:
- decorators (decorateRole, withDryRun, onFail)
- llmExtract / extractMetaOrThrow (structured extraction)
- buildDescriptorFromRoles (zod → JSON Schema)
- LlmProvider, LlmMessage types
2026-05-06 08:13:27 +00:00
xiaoju
db5cbd49e2
feat: @uncaged/workflow-template-solve-issue — first workflow template
...
planner → coder → reviewer → committer flow with retry logic.
- createSolveIssueWorkflow factory (agent-agnostic)
- buildSolveIssueDescriptor with zod@4 JSON Schema
- Moderator: reviewer reject → coder retry, maxRounds → END
- 103 tests pass, biome clean
Closes #13
小橘 <xiaoju@shazhou.work >
2026-05-06 07:04:28 +00:00