feat: plumb provider_id through message_created for replay#155
Open
feat: plumb provider_id through message_created for replay#155
Conversation
Add provider_id to MessageCreatedPayload so assistant messages carry their provider identity in both the live streaming and session replay paths. During replay, the dispatcher reads the route-level provider_id (passed from the frontend's stored session metadata via load_session). Changes: - payloads.rs: add provider_id field - writer.rs: include provider_id in live event - dispatcher.rs: include route provider_id in replay event - session_ops/manager: thread provider_id through load_session - acp command: accept provider_id from frontend - useAcpStream.ts: read providerId from event payload - messages.ts: add providerId to MessageMetadata type
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
provider_idto theacp:message_createdevent payload so assistant messages carry their provider identity during both live streaming and session replayprovider_id(passed from the frontend's stored session metadata viaload_session)useAcpStreamreadsproviderIdfrom the event payload and stamps it on message metadata, enabling correct provider icon/name display for historical messagesDepends on
Requires block/goose PR —
morganm/per-message-provider-idbranch that persistsprovider_idinMessageMetadataon each assistant message.Files changed
Tauri (Rust):
payloads.rs— addprovider_idfield toMessageCreatedPayloadwriter.rs— includeprovider_idin live streaming eventdispatcher.rs— include routeprovider_idin replay eventsession_ops.rs/manager.rs/command_dispatch.rs— threadprovider_idthroughload_sessioncommands/acp.rs— acceptprovider_idfrom frontendFrontend (TypeScript):
useAcpStream.ts— readproviderIdfrom event payloadmessages.ts— addproviderIdtoMessageMetadatatypeacp.ts— passproviderIdinacpLoadSessionAppShell.tsx— pass sessionproviderIdwhen loadingTest plan
providerIdfrom the event