test: gate st2 against bounded PTY fleet observation - #84
Merged
Conversation
schickling-assistant
added a commit
that referenced
this pull request
Jul 30, 2026
PR #78 promoted a consumer timeout into a fleet-scalability contract. Restore the two-second outer bound and remove its synthetic fixed-sleep proof while retaining the portable hung-process fixture. Fleet behavior is proved against the packaged runtime in PR #84. Pure exact-ID observation remains the R19 architecture rather than a larger global-census timeout. agent-session-id: dev3.dotfiles-cos-misc-agent-runtime-simplification agent-tool: Codex agent-tool-version: 0.145.0 agent-model: gpt-5.6-sol agent-runtime-profile: /home/schickling/.config/coding-agents/profile.json agent-skills-manifest: /nix/store/nk9iml2841l1yjjg0f6f0d3y60zkg1nn-agent-skills-corpus/share/agent-skills/manifest.json tooling-profile: dotfiles@4a0515f
agent-session-id: dev3.dotfiles-cos-misc-agent-runtime-simplification agent-tool: Codex agent-tool-version: 0.145.0 agent-model: gpt-5.6-sol agent-runtime-profile: /home/schickling/.config/coding-agents/profile.json agent-skills-manifest: /nix/store/nk9iml2841l1yjjg0f6f0d3y60zkg1nn-agent-skills-corpus/share/agent-skills/manifest.json tooling-profile: dotfiles@4a0515f
agent-session-id: dev3.dotfiles-cos-misc-agent-runtime-simplification agent-tool: Codex agent-tool-version: 0.145.0 agent-model: gpt-5.6-sol agent-runtime-profile: /home/schickling/.config/coding-agents/profile.json agent-skills-manifest: /nix/store/nk9iml2841l1yjjg0f6f0d3y60zkg1nn-agent-skills-corpus/share/agent-skills/manifest.json tooling-profile: dotfiles@4a0515f
schickling-assistant
force-pushed
the
schickling-assistant/2026-07-30-pty-fleet-contract
branch
from
July 30, 2026 12:57
45aaa26 to
fc95806
Compare
agent-session-id: dev3.dotfiles-cos-misc-agent-runtime-simplification agent-tool: Codex agent-tool-version: 0.145.0 agent-model: gpt-5.6-sol agent-runtime-profile: /home/schickling/.config/coding-agents/profile.json agent-skills-manifest: /nix/store/nk9iml2841l1yjjg0f6f0d3y60zkg1nn-agent-skills-corpus/share/agent-skills/manifest.json tooling-profile: dotfiles@4a0515f
agent-session-id: dev3.dotfiles-cos-misc-agent-runtime-simplification agent-tool: Codex agent-tool-version: 0.145.0 agent-model: gpt-5.6-sol agent-runtime-profile: /home/schickling/.config/coding-agents/profile.json agent-skills-manifest: /nix/store/nk9iml2841l1yjjg0f6f0d3y60zkg1nn-agent-skills-corpus/share/agent-skills/manifest.json tooling-profile: dotfiles@4a0515f
myobie
requested changes
Jul 30, 2026
myobie
left a comment
Contributor
There was a problem hiding this comment.
The producer/consumer observation proof is useful and the test shape is sound, but two corrections are required before approval:
- Narrow the flake wording from broad “runtime compatibility” / “coherent lifecycle baseline” to the exact contract this proves: packaged PTY fleet-observation compatibility. st2 issue #30 documents a still-open packaged restart-environment incompatibility, so this pin cannot honestly stand for full st2↔PTY runtime compatibility.
- Replace the newly introduced
seatterminology (500-seat, variable name, and fixture prefix) withsessionterminology. These are PTY sessions, and st2’s accepted ontology models agents rather than seats.
No objection to the evidence architecture once those scope/terminology corrections are made.
myobie
approved these changes
Jul 30, 2026
myobie
left a comment
Contributor
There was a problem hiding this comment.
Approved at exact head e1e0666. Both requested corrections are complete: the pin is scoped to packaged fleet observation rather than broad runtime compatibility, and all newly introduced PTY fixtures use session terminology. The producer/consumer proof, atomic malformed-snapshot refusal, fleet-size budget matrix, focused/full checks, and hosted Nix gate are green.
25 tasks
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.
Summary
st2 -> ptyfleet-observation contract for 0/75/100/500 sessionsThis is the producer/consumer evidence replacement for the synthetic fixed-sleep fixture in #78. Its scope is deliberately limited to the exact packaged
pty list --jsonproducer and the fleet-observation behavior exercised here; it does not claim the broader runtime lifecycle contract tracked in #30. It also does not increase the timeout or ratify full-registry census as the final architecture. The follow-up architecture is pure exact-ID observation on reconciliation paths, with whole-root snapshots reserved for explicit audit/eval cleanup.Verification at
e1e06669665f8746cb767960ebbb0632770fcf1bnix flake check --print-build-logs: PASScargo test --test atomic_pty_snapshot -- --test-threads=1: PASS (1/1)cargo test --workspace --all-targets -- --test-threads=1: PASScargo clippy --workspace --all-targets -- -D warnings: PASScargo doc --workspace --no-deps: PASS (five unchanged pre-existing warnings)git diff --check origin/main: PASSReview corrections
seatfixture names/comments withsessionterminologyNamed follow-up
Export the PTY producer fault contract as a stable public flake check or test entrypoint. The current hermetic compatibility gate intentionally executes the exact pinned package, but reaches its private
lib/pty/node_modules/vitestlayout until PTY publishes that seam.No live catalog, service, or PTY state was used.