Repository navigation
Releases: Jaylor-Wang/dsh-fast-loop
Releases · Jaylor-Wang/dsh-fast-loop
Release list
v0.5.1 - Session Projection Receiver Context & Native Wire Typing Fix / 会话投影注册上下文与类型根治
English
Highlights in v0.5.1
- Strict
sessionProjections.registerReceiver Context & Wire Typing: Natively typesinboxProjectionDefinitionasRequired<ProjectionDefinition<"inbox", InboxState>>, enabling directctx.sessionProjections.register(inboxProjectionDefinition)invocation without intermediate function extraction oranycasts—eliminatingthis.ctxbinding loss and"no agent factory registered"session resume failures. - Receiver-Context Regression Guard: Enforces
this.ctxreceiver verification directly inside the lifecycle test suite's projection registry mock to prevent unbound method regressions.
中文
v0.5.1 版本核心特性
- 会话投影注册接收者上下文与类型根治:将
inboxProjectionDefinition导出类型精确收敛为Required<ProjectionDefinition<"inbox", InboxState>>,直接通过ctx.sessionProjections.register(inboxProjectionDefinition)零转型调用,彻底杜绝因方法解构导致this.ctx丢失及引发的no agent factory registered会话恢复失败。 - 生命周期测试接收者上下文强校验:在测试套件 Mock 与专项回归用例中强制校验
sessionProjections.register的this.ctx绑定,从测试防线封死同类回归问题。
Full Changelog: v0.5.0...v0.5.1
v0.5.0 - Transient Stream Timeout Auto-Retry & Official Contract Alignment / 瞬态流超时自动重试与官方契约全面对齐
English
Highlights in v0.5.0
- Built-In Transient Stream Timeout & Network Auto-Retry: Automatically recovers from mid-turn transient stream failures (
TIMEOUT,TRANSPORT,UPSTREAM,EMPTY_RESPONSE,STREAM_ERROR) with abort-aware exponential backoff (maxTransientRetries, default2), rescuing long multi-step turns even when upstream adapters enforcemaxRetries: 0. - Setup-Window Event Persistence (
appendUnstoredSuffix): Durably flushes both constructorseedevents andsetup()window session events right before publication, preventing delegation policy or setup records from being lost across restarts while leaving zero uncommitted residue on setup failure. - Adapter Defaults Stripping (
requestProposal): Strips adapter-populatedmaxTokensandreasoningEffortdefaults (adapterDefaults) before proposing subsequentagent/requestconfigs, preventing redundantrequest/headerchange logs and cross-model default lock-in. - Declarative
config.agentsStartup & Identity Validation: Supports declarative startup/resume of configured agents,CONFIGURED_AGENT_IDENTITIES_KEYlauncher overrides, and upfront identity conflict validation. - Sanitized Cancel Causes & Dynamic Host Anchor Resolution: Strips Node
fetch/undicierror stack pollution fromturn/endcancel causes via whitelist shallow copy, and dynamically resolves global DSH host anchors across platforms without hardcoded paths.
中文
v0.5.0 版本核心特性
- 内置流式超时与瞬态网络错误兜底重试:当上游适配器(如 Antigravity)硬编码
maxRetries: 0导致官方重试插件失效时,自动对TIMEOUT、TRANSPORT、UPSTREAM、EMPTY_RESPONSE、STREAM_ERROR等瞬态中断执行支持信号中断的指数退避重试(maxTransientRetries默认2次),彻底杜绝长任务在最后一步因流超时而功亏一篑。 - Setup 窗口期事件完整落盘(
appendUnstoredSuffix):对齐官方持久化事务边界,在setup()钩子提交后、正式发布前统一将构造seed与setup期间写入的会话事件(如子 Agent 委派策略记录)刷入磁盘,且在setup失败回滚时不留任何未提交残余。 - 适配器默认参数剥离(
requestProposal):在发起后续步骤的agent/request前自动剥离上次由适配器填充的默认maxTokens与reasoningEffort(adapterDefaults),消除跨轮次多余的request/header (reason: "change")记录以及切换模型时的默认参数锁死。 - 声明式
config.agents自动拉起与身份校验:完整支持配置文件声明式 Agent 的自动创建/恢复、CONFIGURED_AGENT_IDENTITIES_KEY启动器身份覆盖及互斥/重复身份前置校验。 - 取消原因栈污染净化与跨平台宿主动态寻址:对
getCancelCause执行字段白名单浅拷贝,剥离 Nodefetch注入的stack属性污染;移除本地路径硬编码,支持跨平台动态推导全局 DSH 宿主锚点。
Full Changelog: v0.4.6...v0.5.0
v0.4.6 - Native Web GUI Settings Card & Dynamic Volatile Sampling / 原生 Web 设置卡片与 Volatile 响应式采样
English
Highlights in v0.4.6
- Native Web GUI Settings Card: Seamlessly registers an interactive settings card in DSH General Settings (
通用设置), offering a visual slider (1–32) and quick presets formaxParallelToolCallswithout modifying DSH core code. - Dynamic Volatile Store Sampling: Concurrency limits dynamically resolve reactive state from client volatile stores or functions in real time without restarting the web service or refreshing the page.
- DSH Client Plugin Web Manifest: Fully exports
./clientconforming to DSH client specifications, declaringdsh.clientfor thewebplatform with clean locale and settings dependencies. - Dual CLI Switcher Guidance: Streamlined CLI instructions in README supporting both direct
dsh-fast-loop enableand zero-installnpx dsh-fast-loop enable.
中文
v0.4.6 版本核心特性
- Web 界面原生设置卡片:在 DSH 设置(通用设置)中无缝集成
dsh-fast-loop配置卡片,提供最大工具并发数(maxParallelToolCalls,范围 1~32)可视化滑块与预设按钮,完全无需修改 DSH 核心源码。 - 动态 Volatile 响应式采样:运行时动态采样配置支持函数与 Volatile 存储,在前端拖动滑块时即刻响应生效,无需刷新页面或重启服务。
- 标准化 Client Plugin 导出规范:遵循 DSH 客户端规范导出
./client,声明dsh.client与web平台依赖注入,保证零侵入式无缝装载。 - 完善双重 CLI 切换指引:优化文档指引,兼顾已安装用户的
dsh-fast-loop enable与免全局安装的npx dsh-fast-loop enable切换模式。
Full Changelog: v0.4.5...v0.4.6
v0.4.5 - Monotonic Stream Revisions & Phase Wake Latching / 流式修订号单调连续性与执行态唤醒锁存
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 preventingRemoteStreamCarrierError: session assistant stream skipped revisionin DSH Web UI. - Active Phase Wake Latching (Steering Guarantee): Latches
phase.wakeRequested = truewhen 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
AbortControllerand 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 契约测试,保障版本迭代稳定不破约。
v0.4.4 - Cross-Instance Tool Scheduler Dynamic Resolution / 跨实例工具调度器动态解析与双包Symbol隔离穿透
English
Highlights in v0.4.4
- Cross-Instance Tool Scheduler Dynamic Resolution: Implemented a robust multi-tier fallback resolver (
resolveToolScheduler) to dynamically matchTOOL_RUNTIME_SCHEDULERacross Dual-Package Symbol boundaries (Cordis service injection vs isolated package instances). - Symbol Isolation Penetration: Supports cross-package Symbol description probing (
TOOL_RUNTIME_SCHEDULER,dsh-tools.scheduler) and duck-typing method fallback (prepareScheduledExecution/dispatchScheduledExecution), completely eliminatingCannot read properties of undefined (reading 'prepare')when executing tool calls in DSH Web / Electron runtimes. - Dynamic Host Tools Bridge: Extends host services inspection to resolve and export runtime symbols directly from the active DSH installation anchor.
中文
v0.4.4 版本核心特性
- 跨实例工具调度器动态解析与双包 Symbol 隔离穿透:针对跨包安装环境引发的
Symbol("@deepseek-ai/dsh-tools.scheduler")双重实例不匹配问题,实现多级动态解析链resolveToolScheduler,彻底解决工具调用执行时报错TypeError: Cannot read properties of undefined (reading 'prepare')。 - 全链路多级回退兼容:
- 优先匹配宿主与本地精确 Symbol 引用;
- 自动探测并跨包识别 Symbol 描述符(兼容
dsh-tools.scheduler与TOOL_RUNTIME_SCHEDULER); - 支持实例级方法鸭子类型回退(
prepareScheduledExecution/dispatchScheduledExecution/finalizeScheduledExecution); - 支持标准属性
scheduler探测。
- 宿主工具服务动态桥接(
src/host.ts):在宿主环境探测中追加对@deepseek-ai/dsh-tools调度器标识的动态提取与注入,保障 Cordis 服务总线与 FastLoop 驱动之间的无缝通信。
v0.4.3 - Dynamic Host Scope Resolution & Zero-Symbol Drift / 动态宿主Scope桥接与零Symbol漂移
English
Highlights in v0.4.3
- Dynamic Host Scope Resolution & Zero-Symbol Drift: Seamlessly resolves host
@deepseek-ai/dsh-scopeand@deepseek-ai/dsh-agentinstances across heterogeneous installation boundaries. EliminatesAgent preset binding requires a scoped contexterrors when creating or resuming sessions in DSH Web / Desktop. - Bi-directional Scope Tagging: Dual-tags Agent contexts with both the host and local
Symbol("dsh.scope"), ensuring 100% interoperability with standing preset registries and custom plugins. - Robust Method Context Preservation: Fixed unbound method tearing on session projection registrations, guaranteeing error-free plugin activation under Cordis.
- Defensive Steer Soft-Interrupt Guards: Added safe optional-chaining guards across loop context event listeners and inbox pending checks.
中文
v0.4.3 版本核心特性
- 动态宿主 Scope 桥接与零 Symbol 漂移:彻底解决跨包安装环境下的
Symbol("dsh.scope")私有副本隔离问题,通过宿主installAnchor动态绑定宿主作用域服务,完美契合dsh-agent-preset-registry与dsh-tools的上下文校验,根治新建会话与恢复会话时的Agent preset binding requires a scoped context报错。 - 双向 Symbol 兼容保障(Bi-directional Dual-Tagging):在 Agent Context 上同时附加宿主与本地作用域标识,实现宿主服务与第三方扩展的 100% 双向契约互认。
- 投影注册上下文绑定修复:修复 Session Projection 注册时的
this指针解构脱落 Bug,杜绝 Cordis 插件激活警告。 - Steer 协作式软打断防御性加固:全面强化对未初始化 inbox 及外部 Mock 上下文的防御性空值校验。
v0.4.2 - Global CLI Switcher & Zero-Risk Patch Management / 内置一键切换 CLI 与零风险补丁管理
English
Highlights in v0.4.2
- Built-in Global CLI Switcher (
dsh-fast-loop): Ships the out-of-the-box command-line tool allowing users to effortlessly toggle between Fast Loop and the official Agent Loop from any terminal (dsh-fast-loop enable,dsh-fast-loop disable,dsh-fast-loop status). - Surgical, Non-Destructive YAML Patching: The switcher surgically toggles the
disabledstate in~/.dsh/profiles/web/cordis.patch.ymlwhile strictly preserving all existing comments, other plugin configurations, and!!jsexpressions, completely eliminating YAML indentation and corruption risks. - Immediate Live HMR Integration: Seamlessly cooperates with DSH's live patch reload mechanism, applying loop switches without needing manual text editor intervention.
- Full P0/P1/P2 Capabilities: Integrates Path-Aware Barrier, ToolCallRecovery crash resilience, cooperative soft-interruption for wait tools, and DeepSeek DSML protocol leak auto-healing.
中文 (Chinese)
v0.4.2 核心更新
- 内置全局一键开关 CLI(
dsh-fast-loop):引入原生命令行工具,支持在任意终端直接运行dsh-fast-loop enable、dsh-fast-loop disable与dsh-fast-loop status,实现高性能内核与官方原生内核之间的无缝秒级切换。 - 外科手术式非破坏性 YAML 补丁:自动定位
~/.dsh/profiles/web/cordis.patch.yml,精准切换目标服务的disabled状态,100% 完整保留原有文件的所有注释、其他插件配置与!!js表达式,彻底消除手写 YAML 缩进错误风险。 - 无缝对接 DSH Live HMR:与 DSH 官方热重载机制完美融合,执行命令后系统即刻平滑热重载生效。
- P0/P1/P2 全量就绪:整合路径级读写并发屏障、断点自动补齐兜底、Steer 零延迟软打断及 DSML 自愈 Nudge。
v0.4.1 - One-Click CLI Switcher & Zero-Risk Patch Management / 内置一键切换 CLI 与零风险补丁管理
English
Highlights in v0.4.1
- Built-in Global CLI Switcher (
dsh-fast-loop): Added an out-of-the-box command-line tool allowing users to effortlessly toggle between Fast Loop and the official Agent Loop (dsh-fast-loop enable,dsh-fast-loop disable,dsh-fast-loop status). - Surgical, Non-Destructive YAML Patching: The switcher surgically toggles the
disabledstate incordis.patch.ymlwhile strictly preserving all existing comments, other plugin configurations, and!!jsexpressions, completely eliminating YAML indentation and corruption risks. - Immediate Live HMR Integration: Seamlessly cooperates with DSH's live patch reload mechanism, applying loop switches without needing manual text editor intervention.
中文 (Chinese)
v0.4.1 核心更新
- 内置全局一键开关 CLI(
dsh-fast-loop):引入原生命令行工具,支持在任意终端直接运行dsh-fast-loop enable、dsh-fast-loop disable与dsh-fast-loop status,实现高性能内核与官方原生内核之间的无缝秒级切换。 - 外科手术式非破坏性 YAML 补丁:自动定位
~/.dsh/profiles/web/cordis.patch.yml,精准切换目标服务的disabled状态,100% 完整保留原有文件的所有注释、其他插件配置与!!js表达式,彻底消除手写 YAML 缩进错误风险。 - 无缝对接 DSH Live HMR:与 DSH 官方热重载机制完美融合,执行命令后系统即刻平滑热重载生效。
v0.4.0 - Path-Aware Barrier, ToolCallRecovery & Steering Soft-Interrupt / 路径级并发屏障、断点自动兜底与协作式软打断
English
Highlights in v0.4.0
- Path-Aware Barrier (Argument-Aware Concurrency): Overcomes DSH's unary tool classification. Disjoint file editing operations (
edit,write,read) run concurrently up to the hardware boundary (maxParallelToolCalls), while operations targeting identical file paths are safely serialized to prevent race conditions. Global barrier tools (bash, commands) execute exclusively. - Durable Crash & Failure Recovery (
ToolCallRecovery): Integrates session-levelToolCallRecoveryobservation. If an execution turn aborts, crashes, or is interrupted mid-step, unclosedtool/callevents are automatically paired with synthetictool/resultrecords, completely eliminating orphan calls that trigger400 Bad Requeston resumption. - Collaborative Soft-Interruption for Wait Tools (Zero-Latency Steering): Actively monitors
inbox.hasPendingduring tool execution. Interruptible wait tools (wait,sleep,ask_user) are gracefully aborted withTOOL_INTERRUPT_ABORT_REASONupon incoming user steer messages, allowing the agent to yield immediately with zero latency. - Model Protocol Leak & Self-Healing Nudge (
DSML & ID Healer): Strips leaked raw<|tool_calls|>tags from visible assistant text. If a model leaks tags without emitting structured tool calls, automatically injects a self-healing corrective nudge intoinbox.nextStepto prompt proper re-execution within the same turn. Tool-call IDs are validated and deduplicated across the session. - Official Error Waterfall & Telemetry Alignment: Fully restores the
agent/request-errorwaterfall andagent/errorevent emission, enabling seamless integration with official DSH retry policies (exponential backoff, 429 rate limit delays) and telemetry UIs.
中文 (Chinese)
v0.4.0 核心更新
- 路径级读写并发屏障(Path-Aware Barrier):打破 DSH 原生“一元独占”调度枷锁。跨文件读写编辑(
edit、write、read)并发度拉满至物理极限(maxParallelToolCalls),同文件操作自动安全串行互斥;全局副作用工具(bash)自动升格为隔离屏障。 - 崩溃断点自动兜底防崩(ToolCallRecovery):无缝对齐 DSH 会话事件溯源要求,在 Step 意外崩溃或中断时自动补齐未成对的
tool/result,彻底杜绝孤儿调用导致下一次恢复报400 Bad Request。 - 耗时等待与 Steer 协作式软打断(零延迟响应):工具批次执行期间实时监听
inbox,在用户发送指导信息的瞬间触发局部软打断(TOOL_INTERRUPT_ABORT_REASON),耗时等待工具(wait、sleep、ask)即刻让出控制权,交互响应零延迟。 - DeepSeek 畸变拦截与 Nudge 自愈机制:清洗文本中泄漏的裸
<|tool_calls|>标签;当模型纯文本泄漏而无结构化调用时,自动注入自愈 Nudge 推动模型步入下一步正确调用;对重复与空 ID 自动规整为会话唯一 ID。 - 官方错误重试瀑布流与遥测对齐:完整还原
agent/request-error瀑布流并分发agent/error事件,与官方指数退避、429 限流重试插件 100% 契约兼容。
v0.3.2 - Clean Host Dependency Boundary / 规范宿主依赖边界,杜绝模块重复加载
English
What's Changed in v0.3.2
- Clean Host Dependency Boundary: Completely removed all
@deepseek-ai/*packages from runtimepeerDependencies. DeepSeek Harness provides all@deepseek-ai/*and@deepseek-ai/cordismodules globally at runtime. Retaining them strictly indevDependenciesensures local type-checking and testing pass while preventing profile package managers (pnpm/npm) from hoisting duplicate Cordis or Session module trees into user profiles. - Unified Cordis Service Resolution: Guarantees that fast-loop instances always register against the host's unified Cordis Context and prototype chain, resolving the startup freeze where core services like
sessions,agents,tools, andsessionProjectionsfailed to register. - High Concurrency & Lifecycle Resilience: Retains the transactional write lock release, WebSocket disconnect cleanup, and ~8x tool scheduler speedup validated across all 11 test suites.
Installation
# Via DSH Plugin CLI (Recommended)
dsh plugin --profile web add dsh-fast-loop
# Via npm / pnpm
npm install dsh-fast-loop
pnpm add dsh-fast-loop中文
v0.3.2 版本更新日志
- 规范宿主依赖边界:从运行时
peerDependencies中完全移除@deepseek-ai/*相关模块。DeepSeek Harness 宿主会在运行时全局统一提供@deepseek-ai/*与@deepseek-ai/cordis,将其严格限制在devDependencies(仅供源码构建与本地测试使用),彻底杜绝包管理器向 profile 目录下载重复的 Cordis / Session 副本。 - 保障统一 Cordis 服务注册:确保 fast-loop 实例始终注册在宿主统一的 Cordis Context 与原型链上,杜绝因双实例导致
sessions、agents、tools、sessionProjections服务丢失。 - 延续高并发与会话容错优势:全套继承 v0.3.0 的写锁安全释放、会话销毁资源自动回收机制,经 11 项全链路自动化测试与高并发基准测试验证。
安装与使用
# 通过 DSH 插件命令安装(推荐)
dsh plugin --profile web add dsh-fast-loop
# 通过 npm / pnpm 安装
npm install dsh-fast-loop
pnpm add dsh-fast-loop