Fixed-count loops are a bad definition of done.
`loop: 3` can waste a pass after the work is already good, or stop with work still left. v0.13.0 adds `until` conditions to Shaka workflows. Set a maximum iteration budget, then stop as soon as a shell check passes or an LLM judge returns SATISFIED.
The LLM path is deliberately boring: Shaka only accepts SATISFIED when it is the final non-empty line. Every other result keeps the loop going.
The shipped `review-and-fix` workflow now works this way with a cap of 3. It reviews, fixes, and checks the review again until there are no issues that need code changes.
`shaka run review-and-fix`
v0.13.0
🤖 github.com/jgmontoya/shaka
`loop: 3` can waste a pass after the work is already good, or stop with work still left. v0.13.0 adds `until` conditions to Shaka workflows. Set a maximum iteration budget, then stop as soon as a shell check passes or an LLM judge returns SATISFIED.
The LLM path is deliberately boring: Shaka only accepts SATISFIED when it is the final non-empty line. Every other result keeps the loop going.
The shipped `review-and-fix` workflow now works this way with a cap of 3. It reviews, fixes, and checks the review again until there are no issues that need code changes.
`shaka run review-and-fix`
v0.13.0
🤖 github.com/jgmontoya/shaka
1❤️1