门禁不覆盖 feature matrix(no-default-features)→ feature-gating 缺陷合入后才被 CI 检出(#94 实例)
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 65/100
- issue の種類
- 機能追加
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- rust, yaml
調査の方向性
Start by reading the gate configuration and command handling for ~/.issue-keeper/config.yaml, then compare the recursive gate with .github/workflows/ci.yml:64-86. Add the bare cargo clippy --lib --no-default-features -- -D warnings check with the paths and timeout described in the issue. Done means the restored #94 lines are caught, normal gates pass, and the added runtime is no more than about two minutes.
索引モデルが issue の本文から書いたものです。
説明
场景 gap 单(okguitar 提报)· 优先级 P2 · 依赖:无
基线 HEAD = 16fa769(jeffkit/issue-keeper)
Summary
管线本地门禁(~/.issue-keeper/config.yaml 各仓 gates)只跑 --all-features 组合,不覆盖无默认特性 / 单特性隔离构建;而 recursive 的 CI 有 feature matrix(8 变体:bare + mcp/http/cli/web_fetch/anthropic/skill-hub/web_search)。机制上:feature-gating 编译错误在本地门禁永远是盲区,只能等合入后由 CI 首红暴露。
今日实例(同型第二次):#94(recursive a9e8a6f5)新文件 src/llm/factory.rs 在无 anthropic feature 下 clippy -D warnings 两处报错——use std::time::Duration 未使用(仅 anthropic 臂使用)、thinking_budget 参数未使用(仅转发给 anthropic 臂)。本地门禁(fmt/clippy --all-features/test)全绿放行 → CI run 37319059193 feature matrix 8 变体红 7;值守止血 9a4efb27(cfg 门控)后转绿(run 37322090026 matrix 8/8)。先例:#100 时代 clippy 未入门禁 → CI 拦截,后以"门禁补 clippy"解决——本次是同一"门禁覆盖 ≠ CI 覆盖"类的残留面。
影响
- main CI 红只能合入后暴露:需值守止血或二次 run,成本高且打断验收节奏;
- CI 连续红会掩盖后续真实回归(区分红因需人工读日志);
- 所有 Rust 仓(recursive/agentproc/im-agentproc/ilink-hub)同型档位均可能踩(机制存在但本地从未构建过该组合)。
证据(亲读)
~/.issue-keeper/config.yaml(recursive 档)gates clippy:cargo clippy --workspace --all-targets --all-features -- -D warnings—— 无--no-default-features;另一 Rust 档(同文件 115 行附近)同型。- recursive
.github/workflows/ci.yml:64-86:feature matrix 跑cargo check --lib --no-default-features+cargo clippy --lib --no-default-features [--features X] -- -D warnings(8 变体)。 - 红 run 日志原文(退出 101,
factory.rs:16unused import +factory.rs:37unused variable)。
建议
在 recursive 档 gates 增加一条 bare 检查(增量缓存下约 1 分钟,不必跑全 8 变体):
- name: feature-matrix-bare
command: cargo clippy --lib --no-default-features -- -D warnings
timeout_secs: 600
paths: ['src/**', 'Cargo.toml', 'Cargo.lock']
agentproc / im-agentproc / ilink-hub 如果有 no-default-features 构建矩阵(各自 CI 已证有),同型各加一行。
验收
合成提交(如把 #94 的 factory.rs 原始两行还原到分支)跑下发前门禁:bare 检查能报错拦截;同时正常提交门禁全绿不误报、耗时增量 ≤ ~2 分钟。
- 主要言語
- Python
- スター
- 0
- フォーク
- 0
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
jeffkit/issue-keeper のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 15/100
jeffkit/issue-keeper#22 · コメント 3 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
jeffkit/issue-keeper#21 · コメント 3 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 58/100
jeffkit/issue-keeper#19 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
jeffkit/issue-keeper#17 · コメント 6 件 ·
-
keeper-ignore
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
jeffkit/issue-keeper#16 · コメント 2 件 ·
jeffkit/issue-keeper の issue をすべて見る
似ている issue
-
kind/bug priority/medium qa_automation
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
yugabyte/yugabyte-db#37324 ·
メンテナーはふだん 1 日以内に返信
-
good first issue
難易度 1/5 1時間未満 初心者へのやさしさ 87/100
btclib-org/btclib-node#2260 ·
メンテナーはふだん 1 日以内に返信
-
ChatBedrockConverse changes the keys of JSON tool results to camelCase (`order_id` becomes `orderId`)対応中かも @geyazheng が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
langchain-ai/langchain-aws#1469 ·
メンテナーはふだん 1 日以内に返信
-
GCToggler leaves collection enabled if the body re-enables it対応中かも @Gambit-Checkmate が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 7 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
メンテナーはふだん 1 日以内に返信