Streaming responses you can stop, continue, regenerate and edit
A conversation is not a slot machine. When an answer starts going the wrong way you should be able to stop it, when it stops short you should be able to continue it, and when your question was the problem you should be able to fix the question.
How responses are rendered
Responses stream in as they arrive and render a focused Markdown subset, chosen so that the formatting models actually use comes out right rather than trying to cover every extension.
| Element | Notes |
|---|---|
| Headings | Levels 1 through 3 |
| Paragraphs, bold, italic | Standard emphasis |
| Inline code | Monospaced, inline with the text |
| Fenced code blocks | With language labels, horizontally scrollable and selectable |
| Ordered and unordered lists | Nested content renders as written |
| Block quotes | Standard quoting |
| Pipe tables | GitHub-style, selectable cells, horizontal scrolling |
This is deliberately a subset, not full CommonMark. Embedded HTML is not rendered, and GitHub extensions beyond pipe tables are not implemented. PDF export follows the same subset, so what you see is what you get on paper.
All response text is selectable. Code blocks and wide tables scroll horizontally inside themselves rather than stretching the window. On a wide window the conversation stays in a centred reading column instead of running edge to edge, because a 1,600 pixel line of prose is unreadable no matter how much screen you have.
Copying
Every copy action confirms itself: its icon and tooltip change briefly, so you are not left guessing whether the click registered. If another app is holding the clipboard, it shows a warning instead.
- Copy a response
- Copy carries the answer's headings, bold, lists, tables and code into apps that accept formatted text, such as Word or Outlook, and pastes as clean text everywhere else. The app you paste into decides which it uses.
- Copy as Markdown
- The arrow beside Copy offers the response exactly as it was written, Markdown included.
- Copy your own message
- A message you wrote copies exactly as you typed it, as plain text.
- Copy just the code
- A fenced code block's own copy action copies the code exactly as written, without the prose around it.
- Copy a table
- A table's own copy action copies its rows and columns, ready to paste into Excel or Word.
Keep an answer, or send it back
Save as Active Note, under a response, keeps it, or the part of it you selected, as an editable note on your PC. An answer to selected text can also go back into the editor it came from, with Replace selection or Insert after.
Controlling a response in flight and after
- StopThe send button becomes a stop button while a request is running. Stopping keeps what has arrived so far as a partial response rather than discarding it.
- ContinueA partial response can be continued, picking up from where it stopped. The join preserves line breaks and indentation, so lists, table rows and code do not get flattened at the seam.
- RetryIf a request ends before any answer arrives, for example after a connection failure, timeout, stalled stream or empty reply, Retry sends that same request again. It remains available after switching conversations or restarting SideNote Pro.
- RegenerateThe latest assistant response can be regenerated. The same question, another attempt, which is often the fastest fix when an answer is merely unlucky rather than wrong.
- Edit and resendYou can edit and resend one of your messages. Later messages in that branch are replaced, after a confirmation, so the thread stays coherent rather than accumulating contradictory turns.
If an answer misses because your question left something out, edit the original message and resend it. That can cost fewer tokens than working through several correction turns, and it keeps the thread shorter for the context window.
When the network misbehaves
A provider gets up to two minutes to start responding. Once a streamed answer has begun, a separate five-minute idle limit ends it only if nothing further arrives; an answer that keeps streaming is not cut off just because it is long. A stalled request ends cleanly and offers Retry instead of leaving Generating… on screen indefinitely.
Transient network failures, genuine HTTP 429 rate limits and server-side 5xx responses are retried up to three total attempts with short incremental delays. Billing failures are different: when the provider reports that the API account has no credit or has reached its billing limit, SideNote Pro says so and does not waste retries treating it as traffic throttling.
Provider errors are translated into readable messages rather than raw exception text, including errors that arrive after a stream has already started. Rejected credentials, account credit, rate limits, invalid requests, timeouts, stalled streams, empty replies and unreachable endpoints each have their own outcome. An error is never saved as an empty assistant answer and fed back to the model on the next turn. See troubleshooting when the message is not enough.