Skip to content
This repository was archived by the owner on Oct 28, 2026. It is now read-only.

v0.4.5 - Monotonic Stream Revisions & Phase Wake Latching / 流式修订号单调连续性与执行态唤醒锁存

Choose a tag to compare

@Jaylor-Wang Jaylor-Wang released this 25 Oct 19:37
· 11 commits to main since this release

English

Highlights in v0.4.5

  • Strict Monotonic Stream Revisions & Terminal Guard: Enforces monotonic assistant stream revisions with a terminal guard (push, settle, abandon), eliminating duplicate frames and preventing RemoteStreamCarrierError: session assistant stream skipped revision in DSH Web UI.
  • Active Phase Wake Latching (Steering Guarantee): Latches phase.wakeRequested = true when messages arrive during active execution (phase.kind === "running"), automatically waking the driver upon turn completion so mid-turn user inputs are never dropped.
  • Clean Turn Settlement & Signal Reset: Resets AbortController and step counters per turn, ensuring turns end with clean { kind: "completed" } statuses and eliminating spurious UI "处理失败" error markers.
  • Event-Sourced V4 Protocol Compliance: Correctly sets producer-owned source kinds on synthetic recovery messages to satisfy strict DSH Session V4 formatting contracts.
  • Comprehensive Front-End Contract Test Suite: Ships with dedicated mock tests covering stream monotonicity, idempotent abandonment, V4 source compliance, and phase wake latching.

中文

v0.4.5 版本核心特性

  • 流式帧号严格单调递增与终止守卫:引入 AssistantStreamAttempt 状态机终结守卫,杜绝重复发射帧与跳号,彻底消除前端因 RemoteStreamCarrierError: session assistant stream skipped revision 导致的白屏断流。
  • 活跃阶段输入唤醒锁存(用户中途追问保障):当驱动处于执行态(running)接收用户消息时,硬件级强制锁存 phase.wakeRequested = true 并在轮次结算后自动唤醒驱动,根治“正在分析请求卡死、消息被吞”。
  • 纯净轮次结算与信号隔离:严格按轮次重新分配全新的 AbortController 并重置步骤计数,结算始终返回标准 { kind: "completed" },彻底根除前端 UI 虚假弹出的红字“处理失败”。
  • 对齐 DSH 会话 V4 事件溯源规范:合成自愈消息均携带生产者所有权标识(source: { kind: "fast-loop" }),100% 满足会话事件规范校验。
  • 全套前端洁癖契约回归测试:内置 4 项针对前端挑剔时序的专属 Mock 契约测试,保障版本迭代稳定不破约。