The board rendered nothing until a parent hand-wrote child_order with
each child's slug — the DAKOS bring-up gap. The household rollup now
publishes an ordered child_roster attribute (snapshot sort_order, each
entry carrying the slug the way HA derives entity ids, so the card can
build sensor.nestquest_<slug>_...), and the card discovers its plates
from it when the config carries no child_order; a supplied child_order
still wins. The rollups' existing per-child children counts attribute
is unchanged. Render tests drive the committed bundle under jsdom, so
the discovery contract is asserted on the artifact HACS ships.
Household quests due/completed today sum the active children's
snapshots; cycle day reports the first scheduled child's cycle
position (0 when nobody is scheduled), anchor-date arithmetic only.
all_done is on exactly when the child owed quests today and owes none
remaining (a zero-quest day stays off so celebrations never fire on
an empty day); present_today mirrors the presence engine's answer
for the HA-local date.
State carries the earliest open quest's title truncated under the
255-character limit with the full shape in attributes; the documented
"none" sentinel is reported when the day is clear.
A False platform unload now returns False and retains the runtime
record so live entities keep their database. Sensor names and device
labels re-derive from the current snapshot so child renames
propagate; unique_ids stay child-id based.
Four sensors per active child read the coordinator snapshot: quests
due today (carrying the panel payload that omits missed instances plus
the admin payload that includes them, D-009), completed, remaining, and
completion percentage (100 on a zero-quest day). Platform forwarding
wired through the harness's entity registry stand-ins.