Modules
Mischief
Marks beside your XP for the lapses โ a blank page, going quiet, ghosted training, doing something other than you were told. They never touch the clock. They change how your Handler treats you: what it asks, how often it wants to hear from you, and whether it still says good boy.
On this page
๐ Mischief is the other tally. XP counts what you did; Mischief counts what you didn't โ or what you did instead. It is not a punishment. A mark never adds a minute, never takes XP and never lets anybody do more to you than you granted. What it changes is your Handler: the question it asks tomorrow, how often it wants to check in, whether you're still a good boy today, and what your AI Handler is told about your week.
Think of it as the Handler's memory. A pup who skipped a reflection gets asked about it. A pup who was told to ride the bike and did yoga instead gets asked whose idea that was.
Where marks come from
Every mark is about something the log already records. The tick turns each one into a Mischief row in your log, labelled with what it was for:
| Mark | For | Weight |
|---|---|---|
| ๐ Blank page | a missed daily reflection (the Handler's audit) | 2 |
| ๐ Late page | a blank page you caught up afterwards โ it becomes this, same day, same age-out | 1 |
| ๐ Went quiet | a check-in left overdue while locked โ once per stretch of silence | 1 |
| ๐ป Ghosted | training โ or a challenge โ left to run out without a word | 2 |
| ๐ Owned up | training you gave up on (โ fail), or a challenge you said you couldn't answer, honestly | 1 |
| ๐ค Slacking | a habit the coach had a word about | 1 |
| ๐ Zoomies | an order ran out while you logged a different habit | warm 1 ยท firm 2 ยท strict 3 |
| ๐ซ Over the line | a bad habit past the limit you set โ a day, or a week | 1 |
| ๐ซ๏ธ Dark day | a day left out of the ledger past its deadline | 2 |
| ๐ Long soak | a hygiene window run more than 5 minutes past its time before you said you were locked back up โ or never said | warm 1 ยท firm 1 ยท strict 2 |
Three of those are on purpose:
- Owning up costs less than ghosting. Tapping โ fail and saying so is honest โ so is ๐ I can't right now on a challenge. Letting it expire is not. The same rule for a missed reflection: catching it up late (๐ 1) costs less than leaving it blank (๐ 2).
- Zoomies is weighed by your Handler's temperament โ How strict they are on
Settings โ ๐พ Handler. You did something, just not what you were told. A warm Handler half-forgives that. A strict one would rather you had done nothing than done what you liked. - Long soak is weighed lighter. Running late out of the bath is not defiance, so only a strict Handler weighs it 2. A window you never say you relocked is marked the same as one relocked late: going quiet never costs less than owning it.
What is never a mark
- The emergency key and the safeword. Never, in any form. Stopping is never mischief.
- A hygiene window itself, scheduled or emergency, however often. Only the minutes past it count, and only past a 5-minute grace. Not one the emergency key ended (even after the mark was written), not one the lock ended inside, and one the safeword or a pause touched is held back. Say you were back in earlier than you got round to saying it โ backdated in the app โ and a Long soak that no longer holds stops counting.
- While you are paused, and on a recovery day: the mark is written โ once, so it is never judged again โ but held back, at weight 0, and the log says why. The game does not scold somebody for being unwell. Except ๐ซ and ๐ซ๏ธ: they are about yesterday, and the likeliest cause of a short night after a day over the line is the day over the line โ the mercy would forgive the thing that made you unwell (Leave it). A pause still holds them; a bad habit's first 14 days (its baseline) hold them too.
- Training somebody withdrew (they left the pack, or released you).
- Sleeping. A check-in is not judged between the reflection's due hour and your wake hour
(
Settings โ ๐ Mischief, 8 by default): a check-in that falls due overnight counts as overdue one interval after you wake. - Anything from before Mischief was watching. The first tick starts the clock; switching it off and on again judges nothing that happened while it was off.
- More than 4 a day. A bad day stops at the cap; the rest are written as over the day's cap.
Undo works on marks the way it works on penalties: undo the missed reflection and its mark stops counting with it; undo the mark itself (within the undo window) if it was wrong. The struck rows stay, like every struck row.
Standing
A mark counts for seven days, then it ages out. What is live adds up to your standing, shown on the Handler's card and page:
| Standing | Marks | What changes |
|---|---|---|
| ๐พ Good boy | 0 | nothing โ you're clean |
| ๐ Watched | 1โ2 | your reflection asks about the lapse |
| ๐ฆฎ Short leash | 3โ5 | check-ins come twice as often (4 h becomes 2 h, never under an hour) |
| ๐ In the doghouse | 6+ | "good boy" is withheld; the Handler's lines go cool until you make it right |
The short leash is literal: the Handler wants to hear from you more. Turn it off with
mischief.leash if you want the words without the cadence.
The questions
This is the part that makes it more than a counter. The Handler's library has a set of lapse
questions, tagged lapse:<mark> โ seeded with a couple for each mark, and yours to edit like
any other line (Settings โ ๐พ Handler, the tags column). A lapse question is never drawn on
an ordinary day; it is asked only about a lapse:
- Today's reflection asks about your newest live mark from before today began โ so a mark that lands at three in the afternoon never changes the question under you. "You were told one thing and did another. Walk me through the moment you chose."
- The check-in asks about the newest one, too โ depending on temperament.
| Temperament | Reflection asks | Check-in asks |
|---|---|---|
| warm | from a short leash | never |
| firm | from watched | from a short leash |
| strict | from watched | at every check-in, until you answer |
A prompt somebody wrote for that day (Consent) still goes first; a lapse question outranks a running event's lines and the library.
Making it right
- Answer the question. A reflection written to a lapse question is a confession: it clears that mark (the newest live one of the same kind, else the newest live one).
- Confess. In the doghouse โ or any time a mark is live โ the Mischief card on the Handler page has a Confess form: the same length as a reflection, a lapse question, +5 XP.
- Two confessions a day clear marks. Write more if you need to; past two, they clear nothing, and the page says so.
- Catch up the blank pages. One entry on the Handler page's ๐ Catch up card answers every missed reflection of the week: each ๐ Blank page (2) becomes a ๐ Late page (1). It is not a confession โ it halves the marks, it does not clear them, and a Late page can still be confessed away. See Catching up.
- Or wait. Everything ages out in a week.
Your AI Handler
The AI's facts carry standing โ the level, the points, and each live mark by kind and how many
days ago. Never a habit's name, never a held-back mark (that one would say today was a recovery
day), never why one is missing. Its instructions tell it what each standing means: praise when
you're clean, ask when you're watched, firmer on a short leash, cool and brief in the doghouse โ
and never cruel, never shaming. With Write a prompt granted, tomorrow's question it writes now
aims at what you actually did. With Assign training granted it can give an order โ training
that names one of your habits โ which is how a strict AI Handler tells you it's bike day.
Mischief is yours: it is never on a pack card and never in the bot's room. A share card says
your standing word only if you put it there โ the standing token (๐พ Good boy ยท ๐ Watched ยท
๐ฆฎ Short leash ยท ๐ In the doghouse) is opt-in and in no default list; the marks themselves, their
kinds and counts are never on a card.
Settings
| Key | Default | What |
|---|---|---|
mischief.enabled |
1 | marks on (1) or off (0) |
mischief.leash |
1 | the short leash halves the check-in interval (1) or not (0) |
mischief.wake_hour |
8 | a check-in is not judged between the reflection's due hour and this |
handler.strictness |
firm | warm ยท firm ยท strict โ Zoomies' weight, who asks what, and your AI Handler's voice |
This page also ships inside the app, at /guide โ so your own instance always serves the guide for the version you are running, with the internet unplugged. Get Latch ยท Something wrong here? Tell me.