Skip to content

Integrate submission and shared-session lifetimes on shipped UI - #1403

Closed
trissim wants to merge 24 commits into
mainfrom
batch/submission-ui-nov1
Closed

trissim wants to merge 24 commits into
mainfrom
batch/submission-ui-nov1

Conversation

@trissim

@trissim trissim commented Nov 2, 2026 •

Copy link
Copy Markdown

Integrate submission/session lifetime on shipped UI:67files,+2550/-1706

Explicit continuation of#1389/ec73e7a3aed4a6b6de2c5bbde4dd43d40018a5f2 on shipped main5a52b484, retaining sidebar/export/scroll/receipt-height/header fixes. Integration head91654011b059835c212fe51d1145d6293cde4459 carries9c3d999c's recipient/publication/session-isolation correction and preserves original commit provenance. The initial-prompt rebase conflict preserves main's sidebar identity/visibility/retirement assertions and explicit SessionViewState reset. Upstream queued-editor intent is not duplicated.

Lifetime and owner changes

Before: input selection, async submission, ACK and per-session process retirement were distributed across conversation handlers, controller and widget paths. After: ConversationSubmissions/InputSubmission own preparation, worker/send, revalidation, ACK, history and settlement. Native/CLI/channel routes bind through declared capabilities. CoordinationAttachment retains shared process attachment lifecycle: detaching one session must leave the shared ACP child and other session usable. Superseded conversation_comms_handlers.py is deleted (188lines); behavior moves to its actual owners, not a compatibility shim. Full original#1389 body retains mechanism-level history and source/data checks.

Coupled API

Core#3848 continuation branch batch/submission-core-nov1 accepts the captured ThreadIncarnation, not a thread name/bool overload. Both halves must land/install together; no independent merge of this API change. Its affected Core run found a real transcript session/thread identity failure, now with the continuing author. This is unfinished acceptance, not green delivery.

Current owner corrections

Snapshot publication retains the captured session/surface object identities around awaits, validates the actual ACP destination separately from canonical history, and keeps root/incarnation fences. Message publication is admitted into the existing PreparationRuntime thread lifetime before waiting; the original task/Message can settle UNKNOWN after waiter cancellation and remains fenced by application close. Request-local session-close refusal no longer cancels the shared runner; actual transport retirement stays with communicate/run. New real-SQLite held-writer/open-view/app-close and refused-shared-peer controls are authored.

Affected three-path selection is launched at91654011b with paired Core156ba49f2 under the integration lease/INT300; no Toad result yet. Core's8-case affected selection has7passes/1fixture-producer failure before replay, assigned to Errors; logs core156-tests.log/.rc. No installation of either API half or final native acceptance is claimed.

Required application acceptance

Necessary exact integrated checks still include failed send/draft, stale route/source revalidation, queue/coalescing, cancellation/close/fork/image ACK, document/undo/read position, initial handoff and saved-session title/load. Include four model/test_agent_process_retirement.py shared-child cases. On a real stall retain session and renderer await chains before teardown. No uncertain input or prior failed prompt is replayed.

No physical frame-time, phone, original-history-root or final memory claim is made. Production export/native/receipt/scroll relief must survive, but its independent installations do not wait on this PR. Assumed: original source/data proof is not newly integrated app or provider evidence; required suites and actual result remain to be recorded.

Copilot AI balanced review requested due to automatic review settings November 2, 2026 04:05

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

Keep actual SDK completion, failed reply and unconfirmed transport distinct on captured requests. Share confirmed settlement through SendState, use InputDecision for native admission, and delete nullable turn/compaction recovery. Correct real-worker, settings and held-resource controls; no unit pytest or UI run. NRA map1349 modules plus11-module extension;641 compile and SDK/MRO/five fresh imports pass.
@trissim
trissim force-pushed the batch/submission-ui-nov1 branch from ca3eaa8 to 9165401 Compare November 2, 2026 04:57

trissim commented Nov 2, 2026

Copy link
Copy Markdown
Author

Closed in Tristan's board clear (2026-11-02): an integration carrier superseded by #1389 (submission sources), with the queue UX landed in #1417. The branch is kept.


Generated by Claude Code

@trissim trissim closed this Nov 2, 2026
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.

2 participants