Examples · Bug fix
Two workflow resolvers that quietly disagreed on a parse failure
Made the silent fallback observable, fixed the DTO builder's guard to match, and corrected the comment claiming the bad path was unreachable.
- $18.07
- Cost, start to finish
- 5h 6m
- Lead time, filed to merged
- 15
- Files changed in the merge
Measured from this task's real merge.
- Cost
- $18.07
- Turns
- 350
- Lead time
- 5h 6m
- Merged
- Aug 6, 2026
- Diff
- 15 files · +388 -34
A task's effective workflow can be pinned to a stored override. Two code paths resolve that pin, one for staffing and one for the API's own DTO, and only one of them logged when the stored value failed to parse. The other fell back silently, and a comment nearby claimed that path could never be hit.
What was asked for
Resolving a task's effective workflow has two implementations, and they disagree about what to do when the stored pin does not parse. One logs; the other is completely silent.
Filed by a developer, routed by capability (go).
What the herd did
- plan
- code
- review
- merge
- verify
- done
- plan
- Compared both resolvers line by line to confirm the fallback really was silent on one path, not just differently logged.
- code
- Made the silent fallback log the same way its sibling does, fixed the DTO builder's guard so it matches the staffing path's condition, and rewrote the comment that claimed the bad path was dead.
- review
- Added coverage for the specific parse-failure case that used to fall through unnoticed.
- merge
- Fifteen files across the engine and task-schema packages, including a new archguard test that pins the two resolvers to the same predicate.
- verify
- Confirmed a task with an unparseable stored override now logs on both code paths, not just one.
- done
- $18.07 and 306 minutes, the longest lead time in this set.
What it changed
The merge touched 15 files (+388 −34). Among them:
internal/taskschemas/task_workflow.gointernal/taskdto/task_dto.gointernal/taskshttp/handler_tasks.gointernal/archguard/workflow_override_predicate_test.go
What it cost
$18.07 in model spend, 350 agent turns, and 5h 6m from filed to merged. See what a month of work like this would cost your own team on our cost calculator.
Two implementations of the same rule are a bug waiting for the one input they disagree on.

Got something like this to ship?
Tell us what you're building. We'll set your workspace up and you can file it today.