feat(conversations): unify native session continuation - #939
Open
Neonforge98 wants to merge 4 commits into
Open
Conversation
Route Team Chat and Work Item human mentions through one frontend audience policy, and keep Rust execution classification in parity through shared contract cases. Human and @ALL Work Item audiences no longer fall through to assigned Agent execution; explicit Agent targets still win mixed audiences, and human threads remain human.
Neonforge98
force-pushed
the
codex/audience-routing
branch
from
August 26, 2026 01:01
98d0821 to
f1420a5
Compare
This was referenced Aug 26, 2026
Neonforge98
force-pushed
the
codex/audience-routing
branch
from
August 26, 2026 01:14
f1420a5 to
60fb115
Compare
Neonforge98
force-pushed
the
codex/audience-routing
branch
from
August 26, 2026 03:58
60fb115 to
2ad6f12
Compare
Neonforge98
marked this pull request as draft
August 26, 2026 08:37
Neonforge98
marked this pull request as ready for review
August 26, 2026 10:08
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.
Problem
Team Chat and Work Item comments did not share one audience policy, so a human-directed Work Item comment could accidentally fall through to the assigned Agent. Shared and imported conversations also used source-specific continuation paths, including prompt-rendered history, which could collapse roles, tool pairing, and the target provider's native resume semantics.
The required invariant is strict: any registered imported or Team/My Session transcript may be a source, but a target is selectable only when ORG2 can write the full canonical user/assistant/tool transcript into that provider's native store, read it back through the app's authoritative reader, and resume the exact native session id. Cloud is the collaboration plane, never an Agent host.
Solution
@human/@allroutes human notifications,@Agentroutes an explicit Agent, and ordinary Work Item comments retain assigned-Agent semantics.SessionEventtimeline, a stable conversation locator, and a local execution target; Work Item and Cloud concepts do not enter the core.agent_messagespersistence.session_meta,turn_context, model-facingresponse_item, and UI-facingevent_msgrecords.thread/resumetothread/start.parentSessionIdas the durable execution-episode ledger. There is no continuation database, checkpoint, encrypted duplicate transcript, Cloud runner, or remote key handoff.Product and security semantics
Verification
pnpm test -- --no-cache— 1,254 files / 9,917 tests passed.pnpm typecheckandpnpm lint— passed.cargo checkandcargo fmt --all -- --check— passed.cargo clippy --workspace --all-targets -- -D warnings— passed.cargo test— 1,149 library tests passed, 1 authenticated real-Codex smoke test ignored; all integration and doc-test groups passed/ignored as declared.cargo test --workspace --no-fail-fast— every non-network target passed. The managed sandbox denied ephemeral loopback binds in four targets; rerunning those targets with local loopback enabled passed. A final isolatedagent_corererun passed 3,212 tests with 2 declared ignores and 0 failures.agent_core,org2).git diff --checkand staged secret/personal-path scan passed; dependency folders were not staged.sdeagent-9f8cf8b6-5e25-4ce2-a122-56750c76555dsdeagent-7b38c9a2-b975-4b3f-9f39-d0e387ce8e38Omnigent comparison
Audited against
xhluca/session-migrate/ Omnigent commit658fb8bd4d383ff705a4eb9229c0ba3525a1b8f4.PREAMBLE; ORG2 intentionally does not claim those targets because that violates the native role/tool invariant.Architecture audit
docs/architecture-audit-2026-08-26/ProviderNativeConversationContinuation.mdrecords the capability matrix, reuse/synchronization semantics, removed duplication, failure behavior, and Omnigent comparison.