可用于本机部署可审计、可离线运行的 AI 编码 Agent,支持多 Agent 结构化协作与自动化流水线。基于 Rust 实现,单二进制部署,内置 36 种工具、tree-sitter AST 解析与 Mailbox v2 消息协议,Provider 可换,支持跨进程会话恢复。【此简介由AI生成】
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
v1.9.8(dev): M4 审计残余五项(F-MF-13 / F-GT-02 / F-GT-05 / F-GT-06 / F-RG-06) 令源: ar v1.9.8 路标 r1(openspec/specs/v1.9.8-goal-and-plan.md §二 M4)∧ intake V198-5 承: 审计 audit/v197-arch-audit/(7ca2f2dc1 · 总评 B) 面: 前 = 3933ffccf2c27af898d586572572b2e0323884f1(树 5ae276e2d6fdff3266fe9f0b20d9cd4343ebe4c6) ① F-MF-13 双豁免载体归一 3==3 —— .cargo/audit.toml 撤 4 条 rustls vulnerability (RUSTSEC-2026-0346..0349; 唯一存续由 = rustls 0.23.45 在树, v1.9.7 M4 已升锁 0.23.46 ⇒ 失其由 ⇒ 撤非续期) 判据: cargo audit rc=0 ∧ cargo deny check advisories rc=0 ∧ 二档【数组内非注释条目】逐位同(3==3) ★ 谓词坑并载: 首版谓词 grep -oE 'id = "RUSTSEC-…' 于 deny.toml 得 5 条 —— 多出者系注释中已撤条目之留痕 ⇒ 改【行首锚 + 非注释条目】形(承在册「计数谓词 vs 解析谓词之差即盲区」) ② F-GT-02 —— .xuanwu/botgate.yaml rust_channel 1.98.0 ⇒ 1.89.0 (对齐 rust-toolchain.toml 之唯一源; 前值系该档前态 v1.7.0 AC6 之残留 · 审计第四版连续在册) ③ F-GT-06 —— .github/workflows/ci.yml 步名红侧数 3 ⇒ 23 (复刻脚本同一谓词 grep -cE '^red[0-9]+_[a-z_]+\(\)' 实取 · 附「增删臂须同批复取」之纪律注) ④ F-GT-05 —— .xuanwu 升入守护域 · 三面同改 (SCAN_PATHS 增 .xuanwu ∧ ② 甲臂 case 名表增 .xuanwu/* ∧ CHECK14_DOMAIN_EXEMPT 撤 .xuanwu) ★ 改判显名: 前判「纳入只削不增」(v1.9.4 后批 ar 裁 13 裁 1)经【实证】不成立 —— 证1 逐名复算 33/33 逐位同(.xuanwu 内 3 处命中皆冗余 · missing[] 二域皆空); 而审计所指之病为实体 (.xuanwu/push-image.yaml = master push 门唯一载体落于守护域外) ★ 不触锚: 三处皆在名册哨符区间(2139-2154)之外 ⇒ 无须同批重锚 LOCK_REGISTRY_MD5_ANCHOR ★ INCLUDE 不动(① 臂枚举面 = 仓根档 ∪ *.toml; .xuanwu 内零 *.toml 且非仓根档) ★ 请 ar 复核改判(若判维持原裁 ⇒ 本项回退) ⑤ F-RG-06 —— SBOM 去构建机绝对路径 scripts/sbom_gate.sh 增 --normalize 写路(重生成 ⇒ 按 norm() 同款正则改写 ⇒ 装回 sbom/ · 不早退 ⇒ 自证) ∧ 既有 ② 面增一守(入库档禁含 path+file:/// ⇒ 违即 rc=1) 判据: 入库档绝对路径 3 ⇒ 0 ∧ 正形 3 处 path+file://<WS> ∧ 默认模式 rc=0 ∧ 守路阳性对照(造 path+file:///tmp/fakepath)rc=1(接入出口码 · 非恒真) ∧ 夹具腿 ac10_sbom_leg.sh rc=0 / PASS=6 FAIL=0(R1 红侧仍咬合 ⇒ 增守不掩旧红侧) ★ <WS> 之义显名: 系工作区路径之占位符(与 norm() 同形同源), 非残缺值 零 .rs(纯器面/配置面) 四门禁: fmt rc=0 ∧ clippy rc=0 ∧ nextest 0 tests rc=4(members=[] ⇒ 结构性零覆盖 · 非绿)∧ build --release rc=0 探针: bash -n 二档 rc=0 ∧ sbom_gate 默认/写路 rc=0 ∧ cargo audit rc=0 ∧ cargo deny rc=0 ∧ typos rc=0 ∧ taplo rc=0 留证: release/v1.9.8/evidence/M4_AUDIT_RESIDUALS.md ★ 发布面整门(12m+)∧ 门禁自证器(23 臂)归 test —— 本席不跑不书 Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 天前 | |
fix: 恢复误删的 .claude/agents/code-reviewer.md (W1 scope修复) | 1 个月前 | |
v1.7.0 B2/T8(AC13) 面甲: nextest flaky 曝光 ∧ 归档(总结面 ∧ JUnit 面) 承路标 AC13(docs/3 :115 之「最常见认知盲区」同族)。 ── 现态(改前 · 现取)── · [profile.ci] 有 junit(AC7 落)∧ [profile.flaky-hunt]【无】junit ⇒ 甄别跑不产 JUnit。 · ci.yml 无【总结回填】步 ⇒ nextest 之 Summary/FLAKY 行不入 job summary。 ── 修 ── ① .config/nextest.toml: 增 [profile.flaky-hunt.junit] path = "junit.xml" ★ 由: [profile.ci] 之 retries = 0(承 AC7 条件③「不设重试」)⇒ 主门禁【不产 flaky 标记】; flaky 之【曝光面】= 甄别 profile(retries = 2)⇒ 其 JUnit 含 <flakyFailure>。 ★ 并载: 本 profile 之注「禁止用于主门禁掩盖」【不变】—— 本键唯增【产物面】, 不改其用途。 ② ci.yml check job: 新步「nextest 总结回填」(if: always()) ⇒ grep 'Starting|Summary|FLAKY|FAIL ' 之 log 行 → $GITHUB_STEP_SUMMARY ⇒ flaky 于【总结面】现形(非静默过)。 ── 红侧实证(器 ∧ 值 ∧ rc ∧ 面之限)── · 器: 临时置 tests/zz_ac13_flaky.rs(首跑败 · 复跑成: 以 /tmp 计数器驱动)⇒ 跑毕即撤(未入库)。 · 甲(注入偶发失败): cargo nextest run --profile flaky-hunt --workspace --locked ⇒ Summary「1 test run: 1 passed (1 flaky), 0 skipped」∧「FLAKY 2/3」⇒ rc=0 ∧ JUnit 落 target/nextest/flaky-hunt/junit.xml(1435 B)∧ <flakyFailure> ×2 ✓ · 总结回填步之二态(逐字抽 run 块 + 伪 log): 甲(log 含 flaky 行)⇒ summary 落 FLAKY 2/3 行 ✓ ⇄ 乙(无 flaky 行)⇒ 唯 Summary 行 ✓ · ★ 器面之限: 本机无 GHA 触发通道 ⇒ 皆以【本地器】施, 非 CI 真跑。 验证: YAML 合法(13 job ∧ check steps=10)∧ nextest 二 profile 皆可跑。 面: 面甲(.github/ ∧ 根配置档 .config/)。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 16 天前 | |
v1.9.9(dev): M4 器面守批 —— 检查2 守⑤ D1 顶条禁替换前版头(谓词取甲 · 三臂咬合) 令源: ar 路标 r1 §二 M4(V199-4)∧ ar 裁 07 §三 ∧ ar 裁 V199-01 §一(Q1-Q5 皆取 dev 议 · 取甲)∧ §二(落笔令 + 耦合同批)。 谓词(取甲 · 原文): 窗基面之 CHANGELOG 首行(= 前版节头)须在当前档逐字在场 _c2e_prev_head="$(git show "${_c2g_base}:CHANGELOG.md" | head -1)" grep -qxF "$_c2e_prev_head" CHANGELOG.md ★ 承重处: 期望串取自【窗基面】非当前档 ⇒ 替换形与删除形皆必红、正形插入必绿(可伪)。 ★ 窗基复用检查2 守③之 _c2g_base(Q2/Q5 取复用)⇒ 免二处窗基; 二态同值 ⇒ 同判。 ★ 前件缺(窗基不可解析 / 窗基面首行非版本节头形 / CHANGELOG.md 缺席)⇒ skip_gap 显名。 ★ 射程窄形(唯前版头 · 不判节体 ∧ 不判更早各版头)—— 宽形会误伤 D1 批将 🚧 占位头 终局化之合法改笔(Q3)。 射程三档: scripts/verify_release.sh 新增 检查2 守⑤(:783-:825 · 43 行) scripts/tests/verify_release_gate_selftest.sh 新增红侧臂 red24_changelog_prev_header_dual_control(80 行) .github/workflows/ci.yml 步名字面 (23 red sides) ⇒ (24 red sides)(承 F-GT-06 纪律) ★ 零 .rs ∧ 零 *.toml ⇒ 主线产物与钉面零变。 红侧臂 red24 三臂读数(单臂器 · 逐臂实跑): 甲 阴性/正形(顶条插入)⇒ 正形标记 1 条 ∧ 本守 FAIL 0 ⇒ 不误红 ✓ 乙 阳性/真病相(顶条替换 line 1 = v1.9.8 66286888e 实犯形)⇒ FAIL 具名 ∧ 出口码 1 ✓ 丙 判别力/前件缺(删窗基 tag)⇒ 报【前件缺】显名 ∧ 由未裁定空窗门承载出口码 ⇒ 非静默绿 ✓ 实耗时 739s · 留证 sha256 e1a40d6a748e8c89e5ff095ab41bcd97f717e3c1b5f7295ef5293d0efe8c57b2 ★ 回归对照(承在册「增守必同批在夹具面实跑核不掩旧红侧」): red19(检查2 守③ · 共用 _c2g_base 之邻守)三臂皆咬合 ✓ 738s red23(检查2 守④ · 同区邻守)三臂皆咬合 ✓ 728s ★ 静态面并证: 全文扫 -eq 0 ⇒ 无任何臂以整门 rc==0 为阴性判据 ⇒ 本守所增 skip_gap 不改 任何既有臂之判据面。 读数: 臂数实取(谓词 grep -cE '^red[0-9]+_[a-z_]+\(\)')= 24 = ci.yml 步名字面(同批复取) 哨符区间 md5 58b6e31ab3f8d6a7a7982a577ac22e07 与锚逐位符 ⇒ 不触锚(守⑤ 在区间之外) 检查26 支③ 双向对表(DOMAIN_DIM_MEMBERS_CHECK ⇄ 由码解析锚全集)零差(各 32 项) 真仓面谓词实跑 = 正形(窗基 v1.9.8 首行逐字存续)⇒ 零 FAIL 探针: fmt 0 · clippy 0 · nextest 4(0 tests —— members=[] 结构性零覆盖 · 非绿,照实申报)· build --release 0(暖面 0.46s)· bash -n 二档 0 · typos(裸调·门禁形)0 · taplo(全域)0 ★ 发布面整门(12m+)∧ 自证器全量 24 臂归 test —— 本席不跑全量。 并载(照实): 本守于 v1.9.8 之 tag 面必红(该靶树实含该缺陷)—— 系事后之正非回归; v1.9.8 已关版,其四态段读数系以当时之器所取,不因本批而变。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 天前 | |
v1.9.8(dev): M4 审计残余五项(F-MF-13 / F-GT-02 / F-GT-05 / F-GT-06 / F-RG-06) 令源: ar v1.9.8 路标 r1(openspec/specs/v1.9.8-goal-and-plan.md §二 M4)∧ intake V198-5 承: 审计 audit/v197-arch-audit/(7ca2f2dc1 · 总评 B) 面: 前 = 3933ffccf2c27af898d586572572b2e0323884f1(树 5ae276e2d6fdff3266fe9f0b20d9cd4343ebe4c6) ① F-MF-13 双豁免载体归一 3==3 —— .cargo/audit.toml 撤 4 条 rustls vulnerability (RUSTSEC-2026-0346..0349; 唯一存续由 = rustls 0.23.45 在树, v1.9.7 M4 已升锁 0.23.46 ⇒ 失其由 ⇒ 撤非续期) 判据: cargo audit rc=0 ∧ cargo deny check advisories rc=0 ∧ 二档【数组内非注释条目】逐位同(3==3) ★ 谓词坑并载: 首版谓词 grep -oE 'id = "RUSTSEC-…' 于 deny.toml 得 5 条 —— 多出者系注释中已撤条目之留痕 ⇒ 改【行首锚 + 非注释条目】形(承在册「计数谓词 vs 解析谓词之差即盲区」) ② F-GT-02 —— .xuanwu/botgate.yaml rust_channel 1.98.0 ⇒ 1.89.0 (对齐 rust-toolchain.toml 之唯一源; 前值系该档前态 v1.7.0 AC6 之残留 · 审计第四版连续在册) ③ F-GT-06 —— .github/workflows/ci.yml 步名红侧数 3 ⇒ 23 (复刻脚本同一谓词 grep -cE '^red[0-9]+_[a-z_]+\(\)' 实取 · 附「增删臂须同批复取」之纪律注) ④ F-GT-05 —— .xuanwu 升入守护域 · 三面同改 (SCAN_PATHS 增 .xuanwu ∧ ② 甲臂 case 名表增 .xuanwu/* ∧ CHECK14_DOMAIN_EXEMPT 撤 .xuanwu) ★ 改判显名: 前判「纳入只削不增」(v1.9.4 后批 ar 裁 13 裁 1)经【实证】不成立 —— 证1 逐名复算 33/33 逐位同(.xuanwu 内 3 处命中皆冗余 · missing[] 二域皆空); 而审计所指之病为实体 (.xuanwu/push-image.yaml = master push 门唯一载体落于守护域外) ★ 不触锚: 三处皆在名册哨符区间(2139-2154)之外 ⇒ 无须同批重锚 LOCK_REGISTRY_MD5_ANCHOR ★ INCLUDE 不动(① 臂枚举面 = 仓根档 ∪ *.toml; .xuanwu 内零 *.toml 且非仓根档) ★ 请 ar 复核改判(若判维持原裁 ⇒ 本项回退) ⑤ F-RG-06 —— SBOM 去构建机绝对路径 scripts/sbom_gate.sh 增 --normalize 写路(重生成 ⇒ 按 norm() 同款正则改写 ⇒ 装回 sbom/ · 不早退 ⇒ 自证) ∧ 既有 ② 面增一守(入库档禁含 path+file:/// ⇒ 违即 rc=1) 判据: 入库档绝对路径 3 ⇒ 0 ∧ 正形 3 处 path+file://<WS> ∧ 默认模式 rc=0 ∧ 守路阳性对照(造 path+file:///tmp/fakepath)rc=1(接入出口码 · 非恒真) ∧ 夹具腿 ac10_sbom_leg.sh rc=0 / PASS=6 FAIL=0(R1 红侧仍咬合 ⇒ 增守不掩旧红侧) ★ <WS> 之义显名: 系工作区路径之占位符(与 norm() 同形同源), 非残缺值 零 .rs(纯器面/配置面) 四门禁: fmt rc=0 ∧ clippy rc=0 ∧ nextest 0 tests rc=4(members=[] ⇒ 结构性零覆盖 · 非绿)∧ build --release rc=0 探针: bash -n 二档 rc=0 ∧ sbom_gate 默认/写路 rc=0 ∧ cargo audit rc=0 ∧ cargo deny rc=0 ∧ typos rc=0 ∧ taplo rc=0 留证: release/v1.9.8/evidence/M4_AUDIT_RESIDUALS.md ★ 发布面整门(12m+)∧ 门禁自证器(23 臂)归 test —— 本席不跑不书 Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 天前 | |
feat(v1.0.3 sb-1/sb-2 阶段D/AC9): 预设 agent 库入库(20dcdd05 清洗重交——剔除 24066 个运行时工件)。①三预设 .xwcode/agents/: doc-proofreader(readonly 写类全禁+permission deny, dogfood 任务②实证形态产品化)/test-writer(§8 五字段模板对接+§6 写入位置硬约束+§9 900s 档内嵌)/code-reviewer(explore+verify 两阶段组合, bash 限 cargo 检查类, 写禁)——各附 §9 timeout 档; ②D2 验收测试 preset_agents_v1030 5/5(可发现/readonly 语义/内嵌锚/组合语义/格式一致, 绝对根定位避 cwd 依赖); ③.gitignore: .xwcode/* + !.xwcode/agents + crates/*/.xwcode/(运行时工件面忽略)。教训入档(ar 实证): add 先于 gitignore 规则入暂存→规则不追溯已暂存文件; check-ignore 对已暂存文件报假阴性(旧 message '双向验证'表述作废)——自查纪律=add 后 status 复核暂存区+commit 后 show --stat 文件数核查 | 1 个月前 | |
3g 终态复跑全绿+3a 勘误二次订正: 六件套 RC 序 4/101/0/0/0/0@34ba96da9+A 点×3 中位 24,004kB<30,000 绿 (v1.5.2): ①六件套终态亲跑@3g 基点 master/34ba96da9(ar r2 后实时 HEAD, 此树=3i tag 候选树)——fresh 构建 CARGO_BUILD_JOBS=16 --locked EXIT=0(bin 43,268,496B)/nextest EXIT=4 薄 facade/doctest error101/v152 守卫 28 断言全✓/锥锁真 HOME 逐仓一致/gate-selftest 六红侧八腿全过/G 门 GATE_RC=0 G1-G6+G4 DUAL=0+G5 缺省跳过注记; ②A 点×3 复核 run13-15: 中位 24,004kB(24,000/24,004/24,008 位稳差≤8kB)<30,000kB 红线=绿 0.80×——对照链 AC-CG 24,016→3a 24,012→3g 24,004 三点位稳差≤12kB 防回潮持续 PASS, NTOT=1 六点恒等; ③3a 档勘误二次订正: selftest 真值=六红侧①-⑥八咬合腿(④检查9/⑤L4 双向/⑥2c C1 md5 锚), 首报『三』与首勘『五』均系 head 截断误读, 全量清点 log 定谳; W 申报×2=TEST_COUNT_ANCHOR『五咬合』陈旧计数(D5/ar 面)+脚本 summary『三红侧』v1.2.1 陈旧字面(候下版整形, 本版不动 tag 候选树); ④判据 C: 双源 1.5.2+pane 三轮+sha 对照归因闭合(8dde512e vs 3a 82386a54=构建路径嵌入, git diff 11 文件全文档零代码面+Cargo.lock diff=0); ⑤S1 原值口径全账; 原始件 13 份 3g_attachments/。同意进 3h 无保留 Co-Authored-By: Claude Code <noreply@anthropic.com> | 25 天前 | |
audit(v199): xwcode v1.9.9 深度架构审计(team mode · 5 域并行 · 总评 B · P0=0/P1=0/P2=4 · v197 双 P1 终审打破) Team v199-arch-audit · Run 0bb7d09e · 2026-10-19 · 静态只读 · 禁编译 - 00-SYNTHESIS 综合定稿:总评 B(零阻断 · 4 残留)· v197 在册 16/56=28.6%(half 32.1%) - 01 manifest-deps(A−):四方 deref 对账全绿 · DUAL=0 · SBOM 49 叶差全归因零残差 · F-MF-13 双载体 3==3 - 02 release-gates(B+):★ v197 头号 P1 F-GT-01(终靶/tag 面整门未跑·二版连破)本版终审闭合 (7 档 gate log 全 GATE_RC=0 · tag 面 2b4902f10 + post-flip 3d475d699 双整门真跑) NEW P2 F-GT-14(D1 终门未获净面 PASS)∥ F-GT-15(runner log 缺 1/7)· WORSENED F-GT-07(red24_* 名册漏登) - 03 narrative-docs(A−):★ F-DC-01(v1.9.6 四态段③④)终审打破 · 四态段跨四版连续 4/4 · M4 守⑤ 缺陷闭环 - 04 satellite-pin(A):功能 load-bearing 六面全清零(跨 4 版稳固)· F-PN-07 xwtui 克隆分叉八轮 WORSENED(gap 34) - 05 regression(B+):v197 16/56 · v196 17/50(零回退·+16.0pp)· v195 14/42 · v194 18/37(零回退)· 长尾 0/9(八轮) | 14 小时前 | |
docs(bug260812001): 更新归属 — 用户裁决纳入 v0.95.4(非v0.96), 对应 AC5/sbd-4 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> | 2 个月前 | |
v1.9.0 3j 关版批: r49 台账逐项收口(RULINGS_03 §二 行2–6) 器面: - 检查2 守③ 新立【D1 二分口径自书律】(既有检查增守 · 禁另立锚 ⇒ 检查26/27 零动) + gate-selftest 红侧⑲(三态对照 · 夹具面一手捕出初版谓词缺陷: 唯计 -source ⇒ 新增包零命中) - P2-1 check19 二条 fail-open 收口: return 0 显名为【控制流出口】非绿 · 判词归未裁定空窗门 (XW_ADJUDICATE_SKIP=检查19#1) · 删「CI memory-gate 兜底」半句(该 job 从未真跑 · 空悬照实) 文档面: - P1-1/P1-4 自书律回退订正: Cargo.toml D1 注块 + CHANGELOG 二分口径改书【含升钉窗】 (11 仓/17 包 · lock 35−/37+ · SBOM 156 叶 = 根包 7 + 钉面 149) - P2-5 verify_release.sh SBOM 字节数快照 ⇒ 治本取结构面(组件数 363 · 免刷新即复陈旧) - P2-6 ci.yml 静态行号锚(955 行)⇒ 结构面判据(与档长无关) - P2-7 + 04 F-03/F-04: deref 注六处(xwshell/xw-engine/xw-tools 双面)+ xw-engine 注释锚订正 + xw-tools 锥锁例外已由裁定 417 失效(显名 · 三态分歧收敛为行尾注一态) 运营面: - NEW-5 comm/install.sh 取【清引用】: 前置判定显名(源件缺席 ∧ 由 · 补件则 RCE 面复活) - NEW-7 comm/config.yaml host 0.0.0.0 ⇒ 127.0.0.1 + 显名其非活配置(deploy.sh 整档重写) 未落(逐项显名 · 见 release/v1.9.0/evidence/V190_3J_BATCH.md §六): - NEW-6 双份 bin/comm 候裁(主线 comm/ 系外部仓整树旧快照, 非双份同名档 ⇒ 单档同步致半新半旧) - P1-3 路标面 / P2-4 ar 侧 / §四 摘除: 非我域 · 候 ar;P2-3 归 test;NEW-4 顺延(需高于 floor 之 rust-src) 整门 GATE_RC=0(档 gate_v190_3j.log · 器 a82827a8)· 零产品源码变更 · typos/taplo 双面已过 Co-Authored-By: Claude Code <noreply@anthropic.com> | 7 天前 | |
步骤④⑤ 主线消费源切换: xw-tui path 成员退役, xwrepl v0.2.9 消费 (A案裁定+双骑缝) v1.3.6 AC3 扩域 F 步骤④ (mainline consumption switch), plugin-ar 放行令 + claude-ar 方案A裁决执行。基线 master@67706e40, wip/v0.3.0-consume。 [A案裁定] 拒绝方案B/C (rename-form patch 实证不生效, 1.98.1), 采用 workspace package 映射 (xw-tui={package=xwtui})——dep key 保持 → extern crate 名 xw_tui 不变 → 源码零改动。 [骑缝一/二兑现] - 骑缝一(发布前反查): 全锥仅 xwrepl 消费 xw-tui; xwrepl v0.2.9 内部已切换 xwtui@v0.3.0 直连 - 骑缝二(完成定义实证): lock 级 xwtui instance=1 / xw-tui 旧条目=0 / xw-runtime path 单实例 / 全锥 DUAL=0 (grep 实证留档) [③④⑤⑥ 完成] ③ xwrepl pin v0.2.8→v0.2.9 (annotated tag 659b49f deref=b9f2667, lock deref 自证一致) ④ Cargo.lock 删除重解析 (cargo generate-lockfile, 零手工编辑): xwtui 单实例 @676d049, xwrepl @b9f2667, path 残留=0 ⑤ [patch] 段瘦身: 移除失效四条 (xw-tools/xw-utils/xw-tui/xw-providers——消费源已直连各插件仓), 保留唯一有效 xw-runtime={path} 重定向 (保全锥 xw-runtime 单实例, DUAL=0) ⑥ 五闸全绿: build 0 / test 1431-0 / fmt 0 / clippy 0 / 结构门禁更新后全绿 [结构门禁适配 xw-tui 退役] - crates/xw-tui/ 52 件出树 (src 20 + tests 30 + Cargo.toml + config) - config/module_map.yaml: TUI 映射移除 - crates/xw-cli/Cargo.toml: xw-tui dep path→workspace (optional 保持, headless 可构建前提不变) - AC10 home_dependency_scan: 下界 180→150 (tests/ 261→157) - r5 v1000_ac4: sanity 下界 50→35 (src 62→42) - v1002_t1: crates 4→3, files 50→30 - AC6 headless gate: xw-tui dep 断言 path 形态→workspace 形态 - 全部为弱下界防异常收缩 (非精确锚), 红侧自证保持 候 plugin-ar 复核 (首查 DUAL=0) → claude-ar M2 合入评审。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 29 天前 | |
v1.7.2 件② 批13 —— AC4 loom 位具名 note + AC5 criterion 基线(M1 收束批) AC4(承裁决05 裁2「loom 位之具名 note(无 job)」): - nightly-deep.yml 增 AC4 段: 判【不适用】+ 三据(实证/根因/弃案具名) - ①实证 = M1 靶面并发原语命中数 0(可机械复核 ⇒ 可证伪) - ci.yml 增具名指针(承 D1 式: 深测独立成档 ⇒ 本档无该 job) - 腿 scripts/tests/ac4_loom_leg.sh(G1/G2/G3 + R1/R2)PASS=5 FAIL=0 AC5(承路标「criterion 基线入库 ∧ 回退超阈 ⇒ 报(非硬红, 显名)」): - deep/benches/parse_worker_threads.rs + deep/bench_baseline.json(基线入库) - criterion 走可选依赖 + required-features=bench ⇒ Miri 面仍零依赖 - 载体 scripts/perf_gate.sh(出口码唯表测量面之成败; 超阈只报不红) - 腿 scripts/tests/ac5_perf_leg.sh(G1/G2 + R1/R2/R3)PASS=6 FAIL=0 - ④负向判据腿 scripts/tests/ac5_pr_negative_leg.sh(甲乙二面并判)PASS=4 FAIL=0 - nightly-deep.yml 增 perf job(on 不变 ⇒ ④ 仍结构成立) 当场自捕之订正(照实): - lib bench 靶混入 ⇒ [lib] bench = false - 相对 CARGO_TARGET_DIR 解析于 manifest 根 ⇒ 仓根绝对化 - typos 捕 thr ⇒ 改名 threshold - YAML run 内 printf 之 \n 写成真换行 ⇒ 整档不可解析 - G2 自我指涉计数 / R3 判据与实现反向 / R3 二变量并因 - AC4 腿锚取错段 + 外层 heredoc 提前收束 Co-Authored-By: Claude Code <noreply@anthropic.com> | 15 天前 | |
chore: onboard xwcode to xuanwu-ci(重建于现 master b9f9667c6) 承 MR#2 之 onboard 笔 ec907c2d6(fork benjamin-747/xwcode)—— 该笔之基 c098c46f1 早于 M7 之 botgate 二红真修 c58f0c5f5 ⇒ MR 头未含修 ⇒ run #14 之二红系 【面之陈】(修未达被检之头)非【修之失效】(test 一手归因 · 二态:.cargo/audit.toml MR 头 404 ⇄ master 200 ∧ src/main.rs:1 旧/新)。★ 本席无 fork 写权 (一手:git push --dry-run ⇒ <CH.00905401> You are not allowed to push code to this project)⇒ 改由主线新支发新 MR(test 已许可「新分支发新 MR,唯须头含 b9f9667c6 之树」)。 本笔 = 现 master b9f9667c6 + ec907c2d6 之 onboard 件(31 档逐档照收)。 ★ 唯二档【不取】(照实): · typos.toml —— 该笔之 ①i 族系【复登】(三档已在 ①f :195/:196 ∧ ①h :818) ⇒ 承 ar 裁决 03 §三「族之归属取自行语义(引证行→①f)」之判例 ⇒ 不落 ①i (extend-exclude 系集合并 ⇒ 覆盖面不变)。 · scripts/tests/verify_release_gate_selftest.sh —— 其 _adj_key_table 之修系 门禁本体【潜在缺陷】之修(现态 :919 仍旧形)⇒ 须自证(阳性/阴性对照 + 红侧全跑)方可落 ⇒ 另批处置,本笔不取。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 4 天前 | |
V1910裁决03(ar·承用户令): M2最多再修一轮(r6)·仍红则推迟下版重立案 | 4 小时前 | |
T2: 「指名特判」逐件分类表(28 站点, 四列)+ A1 撤除实验留证 承 ar msg-1790634915037-1 §二①③(四列分类表, 经 ar 复核后方定谳)∧ §三 四原则。 ■ 交付物(二件) 1. release/v1.6.3/V163_T2_NAME_SPECIFIC_SPECIALCASE_TABLE.md(113 行) - §0 我侧自拟口径(本域 = xw-tools 生产面; 指名特判 = 名字字面量驱动分支/分派/查表/ 别名映射/参数归一/名单/权限判定; 七项排除)+ 列2 判据 + 列3/列4 取证法(先证后改) - §1 28 站点逐件四列表: 机制载体 25 ∧ 残留已采认 1(#14 B1)∧ 残留候选 2(#5/#28) - §2 A1(#16)四列全列实证(唯一已全证站点) - §3 限度照实六条(实证仅覆盖 A1; 其余 27 站点列3/列4 = 未实证, 逐格标注) - §4 供 ar 定谳之三问(口径 / 射程是否须覆盖全 28 / #5#28 定性) 2. evidence/S_T2_A1_removal_experiment.log(47 行)—— A1 撤除实验原始留证 ■ ★ A1 撤除实验(隔离 /tmp, 零外泄, 复原 sha256 恒等) - 撤除面 = executor.rs create_executor() 内 A1 分支(原 :997–:1005, 10 行删) - 列3 变体翻转【实跑坐实】: A1 在位 ⇒ Err(PermissionDenied(…)); 撤 A1 ⇒ Err(SafetyCheck(…)) - 列4 零锁测【三面实证】: xw-tools 883 passed ∧ xwcore 793 passed ∧ xwshell 结构性不覆盖 (xwshell 不依赖 xw-tools; seam_lock.rs 全测经 create_bundle().handler 直调) - 补强: seam_lock.rs:9-12 自陈变异面 = 删 bundle_handler 内 host_precheck 调用, 与本批所议(撤 create_executor() 调用站点)射程相交为空 ⇒ 【射程不覆盖】 - 复原 sha256 = a11ce81fe00dd7092dfba15bd90a55d49c420cf1d6a3ee1abb031bf882064d7b 恒等 ✓ ■ 另: 本批另发一件报 ar 之两处前置须澄明(执柄面队列/内容二面冲突 ∧ 口径候圈选), 见 comm 件(未获确认前本表口径与执柄皆属我侧自定, 非定谳)。 零语义变更(纯文档 + evidence)。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 20 天前 | |
v1.6.2 SW.3.3 dev 域活体接线探针交付(ar 批令 2026-09-28「即启」同日兑现, 主线域件 kernel/插件仓增量零触发): examples/m2_subscribe_probe.rs 三 K 件 pub API 只读消费——kernel v1.4.4 Registry::mount+watch_status 原语(K-4 零增量定谳面, emit_status 与 Loader::mount_rows 同通路)+xwtui v0.3.8 plugin_watch 通道/attach/run_disposer(件③ 最小增量载荷 {entryId,phase,at} R4 结构体级)+xwmgmt v0.1.5 audit_cmd::append_plugin_event(件② M-e 六字段域写点); [dev-dependencies] 承载=产品 bin 依赖图零增量(lock 仅 +6 行 dev-deps 边, 零新包零新源, DUAL=1×6 复证); m2-spec §3 判据全咬合(S33a-d, evidence/M2_walkthrough_20260928_043928.log): 增量流 4 条逐字留痕(Loading→Active)+断线 run_disposer 零增量(即时性降级非失真)+重连增量恢复+全量对齐块 4 行全 Active(Loader 唯一权威, App::align_plugin_state 同构载荷)+M-e 联立在线装载留痕随审计时间线(4 条 load 事件 revision 单调 0..3, SW.4.1 后半 (b) 承继面实证); 拓扑发现申报 ar 候裁: 产品 TUI 运行链无活体 kernel::Registry(App::new 吞 runtime dev_app.rs:257+BootConfig 两字段无钩子位 boot.rs:33-36)——产品装配点 attach=kernel-host 源增量=新 tag(K-chain 件④ 形态)非本批零触发面; harness S33 段集成(探针沙箱隔离+timeout 短路); SW.3.3 勾选, CLI --watch 不做(1c 定谳⑥候下版) Co-Authored-By: Claude Code <noreply@anthropic.com> | 21 天前 | |
v1.7.2 件② 批11 —— AC2 fuzz 语料回归(靶 + 语料入库 + 固定时长回放 + 腿 + 夜跑) 承 ar 裁决05 裁3(fuzz 靶认可)∧ 批10评审 A(准进批11)。 fuzz/ 靶 crate(独立 workspace): 靶 = parse_worker_threads 纯解析面 —— 产品面唯一之 「外部字符串 → 内部值」通道 ⇒ 其健壮性即产品正确性之面(非「为满足 AC 而 fuzz 空函数」)。 路径依赖 ../deep ⇒ deep 又以 #[path] 引 src/pure.rs ⇒ 零拷贝零漂移。 靶载不变量(value 恒 Some ∧ 回退必取入参缺省)⇒ 靶可崩, 非恒绿。 语料库入库 6 档(8 / 0 / abc / +8 / usize::MAX / usize::MAX+1 ⇒ 覆盖四支 + 边界)。 ★ 实测捕出之订正: libFuzzer 不加载 0 字节语料档(文件系统 7 ⇒ files found 6) ⇒ 载体增 0 字节闸 ∧ 删该空档 ⇒ 二源计数对表。 载体 scripts/fuzz_replay_gate.sh: 回放取 -runs=0(逐语料一次, 无变异)—— 开放 fuzz 之 耗时与结果皆非确定 ⇒ 作门禁即「以掷骰充判据」; 回放确定性且有界(实测 7 runs / 0 秒)。 三处失真闸: 靶面 0 / 语料 0 / 未见 seed corpus 行 ⇒ 皆红。 腿 scripts/tests/ac2_fuzz_leg.sh: PASS=4 FAIL=0 G1 真面 rc=0 ∧ 靶面 1 ∧ 语料 6 G2 独立读数(libFuzzer files found ⇔ 文件系统档数) R1 临时面注入【必崩靶 + 触发语料】⇒ 回放 rc=1 ∧ 命中具名 probe: known-crash replay R2 同形面不注入 ⇒ rc=0 腿件当场自捕二缺陷并订正: ① cargo-fuzz 须【根 cargo 项目】(临时面唯 fuzz/ ⇒ could not find a cargo project ⇒ R1/R2 双双失真) ⇒ 补最小 [workspace] members = [] ② G2 谓词取错位(取 files found 之后文 ⇒ 无数字 ⇒ 恒空)。 nightly-deep.yml 增 fuzz-corpus job(on: 不变 ⇒ AC5④ 负向判据仍结构成立)。 检查14: fuzz ∧ fuzz/Cargo.toml 具名排除(二形并列 —— 目录形供②臂, 精确形供①臂); .gitignore 增 fuzz/artifacts/(崩溃产物面 · 非交付件)。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 15 天前 | |
V1910-intake(ar): 线档表破格修复(V1910-18说明回行·8行NF-1全5·plugin-ar通报收账) | 8 小时前 | |
v1.9.10(test): M2 G-5 屏面可达性器 —— 立器 + 阴性对照 + 前基线(承 ar 裁02 裁4) 令源: ar 裁决02 裁4 —— 「G-5(缺省 inline 形 Focus 可见性)列 M2 验收【必验】」。 新增器: release/v1.9.10/tools/m2_focus_screen_face_probe.py sha256 f019de2fc498eef129bee79949ca2f0518672cb43677e2a9529af9c42051ce5f ★ 与既有 m2_focus_roundtrip_probe.py【异面】—— 彼观测【会话快照档】, 本器观测【真终端屏面字节】。 三腿: I inline F0..F3(既存内容)· II alt F0..F3(对照)· III inline 先定态后产内容(新产内容)。 阴性对照(真阴性 · 面 = 出货 bin d082ce29… = M1 期守⑨值 ⇒ xwtui v0.3.51 · Focus 未立 · 唯二态): 留证 evidence/m2_focus_screen_face_v0351_negctl_r4.log(200 行) inline: 甲-2 满环=1 ★不达 · G-5甲 ★不达 · G-5乙 ★不达(互异=1) alt : 甲-2 满环=2 ★不达(符 v0.3.51 之二态)· G-5甲 ✓ ⇒ ★ 器之判别力得证: alt 腿 F0(▸ read_file ×2 + [展开]) ⇄ F1([tool] read_file {"path":"a.txt"}) 确变 ⇒ 器能辨态变 ∧ 报 2 态正合二态 ⇒ 非恒真非恒假。 前基线: 于 v0.3.51, inline 形之模式切换【零可观】(既存 ∧ 新产皆然)。 我侧二自捕(皆器之退化形 · 照实): ① 相对 --bin ⇒ 器 cd 入隔离 cwd 后解析失败 ⇒ TUI 从未起 ⇒ 全腿空屏(11 处 No such file) ⇒ 修: --bin 绝对化 + 阳性对照(TUI 真起)+ 未起即显名作废。承 screen-reader-must-prove-it-reads。 ② 夹具 {"text":…} 条目【终结助手轮】⇒ 会话半截 ⇒ 修: 二问二轮。 承 noop-probe-makes-predicate-vacuous。 ③ 并载: 甲-1(F3==F0)于全态同形时恒真 ⇒ 唯于甲-2 成立时承证力(器之判表已显名)。 typos: 三留证档含【工具原始输出之截断 JSON】⇒ 依律自登记入 ①h 族(具名非通配); 全仓裸跑 rc=0。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 2 小时前 | |
v1.9.10(dev): M1 折叠层级批 —— xwtui v0.3.50 ⇒ v0.3.51(二面一致 · 零源切 · 非元数据-only) 令源: ar v1.9.10 路标 r2 §二 M1 ∧ 入口评审 §二 ∧ comm「M1 消费可起」。 - 前件(一手 · 裸仓 /tmp/xwtui-probe): annotated 5f18f181828ef54e50e29bf9abe430cb2390fb38 → deref 918821c652ffa7a93807117a39f8be013b5dcb53(= refs/heads/master 尖 ⇒ 双轴齐) ∧ 与 ar 所报逐位吻合 ∧ V=T(tag 内根 Cargo.toml:154 = "0.3.51")。 - ★ 打回史之核(免读作「tag 曾移」): ar ③ 复评判红之被评尖 9592ff79 ∈ 918821c6(rc=0 · 后裔) ⇒ 其后续 ea87038(二次补正)+ 918821c(订正 ③ r3 挂账四条注释 · 纯注释)⇒ tag 系补正后所打。 - 行为变更陈述(裸仓 tag 注 + diff): tag 注「v0.3.51 —— v1.9.10 批① M1 折叠层级 (L1 语义分组 ∧ L2 块级出口)+ 最小 MessageKind」; 差域 22 档 +935/−331 (生产码 7: types.rs/mod.rs/output.rs/input.rs/sink.rs/fold.rs/layout.rs · 新测档 v1910_m1_bc.rs) ⇒ 非元数据-only ⇒ 有行为面(判据归 test)。 - 二面一致(本批为二面非三面 —— C-DU-1 旧址键退役之直接后果): 声明面 Cargo.toml:1110 ∧ patch 面 :1555 皆 v0.3.51 + deref 918821c6; 谓词 grep -c 'tag = "v0.3.51"' = 2 ∧ v0.3.50 非注 tag 行残留 0 ∧ deref 行数 2。 - ★ 并载: xwtui 自身 manifest 仍存 kemeng1 键段 11 条(插件侧域 · LEGACY_REMOTE_FREEZE §六 已显名 · 未动)。 - 零源切 ⇒ deny.toml ∧ verify_release.sh ∧ ci.yml 皆零动。 - Cargo.lock 差 2/2 全归因(唯 xwtui version+source)· 移锁之法 = 唯删 git+ 块(删 34 块)强制重解析。 - 收敛核: git 源包数 34(= 基线)∧ 唯源 URL 29(= 基线)∧ kemeng1 源 0 ∧ xwtui 实例 1 ∧ patch.unused 0 ⇒ DUAL=0。★ 谓词并载(34 = 包数 ∧ 29 = 唯源 URL 数 · 二数皆真 · 面不同)。 - 锚重签 cf0bc8b8…⇒1b0e5b9b…(sha256sum -c rc=0)· SBOM 值变 8 叶 = 实质 6 + 豁免 2 · components 361 不变 · 绝对 path+file:/// 计数 0。 - 检查14: 哨符区间恒 16 行 · md5 2caf442a… 与锚逐位符(未变)· 区间内 xwtui 命中 0 ⇒ 名册零动 · 无须重锚。 - 四门禁: fmt 0 / clippy 0 / nextest rc=4(0 tests 结构性零覆盖非绿)/ build 0(2m58s)· 内嵌 rev strings 实取 xwtui-…/918821c ✓。 - 探针: metadata --locked 0 · 锚 0 · sbom_gate 0 · ac10 PASS=6 FAIL=0 · typos 0 · taplo 0 · bash -n 0。 - ★ 部署归 D1 档 ⑩(候 M2 批齐后一次做 · 用户裁取乙)⇒ 本批不重部署。 - 整门(12m+)∧ 24 臂自证器 ∧ 行为面判据归 test。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 11 小时前 | |
v1.9.10(dev): F-GT-07 落批 —— 检查14 名册补登 red24 + 同批重锚(承 ar 裁决02 裁3) 射程 3 档(器面二档 + 证据档一)· 零产品码 · 零 Cargo.toml/lock/SBOM 面。 ① 名册 33 ⇒ 34: scripts/verify_release.sh:2193 尾附 "red24_changelog_prev_header_dual_control"(v1.9.9 M4 批 16a15ad98 所立 · 与 red20–red23 同族 ⇒ 按 v1.9.2/v1.9.3 D1 先例补登; 证1 预核: 有代码级命中 verify_release_gate_selftest.sh:1587/1666, 名形非 ^v1[0-9]+_ ⇒ 不触唯现役世代约束)。 ② 重锚 LOCK_REGISTRY_MD5_ANCHOR: 2caf442a520bf8077b37658678249d99 ⇒ 4a09ac95251087db2cabcbc19102b960(器自身谓词实算: 区间恒 16 行 ∧ 变唯名册行一处)。 ③ 注块照实订正: verify_release_gate_selftest.sh:737-739(v1.9.9 D1 块三处不成立 —— 窗内另有 16a15ad98 ∧ red24 即本窗新增 ∧ 原书谓词 \\(\\) 双反斜杠实跑 0 非 24) ∧ :745-747(v1.9.10 D1 块同病)。★ 新捕: 所书读数与所书谓词不符(正形 \(\) 实跑 24)。 ④ 新增本批注块(具名其由 · 零级联 · 差守候项)。 级联零: 不新立红侧臂 ⇒ ci.yml:608 步名 24 red sides 零动 ∧ 检查26 对表零动 ∧ 检查27 到达面零动。差守另立候项,与 24 臂补臂同批(承 ar 裁决02 裁3)。 证据档: release/v1.9.10/evidence/F_GT07_REGISTRY_RED24.md Co-Authored-By: Claude Code <noreply@anthropic.com> | 6 小时前 | |
v1.9.4 M7(dev): botgate 二红真修(doc-check + audit 载体对齐)+ AC7 可判面 令源: 用户令(ar comm 10:02Z)「M7 开工」+ ar 裁决 08 裁1/裁3 + 上游 test AC7 独立验证 (release/v1.9.4/V194_AC7_PIPELINE_VERIFICATION.md · 8e516bacd) 一、doc-check —— 真因 + 真修(承裁1) 真因(一手 · 取自 botgate doc-check.log 原文): error: missing documentation for the crate --> src/main.rs:10:1 = note: requested on the command line with -F missing-docs botgate 之 doc-check 以 -F missing-docs 跑 rustdoc, 而 src/main.rs 无 crate 级文档 ⇒ missing_docs 触发 ⇒ exit_code=101。★ 非工具链之故(同跑 check/clippy/test 三步皆过)。 修: src/main.rs 首部补 //! crate 级文档块(真修 · 非豁免 · 非改判据)。 二态: RUSTDOCFLAGS="-F missing-docs" cargo doc -p xwcode-skeleton --locked --no-deps 修前 rc=101 ⇄ 修后 rc=0(compiler-message 0) 二、supply-chain —— 豁免载体与器对齐(承裁1) 真因: botgate 走 cargo audit(不读 deny.toml)⇒ rustls 四公告于 cargo deny 豁免生效 而于 cargo audit 不生效 ⇒ 同红根于二器异判。 修: 新增 .cargo/audit.toml(cargo audit 之载体)。 取法(照实 · 非抄 deny.toml 全表): 唯收 cargo audit 判为 vulnerability(error) 之四条; unmaintained ×3 于 cargo audit 系 warning(不阻塞) ⇒ 刻意不收, 留作可修性活提示 (同本仓对 yoke-derive yanked 之既裁 · V1.7.0_M2_SUPPLY_CHAIN_RULINGS_01 取乙形) ⇒ 二载体条目数不必相等: 取决于各器缺省严重度, 非载体之失。 二态: cargo audit --json --file Cargo.lock 修前 rc=1(count=4) ⇄ 修后 rc=0(count=0); 修后 warnings 仍 unmaintained3/unsound2/yanked1(活提示保留, 非清场) 三、AC7-c PR 前件 —— 可判面已取(test 之 GAP 系端点名误) 正名: GET .../protect_branches ⇒ 200 [](未配)∧ GET .../pull_request_settings ⇒ 200 (approval_required_approvers=1 · approvers/reviewers/disable_merge_by_self/can_force_merge 逐值) ★ test 四形非正名; 其中二形实返 405/400 ⇒ 端点存在(形不合), 非「不可观测」 ⇒ 404 ⇄ 405/400 之别即「无此端点」⇄「有此端点而形不合」; 以 404 判不可观测致假 GAP。 ★ 本席未落任何治理变更(照实 · 候裁): 用户令「能配则配」与「当前仍直推」在分支保护一项相抵 ⇒ 只取读数, 不动仓库设置。令牌 project_access.access_level=40(Maintainer)。 四、并载: GitCode Actions(.gitcode/workflows/)之判 —— 非本版流水线之路 - 新址编排入口 = .gitcode/workflows/(非 .github/workflows/) - 探针二读数并载(含本席一次自我推翻): 侧支时 workflows=0(初判「特性未开」= 失当) ⇄ 落默认支后 workflows=1 state=active(推翻初判; 真因 = actions/workflows 无 ref 参数 ⇒ 只认默认支) - 执行面: 推空提交后逐 20s 轮询 actions/runs 六次恒 0 ⇒ 注册成立 ⇄ 执行不成立 (与文档「须申请代码化流水线内测名额」相合) - ⇒ 本版 M7 之流水线 = xuanwu-ci, 非 GitCode Actions; 探针件已撤(不留死配置) - 附: .github/workflows 三档 AtomGit 语法皆 valid=false(ci 85 / nightly 30 / codeql 5 诊断) ⇒ 若日后取迁移之路须先过语法适配(候裁) 五、AC7-b 端到端 = GAP 续(照实): 本席未取独立可判面; 不以相邻读数充该面之证。 六、自检 / 制品 - fmt rc=0 · clippy -D warnings rc=0 · build --release rc=0 · 现役守卫 v154 十五全过 rc=0 · typos rc=0 - ★ 二进制 sha256 2b165bab… / size 35796032 与部署位【逐位同】⇒ //! 文档块字节中性 ⇒ 无须重部署 七、凭据纪律(照实 · 含一次外显) - ~/linux.txt 经 $(cat …) 取用 · 未入库/未入报文/未落档 - ★ 并载一次失: 首次探针以 sed 遮蔽, 该正则假定 key=value 形而该档系裸串 ⇒ 遮蔽失效 ⇒ 令牌值当场打印一次。根因 = 以【形之假定】充【遮蔽】; 补救 = 其后只以 $(cat …) 取用。 呈报用户可自决是否轮换。 证据档 - release/v1.9.4/evidence/M7_PIPELINE_BOTGATE_FIX_AND_AC7_FACES.md - release/v1.9.4/evidence/m7_pipeline/{01,02,03}_*.txt + SHA256SUMS Co-Authored-By: Claude Code <noreply@anthropic.com> | 4 天前 | |
3g 终态复跑全绿+3a 勘误二次订正: 六件套 RC 序 4/101/0/0/0/0@34ba96da9+A 点×3 中位 24,004kB<30,000 绿 (v1.5.2): ①六件套终态亲跑@3g 基点 master/34ba96da9(ar r2 后实时 HEAD, 此树=3i tag 候选树)——fresh 构建 CARGO_BUILD_JOBS=16 --locked EXIT=0(bin 43,268,496B)/nextest EXIT=4 薄 facade/doctest error101/v152 守卫 28 断言全✓/锥锁真 HOME 逐仓一致/gate-selftest 六红侧八腿全过/G 门 GATE_RC=0 G1-G6+G4 DUAL=0+G5 缺省跳过注记; ②A 点×3 复核 run13-15: 中位 24,004kB(24,000/24,004/24,008 位稳差≤8kB)<30,000kB 红线=绿 0.80×——对照链 AC-CG 24,016→3a 24,012→3g 24,004 三点位稳差≤12kB 防回潮持续 PASS, NTOT=1 六点恒等; ③3a 档勘误二次订正: selftest 真值=六红侧①-⑥八咬合腿(④检查9/⑤L4 双向/⑥2c C1 md5 锚), 首报『三』与首勘『五』均系 head 截断误读, 全量清点 log 定谳; W 申报×2=TEST_COUNT_ANCHOR『五咬合』陈旧计数(D5/ar 面)+脚本 summary『三红侧』v1.2.1 陈旧字面(候下版整形, 本版不动 tag 候选树); ④判据 C: 双源 1.5.2+pane 三轮+sha 对照归因闭合(8dde512e vs 3a 82386a54=构建路径嵌入, git diff 11 文件全文档零代码面+Cargo.lock diff=0); ⑤S1 原值口径全账; 原始件 13 份 3g_attachments/。同意进 3h 无保留 Co-Authored-By: Claude Code <noreply@anthropic.com> | 25 天前 | |
v1.9.8(test): L5 活档同步【态面不入判】(GUIDE/PLAN · 免「活档 ⇄ 器」相悖) 令源: docs/V198_RULINGS_02.md(ar 裁 02 取乙)· 随前笔 3e19215e2(器改动)之后笔 由: 器已改而 tests/l5/GUIDE.md / PLAN.md 仍以【现在时】书「态面 滞后/异面/未判 ⇒ D1 留池」 ⇒ 活档与器相悖 ⇒ 后续读者(含 ar 复核)据之即误(承在册律「快照发现须核现 HEAD」同轴)。 一、GUIDE.md(活指导书 · 五处) · §6.3 样例: 判级行改 D0 ∧ 增【★ 观测面 · 非判据面】标; 原 D1 形**照实保留**为史 + 增 ★★ 变更注(令源 ∧ 一手由 ∧ 留证径)。 · §7.1 定级三档表: D1 行删【态面 滞后/异面/未判】; 原「态面腿只升不覆」句改 ★★【态面腿不入判】段(判级唯二来源 = 腿面 ∧ perf 面)。 · §7.2 处置路径表: 引擎 consensus_head 滞后行之判级 D1 ⇒ 【不入判(观测)】。 · §7.4 真实处置例: 增 ★★ 本注(处置已止 ∧ 现象仍在 ∧ 引擎 gap 未修)。 · §九 态面腿: 原裁句后增 ★★ 后裁注(「定级 D1 留池」已撤 · 余三句仍有效); 「入判」行 ⇒ 【皆不入判】; 红侧对照句增 ★★ 注(该三臂系历史形 · 今不再产生档位差 ⇒ 红侧对照对态面腿已失效)。 · §十 排障: 二行(态面=滞后 / 态面=未判)之处置由 D1 ⇒ 【不入判 · 观测并显名】。 二、PLAN.md(一处) · 八·补 落子实证表后增 ★★ 后注: 第 4 项及其咬合注系历史形; 今阳性臂不复现; D0* 放宽未撤(仍为 perf 路径正形)。 三、纪律自守 · 历史面**未改写** —— 皆以 ★★ 注【并载二裁】(原形 + 现形),非删改(承在册「并载」律)。 · 未 amend / 未 force; typos 二档 rc=0; 工作树唯此二档。 | 1 天前 | |
docs: TUI async response analysis and plan (P0-P2) | 19 天前 | |
chore: onboard xwcode to xuanwu-ci(重建于现 master b9f9667c6) 承 MR#2 之 onboard 笔 ec907c2d6(fork benjamin-747/xwcode)—— 该笔之基 c098c46f1 早于 M7 之 botgate 二红真修 c58f0c5f5 ⇒ MR 头未含修 ⇒ run #14 之二红系 【面之陈】(修未达被检之头)非【修之失效】(test 一手归因 · 二态:.cargo/audit.toml MR 头 404 ⇄ master 200 ∧ src/main.rs:1 旧/新)。★ 本席无 fork 写权 (一手:git push --dry-run ⇒ <CH.00905401> You are not allowed to push code to this project)⇒ 改由主线新支发新 MR(test 已许可「新分支发新 MR,唯须头含 b9f9667c6 之树」)。 本笔 = 现 master b9f9667c6 + ec907c2d6 之 onboard 件(31 档逐档照收)。 ★ 唯二档【不取】(照实): · typos.toml —— 该笔之 ①i 族系【复登】(三档已在 ①f :195/:196 ∧ ①h :818) ⇒ 承 ar 裁决 03 §三「族之归属取自行语义(引证行→①f)」之判例 ⇒ 不落 ①i (extend-exclude 系集合并 ⇒ 覆盖面不变)。 · scripts/tests/verify_release_gate_selftest.sh —— 其 _adj_key_table 之修系 门禁本体【潜在缺陷】之修(现态 :919 仍旧形)⇒ 须自证(阳性/阴性对照 + 红侧全跑)方可落 ⇒ 另批处置,本笔不取。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 4 天前 | |
v1.9.5 M4(dev): 审计清偿八条 + 令刷覆盖度守④ + 双跑可比性腿 + durable 红侧臂 ★ 令源: ar comm(04:15Z)「M2毕 M4起批 审计清偿 加 L5修 按r2四」∧ V195裁决06 (裁3.1 F-CI-11取甲 · 裁3.2 F-CI-13拟形可 · 裁1 L5归test · 裁4 F-RE-08转test)。 ■ §3.1 十四条逐条销项(判据面唯仓库交付件) 已落(我侧域 · 八条): F-CI-06 Dockerfile 头部增「仅供本地冒烟 · 发布面以 docker/Dockerfile.release 为准」注 F-CI-08 .gitignore 并写 .botgate/ ∧ .botgate(原唯目录形 ⇒ 文件形漏判) F-RE-10 同上(同源二条合修) F-RE-12 .gitignore 增 opencode.json(原唯 .opencode/ 目录形 ⇒ 根文件形漏判) F-CI-14 .cargo/audit.toml 迁入 3 条旧公告 · Dockerfile.supply-chain 去 --ignore ⇒ 载体单源 F-SC-05 Cargo.toml description 去版本前缀(入 SBOM ⇒ 机器可读面失真) F-RE-05 Cargo.toml 判据 C 二行改【引用形】(--version == [workspace.package] version) F-SC-06 install.sh 旧址 fail-fast(die 2)+ main 顶层前置判定(使 die 真出) F-SC-07 dist-workspace.toml 增【复跑条件】(升 cargo-dist-version 须同批重跑二态探针) F-CI-09 Dockerfile.dockerignore 补 ~/.cache/xwcode/ 使成 .dockerignore 之超集 他方已闭(我侧实核 · 零动作): F-RE-09 ac7_pipeline/SHA256SUMS 39/39 OK ∧ 根 SHA256SUMS 仓根跑 45/45 OK(已纯 -c 形) F-RE-11 audit/v1002-arch-audit-r18/ 已不在工作树 ∧ 入库 0 非我域(转 test · 我侧不碰): F-RE-08 mr_head_staleness_two_state.txt:35 侧注「6 笔」未锚 rev(出具方 = test) ■ 腿件入位(三条 · 承 ar 裁06) ① F-CI-11 取甲 ⇒ 检查2 增【守④ 令刷覆盖度】: 四档(RELEASE_NOTES/CHANGELOG/ROADMAP/ RELEASE_REPORT)之【本版节在位 ∧ 制品面口径标记在位】。取【正形标记】形(承守③「防删块 即绿」律); 前件缺 ⇒ 一条 skip_gap 显名(禁以未判充绿)。射程显名: 唯判【字段在场】, 不判其值(值之真伪归发布评审)。 ② F-CI-09 腿 ⇒ scripts/tests/docker_context_ignore_leg.sh(超集判据 + R1/R2 阳性对照) ③ F-CI-13 腿 ⇒ scripts/tests/nightly_dual_run_reconcile_leg.sh(静态可比性四守 + R1/R2); 活读数须外部网络 ⇒ 显名不承(承 ci_face_leg.sh skip 先例 · 禁静默绿) 二腿挂 .xuanwu/Dockerfile.lint(pr-check · 同 lint_face_leg.sh 先例) ■ durable 红侧臂(承裁15裁2② / 裁16裁2①) 检查4 守②(Cargo.lock SHA256 锚)⇒ selftest 红侧㉒ 三臂: 甲 阴性(锚合 ⇒ 正形标记在位 ∧ 本守零 FAIL) 乙 阳性(篡改 lock 一字节 ⇒ 锚失配 ⇒ 具名 FAIL ∧ rc≠0) 丙 阳性(删已入库锚档 ⇒ ls-files 仍中 ⇒ 显式 FAIL · 证删档不逃) 立臂三律落实: 夹具扩至同形(Cargo.lock + 锚档皆入库)∧ 谓词具名到行(禁泛形 grep 检查4) ∧ 空窗键名净 token(本臂不造空窗 · 记此明其不涉) 并立红侧㉓(守④ 之判别力): 甲阴性 / 乙真病相(抽 RELEASE_NOTES 标记 ⇒ 具名 FAIL)/ 丙删块(删整节 ⇒ 报前件缺显名 ∧ 全门仍红 ⇒ 删块不逃) ■ 取捨并载(交评审) · F-CI-14: 3 条 unmaintained 原以命令行形传 ⇒ 唯 supply-chain 作业静之, 本地裸跑仍见提示 (原注「可修性之活提示」); 迁入本档后该面收窄, 换取【载体单源 ∧ 器升级不失效】。 · F-SC-06: 取【die 2】而非【warn 续行】(warn 仍装旧树 ⇒ 未消静默错版之害)。 · 守④: 不承「四档判级**值**一致」(该面须人判 · 承「报告 ≠ 获准」)。 ■ 门禁 fmt rc=0 ∧ clippy rc=0 ∧ nextest rc=4(0 tests · members=[] 结构性零覆盖 · 非绿声明) ∧ build --release rc=0(3m03s)∧ typos rc=0 ∧ taplo rc=0 ∧ sbom_gate rc=0(361 叶 · 归一化一致) ∧ heredoc_expand_guard rc=0 红侧㉒/㉓ 隔离实跑各三臂全咬合(rc=0) 整门 + 全自证器按律重跑(承 ar 裁06 裁3.1)—— 见本批证据档。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 3 天前 | |
v1.7.2 件② 批9补 —— 批9评审 C(2阻塞)清偿(探针假值入库 + 检查14②三面不一致) ★★ 二阻塞同源于一(照实 · 承评审程序建议): **读数取【落笔前】之面** —— 腿 PASS=5 与门禁 rc=0 皆提交前跑出 ⇒ 提交后新档入窗/新提交入史 ⇒ 二读数皆失真。★ 此即本席**批8 自捕之律的 自我重犯**(批8 载「窗口面只及已提交之改动 ⇒ 绿 ≠ 无害,可为尚未入窗」)⇒ 同根。 ★ 流程订正(本批起): **先 commit,再跑腿与门禁** —— 读数须为【落笔面】; 若红则前向修。 阻塞① · 腿件 R1 探针假值**入库**(红线违反): - 一手(ar 复跑): 【新】未抑制命中 —— generic-api-key | scripts/tests/ac12_secret_scan_leg.sh:89 | @bc585941。根因 = 首版将假值写成**连续字面量** ⇒ 该行随腿件**入库** ⇒ 全历史扫命中腿件自身 - ★ 定性: 造态虽在 $TMPDIR,然【**字面量本身入库**】即违红线(「植入之假密钥不得入库」) - 修二: ① 甲表加 bc585941… 并**照实载此失**(抑制为 force 禁下之唯一可行 —— 该提交已在史) ② **根治**: 假值改【**分段拼接**】—— 源文本无连续密钥形串(单段 11 字 < 规则阈 ⇒ 扫 blob 不命中); 运行期拼合后方成完整假值 ⇒ 探针仍**真测器** ⇒ **后不再入库** 阻塞② · 检查14 ② 甲臂与 SCAN_PATHS/INCLUDE **三面不一致**: - 一手(ar 隔离复现): 窗 v1.7.1..HEAD 共 59 档,唯一界外者 = .gitleaks.toml —— 其在 SCAN_PATHS ∧ 在 ①INCLUDE,而 ② 甲臂 case 名表**无此名** ⇒ 落乙臂(EXEMPT)亦不中 ⇒ ② 应 fail - ★ 该割裂系**本席自造**(批9 加名入二面时**未同步第三面**) - 修(ar 裁倾向甲): ② 甲臂补 .gitleaks.toml ⇒ **三面一致** - ★ 并修(承评审建议(强烈·顺手)· r41 m1 P2-1): ② 甲臂补 crates/* —— 同族缺陷(纳入/扫描域 有而窗口臂无); 现 crates/ 缺席故零触发,补之防未来静默 ★ 三面一致之不变式(本席自设 · 供后续批次核): CHECK14_SCAN_PATHS ≡ CHECK14_DOMAIN_INCLUDE ≡ ② 甲臂 case 名表(后者为选择器,前者为域)—— 任一新增纳入面须**三处同改** ★ 锚复算: 哨符区间 md5 编辑前后同值 = deca0d617910bc07f9d482fd5dc4124f = 锚 ⇒ 不须重锚 ★ 腿 G2 期望随动: 甲表 12 ⇒ 13(bc585941… 之补登) ★ 并载(照实): 本批二阻塞**皆由 ar 捕出**, 非我侧自捕; 且同根于流程缺陷 ⇒ 其修不止于二处代码 - D6: tasks.md 批9补(T9.14–T9.17) Co-Authored-By: Claude Code <noreply@anthropic.com> | 15 天前 | |
docs: update B3 status — fixed (200e1b02), regression tests GREEN (6dc77b4d) B3 root cause documented earlier; now record the 3-layer fix and the claude-test regression test results (b3a/b3b/b3c all GREEN). Co-Authored-By: Claude <noreply@anthropic.com> | 2 个月前 | |
v1.9.10(dev): D1 升版 1.9.9 ⇒ 1.9.10(射程 12 档 · ★ 档 ⑩ 候 M 批) 令源: ar 路标 r2 §二 D1 ∧ 入口评审 docs/V1910_ENTRY_REVIEW.md §二「dev 先行余项+D1」 ∧ 裁 V1910-01 §一【取甲】∧ comm「C-DU-1 全毕确认; 请续 D1 升版」。 - 射程 12 档(照 v1.9.6 975362fd5 / v1.9.8 66286888e / v1.9.9 8653f7f7b 先例): Cargo.toml version + 注块 ∧ Cargo.lock 根包 ∧ Cargo.lock.sha256 ∧ sbom ∧ CHANGELOG 顶条 ∧ RELEASE_NOTES 顶条 ∧ ROADMAP 🚧 v1.9.10 行 ∧ README 版本指针 ×7(含 [patch] 段/条目行计数刷新 58⇒29 段 ∧ 68⇒34 条)∧ 检查14 四件 ∧ 自评报告 ∧ 本证据档。 - ★ 本批之【例外】(用户裁 2026-10-19 取【乙】): 档 ⑩(重编 + 冷面复编 + 重部署 + 20M 自测)候 M1/M2 插件批齐后一次做(免二度部署)—— 本批唯落【文档面 + 器面】。 - ★ CHANGELOG 顶条系【插入】非【替换】(承 v1.9.8 D1 之失 · v1.9.9 M4 已立器面守): 硬证 = grep -c '^## v1.9.9 ' CHANGELOG.md = 1 ∧ 本笔 diff 首 + 行唯 ## v1.9.10 · 无 -## v1.9.9 ∧ 窗基 v1.9.9^{} CHANGELOG 首行逐字在场。 - 检查14 同批四件: 续期点 1.9.9⇒1.9.10 ∧ 名册 33 名零动 ∧ 重锚 d9adcc2a…⇒2caf442a… (哨符区间恒 16 行 · 区间内变唯 1 处)∧ 红侧⑩ 前移(咬合 1.9.10⇒1.9.11 / 对照 1.9.9⇒1.9.10)· 臂数恒 24。 - 窗二分: Cargo.lock 49−/49+ = 根包 1/1 + 钉面 48/48(24 包)· n_pin=24>0 ⇒ 含升钉窗 ∧ registry 0 包。 - SBOM: components 361 不变 · 值变 173 对 = 实质 171 + 豁免 2 ⇒ 全归因零余项。 - 四门禁: fmt 0 / clippy 0 / nextest rc=4(0 tests 结构性零覆盖非绿)/ build 0 (1m17s · 产物 --version = xwcode 1.9.10)。 - 探针: metadata --locked 0 · 锚 0 · sbom_gate 0 · ac10 PASS=6 FAIL=0 · typos 0 · taplo 0 · bash -n 逐改档 0。 - ★ 整门(12m+)∧ 24 臂自证器 ∧ 行为面判据 ∧ 档 ⑩ 部署归 test/候 M 批。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 13 小时前 | |
comm 基建角色通用化: 身份文件四名更替(ar/dev/test/xwdev)——CLAUDE-TEST.md+各 workspace .comm.yaml+comm_watch.py AGENT_CONFIG+machines.yaml ke.agents+config.yaml 白名单/delivery 同步更名; 旧名零残留; 与 WORKFLOW.md 更名(99e01d65)同批; 部署位 agents.yaml/comm_engine.py/comm_router.py 同日更名(引擎四承载点: 门禁态判定/初始态/notify/set_version 属主校验) Co-Authored-By: Claude Code <noreply@anthropic.com> | 25 天前 | |
v1.9.10(dev): M1 折叠层级批 —— xwtui v0.3.50 ⇒ v0.3.51(二面一致 · 零源切 · 非元数据-only) 令源: ar v1.9.10 路标 r2 §二 M1 ∧ 入口评审 §二 ∧ comm「M1 消费可起」。 - 前件(一手 · 裸仓 /tmp/xwtui-probe): annotated 5f18f181828ef54e50e29bf9abe430cb2390fb38 → deref 918821c652ffa7a93807117a39f8be013b5dcb53(= refs/heads/master 尖 ⇒ 双轴齐) ∧ 与 ar 所报逐位吻合 ∧ V=T(tag 内根 Cargo.toml:154 = "0.3.51")。 - ★ 打回史之核(免读作「tag 曾移」): ar ③ 复评判红之被评尖 9592ff79 ∈ 918821c6(rc=0 · 后裔) ⇒ 其后续 ea87038(二次补正)+ 918821c(订正 ③ r3 挂账四条注释 · 纯注释)⇒ tag 系补正后所打。 - 行为变更陈述(裸仓 tag 注 + diff): tag 注「v0.3.51 —— v1.9.10 批① M1 折叠层级 (L1 语义分组 ∧ L2 块级出口)+ 最小 MessageKind」; 差域 22 档 +935/−331 (生产码 7: types.rs/mod.rs/output.rs/input.rs/sink.rs/fold.rs/layout.rs · 新测档 v1910_m1_bc.rs) ⇒ 非元数据-only ⇒ 有行为面(判据归 test)。 - 二面一致(本批为二面非三面 —— C-DU-1 旧址键退役之直接后果): 声明面 Cargo.toml:1110 ∧ patch 面 :1555 皆 v0.3.51 + deref 918821c6; 谓词 grep -c 'tag = "v0.3.51"' = 2 ∧ v0.3.50 非注 tag 行残留 0 ∧ deref 行数 2。 - ★ 并载: xwtui 自身 manifest 仍存 kemeng1 键段 11 条(插件侧域 · LEGACY_REMOTE_FREEZE §六 已显名 · 未动)。 - 零源切 ⇒ deny.toml ∧ verify_release.sh ∧ ci.yml 皆零动。 - Cargo.lock 差 2/2 全归因(唯 xwtui version+source)· 移锁之法 = 唯删 git+ 块(删 34 块)强制重解析。 - 收敛核: git 源包数 34(= 基线)∧ 唯源 URL 29(= 基线)∧ kemeng1 源 0 ∧ xwtui 实例 1 ∧ patch.unused 0 ⇒ DUAL=0。★ 谓词并载(34 = 包数 ∧ 29 = 唯源 URL 数 · 二数皆真 · 面不同)。 - 锚重签 cf0bc8b8…⇒1b0e5b9b…(sha256sum -c rc=0)· SBOM 值变 8 叶 = 实质 6 + 豁免 2 · components 361 不变 · 绝对 path+file:/// 计数 0。 - 检查14: 哨符区间恒 16 行 · md5 2caf442a… 与锚逐位符(未变)· 区间内 xwtui 命中 0 ⇒ 名册零动 · 无须重锚。 - 四门禁: fmt 0 / clippy 0 / nextest rc=4(0 tests 结构性零覆盖非绿)/ build 0(2m58s)· 内嵌 rev strings 实取 xwtui-…/918821c ✓。 - 探针: metadata --locked 0 · 锚 0 · sbom_gate 0 · ac10 PASS=6 FAIL=0 · typos 0 · taplo 0 · bash -n 0。 - ★ 部署归 D1 档 ⑩(候 M2 批齐后一次做 · 用户裁取乙)⇒ 本批不重部署。 - 整门(12m+)∧ 24 臂自证器 ∧ 行为面判据归 test。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 11 小时前 | |
v1.9.10(dev): M1 折叠层级批 —— xwtui v0.3.50 ⇒ v0.3.51(二面一致 · 零源切 · 非元数据-only) 令源: ar v1.9.10 路标 r2 §二 M1 ∧ 入口评审 §二 ∧ comm「M1 消费可起」。 - 前件(一手 · 裸仓 /tmp/xwtui-probe): annotated 5f18f181828ef54e50e29bf9abe430cb2390fb38 → deref 918821c652ffa7a93807117a39f8be013b5dcb53(= refs/heads/master 尖 ⇒ 双轴齐) ∧ 与 ar 所报逐位吻合 ∧ V=T(tag 内根 Cargo.toml:154 = "0.3.51")。 - ★ 打回史之核(免读作「tag 曾移」): ar ③ 复评判红之被评尖 9592ff79 ∈ 918821c6(rc=0 · 后裔) ⇒ 其后续 ea87038(二次补正)+ 918821c(订正 ③ r3 挂账四条注释 · 纯注释)⇒ tag 系补正后所打。 - 行为变更陈述(裸仓 tag 注 + diff): tag 注「v0.3.51 —— v1.9.10 批① M1 折叠层级 (L1 语义分组 ∧ L2 块级出口)+ 最小 MessageKind」; 差域 22 档 +935/−331 (生产码 7: types.rs/mod.rs/output.rs/input.rs/sink.rs/fold.rs/layout.rs · 新测档 v1910_m1_bc.rs) ⇒ 非元数据-only ⇒ 有行为面(判据归 test)。 - 二面一致(本批为二面非三面 —— C-DU-1 旧址键退役之直接后果): 声明面 Cargo.toml:1110 ∧ patch 面 :1555 皆 v0.3.51 + deref 918821c6; 谓词 grep -c 'tag = "v0.3.51"' = 2 ∧ v0.3.50 非注 tag 行残留 0 ∧ deref 行数 2。 - ★ 并载: xwtui 自身 manifest 仍存 kemeng1 键段 11 条(插件侧域 · LEGACY_REMOTE_FREEZE §六 已显名 · 未动)。 - 零源切 ⇒ deny.toml ∧ verify_release.sh ∧ ci.yml 皆零动。 - Cargo.lock 差 2/2 全归因(唯 xwtui version+source)· 移锁之法 = 唯删 git+ 块(删 34 块)强制重解析。 - 收敛核: git 源包数 34(= 基线)∧ 唯源 URL 29(= 基线)∧ kemeng1 源 0 ∧ xwtui 实例 1 ∧ patch.unused 0 ⇒ DUAL=0。★ 谓词并载(34 = 包数 ∧ 29 = 唯源 URL 数 · 二数皆真 · 面不同)。 - 锚重签 cf0bc8b8…⇒1b0e5b9b…(sha256sum -c rc=0)· SBOM 值变 8 叶 = 实质 6 + 豁免 2 · components 361 不变 · 绝对 path+file:/// 计数 0。 - 检查14: 哨符区间恒 16 行 · md5 2caf442a… 与锚逐位符(未变)· 区间内 xwtui 命中 0 ⇒ 名册零动 · 无须重锚。 - 四门禁: fmt 0 / clippy 0 / nextest rc=4(0 tests 结构性零覆盖非绿)/ build 0(2m58s)· 内嵌 rev strings 实取 xwtui-…/918821c ✓。 - 探针: metadata --locked 0 · 锚 0 · sbom_gate 0 · ac10 PASS=6 FAIL=0 · typos 0 · taplo 0 · bash -n 0。 - ★ 部署归 D1 档 ⑩(候 M2 批齐后一次做 · 用户裁取乙)⇒ 本批不重部署。 - 整门(12m+)∧ 24 臂自证器 ∧ 行为面判据归 test。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 11 小时前 | |
v1.9.10(dev): M1 折叠层级批 —— xwtui v0.3.50 ⇒ v0.3.51(二面一致 · 零源切 · 非元数据-only) 令源: ar v1.9.10 路标 r2 §二 M1 ∧ 入口评审 §二 ∧ comm「M1 消费可起」。 - 前件(一手 · 裸仓 /tmp/xwtui-probe): annotated 5f18f181828ef54e50e29bf9abe430cb2390fb38 → deref 918821c652ffa7a93807117a39f8be013b5dcb53(= refs/heads/master 尖 ⇒ 双轴齐) ∧ 与 ar 所报逐位吻合 ∧ V=T(tag 内根 Cargo.toml:154 = "0.3.51")。 - ★ 打回史之核(免读作「tag 曾移」): ar ③ 复评判红之被评尖 9592ff79 ∈ 918821c6(rc=0 · 后裔) ⇒ 其后续 ea87038(二次补正)+ 918821c(订正 ③ r3 挂账四条注释 · 纯注释)⇒ tag 系补正后所打。 - 行为变更陈述(裸仓 tag 注 + diff): tag 注「v0.3.51 —— v1.9.10 批① M1 折叠层级 (L1 语义分组 ∧ L2 块级出口)+ 最小 MessageKind」; 差域 22 档 +935/−331 (生产码 7: types.rs/mod.rs/output.rs/input.rs/sink.rs/fold.rs/layout.rs · 新测档 v1910_m1_bc.rs) ⇒ 非元数据-only ⇒ 有行为面(判据归 test)。 - 二面一致(本批为二面非三面 —— C-DU-1 旧址键退役之直接后果): 声明面 Cargo.toml:1110 ∧ patch 面 :1555 皆 v0.3.51 + deref 918821c6; 谓词 grep -c 'tag = "v0.3.51"' = 2 ∧ v0.3.50 非注 tag 行残留 0 ∧ deref 行数 2。 - ★ 并载: xwtui 自身 manifest 仍存 kemeng1 键段 11 条(插件侧域 · LEGACY_REMOTE_FREEZE §六 已显名 · 未动)。 - 零源切 ⇒ deny.toml ∧ verify_release.sh ∧ ci.yml 皆零动。 - Cargo.lock 差 2/2 全归因(唯 xwtui version+source)· 移锁之法 = 唯删 git+ 块(删 34 块)强制重解析。 - 收敛核: git 源包数 34(= 基线)∧ 唯源 URL 29(= 基线)∧ kemeng1 源 0 ∧ xwtui 实例 1 ∧ patch.unused 0 ⇒ DUAL=0。★ 谓词并载(34 = 包数 ∧ 29 = 唯源 URL 数 · 二数皆真 · 面不同)。 - 锚重签 cf0bc8b8…⇒1b0e5b9b…(sha256sum -c rc=0)· SBOM 值变 8 叶 = 实质 6 + 豁免 2 · components 361 不变 · 绝对 path+file:/// 计数 0。 - 检查14: 哨符区间恒 16 行 · md5 2caf442a… 与锚逐位符(未变)· 区间内 xwtui 命中 0 ⇒ 名册零动 · 无须重锚。 - 四门禁: fmt 0 / clippy 0 / nextest rc=4(0 tests 结构性零覆盖非绿)/ build 0(2m58s)· 内嵌 rev strings 实取 xwtui-…/918821c ✓。 - 探针: metadata --locked 0 · 锚 0 · sbom_gate 0 · ac10 PASS=6 FAIL=0 · typos 0 · taplo 0 · bash -n 0。 - ★ 部署归 D1 档 ⑩(候 M2 批齐后一次做 · 用户裁取乙)⇒ 本批不重部署。 - 整门(12m+)∧ 24 臂自证器 ∧ 行为面判据归 test。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 11 小时前 | |
V196-M3③(dev): 落 .xuanwu/push-image.yaml(master 推入门载体)+ 四处照实订正 承 ar 裁 01(docs/V196_RULINGS_01.md · 笔 655e6bf32):A1 取甲 · A2 可受 · A3 转 intake · A4 认 · A5 dev 直落(不等 M3①)。 · 新增 .xuanwu/push-image.yaml: branch: master / dockerfile: Dockerfile / harbor_registry: registry.xuanwu.openatom.cn / harbor_repo: xuanwu/xwcode。 · ★ schema 权威面 = xuanwu-ci-bot src/push_image_config.rs(一手读外部器源码 · clone rc=0 · 尖 ea2dcf68911d2b5231bf65a07a5eeaff897c495e)—— 前稿判「未读其源码」本批已补。 · ★★ 二处缺省不可用(对源码逐字 · 非推演): ① branch 器缺省 main ⇒ 须显式 master(否则永不触发); ② harbor_repo 器缺省 {owner}/{repo} = xuanwu-code/xwcode ⇒ 须显式 xuanwu/xwcode (否则推错仓 · 静默)。trigger_paths 空 ⇒ matches_trigger_paths 恒真 = 门恒在(本档之的)。 禁载 secrets/credentialsId(bot README 明令)⇒ 本档零凭据。 · ★ 四处照实订正(该档落地使其陈述失真): ① .xuanwu/README.md:12 ② :195 改写为「已启用」; ③ Dockerfile:5-6 ④ scripts/verify_release.sh:2840 ★【追加】订正段, 未删原句任何 token (承在册「改注行会触『含注释』读数面」之戒)。③④ 之判不变: 发布资产面仍唯 docker/Dockerfile.release; 检查14 具名排除之判不变(消费者仍在外部器 ⇒ 仍在跑线之外)。 · 自检(针对性 · 分钟级): YAML 解析 rc=0(键四 · 无 images)· 凭据载值行 0 · bash -n verify_release.sh rc=0 · ★ 检查14 哨符区间 16 行不变 ∧ 实算 md5 0d5c31e17fa79a57c120352d145c17ae ⇄ selftest:707 LOCK_REGISTRY_MD5_ANCHOR 逐位同 ⇒ 无须重锚 · ① 臂枚举面不涉(非仓根档 ∧ 非 *.toml)· typos 五档 rc=0 · 检查25 守卫 OK。 · ★ 未跑: 整门(承「dev 只做针对性验证 · 全量 ∧ 发布整门皆归 test」)⇒ 候 test。 · ★ 未落: M3①(ci_state 接线 · 归 ar)⇒ 「可拦」尚未成立 —— 本配法唯使 master 推入【有跑】, 非使其【可拦】(承 A5 逐字: 禁以本配法充门已可拦)。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 2 天前 | |
v1.9.5 M4(dev): 审计清偿八条 + 令刷覆盖度守④ + 双跑可比性腿 + durable 红侧臂 ★ 令源: ar comm(04:15Z)「M2毕 M4起批 审计清偿 加 L5修 按r2四」∧ V195裁决06 (裁3.1 F-CI-11取甲 · 裁3.2 F-CI-13拟形可 · 裁1 L5归test · 裁4 F-RE-08转test)。 ■ §3.1 十四条逐条销项(判据面唯仓库交付件) 已落(我侧域 · 八条): F-CI-06 Dockerfile 头部增「仅供本地冒烟 · 发布面以 docker/Dockerfile.release 为准」注 F-CI-08 .gitignore 并写 .botgate/ ∧ .botgate(原唯目录形 ⇒ 文件形漏判) F-RE-10 同上(同源二条合修) F-RE-12 .gitignore 增 opencode.json(原唯 .opencode/ 目录形 ⇒ 根文件形漏判) F-CI-14 .cargo/audit.toml 迁入 3 条旧公告 · Dockerfile.supply-chain 去 --ignore ⇒ 载体单源 F-SC-05 Cargo.toml description 去版本前缀(入 SBOM ⇒ 机器可读面失真) F-RE-05 Cargo.toml 判据 C 二行改【引用形】(--version == [workspace.package] version) F-SC-06 install.sh 旧址 fail-fast(die 2)+ main 顶层前置判定(使 die 真出) F-SC-07 dist-workspace.toml 增【复跑条件】(升 cargo-dist-version 须同批重跑二态探针) F-CI-09 Dockerfile.dockerignore 补 ~/.cache/xwcode/ 使成 .dockerignore 之超集 他方已闭(我侧实核 · 零动作): F-RE-09 ac7_pipeline/SHA256SUMS 39/39 OK ∧ 根 SHA256SUMS 仓根跑 45/45 OK(已纯 -c 形) F-RE-11 audit/v1002-arch-audit-r18/ 已不在工作树 ∧ 入库 0 非我域(转 test · 我侧不碰): F-RE-08 mr_head_staleness_two_state.txt:35 侧注「6 笔」未锚 rev(出具方 = test) ■ 腿件入位(三条 · 承 ar 裁06) ① F-CI-11 取甲 ⇒ 检查2 增【守④ 令刷覆盖度】: 四档(RELEASE_NOTES/CHANGELOG/ROADMAP/ RELEASE_REPORT)之【本版节在位 ∧ 制品面口径标记在位】。取【正形标记】形(承守③「防删块 即绿」律); 前件缺 ⇒ 一条 skip_gap 显名(禁以未判充绿)。射程显名: 唯判【字段在场】, 不判其值(值之真伪归发布评审)。 ② F-CI-09 腿 ⇒ scripts/tests/docker_context_ignore_leg.sh(超集判据 + R1/R2 阳性对照) ③ F-CI-13 腿 ⇒ scripts/tests/nightly_dual_run_reconcile_leg.sh(静态可比性四守 + R1/R2); 活读数须外部网络 ⇒ 显名不承(承 ci_face_leg.sh skip 先例 · 禁静默绿) 二腿挂 .xuanwu/Dockerfile.lint(pr-check · 同 lint_face_leg.sh 先例) ■ durable 红侧臂(承裁15裁2② / 裁16裁2①) 检查4 守②(Cargo.lock SHA256 锚)⇒ selftest 红侧㉒ 三臂: 甲 阴性(锚合 ⇒ 正形标记在位 ∧ 本守零 FAIL) 乙 阳性(篡改 lock 一字节 ⇒ 锚失配 ⇒ 具名 FAIL ∧ rc≠0) 丙 阳性(删已入库锚档 ⇒ ls-files 仍中 ⇒ 显式 FAIL · 证删档不逃) 立臂三律落实: 夹具扩至同形(Cargo.lock + 锚档皆入库)∧ 谓词具名到行(禁泛形 grep 检查4) ∧ 空窗键名净 token(本臂不造空窗 · 记此明其不涉) 并立红侧㉓(守④ 之判别力): 甲阴性 / 乙真病相(抽 RELEASE_NOTES 标记 ⇒ 具名 FAIL)/ 丙删块(删整节 ⇒ 报前件缺显名 ∧ 全门仍红 ⇒ 删块不逃) ■ 取捨并载(交评审) · F-CI-14: 3 条 unmaintained 原以命令行形传 ⇒ 唯 supply-chain 作业静之, 本地裸跑仍见提示 (原注「可修性之活提示」); 迁入本档后该面收窄, 换取【载体单源 ∧ 器升级不失效】。 · F-SC-06: 取【die 2】而非【warn 续行】(warn 仍装旧树 ⇒ 未消静默错版之害)。 · 守④: 不承「四档判级**值**一致」(该面须人判 · 承「报告 ≠ 获准」)。 ■ 门禁 fmt rc=0 ∧ clippy rc=0 ∧ nextest rc=4(0 tests · members=[] 结构性零覆盖 · 非绿声明) ∧ build --release rc=0(3m03s)∧ typos rc=0 ∧ taplo rc=0 ∧ sbom_gate rc=0(361 叶 · 归一化一致) ∧ heredoc_expand_guard rc=0 红侧㉒/㉓ 隔离实跑各三臂全咬合(rc=0) 整门 + 全自证器按律重跑(承 ar 裁06 裁3.1)—— 见本批证据档。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 3 天前 | |
feat(v0.94.9): Wave 2 M19 机器名生产残留清零 — AC66/AC67 + Makefile release 统一 AC66 (02 R1): default_machine_ssh() 删除, new()/with_data_dir()/from_config fallback/from_env 全部 machine_ssh 改空表; 构造器注释声明 SSH host 由 配置/注入提供。安全失败路径实读: 空表下 agent_machine_for→None→ is_local false→ssh_host_for None→Err(Ssh("no SSH host configured")) (engine/自身豁免保留)。生产调用点零实证(grep)。 AC67 (02 R2): CommConfig.machine serde 默认 default_ke→default_local, 删除 default_ke() (复用既有 default_local, "local" 本机语义); 显式配置兼容 (serde 默认仅缺失字段生效)。 Makefile (claude-test 运维建议): build:/test:/test-* 统一 --release, 防 debug 产物堆积(62G 清理教训)。 自检: fmt/clippy -D warnings 干净; xw-runtime+xw-providers 106 套件全绿 0 failed; 生产区(cfg(test)前)机器名逻辑硬编码零命中 (agent_comm "ke" AgentId 别名属历史功能非审计点名, 已记录待决) | 2 个月前 | |
v1.9.10(dev): D1 升版 1.9.9 ⇒ 1.9.10(射程 12 档 · ★ 档 ⑩ 候 M 批) 令源: ar 路标 r2 §二 D1 ∧ 入口评审 docs/V1910_ENTRY_REVIEW.md §二「dev 先行余项+D1」 ∧ 裁 V1910-01 §一【取甲】∧ comm「C-DU-1 全毕确认; 请续 D1 升版」。 - 射程 12 档(照 v1.9.6 975362fd5 / v1.9.8 66286888e / v1.9.9 8653f7f7b 先例): Cargo.toml version + 注块 ∧ Cargo.lock 根包 ∧ Cargo.lock.sha256 ∧ sbom ∧ CHANGELOG 顶条 ∧ RELEASE_NOTES 顶条 ∧ ROADMAP 🚧 v1.9.10 行 ∧ README 版本指针 ×7(含 [patch] 段/条目行计数刷新 58⇒29 段 ∧ 68⇒34 条)∧ 检查14 四件 ∧ 自评报告 ∧ 本证据档。 - ★ 本批之【例外】(用户裁 2026-10-19 取【乙】): 档 ⑩(重编 + 冷面复编 + 重部署 + 20M 自测)候 M1/M2 插件批齐后一次做(免二度部署)—— 本批唯落【文档面 + 器面】。 - ★ CHANGELOG 顶条系【插入】非【替换】(承 v1.9.8 D1 之失 · v1.9.9 M4 已立器面守): 硬证 = grep -c '^## v1.9.9 ' CHANGELOG.md = 1 ∧ 本笔 diff 首 + 行唯 ## v1.9.10 · 无 -## v1.9.9 ∧ 窗基 v1.9.9^{} CHANGELOG 首行逐字在场。 - 检查14 同批四件: 续期点 1.9.9⇒1.9.10 ∧ 名册 33 名零动 ∧ 重锚 d9adcc2a…⇒2caf442a… (哨符区间恒 16 行 · 区间内变唯 1 处)∧ 红侧⑩ 前移(咬合 1.9.10⇒1.9.11 / 对照 1.9.9⇒1.9.10)· 臂数恒 24。 - 窗二分: Cargo.lock 49−/49+ = 根包 1/1 + 钉面 48/48(24 包)· n_pin=24>0 ⇒ 含升钉窗 ∧ registry 0 包。 - SBOM: components 361 不变 · 值变 173 对 = 实质 171 + 豁免 2 ⇒ 全归因零余项。 - 四门禁: fmt 0 / clippy 0 / nextest rc=4(0 tests 结构性零覆盖非绿)/ build 0 (1m17s · 产物 --version = xwcode 1.9.10)。 - 探针: metadata --locked 0 · 锚 0 · sbom_gate 0 · ac10 PASS=6 FAIL=0 · typos 0 · taplo 0 · bash -n 逐改档 0。 - ★ 整门(12m+)∧ 24 臂自证器 ∧ 行为面判据 ∧ 档 ⑩ 部署归 test/候 M 批。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 13 小时前 | |
v1.9.10(dev): D1 升版 1.9.9 ⇒ 1.9.10(射程 12 档 · ★ 档 ⑩ 候 M 批) 令源: ar 路标 r2 §二 D1 ∧ 入口评审 docs/V1910_ENTRY_REVIEW.md §二「dev 先行余项+D1」 ∧ 裁 V1910-01 §一【取甲】∧ comm「C-DU-1 全毕确认; 请续 D1 升版」。 - 射程 12 档(照 v1.9.6 975362fd5 / v1.9.8 66286888e / v1.9.9 8653f7f7b 先例): Cargo.toml version + 注块 ∧ Cargo.lock 根包 ∧ Cargo.lock.sha256 ∧ sbom ∧ CHANGELOG 顶条 ∧ RELEASE_NOTES 顶条 ∧ ROADMAP 🚧 v1.9.10 行 ∧ README 版本指针 ×7(含 [patch] 段/条目行计数刷新 58⇒29 段 ∧ 68⇒34 条)∧ 检查14 四件 ∧ 自评报告 ∧ 本证据档。 - ★ 本批之【例外】(用户裁 2026-10-19 取【乙】): 档 ⑩(重编 + 冷面复编 + 重部署 + 20M 自测)候 M1/M2 插件批齐后一次做(免二度部署)—— 本批唯落【文档面 + 器面】。 - ★ CHANGELOG 顶条系【插入】非【替换】(承 v1.9.8 D1 之失 · v1.9.9 M4 已立器面守): 硬证 = grep -c '^## v1.9.9 ' CHANGELOG.md = 1 ∧ 本笔 diff 首 + 行唯 ## v1.9.10 · 无 -## v1.9.9 ∧ 窗基 v1.9.9^{} CHANGELOG 首行逐字在场。 - 检查14 同批四件: 续期点 1.9.9⇒1.9.10 ∧ 名册 33 名零动 ∧ 重锚 d9adcc2a…⇒2caf442a… (哨符区间恒 16 行 · 区间内变唯 1 处)∧ 红侧⑩ 前移(咬合 1.9.10⇒1.9.11 / 对照 1.9.9⇒1.9.10)· 臂数恒 24。 - 窗二分: Cargo.lock 49−/49+ = 根包 1/1 + 钉面 48/48(24 包)· n_pin=24>0 ⇒ 含升钉窗 ∧ registry 0 包。 - SBOM: components 361 不变 · 值变 173 对 = 实质 171 + 豁免 2 ⇒ 全归因零余项。 - 四门禁: fmt 0 / clippy 0 / nextest rc=4(0 tests 结构性零覆盖非绿)/ build 0 (1m17s · 产物 --version = xwcode 1.9.10)。 - 探针: metadata --locked 0 · 锚 0 · sbom_gate 0 · ac10 PASS=6 FAIL=0 · typos 0 · taplo 0 · bash -n 逐改档 0。 - ★ 整门(12m+)∧ 24 臂自证器 ∧ 行为面判据 ∧ 档 ⑩ 部署归 test/候 M 批。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 13 小时前 | |
v1.9.10(dev): D1 升版 1.9.9 ⇒ 1.9.10(射程 12 档 · ★ 档 ⑩ 候 M 批) 令源: ar 路标 r2 §二 D1 ∧ 入口评审 docs/V1910_ENTRY_REVIEW.md §二「dev 先行余项+D1」 ∧ 裁 V1910-01 §一【取甲】∧ comm「C-DU-1 全毕确认; 请续 D1 升版」。 - 射程 12 档(照 v1.9.6 975362fd5 / v1.9.8 66286888e / v1.9.9 8653f7f7b 先例): Cargo.toml version + 注块 ∧ Cargo.lock 根包 ∧ Cargo.lock.sha256 ∧ sbom ∧ CHANGELOG 顶条 ∧ RELEASE_NOTES 顶条 ∧ ROADMAP 🚧 v1.9.10 行 ∧ README 版本指针 ×7(含 [patch] 段/条目行计数刷新 58⇒29 段 ∧ 68⇒34 条)∧ 检查14 四件 ∧ 自评报告 ∧ 本证据档。 - ★ 本批之【例外】(用户裁 2026-10-19 取【乙】): 档 ⑩(重编 + 冷面复编 + 重部署 + 20M 自测)候 M1/M2 插件批齐后一次做(免二度部署)—— 本批唯落【文档面 + 器面】。 - ★ CHANGELOG 顶条系【插入】非【替换】(承 v1.9.8 D1 之失 · v1.9.9 M4 已立器面守): 硬证 = grep -c '^## v1.9.9 ' CHANGELOG.md = 1 ∧ 本笔 diff 首 + 行唯 ## v1.9.10 · 无 -## v1.9.9 ∧ 窗基 v1.9.9^{} CHANGELOG 首行逐字在场。 - 检查14 同批四件: 续期点 1.9.9⇒1.9.10 ∧ 名册 33 名零动 ∧ 重锚 d9adcc2a…⇒2caf442a… (哨符区间恒 16 行 · 区间内变唯 1 处)∧ 红侧⑩ 前移(咬合 1.9.10⇒1.9.11 / 对照 1.9.9⇒1.9.10)· 臂数恒 24。 - 窗二分: Cargo.lock 49−/49+ = 根包 1/1 + 钉面 48/48(24 包)· n_pin=24>0 ⇒ 含升钉窗 ∧ registry 0 包。 - SBOM: components 361 不变 · 值变 173 对 = 实质 171 + 豁免 2 ⇒ 全归因零余项。 - 四门禁: fmt 0 / clippy 0 / nextest rc=4(0 tests 结构性零覆盖非绿)/ build 0 (1m17s · 产物 --version = xwcode 1.9.10)。 - 探针: metadata --locked 0 · 锚 0 · sbom_gate 0 · ac10 PASS=6 FAIL=0 · typos 0 · taplo 0 · bash -n 逐改档 0。 - ★ 整门(12m+)∧ 24 臂自证器 ∧ 行为面判据 ∧ 档 ⑩ 部署归 test/候 M 批。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 13 小时前 | |
chore: onboard xwcode to xuanwu-ci(重建于现 master b9f9667c6) 承 MR#2 之 onboard 笔 ec907c2d6(fork benjamin-747/xwcode)—— 该笔之基 c098c46f1 早于 M7 之 botgate 二红真修 c58f0c5f5 ⇒ MR 头未含修 ⇒ run #14 之二红系 【面之陈】(修未达被检之头)非【修之失效】(test 一手归因 · 二态:.cargo/audit.toml MR 头 404 ⇄ master 200 ∧ src/main.rs:1 旧/新)。★ 本席无 fork 写权 (一手:git push --dry-run ⇒ <CH.00905401> You are not allowed to push code to this project)⇒ 改由主线新支发新 MR(test 已许可「新分支发新 MR,唯须头含 b9f9667c6 之树」)。 本笔 = 现 master b9f9667c6 + ec907c2d6 之 onboard 件(31 档逐档照收)。 ★ 唯二档【不取】(照实): · typos.toml —— 该笔之 ①i 族系【复登】(三档已在 ①f :195/:196 ∧ ①h :818) ⇒ 承 ar 裁决 03 §三「族之归属取自行语义(引证行→①f)」之判例 ⇒ 不落 ①i (extend-exclude 系集合并 ⇒ 覆盖面不变)。 · scripts/tests/verify_release_gate_selftest.sh —— 其 _adj_key_table 之修系 门禁本体【潜在缺陷】之修(现态 :919 仍旧形)⇒ 须自证(阳性/阴性对照 + 红侧全跑)方可落 ⇒ 另批处置,本笔不取。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 4 天前 | |
v1.7.2 件② 批10 顺手 —— lint 面二遗留红清偿 + 自指族 + lint_face_leg.sh 批10 勘察实跑捕出批7/批8 遗留之二红(皆 CI lint-extra job 之步 · 净 master 面即红 · 恒红至今): ① typos ⇒ rc=2,3 命中全在 sbom/xwcode-skeleton.cdx.json(批7 产物 · 机器转储) 清偿: typos.toml extend-exclude 增 sbom/**(归 ① 机器转储族); 弃逐词案(不封闭) ② taplo fmt --check ⇒ rc=1 ERROR cliff.toml(批8 新档 · 数组缩进不合) 清偿: taplo fmt cliff.toml(纯格式 · 24 行 diff); 附复跑 ac11 腿 PASS=5 FAIL=0 根因: 二器皆不在 verify_release.sh 射程 ∧ GHA 未真跑 ⇒ 本机门禁绿而 CI 红(静默)。 承 ar 裁决06: 二清偿准 ∧ lint_face_leg.sh 纳入本版。 承 ar 裁决07(取乙): 裁定档引误词字面之自指红 ⇒ typos.toml 自指族逐档具名 (06/07 二档; 甲「改笔损可核性」否 ∧ 丙「通配掩未来真 typo」否)。 新腿 scripts/tests/lint_face_leg.sh: PASS=6 FAIL=0(G1/G2 真面二器 rc=0; R1/R2 typos 阳性对照 ∧ R3/R4 taplo 阳性对照 · 接入出口码 · 造态不入库) ⇒ 落位 ci.yml lint-extra job。腿件当场自捕二缺陷并订正(误词字面自指 ⇒ 分段拼接; echo 内反引号被命令替换 ⇒ 改单引号)。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 15 天前 | |
feat: workspace scaffold with 5 crates, CI, fmt, clippy | 4 个月前 | |
V197-9/M4 消解: rustls 4 条豁免撤销(0.23.45 → 0.23.46 · 前件「tag 已推不升锁」于 D1 前失效) - 承 ar 裁三则 ①(2026-10-17): rustls 取甲 —— D1 前消解(前件已失效 · patch 级 · 免豁免事实化) - cargo update -p rustls ⇒ 0.23.45 -> 0.23.46;Cargo.lock 差唯 2 行(version + checksum · 单包) - deny.toml: 撤 RUSTSEC-2026-0346/0347/0348/0349 四条 id(ignore 7 → 3)+ 同批留痕注块 - 关键判据: 撤前甲臂现 warning[advisory-not-detected] × 4;撤后归零 ⇒ 撤得干净之器证 - 乙臂: 唯 error[unmaintained] × 3(bincode/paste/yaml-rust)⇒ rustls 四条已不再现形 - 守⑥ 面不变: 甲 15 == 乙 15(该四条本不载寿命 ∧ reason 无复审时点/推进至字样) - Cargo.lock.sha256 同批重锚(sha256sum -c OK)∧ SBOM 同批再生成 - SBOM 逐叶差 13 = 11 实质(rustls 号/purl/version/hash + 7 处依赖引用)+ 2 归一化豁免 ⇒ 残余 0 - 域: Cargo.lock + 锚 + sbom/ + deny.toml ⇒ 零 .rs ∧ 零 Cargo.toml(非 D1 批 · 版号不动) - 探针: ac6 rc=0 ∧ sbom_gate rc=0 ∧ typos rc=0 ∧ taplo rc=0 ∧ cargo metadata --locked rc=0 - 整门复跑归 test Co-Authored-By: Claude Code <noreply@anthropic.com> | 2 天前 | |
v1.9.5 M4(dev): 审计清偿八条 + 令刷覆盖度守④ + 双跑可比性腿 + durable 红侧臂 ★ 令源: ar comm(04:15Z)「M2毕 M4起批 审计清偿 加 L5修 按r2四」∧ V195裁决06 (裁3.1 F-CI-11取甲 · 裁3.2 F-CI-13拟形可 · 裁1 L5归test · 裁4 F-RE-08转test)。 ■ §3.1 十四条逐条销项(判据面唯仓库交付件) 已落(我侧域 · 八条): F-CI-06 Dockerfile 头部增「仅供本地冒烟 · 发布面以 docker/Dockerfile.release 为准」注 F-CI-08 .gitignore 并写 .botgate/ ∧ .botgate(原唯目录形 ⇒ 文件形漏判) F-RE-10 同上(同源二条合修) F-RE-12 .gitignore 增 opencode.json(原唯 .opencode/ 目录形 ⇒ 根文件形漏判) F-CI-14 .cargo/audit.toml 迁入 3 条旧公告 · Dockerfile.supply-chain 去 --ignore ⇒ 载体单源 F-SC-05 Cargo.toml description 去版本前缀(入 SBOM ⇒ 机器可读面失真) F-RE-05 Cargo.toml 判据 C 二行改【引用形】(--version == [workspace.package] version) F-SC-06 install.sh 旧址 fail-fast(die 2)+ main 顶层前置判定(使 die 真出) F-SC-07 dist-workspace.toml 增【复跑条件】(升 cargo-dist-version 须同批重跑二态探针) F-CI-09 Dockerfile.dockerignore 补 ~/.cache/xwcode/ 使成 .dockerignore 之超集 他方已闭(我侧实核 · 零动作): F-RE-09 ac7_pipeline/SHA256SUMS 39/39 OK ∧ 根 SHA256SUMS 仓根跑 45/45 OK(已纯 -c 形) F-RE-11 audit/v1002-arch-audit-r18/ 已不在工作树 ∧ 入库 0 非我域(转 test · 我侧不碰): F-RE-08 mr_head_staleness_two_state.txt:35 侧注「6 笔」未锚 rev(出具方 = test) ■ 腿件入位(三条 · 承 ar 裁06) ① F-CI-11 取甲 ⇒ 检查2 增【守④ 令刷覆盖度】: 四档(RELEASE_NOTES/CHANGELOG/ROADMAP/ RELEASE_REPORT)之【本版节在位 ∧ 制品面口径标记在位】。取【正形标记】形(承守③「防删块 即绿」律); 前件缺 ⇒ 一条 skip_gap 显名(禁以未判充绿)。射程显名: 唯判【字段在场】, 不判其值(值之真伪归发布评审)。 ② F-CI-09 腿 ⇒ scripts/tests/docker_context_ignore_leg.sh(超集判据 + R1/R2 阳性对照) ③ F-CI-13 腿 ⇒ scripts/tests/nightly_dual_run_reconcile_leg.sh(静态可比性四守 + R1/R2); 活读数须外部网络 ⇒ 显名不承(承 ci_face_leg.sh skip 先例 · 禁静默绿) 二腿挂 .xuanwu/Dockerfile.lint(pr-check · 同 lint_face_leg.sh 先例) ■ durable 红侧臂(承裁15裁2② / 裁16裁2①) 检查4 守②(Cargo.lock SHA256 锚)⇒ selftest 红侧㉒ 三臂: 甲 阴性(锚合 ⇒ 正形标记在位 ∧ 本守零 FAIL) 乙 阳性(篡改 lock 一字节 ⇒ 锚失配 ⇒ 具名 FAIL ∧ rc≠0) 丙 阳性(删已入库锚档 ⇒ ls-files 仍中 ⇒ 显式 FAIL · 证删档不逃) 立臂三律落实: 夹具扩至同形(Cargo.lock + 锚档皆入库)∧ 谓词具名到行(禁泛形 grep 检查4) ∧ 空窗键名净 token(本臂不造空窗 · 记此明其不涉) 并立红侧㉓(守④ 之判别力): 甲阴性 / 乙真病相(抽 RELEASE_NOTES 标记 ⇒ 具名 FAIL)/ 丙删块(删整节 ⇒ 报前件缺显名 ∧ 全门仍红 ⇒ 删块不逃) ■ 取捨并载(交评审) · F-CI-14: 3 条 unmaintained 原以命令行形传 ⇒ 唯 supply-chain 作业静之, 本地裸跑仍见提示 (原注「可修性之活提示」); 迁入本档后该面收窄, 换取【载体单源 ∧ 器升级不失效】。 · F-SC-06: 取【die 2】而非【warn 续行】(warn 仍装旧树 ⇒ 未消静默错版之害)。 · 守④: 不承「四档判级**值**一致」(该面须人判 · 承「报告 ≠ 获准」)。 ■ 门禁 fmt rc=0 ∧ clippy rc=0 ∧ nextest rc=4(0 tests · members=[] 结构性零覆盖 · 非绿声明) ∧ build --release rc=0(3m03s)∧ typos rc=0 ∧ taplo rc=0 ∧ sbom_gate rc=0(361 叶 · 归一化一致) ∧ heredoc_expand_guard rc=0 红侧㉒/㉓ 隔离实跑各三臂全咬合(rc=0) 整门 + 全自证器按律重跑(承 ar 裁06 裁3.1)—— 见本批证据档。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 3 天前 | |
v1.9.6(dev): M2 seed 改单模型(承 ar 裁 06 · 用户亲定)+ 本席腿随动 令源: ar 裁 06(docs/V196_RULINGS_06.md @ 24104d99c)裁 1(归 dev)—— models ⇒ ["deepseek-v4-flash"] ∧ model_config 去 pro 项 ∧ 顶层 model 守 opencode-go/deepseek-v4-flash ∧ api_key 守空 ∧ 提示文随改; 幂等(有档不动)与失败降级语义照旧不动。 面: dev 支 ← 86554a591(树 d1525d84) 改面(三档 · 皆本席域): install.sh —— seed JSON: models 双 ⇒ 单; model_config 去 pro 项; 注释 2 处 + 落档提示文随改 + 加裁 06 由来(并载前态双模型系本席候选) release/v1.9.6/tools/m2_seed_config_leg.sh(本席腿)—— models 计数 2 ⇒ 1 ∧ 增「models 唯 flash」 ∧ 增「model_config 唯 flash(去 pro 项)」 release/v1.9.6/evidence/M2_INSTALL_SEED_CONFIG.md —— 面锚双列(前态双模型 / 现态单模型)∧ 加 §五 随动 ∧ §四 候裁二项终结标记 ∧ 射程改 §六 本席腿复跑(一手 · hermetic 隔离 HOME): PASS=17 FAIL=0 · rc=0 · 0.275s(前态 15/15 ⇒ 现 17/17) 幂等复证: 二跑 sha256 逐位同 ⇒ 裁 1 之「幂等照旧」成立 ★★ 我侧越权事故(照实 · 自捕自纠 · 提交前): 首轮并改了 test 之档 release/v1.9.6/tools/m2_install_seed_leg.sh(其 :50-51 钉「两模型在位」)—— 该档系 test 所建 (2b88bb843 · 一手核 git log --diff-filter=A)⇒ 违「谁写的谁修」红线 ⇒ 已于提交前 git checkout -- 回退(现 blob = 69670bb2af1cb1706670a1fa2e0ea699dbe57c81 = HEAD 值 ⇒ 零残)。该档之随动归 test(已通报)。 ★ 归族: 改前先核档之归属(作者面), 非唯核「该改否」。 ★ 待他方同批刷(显名 · 非本席域): test 之 tools/m2_install_seed_leg.sh(单模型面必红) ∧ test 之 M2_TEST_REPORT.md(:14/:131 钉 install.sh sha256 8e7cd934… ⇒ 现值 eefd10b6…)。 裁 06 裁 2 已令 test 复跑针对腿 + 整门复跑(install.sh 系版内交付 ⇒ 关版前整门须为最新面全绿)。 自检: typos 裸跑 rc=0 · bash -n 三档 rc=0 Co-Authored-By: Claude Code <noreply@anthropic.com> | 2 天前 | |
v1.9.0 M1 工具链降级【目标达成】(dev): floor 1.91.0 ⇒ 1.89.0(用户裁定 2026-10-11) ★ 令源: 用户裁定(ar 转「仍候用户」⇒ 用户选「降到 1.89.0」)∧ ar 放行(路标已终订正 f9a7e72e6)。 ★ 性质: M1 之【目标达成】—— M1 原目标即 1.89.0, 时因阻塞退取可达 floor 1.91.0; ⑤ 并批升钉(xw-eval v0.1.3⇒v0.1.4 ∧ xw-subagent v0.1.5⇒v0.1.6)已清偿阻塞 ⇒ 本批达原目标。 ■ 二值(唯二硬落点 · 与 M1 注之预言逐字符) rust-toolchain.toml channel = 1.91.0 ⇒ 1.89.0 Cargo.toml rust-version = 1.91.0 ⇒ 1.89.0 ★ 语义不变 = MSRV 下限(floor); 二档同值。 ★ Cargo.lock 零漂移(cargo metadata --locked rc=0 ∧ git diff Cargo.lock 空) ★ SBOM 无须重生成(sbom_gate.sh rc=0 · 组件数 363 一致) ■ 文档联动(AC1 处方集 + ar 准并办之集外四档) 处方集内: README.md:54(★ 原仍书 1.98.0 —— M1 批【该项整批未做】, 照实呈报)∧ .github/workflows/ci.yml msrv job 注释(含语义订正: 前态书「MSRV = 上界」⇒ 订为 floor) ∧ install.sh【零改】(其 channel 系 sed 动态取 ⇒ 无硬编码, 核查已核) ∧ docs/BUILD_TOOLCHAIN_NOTE.md【零改】(全档无 1.9x 陈述) ∧ CONTRIBUTING.md【档不存在】 集外四档(ar 准并办 · 承「活文档禁残留 1.98.0」): docs/ARCHITECTURE_CURRENT.md:17(★ 唯改版本号, 行号引用 Cargo.toml:169 依 ar 令不动 —— 并载: 该行号现非 rust-version 所在行, 系陈旧引用) ∧ docs/TEST_AGENT_GUIDE.md:23,27 ∧ .github/workflows/nightly-deep.yml:12 ∧ dist-workspace.toml:37 ★ 残留 1.91.0/1.98.0 仅存于【沿革叙述注】内(历史陈述, 非现态宣称)。 ■ 器修(本席自捕 · 同批) scripts/rust_api_floor_scan.py: 加【空名册守】—— 名册空则谓词退化为空模式(匹配万物)⇒ 实测恒命中 1_150_212 处 ∧ 出口码仍 0 = 假绿。根因: rust-src 之版本 ≤ since_floor ⇒ 其 std 源【结构上不含】since > floor 之 #[stable] 项 ⇒ 扫法之【面】须取【高于 floor】之 rust-src。 二态对照: rust-src=1.89.0(=floor) ⇒ rc=1 显名报错(修前 rc=0 垃圾读数)⇄ rust-src=1.91.0(>floor) ⇒ rc=0 ∧ 52 项 ∧ 0 命中 ∧ 夹具对照全符 ✓ ■ 门禁(面 = 本笔) fmt --all --check rc=0 clippy --all-targets -D warnings rc=0(冷面 touch src/{main,pure}.rs ⇒ Checking xwcode-skeleton = 1) cargo check --locked --all-targets rc=0(@1.89.0 · 免 --ignore-rust-version —— MSRV 短路已消) build --release rc=0(换工具链 ⇒ 全量重编 · 4m07s) nextest --workspace -j 32 --no-fail-fast rc=4 · tests run = 0(★ members=[] 结构性零覆盖 · 非绿) taplo fmt --check(逐档参) rc=0 typos(裸跑 = CI 形) rc=2 · 8 命中全在 audit/v182-arch-audit/ 冻结档(无新增) 判据② rust_api_floor_scan(面: RUSTUP_TOOLCHAIN=1.91.0 之 rust-src) rc=0 ∧ 0 命中 ∧ 对照符 sbom_gate.sh rc=0 发布门 verify_release.sh 另档留证 ■ 照实(不冒认) · nextest 0 tests = 零覆盖, 非「测试绿」(承在册「报测试门禁必附 tests run 数」)。 · 本批【未】改 Cargo.lock / sbom ⇒ 不涉 AC5 名册僵尸(承在册「V=T ⇒ 删名册」律之射程外)。 · 未改产品源码(src/crates 零 diff)⇒ 版本字段不升(仍 1.8.10)。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 8 天前 | |
feat: workspace scaffold with 5 crates, CI, fmt, clippy | 4 个月前 | |
v1.9.10(test): M2 G-5 屏面可达性器 —— 立器 + 阴性对照 + 前基线(承 ar 裁02 裁4) 令源: ar 裁决02 裁4 —— 「G-5(缺省 inline 形 Focus 可见性)列 M2 验收【必验】」。 新增器: release/v1.9.10/tools/m2_focus_screen_face_probe.py sha256 f019de2fc498eef129bee79949ca2f0518672cb43677e2a9529af9c42051ce5f ★ 与既有 m2_focus_roundtrip_probe.py【异面】—— 彼观测【会话快照档】, 本器观测【真终端屏面字节】。 三腿: I inline F0..F3(既存内容)· II alt F0..F3(对照)· III inline 先定态后产内容(新产内容)。 阴性对照(真阴性 · 面 = 出货 bin d082ce29… = M1 期守⑨值 ⇒ xwtui v0.3.51 · Focus 未立 · 唯二态): 留证 evidence/m2_focus_screen_face_v0351_negctl_r4.log(200 行) inline: 甲-2 满环=1 ★不达 · G-5甲 ★不达 · G-5乙 ★不达(互异=1) alt : 甲-2 满环=2 ★不达(符 v0.3.51 之二态)· G-5甲 ✓ ⇒ ★ 器之判别力得证: alt 腿 F0(▸ read_file ×2 + [展开]) ⇄ F1([tool] read_file {"path":"a.txt"}) 确变 ⇒ 器能辨态变 ∧ 报 2 态正合二态 ⇒ 非恒真非恒假。 前基线: 于 v0.3.51, inline 形之模式切换【零可观】(既存 ∧ 新产皆然)。 我侧二自捕(皆器之退化形 · 照实): ① 相对 --bin ⇒ 器 cd 入隔离 cwd 后解析失败 ⇒ TUI 从未起 ⇒ 全腿空屏(11 处 No such file) ⇒ 修: --bin 绝对化 + 阳性对照(TUI 真起)+ 未起即显名作废。承 screen-reader-must-prove-it-reads。 ② 夹具 {"text":…} 条目【终结助手轮】⇒ 会话半截 ⇒ 修: 二问二轮。 承 noop-probe-makes-predicate-vacuous。 ③ 并载: 甲-1(F3==F0)于全态同形时恒真 ⇒ 唯于甲-2 成立时承证力(器之判表已显名)。 typos: 三留证档含【工具原始输出之截断 JSON】⇒ 依律自登记入 ①h 族(具名非通配); 全仓裸跑 rc=0。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 2 小时前 | |
v1.9.5 M4(dev): 取证档 + SOP 律文(Cargo.lock 锚同批)+ typos ①h 族登记 ★ 承 ar comm(05:44Z)「真缺陷修法正确(更锚非回退)· 批①②不回溯 · SOP 准增律文 · 载发布评审」。 ■ 本笔 = 文档面(行为级零影响) · release/v1.9.5/evidence/m4_audit_repayment/(4 档 + SHA256SUMS) M4_AUDIT_REPAYMENT_AND_LEGS.md —— 逐条销项表(14 条)+ 三条腿件 + 二红侧臂(㉒/㉓) + 批中实捕之真缺陷(Cargo.lock 锚陈旧)+ 取捨显名 + 门禁读数 + 判 00_m4_readings.txt —— 逐条一手命令 + rc(含 install.sh 八形端到端实跑) gate_v195_m4_dev.log —— 整门全档(尖 d4e64f130 · GATE_RC=1 · 真 FAIL 2 条皆 dev 面结构性) selftest_v195_m4.log —— 自证器全档(23 红侧全咬合 · FAIL 0 · 70 行 · 约 2h40m) · xwcode-dev.md —— 增纪律条【Cargo.lock 锚同批】(ar 准增律文) 凡动 Cargo.lock 之批 ⇒ 锚档同批更新 ∧ 整门入跑线; 并载其限(不回溯既往批) · typos.toml —— gate_v195_m4_dev.log 具名入 ①h 门禁原始日志族(命中 2 条 · 上游 crate 标识之 Compiling 行 · 机器转储非书写面 · 具名非通配 · 零改内容) ■ 自证 · (cd release/v1.9.5/evidence/m4_audit_repayment && sha256sum -c SHA256SUMS) ⇒ 4/4 OK rc=0 · typos(家法 · 全域)rc=0 ∧ taplo fmt --check typos.toml rc=0 · 自证器末行: 「23 红侧全部咬合 ✓」· FAIL 行 0 · 未咬合行 0 · ★ 并载(照实): 自证器首跑用 timeout 7200(承旧注「约 43 分」= 13 红侧时代读数)—— 本批 23 臂 ∧ 每臂含整门(检查13 克隆编译 xwkernel)⇒ 超时预算不足, 首跑 02:00 中断; 以 timeout 21600 重起 ⇒ 上表读数为重跑面(非报非确定, 系预算不足之显名)。 Co-Authored-By: Claude Code <noreply@anthropic.com> | 3 天前 |
xwcode v1.9.10 — Rust 系统级 AI 编程 Agent
本档 = 用户入口(① 是什么 / 对谁有用 · ② 安装与配置 · ③ 新开发者贡献)· 计数锚 0+ tests (
members=[]极薄根 bin · 结构性零覆盖 —— 有效信号 = build / fmt / clippy 三段EXIT=0)。 逐版交付面与版本史见 RELEASE_NOTES.md;机器生成之逐版明细见 CHANGELOG.md;版本路标见 ROADMAP.md ∧openspec/specs/。
一、这是什么 / 对谁有用
xwcode 是一个 Rust 实现的系统级 AI 编程 Agent —— 终端交互(TUI / CLI REPL)+ 工具编排
- 多 Agent 结构化协作,单二进制部署。
对谁有用:
- 想在本机跑一个可审计、可离线部署的编码 Agent 的工程师 —— 单二进制(
install.sh一键 /cargo install),配置单档(xwcode.json),Provider 可换(含本地与自建端点)。 - 需要 Agent 之间结构化协作的自动化流水线搭建者 —— Mailbox v2(
wire_protocol)提供 Request / Response / Event / Broadcast 四类消息 ∧ JSONL 持久化 ∧ Direct / Broadcast / Request-Response 三种路由;子 Agent 可主动上报 ∧ 接受中途干预。 - 想读一个「判据优先」工程实践的 Rust 代码库的开发者 —— 发布门禁(
scripts/verify_release.sh) ∧ 判据腿件 ∧ 红侧实证 ∧ 证据档归档,在本仓是一等公民(见 §三)。
能力面
- 36 工具(M2 三向分流终态,35 LLM-visible + task_complete 条件可见;git_ops 13 ops)
- 4 语言代码引擎 · tree-sitter AST · LSP · Git · Cargo
- EventLog · TaskSpec · ExecutionReport + EvaluationReport
Mailbox v2 协作协议(wire_protocol)
结构化 Agent 间消息协议,支持跨 turn 持久化和双向通信:
- 消息类型:Request / Response / Event / Broadcast 四种结构化消息
- JSONL 持久化:
.xwcode/mailboxes/<agent_id>.jsonl,追加写入 O(1),跨进程恢复 - 路由引擎:Direct(点对点)/ Broadcast(广播)/ Request-Response(correlation_id 匹配)
- Agent 工具:
mailbox_send_v2/read_mailbox/report_event - Coordinator 双向通信:子 Agent 主动上报 + 中途干预(cancel/redirect)
- CLI 调试:
xwcode mailbox2 ls/read/send
二、安装与配置
安装
一键安装(推荐)——仓库根 install.sh 用户安装盘:release 构建 + 原子部署 ~/.local/bin/xwcode + 版本/sha256/可执行三重验证(失败自动回滚不留半成品);已装同版本幂等短路。
前置(三件 + 工具链):
| # | 前置 | 必需性 | 说明 |
|---|---|---|---|
| ① | git |
必需 | 拉取源码 ∧ 依赖解析(git ls-remote 亦为网络探针之回退臂) |
| ② | curl |
可选 | 仅影响 rustup 引导(缺席时回退 git ls-remote 探路,并降为 warn) |
| ③ | C 链接器 cc |
必需 | release 构建之链接阶段需之。Debian/Ubuntu 装 build-essential(或 gcc/clang)。★ v1.7.5 起 install.sh 于 precheck 前置探测,缺失即 die 2 并给指引——归因在环境、非本仓构建缺陷(与 gitcode 可达性同族 fail-fast) |
Rust 工具链:本仓钉 1.89.0(唯一源 = 仓根 rust-toolchain.toml 之 channel ⇒ 本地 ∧ CI 同源)。★ 语义 = MSRV 下限(floor):≥1.89.0 皆可,新版可用(非「唯此一版」)。工具链(cargo)缺失时脚本交互询问并引导安装 rustup(官方源仅 https);--yes 走非交互自动接受(无人值守安装用)。rustup 在场但缺该工具链时不自动下载——退出码 2 并给出手动命令。release 构建需数分钟。
拉取面说明(v1.7.4 传输根治 · v1.9.10 现态):release 构建的依赖拉取需访问 gitcode.com。v1.7.4 起 [patch.*] 段之 25 条目行(v1.9.10 现态 34 条 ∧ [patch] 段 29 —— 承 v1.9.5 之 24 条 / 20 段: M1 源切批(键守旧址 + 条目指新址 ⇒ 逐仓二键)∧ SBOM⑤ 批(xwobserve 新址键段)各增; ★ v1.9.10 C-DU-1 批旧址键退役 ⇒ 旧址 kemeng1 键段 29 段全删 ⇒ 段数 58 ⇒ 29 ∧ 条目行 68 ⇒ 34,现唯新址键、逐仓一键一条目)已由 ssh://git@gitcode.com/ 全面改为 https://git@gitcode.com/(git@ 系 RFC 3986 之 userinfo 段,非凭据、无口令)——Cargo.lock 内 git+ssh 源清零,构建全程零 ssh 拨号:无 ssh key、无 ssh-agent 的机器可完整安装。背景(历史成因):cargo 内置的 libgit2/libssh2 ssh 实现不走系统 ssh 命令行、依赖运行中的 ssh-agent——只有 ssh key 而无 agent 时认证会失败(实证:新机器有 ed25519 key 且 git clone 可用,cargo build 仍报 attempted ssh-agent authentication);v1.7.4 之前 [patch] 键=https 原源 / 条目=ssh 重定向源系【同源补丁禁令】下的跨 scheme 收敛机制载体(cargo 同源检查硬约束),不构成用户面 ssh 依赖。install.sh 仍保留 CARGO_NET_GIT_FETCH_WITH_CLI=true + GIT_CONFIG_* insteadOf 重写(v1.6.2 AC4,会话级 env 注入不碰用户 git 配置)——v1.7.4 后其三条规则对本仓零命中,地位由【唯一链路】退为纵深(覆盖所钉插件仓 manifest 内可能残留之 ssh 字面量)。手动构建遇同类报错时,先执行上面两个 export 再重试。
## ① 获取仓库(推荐直接 clone 发布 tag——确定性安装该版本)
git clone --depth 1 --branch v1.9.10 https://gitcode.com/xuanwu-code/xwcode.git
cd xwcode
## ② 安装(缺 Rust 工具链时按提示确认引导安装 rustup)
bash install.sh
## ③ 验证
xwcode --version # 应输出 xwcode 1.9.10
xwcode --check # 校验配置 + 列出 Provider
若 ~/.local/bin 不在 PATH,脚本结束时会打印 export 指引,按提示追加后 source ~/.bashrc。
★ 为何用 --branch <tag>: 直取发布 tag(非 master 浮动面)⇒ 安装面确定(同 tag 恒同树;承树身份纪律「禁以移动引用充钉值」)。无人值守(CI / 新机脚本)加 --yes 走非交互。
⛔
curl … | bash一键装【不可用】(明令禁用 —— 非「待启用」) 由: gitcode 之/raw/端点当前返回网页壳而非脚本正文(实测)⇒ 管道入bash者不是脚本(轻则报错,重则执行意外文本)。一律以双步命令为准(git clone+bash install.sh)。 ★ 若将来/raw/端点可用,须另立 AC + 红侧(正文首行校验)方可开禁——禁以「端点可用」推定开禁。 脚本单独拷到任意目录执行亦可:远程模式自动 clone 源码到临时目录构建(默认装远程最新 tag,--repo换源、--version显式定版)。
常用变体:
bash install.sh --version v1.9.10 # 安装指定 tag(本地源码树内走 worktree 隔离,不触碰工作区)
bash install.sh --yes # 非交互自动模式(跳过询问,自动接受 rustup 引导)
bash install.sh --prefix <dir> # 自定义部署目录(默认 ~/.local/bin)
bash install.sh --force # 已安装同版本时强制重建
bash install.sh --uninstall # 卸载(只移除部署位与备份,不动 ~/.xwcode 用户配置)
bash install.sh --help # 全部选项与退出码语义(0 成功/1 失败/2 环境前置缺失/3 验证失败已回滚/4 用户取消)
**低配机(内存 ~1.7G 级,release 构建易 OOM)**推荐预置产物路径:XW_INSTALL_PREBUILT=<产物路径> bash install.sh --prefix <dir>——跳过 release 构建,仅做部署+版本/sha256/可执行三重验证(产物由高配机或 CI 构建后拷入)。
手动构建(备选)——需先自行安装 Rust stable 工具链:
git clone https://gitcode.com/xuanwu-code/xwcode.git && cd xwcode
cargo install --path . # 包名 xwcode-skeleton,产物二进制名 xwcode
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc && source ~/.bashrc
xwcode --version
使用
xwcode -p "列出项目中的 Rust 文件" # oneshot 模式
xwcode # 缺省 TUI 交互界面(v0.95.6 opc-3f 起)
xwcode --cli # 显式交互式 CLI/REPL 模式
xwcode --tui # 显式 TUI(兼容,缺省已为 TUI)
xwcode --task tasks/add-feature.md # 任务文件模式(YAML frontmatter)
xwcode --task t.md --report-dir reports/ # 自定义报告输出目录
xwcode --init # 生成配置模板
xwcode --check # 校验配置 + 列出 Provider
xwcode --resume <session_id> # 恢复中断的会话
xwcode --replay <session_id> # 只读回放会话事件时间线
REPL 命令
/help /exit /model /tools /save /sessions
配置
在项目根目录创建 xwcode.json:
{
"model": "opencode-go/deepseek-v4-flash",
"providers": {
"opencode-go": {
"provider": "opencode-go",
"wire_protocol": "openai",
"base_url": "https://opencode.ai/zen/go/v1",
"api_key": "你的 OpenCode API Key",
"models": ["deepseek-v4-flash"]
}
}
}
api_key 填入你的 OpenCode API Key。也可以用环境变量 OPENCODE_API_KEY 代替内联 key。配置优先级:项目根目录 xwcode.json > $HOME/.xwcode/xwcode.json > 内置默认值。
首次配置自检(新机器验证闭环)
cd 你的项目根目录 # xwcode.json 按项目目录生效;全局配置放 $HOME/.xwcode/xwcode.json
xwcode --check # ① 配置合法 + 列出可用 Provider
xwcode -p "只回复两个字:正常" # ② 端到端功能冒烟(真实模型一次调用)
两步都通过即完成「安装 → 配置 → 功能验证」闭环;冒烟无回复或报错时,优先检查 api_key 与网络连通。
配置骨架 / 完整字段
- 运行
xwcode --init生成含全部可配置字段的配置模板(含缺省值)。 - 全部字段的类型 / 缺省值 / 含义 / 示例见 docs/CONFIGURATION.md。
- 支持权限(
permission_mode/permission)、模型与供应商、上下文压缩等配置段。
三、新开发者贡献
环境与构建
git clone https://gitcode.com/xuanwu-code/xwcode.git && cd xwcode
cargo build --release # 工具链版本由仓根 rust-toolchain.toml 钉定(唯一源)
cargo nextest run --workspace --all-targets -j 32 --no-fail-fast # 测试口径(禁裸 cargo test)
cargo fmt --all && cargo fmt --all --check
cargo clippy --all-targets -- -D warnings
★ 测试口径: 一律 cargo nextest run(doctest 例外走 cargo test --doc);全量 -j 32,
局部 / 单 crate -j 4 或 -j 8;全绿声明必须带 --no-fail-fast 并附实际并发路数。
★ 编译: 本机 CARGO_BUILD_JOBS=16(实测拐点);调优须先查 docs/COMPILATION_GUIDE.md
既有实测 ⇒ A/B 留痕 ⇒ 才可改值。
★ rust-toolchain.toml 之坑: cargo 系 rustup 代理,读当前目录之该档;channel 未装时会
静默自动下载 ⇒ 前置检查里裸调 cargo 会「卡住」。探针请带超时 ∧ 显名 cwd。
仓库导航
| 面 | 位置 |
|---|---|
| 发布门禁(全量检查) | scripts/verify_release.sh(XW_ADJUDICATE_SKIP 可显式裁定空窗) |
| 判据腿件 / 红侧 | scripts/tests/(*_leg.sh 正向腿 ∧ *_redside.sh 红侧构造) |
| 编译指南 | docs/COMPILATION_GUIDE.md |
| 协同工作流 | docs/WORKFLOW.md |
| 版本路标 / 逐版交付面 | openspec/specs/ ∧ ROADMAP.md ∧ RELEASE_NOTES.md |
| 架构说明 | docs/ARCHITECTURE.md ∧ openspec/specs/architecture.md |
提交与发布纪律(要点)
- 发布期
master仅接受合并提交(pre-push钩子拒单父直推)⇒ 走dev支 →master合并通道。 - 禁
amend/ 禁force/ 非快进即停。 - 报交付件须给面三值: 支 + 尖 + 树(
git rev-parse <rev>∧<rev>^{tree}),附命令与rc; 禁以移动引用充钉值。 - 新证据档(机器转储类)入库前须先跑
typos;命中须逐档具名入typos.toml之①h族。
参见
RELEASE_NOTES.md | CHANGELOG.md | ROADMAP.md | docs/ARCHITECTURE.md | docs/USAGE.md | docs/CONFIGURATION.md | openspec/specs/architecture.md