Skip to content

feat(votes): 暫定グレード表示の最小票数を3→1に変更#3682

Merged
river0525 merged 2 commits into
stagingfrom
feature/change-vote-border
Jun 18, 2026
Merged

feat(votes): 暫定グレード表示の最小票数を3→1に変更#3682
river0525 merged 2 commits into
stagingfrom
feature/change-vote-border

Conversation

@river0525

@river0525 river0525 commented Jun 17, 2026

Copy link
Copy Markdown
Collaborator

Summary

Test plan

  • vote_grade.test.ts: PENDING タスク 1票で votedGradeStatistics が保存されることを確認
  • vote_grade.test.ts: 非PENDING タスク 1〜2票では保存されないことを確認
  • vote_grade.test.ts: 非PENDING タスク 3票で保存されることを確認(既存挙動維持)
  • 全テスト 9/9 通過

🤖 Generated with Claude Code

Summary by CodeRabbit

リリースノート

  • 新機能

    • 保留中タスクの暫定グレード表示が改善され、最小投票数要件が調整されました。確認済みタスクと保留中タスクで異なる投票数閾値が適用されるようになります。
  • テスト

    • タスク状態に応じた統計更新条件の検証テストが追加・拡張されました。

…tasks

Closes #3648

- PENDING tasks now store vote statistics after 1 vote (暫定グレード)
- Confirmed-grade tasks retain the 3-vote threshold for relative evaluation badge
- Add MIN_VOTES_FOR_PROVISIONAL_GRADE = 1 constant alongside MIN_VOTES_FOR_STATISTICS
- Pass minVotes through to computeMedianGrade to respect the per-task threshold

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 7af3dce5-c4d1-4de9-8bba-340f0de7ffee

📥 Commits

Reviewing files that changed from the base of the PR and between 6a4a881 and ad59aea.

📒 Files selected for processing (5)
  • src/features/votes/constants/statistics.ts
  • src/features/votes/services/vote_grade.test.ts
  • src/features/votes/services/vote_grade.ts
  • src/routes/votes/+page.svelte
  • src/routes/votes/[slug]/+page.svelte

📝 Walkthrough

Walkthrough

MIN_VOTES_FOR_PROVISIONAL_GRADE = 1 を新定数として追加し、upsertVoteGradeTables の統計更新閾値を TaskGrade.PENDING か否かで分岐させる実装変更。対応するテストのモック・期待値も更新し、UI の表示文言をハードコード値から新定数参照に切り替え。

Changes

暫定グレード最小票数の分離

Layer / File(s) Summary
MIN_VOTES_FOR_PROVISIONAL_GRADE 定数追加
src/features/votes/constants/statistics.ts
MIN_VOTES_FOR_PROVISIONAL_GRADE = 1 を export 追加。既存の MIN_VOTES_FOR_STATISTICS のコメントを confirmed-grade 専用として明確化。
upsertVoteGradeTables の minVotes 分岐実装
src/features/votes/services/vote_grade.ts
task.grade を取得して PENDING なら MIN_VOTES_FOR_PROVISIONAL_GRADE、それ以外なら MIN_VOTES_FOR_STATISTICSminVotes として決定。total < minVotes で早期リターン、updateVoteStatistics / computeMedianGrademinVotes を伝播。
テストモックと期待値の更新
src/features/votes/services/vote_grade.test.ts
db / tx モックに task.findUnique を追加。非PENDING×閾値未満・非PENDING×3票到達・PENDING×1票到達の3パターンを個別テストとして整理・追加。
UI 表示の定数置き換え
src/routes/votes/+page.svelte, src/routes/votes/[slug]/+page.svelte
ツールチップ・説明文のハードコード値と MIN_VOTES_FOR_STATISTICS 参照を MIN_VOTES_FOR_PROVISIONAL_GRADE に統一。

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested reviewers

  • KATO-Hiro

Poem

🗳️ 1票でも、仮の答えは輝く
PENDING の夜に、光をともす定数よ
minVotes の分岐、静かに決まり
ハードコードよさらば、定数に宿れ
暫定グレード、今日から1票で咲く 🌸

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed タイトルはPR内容の主要な変更(暫定グレード表示の最小票数を3→1に変更)を明確に要約しており、変更セットと完全に関連しています。
Linked Issues check ✅ Passed 新定数MIN_VOTES_FOR_PROVISIONAL_GRADE=1の追加、投票ロジックの最小票数判定の見直し、テスト追加により、#3648で要求される暫定グレード表示の最小票数を3→1への変更要件を完全に達成しています。
Out of Scope Changes check ✅ Passed すべての変更が暫定グレード最小票数変更の目的に直結しており、スコープ外の変更は確認されません。

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/change-vote-border

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@river0525 river0525 merged commit 892e22f into staging Jun 18, 2026
3 checks passed
@river0525 river0525 deleted the feature/change-vote-border branch June 18, 2026 04:27
@river0525

Copy link
Copy Markdown
Collaborator Author

テスト通過したのでマージいたしました。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[feat] 投票機能: 暫定グレード表示の最小票数を3 → 1 に変更しましょう

1 participant