Skip to content

v1.0.10

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Sep 09:38
· 17 commits to main since this release

CodeLeveler v1.0.10

English

This release rebuilds how a model request is assembled, folded, and paid for.
The control context is now separate from the transcript, every delivered prompt
segment has one source and one authority, and every model attempt is recorded in
the request ledger.
Installed stable builds can update automatically, or use leveler update
or /update.

Changed

  • Prompt construction gives every delivered segment a single source, authority,
    and lifecycle. Providers may change how a segment is represented on the wire
    (a system message or a top-level system field) but not its order, source, or
    authority, and the control context no longer travels as part of the transcript.
  • Wire encoding and context statistics read the same projected request, so the
    reported input size and the bytes actually sent cannot disagree. Folding
    pressure follows the projected request, project rules scoped to a directory
    survive a fold verbatim, and historical reasoning follows the route's replay
    contract.
  • Every model attempt is recorded in the request ledger and the resource budget,
    including failures, retries, compaction summaries, and child task calls.
    Consumption is rebuilt from a scope's persisted request facts on recovery, so a
    background child can no longer keep spending a stale balance snapshot.
  • Rule delivery is budgeted against the request: every rule stays authoritative
    even when only part of a rule file fits verbatim.
  • The repository's ./dev development entry point is documented in the release
    archives, for local verification and release qualification.

Fixed

  • A reduced-context route can declare max_output_tokens larger than its own
    context_window. Reserving that full completion against the window used to
    saturate the usable input capacity to 0, so every request looked over the hard
    capacity and the run aborted with context management failure: ... capacity 0
    after the first tool batch. A bound of zero is not a bound the model declared,
    so folding now follows the quality boundary alone. Routes whose reservation
    fits their window are unchanged.
  • The context snapshot produced before a request reaches the caller's observer
    instead of being dropped.
  • A model-spend scope change no longer discards the task epoch's remaining
    command budget.
  • The spend of a completed command is flushed when a batch is cancelled
    mid-round, instead of being lost with the cancelled round.
  • A child task's rendered spawn brief is persisted on the child spec and reused
    on resume, so a resumed child sees the brief it started with.
  • /btw read-only calls pass through the ToolHost admission pipeline instead of
    bypassing it.
  • Background task writes are constrained to the OS execution boundary, task
    mutation settles only after the whole workload ends, and the live stdout and
    stderr channels are capped with an explicit truncation marker rather than
    growing without bound.

Known limits

  • Prebuilt binaries are not Apple- or Microsoft-signed. macOS or Windows may
    block the first run until you allow it
  • Windows cannot deny network access per command. A command that requires that
    isolation is refused rather than run with the network open
  • Windows has no local daemon socket. Sessions and resume still work
  • A confined Windows !command prints its output when it finishes, not while
    it runs

Install and usage: README.
Updates: README § Updates.
How the system is layered: Architecture.

中文

这一版重做了模型请求的组装、折叠和计量方式:控制上下文与会话记录分离,
每一段提示词都有唯一的来源和权威,每一次模型尝试都记入请求账本。
已安装的稳定版可以自动更新,也可以执行 leveler update 或 /update。

变更

  • 提示词组装让每一段投递内容都有唯一的来源、权威和生命周期。Provider 可以
    改变某一段在链路上的表示形式(system message 或顶层 system 字段),但不能
    改变它的顺序、来源或权威;控制上下文不再作为会话记录的一部分传递。
  • 链路编码与上下文统计读取同一个「已投影请求」,报告出的输入规模与实际发送的
    字节不会再互相矛盾。折叠压力按已投影请求判定,作用于某个目录的项目规则在
    折叠后被逐字保留,历史推理遵循路由自己的回放契约。
  • 每一次模型尝试都记入请求账本和资源预算,包括失败、重试、压缩摘要和子任务
    调用。恢复时消费量由该作用域已持久化的请求事实重建,后台子任务不会再继续
    花费过期的余额快照。
  • 规则投递按请求额度分配:即使规则文件只有一部分能逐字放入,每条规则仍保持
    权威。
  • 发布产物中记录了仓库的 ./dev 开发入口,用于本地验证和发布资格判定。

修复

  • 缩减上下文的 route 可以声明比自身 context_window 更大的
    max_output_tokens。把整段补全预留在窗口上,曾把可用输入容量压到 0,
    于是每个请求都被判为超出硬容量,运行在第一批工具调用后即以
    context management failure: ... capacity 0 中止。容量为 0 不是模型声明的
    界限,因此现在只按质量边界折叠;预留能放进窗口的 route 行为不变。
  • 请求前产生的上下文快照现在会送达调用方的 observer,不再被丢弃。
  • 模型消费作用域切换时,不再丢弃当前任务纪元剩余的命令预算。
  • 批次在一轮中途被取消时,已完成命令的消费会被结清,不再随被取消的那一轮丢失。
  • 子任务渲染出的 spawn brief 会持久化在子任务 spec 上并在 resume 时复用,
    恢复后的子任务看到的是它启动时的那份 brief。
  • /btw 的只读调用改为通过 ToolHost 准入管线,不再绕过它。
  • 后台任务写入被限制在 OS 执行边界内,任务变更在整个工作负载结束后才结算,
    运行中的 stdout、stderr 通道设有上限,并在截断处给出明确标记,不会无限增长。

已知限制

  • 预编译包没有苹果或微软的官方签名。macOS 或 Windows 第一次运行时可能
    会拦截,需要你允许一次
  • Windows 还不能按命令断开网络。需要断网隔离的命令会被拒绝,而不会在
    网络仍开放时继续跑
  • Windows 没有本地 daemon 套接字。会话和 resume 仍然可用
  • Windows 上受隔离的 !command 结束后才打印输出,不会边跑边刷

安装与使用见 README。
更新见 README · 更新。
系统怎么分层见 架构说明。