Repository navigation
Repair durable future wake scheduling and self-service controls - #361
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.
Native future wake registration saved qualified clock anchors but left due-time display empty and reported unavailable scheduling time. An unmonitored shared lifecycle root and missing control grants left a24-hour request retained without an active schedule.
This change projects original due/expiry dates without rebasing intent, distinguishes retention from durable-loop ownership, recovers pending timer state through no-dispatch native reconciliation, and exposes due/expiry through agent inventory. An optional private version2 host configuration gives attested native sessions list/cancel access to their own integrity-qualified wakes; peers, forged callers and root-wide actions remain denied. Existing explicit grants retain precedence.
Tracked repair: #360. Existing authority: HF-13 approved spec and HF-20 occurrence boundaries; plan0176. No new recurrence engine or changed catch-up/overlap defaults. Native scheduling already accepts delays beyond24hours; TTL follows due time.
Validation: public red/green cases cover24hours and3650days, late monitor arrival with one retained identity, pending timer recovery without submission, exact-scope inspection/cancel and self-service peer isolation. Affected60 tests pass; pinned Ruff, policy wiring and diff checks pass. Full CI required.
Live host repair so far: existing SoyLei intent retains its original key/prompt/target/policy/attempt count, due2026-10-27T01:21:37.949431Z and expiry24hours later. Lifecycle root now has a compatible supervisor loop. The only unrelated pending wake was independently proven expired; it is now retained failed with zero attempts, not revived. No business review, external provider inference, block mutation or native-server restart occurred. Current native daemon refuses selected-thread MCP reload; resident connection refresh remains a separate verification boundary.
Need help on this PR? Tag
@codesmith-botwith what you need.