-
Notifications
You must be signed in to change notification settings - Fork 0
ナレッジグラフ: progress-reportのrelationをhas_progressに変更 #165
Copy link
Copy link
Closed
Description
概要
knowledge_edgesテーブルでprogress-report.mdがhas_reviewとして登録されているのを、専用のhas_progress relationに変更する。
背景
#160 でhuman/LLM出力の表示は[progress]に修正済みだが、DB層のrelationはhas_reviewのまま。
現状
DB: knowledge_edges.relation = "has_review" (既存のインデックス済みprogress-reportが対象)
JSON: relation = "has_review", doc_subtype = "ProgressReport"
Human: [progress] (doc_subtypeから変換)
問題
- JSONで
relationフィールドのみ参照するコンシューマがhas_reviewと誤認する可能性 - DB直接クエリで
has_reviewにprogress-reportが混在し、正確なレビュー件数が取得できない
対応内容
KnowledgeRelationenumにHasProgressバリアント追加build_pattern_rules()のprogress-reportルールのrelationをHasProgressに変更KnowledgeRelation::parse()に"has_progress"を追加KnowledgeRelation::as_str()にHasProgress => "has_progress"を追加relation_display_label()に"has_progress" => "progress"フォールバックを追加find_documents_by_issue()のDB relation パースに"has_progress"を追加relation_priority()に"has_progress"の優先度を追加sort_order()にHasProgressのソート順序を追加(順序値: 5 = Modifiesの次)- 既存DBのマイグレーション(
has_review→has_progress)は再インデックスで対応
影響ファイル
| ファイル | 変更内容 |
|---|---|
src/indexer/knowledge.rs |
HasProgressバリアント追加、as_str()・parse()・Display追加、PatternRule修正 |
src/indexer/symbol_store.rs |
find_documents_by_issue()のrelation パース match に"has_progress"追加 |
src/output/human.rs |
relation_display_labelに"has_progress" => "progress"追加 |
src/cli/before_change.rs |
relation_priority()に"has_progress"追加 |
src/cli/issue.rs |
sort_order()にHasProgressバリアント追加 |
tests/e2e_issue.rs |
progress-reportテストデータをHasProgressに変更 |
受け入れ基準
-
KnowledgeRelation::HasProgressが追加されている - 再インデックス後、progress-reportが
has_progressで登録される -
why --format jsonでrelation: "has_progress"が返る - human/LLM出力で引き続き
[progress]が表示される -
before-changeコマンドでprogress-reportが適切な優先度でソートされる -
issueコマンドでprogress-reportが適切な順序で表示される - 既存テストが全Pass
-
cargo clippy --all-targets -- -D warnings警告0件
関連
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels