Five days rebuilding the Thor voice loop: a 1.37-second median and the gates still open

Updated 5 September 2026prototypeBy Catalin Adelin Iovan Raducu

Since J-011, Evopien has moved from separate realtime components to a physically exercised Thor speech path, frozen a Core-owned conversation lifecycle, re-architected the Qwen history path so the old cache cliff did not recur in the 100-prompt text-only test or short eight-response physical run, and reduced median speech-end-to-first-PCM latency to 1.3705 seconds.

PROGRESS UPDATEJ-013 records the newer bilingual voice freeze, continuous perception, current-image grounding, recent-video tests and the latest 15-second visual-context candidate. This article preserves the September 2 results.
Completed
ConversationLedger now owns spoken-only history, WAIT/CONTINUE/STOP and generation leases; Smart Turn overlaps Cohere transcription; a derived open-session memory index is separated from a bounded cache-stable Qwen working set; and one natural Qwen stream now feeds locally framed Scylla speech through a single playback owner. A 100,000-turn synthetic-history text-only qualification held later Qwen TTFT at 244.3 ms P50, and the latest physical run held Qwen TTFT near 212 ms P50.
Known limit
The 1.3705-second result is a median from detected speech end to first generated PCM, not an independently measured acoustic hearing timestamp. P95 was 1.7971 seconds and failed the ≤1.3-second gate; only eight Qwen turns were measured, false-barge cleanup and temporary generated residue remained open, and the paired bilingual natural-duplex exit corpus has not passed.
Record type
Thor engineering checkpoint
See the current development state

THOR RECORD / J-012 / 02 SEPTEMBER 2026

The voice path now runs end to end. The acceptance gate still does not pass.

J-011 ended with separate realtime components and an integration plan. Five days later, the latest physically exercised Thor path reaches from the XVF3800 microphone through turn formation, transcript admission, Core-owned conversation state, Qwen3.8, Scylla speech, and one physical playback owner.

In the latest eight-response run, median detected speech-end to first generated PCM was 1.3705 seconds. That is a material improvement from the roughly 2.2–2.6-second fresh response range at the 31 August CP01 freeze, but it is not a reliability result and it is not the same as an independently measured acoustic hearing timestamp.

Latest physical checkpoint

What the 1.37-second result actually measures.

These statistics come from the physical CP09-I run at commit 64df168f4a8711a07def4f598e91f30f35f9e46b. Different metrics have different sample sets and should not be added as if they were one deterministic trace.

Speech end → first PCM · P50
1.3705 sEight physical responses
Speech end → first PCM · P95
1.7971 sFails the ≤1.3 s gate
Qwen TTFT · P50
211.8 msLocal Qwen3.8 / SGLang
Later-turn TTFT · P50
212.5 msNo old cache cliff in this run
Hard commit · P50
499.3 msEleven turn decisions
First token → speech unit · P50
399.8 msLocal safe-phrase framing
  1. 01
    End the turnHard commit P50 · 499.3 ms
  2. 02
    Start cognitionQwen TTFT P50 · 211.8 ms
  3. 03
    Form safe speechPost-token P50 · 399.8 ms
  4. 04
    Synthesize PCMScylla examples · about 0.28–0.38 s

Short, naturally complete replies reached about 1.02–1.19 seconds. Normal and longer replies commonly remained around 1.5–1.8 seconds because useful phrase formation and speech onset—not Qwen's first token alone—now dominate the variable part of the path.

29 August → 2 September

Five days of controlled integration, failure, and simplification.

The result did not come from one model swap. Each checkpoint isolated a different failure layer and retained the useful evidence even when the candidate was rejected.

CheckpointResultWhat changed
29 Aug · first physical integrationExercised

Persistent recognition, a duplex latency harness, turn/playback reliability repairs, and startup-health checks turned the modular plan into a measurable physical path.

30–31 Aug · R9 / CP01Frozen

ConversationLedger took canonical ownership of spoken history, generation leases, WAIT, CONTINUE, STOP, stale output, and generated-but-unheard exclusion. Spain-Spanish controls worked in the final run, with one retained Espera → Espero miss.

1 Sep · C4 / C5Diagnosed

Decode graphs lifted normal Qwen output to about 13.3 tok/s. Natural chunk probes rejected arbitrary timed cuts, and direct measurement exposed severe GPU contention between continuing Qwen decode and Magpie/NanoCodec continuation synthesis.

1 Sep · CP08Exercised

Smart Turn overlapped Cohere Transcribe without surrendering Core turn authority: 15/15 speculative requests were reused with zero wait at commit. The same 15-turn run exposed later-session Qwen TTFT growth.

