Skip to content

Commit 26975e7

Browse files
committed
release: v1.16.4 audit fixes and recovery hardening
1 parent e501ba6 commit 26975e7

72 files changed

Lines changed: 2458 additions & 385 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
matrix:
1919
include:
2020
- os: ubuntu-latest
21-
node: 18.x
21+
node: 18.17.0
2222
- os: ubuntu-latest
2323
node: 20.x
2424
- os: ubuntu-latest
@@ -52,7 +52,7 @@ jobs:
5252
- run: npm run test:audit
5353

5454
website-package:
55-
name: Website and package (Node 22.14)
55+
name: Package boundary (Node 22.14)
5656
runs-on: ubuntu-latest
5757
steps:
5858
- uses: actions/checkout@v6
@@ -61,11 +61,5 @@ jobs:
6161
node-version: 22.14.0
6262
cache: npm
6363
- run: npm ci
64-
- if: ${{ hashFiles('website/package-lock.json') != '' }}
65-
run: npm ci --prefix website
66-
- if: ${{ hashFiles('website/package-lock.json') != '' }}
67-
run: npm --prefix website run build
68-
- if: ${{ hashFiles('website/package-lock.json') != '' }}
69-
run: node scripts/check-generated-site-links.js
7064
- run: npm run release:dry-run:all
7165
- run: npm run test:pack-clean

CHANGELOG.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,17 @@
11
# 变更日志 (CHANGELOG)
22

3-
> **说明**: 版本概览摘要。最新版本的详细变更见下方表格首行的 `changelogs/releases/vX.Y.Z.md` 链接;历史版本见对应详细变更文件
4-
> **最后更新**: 2026-08-04
5-
> **当前未发布**: v1.16.3 已归档;后续未发布实现继续记录到 [`changelogs/unreleased.md`](./changelogs/unreleased.md)
3+
> **说明**: 版本概览摘要;历史版本见对应详细变更文件。
4+
> **最新版本详细变更文档**: [`changelogs/releases/v1.16.4.md`](./changelogs/releases/v1.16.4.md)
5+
> **最后更新**: 2026-08-05
6+
> **当前未发布**: v1.16.4 已形成发布候选并归档到版本详情;后续未发布实现继续记录到 [`changelogs/unreleased.md`](./changelogs/unreleased.md)
67
78
---
89

910
## 版本概览
1011

1112
| 版本 | 日期 | 变更摘要 | 详细 |
1213
|------|------|---------|------|
14+
| [v1.16.4](./changelogs/releases/v1.16.4.md) | 2026-08-05 | 🔧 **审计缺陷收敛与上下文恢复修复**:修复 ProjectKnowledge 越界、SkillRoute/ContextRead 三次无进展循环、Memory 与 Profile 边界;增加 MCP/宿主有界 I/O、关键风险映射、验证 DAG 分层和安全审计证据闭环 | [查看](./changelogs/releases/v1.16.4.md) |
1315
| [v1.16.3](./changelogs/releases/v1.16.3.md) | 2026-08-04 | 🔧 **SkillRoute 无恢复循环与滚动升级修复**:不可执行旧路由自动退役并在下一轮重建;运行中会话与更新后新会话安全分流,ContextRead 仅迁移受支持的上一版本契约;Profile、memory、索引和治理台账同步加固 | [查看](./changelogs/releases/v1.16.3.md) |
1416
| [v1.16.2](./changelogs/releases/v1.16.2.md) | 2026-08-03 | 🔧 **ContextRead 回执耐久化与用户任务教程**:独立来源观察账本抵御 Hook/MCP 交错覆盖,修复空会话标识重放冲突;README 增加常见任务提示词与只读 CLI 帮助 | [查看](./changelogs/releases/v1.16.2.md) |
1517
| [v1.16.1](./changelogs/releases/v1.16.1.md) | 2026-08-03 | 🔧 **长会话提示有界化与项目绑定稳定性修复**:治理候选仅投影当前消息,历史状态有界压缩且新会话隔离;同会话项目绑定不再超时,唯一项目短名与 CLI 解析保持一致 | [查看](./changelogs/releases/v1.16.1.md) |

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ DevCodex 把这些能力组合成一个本地工作流入口:先理解当前
100100

101101
### 系统要求
102102

