Release: develop -> main - #1466
Merged
Merged
Conversation
…ter (#1457) * feat(support): send a reply with Cmd/Ctrl+Enter instead of a plain Enter A plain Enter sent the message in the DFX and the RealUnit ticket composer, so a reply left the moment a clerk hit Enter for a new line while still writing. Enter now only adds a line; the message is sent with Cmd+Enter (macOS) or Ctrl+Enter, or via the Send button as before. The composer hint and the full-stack spec reference the new shortcut. * fix(support): ignore Cmd/Ctrl+Enter while a send is in flight The Send button is disabled during isSending, but the keyboard path called handleSendMessage without a guard, so key-repeat could post duplicate staff replies. Block re-entry with isSending and a sync ref on both ticket screens. * fix(support): do not send on Shift, key-repeat, or IME composition Cmd/Ctrl+Enter still sends. Shift+Enter stays a newline, a held key must not re-fire after a failed send, and an in-progress IME composition is not treated as a send shortcut. * test(support): send the second staff reply with Cmd+Enter in e2e-stack Keep the Send-button path, then assert plain Enter does not persist a row and Meta+Enter does. * test(handbook): add darwin baseline for the RealUnit issue composer with send shortcut * test(handbook): include the message composer in the RealUnit issue baseline * 01a07c9e - Clear sendInFlight on ticket change and ignore Alt+Enter A hanging send on the previous ticket must not block the next. AltGraph must not trigger Cmd/Ctrl+Enter. --------- Co-authored-by: TaprootFreakAI <315477232+TaprootFreakAI@users.noreply.github.com>
* feat(support): file an internal customer note from a ticket When a customer writes something worth keeping, a clerk had to leave the ticket, open the notes area and retype it. The "Update Issue" row now has a "Kundennotiz" column: "Notiz hinzufügen" opens the existing note composer bound to the customer, with the ticket as subject; the saved note lands in the notes area and the customer's Notes tab, never in the thread. The note draft is owned by the screen (like the reply text), so it survives the reload after Update and is dropped on save or cancel. NoteComposer gains initialSubject and a controlled content mode, blocks content above the API limit of 8000 characters, and loses two submit guards the disabled button already enforced. New tests cover the composer and the panel. * fix(support): isolate the ticket note draft and block cancel in flight Clear the Kundennotiz draft when the ticket id changes so a leftover text cannot be saved against the next customer. Disable Abbrechen while createSupportNote is still running so a completed request cannot mark saved or wipe a newly opened draft. * fix(support): ignore a finished note create after unmount Render the note panel only when the loaded issue matches the route id. After createSupportNote, skip parent callbacks if the composer unmounted. * fix(support): block double note submit and always clear the screen draft A second click before re-render cannot start two creates. onCreated still runs after unmount so a finished save cannot leave the draft ready to file twice. * test(handbook): add a darwin baseline for the staff ticket customer-note panel * docs(handbook): title the ticket-note baseline and declare the issue-payload fake * 01a07c9e - Ignore a note create that finishes after a ticket switch Clearing the draft is skipped when the screen has already moved on. * 01a07c9e - Do not fire onCreated after the note composer unmounts A create that finishes after a ticket round-trip must not wipe the new draft. * 01a07c9e - Keep onCreated after unmount, ignore it after a ticket change A same-ticket reload spinner still clears the draft. A create that finishes after A→B→A cannot wipe the new draft. --------- Co-authored-by: TaprootFreakAI <315477232+TaprootFreakAI@users.noreply.github.com>
github-actions
Bot
requested review from
TaprootFreak and
davidleomay
as code owners
September 8, 2026 07:59
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.
Automatic Release PR
This PR was automatically created after changes were pushed to develop.
Commits: 1 new commit(s)
Checklist