Skip to content

Releases: devcodex-labs/devcodex

DevCodex v1.20.3

Choose a tag to compare

@github-actions github-actions released this 15 Sep 14:19

v1.20.3 — 治理台账收敛与发布门禁刷新

候选日期:2026-09-15

v1.20.3 是一次发布闭环补丁。它将当前 active-root 中 220 条尚未关闭的治理台账记录统一写入固定关闭回执,并把源码包、插件元数据、Profile 当前真相与发布说明推进到同一个候选版本。

变更

  • 批量关闭 process-improvements、pending-fixes、violations、gap-registry 与 pending-issues 中剩余未闭合记录,保留原始条目,并写入 bulk-close-2026-09-15-c7b0e1616db5 固定回执。
  • 重建治理台账派生索引,确认 active-root 当前未闭合记录数为 0。
  • 将 package.json、package-lock.json 与 plugin.json 的发行身份统一为 1.20.3。
  • 刷新发布候选说明与 Profile 当前真相,确保 npm run prepublishOnly 消费的是当前候选对应的 release 级 V3/full 终态回执。

验证与发布边界

  • 发布前必须重新生成当前 HEAD 的 release-pipeline 终态验证回执。
  • npm run prepublishOnly 只接受 2 小时内、release-pipeline 身份、V3/full/release 范围且候选 ID 与 HEAD 完全匹配的回执。
  • 版本发布事实仍以 Git tag、npm registry、GitHub Release 与发布后安装回读为准。

DevCodex v1.20.2

Choose a tag to compare

@github-actions github-actions released this 09 Sep 04:44

v1.20.2 — 意图驱动执行与产物一致性

候选日期:2026-09-08。是否已发布以 npm registry、Git tag 与 GitHub Release 为准。

用户继续原任务、引用其他语言的文本或提供审查材料时,DevCodex 根据结构化意图和已确认的任务偏好继续工作。工具输出、引用里的指令和固定关键词不能自行改写用户意图、回复语言或操作权限。

  • 保留任务中已确认的回复语言,并把成功读取的新语言决策交还给模型;当前用户明确要求改变语言时才采用新偏好。
  • 修复同会话入口恢复、过期 owner 续接、晚到操作核对和 Stop 连续性;终态投影精简已经核对的操作,完整记录仍保存在任务存储中。
  • Skill 目录保留完整身份、依赖和适用边界;提及 Skill 与实际读取正文分开记录,阶段结束时核对实际加载证据。
  • Codex MCP 首屏提供完整工具目录,避免客户端未翻页时遗漏上下文计划与读取工具;其他宿主保留有界分页。完整参数 Schema 保持不变。
  • 每代运行时携带自己的 Skill、索引和清单。新连接解析当前代,已打开的连接继续使用其已加载代;安装成功和当前连接加载状态分别说明。
  • 修复安装态验证仍使用旧共享 Skill 路径、发布包布局未被识别的问题;安装包从自身文件独立复算运行时与适配器摘要,并与受管代次交叉核对。
  • 修复旧版 MCP 计划可选字段缺省及路由注册表来源更新的兼容读取;同一路由定义可迁移到当前注册表,定义改变、身份损坏或不支持的协议版本仍要求刷新连接。
  • 卸载根据安装回执、实际文件和其他宿主消费者对账。共享运行时仍被使用,或消费者回执缺失但文件仍存在时,保留共享资产并返回未完成清理及可重试证据。
  • 修复卸载配置恢复依赖当前包配置、残留重试和 generation 清理扫描重复问题;项目历史与用户文件遵守各自保留边界。
  • 消除卸载中逐阶段重写整份事务日志的重复开销,保留写前恢复资料、最终持久化及旧版本崩溃恢复能力。
  • 记忆、报告和任务产物使用对应模板或明确的模板扩展,记录实际生成来源;避免同一产物槽重复生成。
  • 修复 MCP 链接工具公开状态与底层校验器不一致的问题;共享同一状态词表,未核实点击能力时保留可移植链接及真实证据状态。
  • 模板结构检查与用户意图满足度分别留证。历史产物对比新版模板得到诊断结果,不回填虚假的历史生成依据,也不批量改写历史报告。
  • 修复安装态准入测试读取源码专用模板路径的问题;普通安装回归与正式包资格检查均执行安装后的生产者及负向用例。
  • 检查优化任务目录,记录有界扫描未覆盖的范围;包含流程简称的正文不能让整个任务跳过检查。
  • 实际隔离 Codex CLI 探针核对工具调用、上下文重绑和业务文件;协议探针、自然语言业务结果、模型自述与外部宿主拒绝分别记录。
  • 发布说明文字可以使用任务要求的语言;Profile 生命周期校验采用结构化状态和实际发行证据,不再要求英文前缀。Windows 兼容检查按独立任务分组,保留原有完整检查范围。
  • 更新用户说明、Profile 功能证据、验证清单和发行包依赖,补充跨会话、跨 generation、缺失回执与错误证据的负向回归。
  • 同步公开站点生成数据和运行代次候选日期;更新覆盖率工具链的 brace-expansion 兼容补丁,并补齐移除文本路由后的协议消费者回归。

真实宿主受外部条件限制而未完成的业务验收保持 UNVERIFIED,不能从单元测试、协议探针或安装结果推断通过。更新后,已经打开的宿主连接也须单独确认是否加载新运行时。

DevCodex v1.20.1

Choose a tag to compare

@github-actions github-actions released this 07 Sep 19:30

v1.20.1 — 任务写入与运行时恢复

发布日期:2026-09-07。是否已发布以 npm registry、Git tag 与 GitHub Release 为准。

模型使用等价标题、遗漏登记字段或遇到过期工作流元数据时,DevCodex 记录警告并恢复原任务。模板质量结果与真实写入回执分别保留,避免保存内容或继续修订被内部格式要求挡住。

  • 修复首次 CP1 对已确认 CP1 的循环依赖,以及待确认状态的恢复读写口径。
  • 恢复候选按独立身份保存,读取已提交引用;基于精确任务和真实宿主恢复入口与 owner 续期,保留并发冲突与未知副作用。
  • Windows 文件身份采用同类文件句柄 API 和无损 inode/device 表示,兼容数字 Stats 的时间戳行为;真实替换仍触发 CAS 冲突。
  • 支持原生 apply_patch 对多个记忆文件追加,覆盖定位提示与 LF/CRLF;当前草稿可在保存后继续修补,恢复记录保留草稿归属。
  • 晚到工具结果归入原操作,保留另一正在运行的租约。待核对的操作在压缩恢复后继续存在,缺少效果证据不会被记为零副作用。
  • 简单任务多次写入后的恢复记录保持在存储预算内,保留已经消费的租约回执和草稿归属。
  • 已实际派发的操作可在租约过期或入口刷新后核对回执;派生入口快照失败保留已经提交的任务状态并记录警告。
  • 内部形式缺项不再强制 Stop 循环;Grok 桥接对内部旧拒绝格式输出继续提示,异常与子进程超时有界处理。
  • 当前明确语言要求优先于历史推断;引用、否定与短确认不会轻易改写任务语言。
  • 记忆写入可根据真实宿主和唯一任务补齐会话编号及绑定,重复分配幂等;SUMMARY 支持结构化条目。
  • 更新后继续原任务;已发布版本、磁盘安装与当前宿主连接加载分别验证,不将安装成功宣称为已加载新运行时。
  • Windows 验证子进程等待父进程实际接收最终回执后再关闭通道,避免成功结果丢失而误记为中断。
  • 修复真实宿主安装验收的隔离环境丢失 PATH,并在耗时探针前检查 Codex 可执行文件及版本。
  • 真实宿主验收分开记录已知运行态副作用和未知变化;原生探针被宿主拒绝时保留未验证事实,继续独立的正式任务验收,不改权限、不重试被拒绝的探针或虚报写入成功。

这些恢复行为不覆盖宿主拒绝,不猜测冲突目标,不把保存草稿或未知副作用宣称为任务完成。

DevCodex v1.20.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 21:31

DevCodex v1.20.0

发布日期:2026-09-06

v1.20.0 是一次面向长任务可靠性的控制面升级。它让正式任务的写入、恢复、项目上下文、语言、Skill 路由、并行编排和验证收敛使用同一组可恢复、可审计且以人类阅读为主的合同。

核心能力

  • 跨会话任务连续性:任务检查点使用 epoch/generation 与 CAS 围栏;正常 CP 推进和需求文档演进可生成安全后继代次,不再把首次准入摘要当作永久不可变化的唯一真相。
  • 异常恢复不形成永久死锁:无 taskId、owner 过期、终端续办、compact、冷恢复和候选漂移均有有界恢复或明确降级路线;旧 owner、旧 nonce、迟到写入和身份冲突仍被隔离。
  • 项目优先的 Profile:识别到真实项目但缺少 Profile 时保持项目绑定并提供原子初始化;只有工作区没有可识别项目时才回退到 .devcodex/workspace。缺失、草稿、已审查与局部无效状态分开呈现。
  • 语言连续性:LanguageContextV3 综合当前消息、任务上下文、持久偏好与短确认语义;中文任务回复“确认”后不会无故切换英文。workspace/project 可配置固定语言或自动推断。
  • 可扩展 SkillRoute:项目、workspace 与内置 Skill 分层解析;目录规模增长时先加载元数据短名单,再按需精确分页正文。用户自定义 Skill 不受固定五页或小数量上限约束,冲突、循环、超限和 TOCTOU 失败保持局部化。
  • 宿主原生多 Agent 编排合同:根 Agent 负责计划、隔离、租约、取消、证据汇合和最终写入;源码子任务要求独立 worktree,共享 CP、记忆、报告、Profile、package 和发布面保持单写者;宿主不支持时安全退回串行。

