Files
SubMiner/backlog/tasks/task-330 - Fix-PR-60-CI-failures-and-CodeRabbit-feedback.md
T
sudacode e241aa8c86 Fix PR #60 CI failures and address CodeRabbit feedback
- Restore raw tokensSeen for session summaries; keep filtered counts for aggregates/known-words
- Fix missing headword binding in insertFilteredWordOccurrence test fixture
- Page vocabulary stats until enough visible rows collected after post-query filtering
- Use lifetime totals for library/detail word counts instead of partial retained-session sums
- Prefer stored rollup totals over recomputed session counts when recomputation is partial
- Emit flat known-word timeline points for line indexes with no occurrences
- Roll back local excluded-word state and throw on failed persistence
- Reset initialized flag on load failure to allow retry on next call
- Restore globalThis.localStorage after each excluded-words test
2026-05-03 20:00:10 -07:00

3.4 KiB

id, title, status, assignee, created_date, updated_date, labels, dependencies, references, priority
id title status assignee created_date updated_date labels dependencies references priority
TASK-330 Fix PR 60 CI failures and CodeRabbit feedback Done
codex
2026-05-04 02:50 2026-05-04 02:59
ci
pr-review
https://github.com/ksyasuda/SubMiner/pull/60
high

Description

Resolve failing GitHub Actions checks and actionable unresolved CodeRabbit review feedback on PR #60 (Persist stats exclusions in DB and fix word metrics filtering). Keep fixes scoped to the PR behavior and preserve existing project patterns.

Acceptance Criteria

  • #1 Failing GitHub Actions checks for PR #60 have an identified root cause and local fix.
  • #2 All actionable unresolved CodeRabbit review comments on PR #60 are addressed locally or explicitly documented as non-actionable.
  • #3 Relevant local verification passes for the changed code paths.
  • #4 Task notes summarize CI failure context, review-comment handling, and any residual verification gaps.

Implementation Plan

  1. Resolve PR #60 context and inspect GitHub Actions failures with the gh-fix-ci workflow.
  2. Fetch unresolved review threads with the gh-address-comments workflow, focusing on CodeRabbit actionable comments.
  3. Read the touched files/tests around the failing paths and comments; identify root cause before edits.
  4. Apply minimal fixes with regression coverage where appropriate.
  5. Run targeted verification first, then broader repo gates as time permits.
  6. Update Backlog notes/acceptance criteria with CI/comment outcomes and residual risks.

Implementation Notes

Resolved PR #60 CI failure by restoring raw tokensSeen for session summaries while keeping filtered persisted word counts in aggregate/known-word paths. Addressed CodeRabbit feedback: fixed missing headword test fixture binding; paged vocabulary stats past filtered rows; preserved lifetime/rollup totals when retained-session recomputation is partial; emitted flat known-word timeline points for zero-visible-word line gaps; restored localStorage mocks; added rollback/retry behavior for excluded-word store persistence/initialization.

Final Summary

Fixed the PR #60 CI failure and addressed actionable CodeRabbit feedback.

Key changes:

  • Restored exact Yomitan token counts for session summary metrics while leaving filtered word counts for aggregate and known-word calculations.
  • Fixed malformed query test fixtures by binding headword into imm_words inserts.
  • Updated vocabulary stats to page until enough visible rows are collected after post-query filtering.
  • Made library/detail/rollup read models preserve lifetime or stored rollup totals when retained-session recomputation is partial, including dashboard rollup-derived word metrics.
  • Kept known-word timeline line positions stable by emitting flat points for missing line indexes.
  • Made excluded-word persistence rollback on failed writes, allow initialization retries after transient load failures, and restored mocked localStorage in tests.

Verification passed:

  • bun run typecheck
  • bun run test:fast
  • bun run test:env
  • bun run build
  • bun run test:smoke:dist
  • bun run format:check:src
  • git diff --check