[AISOS-2495] Test Forge task takeover: clarify merge reconciliation documentation - #337
Merged
Merged
Conversation
Detailed description: - Added a note to 'docs/guide/task-workflow.md' and 'docs/guide/feature-workflow.md' explaining that a merged pull request is terminally reconciled by its repository namespace and pull request number, rather than its head SHA. - Added a new unit test 'test_reconciliation_is_independent_of_head_sha' to 'tests/unit/workflow/test_pr_state.py' to verify and enforce that pull request matching and reconciliation are completely decoupled from its head SHA. Closes: AISOS-2495
Collaborator
Author
🤖 Reviewing a Forge pull requestTo send code feedback to Forge, open Files changed, select Review changes, and submit a Request changes review. Forge will address the review feedback automatically and push updates to this pull request. Regular comments are ignored by the review workflow. Use them for conversation or the Forge commands below:
|
eshulman2
requested changes
Sep 3, 2026
eshulman2
left a comment
Collaborator
There was a problem hiding this comment.
what about bug workflow? isn't it true there as well?
Collaborator
Author
|
Forge is addressing PR review feedback now. |
Detailed description: - Added PR Merge Reconciliation documentation block to docs/guide/bug-workflow.md - Aligned Bug Workflow documentation with Task and Feature Workflow documentation Closes: AISOS-2495-review-fix
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.
Summary
This pull request clarifies the behavior of merged pull request reconciliation within the Forge task-takeover and feature workflows. By explicitly documenting and testing that terminal reconciliation relies on the repository namespace and pull request number rather than the head SHA, we prevent confusion and ensure robust matching even when commits are rebuilt, squashed, or force-pushed during human review. This documentation-only clarification alongside supportive testing helps maintain predictable workflow states for developers and automated processes alike.
Changes
Documentation
docs/guide/task-workflow.md: Added a note under the "Human Review" section clarifying that merged pull requests are terminally reconciled using the repository namespace and PR number instead of the head SHA.docs/guide/feature-workflow.md: Added the matching clarification note to the "Human Review" section to maintain documentation consistency across different workflows.Testing
tests/unit/workflow/test_pr_state.py: Introduced a new unit test,test_reconciliation_is_independent_of_head_sha, to assert and programmatically guarantee that PR matching and reconciliation are fully decoupled from head SHA.Implementation Notes
Decoupling terminal reconciliation from the head SHA is a key design choice that prevents reconciliation failures when standard GitHub practices—such as squashing commits or rebuilding branches during review—alter the head SHA. Reconciling by repository namespace and pull request number ensures a stable, immutable identifier for the final state of the PR.
Testing
test_reconciliation_is_independent_of_head_shainsidetests/unit/workflow/test_pr_state.pyto verify that pull request matching and reconciliation depend strictly on repository namespace and PR number, completely independent of the head SHA.Related Tickets
Generated by Forge SDLC Orchestrator