1 Sep · CP09-A/B/CRe-architected

Front-sliding model history destroyed SGLang prefix-cache reuse. Core-side open-session memory was separated from a bounded append-only Qwen working-set epoch with explicit prewarm.

1–2 Sep · CP09-D to IPhysical checkpoint

The cache-stable architecture entered the live head. Completeness, startup, bilingual-quality and staged-response experiments exposed new problems; CP09-I removed the model-facing speech protocol and returned to one natural Qwen stream.

Latest physically tested path

One governed response, one natural generation, one playback owner.

The latest checkpoint is no longer the Nemotron/DualTurn/UltraVAD/Magpie component plan described in J-011. The tested path changed as measurement eliminated weak candidates.

  1. 01
    Physical audio boundaryXVF3800 hardware AEC + Creative Pebble V3

    LEFT carries near-end/barge evidence; RIGHT carries semantic speech. The standalone Thor AEC fixture remains the accepted hardware basis.

    Thor fixture
  2. 02
    Turn formationNear-end acoustic evidence + Smart Turn

    Deterministic local timing retains floor authority. Smart Turn advises whether the utterance appears complete; it does not commit a user turn by itself.

    Physical path
  3. 03
    TranscriptionSpeculative Cohere Transcribe overlap

    Recognition starts before final commit and is reused only after bounded admission. Correction, 5 September: Cohere Transcribe runs locally on Thor through a resident service; the earlier wording incorrectly described this ASR path as nonlocal.

    Experimental
  4. 04
    Conversation authorityEvopien Core + ConversationLedger

    Core owns user admission, spoken-only history, WAIT/CONTINUE/STOP, cancellation, checkpoints, audibility, and generation leases.

    Core-owned
  5. 05
    Session contextDerived open-session memory + bounded Qwen epoch

    Canonical session evidence remains outside the model cache. Qwen receives a bounded append-only working set with prewarmed rollover instead of front-sliding history.

    Cache-stable
  6. 06
    Local cognitionQwen3.8-27B R8.1 normal no-thinking decode

    The retained SGLang control keeps fast first-token behavior. Alternative runtimes did not displace it for first speech.

    Thor exercised
  7. 07
    Speech onsetLocal 4–6-word safe-prefix framing

    A naturally complete short answer may release immediately; otherwise the speech layer—not Qwen—waits for a small syntactically safe prefix while the same generation continues.

    One stream
  8. 08
    Speech + playbackScylla INT8 CPU + one ordered owner

    CPU speech avoids the measured Qwen/GPU-codec contention mechanism. Unheard text and stale PCM must lose authority on cancellation.

    Physical path

The long-session failure

A bigger chat window only moved the cliff.

CP08 began near 228.6 ms Qwen TTFT, then reached 681.0 ms after turn five. CP09-A tied the jump to the first front eviction from model-visible history: cached-prefix reuse collapsed and the whole prompt had to be prefetched again.

Raising the window from four to 32 exchanges did not solve it. It postponed the same failure to turn 34, where TTFT rose to 1.849 seconds and later turns held around 1.685 seconds P50.

Core lifecycle freeze

Only what was actually heard becomes conversation truth.

Latency work was not allowed to bypass the conversation ledger. A faster answer is not acceptable if cancelled or unheard text contaminates later context.

Conversation state is not the model transcript.

WAIT creates a real resumable checkpoint. CONTINUE receives a fresh governed lease. STOP clears without filler. Assistant units become canonical only after audibility, and stale provider output is rejected after ownership changes.

On a non-WAIT interruption, canonical memory keeps the exact spoken prefix. Only the disposable model working set may annotate that prefix as interrupted, preventing Qwen from mistaking a cut-off answer for a deliberately complete one.

What the experiments eliminated

The active path is narrower because alternatives were measured.

Rejected here means rejected for the current first-speech role under the tested Thor constraints. It does not mean the work has no future research value.

CandidateDecisionMeasured reason
Normal Qwen / SGLang C4Retained

Decode graphs improved token time by roughly 35–38%, reaching about 13.3 tok/s with hot TTFT in the 233–240 ms P95 class.

GPU Magpie / NanoCodec continuationRejected role

NanoCodec RTF P95 degraded from 0.188 idle to 1.552 during Qwen decode—an 8.236× collapse in the tested contention case.

CPU8 NanoCodec continuationIntermediate

Moving NanoCodec to eight CPU cores avoided the measured GPU contention and made it the best Magpie continuation candidate, but first-response timing remained worse and the practical Qwen + Scylla path displaced it.

