Gate repeated estimating on current proposal state - #389
Merged
Merged
Conversation
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.
Outcome
Prevent repeated planning rounds from admitting an estimator against a proposal after voting or acceptance. A racing estimator result fails closed before governance integration.
Work authority
Contributor mode (select one):
Plan
Use current governance status during the single living-graph projection: estimating nodes in repeated rounds become cancelled once the proposal leaves draft/open; a racing completed result is rejected before TreeDX/governance reads and writes. Preserve completed estimator receipts and the accepted decision. Focused and live repair acceptance passed; broader SDK golden acceptance remains separate.
Changes and commits
Verification
11 focused Vitest tests pass across projector and estimate integration; 2 Discussion custody tests pass.
npm run buildandnpm run check:file-architecturepass.No TypeScript diagnostics in touched files; repository-wide
tsc --noEmitstill fails on unrelated baseline errors.trsd dev rebuild api.servicecompleted successfully; retry-3 eight-roletrsd sendnow posts to workday-bound Discussion. Role-specific agent responses returned; focused stale-estimator gate and all three Actions passed.I ran the narrowest relevant package verification and documented any checks that could not be run.
Risk and rollback
The new projection closes only estimating nodes bound to closed proposals; historical completed assignments remain immutable. A racing result fails closed. Revert this commit through staging if regression occurs and rebuild the API in development mode. No RC, purge, or host package change.
Completion summary
This bounded repair is ready for staging integration. The complete SDK golden run, including post-acceptance scheduling, remains Platform #520 and is not claimed here.
AGPL committer authorization
The base-owned author authorization workflow governs this PR; no per-PR grant is requested.
Submission checklist