Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
e3fa586
feat(kb): settle reviewed source events with verified active receipts
tzhouam Oct 6, 2026
232e8dc
Correct blocked knowledge drafts against merged upstream source
tzhouam Oct 6, 2026
6391e2c
feat(sdk): expose source-bound rule and installed page evidence
tzhouam Oct 6, 2026
76468ae
knowledge: correct retained configuration and diffusion model contracts
tzhouam Oct 6, 2026
8b88add
knowledge: recover omitted Realtime, Kandinsky, SeedVR2 and AuK const…
tzhouam Oct 6, 2026
1db3c20
Capture MiniCPM graph ownership and processor budget contracts
tzhouam Oct 6, 2026
1577b3e
knowledge: preserve model precision media and reference backend contr…
tzhouam Oct 6, 2026
3a06679
Preserve vLLM release queue and output compatibility contracts
tzhouam Oct 6, 2026
dfe16d4
knowledge: correct sleep recovery, dead-peer IPC and request cache bo…
tzhouam Oct 6, 2026
62807ce
Capture MiniCPM turn MRv2 and shared V1 output ownership
tzhouam Oct 6, 2026
8ab12ce
knowledge: enforce owned streaming state snapshots and request RNG
tzhouam Oct 6, 2026
196421a
Recover output contracts and preserve reviewed premature discards
tzhouam Oct 6, 2026
f517d07
Curate suspended CI and benchmark source knowledge with owner contracts
tzhouam Oct 6, 2026
4ba6e9e
Capture YuE2, Mammoth and VoxCPM execution contracts
tzhouam Oct 6, 2026
8b1d71a
Capture MRv2 audio handoff and H3 latent refinement gates
tzhouam Oct 6, 2026
4523fff
Correct CosyVoice streaming and registered reference contracts from s…
tzhouam Oct 6, 2026
d94982e
Correct retained shared runtime knowledge for five merged upstream so…
tzhouam Oct 6, 2026
df69088
Unify source routing after backlog knowledge integration
tzhouam Oct 6, 2026
e54aadd
knowledge: preserve attention paging and Ray executor source contracts
tzhouam Oct 6, 2026
aba029a
Correct six earlier native sibling contracts before retiring blocked …
tzhouam Oct 6, 2026
b1fd0e4
knowledge: keep recovery rule identifiers unique
tzhouam Oct 6, 2026
6628ab2
Attest historical source merges without rewriting intake payloads
tzhouam Oct 6, 2026
6c181e7
Keep recovered rule page formatting clean
tzhouam Oct 6, 2026
b3ba266
Repair moved rule links and keep real-tree tests date-consistent
tzhouam Oct 6, 2026
719a793
Expect the GLM-image owner in its golden review route
tzhouam Oct 6, 2026
c807f19
knowledge: expose direct maps for recovered model owners
tzhouam Oct 6, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions doc/architecture/SPEC/kb_service.md
Original file line number Diff line number Diff line change
Expand Up @@ -318,6 +318,26 @@ issue(同一报告只开一个),标签不存在时不带标签重试,绝
有待异步接受、撤回或原始 intake 候选的提交拒绝进入此路径。`kb status` 显示已核验的 `supervised_commits`。
- 测试:`test_kb_reconcile_reviewed.py`。

## 2026-10-06 已审阅源事件的监督完成

