Skip to content

release v0.1.148 - #1296

Merged
ranxianglei merged 2 commits into
masterfrom
2026-09-25_release-v0.1.148
Sep 25, 2026
Merged

ranxianglei merged 2 commits into
masterfrom
2026-09-25_release-v0.1.148

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Auto-fallback from the one-click release workflow: direct push to master was blocked by branch protection. Merging this PR publishes via the standard release.yml flow.

Changes since v0.1.147

@ranxianglei

Copy link
Copy Markdown
Owner

ework帮忙审核这次更新是否带来回归性问题 不需要测试 远程ci会自动跑

@github-actions

github-actions Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor Author

📦 Built Package Artifact

Branch: 2026-09-25_release-v0.1.148 (bfbe7b6)

Option A — Install from npm PR tag (recommended)

npm install -g billion-context@pr-1296

Each push to this PR publishes a new version under the pr-1296 npm tag.

Option B — Download artifact

  1. Download the artifact from the Actions run
  2. Extract the tarball and install:
tar xzf billion-context-pr1296.tgz
npm install -g package

Install instructions are refreshed on each push.

@ranxianglei

Copy link
Copy Markdown
Owner

🤖 Powered by ework · qwen3.8-27b

回归审查结论:v0.1.148 可合并

一句话总结:release PR 本身干净(仅版本行 0.1.147→0.1.148),本版本全部行为变更均为有意且已在各 commit 披露,未发现无意回归;可以合并。以下按「PR 本身 → 既有行为逐项清点 → 行为变更清单」给出依据(未本地跑测试,按你要求交给远程 CI)。

① Release PR 本身(diff 整洁度 + 发布纪律)

  • 分支已 rebase 到当前 master tip(6b9c41a7,merge-base 即 master HEAD),对 master 的完整 diff 只有 package.json + package-lock.json 的版本行(0.1.147→0.1.148),单一 release v0.1.148 commit(8b8bdae7),符合 one-version-one-commit 纪律。
  • 跨仓依赖合规:acp-kernel 精确钉在 0.0.88(无 caret),已确认 npm 上 acp-kernel@0.0.88 已发布(CI npm ci 不会挂);zod 保持 4.1.8 未动。
  • npm 当前 latest = 0.1.147,0.1.148 未发布过,无版本冲突。

② 回归审查:逐项清点的既有行为(v0.1.147 → v0.1.148,共 30 个内容 commit)

触碰路径 既有行为 结论
CCR(acp_retrieve)全链路 默认是否开 最终态:所有 lane 一律 opt-in。中途的 proxy-mode default-on(#1179)已被 #1207 owner decision 完整回退——我核对了分支上 src/compress-settings.ts 的 applyCompressSettings:无 default-on else-branch,s.ccr 未设置时 base.ccr 原样保留(off);ccrEnabled() 要求 enabled === true;server/plugin 两条注入路径均 gated on ccrEnabled(session)。未配置用户的 acp_retrieve 工具注入、content store、nudge 均不触发。净影响为零(唯一例外见下面 wire-shape 条)。
compress.outputSteering(verbosity/effort) 新配置段 默认关:off unless enabled at some level,server 侧仅在原始配置存在时才做 resolve。默认用户零变化。
wire shape(decompress 工具) 所有会话的工具定义 有意变更:decompress 工具在四条 wire + plugin manifest 上新增可选 startId/endId 参数,无条件下发(代码注释明确是「one definition, no drift」设计),执行期由 CCR arming gate,CCR 关闭时调用会得到明确的 FAILED 提示而非静默。属加宽、非收窄。
wire shape(compress 工具) 所有会话的工具定义 有意变更:kernel 0.0.88 把 compress schema 重构为共享 COMPRESS_PARAMETERS 超集——content 从仅 array 变为 [array, string],新增 startRef/endRef 别名与 flat 单区间形式 {startId,endId,summary}。我逐字段对比了 0.0.86 内联 schema 与 0.0.88 导出值:纯加宽(parser 本就接受这些形式,契约写明「superset of what parseCompressArgs accepts」),无任何原有合法调用被拒。代价:升级瞬间 tools 定义变化导致一次 provider 前缀缓存失效,首次请求后自愈。
kernel 0.0.86→0.0.88(打进 dist) nudge 文案 / 报告格式 我 diff 了两个 npm tarball 的全部 dist:除上述 schema 重构外只有两处——(a) nudge 尾部文案变温和:Compress all ranges in one call… → If you compress, fold the ranges you keep in ONE call… Ranges the task still needs can wait — they reappear in later nudges.(模型可见措辞,有意);(b) cache report 标签 ttl/other → upstream-ttl-or-client-rewrite (unattributed)(诚实归因,输出格式)。panel/chunk 其余差异均为 import 改名,无语义变化。
#1284 非会话 body 路由 旧:无 messages 数组的可解析 body → bili 返回 400 JSON 有意变更:改为逐字节转发上游(上游自拒自己的 API 契约),每端点 warn 一次、FIFO 上限 4096 防刷屏。#806 的 kernel 崩溃路径不可复现(verbatim forward 不进 kernel)。错误来源从 bili 变成上游,仍是 4xx 类结果。
#1290 unrouted 端点 旧:非模型 API URL 静默直转,零信号 有意变更:每个不同端点每进程记一次日志(client 侧 dsh hook + proxy 侧统计),/__bili/stats 新增 unrecognizedPaths 字段、acp_status 新增对应 section——纯增量,commit 明确声明无阈值/默认值/时序/输出格式变化。bili 自身控制面 URL 已排除(后续 commit 2dab1719)。
#1289 cache ledger(见下方 changelog 缺口) fold 经济学报告 有意变更(仅报告层):turnsToNextFold 此前对被 ≥2 个请求跟随的 fold 冻结在 1,现在计真实节奏;paidBack 可能 false→true,savedSoFar/grossSaved/netTokens 相应上修。不改压缩/折叠时机,只修 /acp_cache 报告的数字,且补了 incremental↔batch 逐字段对拍的回归测试。
#1180 GC 磁盘清理范围 仅影响启用过 CCR 的会话:GC 现在会回收 CCR content-store companion 文件,同时保住 live fallback store(删除 stale namespace 重复时)。未启用 CCR 的用户磁盘布局不变。
其余 — Windows 下 claude --settings 改走临时文件(#1292,平台特定);pi manifest 在全局启用时广告 absorb/acp_rule(#1278,条件增量);/acp-rule 新命令面(#1251,纯新增);JSDoc import() 剥离 + symlink 调用免疫(#1255/#1256,构建卫生);docs 同步。均为加法或平台特定,无默认值漂移。

回归判定:无意回归 0 处。 唯一触及全部用户默认路径的是 wire shape 两条(decompress 可选参数 + compress schema 超集),二者都是有意设计、纯加宽,成本仅为升级时一次性前缀缓存 miss。

③ 一个 changelog 缺口(不阻塞合并)

PR 正文的 "Changes since v0.1.147" 清单漏了一条:fix: count all post-fold requests in cache ledger turnsToNextFold(99ef653f,#1289,Fixes #1286)——因为 changelog 在 #1289 合入 master 之前生成,之后分支 rebase 带上了它。该 commit 本身没问题(上面已审),只是清单没列到;发布说明里建议补一句。

④ 可选加固(非阻塞)

ci-e2e.yml 是 manual-dispatch only,这个 PR 不会自动跑 e2e。本版本里 #1284/#1290 都动了 src/server.ts 的路由路径,若想要额外把握,可在合并前后手动触发一次 E2E workflow;常规 typecheck/test/build 由 CI 覆盖。

结论:本版本引入回归:0 处;行为变更 8 类(均已在上表列出旧值→新值与原因,其中 wire shape 与 #1284 的 400→relay 建议在发布说明中显式提及)。可以合并。

@ranxianglei
ranxianglei merged commit bc880b5 into master Sep 25, 2026
9 checks passed
ranxianglei added a commit that referenced this pull request Sep 25, 2026
ci: auto-trigger codex e2e on request-pipeline PRs (#1296 note-4 hardening)
antclt pushed a commit to antclt/billion-context that referenced this pull request Sep 25, 2026
@github-actions github-actions Bot mentioned this pull request Sep 25, 2026
@ranxianglei
ranxianglei deleted the 2026-09-25_release-v0.1.148 branch October 15, 2026 05:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant