Skip to content

fix: 修复 0.7.3 发布门禁与书籍分块 - #1003

Merged
xerrors merged 1 commit into
mainfrom
feat/release-0.7.3-checks
Sep 9, 2026
Merged

fix: 修复 0.7.3 发布门禁与书籍分块#1003
xerrors merged 1 commit into
mainfrom
feat/release-0.7.3-checks

Conversation

@xerrors

@xerrors xerrors commented Sep 9, 2026

Copy link
Copy Markdown
Owner

变更说明

0.7.3 发布检查发现:Ruff 在安装无关运行时依赖时失败,部分认证 HTTP 测试因未传账号而跳过,应用 Release 会重复上传未升版的 CLI。补齐这些门禁,并修复检查中稳定复现的书籍分块随机丢失短文档标题问题。

  • 任务类型:bug-fix / process / testing
  • 目标与非目标:版本 tag 触发完整检查、CLI 独立手动发布、认证测试实际执行;本 PR 不创建正式 tag、不发布 Release、不改变数据库 Schema。
  • substantial 判断:修改实际 CI 与发布边界,使用 tracked decision;分块修复是可完整验证的局部修复,直接记录 implemented。
  • 0.7.3 changelog 以 v0.7.2 正式 tag 为基线,保留定时任务、主动压缩、推理/工具展示、执行审计、后台任务恢复和升级影响,补齐子智能体禁用执行与书籍分块修复。CLI 自 v0.7.2 无变更,沿用 0.1.4。

工程主张与 Owner

  • .github/workflows 拥有候选/正式 tag 的触发与 CLI 的发布边界;文档站仍仅在 main push 后部署。
  • system-tests.yml 的 Docker exec 显式传递 CI 账号,HTTP 测试回读 Run、API Key 和 Skill 授权结果;verifier 拒绝移除凭据的命令。
  • ragflow_like/nlp.py 的无放回抽样保证短文档全部段落参与标题识别;分块结果由实际 parser 输出拥有。
  • 决策记录:发布验证书籍分块抽样

验证情况

候选检查与 CLI 发布隔离

  • 失败面:tag 未触发门禁、应用 Release 重复上传 CLI、Ruff 下载无关依赖失败。
  • 语义 Owner:相关 workflow。
  • 直接证据 / 命令:python3 scripts/verify_engineering_contracts.pypython3 -m unittest scripts.test_verify_engineering_contracts scripts.test_release_workflows scripts.test_bump_version scripts.test_dependency_update_policy(73 passed);Actionlint 1.7.12 -shellcheck= -pyflakes=;从锁文件独立安装 Ruff 0.16.4 后运行 ruff check backend/packageruff format backend/package --checkruff check --select I backend/package
  • 负向案例:移除每个 tag 触发、恢复 CLI release 触发、移除 HTTP 账号或密码参数均被拒绝。
  • 结果:Passed(本地配置检查和工具实际执行);GitHub tag 事件投递尚未执行,不以本地检查替代。

认证 HTTP 与书籍分块

  • 失败面:关键 HTTP skip;短文档丢失标题后错误合块。
  • 语义 Owner:HTTP service/repository 与 book parser。
  • 直接证据 / 命令:docker compose exec -T api uv run --no-sync --no-dev pytest test/integration/api/test_agent_run_result_causality.py test/integration/api/test_apikey_router.py test/integration/api/test_skill_artifact_authorization.py -q -rs(18 passed,零 skip);docker compose exec -T api uv run --no-sync pytest test/unit/plugins/test_ragflow_like_chunking.py -q(21 passed)。
  • 负向案例:原实现固定随机种子 94 精确复现错误合块(1 failed / 1 passed),修复后两个种子均符合原有两节内容 oracle;HTTP 测试包含越权与撤权拒绝。
  • 结果:Passed。

文档与回归

远端 Backend Unit Tests 在当前 head 执行 uv run pytest test/unit -m 'not slow' -q:1980 passed / 1 skipped / 6 warnings。

  • 失败面:版本说明偏离正式基线、链接错误或既有行为回归。
  • 语义 Owner:changelog、贡献指南与 backend unit。
  • 直接证据 / 命令:git log v0.7.2..HEAD --oneline --no-mergesgit diff v0.7.2 HEAD -- packages/yuxi-cli(无 CLI 变更);pnpm --dir docs run build、工程契约相对链接检查、git diff --check
  • 负向案例:分块回归见上;文档由独立 Reviewer 对照源码与 v0.7.2 基线。
  • 结果:Passed(文档构建与链接检查);Inspected(功能基线)。

简化 / 删除验收

不涉及独立 simplification;Ruff 改为三个线性检查命令,CLI 沿用现有手动入口。

远端七类 workflow 均已通过:工程契约、Ruff、后端、Web、Runtime、依赖审计、文档构建。文档部署在任务分支/PR 中按设计跳过,未部署生产站点。

独立语义 Review

全新上下文 Reviewer 已审查全部 diff、3 个新增文件、规范、实际抽样消费者、认证接线、发布事件与 v0.7.2 基线;无阻塞 findings。独立运行 65 项脚本测试、工程契约与 diff 检查通过,并核对分块缺陷负控。最终本地全量 unit 已在 Review 后收敛。

未验证范围与风险

  • 标准后端 unit 命令因 /app/uv.lock 权限失败,使用现有容器依赖运行 docker compose exec -T api uv run --no-sync --group test pytest test/unit -m 'not slow' -q,1929 passed / 52 skipped / 7 warnings。
  • 远端 Runtime System Tests 在隔离 Compose 中执行:120 passed,零 skip;其中 deterministic Agent E2E 9 passed、Run 结果归属 2 passed、身份与 API Key 组 21 passed、迁移与 Skill 授权组 6 passed,原有 15 个 skip 已消除。
  • 真实 provider、浏览器和生产备份恢复:Not run,本次不调用付费模型或操作生产数据。
  • 文档构建存在既有 chunk 大小警告;本地 pytest cache 写入权限警告不影响断言。
  • 长文档继续采用有界随机样本,此修复不承诺长文档分块完全确定。候选与正式 tag 增加完整 CI 成本。

事故反馈

未确认生产高影响事故,不新增 postmortem;保留可复现缺陷、负向案例与实际 gate。

界面变更

不涉及。

关联事项

无。

补充说明

预发布阶段保留 changelog 的待发布状态;最终发布材料定稿后再创建候选/正式 tag。应用 Release 与 PyPI 发布解耦。

@xerrors
xerrors merged commit 8d8a4ac into main Sep 9, 2026
13 checks passed
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