Skip to content

[FLO-13.2b] Exercise bounded provider lifecycle and protocol outcomes - #48

Merged
szmyty merged 2 commits into
mainfrom
feat/45-hermetic-provider-lifecycle
Sep 23, 2026
Merged

szmyty merged 2 commits into
mainfrom
feat/45-hermetic-provider-lifecycle

Conversation

@szmyty

@szmyty szmyty commented Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

Parent: #29
Depends on #47 (merged as 9ac6a7a47e0544c0711fe7ad9caab32dd6720ca8)
Closes #45
Next checkpoint: #46

Summary

  • extend the immutable hermetic provider fixture with a closed lifecycle/protocol behavior vocabulary
  • cover unavailable/incompatible prelaunch resolution, warning and partial results, nonzero exit, timeout/cancellation, both stream overflows, invalid event/result evidence, and authoritative host rejection
  • preserve the checkpoint-1 success path while documenting exact ownership boundaries and typed outcomes

Evidence

  • exact typed errors and promotion boundaries are asserted for every case
  • stdout/stderr retention is bounded to the configured limit plus one sentinel byte
  • cancellation uses an atomically published readiness record; timeout and cancellation prove direct-child reaping on Unix
  • all invoked lifecycle cases pin forbidden fallback, re-observe execution subjects, and preserve immutable input/binding bytes
  • two independent post-implementation reviews found no remaining blocker

Validation

  • Rust 1.85: formatting, clippy with warnings denied, all targets, doc tests, focused provider/kit tests
  • stable Rust: formatting, clippy with warnings denied, all targets, doc tests
  • all three runnable examples
  • cargo package --locked --allow-dirty
  • contract, scenario-source, specification, skill, and agent validators
  • git diff --check

Scope boundary

This checkpoint does not add physical artifact adversaries, post-success host artifact-observation cases, graph fixtures, real holon algorithms, sandbox or descendant-containment claims, durable retry/resume, or the final parent requirement matrix. Those remain with #46 or later work.

Integration status

Retargeted to main after #47 merged. Head 028deddbc26c0f8d228fe2d2dbb87b8d18887049 integrates current main without changing the checkpoint implementation. Fresh CI run 35854026666 passed repository validators, Rust 1.85, stable Rust, tests, documentation, examples, and package verification.

@szmyty
szmyty marked this pull request as ready for review September 23, 2026 11:23
@szmyty
szmyty merged commit 19d3ccf into main Sep 23, 2026
3 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.

[FLO-13.2b] Exercise bounded provider lifecycle and protocol outcomes

1 participant