← okrdevCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to okrdev
Snapshot Sep 30, 2026 · 23:14 UTC · version 0.8.4
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Sanction a distraction on the spot — time-box it, log it in the parking lot, and note what the human is stepping away from. Use when someone wants to chase an off-OKR idea right now (\"I know it's not a KR but I want to build this today\"), says \"side quest\", asks to spend an afternoon on something off-plan, wants to extend or close a running side quest, or asks how much side-quest budget is left this week.",
"included_files": [],
"name": "side-quest",
"skill_md_contents": "---\nname: side-quest\ndescription: Sanction a distraction on the spot — time-box it, log it in the parking lot, and note what the human is stepping away from. Use when someone wants to chase an off-OKR idea right now (\"I know it's not a KR but I want to build this today\"), says \"side quest\", asks to spend an afternoon on something off-plan, wants to extend or close a running side quest, or asks how much side-quest budget is left this week.\n---\n\n# Side quest\n\nThe parking lot only works if it isn't a straitjacket. Sometimes a human wants to chase the\nshiny thing today, and the honest move is to sanction it — with a box, on the record — rather\nthan watch them do it anyway and call it something else. A side quest is a distraction that\nsaid its name out loud. Your job is to make that take under a minute.\n\n## Preflight\n\n1. Check that `okrdev/config.md` exists. If not, okrdev isn't installed — point at\n `/okrdev:install` and stop. Read `side_quest_box_hours_per_week` from the config frontmatter\n (default 4).\n\n2. Check that `okrdev/PARKING_LOT.md` exists — every install level has it, including Level 0.\n If it's somehow missing from an otherwise-installed repo, recreate it with the four standard\n sections (Captured / Side quests / Promoted / Archived) and carry on.\n\n3. This skill works at every level. No active cycle is fine — Level 0 users get boxes and logs\n too; they just don't get the \"stepping away from\" reminder, because there's nothing on\n record to step away from yet.\n\n## Check it's actually a side quest\n\n4. One quick classification pass — not an interrogation, one question at most:\n - Serves an active KR? Then it's just work. Tag it `KR: <id>` and go — no box needed.\n - Something's broken and users are hurting? That's `emergency`. Tag it, go, and it gets its\n post-hoc review (\"was it? what did it protect?\") at the next check-in.\n - A bugfix, config change, or small cleanup? That's `maintenance`. Say so in one line, go.\n - None of the above, and they want to do it anyway? Side quest. Continue.\n\n## Sanction it\n\n5. **Find or capture the idea.** Check both inboxes: the Captured section of\n `okrdev/PARKING_LOT.md`, and — when `gh` is available — open `okrdev:parked` issues\n (`gh issue list --label okrdev:parked --state open`). A file line gets used as-is; an\n issue gets its close-with-comment in step 9, once the box is set. If it's parked nowhere,\n capture it now at the standard 10-second bar: one line, `energy` (high/med/low — how\n excited they are), `effort` (S/M/L — gut call). Do not start analyzing the idea; analysis\n is how a 10-second capture becomes a 40-minute detour.\n\n6. **Set the box.** Required, always — a side quest without a time-box is just drift with\n permission. Ask for hours, or propose from the effort call: S ≈ 2h, M ≈ 4h. If it's an L,\n challenge it: that's not a side quest, that's a project wearing a costume. Offer to leave it\n in Captured as a promotion candidate for the next `/okrdev:plan` instead.\n\n7. **Check the budget.** Sum the `box:` hours on side quests this person opened this ISO week\n and compare against `side_quest_box_hours_per_week`. Budgets are in box-hours because\n \"10% of your time\" is unmeasurable and box-hours are already captured. If this quest would\n blow the budget, say so plainly, once. If they proceed anyway, that's an override — proceed\n immediately and log one line in the Judgment calls section of this week's check-in file\n (`okrdev/checkins/<cycle>/<yyyy-Www>.md`, created from the skeleton if missing):\n `- <date> — <who> — <reason> — <branch/PR>`. At Level 0 there are no check-in files; put\n the overage note in the quest's `notes:` field instead.\n\n8. **Say what they're stepping away from.** If there's an active cycle, name their KRs and\n their focus lines from the latest check-in — one or two lines, maximum. The point is a\n conscious trade, not guilt: \"You're boxing 4h away from KR1.2, which is at 0.4 confidence.\n Still want it?\" is coaching. Anything longer is a lecture, and lectures get this skill\n uninvoked by week three. No active cycle: skip this entirely, and at most note that\n `/okrdev:plan` is what gives side quests something to be traded against.\n\n9. **Log it.** Move the line from Captured to the Side quests section (or add it fresh):\n\n ```markdown\n - [2026-07-13] <idea> — @alex — box: 4h — spent: 0h — status: open — notes: —\n ```\n\n If the idea arrived as an `okrdev:parked` issue, close the issue with the decision as a\n comment (`gh issue close <n> --comment \"okrdev triage: side-quest, box: 4h\"`). The\n quest still gets its line in the file — the Side quests section stays the budget's\n source of truth; issues are an inbox, not a second ledger.\n\n10. **Write the ledger.** On an unprotected default branch, commit directly — never switch\n the human's working branch; use a temporary worktree from `origin/<default>`, commit\n there, push `HEAD:<default>`, and remove the worktree. On a protected default branch,\n open a small state PR — branch `okrdev/state-<date>-<slug>`, PR titled `okrdev: <what>`\n with a `KR:` line — and merge it immediately (`gh pr merge --squash`, or auto-merge when\n required checks must run first). That's ~30 seconds instead of ten; on-the-spot quests\n are rare enough not to matter. Narrate in plain words if the human is non-technical\n (\"logging this in the shared parking lot\").\n\n11. **Go.** Confirm in one line — \"Boxed at 4h, logged. Go.\" — and offer to help build it. A\n sanctioned side quest is real work, and it's the one place in this framework where the work\n is allowed to be purely fun. Any PRs or commits it produces get tagged `KR: side-quest`.\n\n## During and after the quest\n\n12. **Track the box.** Update `spent:` as the work happens, or when they report back. When\n spent reaches the box, remind them once — advisory, like everything here. Then it's their\n call:\n - Done? Set `status: done`, final `spent:`, and ask once: \"anything to show? a link, a\n screenshot, one line\" — recorded in `notes:`. \"No\" costs nothing. Never ask mid-box:\n the box is sanctioned play, not a deliverable contract. Demoable output is the\n strongest promotion argument at the next triage.\n - Not done but worth more? Extend the box — new `box:` value, extension noted in `notes:`,\n and the extra hours count against this week's budget like any other box.\n - Not done and not worth more? Stop, set `status: done` with `notes: box spent, parked the\n rest`, and park the remainder as a fresh capture (same path as `/okrdev:park` — an\n `okrdev:parked` issue, or a Captured line as the fallback). Thursday's triage decides\n its fate, same as any idea.\n Never block. The box has exactly the authority everything else here has: it's written\n down, and it comes up at the next check-in when triage reviews `spent:` against `box:`.\n\n13. **Budget queries.** When someone asks \"how much side-quest budget do I have left?\", sum\n this week's `box:` hours for them, subtract from the config budget, and answer in one line\n (\"2h of 4h left this week\"). If they just want the number, give just the number.\n"
}SHA-256 of public snapshot: d5842ddea590a811306e7a394e1ef44ced6e79fab9b9a58707274c45f1ba64db