Repository navigation
Share Von's draft editor and controls with Messaging - #731
Merged
Merged
Conversation
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.
Merge decision: ready — Messaging replies and new messages gain Von's concept search, cartouche editor, dictation and responsive controls through shared components, with direct-message delivery and recovery preserved.
User outcome
Typing
#V#in a Messaging draft now searches concepts just as it does in Von. Selecting a result consumes Enter without sending; outgoing content and recipient IDs are normalised. Both carriers share draft sizing, keyboard behaviour, history navigation, button presentation and compact control layout. Messaging now uses Von's dictation controller, including finish-before-send and cancellation/retry.Native task:
#V#task_agent_e66f011c7879660657ca91c35367c389.Material changes
Extract the common editor and controls, retaining carrier-specific delivery, attachments and recovery. Fix a focus-switch race where an older autocomplete blur timer closed the newly focused field's search. Restored drafts update their overlays without replacing persisted delivery keys.
Evidence
messageComposer.cjsandmessageReplyContext.cjspass at 1280px and 390px. Concept selection, normalised sends, recipient preservation and both draft surfaces exercised.composerControls.cjspasses six desktop/mobile/touch viewport profiles.git diff --checkpasses..run/composer-evidence/.Ship boundary
Tier 1: accidental submission during concept selection, changed recipient/scope, lost recovery drafts or inaccessible composer controls would block shipping. The targeted checks pass. Browser APIs and audio lifecycle tests use fixtures; no claim of live recipient delivery, public authentication or audio-provider availability.
Von-specific model selection, steering, reset and conversational voice replies retain their AI execution semantics. This change does not turn direct messages into Von execution sessions. No deployment requested by the assignment.