Repository navigation
fix: preserve live and completed workday authority during reconciliation - #590
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
Keep discussion refreshes from corrupting a live workday continuation, and resume independent review of completed portfolio products after graph reprojection. The real UI picker continuation retained an Engineer result at revision98 while its graph node said completed at121, so strict predecessor admission refused it.
Work authority
Contributor mode (select one):
Plan
Keep the existing exact predecessor fence. Restore completed nodes to the caller-selected immutable terminal result revision, retain fresh-simulation and changed-authority rejection, then resume the same accepted real proposal. No assignment injection or copied result.
Changes and commits
00f6785 changes only completed-terminal revision recovery plus focused/native PostgreSQL cases. Failed, blocked and request-changes revision behavior stays guarded. Existing completion tests now assert the original result revision rather than a projection-only revision that cannot admit a reviewer.
Verification
Risk and rollback
No schema/migration. Graph revision still advances; a completed execution node is restored to its actual result revision. Caller terminal selection remains the authority for current Decision/source and review chronology. Revert00f67856 through the normal PR path if regression occurs; preserve original assignments/products and stop only affected continuation.
Completion summary
Small owning-boundary repair tested and ready for Actions. UI independent review, linked Admin implementation/review and simulated release are not claimed complete. API#589 is a separate in-flight prerequisite for cross-project discovery.
AGPL committer authorization
Base-owned workflow checks the authenticated author against the existing allowlist.
Submission checklist
Required first run39668790772 failed the unchanged500-line policy: existing graph-persistence test reached502 counted lines. Commit0d9cbd94758559f084db25b37d11b07453ef5ccc moves the real-shaped continuation regression into the existing living-graph integration suite and reuses its governed graph fixture. No production code or assertion was removed/weakened. File-length check passes; all13 existing+new integration-file cases pass. Initial60-case PostgreSQL evidence remains attached to functional00f67856; revised-head required Actions are pending. Native full workflow and downstream review/release remain unproven.
Refreshed exact0d9cbd94 evidence: all72focused cases/4files passed with disposable native PostgreSQL at loopback32800, including unchanged continuation, persistence, native public read-back and moved integration regression. File policy passes. Disposable database/container removed after exit0. This72-case set includes the prior60/13sets and is not added to them. Required corrected Verify39671311075 remains pending. Local productive runtime still uses4f1c235b (0b8e3d2 + identical functional repair00f67856); moving the test does not replace an active provider or issued assignment.
Real cache continuation: discussion isolation repair (ee8f51b)
The Deployment Engineer was leased at node revision9 in workday-8794fb71-8146-42b5-b33e-94169d213b82. A communication-only refresh at20:21:47 replayed failed history from its parent run, marked that live node failed, and caused its20:43:27 completion to return409. Its real Git38b3d1c84584263c43fdb83cf74ebc7f26d1e07a is retained; assignment_-pTyZAm3A5dWNyGm3_FFpr0z5dy0SGRH expired and released, never silently promoted to completed.
Communication reconciliation now reads conversation assignment history only and applies operational/review recovery only within its own scope. Noncommunication nodes and dependency edges are preserved exactly. Full team reconciliation retains existing run/continuation recovery.
A focused owning-SQL regression reproduced two changed work nodes before the fix (live Actor and interrupted Reviewer). With the fix, plan, mutation and repeated replay preserve the complete graph, assignments, reservations, ledger and event snapshots. Exact candidate: 22 tests /5 files passed, including native separate PostgreSQL five-result concurrency against reconciliation; build, file-length/architecture and diff checks passed. The disposable PostgreSQL container was stopped/removed. This is focused regression/integration evidence; full required Actions and a live resumed product chain remain unproven. Earlier72-test result applies to0d9 only; previous file-limit failure remains retained.
Integration after API589 merge
Required API589 Verify39663702132 passed1h49m20s; merged3f33f67226e873bca19c1121bdc086f4bebfab4a. Fresh protected staging was merged into this branch at f7c6ab8, preserving589 pinned-link and expired-native-closeout fixes. On this head26 focused tests/4 files passed, covering communication/workday isolation, conversation projection/retirement and terminal accounting races. Earlier22/5 separate-PostgreSQL result belongs to ee8f51b, not a newly claimed full suite on f7c6. Required exact-head Actions remain pending. Supported local API adoption includes both589 functionality and590 repairs; running compiled execution-graph-service.js SHA25616e6ec85499d2c94970ad041c26402ee07c712bd9899fa999a89d31846d24203 matches local build and contains the communication isolation. Live complete proposal→release proof remains pending.