[rig-claude] Improve Claude dynamic-workflow compatibility for rig - #449
Draft
github-actions[bot] wants to merge 1 commit into
Draft
[rig-claude] Improve Claude dynamic-workflow compatibility for rig#449github-actions[bot] wants to merge 1 commit into
github-actions[bot] wants to merge 1 commit into
Conversation
… call.json schema Adds two tests to src/workflow.test.ts that cover two documented compatibility points between Claude dynamic workflows and rig that had no automated coverage: 1. warnAgents advisory warning: verifies that a run emits exactly one 'warning' event when the warnAgents threshold is crossed — the rig counterpart to the session-level advisory warning in Claude dynamic workflows. 2. call.json with a non-object schema (s.enum): verifies that call.json accepts any s.* schema, not just s.object. This is a documented rig advantage over Claude dynamic workflows, which only support object schemas. Both tests are placed in the 'dynamic-workflow parity' describe block, making them discoverable by anyone porting a Claude dynamic workflow to rig. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Compatibility gap addressed
Two documented Claude dynamic-workflow compatibility points had no automated test coverage:
warnAgentsadvisory warning — Claude dynamic workflows emit a session-level advisory warning when many agents are scheduled. Rig maps this to awarningevent emitted afterwarnAgentsagent calls. No test verified this behavior, making it easy to regress without notice.call.jsonwith non-object schemas — Claude dynamic workflows only support object schemas inagent(prompt, { schema }). Rig'scall.jsonaccepts anys.*schema (s.enum,s.array,s.string, etc.) — a documented rig advantage. No test covered this, so users porting Claude workflows couldn't confirm the richer schema support was real.Why this improves transfer from Claude dynamic workflows to rig
Both tests live in the
dynamic-workflow paritydescribe block insrc/workflow.test.ts, making them immediately discoverable by anyone searching for Claude compatibility coverage. The tests serve as executable specs that:warnAgents→warningevent mapping works as documented inclaude-workflow-conversion.mdcall.jsonis not limited to object schemas, matching the documented advantage over Claude workflowsFiles changed
src/workflow.test.ts— added two tests to thedynamic-workflow paritydescribe blockValidation run
Remaining intentional differences
effortoption — use a more capable model id instead (claude-opus-4-5overclaude-haiku-3-5)agentType: "Explore"— use prompt wording plus a narrowtoolslistmaxTurns+repair()), not process-based ({ retries })limits.maxAgents), not tokens