Scylla INT8 CPURetained

Avoids the specific GPU-codec contention path and produced ordinary short-chunk first PCM in roughly the 0.3–0.4-second class.

CosyVoice3Rejected role

English and Spanish synthesis worked, but warmed usable time-to-first-audio remained multi-second and some streams emitted only fragments.

TensorRT Edge-LLMRejected role

Built and ran on Thor with strong prefill, but about 12.3 tok/s decode did not improve the active conversation path.

DFlash2Research asset

Reached 24.62 tok/s on a long Spanish generation, but conversational TTFT and first-sentence latency were worse than the retained first-speech runtime.

Markers + staged lead/continuationRemoved

Model-owned markers, abort fences, rescue prompts, and second requests added complexity and still produced compliance, factual, and proportionality failures.

Why the branch is not green

The median improved. The conversation still breaks in important ways.

In the latest physical run, a false acoustic barge cancelled a valid assistant answer. Cohere then classified the candidate interruption as single-word noise, so the user got neither the original answer nor a valid replacement turn.

The session also ended with three temporary generated units still present. Only eight Qwen/context samples existed, below the ten-sample sustained-history gate, and no clean admitted interruption physically proved the new disposable-history annotation.

Rollback and development state

The measured anchor is preserved; newer repository work is not requalified.

The physical run anchor is deliberately separate from newer repository commits. Newer code and experiment scaffolding are not stronger evidence until the full physical path runs again.

The eleven post-anchor CP09-I commits implement a provider-EOS guard for short onset, checkpoint retention until interruption, cancellation cleanup with resume metadata, bounded fail-soft handling for long Cohere and PCM behavior, and sentence-boundary and continuation framing with regression tests. Those are implemented changes, not a newer physical qualification.

Physical run anchor
64df168f4a8711a07def4f598e91f30f35f9e46b
Source of the measured CP09-I latency and failure record on this page.
CP09-I branch head
b4d7212f827006578c628c380f10435757777f31
Numeric-freeze documentation at the reviewed remote branch pointer; it does not replace the physical evidence anchor.
Latest reviewed repository head
ms08/cp09j-qwen-decode-frontier
478699e8b9c2c9ecdbb45d8d9d8b15ce2957b812 defines the next decode-frontier experiment. No CP09-J result is claimed.
Evidence ceiling
CP09-I is Thor-exercised with known failures. Later repairs and CP09-J are implemented or documented repository work; no newer physical qualification exists for them.

Voice first, video next

Add current-scene context without turning 30 FPS into model input.

  1. 01Repair false-barge recovery and temporary-generated cleanup, then physically requalify the later CP09-I fixes.
  2. 02Run 12–15 ordinary physical Qwen turns and a separate admitted-interruption corpus.
  3. 03Close the first-audio P95, bilingual quality, TTS normalization, continuity, restart, resource, and thermal gates.
  4. 04Reuse the Thor-verified C920 1280×720 MJPEG capture fixture for hardware-supported acquisition.
  5. 05Build fast detector/tracker output into bounded, timestamped current-versus-stale scene state.
  6. 06Send only a selected frame, crop, short clip, or event to Qwen3.8 for deeper interpretation through Core governance.
  7. 07Keep continuous raw-media retention off by default and test speech/video coexistence before any MS-09 claim.

Follow the evidence-gated path to MS-09

Current evidence boundary

Where Evopien stands on 2 September.

ItemStateEvidence
Physical speech pathThor-exercised

Microphone-to-physical-playback operation exists at the exact frozen checkpoint and stack described above.

Approximately 1.5 secondsBounded result

Exact median was 1.3705 s speech-end to first PCM; P95 was 1.7971 s. This is not a guaranteed or acoustic-audibility figure.

Long-session contextText-only qualified

The 100,000-turn Core-session/cache architecture passed its declared text-only Thor corpus; physical sustained qualification remains short of sample count.

Natural bilingual full duplexNot validated

English and Spain Spanish have bounded subpath evidence, but the paired physical exit corpus and lifecycle gates have not passed.

Repository after CP09-IImplemented

Later CP09-I repairs and the CP09-J decode-frontier scaffold are present in the reviewed repository history; no newer physical qualification is claimed.

Video/current scenePlanned

Standalone C920 capture works. Current Qwen3.8 video, bounded scene state, coexistence, and freshness handling remain MS-09 work.

Alpha or powered motionNot ready

Foundation v1.2 remains controlling; privacy, real-user, recovery, safety, independent-isolation, and deployment gates remain open.

Return to the complete journal