Repository navigation
Release 1.4.0: reconcile version anchors and six-Turn catalog regression - #6194
Conversation
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
This reverts commit 22f0b79. Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
loopx-agent
left a comment
There was a problem hiding this comment.
Reviewer: model_agent; model=gpt-6.1-sol; provider=OpenAI; runtime_reported; reasoning_effort=xhigh
Approval conclusion (author-owned PR; GitHub blocks formal self-approval)
精确 head c91602d06ff8d13fca6815f70eb5da20008b38cd:无阻塞发现;此结论批准版本准备,未认证最终发布或长期 SQLite 资格。
动机
发布维护者和核对安装版本的用户。准备 1.4.0 时,源码、打包、手册和书籍仍标作 1.3.1;配置目录测试还期待已被主线改为六个工作 Turn 的旧五-Turn 默认。候选的两个版本源和当前手册统一为 1.4.0,旧断言与独立的六-Turn 主线规则一致。不更改新 Goal 的 SQLite 默认、不迁移已有 Goal、不调整权限,也不以版本准备替代最终发布资格。完整发布验证、发布物升级回读及个人图文指南仍待最终发布源码验证;SQLite 持续资格缺项继续保留。
改动思路
复用两个既有版本源、原生成器和已有配置目录测试,避免增加版本同步机制或再次改动已合并的存储默认。本 PR 仅交付八个文件的版本元数据与一个已有测试断言。实际调用链仍是 CLI 读取 loopx.__version__,打包器读取 project metadata,安装新鲜度和升级计划使用既有 release manifest,手册由原生成器产出。职责是版本投影,不新增存储策略、状态机或 provider IO;故障与修复继续由现有版本一致性检查及安装新鲜度归属处理。最小改动不能只改一个版本源,但也无需增加同步框架。原始 SQLite 回退已完全撤出最终 diff。
具体改动
规范依据 docs/product/release-readiness.md,固定 revision 449cd8bf51b7eeac6f00646a1ca03b37d3f4c7bc。Version metadata:implemented,两个版本源、man 和四个中英书籍锚点统一为 1.4.0,版本、手册和书籍验证覆盖。Compatibility Gate:deferred,最终 merged source 的完整 lane、发布物升级和指南回读仍待执行,PR 不发布 tag 或 stable。
关键代码讲解
loopx/__init__.py:5的__version__从 1.3.1 改为 1.4.0,未改 version 命令的 JSON 结构;现有 CLI/manifest 消费此值。pyproject.toml:7的[project].version与运行版本一致,继续由既有打包流程产生 wheel/sdist metadata;无需新版本 reader。man/loopx.1:1改生成标题;四个 book 文件只替换当前版本锚点,未改历史发布记录或操作义务。test_inspection_lists_registered_namespaces_without_local_refs将旧五-Turn 断言改为已合并规则的六-Turn,未放松命名空间、隐私或配置内容断言。原规则由既有 goal vision policy 决定,测试未从实现动态获取预期值。
对主干的风险
最大风险是版本标签一致却误把候选当作已经发布,或只改运行版本导致包 metadata 和安装判断不同步。现有版本 smoke 同时检查两个源、manifest、update plan,并用 9.9.9 错配验证必须进入 repair,而不能显示 fresh。精确整合 head 的 101 项存储/配置回归通过,涵盖默认 SQLite、显式开启/关闭、原操作重试与后续写入;36 项 cadence/default 验证补足旧断言来源。生产存储、租约、quota/调度和权限代码与 base 完全相同,不增加用户导航或干预。Ruff 的仓库正式 scope、mypy 19 个文件、TypeScript、版本/man/book/update 和 integrated risk canary 均通过;未查询 CI。宽泛 ruff check . 曾扫描无关 benchmark/deprecate 文件失败,这不是规范要求的 lint lane,不将其改称通过。
我的整体评价
long_horizon 为 preserved:此 PR 不改变后续 Turn、重启、回执或副作用路径。user_experience 为 improved:同一候选在运行、打包和文档中版本一致,现有错配修复仍有效。元数据更新和一个 durable test 的修复相称,代码量没有增长;未来边界检查确认现有 owner 足够,无需新增抽象。语义词汇未新增,default_off 与 authority 语义在此净 diff 不适用。独立的发布及 SQLite 持续资格继续保留 passed/failed/untested 区分,不能由此 review 授予发布默认资格;若最终源码或声明变化,应重验对应 lane。
English verdict: APPROVE - c91602d; coherent 1.4.0 metadata and six-Turn catalog oracle, preserving main SQLite defaults. Exact-head local version, mismatch/update, 101 focused Python, static, semantic, man/book and risk-canary checks passed. Final release and sustained SQLite qualification remain separate.
Prepare LoopX 1.4.0 from current main. This PR changes only release metadata and the catalog assertion missed when product and benchmark review cadence was unified at six settled work Turns. Both version owners, the generated manpage and bilingual book anchors agree at 1.4.0.
The final diff preserves main's new-Goal default: canonical SQLite with hard leases. Existing Goals retain their recorded route, and explicit File/SQLite provider and supported execution-policy choices remain available. The separate sustained/default qualification gaps remain visible; version preparation is not proof that those gates passed.
Shipped product groups in the planned tag range
Community Contributors
External community contributions are highlighted here; the project agent is credited separately. The links name representative merged work from the exact release range.
Compatibility and validation
Version preparation and its exact-head review are merged. The release source is now frozen at
1b452b00a114bd9f0d9c24868c9f45df42661748, including the separately reviewed runtime, packaging and regression repairs. At that source, 515 public smokes, 360 affected Python checks, static checks, a real PyPI 1.3.1-to-candidate upgrade and isolated installed UI/managed-host skill readback pass. Parent full-suite failures are retained and their affected regressions are repaired. The owner-authorized DS V4.1 Flash/high portfolio passed all 22 scenarios twice and six contrasts with 44 actor calls, zero failures/skips; prior Doubao evolving/high failures remain unqualified. The named v1.4.0 release is published at the frozen qualified source. Public tag archive and source stable installs are verified at 1.4.0. PyPI and desktop publication are queued for hosted runners; their public artifact readback is pending and desktop-stable remains on 1.3.1. Post-freeze test improvements are excluded from this release range. External backend/platform and sustained SQLite qualification limits remain explicit.中文产品变化
社区贡献者
以下突出外部社区贡献,项目 Agent 单独署名。链接列出本次真实发布范围内的代表性合并工作。
发布边界
发布源码冻结为
1b452b00a114bd9f0d9c24868c9f45df42661748。515 项公开 smoke、360 项相关 Python 回归、静态检查、真实 PyPI 1.3.1 升级到候选包、隔离安装版 UI 与托管 Host 技能回读通过。父提交完整测试的失败记录保留,相关断言已修复并在冻结源码回归。经授权替代的 DS V4.1 Flash/high 完整资格通过:22 个场景各两次、六个对照、44 次 actor 调用、零失败与跳过;先前 Doubao evolving/high 失败保留且未通过。v1.4.0 release 已从冻结合格源码发布,公开 tag archive 与源码 stable 安装回读通过,源码 stable 已为 1.4.0;PyPI 和桌面发布仍等待 runner,制品回读待完成,desktop-stable 仍为 1.3.1。冻结后测试改造不在该版本范围;外部后端、未测平台与 SQLite 持续资格不因版本准备而宣告通过。