Skip to content

fix(chores): any-day follow-ups from the #364 review - #369

Merged
jherforth merged 1 commit into
mainfrom
fix/any-day-review
Nov 1, 2026
Merged

jherforth merged 1 commit into
mainfrom
fix/any-day-review

Conversation

@jherforth

Copy link
Copy Markdown
Owner

Fixes the any-day issues mrramam found after #364 merged (comment). Each fix is numbered as in that comment.

Fixes

  1. The nightly reset unassigned cards that carry clams. It now resets only cards whose schedule has no person: bonus chores someone took still go back to everyone. A card from someone's own schedule stays theirs. This applies to stays-until-done cards too.
  2. Changing the timing left the card behind. Moving an any-day schedule to another timing, or deleting it, now removes its not-yet-done card. Before, the card stayed as a one-time chore due every day: it blocked the daily bonus and logged misses. After the change the daily bonus is checked again, so a finished day pays.
  3. The nightly prune could delete an undone chore. When a repeating schedule is made one-time, the server records the last history id at that moment (one_time_after_history_id, migration schema40-oneTimeAfter). The prune counts only completions logged after it. Before, a completion from when it repeated (now often moved onto it from a card) counted, so the chore was cleared undone that night and its chore deleted with it. This also fixes plain day-of schedules made one-time.
  4. Copy lost the period. Copy now keeps the interval for any-day schedules as well as again-after-done ones.
  5. Two-week periods could be off by a week. The period now starts from the household's date the schedule was made, not the UTC date. The server and the board calendar both use it, so a schedule made at 8 pm on a Saturday in Pacific time starts that week.
  6. The week view near a period boundary. The calendar now works through each period in the week separately:
    • A week holding November's completion and December's open card shows both.
    • A later week that holds a period's last day shows nothing planned once that period is done (no open card).
  7. The wizard accepted 2.5 days. It now takes whole numbers only, matching the server.

The two that weren't run end to end

Checks

  • Server: 706 of 706 tests pass. Four tests are new:
    • one card keeps its person while a bonus card someone took resets;
    • moving to other days and deleting each remove the card, and moving pays the bonus;
    • a schedule made one-time isn't cleared until it's done again;
    • the daily bonus test now uses fixed dates, so it no longer depends on today being Saturday.
  • Against main: the first three new tests fail, which confirms they catch the bugs.
  • Client: 899 of 899 tests pass. New tests cover:
    • the calendar across a period boundary, a later week after the period is done, and the two-week anchor in Pacific time;
    • whole numbers in the wizard;
    • the last-day rule for the daily bonus;
    • which due-time sounds ring.
  • Edge: copying a 3-month any-day group keeps 3m, with no page errors.
  • check:i18n and the build pass.

🤖 Generated with Claude Code

- A card from someone's own schedule keeps its person overnight, clams or not.
- Moved off any-day, or deleted, its open card goes instead of lingering as a
  one-time chore due every day (holding back the bonus, logging misses).
- A repeating schedule made one-time counts only completions logged after the
  change (one_time_after_history_id, migration 40), so it isn't cleared undone.
- Copy keeps an any-day group's period.
- Two-week periods count from the household's date the schedule was made.
- The week calendar handles a week that holds two periods, and plans nothing
  for a period already done.
- The wizard takes whole numbers only.
- Due-time sounds skip a one-time chore due on a later day.
- A card made on its period's last day doesn't count that day.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jherforth
jherforth merged commit 81de86c into main Nov 1, 2026
7 checks passed
@github-project-automation github-project-automation Bot moved this from Backlog to Done in HomeGlow Kanban Nov 1, 2026
@jherforth jherforth self-assigned this Nov 1, 2026
@jherforth jherforth added the bug Something isn't working label Nov 1, 2026
@jherforth jherforth added this to the 2.0 milestone Nov 1, 2026
adamecker pushed a commit to adamecker/HomeGlow that referenced this pull request Nov 1, 2026
…, jherforth#370; admin jherforth#366; ha-panels jherforth#371) into test/all-combined

# Conflicts:
#	server/migrations/registry.js
#	server/tests/anyDayChores.test.js
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant