fix(forge): zero-change tasks -> nochange, not false done/gate=ok (task 7894af1c)#13
Merged
Conversation
Designed by forge (agy/Opus, batch bf_d96b7574 / task-3a13769e); applied cleanly by hand (forge could not commit it: pre-commit black --check blocks the unformatted repo and ruff --fix mutated ~30 .py incl. dropping a still-used `import hashlib` — a separate forge-unblock needed for .py tasks). _commit_work now returns (sha, has_changes). When an agy run yields zero file changes, the worker sets node status='nochange' (added to ST_TOKEN + TERMINAL_BAD, NOT in TERMINAL_GOOD) and reconciles the gateway as failed, instead of empty-commit -> gate-ok -> done. Stops no-op/silently-failed agent runs from being reported as completed/green in `forge status`. Real-change tasks keep commit -> gate -> done. Empty commit still created for diffability. task 7894af1c Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.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.
Forge dogfood finding: 0-file-change agy runs were reported done/gate=ok (empty commit on green base). _commit_work now returns (sha, has_changes); worker sets status=nochange (terminal-bad, not green) + reconciles gateway failed instead of gate->done. Designed by forge/Opus (bf_d96b7574), applied by hand (forge can't yet commit .py: pre-commit black/ruff whole-repo). task 7894af1c