关键修复

  • 正式任务在 finalized 后因合法概况变化触发 FINALIZED_TASK_RESUME_CANONICAL_DRIFT 的阻断路径已改为受验证的 G(n+1) 续代。
  • 默认项目绑定不再误落到 DevCodex 自身项目;缺项目 Profile 不再导致任务准入或只读工作永久阻断。
  • 正式产物写入绑定 canonical 模板、槽位、摘要、必需章节与写后回读,同时允许在受控扩展点增加人类需要的内容。
  • 用户可见响应、报告和进度以人类结论为主;大体量机器证据保留在索引和证据层,不再倾倒到主阅读面。
  • 历史 audit-state 按 current、legacy、non-audit、unsupported 和 invalid 分型;历史字节保持不变,当前无效状态仍严格失败。
  • Profile 分节读取按同一 source digest 累计全部必需标题,单节命中不再错误标记完整。
  • Windows 上产物决策、任务操作校验与恢复统一使用同一目标身份算法;压缩恢复通过路径表保存封存后的 canonical 目标集,8.3 短路径、真实路径、大小写或词法别名不再造成目标摘要误漂移并阻断合法写入与恢复。
  • 验证修复期新增 RepairConvergenceStateV1:先冻结完整问题集、批量修复,再统一 affected;独立失败一次收齐,相同绿色候选零执行复用,避免每修一个问题就重跑近全量。
  • 验证执行支持有界并发、候选证据缓存、关键路径 ETA 与项目 .tmp 临时数据治理;发布、安全、恢复、真实宿主与共享状态节点继续现场验证。

兼容性与边界

  • 无新增第三方运行时依赖、数据库迁移、端口或常驻服务。
  • 旧 TaskRecovery、ContextRead、SkillRoute、LanguageContext 与 Profile 状态继续按已登记的兼容路径读取;新写入只使用当前 schema。
  • DevCodex 只校验任务、项目、范围、代次和证据等工作流有效性;文件、命令、删除及工具调用权限继续由实际宿主和用户配置决定。
  • 多 Agent 是能力相关的编排合同,不假设所有宿主都提供相同原生能力;缺失能力时保持串行与诚实的 UNVERIFIED 上限。

发布验证范围

  • 源码静态检查、控制面定向回归、Profile/历史兼容、完整 V3 与安全审计。
  • tag 阶段只生成一个正式精确 tarball,并先完成独立 consumer/HOME/npm prefix/cache/workspace 安装验收。
  • 本机真实 Codex 宿主复用该同一 tarball 完成 G1→G2、异常恢复、负例与精确清理后,才触发 publish-qualified 续发。
  • exact-head GitHub CI、annotated tag、npm provenance、GitHub Release、registry 摘要与发布后全局安装回读。

升级后建议运行 devcodex global-adapters apply 刷新用户级宿主适配器,再在目标项目执行 devcodex status 与 devcodex doctor --json 对账安装版本、runtime generation 和 Profile 状态。

DevCodex v1.19.5

Choose a tag to compare

@github-actions github-actions released this 29 Aug 19:18

DevCodex v1.19.5

发布日期:2026-08-30

v1.19.5 是正式任务状态连续性的 P0 补丁。它关闭 v1.19.4 尚未覆盖的真实象限:任务已有 TaskIdentityV2 与已确认 CP,admission 已 finalized,旧 fenced owner 已过期或被安全释放,而 fresh resume 因旧幂等绑定无法取得新的 admission/owner,导致任务永久卡住。

关键修复

  • finalized fresh resume 原子恢复:memory_task_admit_v2(bind|adopt + continue) 接受 fresh selected resume ingress 或等价 ContextReadBindingV1,服务端生成 authority=false 的有界候选,并在一次 TaskRecoveryStoreV5 CAS 中同时创建 admissionGeneration+1 与 ownerGeneration+1。
  • 任务状态与写入租约分离:任务身份、概况、CP、报告、记忆和检查点不设 owner TTL;fenced owner 的默认空闲租期缩短为 5 分钟。租约过期只撤销旧写入权,不删除或终结任务。
  • Stop/PreCompact 生命周期收口:hard-blocked Stop 不再错误标记 turn terminal 或释放 owner;accepted Stop 在无 in-flight operation 时立即停放 owner;PreCompact 只 checkpoint/按需续租;同会话下一次精确继续可用新 fence 自动重取。
  • 单赢家与响应丢失幂等:两个 fresh session 并发接管时只有一个 V5 CAS 成功;同一 attempt 在响应丢失后重放会回读同一 admission、owner 和 ingress,不会创建第二 owner。
  • 公共失败出口:owner 未过期、旧 turn/operation 仍 live、side effect unknown、TaskIdentity/overview/CP/project/runtime 漂移、终态任务与 CAS loser 均 typed fail closed,并返回等待、对账、修复、reopen 或读取赢家的下一步。
  • 候选缓存治理:resume ingress candidate 使用单目录 writer lock、10 分钟 TTL、精确过期清理、单文件 512 KiB 与 128 个活跃候选上限;超限或锁竞争返回 typed capacity/lock 错误。
  • 状态语义修复:admission phase/status=finalized 不再污染 TaskRecoveryBindingV1.status;所有非终态 fenced owner 对应业务任务状态均为 active,避免重开或续接选择错误 V5 分区。

兼容性与安全边界

  • 这是向后兼容 patch;没有新增第三方依赖、数据库迁移、端口或常驻服务。
  • v1.19.4 写出的、尚无 resume capability 字段的 V5 状态仍可读取;旧 generation/owner nonce 不能获得新权限。
  • 恢复不会重写 TaskIdentity、canonical overview 或 CP artifact。只有 canonical 回读一致、旧 turn/operation 已安全结束且新 owner active 时才返回 mutationAuthority=true。
  • terminal task 仍必须显式 reopen;当前 owner 尚有效或旧副作用未知时不会用“提高可用性”为理由放宽 fencing。

验证重点

  • finalized × owner 状态 × turn/operation/liveness × fresh session 的交叉矩阵;双 session 单赢家与 response-loss replay。
  • normal hook ingress 与 ContextRead fallback;返回 ingress 的 owner renew 和下一次 mutation preflight。
  • accepted/hard-blocked Stop、PreCompact、同会话 reacquire、终态 reopen 与任务/admission 状态分离。
  • candidate authority=false、锁/TTL/容量、v1.19.4 reader、旧 nonce/generation 拒绝与 runtime rolling upgrade。
  • affected、最终 full/package-release、exact-head required CI、npm provenance、GitHub Release 与本机全局安装回读。

恢复现有任务

升级并刷新宿主 adapter 后,在目标项目中新建会话并发送 继续 <准确任务名>。成功回执应显示新的 admission/owner generation、active owner 与标准 ingress;不需要重复确认已持久化且未漂移的 CP。若返回 typed block,按回执给出的等待、对账、修复或 reopen 步骤处理,不要复用旧 owner/nonce。

DevCodex v1.19.4

Choose a tag to compare

@github-actions github-actions released this 29 Aug 11:11

DevCodex v1.19.4

发布日期:2026-08-29

v1.19.4 汇总发布 v1.19.3 之后已进入 main 的自适应流程、入口可见性、Profile 目标、CI 与发布恢复改进,并修复 Codex Desktop 实机暴露的 admission→owner 跨会话死锁。截图中的 nested MCP 回执桥接已在 1.19.3 当前 Desktop 回合直接复证正常;本版本关闭的是桥接之后暴露的独立 P0:旧 admission 停在 cp-state-written 且 owner 仍 pending 时,新可信会话既不能复用旧 root binding,也无法创建新 admission。

关键变更

  • 自适应流程与入口计划:WorkflowPlanDecisionV1 将流程仪式、方案深度、验证等级和强制义务分离;优先级固定为用户当前明确意图、Profile 配置、项目事实智能识别、产品回退。入口升级到 PC0~PC10,展示版本、流程/方案、验证预算、后续阶段和唯一用户动作。
  • 上下文语言与产物交付:短确认码、yes/no、版本、路径和引用不再误切对话主语言;Codex Desktop 的可见产物使用真实本地文件 action/readback,失败时降级为明确路径。
  • 显式 Profile 目录直通:手动 init --profile <namespace> 接受 workspace 内真实存在的目录,包括空目录和无项目标记目录;自动发现、别名歧义、越界、文件目标与 runtime-only namespace 仍保持原有拒绝边界。
  • 按影响范围执行 CI:普通 push/PR 复用验证影响图选择 affected 或 package boundary;planner 无法证明范围、nightly、手动 full 和 release 才升级。required aggregate 校验实际节点回执,已发布同版本只在普通 package boundary 中按显式合同处理。
  • 发布与 finalize 解耦:精确候选资格、不可逆 npm publish 和可恢复 registry/GitHub finalize 分为三段;publish 后立即保存不可逆回执,传播延迟或可选 gitHead 缺失不再诱导重复发布。
  • awaiting-owner 安全接管:新增 TaskAdmissionRecoveryV1。只有旧事务处于 cp-state-written/admitting、owner pending、无 fenced owner、无有效 continuation lease,且 project/task/kind/relative root/V2 identity/admission policy/canonical overview family 全部一致时,adopt|bind + continue 才可建立 generation+1 的新 admission。
  • canonical truth 防篡改:接管前重新读取并验证任务 identity、概况、CP 状态及产品提供型 01-产品需求.md;当前消息不能替换已有真相文件。旧事务摘要保存为 PreviousTaskAdmissionTransactionRefV2,支持审计而不恢复旧 authority。

行为与兼容性

  • 这是向后兼容的 patch;没有新增第三方依赖、数据库迁移或常驻服务。
  • 恢复 receipt 只增加可选 recovery 投影;现有 admission/owner 调用方不需要迁移。
  • 有效 continuation lease、已有 owner、任务或项目漂移、canonical 文件漂移和非法 recovery 元数据继续失败关闭。
  • DevCodex 仍不签发宿主文件或命令权限;本版本只修复工作流身份与恢复有效性。

验证重点

  • admission 定向回归:100 次重复 ingress、8 个 crash phase、跨会话/root identity 刷新、active/expired continuation lease、canonical overview、产品需求原文篡改、恢复 schema 与 owner finalize。
  • Profile 空目录/无标记目录与所有非法目标的 CLI、lifecycle 和 sticky binding 回归。
  • WorkflowPlan、LanguageContextV2、ArtifactDelivery、CI planner/required aggregate 与 publish/finalize replay。
  • exact-head GitHub CI、唯一 qualified tarball、npm provenance、GitHub Release 资产、registry 后验收和本机全局安装 R7。

发布身份

  • v1.19.3 tag、npm 版本与 GitHub Release 保持不可变。
  • 本版本使用新的 v1.19.4 annotated tag、npm provenance 和 GitHub Release。
  • 发布完成后以 tag peeled commit、exact-head CI、registry tarball、GitHub Release 资产与本机 CLI 的同一版本证据链验收。

DevCodex v1.19.3

Choose a tag to compare

@rockyshi1993 rockyshi1993 released this 28 Aug 07:59

DevCodex v1.19.3

发布日期:2026-08-28

v1.19.3 是确认持久化与正式任务 owner 的 P0 修复版本。它解决用户已经确认同一候选后,taskless ingress 在读取、工具事件、状态投影或恢复过程中丢失,进而再次要求确认或无法进入正式任务的问题;同时统一 CP 确认 writer 与 owner reader 的 artifactPath 契约。

关键修复

  • 确认上下文可恢复:TaskRecoveryStoreV5 在尚未绑定 formal task、也没有 operational write lease 时,仍有界保存实际指令 envelope、work-item set、route decision、plan binding 与 project lease,并用相互摘要、TTL、项目和 route 关系重新验证。
  • 超限不假恢复:恢复内容超过固定槽预算时降级为 identity-only,显式撤销 instruction/admission authority;系统宁可要求重建上下文,也不会把不完整身份投影当成已确认权限。
  • 生命周期投影不再丢 live state:TaskRecoveryStore 返回 semantic no-op 时仍刷新 lifecycle live projection,避免持久层“内容未变”被误解为内存态“无需更新”。
  • CP writer/owner 契约统一:memory_cp_confirm 投影到 .memory/sessions.md 的安全 Markdown 相对链接可被 task-admission-authority 直接消费;reader 仍要求单层任务根回退、禁止绝对路径/盘符/查询片段/二次穿越,并复核普通文件、稳定身份和 SHA-256。
  • 防重复确认专项快测:新增 npm run test:confirmation-persistence,把 store 单元恢复与真实 lifecycle 丢投影恢复串成 30 秒内的独立 P0 回归入口,修复此类问题无需等待完整发布测试才能得到首个反馈。

行为与兼容性

  • 用户对同一候选的有效确认、route 与项目绑定未漂移时,读取和普通工具事件不会让确认失效,也不应再次询问同一确认。
  • 内容摘要、TTL、项目、route、任务根或文件身份不匹配时仍失败关闭;本版本没有放宽确认范围,也没有赋予 DevCodex 宿主文件/命令权限。
  • 这是向后兼容的 patch。现有 workspace、Profile、memory、任务、MCP 配置与发布工作流不需要迁移。
  • 没有新增第三方依赖、公共 API、配置项、数据库迁移或常驻服务。

验证重点

  • taskless exact recovery、identity-only fallback、篡改/过期负向用例与固定槽大小边界。
  • 实际 lifecycle 在 projection 丢失后的只读事件恢复,确认 envelope、work-item 与 route 摘要保持一致。
  • 新 V2 任务使用 writer 风格 Markdown CP1 链接后可成功取得 fenced owner;legacy time-only 与非法路径测试继续通过。
  • 版本一致性、Profile、完整测试、release audit、package completeness、exact pack、隔离消费者、exact-head CI 与发布后 R7。

发布身份

  • v1.19.2 tag、npm 版本与 GitHub Release 保持不可变。
  • 本版本使用新的 v1.19.3 annotated tag、npm provenance 和 GitHub Release。
  • 发布完成后以 tag peeled commit、exact-head CI、registry tarball、GitHub Release 资产、全新消费者和本机 CLI 的同一证据链验收。

DevCodex v1.19.2

Choose a tag to compare

@rockyshi1993 rockyshi1993 released this 27 Aug 16:17

DevCodex v1.19.2

发布日期:2026-08-27

v1.19.2 是宿主权限归属与文件交付的修复版本。它不改变 DevCodex 的任务范围、项目/root/slot/retention 等工作流有效性检查,但彻底取消 DevCodex 对实际文件、命令、删除和工具操作的权限判断;是否允许操作只由当前宿主及用户的宿主配置决定。

关键修复

  • 操作权限完全归宿主:PreToolUse 与 PermissionRequest 在 lifecycle、可见输出 builder 和 Codex、Claude Code、Gemini、Copilot、Grok、Cursor adapter 三层统一为中立 advisory/no-output;不再生成 allow、deny、ask、block、permissionDecision 或权限用途的 continue:false。
  • 风险标签不再变成权限拒绝:DevCodex 仍可识别危险文本并输出 advisory/telemetry,但风险分类不会批准或阻止真实操作。只有精确目标、任务范围、项目/root/slot/retention 等工作流不变量缺失时,才返回 typed workflow-invalid。
  • 宿主感知文件入口:新增 HostLinkCapabilityDecisionV2,把实际宿主 hostSurface 与承载界面 presentationSurface 分离。Codex Desktop 使用原生文件面板;VS Code、Zed、WebStorm 优先使用各自 CLI;Codex CLI、Claude Code 与未知宿主使用可复制绝对路径。
  • 证据驱动降级:文件动作只有在当前 surface 有 direct evidence 时才声明可用;不能证明原生打开或 Markdown 可点时,会携带 fallbackReason 降级为 portable/plain/absolute-copy,不按宿主名称猜测能力。
  • 持久链接兼容:记忆与报告内部继续使用 LinkCapabilityDecisionV1 和 portable 相对链接;V2 只负责用户可见呈现与原生动作选择,不破坏既有持久化产物。
  • 派生消费者恢复一致:刷新六宿主 instruction projection、coverage/source digest 与 Skill portfolio,确保源码真相、生成消费者和 CI 使用同一候选身份。

兼容与迁移

  • 这是向后兼容的 patch。现有 workspace、Profile、memory、任务与 MCP 配置不需要迁移。
  • 如果用户希望允许或禁止某类操作,应在 Codex、Claude Code、Gemini、Copilot、Grok、Cursor 或承载 IDE 的原生权限配置中完成;DevCodex 不再提供第二套操作权限策略。
  • 升级后运行 devcodex global-adapters apply 可从当前安装刷新用户级多宿主 adapter;bare devcodex update 仍只维护 workspace .devcodex。

发布身份

  • v1.19.1 tag、npm 版本与 GitHub Release 保持不可变。
  • 本版本使用新的 v1.19.2 annotated tag、npm provenance 和 GitHub Release。
  • 发布完成后以 registry integrity/gitHead/provenance、tag peeled commit、GitHub Release asset digest、本机 CLI 版本与多宿主 adapter 回读共同验收。

DevCodex v1.19.1

Choose a tag to compare

@rockyshi1993 rockyshi1993 released this 27 Aug 07:30

DevCodex v1.19.1

发布日期:2026-08-27

v1.19.1 是 v1.19.0 发布失败后的收敛补丁。它保留 v1.19.0 已完成的任务所有权、TaskRecoveryStoreV5 与验证授权能力,并修复发布前深度审查发现的权限归属、上下文折叠、验证恢复和发布制品身份问题。

