test : add unit tests for _build_triage_prompt in triage_engine
まだ誰も着手していません。
- #2425 @tmdeveloper007 による — マージされずにクローズ
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 35/100
調査の方向性
Read backend/secuscan/triage_engine.py to inspect _build_triage_prompt() and the existing tests in testing/backend/unit/test_triage_engine.py. Add focused tests for the listed fields, defaults, response format, and deterministic output. Done means those cases verify the prompt without invoking an LLM; linked pull request #2425 is closed and unmerged, so check its changes before starting.
索引モデルが issue の本文から書いたものです。
説明
Summary of What Needs to be Done:
Add unit tests for the _build_triage_prompt() helper function in backend/secuscan/triage_engine.py. This private function constructs the prompt string passed to the LLM when triaging a SAST finding. It formats the finding title, category, severity, description, code context, and variables into a structured prompt.
The existing test file testing/backend/unit/test_triage_engine.py tests extract_code_context, is_eligible_for_triage, triage_finding, and triage_findings, but _build_triage_prompt is not directly imported or tested.
Changes that Need to be Made:
In testing/backend/unit/test_triage_engine.py:
- Import
_build_triage_promptfrombackend.secuscan.triage_engine - Test that the prompt includes the finding title
- Test that the prompt includes the finding category
- Test that the prompt includes the severity
- Test that the prompt includes the description
- Test that the prompt includes the code snippet from context
- Test that the prompt includes variable hints
- Test that missing/None values fall back to defaults like "Untitled finding", "(no source snippet available)", "(none identified)"
- Test that the prompt ends with the response format instructions (JSON object requirements)
- Test that the prompt is a pure function (same inputs always produce same output)
Impact that it would Provide:
- Directly tests the prompt construction logic without needing a mock LLM
- Ensures the LLM receives well-formed prompts with all required fields
- Catches regressions if the prompt template changes
Note: This task is being handled by tmdeveloper007 — please assign to that account when picking it up.
- 主要言語
- Python
- スター
- 36
- フォーク
- 234
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
utksh1/SecuScan のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
area:frontend good first issue level:intermediate priority:low type:testing
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
-
area:frontend good first issue level:intermediate priority:low type:testing
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
area:frontend good first issue level:beginner priority:low type:testing
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
area:frontend good first issue level:intermediate priority:low type:testing
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
utksh1/SecuScan の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
メンテナーはふだん 1 日以内に返信
-
comp/desktop P3 type/feature
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
NousResearch/hermes-agent#154285 ·
メンテナーはふだん 1 日以内に返信
-
docs: qualify copied and custom kubectl debug policy notes対応中かも @nym01 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
kubescape/cel-admission-library#166 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
SACGF/variantgrid#2804 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
[BUG] HTTP lifecycle dispatch treats a NO_PROXY-only environment as corporate egress and skips the resolve-and-pinned session対応中かも @bodapatisaikrishna が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信