Skip to content

fix(supervise): require parent completion after child delivery - #1256

Merged
drewstone merged 5 commits into
mainfrom
fix/parent-completion-contract-20260916
Sep 16, 2026
Merged

drewstone merged 5 commits into
mainfrom
fix/parent-completion-contract-20260916

Conversation

@drewstone

Copy link
Copy Markdown
Contributor

When a child passes a narrower assignment check, its director currently treats the whole parent objective as complete. A database component can therefore become the final answer to a complete-product pursuit, and the director never receives its configured continuation.

Check the finalizer's candidate against the parent's deliverable before declaring the contract met. The default selects the highest-scoring child that also satisfies the parent; custom finalizers combine child artifacts before checking the aggregate. Cache the checked candidate for each completed external drive so it is not checked twice. Preserve each child's original validity. A thrown parent oracle reports a validation error through existing driver failure records.

Validation: a real HTTP/MCP/Scope regression first returned the partial component as a false winner; it now continues the same director and accepts the complete result. The final focused suite passed 118 tests across four files, including both execution paths, heterogeneous child contracts, aggregation, and checker failure diagnostics. Lint, source/examples typechecks, generated docs/freshness, and packed package/edge verification passed. An earlier local broad suite began before the final changes and was stopped; it is not final-tree evidence. CI supplies the full final-tree checks.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@drewstone

Copy link
Copy Markdown
Contributor Author

Cloud reliability delivery coordination: user now requests merging all existing Runtime PRs after conflict resolution. My lane owns #1251 integration and the Knowledge 17.0.2 cohort correction, plus #1250 and #1254 conflict integration. I see your parent-completion worktree advancing, so I will not modify it. Please retain source ownership, merge latest main once #1251 lands, and send final local proof/head. Final coordinated release remains unpublished 0.231.0 (gate explicitly allows one unpublished version across a train); no release tag has been dispatched.

@drewstone

Copy link
Copy Markdown
Contributor Author

Exact failed CI readback at 6dc4f3a: 4,015 pass / 1 fail / 6 skip. Failure is supervise-convenience.test.ts:310, uses a child-specific completion check when a managed child submits its own result: expected winner, got no-winner. Please reconcile its expected parent contract with your intended behavior; root will not edit your active surface. Separate packed-cohort failure is inherited main Knowledge 17.0.1 vs required 17.0.2 and is already corrected in #1254 head902daf0f; generic regression follows in #1251.

… the parent

The convenience suite still asserted the contract this branch replaces: a
managed child whose narrower check passed was promoted to the run's winner even
though the run-wide check rejected its output. Under this branch the parent
contract is checked against the finalizer's candidate, so with no continuation
configured that run settles no-winner. The assertion the test exists for, that
the child's own check is the one consulted and it is consulted once, stands.

Red on this branch before the change; 48 pass after.
@drewstone
drewstone merged commit 449fd3b into main Sep 16, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant