Skip to content

codex-keysmith v0.1.1

Choose a tag to compare

@github-actions github-actions released this 23 Jul 02:54
v0.1.1
d8335f9

codex-keysmith v0.1.1

简体中文

v0.1.1 修复原生 Windows 文件系统上的持久化事务恢复,并强化 Release 来源绑定。已签名 v0.1.0 tag、既有资产与校验和保持为不可变历史记录。

Windows v0.1.0 恢复警告

不要使用 v0.1.0 脚本在 Windows 上 fresh deploy。v0.1.0 可能先在持久化时间戳时失败,再遇到第二个目录清理 PermissionError,留下旧脚本不能恢复的 initializing journal。

如果 v0.1.0 留下 .codex-keysmith-transaction-* 证据,不要删除或编辑。下载并校验 v0.1.1 独立脚本后执行:

py -3.12 .\codex-instruct-v0.1.1.py --version
py -3.12 .\codex-instruct-v0.1.1.py --codex-dir "$env:USERPROFILE\.codex" --status --lang zh-CN
py -3.12 .\codex-instruct-v0.1.1.py --codex-dir "$env:USERPROFILE\.codex" --recover --lang zh-CN
py -3.12 .\codex-instruct-v0.1.1.py --codex-dir "$env:USERPROFILE\.codex" --recover --yes --lang zh-CN
py -3.12 .\codex-instruct-v0.1.1.py --codex-dir "$env:USERPROFILE\.codex" --status --lang zh-CN

预期状态链为 blocked -> recover preview -> recover --yes -> status ready。预检失败时会保留 journal、cleanup marker、snapshot 与其他所有权证据。

变更

  • 增加 Windows 原生句柄、稳定 volume/File ID 指纹、受保护 ACL 验证、显式共享模式、reparse-point 拒绝、目录锁、write-through rename 与可验证清理/恢复。
  • 主操作与清理同时失败时保留 primary exception;cleanup error 只作为次级证据,不完整 journal 或 marker 保持可恢复。
  • 无需手工删除 journal,即可恢复精确 v0.1.0 Issue #1 initializing 布局、空 initializing journal、部分发布与 cleanup-marker re-entry。
  • Windows Python 3.10、3.12、3.14 保持阻断 CI;macOS、Linux、quality、branch coverage、Prompt Bank 与 Release 资产检查同样为阻断项。
  • Windows fresh deployment 以 EXPLICIT_BETA 开放;deploy preview 与执行会显示 beta 警告,status、recover、uninstall 与 restore-hooks 不会误报部署警告。
  • 新增 tag 驱动 Release workflow:先运行全部阻断测试,再从完整干净 checkout 绑定 HEADVERSION、annotated tag peeled SHA 与源码字节;双构建并验证 SHA256SUMS,上传 draft 后核对 GitHub asset digest,再发布。

Windows 支持边界

Windows fresh deployment 已按 EXPLICIT_BETA 开放。原生 recovery、阻断生命周期矩阵与 beta 开放本身都不构成正式 Windows 支持承诺。P1 待补覆盖包括完整 hard-kill phase 矩阵、SUBST/8.3/volume alias、长路径、本地化用户目录与更多 cleanup double fault;P2 的正式支持与发布文档边界仍未关闭。

校验

所有资产都从完整干净 checkout 的 tagged commit 构建。执行前校验下载:

sha256sum --check SHA256SUMS
python3 codex-instruct-v0.1.1.py --version

English

v0.1.1 repairs durable transaction recovery on native Windows filesystems and hardens release provenance. The signed v0.1.0 tag, its assets, and its checksums remain unchanged historical artifacts.

Windows v0.1.0 recovery warning

Do not use the v0.1.0 script for a fresh Windows deployment. On Windows, v0.1.0 can fail while persisting timestamps and then encounter a second directory-cleanup PermissionError, leaving an initializing journal that the old script cannot recover.

If v0.1.0 left .codex-keysmith-transaction-* evidence, do not delete or edit it. Download and verify the v0.1.1 standalone script, then run:

py -3.12 .\codex-instruct-v0.1.1.py --version
py -3.12 .\codex-instruct-v0.1.1.py --codex-dir "$env:USERPROFILE\.codex" --status --lang en
py -3.12 .\codex-instruct-v0.1.1.py --codex-dir "$env:USERPROFILE\.codex" --recover --lang en
py -3.12 .\codex-instruct-v0.1.1.py --codex-dir "$env:USERPROFILE\.codex" --recover --yes --lang en
py -3.12 .\codex-instruct-v0.1.1.py --codex-dir "$env:USERPROFILE\.codex" --status --lang en

The expected lifecycle is blocked -> recover preview -> recover --yes -> status ready. A failed preflight preserves the journal, cleanup marker, snapshots, and other ownership evidence.

Changes

  • Adds native Windows handles, stable volume/File ID fingerprints, protected ACL validation, explicit share modes, reparse-point rejection, per-directory locks, write-through rename, and verified cleanup/recovery.
  • Preserves the primary operation exception when cleanup also fails; cleanup errors are reported as secondary evidence and incomplete journals or markers remain recoverable.
  • Recovers the exact v0.1.0 Issue #1 initializing layout, empty initializing journals, partial publication, and cleanup-marker re-entry without manual journal deletion.
  • Keeps Windows Python 3.10, 3.12, and 3.14 as blocking CI jobs and retains blocking macOS, Linux, quality, branch-coverage, Prompt Bank, and release-asset checks.
  • Opens Windows fresh deployment under EXPLICIT_BETA; deploy preview and execution display a beta warning, while status, recover, uninstall, and restore-hooks do not emit the deployment warning.
  • Adds a tag-driven Release workflow that runs every blocking job before a clean formal build, binds HEAD, VERSION, the annotated tag's peeled SHA, and source bytes, builds twice, verifies SHA256SUMS, and refuses to overwrite an existing Release.

Windows support boundary

Windows fresh deployment is open under EXPLICIT_BETA. Native recovery, the blocking lifecycle matrix, and beta availability do not by themselves constitute a general Windows support promise. P1 deferred coverage includes the full hard-kill phase matrix, SUBST/8.3/volume aliases, long paths, localized user directories, and additional cleanup double faults; the P2 formal-support and release-documentation boundaries remain open.

Verification

All assets are built from the tagged commit in a complete clean checkout. Verify downloads before execution:

sha256sum --check SHA256SUMS
python3 codex-instruct-v0.1.1.py --version