diff --git a/knowledge/repos/vllm-omni/review/guides/_index.md b/knowledge/repos/vllm-omni/review/guides/_index.md index 30d78f72..e909604b 100644 --- a/knowledge/repos/vllm-omni/review/guides/_index.md +++ b/knowledge/repos/vllm-omni/review/guides/_index.md @@ -13,5 +13,5 @@ sources: [] |---|---| | 按 PR 描述先路由到精确 owner/model 代码地图,再用 changed files 校验范围 | [PR intent maintainer routing](maintainer-pattern-routing.md) | | 审查模型适配 PR 的完整性 | [model adaptation guardrails](model-adaptation-guardrails.md) | -| Strict 审查注入的触发式检查单(streaming 生命周期、平台默认值影响面、依赖下界、CI marker 选择、测试有效性) | [strict review checklist](strict-review-checklist.md) | +| Strict 审查注入的触发式检查单(streaming 生命周期、平台默认值影响面、依赖下界、CI marker 选择、测试有效性、bugfix 回归覆盖) | [strict review checklist](strict-review-checklist.md) | | 判断新模型验证是否证明语义正确 | [model validation](model-validation.md) | diff --git a/knowledge/repos/vllm-omni/review/guides/strict-review-checklist.md b/knowledge/repos/vllm-omni/review/guides/strict-review-checklist.md index 293424c0..5641d42d 100644 --- a/knowledge/repos/vllm-omni/review/guides/strict-review-checklist.md +++ b/knowledge/repos/vllm-omni/review/guides/strict-review-checklist.md @@ -1,7 +1,7 @@ --- title: "Strict 审查触发式检查单" created: 2026-08-12 -updated: 2026-08-15 +updated: 2026-08-25 type: guide tags: [vllm-omni, review] sources: [] @@ -114,6 +114,15 @@ Train-distilled trigger→check lines (20-PR campaign + teacher traces semantic merge conflict here (double resample) that invalidates the PR's own WER numbers; on any merge commit, re-verify reported numbers at HEAD. +## Bugfix PR regression coverage + +Only when the PR is a bugfix (title/labels/linked issue): demand a regression +test pinning the ORIGINAL failure path — failing before the fix, matching the +root cause, not a happy path (a test that cannot fail counts as missing). +Check same-class entrypoints and boundaries; an accepted gap must state reason +and residual risk. Conclude by naming the covering test/case or filing an +explicit blocking / non-blocking finding — never silence. + ## Process norms maintainers enforce - A PR fixing one of N problems in a linked issue: one comment names the diff --git a/src/infermatrix_copilot/thin_mcp_server.py b/src/infermatrix_copilot/thin_mcp_server.py index 900ac086..cb929eda 100644 --- a/src/infermatrix_copilot/thin_mcp_server.py +++ b/src/infermatrix_copilot/thin_mcp_server.py @@ -184,6 +184,7 @@ def _knowledge_root() -> Path: # unassisted baseline caught and Direct missed, and neither belongs to any component # owner, so no knowledge route will surface them. "When the diff adds or changes a test, check the assertions bind to real behavior and not to values the fixture, mock, or fake injected.", + "When the PR is a bugfix (title, labels, or linked issue), require a regression test that pins the original failure path; happy-path-only additions do not count, and a missing pin becomes an explicit blocking or non-blocking finding, never silence.", "When the diff passes a new argument to a dependency, check it against the lowest version the project's own constraints still permit, not the version installed here.", "For resource or cache changes, trace budget measurement through reservation and physical consumption, including warmup/profile/activation ordering and low-resource behavior.", "For runtime changes, trace exception propagation, partial-allocation cleanup, cancellation, timeout, shutdown, and concurrent scheduling to the terminal user-visible signal.", diff --git a/test/test_thin_mcp_server.py b/test/test_thin_mcp_server.py index d2ed5831..25eede44 100644 --- a/test/test_thin_mcp_server.py +++ b/test/test_thin_mcp_server.py @@ -158,6 +158,10 @@ def test_direct_entrypoints_do_not_resolve_repo(monkeypatch): "subtraction" in item for item in review["first_review_checklist"] ) + assert any( + "pins the original failure path" in item + for item in review["first_review_checklist"] + ) assert any( "consumers, trust boundaries, and lifecycle ownership" in item for item in review["first_review_checklist"]