- `kb reconcile-reviewed --event-coverage FILE --plan PLAN --target SHA --allow-merger LOGIN --require-check NAME --reason TEXT`
接收明确的 `commits` 和 `events` JSON;每项事件给出 `id`、`outcome`(`covered`、`already_covered`、`no_rule`)、
操作员审阅理由 `reason`,覆盖事件还须给出 `rules: [{path, rule_id}]`。路径以 `repos/` 开始,不含 `knowledge/`。
`no_rule` 不声称任何规则。覆盖规则必须在精确目标快照中有效,且引用该事件的原始上游 PR。
- 只有原始 `merged_pr` payload 缺少 `merge_commit_sha` 时,可显式给该项完整 `source_merge_sha`;
从注册 adapter 的 `RepoLifecycle.full_name` 取得上游,实时核验 GitHub PR 的 repository/number/URL、
merged 状态、精确 merge/head SHA 和 merge time(原始 timestamp 存在时须相符)。此补充证明进入签名计划与回执,
不改写原始 payload 字节/哈希,不能覆盖既有 merge SHA;apply 与重复 apply 都从签名行保留 pin 并重新取证,漂移即拒绝。
- 目标须已监督接收并实际激活;认证操作员、真实 owner merge、精确 head 上的当前 CI、原始事件身份和 payload 哈希、
规则块、两个校验器及完整快照 manifest 均进入签名计划。选择不能包含不存在的事件或拆开已有源事件 batch。
- `--apply PLAN` 持有独占 ledger lease 和激活锁,重新验证全部证据;源事件、规则、main/active 或 CI 漂移即拒绝。
不同签名用途 `kb-reviewed-event-plan` / `kb-reviewed-event-settlement`,不可作为知识历史接收回执使用。
`event-settlements/<内容哈希>.json` 经 fsync、硬链接原子创建且禁止替换;崩溃后可用原计划完成相同的 ledger 提交。
- 仅所选 pending/rejected/drafted 事件,或原始 detail 精确为 `no rules` 的 done 事件,可记录诚实的 `manual_reviewed_merged` 和回执引用。后者允许纠正过早丢弃,签名回执保留原始 done/no rules 决定;其他终态不得覆盖。
其完整源 batch 和 refinement 后代也记录 `manual_reviewed_merged`,停止重复生成;原来的失败判决和 verdict 不变。
只解决被完整覆盖 changeset 的人工队列,不影响其他事件、PR、发布模式或知识信任。
- 测试:`test_kb_reviewed_events.py`。

## 2026-09-29 一致性冲突只算本次改动的
一致性评审看整个 owner 目录,但只有**涉及本次改动的规则**(新增、编辑、退役、被替代的规则 ID)的冲突才使变更失败;
两条都未被改动的规则之间的冲突已经在 main 上,记入该目录的 `preexisting`,不计入变更(精炼也无法修复它,否则该目录
Expand Down
9 changes: 8 additions & 1 deletion doc/architecture/SPEC/knowledge_service/curation.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
# knowledge_service/curation.py — provider curation contract

<!-- verified-against: 2026-09-26 -->
<!-- verified-against: 2026-10-06 -->

`KnowledgeCurator.reviewed_rule_evidence(page_text, rule_id=..., source_reference=...)`
uses the canonical parser to verify one active, source-citing rule and returns
its exact UTF-8 section SHA256. `installed_knowledge_file(path)` reads canonical
`knowledge/repos/*.md` package resources from the installed provider, independent
of workspaces and environment overrides. Consumers can prove reviewed coverage
without copying domain parsing or importing provider-private modules.

`KnowledgeCurator` composes provider-owned catalog, bounded evidence prompt,
proposal validation, append-only apply, fixed validator execution, and byte-exact
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "runtime-agent-adapter"
created: 2026-10-01
updated: 2026-10-01
updated: 2026-10-06
type: index
tags: [jiuwenswarm]
sources: []
Expand All @@ -12,3 +12,5 @@ sources: []
理解本 owner 的源码职责、接口和集成边界时查这里。源码接口记录是静态契约;功能语义、配置和取舍沿功能页查证。通用审查方法不放在这里。
- [runtime-agent-adapter 源码接口与集成边界 01](source-contracts-01.md)
- [runtime-agent-adapter 源码接口与集成边界 02](source-contracts-02.md)

- [Agent adapter 运行时规则](rules.md) — Code profile 的模型路由 rail 挂载与 session 重建。
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
title: "Agent adapter 运行时规则"
created: 2026-10-06
updated: 2026-10-06
type: rule
tags: [jiuwenswarm, components]
sources: ["PR #7689"]
confidence: high
---

# Agent adapter 运行时规则

## JW-RUNTIME-ROUTING-1a — Code 的模型路由 rail 由规范化 sub-mode 决定

- 触发:修改 `CodeAdapter._build_agent_rails`、Code session 重建或模型档位路由的挂载。
- 强制:以规范化后的 `sub_mode` 区分 profile;`normal`/`plan` 分支追加 `_model_routing_rail`,builder 为 `_build_model_routing`,参数使用同一 `config_base`;team 分支将该属性设为 `None`。重建时顶层 `mode="agent"` 的兼容默认不能替代 sub-mode 判定。
- 禁止:只凭顶层 mode 决定挂载;给已由 relay 解析具体模型 ID 的 team profile 再挂同一档位 rail;把挂载 diff 或注释当作四档实际转换已验证的证据。
- 验收:分别检查默认/规范化后的 `normal`、`plan` 与 team 分支,断言 builder、config 和属性清除一致;需要宣称档位转换有效时另核对 rail 的转换实现及实际路由测试。^[PR #7689]
4 changes: 2 additions & 2 deletions knowledge/repos/vllm-omni/benchmark/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "vLLM-Omni 性能与 Profiling"
created: 2026-07-10
updated: 2026-09-22
updated: 2026-10-06
type: index
tags: [vllm-omni, benchmark]
sources: [benchmarks/tts/bench_tts.py, benchmarks/tts/model_configs.yaml, "PR #6522", "PR #6634", "PR #6818", vllm_omni/benchmarks/data_modules/omniinteract_dataset.py, vllm_omni/benchmarks/omniinteract.py, vllm_omni/benchmarks/patch/patch.py, tests/benchmarks/patch/test_patch.py, vllm_omni/benchmarks/duplex/, vllm_omni/entrypoints/cli/benchmark/omni_duplex_eval.py, vllm_omni/experimental/fullduplex/client.py]
Expand All @@ -21,7 +21,7 @@ sources: [benchmarks/tts/bench_tts.py, benchmarks/tts/model_configs.yaml, "PR #6

| 遇到什么 | 查看哪里 |
|---|---|
| 新增/审查 perf JSON、warmup 覆盖、realtime artifact、Hub dataset fallback、per-request timeout 或 `/v1/videos` 轮询预算、最终性能复测与控制漂移 | [benchmark rules](rules.md) 新增核对:BENCH-1f2、BENCH-1g。 |
| 新增/审查 perf JSON、warmup 覆盖、realtime artifact、Hub dataset fallback、per-request timeout 或 `/v1/videos` 轮询预算、最终性能复测与控制漂移、startup/raw-load测量边界或archive baseline采样窗口 | [benchmark rules](rules.md) 新增核对:BENCH-1f2、BENCH-1g。 |
| 查看旧 benchmark 总览 | [overview](overview.md) |
| 运行 AR graph、Hunyuan 或 MiniCPM-o Omni-DuplexEval benchmark | [benchmark guides](guides/_index.md) |
| 调查 profiling、模型加载和性能验证错误 | [benchmark incidents](incidents/_index.md) |
Expand Down
34 changes: 32 additions & 2 deletions knowledge/repos/vllm-omni/benchmark/rules.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
title: "vLLM-Omni Benchmark 规则"
created: 2026-09-05
updated: 2026-09-26
updated: 2026-10-06
type: rule
tags: [vllm-omni, benchmark]
sources: ["PR #7648", "PR #6817", tests/dfx/perf/scripts/run_benchmark.py, tests/benchmarks/test_omniinteract.py, "PR #7130", "PR #7259", "PR #7624", "PR #7504", "PR #8107"]
sources: ["PR #7648", "PR #6817", tests/dfx/perf/scripts/run_benchmark.py, tests/benchmarks/test_omniinteract.py, "PR #7130", "PR #7259", "PR #7624", "PR #7504", "PR #8107", "PR #7312", "PR #6538"]
confidence: high
---

Expand Down Expand Up @@ -93,3 +93,33 @@ confidence: high
- 强制:`run_diffusion_benchmark.py` 只跑 `is_diffusion_perf_config` 为真的 case(`benchmark_params[].dataset`);`run_benchmark.py` 只跑 omni-bench case(`dataset_name`)。schema 过滤看字段,不看 `mark`。迁移 JSON 后,所有引用该文件的 CUDA/NPU/AMD 步骤必须一起换 runner,并改用对应的 `BENCHMARK_DIR` 与 artifact glob。
- 禁止:一边已迁 omni-bench、一边仍调 diffusion runner(会 skip 全部 case,pytest 0 selected / exit 5);把某一平台的 runner 修复外推为其他 pipeline 已对齐。
- 验收:扫描全部 `.buildkite` 调用,断言 runner 与 JSON schema 一致;HunyuanVideo-1.5 t2v 等已迁 JSON 不得再回到 `run_diffusion_benchmark.py`。^[PR #8107]

## BENCH-1i — startup 与 raw-load 数字必须保持测量边界并拒绝残缺样本

- 触发:修改 MammothModa2 startup/storage benchmark、stage log parser 或 raw safetensors loading诊断。
- 强制:分别报告import、Omni构建、first/subsequent generate与process→first image;保存实际
script hash、source/config/依赖、线程/cgroup、cache条件与每次fresh-process样本。parallel stage
intervals可重叠,不能相加;weight-load与model-load差值只是setup估计,缺字段保持未测量。
- 强制:无 `BENCH_JSON` 为incomplete,`--require-complete`使其失败;storage wrapper传播engine
exit,删除旧summary/当前label旧输出,仅汇总本次成功logs。shard selection必须全匹配且非空。
raw-loader materialization含page faults/CPU allocation/copy,H2D含GPU allocation;CUDA setup
和operation warmup在timer外,不能称为disk bandwidth或engine-level read/cast/copy分解。
- 禁止:把requested eviction当保证cold machine/NFS server cache;用一次fixed-seed image equality
宣称跨prompt/mode质量等价。1Hz device-global GPU采样含其他users且可能漏transient peak,
process-tree RSS也只是采样;parser first-milestone的stage timeline不证明multi-replica全体时间。
- 验收:覆盖day/year rollover、无completion、engine非零退出、旧log/summary、缺shard/partial
selection;报告rotated fresh-process重复样本及spread,memory polling另跑。性能结果只适用
实际hardware/config,CUDA graph memory/headroom和质量另做matched验证。^[PR #7312]

## BENCH-1j — archived baseline 刷新必须绑定明确采样窗口与 workload

- 触发:据nightly archive改DFX perf JSON硬件bucket或调高latency/降低throughput reference。
- 强制:逐metric/hardware/concurrency给出immutable raw-run links、成功数、排除原因、软件/
workload差异与重算方法;同window nightly等权算术平均,最后一次round,不暗加margin。
temporary realtime backend与ordinary HTTP Seed-TTS、duplex timing边界不可混用;不同版本/
性能period分开,并披露选旧window或只有two-night coverage的敏感性限制。
- 禁止:选择性删除慢night或把未知revision的archived均值当fixed-version因果对照;把更新
reference说成优化目标已达成,或在无consumer时说成active performance regression gate。
- 验收:独立由原始数据重算全部更改值,保持benchmark/deployment/tolerances未改且bucket/
sweep位置一致;说明完整metric counts/失败数。PR #6538的69值属于历史reference,不能
推断H100 reference-audio变更解释全部shift或C8 RTF<1目标已实现。^[PR #6538]
23 changes: 13 additions & 10 deletions knowledge/repos/vllm-omni/ci/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: "vLLM-Omni CI"
created: 2026-07-10
updated: 2026-09-22
updated: 2026-10-06
type: index
tags: [vllm-omni, ci]
sources: [.buildkite/cuda/pipeline.yml, docs/contributing/ci/test_system_overview.md, tests/diffusion/quantization/test_svdquant_config.py, tests/diffusion/quantization/test_svdquant_linear.py, tests/diffusion/quantization/test_svdquant_tp_loading.py, tests/diffusion/quantization/test_wan_autoround_mxfp4.py, tests/e2e/offline_inference/test_wan21_autoround_mxfp4.py, "PR #5544", "PR #6162", "PR #6170", "PR #6303", "PR #6390", "PR #6613", .buildkite/cuda/test-nightly.yml, tests/e2e/online_serving/run_minicpmo_realtime_duplex_server_vad.py, tests/e2e/online_serving/test_minicpmo_4_5_duplex_expansion.py, tests/e2e/online_serving/test_qwen_image_expansion.py, tests/dfx/perf/tests/test_qwen_image_vllm_omni.json, tests/platforms/npu/test_diffusion_attn_backend_selector.py, "PR #6054", .buildkite/cuda/test-merge.yml, .buildkite/cuda/test-ready.yml, tests/e2e/online_serving/test_hunyuan_video_15_expansion.py, tests/dfx/perf/tests/test_hunyuanvideo15_t2v_vllm_omni.json, tests/dfx/perf/tests/test_hunyuanvideo15_i2v_vllm_omni.json, "PR #6349", .buildkite/amd/scripts/bootstrap-amd-omni.sh, .buildkite/amd/test-amd-merge.yml, .buildkite/amd/test-amd-ready.yml, tests/diffusion/distributed/test_tensor_parallel.py, tests/diffusion/offloader/test_diffusion_layerwise_offload.py, tests/helpers/clean.py, "PR #6704", tests/model_executor/models/minicpmo_4_5/test_pipeline.py, tests/model_executor/stage_input_processors/test_minicpmo_4_5_async_chunk.py, "PR #5464", "PR #6730", "PR #6745", "PR #6727", tests/diffusion/quantization/test_quantization_quality.py, "PR #5831", tests/dfx/perf/tests/test_qwen3_omni_async_chunk.json, tests/dfx/perf/tests/test_qwen3_omni_no_async_chunk.json, "PR #6743", tests/diffusion/models/minimax_h3/test_minimax_h3_quantization_quality.py, "PR #6742", "PR #6650", pyproject.toml, tests/helpers/mark.py, tests/helpers/tests/test_mark.py, tools/pre_commit/check_test_marks.py, "PR #6174", .buildkite/cuda/test-weekly.yml, tests/e2e/offline_inference/test_dots_tts_expansion.py, "PR #6556", tests/e2e/online_serving/minimax_h3/]
Expand Down Expand Up @@ -174,11 +174,11 @@ sources: [.buildkite/cuda/pipeline.yml, docs/contributing/ci/test_system_overvie

## XPU base-image resolution and support-table boundary

- The Intel Buildkite XPU lane targets vLLM `v0.28.0`. Its Omni image layers on
- The Intel Buildkite XPU lane and Docker default must target the same checkout release. Its Omni image layers on
`vllm/vllm-openai-xpu:${VLLM_VERSION}` and clears that image's serving entrypoint so the
result remains a shell/test container. The base carries the matching XPU runtime and vLLM;
Omni installs only its own layers. Keep the Dockerfile default and lane environment version
aligned.
aligned; the source PR #8528 aligns both and the install command to v0.31.0. ^[PR #8528]
- Before building, CI pulls the published upstream base freshly. If that pull fails it may use
an existing local copy; only if neither exists does it build the same vLLM tag from upstream
`docker/Dockerfile.xpu`, optionally under `VLLM_BASE`. Thus a fallback is provenance-aligned,
Expand All @@ -198,19 +198,22 @@ sources: [.buildkite/cuda/pipeline.yml, docs/contributing/ci/test_system_overvie
Qwen3-TTS CustomVoice `async_chunk` Whisper-validation case is an 80-minute,
`NonBlocking` quarantined step. It must return to the blocking sharded lane only after
the AMD failure is resolved; a passing neighboring shard does not establish that result.
- ROCm memory assertions sample steady-state inference and report peak usage relative to
each run's initial device use, after cache cleanup. They therefore do not count retained
compiler/workspace allocations from a preceding topology as model memory, and the ROCm
layerwise-offload floor remains a conservative 512 MiB signal rather than a portability
or performance claim. Cleanup diagnostics use bounded `rocm-smi` calls because an
optional `amd-smi` CPER ioctl can remain uninterruptibly blocked. ^[PR #6704]
- ROCm offload memory assertion现在由实际diffusion worker内同步reset/read的process-local
allocator peak支持,不能用parent device-global total-free减initial归因model saving;RPC返回
rank0不证明all-rank max。机制/quality证据边界见[DIFF-4x](../components/diffusion/rules-worker-observability.md)。
cleanup diagnostics仍有独立timeout,保守offload floor不构成portability或performance保证。
^[PR #6704] ^[PR #8189]


## 目录内容

- [Graph 测试 buffer](rules-graph-buffer-fixtures.md) — fake estimator 未写 tail 的确定性初始化。

| 遇到什么 | 查看哪里 |
|---|---|
| 构建wheel runtime data、无VCS archive parity或声明Python版本的安装/导入支持 | [构建与版本合同](rules-build-compatibility.md) |
| 审查硬件 lane(含 MiniMax-H3 DLO DP2 ready smoke 的证据边界)、回归 fence、CI 工具供应链、ASR 文本比较或 xdist/shared fixture、Buildkite 失败日志与运行时差异 | [CI rules](rules.md) 新增核对:OMNI-CI-1g、OMNI-CI-1h。 |
| AMD/ROCm timeout、quarantine、memory signal、single-card diffusion job 的 multi-card marker 排除、Qwen3-TTS argv 或 Qwen3-Omni control-plane fixture | [AMD/ROCm CI rules](rules-amd.md) 新增核对:OMNI-CI-2i、OMNI-CI-2i2、OMNI-CI-2i3、OMNI-CI-2i4。 |
| AMD/ROCm timeout、quarantine、memory signal、single-card diffusion job 的 multi-card marker 排除、Qwen3-TTS argv 或 Qwen3-Omni control-plane fixture | [AMD/ROCm CI rules](rules-amd.md) 新增核对:OMNI-CI-2i、OMNI-CI-2i2、OMNI-CI-2i3、OMNI-CI-2i4、OMNI-CI-2i5、OMNI-CI-2i6。 |
| CUDA L4 Kubernetes preset、GPU-count shard、resource/retry policy | [L4 Kubernetes CI rules](rules-l4-k8s.md) |
| Whisper 转写 helper 的 GPU 首选、16 GiB 门槛、CPU fallback 或 CUDA ready/merge source dependency | [Whisper 转写 CI 规则](rules-whisper-transcription.md) |
| 查看仓库特有 CI 陷阱 | [CI guides](guides/_index.md) |
Expand Down
Loading
Loading