feat(sdk): prove negotiated daemon session capabilities - #18
Conversation
|
Corrected the PR base from mirror-only |
Candidate
|
Ninth frozen exact candidate (local replacement after hosted fixture failure)Candidate
The fixture now supplies one stable generation for its single non-reconnecting fake transport and returns the exact attach/reattach request's client ID and capabilities. It does not add a production fallback or claim an optional server capability. Renewed validation:
Two independent pre-freeze reviews approved the exact repair bytes with no P0/P1/P2. Fresh exact-head API, security/resource, and test/reproduction reviews are running. The replacement remains local and unpushed until all three approve. |
Replacement exact-head review gate passedThe clean hosted-CI repair candidate has unanimous exact-head approval:
API/contract, security/resource, and exact test/reproduction reviews all APPROVE with no P0/P1; the exact test review also found no P2. Production source bytes remain identical to the previously approved candidate. The branch may be updated for a new trusted hosted run; merge remains gated on every required check passing the new exact SHA. |
Exact-SHA hosted gate passedTrusted hosted CI run Final pre-merge verification:
All candidate, review, and hosted gates are satisfied. Squash merge is appropriate so retired intermediate candidates do not enter product history; the merged tree must equal |
Merged artifact approved for downstream consumersPrime #17 merged as Reproducible public artifact:
Both independent artifact reviewers approved with no P0/P1/P2. Two additional repacks reproduced all four package hashes exactly. The isolated install matches the public archive 1,436/1,436 files and exports the frozen This artifact is the pinned input for pylon-code/pylon#190. It supersedes the earlier |
Summary
Adds a generation-scoped, post-attach negotiated capability proof for strict native-daemon consumers.
negotiated_daemon_session_capabilities_v1;DaemonAgentConnection.supportsNegotiatedCapability(...);serverCapabilities/supportsCorrelatedPromptLifecycle()) separate from negotiated proof;DaemonClient.close()state and close notification needed by bounded recovery.Snapshot and lifecycle safety
Compatibility and governance
Exact candidate and review
c27e1b6ea329aabe19ec70f768bcbf37c79a6bef45af0b9ce0199c3be5bffdde9c787eec06f82dd87238ac8cff25962ada9ffe4530b7d4d1cddc1b47f90ba348f023e64394526f4b72856201c842630c19a3073d12889a007628ed89120f4d048a0cfbc56b5ac2ddfd676b5425723966fec8fb5b50cd624de16f946a9980023b70a6d70bf146bd077dcbe97209819a20443df05f0f032de1015b14baThree independent exact-head reviews approved the unchanged commit with no P0/P1 findings: API/contract, security/resource, and test/reproduction.
Validation
npm run check, commit hook, YAML parse, and cumulative diff check: passed;Known inherited follow-up
Aggregate storage inside one exact active snapshot request (candidate IDs, assemblies, and chunk maps) remains governed by inherited behavior rather than a new global cap in this PR. Strict consumers continue to block arbitrary saved-session attach pending a separate cumulative snapshot budget. An unrelated shared-client traffic availability hardening item is also recorded as nonblocking; retained queues remain bounded.
Closes #17.
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.