You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
You can now customise when each time period starts and ends. Previously, the boundaries were hardcoded:
Period
Old (fixed)
Now configurable
Morning
06:00 – 12:00
✅
Afternoon
12:00 – 17:00
✅
Evening
17:00 – 21:00
✅
Night
21:00 – 23:59
✅
How to use
Open the TaskMate admin panel → Settings tab.
Find the new "Time-of-day boundaries" section (between "History & streaks" and "Bonuses").
Set the start and end time for each period using the paired time inputs (24-hour HH:MM format).
Click Save settings.
What it affects
Calendar event scheduling — published calendar events use your custom windows for start/end times.
Child card period detection — the child card correctly identifies which period is "now" based on your boundaries.
Claim windows — the grace period for completing chores starts and ends at your configured times.
Locked preview — chores shown as "locked until" display the correct start time for the configured period.
Period elapsed detection — chores are marked as missed based on your custom end times, not the old hardcoded ones.
Technical details
Settings stored as time_morning_start, time_morning_end, etc. in the integration's settings dict.
Backend (coord_calendar.py) reads from storage on every calendar publish, with graceful fallback to defaults if values are missing or malformed.
Frontend (taskmate-child-card.js) reads boundaries from the time_boundaries attribute on sensor.taskmate_overview, exposed via the merged attribute resolver.
Validation: websocket accepts only HH:MM format strings (regex ^\d{2}:\d{2}$).
These keys were referenced in the UI but had no translations, causing raw key strings to appear for non-English users and potentially for English users in certain edge cases.
Three fixes addressing incorrect points display for timed tasks:
Chore config dialog — Selecting "Timed" as the task type now immediately shows the timed-specific fields (points per window, window minutes, daily cap) without needing to save and reopen the dialog. Previously, switching task type required closing and reopening the dialog to see the relevant fields.
Sensor: timed completions — Timed task completions now report calculated points (duration × rate) instead of the base chore .points field. This fixes the pending approval badge and parent dashboard showing wrong values (e.g. showing "10" instead of "20" for a 2-minute task at 10 pts/min).
Child card celebration popup — Now reads points from the completion record instead of the chore definition, so timed tasks display the correct earned points in the celebration animation.
Follow-up fix for edge cases not covered by PR #243:
Celebration popup — Now captures the calculated timed points (elapsed ÷ rate_window × rate_points) before the stop_timed_task service call fires, avoiding a race condition where the entity state update could complete before the popup reads the duration.
Pending approvals sensor — Calculates timed task points from timed_duration_seconds stored on the completion record, matching the logic already used in todays_completions and the approval handler. Previously the pending approvals list showed the raw chore .points value for timed tasks.
Dialog consistency — Added task_type and timed-task defaults to the blank chore dialog object so new chore forms initialise cleanly.
Upgrade Instructions
In HACS, go to TaskMate → click Redownload → select version v3.6.2.
Restart Home Assistant.
Clear your browser cache (or hard-refresh the dashboard) to pick up the updated JS files.
(Optional) Visit Settings > Time-of-day boundaries in the admin panel to customise your period times.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
🚀 New Release: v3.6.2
What's New
Configurable Time-of-Day Boundaries (PR #242)
You can now customise when each time period starts and ends. Previously, the boundaries were hardcoded:
How to use
What it affects
Technical details
time_morning_start,time_morning_end, etc. in the integration's settings dict.coord_calendar.py) reads from storage on every calendar publish, with graceful fallback to defaults if values are missing or malformed.taskmate-child-card.js) reads boundaries from thetime_boundariesattribute onsensor.taskmate_overview, exposed via the merged attribute resolver.HH:MMformat strings (regex^\d{2}:\d{2}$).Bug Fixes
Missing Translation Keys (PR #241)
Added 11 missing translation keys across all 8 locale files (en, en-GB, de, fr, nb, nn, pt, pt-BR):
child.start,child.pause,child.paused,child.resume,child.donecommon.defaultdashboard.tab_rotation,dashboard.empty_rotation,dashboard.rotation_skip_confirm,dashboard.rotation_skip_hint,dashboard.rotation_unassignedThese keys were referenced in the UI but had no translations, causing raw key strings to appear for non-English users and potentially for English users in certain edge cases.
Timed Task Points Mismatch & Dialog Re-render (PR #243)
Three fixes addressing incorrect points display for timed tasks:
Chore config dialog — Selecting "Timed" as the task type now immediately shows the timed-specific fields (points per window, window minutes, daily cap) without needing to save and reopen the dialog. Previously, switching task type required closing and reopening the dialog to see the relevant fields.
Sensor: timed completions — Timed task completions now report calculated points (
duration × rate) instead of the base chore.pointsfield. This fixes the pending approval badge and parent dashboard showing wrong values (e.g. showing "10" instead of "20" for a 2-minute task at 10 pts/min).Child card celebration popup — Now reads points from the completion record instead of the chore definition, so timed tasks display the correct earned points in the celebration animation.
Timed Task Points in Celebration Popup & Pending Approvals (PR #244)
Follow-up fix for edge cases not covered by PR #243:
Celebration popup — Now captures the calculated timed points (
elapsed ÷ rate_window × rate_points) before thestop_timed_taskservice call fires, avoiding a race condition where the entity state update could complete before the popup reads the duration.Pending approvals sensor — Calculates timed task points from
timed_duration_secondsstored on the completion record, matching the logic already used intodays_completionsand the approval handler. Previously the pending approvals list showed the raw chore.pointsvalue for timed tasks.Dialog consistency — Added
task_typeand timed-task defaults to the blank chore dialog object so new chore forms initialise cleanly.Upgrade Instructions
Full Changelog
273b208fix: add 11 missing translation keys to all 8 locale files (fix: add missing translation keys to all locale files #241)b86fd8dfeat: configurable time-of-day boundaries (feat: configurable time-of-day boundaries #242)951f847fix: timed task points mismatch and dialog re-render on task type change (fix: timed task points mismatch and dialog re-render #243)6a0c780fix: timed task points display in celebration popup and pending approvals (fix: timed task points display in celebration and approvals #244)980f57dchore: bump version to 3.6.2 (chore: bump version to 3.6.2 #245)Upgrading
Update via HACS or by downloading the latest release and copying to
/config/custom_components/taskmate/.After updating, restart Home Assistant. Lovelace resources will update automatically on restart.
💬 Questions or issues with this release? Reply below or open an issue.
Beta Was this translation helpful? Give feedback.
All reactions