Skip to content

Send the pet to Grandma's when nobody is there for a day and a half - #87

Open
mLampir wants to merge 2 commits into
mainfrom
claude/project-thread-j4nysy
Open

mLampir wants to merge 2 commits into
mainfrom
claude/project-thread-j4nysy

Conversation

@mLampir

@mLampir mLampir commented Oct 19, 2026 •

Copy link
Copy Markdown
Owner

Requested by Michael · project thread

Before: Grandma only took the pet in when the Pi had been off for more than a day. With the Pi running, a week away left the pet hungry and sick for days, and a child grew up by itself after a week of bad care, without anyone watching.

After: when nobody has done anything with the pet for a day and a half, it hops off to Grandma's as soon as it is awake and at home. The panel shows its home without it. At Grandma's it is frozen like a resting ancestor: no needs, no growing, no aging, and the pet at the back goes along. The app says "{name} ist bei Oma." and offers Bei Oma abholen; the pet hops back in with every stat at least 50, and the story ends with Grandma's postcard.

The threshold is 36 h, not 24 h: with 24 h the balance run's once-a-day owner had their pet fetched from Grandma's almost daily and it stopped getting sick. At 36 h nothing changes for any balance profile except the rare longer gap of the neglectful owner.

How: model.tick sends the pet off (leavesForGrandma / goToGrandma) and does nothing while it is away. advance shifts stage_since, born_at and the friend's visit times (stayAtGrandmas), and Pet.advance does the same for the pet at the back. The new action grandma calls comeBack and leaves seen_at alone, so the welcome story covers the whole absence. An app from before this change fetches the pet with any action. A Pi that was off now catches up as if it had been on (up to three days, MAX_CATCH_UP) instead of jumping to Grandma's after one day, so the phone and the Pi follow the same rule. API_VERSION stays at 4, since 4 isn't released yet; the contract is updated.

Tests: npm test (291 pass), npm run check, npm run balance compared against main, preview regenerated with --spoiler-free, and the app checked in the browser (at Grandma's, then fetched).

🤖 Generated with Claude Code

https://claude.ai/code/session_01DS2Xj5NPGMJ9AVGvBXCaDd

Before, Grandma only took the pet in when the Pi had been off for more than
a day. With the Pi running, a week away left the pet sick for days, and a
child grew up by itself on a week of bad care.

Now, when nobody has done anything with it for GRANDMA_AFTER (36 h), the pet
hops off to Grandma's as soon as it is awake and at home. There it is frozen
like a resting ancestor: no needs, no growing, no aging, and the pet at the
back goes along. The app offers "Fetch from Grandma's" (action "grandma");
it comes home with every stat at least 50 and Grandma's postcard ends the
story. An app that doesn't know the action yet fetches it with anything it
does. A Pi that was off catches up as if it had been on (up to three days),
instead of sending the pet to Grandma's after one.

API_VERSION 5: the action "grandma" and the field "grandma".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DS2Xj5NPGMJ9AVGvBXCaDd
@mLampir mLampir self-assigned this Oct 19, 2026
4 is not released yet, so the action and the field join it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DS2Xj5NPGMJ9AVGvBXCaDd
@mLampir
mLampir marked this pull request as ready for review October 19, 2026 19:23

This branch has not been deployed

No deployments
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.

2 participants