@OpenGradient #OPG
I had already moved past streaming bit on OpenGradient Chat once.
Then I went back.
last chunk kept bothering me.
That's usually a bad sign.
nice version is easy. OpenGradient Chat starts answering. Tokens show up. OHTTP relay can't read them. Chunked OHTTP keeps each SSE frame sealed on the way through. Useful. Looks settled.
Too settled, maybe
Say somebody is using OpenGradient Chat on a contract note. Risk memo. Customer reply. Doesn't matter.First lines start landing.answer already looks actionable.Human reads fast.Copies faster.Sends it on. Starts moving on it before the stream has actually closed.
Thats the split.
One OpenGradient Chat stream up front.Opaque SSE frames through OHTTP relay. Client-side close still missing.
OpenGradient can stream the answer back privately. Fine. Each sealed chunk lands. Fine. Relay path just forwards opaque frames. Fine.
not same as finished.
Because answer can already be actionable while final sealed close still hasn't landed. Before close.or client-side signal that stream actually ended way it was supposed to. and didn't get cut short halfway through.
I don't think people respect how weird that gets.
I've seen that timing mistake before.Not this exact stack. Same bad habit though.
One OpenGradient answer.Already actionable. Not fully closed.
Sealed chunks up front. Client-side close behind.That gap is problem.
I can already see desk version. Someone reads enough from OpenGradient Chat stream and stops waiting. Copies answer out of the SSE frames.Drops it into memo.Sends reply.
Whatever.
Later final sealed close lands.Or doesn't? Maybe truncation gets caught on the client.Great.OpenGradient run is still catching up to something user already treated like finished.
Lovely.
what exactly was wait for there?
answer?
Or part that proves answer actually finished?
once OpenGradient answer is actionable before client-side close lands,boundary already failed where it mattered.
I keep getting stuck there.
Private,yes. Finished? not automatically.
Closed though?