概要
全体監査で確定した「重要パスのテスト欠落」をまとめる。分割 PR 可。
欠落しているカバレッジ
- widget コア:
widget/src/index.js(約 1710 行)に単体テストが一切無い(pure ヘルパのみテスト済)。特に download / exported 状態遷移(buildFeedbackBundle・編集での exported リセット, L444-449, 884-933)。
- Slack 配信経路:
deliverToSlack の sent / 非2xx failed / timeout failed / 画像 upload 結合が完全に未テスト。startMockGitHub はあるが startMockSlack が無く、SLACK_WEBHOOK_URL: "" 固定(test/receiver.test.js:682)。
- import 失敗系分岐:
failed 配列・partial-insert・duplicate-only(409)・all-failed(400) が positive に未検証(failed == [] のみ確認 / test/receiver.test.js:128)。
- store:
server/store.js に直接の単体テストが無く、すべて HTTP 経由の間接テスト。
- 409 orphan:
POST /feedback の 409 時に screenshot が孤児化する分岐(別 issue M-1 の回帰テスト)。
受け入れ条件
startMockSlack を追加し 200/500/timeout の slack.status と永続化を検証。
- import の全件重複 409 と failed 要素ありの経路を最低 1 本ずつ追加。
- widget コアの状態遷移に単体テストを追加。
出典: 全体監査(2026-06-20)。Medium ×3 + Low。
概要
全体監査で確定した「重要パスのテスト欠落」をまとめる。分割 PR 可。
欠落しているカバレッジ
widget/src/index.js(約 1710 行)に単体テストが一切無い(pure ヘルパのみテスト済)。特に download / exported 状態遷移(buildFeedbackBundle・編集での exported リセット, L444-449, 884-933)。deliverToSlackの sent / 非2xx failed / timeout failed / 画像 upload 結合が完全に未テスト。startMockGitHubはあるがstartMockSlackが無く、SLACK_WEBHOOK_URL: ""固定(test/receiver.test.js:682)。failed配列・partial-insert・duplicate-only(409)・all-failed(400) が positive に未検証(failed == []のみ確認 /test/receiver.test.js:128)。server/store.jsに直接の単体テストが無く、すべて HTTP 経由の間接テスト。POST /feedbackの 409 時に screenshot が孤児化する分岐(別 issue M-1 の回帰テスト)。受け入れ条件
startMockSlackを追加し 200/500/timeout の slack.status と永続化を検証。