103-
- Node.js `>=18`
103+
- Node.js `>=18.17.0`
104104
- npm
105105
- 至少一个受支持的 AI 编程宿主:Codex、Claude Code、GitHub Copilot、Gemini CLI 或 Grok
106106

RULES.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# DevCodex v1.16.3 — 使用入口
1+
# DevCodex v1.16.4 — 使用入口
22

3-
> AI workflow injector for Copilot / Claude Code / Codex / Gemini / Grok · publisher: Rocky · version: 1.16.3
3+
> AI workflow injector for Copilot / Claude Code / Codex / Gemini / Grok · publisher: Rocky · version: 1.16.4
44
55
## 正式主支持客户端
66

changelogs/releases/v1.16.4.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# v1.16.4
2+
3+
> 发布日期:2026-08-05
4+
> 类型:Patch
5+
6+
## 摘要
7+
8+
本版本修复全项目审计及候选实机验证确认的 14 个缺陷,并收口 8 项验证、发布与运行时优化。重点解决 ProjectKnowledge 链接越界、SkillRoute 晚到阶段与上下文恢复循环、Memory 锁和日期边界、Profile/发布事实失真,以及 MCP/宿主 stdio 无界等待问题。
9+
10+
## 主要修复
11+
12+
- ProjectKnowledge 对真实路径执行项目根 containment;Windows junction、Unix symlink 和运行态目录不能绕过库存边界,根内 canonical 路径保持稳定。
13+
- SkillRoute 在晚到 mandatory conditional 出现时会重新打开 closeout,不再让已完成标记饿死条件阶段。
14+
- 修复截图所示的 `CONTEXT_BINDING_MISMATCH` 三次无进展循环:同一宿主会话只采纳同项目且时间更新的 ContextRead 投影,旧 session snapshot 不再覆盖 MCP/SkillRoute 刚写入的活动状态;待完成 route 允许只读 `profile_context_plan` 主动刷新绑定,其余读取仍等待明确 rebind;跨会话保持严格隔离。
15+
- SkillRoute 的 runtime contract digest 覆盖协调器、namespace 与宿主可达运行时依赖闭包;关键依赖变化后旧 PASS 能力证据会失效,不能再伪装为当前运行时证据。
16+
- Memory writer lock 增加 host/token 身份、死 PID 原子接管和 token 释放保护;不存在的日历日期在 read/write/allocate 入口统一拒绝。
17+
- 损坏的 Profile 配置不再静默回退;当前版本、发布事实、功能状态与验证 DAG 计数由结构化真相源校验。
18+
- checked-command 允许合法 JSON 数组参数,同时继续拒绝具有路径语义的 bracket glob。
19+
- Node 最低版本统一为 `>=18.17.0`;公共 CI 使用精确最低版本 lane,并把公开 package 证据与维护者 website 证据分离。
20+
- 未加 scope 的 `devcodex` 不再把 GitHub Packages dry-run 伪报为成功;registry `all` 仅执行当前包身份实际支持的 npmjs 路线。
21+
22+
## 稳定性与验证优化
23+
24+
- Profile/Memory MCP 共用有界 JSON-line transport:frame/message 最大 4 MiB,请求 deadline 30 秒;溢出或超时返回稳定错误码,丢弃损坏帧后仍可处理下一条合法请求。
25+
- lifecycle host adapter 同步限制 stdin、child stdout/stderr 和 30 秒子进程等待,避免宿主边界无限占用内存或卡死。
26+
- 新增 `CriticalRiskCoverageMapV1`,把 BUG-01~BUG-14 绑定到源码 owner、可执行验证节点、负向标记和 Windows/Unix 平台矩阵。
27+
- 验证 DAG 调整为 manifest 94、fast 83、full 92、profile-deploy 59、package-release 71;fast 移除发布级重型集成节点,但保留所有审计缺陷的权威负向探针。
28+
- 原生候选包只生成一次,并把同一 tarball 交给 registry dry-run、隔离安装和发布验证,避免不同候选之间的等价性假设。
29+
- 在线安全审计仅对传输错误、无效响应或异常空结果最多复核 3 次;持续的非空漏洞结果立即失败,原始 stdout/stderr、摘要、registry 和时间戳进入证据文件。
30+
- GHSA-qwww-vcr4-c8h2 继续使用到 2026-08-15 的有界例外:官方公告的修复版本为 react-router 8.3.0,但当前 `@rspress/core` 依赖链没有兼容的 react-router-dom 8.3.0 可安装版本;到期前必须重新评估。
31+
32+
## 兼容性
33+
34+
- 安装、更新、初始化和卸载命令不变。
35+
- 不新增第三方依赖、后台服务、网络监听或常驻 daemon。
36+
- 当前打开的旧版会话不会被强制终止;安装 v1.16.4 后需新建或重启会话,才能使用新的宿主运行时与上下文恢复修复。
37+
38+
## 验证范围
39+
40+
- BUG-01~BUG-14 定向正负向回归、关键模块覆盖率和三轮零新增复审。
41+
- fast、full、package-release、在线 security audit、唯一候选 pack/dry-run 与隔离安装闭包。
42+
- 候选运行时真实跨工具 ContextRead → SkillRoute rebind → load-stage 探针,专门验证截图中的三次无进展问题不再复现。
43+
44+
## 发布说明
45+
46+
- npm 包名:`devcodex`
47+
- registry:`https://registry.npmjs.org/`
48+
- 发布分支:`main`
49+
- 发布路径:main CI 全绿后创建 tag `v1.16.4`,由 tag workflow 发布 npm 包,并创建 GitHub Release

