Skip to content

Conversation

@KATO-Hiro
Copy link
Collaborator

@KATO-Hiro KATO-Hiro commented Feb 1, 2026

close #3108

Summary by CodeRabbit

  • Documentation

    • Updated contest table provider guide with improved formatting and clarity on contest classification and grouping.
  • Bug Fixes

    • Fixed contest filtering logic to properly exclude certain contests from specific contest categories.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Feb 1, 2026

Walkthrough

The pull request removes the ACL Beginner Contest (ABL) from the ABC-like contest table. ABCLikeProvider now explicitly excludes ABL via a conditional check, contest documentation is updated with revised counts, and test data and assertions are modified to reference Zone2021 contests and updated contest identifiers instead of ABL.

Changes

Cohort / File(s) Summary
Documentation Updates
docs/guides/how-to-add-contest-table-provider.md
Contest table formatting aligned; contest count for ABC-Like updated from 15 to 14; clarification added that ABL uses same classification as ACL.
Core Logic
src/lib/utils/contest_table_provider.ts
ABCLikeProvider.setFilterCondition modified to exclude ABL by adding explicit contestId check (contestId !== 'abl') alongside existing classification check.
Test Assertions
src/test/lib/utils/contest_table_provider.test.ts
Round label formatting updated to reference 'jsc2021' instead of 'abl'; table generation tests updated to verify 'jsc2021' and 'jsc2025advance-final' keys; filtering tests now reference 'zone2021' contests instead of ABL.
Test Data
src/test/lib/utils/test_cases/contest_table_provider.ts
Zone2021 task set expanded to include two tasks (zone2021_a, zone2021_f); ABCLike provider test data reactivated with abl entries; zone2021_f added to provider test array.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Poem

🐰 ABL hops away from ABC's table so bright,
Zone2021 takes its place, everything feels right,
Contest counts align in rows perfectly neat,
Contest categorization now feels complete! 🎯

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the main change: removing ABL from the ABC-like table, which is the primary objective of this PR.
Linked Issues check ✅ Passed The PR successfully removes ABL from the ABC-like table by updating code logic, tests, and documentation to exclude ABL and reference Zone2021 instead.
Out of Scope Changes check ✅ Passed All changes directly support the primary objective of removing ABL from the ABC-like table; no out-of-scope modifications detected.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch #3108

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.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Fix all issues with AI agents
In `@docs/guides/how-to-add-contest-table-provider.md`:
- Around line 219-224: Update the table row for "ABC-Like" to explicitly state
that ABL is shown under ACL Practice, e.g. change the cell text that currently
reads "あり(14個)、ABL は ACL と同じ区分で表示" to a clearer phrase like "あり(14個) — ABL は ACL
Practice に表示(ABC-Like ではありません)" so readers understand ABL has moved to ACL
Practice rather than remaining under ABC-Like; update any nearby explanatory
text referencing "ABL" or "ACL" to use the exact term "ACL Practice" for
clarity.

In `@src/lib/utils/contest_table_provider.ts`:
- Around line 468-474: The ABCLikeProvider currently excludes 'abl' in
ABCLikeProvider.setFilterCondition() (the "contestId !== 'abl'" check) which
causes ABL to disappear; remove that special-case exclusion so ABCLikeProvider
includes contests where classifyContest(contestId) === this.contestType (i.e.,
delete the "contestId !== 'abl'" clause in
ABCLikeProvider.setFilterCondition()), and run tests or check
ACLPracticeProvider.setFilterCondition() and classifyContest() to ensure no
other provider or classification logic is meant to own 'abl'.
🧹 Nitpick comments (1)
src/test/lib/utils/contest_table_provider.test.ts (1)

1461-1514: Add an explicit assertion that abl is excluded.
The allowed list still includes 'abl', so a regression could pass. Add a direct expectation to enforce the new behavior.

✅ Suggested test hardening
     const filtered = provider.filter(taskResultsForABCLikeProvider);

     expect(filtered.length).toBeGreaterThan(0);
+    expect(filtered.some((task) => task.contest_id === 'abl')).toBe(false);
     expect(
       filtered.every((task) => {
         const contestId = task.contest_id;

Copy link
Collaborator Author

@KATO-Hiro KATO-Hiro left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@KATO-Hiro KATO-Hiro merged commit 1575875 into staging Feb 1, 2026
4 checks passed
@KATO-Hiro KATO-Hiro deleted the #3108 branch February 1, 2026 08:08
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] テーブル「ABC-like」から ABL を削除しましょう

2 participants