关键修复

  • 宿主拥有操作权限:文件、删除与命令执行权限完全交由宿主及其用户配置决定。DevCodex 不再签发危险操作 token、不解析自然语言批准,也不把风险分类投影为 permission deny;它只保留风险 advisory、任务范围和工作流有效性检查。
  • 危险文本不再误判为执行:搜索词、文档、补丁、commit message 与普通字符串中的删除/SQL 示例不会被当成实际命令;只有直接操作或显式 shell/SQL/eval 执行槽会产生 advisory。
  • Artifact 删除权限去重:ArtifactSlotDecision 只验证 slot、owner、任务范围和 destructivePolicy=forbid 保留不变量,不再依赖不可达的 destructiveConfirmed 影子权限。
  • 宿主 fallback 权限一致:Grok workspace bridge 删除本地 shadow deny;adapter 允许、缺失、失败、输出无效和 workspace 外都不再因危险文本覆盖宿主权限。task source material、task decision 与全部普通 project-root 内容槽统一为 host-owned delete permission。
  • SkillRoute 容量恢复:turn cache 不再把空崩溃目录或 writer 崩溃留下的 lock/temp-only owner 计为永久活跃 route;达到 high water 时只安全回收无业务义务终态或同会话已被后继 context 取代的未提交 route,并通过 grace、root/turn lock、writer allowlist、identity、quarantine/readback 防误删。其他会话未完成 route、protected、live lock、未知文件和身份异常继续失败关闭;正式任务数量无硬上限的 V5 合同不变。
  • ContextRead 稳定折叠:观察结果先持久化,再在 TaskRecoveryStoreV5 CAS 内读取完整 durable ledger;按计划顺序和确定性质量规则选择每个 source 的唯一结果,避免乱序/重复事件把 rebind 或 load_stage 拉回陈旧循环。
  • ManagedValidationRunner 可恢复:增加 node-start、30 秒持久化心跳和逐节点紧凑检查点;同一 run/candidate/plan/manifest/lease 下可验证成功前缀并精确续跑,候选漂移或检查点不匹配则失败关闭。
  • V5 Windows 写入韧性:派生的 singleton usage ledger 遇到 Windows EPERM、EACCES 或 EBUSY 时先执行有界重试;仍被瞬时共享锁占用时,只对可重建账本使用受 store lock 保护且必须精确 readback 的 copy fallback。正式 task hot A/B 槽不放宽为非原子 copy,EIO 等非共享故障继续失败关闭,hard-limit 预充仍须先于状态写入成功。
  • Windows writer lock 生命周期收敛:TaskRecoveryStoreV5、SkillRoute、WorkspaceSessionRouteIndex、derived index、workflow completion、runtime-generation GC 与全局宿主事务共用有界 sharing retry;全局宿主事务显式把 platform/retry budget 传到 journal-lock Owner,Windows sharing 正例与 Linux EPERM 失败关闭负例可在任意 CI 宿主确定性复现。record 写失败只清理本 writer 创建的半锁,release 回读 owner,unreadable owner 不再被误删,process.kill(pid, 0) 的 EPERM 继续代表 live owner。真实 EEXIST、lease/owner 冲突和 EIO 仍失败关闭。
  • 收敛优先验证:多问题和发布任务先冻结完整问题集、批量修复,再执行一次 affected 验证;runner 在失败后继续执行独立节点,用 failedNodes 一次收齐失败,只跳过依赖失败/阻断节点并记录原因,durable terminal projection 同步保留有界完整失败节点集合与紧凑摘要。只有最终候选冻结后才执行一次 release V3/full,禁止逐问题重复跑重型验证。
  • 控制中止原因完整:worker send、protocol、timeout、runner-state persistence 等控制面终止现在为每个尚未执行的节点写入 VALIDATION_CONTROL_ABORTED + controlCode,abortedNodes 与 abortedNodeReasons 始终一一对应,不再留下无法解释的中止清单。
  • 发布路由与工作区卫生闭包:test-router 现在显式记录 publish dry-run,并明确它不能替代 exact artifact、远端 CI、真实 publish 或 registry 后验收。release-verification 不建立影子权限判断,实际操作权限继续由宿主决定;发布流程自身不得自动删除、reset、checkout、stash 或覆盖无归属、用户或并行任务 dirty 状态。
  • 长任务验证根可安全续接:同一 Auto authority 的严格后继 root rollover 继续要求 level、purpose、节点、边界、heavy、副作用和全部预算完全一致;若晚于父终态的不同真实用户 Auto 指令形成 fresh control,则可在同 task/project/root/session/revocation、无 live lease、严格 Git 后继且仍为 V2 的条件下,为当前精确影响范围建立新 root,并保留父 root/terminal lineage。宿主 mutation closeout 不可用但修复已提交时,server-owned committed-repair-diff 可在 stable/clean、严格后继、父 scope 为当前子集且完整 diff 位于显式 changed scope 的条件下签发原 root 下的有界续权;它与 mutation observation 共用两次 retry、最多 3 个/5% 节点及 estimated/hard/log 5% 增量上限,不能新增 release consumer。已提交修复使用冻结 changed files,clean tree 不再退化成低覆盖计划。持久化 BudgetConfirmation 同时校验完整 ProjectRootIdentityV1 结构、digest 与 expected binding。
  • 发布对象唯一:release V3/full 完成后只执行一次 npm pack,生成 ExactReleaseArtifactReceiptV1,绑定候选、终态 receipt、tarball SHA-256/SHA-512/SRI 与 npm metadata;发布精确 .tgz 并回查 registry integrity、gitHead 和 provenance。
  • 站点边界:public-site 显式声明 ESM,并保留网站构建的本地依赖隔离与 Markdown 不进入 JS 语法校验的既有修复。
  • 发布状态读取纠偏:本轮发布与验证驱动按 exact activeRoot/project/taskId 读取 TaskRecoveryStoreV5 canonical A/B 状态,不再把可被其他会话覆盖的 lifecycle-state.json projection 当成授权真相。
  • durable fail-closed 可恢复:新增 server-owned memory_artifact_mutation_reconcile_v1,对 primary/emergency reserve 中的 exact operation、closeout CAS、same-session formal route 与实际文件系统效果复证;partial/零效果从 V5 预写快照重观察,reserve 额外绑定 decision/lease/footprint,压缩 projection 保留 recovered effects。它只关闭既有 pending 状态且不授予权限。任务准入的相同请求从 identity、overview/产品原文与 CP 的最大完整阶段前缀自动恢复并幂等补齐;漂移继续失败关闭。
  • Server-owned MCP 单一 Owner:四类 MemoryFileTransactionV1 writer 继续接受实际指令、project/session route 与入口时序校验,但不再被通用 artifact closeout 二次接管;task/operational/reconciliation 控制 Tool 不自消费后继 mutation authority。六宿主 direct、下划线/连字符、slash/双下划线 MCP 名称统一归一,第三方同名入口保持未知并失败关闭。
  • 恢复观察与租约边界加固:exact-target pre-observation 必须与原 footprint 集合完全一致,controlled-root 只接受声明根内的绝对后代;目录逐层读取真实 current path,文件使用 open/fstat/read/fstat/lstat 稳定 identity。Memory authority Tool 每次调用都重新验证 ProjectTargetLease 的 digest、safe-integer TTL/revocation、context/route、activeRoot 和 workspace 当前 physical root,删除 physicalRoot || INPUT_ROOT 扩根回退。
  • 正式任务与回执消费闭包:正式 reconciliation 必须携带 exact taskId,纯 artifact-link projection 保持 read-only;operational/simple/terminal observer 全部使用 server-aware canonical MCP leaf,slash、flat、连字符等官方宿主名称不会再丢失回执。

