Skip to content

chore(release): prepare 1.0.2#47

Merged
ccpk1 merged 15 commits intomainfrom
dev
Mar 15, 2026
Merged

chore(release): prepare 1.0.2#47
ccpk1 merged 15 commits intomainfrom
dev

Conversation

@ccpk1
Copy link
Owner

@ccpk1 ccpk1 commented Mar 15, 2026

Summary

This PR promotes the current dev branch to main for the 1.0.2 release.

This promotion includes the previously prepared but not yet released 1.0.1 line, plus the follow-up fixes that landed after that prep work. The result is a release candidate that combines the unreleased dev backlog with the final 1.0.2 manifest bump.

User-facing highlights

Included fixes and references

Prepared release and release-line work:

Fixes merged after the 1.0.1 prep:

Earlier unreleased dev work also included in this promotion:

Validation

Completed for this release prep:

  • ./utils/quick_lint.sh --fix
  • full ChoreOps pytest suite run in four 25% batches
  • batch 1: 533 passed
  • batch 2: 350 passed, 4 skipped
  • batch 3: 346 passed, 2 deselected
  • batch 4: 489 passed
  • total: 1718 passed, 4 skipped, 2 deselected

Compatibility

  • Integration release: 1.0.2
  • Dashboard registry release: 1.0.1
  • Channel: stable
  • Compatibility status: verified

Release note generation

The merged dev history now carries the specific fix PR references needed for GitHub-generated release notes to surface the main improvements with traceable issue linkage, especially #38, #40, #42, #43, #44, and #46.

ccpk1 and others added 15 commits March 14, 2026 01:01
What changed:\n- Run translation sync from dev\n- Enable PR validation for dev-targeted PRs\n- Keep main as stable release branch\n\nWhy:\n- Establish dev as the pre-staging branch so fixes flow through dev before main\n
What changed:
- Require due dates for recurring chore schedules outside none/daily
- Exclude all no-due-date chores from calendar generation
- Limit no-due-date daily chores to weekday-gated dashboard/statistics visibility
- Reject service attempts to clear due dates from weekly/monthly/custom recurring chores
- Update shared scenarios and regression tests to match the supported scheduling contract
- Document the behavior change and the recommended alternative of using a due date with
  overdue handling set to never overdue
- Raise the translation sensor warning ceiling from 9 KB to 10 KB
- Wiki updated with guidance

Why:
- Fixes issue #22, where applicable-day split chores behaved like they were due every day
  and produced inconsistent calendar behavior
- Clarifies a functional change for some existing configurations: recurring chores without
  due dates are no longer a supported path outside none/daily
- Keeps recurrence, calendar output, dashboard grouping, and service/edit validation on one
  consistent scheduling rule
- Preserves the recommended way to repeat a chore without lateness by using a due date and
  selecting never overdue
What changed:

Added a compatibility wrapper for dashboard panel registration
Used the wrapper in both dashboard create and update paths
Added tests covering both old and new Home Assistant frontend API signatures
Why:

Home Assistant changed the frontend panel registration API in 2026.3
Older versions reject show_in_sidebar, which caused dashboard generation to fail
This keeps newer behavior intact while allowing older supported installs to continue working
* chore(l10n): sync translations from Crowdin

* chore(l10n): sync translations from Crowdin

* chore(ci): trigger translation PR checks

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: ccpk1 <shillingcl@gmail.com>
What changed:
- keep notif_id in reward claim notification actions
- preserve notif_id on reward reminder notification actions
- add regression coverage for claim and reminder payloads

Why:
- reward approval actions from notifications were losing notif_id and failing to parse
- follow-up reward reminders had the same malformed action risk

Refs: #34
What changed:
- route existing DAILY_MULTI chore edits back through the helper step
- fix DAILY_MULTI skip_due_date to advance from the current slot on repeated skips
- add regression coverage for edit-helper reopening and repeated skip advancement

Why:
- issue 37 required the DAILY_MULTI edit helper to reopen consistently
- skip_due_date breakage was found during issue 37 testing and remediated in the same fix set
* fix(chores): restore daily multi edit flow (#37)

What changed:
- route existing DAILY_MULTI chore edits back through the helper step
- fix DAILY_MULTI skip_due_date to advance from the current slot on repeated skips
- add regression coverage for edit-helper reopening and repeated skip advancement

Why:
- issue 37 required the DAILY_MULTI edit helper to reopen consistently
- skip_due_date breakage was found during issue 37 testing and remediated in the same fix set

* fix(users): clean stale helpers and add-user form

What changed:
- add startup cleanup for orphaned assignee calendar and datetime helpers
- await add-user schema construction in the options flow
- add regression coverage for both paths

Why:
- fixes #35 by removing stale deleted-user calendar artifacts
- fixes an untracked add-user schema serialization crash in options flow
What changed:\n- stop boundary resets from rescheduling non-recurring chores\n- clear stale due dates after fresh-cycle resets for frequency none chores\n- add regressions for issue #28 and midnight no-due-date resets\n\nWhy:\n- stale due dates could survive resets and create false overdue cycles
* fix(calendar): use schedule source of truth (#45)

* fix(calendar): localize event descriptions (#45)
@ccpk1 ccpk1 merged commit 8d34ea4 into main Mar 15, 2026
6 checks passed
@ccpk1 ccpk1 added enhancement New feature or request and removed enhancement New feature or request labels Mar 15, 2026
@ccpk1 ccpk1 deleted the dev branch March 15, 2026 21:59
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.

1 participant