changelogs/unreleased.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
# 未发布变更(Unreleased)
22

33
> **用途**: 记录尚未正式发版的实现级变更。
4-
> **当前**: v1.16.3 已归档到 `changelogs/releases/v1.16.3.md`;本文件仅保留历史锚点索引与镜像供 validate 探针消费。发版后新实现再写入下方「当前未发布」。
4+
> **当前**: v1.16.4 已形成发布候选并归档到 `changelogs/releases/v1.16.4.md`;本文件仅保留历史锚点索引与镜像供 validate 探针消费。发版后新实现再写入下方「当前未发布」。
55
66
## 当前未发布实现候选
77

8+
- **v1.16.4 发布候选已归档**:14 个审计与候选实机验证缺陷、8 项运行时/验证优化、截图所示 ContextRead/SkillRoute 三次无进展恢复修复,以及有界 MCP/宿主 I/O 与安全审计证据闭环已进入 `changelogs/releases/v1.16.4.md`;远端发布事实仍以 tag、npm registry 和最终回读为准。
89
- **v1.16.3 已归档**:Profile 目标解析、memory 会话写入绑定、SkillRoute 不可执行旧路由退役、ContextRead 上一版本兼容、宿主运行态滚动升级、索引证据和治理台账完整性修复已进入 `changelogs/releases/v1.16.3.md`
910
- **v1.16.2 已归档**:ContextRead 来源回执耐久化、空会话标识重放修复、README 常见任务教程与 CLI 只读帮助已进入 `changelogs/releases/v1.16.2.md`
1011
- **v1.16.1 已归档**:长会话提示有界化、会话治理状态隔离、项目绑定稳定性与唯一短名解析修复已进入 `changelogs/releases/v1.16.1.md`

content/duplication-inventory.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"schemaVersion": "ControlContentDuplicationInventoryV1",
3-
"sourceBundleDigest": "065674a2dcb5e9fcc54a0e121d676beed074fd450db1d2c7fcc2728216273ac3",
3+
"sourceBundleDigest": "89392aa90356d8f75c56d9cbf38117da6457231764f98caea0934b75abd6899a",
44
"thresholds": {
55
"minParagraphChars": 100,
66
"sectionThreshold": 0.94,

content/instructions/00-safety.instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
applyTo: "**"
33
description: 安全底线与输出语言规则,定义 S01~S07、违规处理与不可豁免边界
44
priority: P2
5-
version: 1.16.3
5+
version: 1.16.4
66
---
77
# 安全底线规范(S01~S07)
88

content/instructions/01-common.instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
applyTo: "**"
33
description: 通用规范总则,覆盖优先级、意图路由、Profile/active-root、宿主适配与治理总线
44
priority: P5
5-
version: 1.16.3
5+
version: 1.16.4
66
---
77
# 通用规范
88

content/instructions/01a-profile-loading.instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
applyTo: "**"
33
description: 意图驱动的 Profile 加载、active-root 路径、目标项目识别与项目现实扩展规范
44
priority: P5
5-
version: 1.16.3
5+
version: 1.16.4
66
---
77
# Profile 加载与项目现实扩展
88

0 commit comments

Comments
 (0)