发布身份

  • v1.19.0 tag 保留为历史发布失败证据,不移动、不覆盖。
  • 本补丁使用新的 v1.19.1 tag、npm 版本与 GitHub Release。
  • 发布完成后,本机 CLI、六宿主 adapter 与 runtime generation 必须刷新到 v1.19.1,并以 fresh doctor/readiness 结果收口。

DevCodex v1.18.1

Choose a tag to compare

@rockyshi1993 rockyshi1993 released this 23 Aug 07:02

DevCodex v1.18.1

发布日期:2026-08-23
类型:Patch / TaskRecoveryStoreV5 诊断与维护预览一致性

发布摘要

v1.18.1 修复 v1.18.0 发布后深审发现的可观测性缺陷:当 TaskRecoveryStoreV5 的 usage ledger 仍是结构和摘要有效的 fresh 文件、但其 taskSlotBytes 与实际 A/B 槽扫描值发生可恢复漂移时,runtime doctor 会正确要求校正,旧 runtime maintenance --dry-run 却显示 actionCount=0,用户无法从预览确认 apply 的真实写入范围。

本补丁不改变按正式任务稳定 A/B、cold resume stub、terminal 退出缓存、256/512 MiB soft/hard、8 MiB closeout reserve 或 runtime generation retention 策略;也不删除任何 legacy lifecycle 文件或安装 generation。

修复内容(DR-37)

  • maintenance 在完整 task inventory 后比较 ledger 状态、ledger bytes 与扫描 bytes;需要校正时,无论 dry-run 或 apply 都投影 reconcile-usage-ledger 动作。
  • 动作包含 ledgerStatus、ledgerTaskSlotBytes、scannedTaskSlotBytes 与 ledgerAdjustmentBytes,使用户可在 apply 前看到精确目标和调整方向。
  • dry-run 继续零写入;apply 继续使用固定 usage.json 原子槽写入,校正后重新扫描并由 doctor 复核。
  • legacy inventory 仍为 read-only-report、deletionSupported=false;普通 maintenance apply 仍不删除 runtime generation,generation GC 继续要求独立完整 SHA-256 plan。

防复发验证

  • 新增 digest 有效但多计 123 bytes 的 ledger 漂移场景:doctor 必须 WARN,dry-run 必须明示 ledgerAdjustmentBytes=-123 且不改变 doctor 状态,apply 必须明示同一动作,随后 doctor 必须 PASS。
  • TaskRecoveryStoreV5 定向套件覆盖 10,000 次 semantic no-op、1,000 个正式任务、A/B 故障注入、容量与 reserve 边界。
  • 源码冻结前的隔离候选 Codex CLI S15 已在 runtime 50accd83…13f8a、adapter b4662345…d2f00 上通过;run=s15-codex-probe-adb724a8-6300-4b2e-8cb0-4986c24f7562,rebind、entry/closeout 完整,retirement anomalies 全 0。Codex Desktop 继续保持独立的发布后 fresh-task UNVERIFIED 边界。
  • 完整发布资格继续要求 source-frozen R4、精确 HEAD 远端 CI、npm/GitHub tarball parity、provenance/signature 与全新消费者 R7;测试通过不替代这些门禁。

兼容性与边界

  • Node.js 支持矩阵、CLI 命令名与 JSON 顶层 schema 不变;只新增一个向后兼容的 maintenance action 类型。
  • v1.18.0 的 AI Coding Harness 定位、公开文档、Git 默认、workspace 本地进化、Hook 循环修复和 generation retention 全部保持不变。
  • 本补丁的 Intent Expansion Card、RepairPreventionAssessmentGate、ChecklistStateMaterializationGate、V94、consumer-validation-engineering 与 V95 继续沿用 v1.18.0 的控制面,不放宽发布证据。