Skip to content

feat(children): adult profiles for parents who log their own chores (#1061) - #1066

Merged
tempus2016 merged 1 commit into
mainfrom
feat/1061-parents-as-actual-parents
Oct 14, 2026
Merged

tempus2016 merged 1 commit into
mainfrom
feat/1061-parents-as-actual-parents

Conversation

@tempus2016

Copy link
Copy Markdown
Owner

Closes #1061

Parents who track their own chores had to add themselves as children and then approve each other's work. A profile can now be marked as an adult.

What changes

Backend

  • New is_adult flag on a profile (model, taskmate/add_child, taskmate/update_child). It is published on the overview sensor only when true, so the attribute size is unchanged for families without adults.
  • An adult's own completions are approved straight away: normal chores, bonus sub-tasks and timed sessions (including the overnight close-out). Children's completions are unchanged. A photo or note the chore requires is still asked for. Team chores and bounties keep their current rules.

Admin panel

  • An "Adult profile" switch in the add/edit child dialog, with an "Adult" tag on the profile card.

Cards

  • Family-wide cards leave adult profiles out by default, and show them after the kids when the card sets show_adults: true. Covered: leaderboard, overview, points, points display, graph, streak, weekly, calendar, sticker chart, reward progress and the parent dashboard (overview and points sections; approvals and rotation still name everyone).
  • The "Show adults" toggle appears in those card editors once the family has an adult profile.
  • A card pinned to one child_id is unaffected, so an adult can still have a card of their own.
  • Kiosk and chore board: an unconfigured card follows the same rule, and an adult picked explicitly in the card's child list counts as opted in.
  • Shared logic lives in taskmate-attr-resolver.js (__taskmate_family_children, __taskmate_adults_field).

Translations: all new strings in every locale (da, de, en, en-GB, fr, nb, nn, pl, pt, pt-BR).

Testing

  • tests/test_adult_profiles.py: adult chore, sub-task and timed session auto-approve, a child still waits, and the model round-trips. 3 of these fail on main.
  • tests/frontend/taskmate-adult-profiles.test.cjs: filtering, ordering, child_id bypass, editor toggle, leaderboard render.
  • Full suite: 3240 passed; card render tests 675 passed; ESLint, ruff and translation parity clean.
  • Tested on ha-dev: over WebSocket, an adult's completion of an approval-required chore was approved with points (+7) while a child's stayed pending, and changing a profile to adult was saved. Screenshots checked the leaderboard, overview (playroom) and points display with and without show_adults, the editor toggle, the panel tag and the dialog switch. All test data was removed afterwards.

…1061)

A profile can now be marked as an adult. A grown-up's own completions are
approved straight away (normal chores, bonus sub-tasks and timed sessions),
so two parents no longer have to approve each other's work. Children's
completions are unchanged.

Family-wide cards leave adult profiles out unless the card sets
show_adults: true, and then list them after the kids. The option appears in
the card editor once the family has an adult. A card pinned to one child_id
is unaffected, so an adult can still have a card of their own. The kiosk and
chore board treat an explicitly picked adult as opted in.

Closes #1061
@github-actions github-actions Bot added backend Python integration code cards Lovelace cards / frontend (www/*.js) translations i18n / locale strings tests Test suite labels Oct 14, 2026
@tempus2016
tempus2016 merged commit 779f528 into main Oct 14, 2026
16 checks passed
@tempus2016
tempus2016 deleted the feat/1061-parents-as-actual-parents branch October 14, 2026 19:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend Python integration code cards Lovelace cards / frontend (www/*.js) tests Test suite translations i18n / locale strings

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: Parents as actual parents

1 participant