mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-10-28 16:52:22 +01:00
Preserve completion gating and handle explicit idle stream status safely
This commit is contained in:
@@ -309,11 +309,6 @@ def with_completion_gate(func):
|
|||||||
has_final = False
|
has_final = False
|
||||||
answer += str(data.get('delta') or '')
|
answer += str(data.get('delta') or '')
|
||||||
answer_events.append(data)
|
answer_events.append(data)
|
||||||
if data.get('thinking') is True and 'delta' in data:
|
|
||||||
# Stream reasoning deltas live; only the answer
|
|
||||||
# prose is held for the terminal evidence review.
|
|
||||||
streamed_answer_events.add(id(data))
|
|
||||||
yield _event(data)
|
|
||||||
continue
|
continue
|
||||||
yield chunk
|
yield chunk
|
||||||
if provider_error and not answer_events and not metrics_events:
|
if provider_error and not answer_events and not metrics_events:
|
||||||
|
|||||||
+6
-1
@@ -6149,7 +6149,12 @@ import { invalidateSettings } from './appConfig.js';
|
|||||||
cache: 'no-store',
|
cache: 'no-store',
|
||||||
});
|
});
|
||||||
if (!_getForegroundStreamState() || _backgroundStreams.has(sid)) return;
|
if (!_getForegroundStreamState() || _backgroundStreams.has(sid)) return;
|
||||||
if (res.status !== 404) return;
|
if (res.status !== 404 && !res.ok) return;
|
||||||
|
let _probe = null;
|
||||||
|
try { _probe = await res.json(); } catch (_) { /* An invalid response is not an idle stream. */ }
|
||||||
|
const _noActiveStream = res.status === 404 || (res.ok && _probe &&
|
||||||
|
typeof _probe.status === 'string' && _probe.status !== 'streaming');
|
||||||
|
if (!_noActiveStream) return;
|
||||||
|
|
||||||
console.warn('[stream-watchdog] Local stream was stale and server has no active stream. Unlocking composer.');
|
console.warn('[stream-watchdog] Local stream was stale and server has no active stream. Unlocking composer.');
|
||||||
if (active.abortCtrl && !active.abortCtrl.signal.aborted) {
|
if (active.abortCtrl && !active.abortCtrl.signal.aborted) {
|
||||||
|
|||||||
Reference in New Issue
Block a user