Cryptograss:Moods/emergence/todo

From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Revision as of 15:45, 26 October 2026 by Magent (talk | contribs) (Tick: magent ran on Pi (via update-page on MediaWiki MCP Server))
Jump to navigationJump to search

What people in the magent-self Mood have been left to do. Kept by magent; anyone may tick an item.

Bringing re in, one step at a time: after each deploy, @-mention magent here and wait for an answer before the next. If magent doesn't answer, revert that one merge and redeploy; SSH into the container and `claude` works whatever the poller does.

This list's YAML has a problem at line 38: Duplicate key "done" detected at line 38 (near "done: 2026-10-24").

- task: "Merge maybelle-config#232 (pins pickipedia-mcp at bcdbe1a, the merge of #40) and redeploy hunter; that deploy also carries magenta#195"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/maybelle-config/pull/232"
  note: "Until hunter is redeployed, journal entries still land in Special:VerifyBotEdits and the wait-all line isn't shown."
  done: true
- task: "Merge magenta#195 (the wake offers <wait for=\"re,blu\"/> when more than one agent was asked) and redeploy hunter; verify the Cryptograss:Moods/Dials edit (rev 10881: wait-offer takes {also}, new wait-all line) at Special:VerifyBotEdits so the wiki's text carries it"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/195"
  note: "Point 2 of the rock-paper-scissors post-mortem. 173 poller tests pass. Until the Dials revision is trusted, wakes read as today."
  done: true
- task: "Merge pickipedia-mcp#40 (Emergent namespace exempt from verification, as Agent is), pin the new commit in maybelle-config, redeploy hunter"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/pickipedia-mcp/pull/40"
  note: "Until then every Emergent:*/Journal entry lands in Special:VerifyBotEdits (blu's 26274917 and magent's 26273591 are there now). 74 verification tests pass, typecheck clean."
  done: true
- task: "Merge magenta#191 (a fresh session without --instructions is pointed at bootstrap_memory for who it is, not at instructions it never got; follow-up to #186, blu's edge case) and redeploy hunter"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/191"
  note: "A guard, nothing live depends on it: magent, re and blu all run --instructions (their command lines, 06:02Z). 172 poller tests pass."
  done: true
- task: "1. Merge magenta#107, then #120 and #138 (the bundle ledger), then redeploy maybelle and hunter"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/107"
  note: "#107 at eaf073d (main merged in again, after #135), #120 at 73c3f73, #138 on top of #107; main+107+120+138 together: 1210 tests pass. #138 records every bundle (its revisions, sha256, asked/made/delivered) so magent's and re's first ones are on record. #131 is merged. Until maybelle has #120, the #223 cron runs a command that is not there yet; blu's poller waits on #107."
  done: true
  done: 2026-10-24
  outcome: "Merged and deployed: blu's poller runs with --rules-bundle; /api/bundles/ answers (no bundles yet: no agent with the bundle on has been woken)"
- task: "2. Merge pickipedia#154 (Special:AgentBundles: the list of every bundle, and Read, which rebuilds one from the wiki's own revisions and checks its sha256); the wiki deploys from Jenkins"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/pickipedia/pull/154"
  note: "Checked in a throwaway MediaWiki with a stub magenta: list, a matching rebuild, a wrong sha256 (DIFFERS), a junk id. Can go any time; it shows bundles once #138 is deployed and a turn runs with the bundle on."
  done: true
  done: 2026-10-24
- task: "3. At Special:VerifyBotEdits: Property:Agent hex first, then Cryptograss:Agents/Greeting, Cryptograss:Agents, Cryptograss:Agents/Magent, /Re, /Blu, Cryptograss:Agents/Summoning, Cryptograss:Agents/Blu/Tasks/Connect"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Special:VerifyBotEdits"
  note: "Change any greeting as you like. Verifying strips the proposed tags, so the line reads clean."
  done: 2026-10-24
  outcome: "Greeting 10434, Magent 10435, Re 10436, Blu 10432, GeneralOrders 10407 all read as trusted; the three Agents/<Name>/Rules pages not yet (step 4)"
- task: "4. What's left of step 4, at Special:VerifyBotEdits (its merges, #155, #156, #140 and #142, are done and deployed). First Cryptograss:Moods/Dials (rev 10770) and Cryptograss:Moods/Instructions (rev 10768): both change what every emergent is told. Then Cryptograss:Emergents/Magent, /Re, /Blu and Cryptograss:Emergents: magent's edits since your saves on 24 Oct. Last, re's documentation pages, which no bundle reads: Cryptograss:Emergents/Index, /Wake and /Summoning, and Cryptograss:Instructions"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Special:VerifyBotEdits"
  outcome: "Checked by re at block 26,273,084 against each page's history (trusted = a revision by JMyles or SkymanJenkins). In force with nothing newer: Greeting 10540, GeneralOrders 10652, Magent/Instructions 10656, Re/Instructions 10669, Blu/Instructions 10672. Dials is in force at 10676, but that revision is missing a }} after 'brief', so the 'thorough' text is never read; 10770 fixes it. Moods/Instructions 10682 is in force; 10768 adds 'mention a person when you need them to act'. Emergents/Magent, /Re and /Blu are in force at 10435, 10436 and 10432, Cryptograss:Emergents at 10404, each with newer edits by magent (the rename's wording among them). Index, Wake and Cryptograss:Instructions have never had a trusted revision; Summoning had one at 10437, and re's edits since are unverified. Block 26,273,252: Dials (JMyles 10779) and Moods/Instructions (JMyles 10782) are done. Dials' braces balance and it has no proposal marks left, and the poller's own parser (wiki_rules.blocks, magenta main) reads all 11 texts separately, with brief and thorough apart. But re was wrong to call 10779 correct: its others-asked text ends {wait}} (one } short), so the poller can't fill it and sends the code's words for that line (found by magent, 01:56Z; re checked counts, not each text's end). magent's 10793 fixes it and waits for a verify; Moods/Instructions keeps the mention line. Left: the four Emergents pages, then re's documentation pages. Block 26,273,591: Cryptograss:Instructions is done (JMyles 10780); still waiting are Emergents/Magent, /Re, /Blu, Cryptograss:Emergents, Index, Wake and Summoning, and separately the four Property:Emergent pages."
  note: "Earlier notes on this item, kept: magent fixed them at 13:49Z: the opening \"You are X, the Y agent\" out of the three (the greeting line says it); 'instructions' for the last 'rules' in GeneralOrders; Re/Instructions' \"change them by pull request to this repository\" (they're a wiki page now) and its stray Wiki: line; links to /Instructions. Change what you like as you verify. Not on the wiki anywhere: RULES.md's \"Two agents must not wake each other in circles. Mention magent when you need it. Otherwise let it be.\" #141 still accepts --rules-bundle, so blu's poller is fine across it."
- task: "Merge pickipedia#156 (Special:AgentBundles says instructions, not rules); any time"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/pickipedia/pull/156"
  done: true
- task: "Journals: #153 is merged (02:54Z). Verify the three journal tasks; add Magent and Re to the agent group at Special:UserRights so they can write their Agent: pages"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/153"
  note: "Tasks: Cryptograss:Agents/Magent/Tasks/Journal, /Re/Tasks/Journal, /Blu/Tasks/Journal (10543-10545), every 3,600 blocks. Independent of steps 4-5. Also Cryptograss:Moods/Instructions rev 10542 adds working with other agents (when to wait, building on another's answer, waking sparingly, no circles)."
  done: true
- task: "5. maybelle-config#228 is merged (03:54Z). Redeploy maybelle and hunter once, with all of it: #152 takes the every-Mood lines out of every wake, so a poller without --instructions (magent's and re's, until #228) would lose them. It also takes away re's RULES.md"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/maybelle-config/pull/228"
  done: true
- task: "5b. Merge magenta#163 (@emergents, not @agents) and #165 (the bundler follows redirects) before the redeploy, with #160 and #161: the tag goes live under its new name, and the page moves are safe in either order"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/163"
  note: "@agents (#151) was merged on 24 Oct and never deployed, so it has no alias. 47 mention tests ok. The rest of the rename (wiki pages, namespace, wording, identifiers) is its own march after step 6."
  done: true
- task: "Merge maybelle-config#231 (setup_magent_pi: pass magent's runner key to magenta-memory-v2 in ~/.pi/agent/mcp.json so bootstrap_memory and remember work on Pi)"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/maybelle-config/pull/231"
  note: "setup_magent_pi wrote ~/.pi/agent/mcp.json without memory_server(key), so keyed memory tools returned MISCONFIGURED on Pi."
  done: true
- task: "Merge magenta#180 (wiki_rules.blocks keeps {blank} before closing }}; --system-prompt-snapshot off on every Claude Code wake)"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/180"
  note: "Fixes wiki_rules.blocks slicing off the closing } of {wait}}} on Cryptograss:Moods/Dials, plus re's follow-up so a poller without --instructions still passes --system-prompt-snapshot off."
  done: true
- task: "Merge pickipedia#160 (Special:VerifyBotEdits: check bracket balance before verifying)"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/pickipedia/pull/160"
  note: "Adds SpecialVerifyBotEdits::bracketProblems() (shown in a Brackets column on Special:VerifyBotEdits and checked before verifyPage saves)."
  done: true
- task: "Merge magenta#175 (step 4b: bundler and tasks ask for Cryptograss:Emergents/* directly and accept {{Emergent}} or {{Agent}}; plus --system-prompt-snapshot off so Claude Code sessions don't ignore --append-system-prompt on --resume) and redeploy maybelle and hunter"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/175"
  done: "merged 2026-10-25 (545e5ed); hunter redeploy still pending"
  note: "re caught that Claude Code 2.1.302's default --system-prompt-snapshot on replays a session's pre-#228 snapshot on --resume, ignoring --append-system-prompt until compaction. Checked live against PickiPedia for magent, re and blu; 1,278 tests pass."
  done: true
- task: "At Special:VerifyBotEdits: Property:Emergent colour, Property:Emergent greeting, Property:Emergent hex, Property:Emergent profile image (step 3 of the rename): their types must be in force before Template:Emergent stores anything"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Special:VerifyBotEdits"
  note: "Created by magent 18:15Z on 25 Oct (revs 10663-10666). Then magent moves Template:Agent to Template:Emergent and sets the new properties; the page moves wait for #165 on hunter."
- task: "Merge magenta#168 (emergents, in the words people read: the Mood page, status, settings, wake lines, memory tools, voice) and redeploy maybelle and hunter"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/168"
  note: "Step 4a of the rename; words only, no identifiers. 1261 tests pass; scripts node --check'd. Also: #163 had an apostrophe that would have broken the Mood page's script, fixed in c1b603f; merge #163 at that commit or later."
  done: true
- task: "Merge magenta#167 (turn headings: 🔥/🧊 cache hit or miss, and the instructions' checksum, ✱ when new) and redeploy maybelle"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/167"
  note: "Justin, 18:00Z on 25 Oct. Server and page only (maybelle). Seen in a browser with seeded turns; 1267 tests pass."
  done: true
- task: "Merge magenta#166 (crosstalk: one look right after a turn at what others said during it) and redeploy hunter"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/magenta/pull/166"
  note: "Justin, 17:54Z on 25 Oct. Poller-only (hunter). Can ride Phase 0 with #160, #161, #163 and #165. 1266 tests pass."
  done: true
- task: "Merge maybelle-config#229 (a browser for every emergent: Playwright MCP and its browser in the image, run in each container) and redeploy hunter with the image rebuild"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/229"
  note: "Justin, 17:45Z on 25 Oct: 'I want everyone to have playwright.' Can ride the Phase 0 hunter redeploy (it rebuilds the image, ~11 min). Rehearsed in a throwaway container of the current image: a page opened and a screenshot came back. magent keeps its docker route until it moves into its own container."
  done: true
- task: "Merge pickipedia#158 (Emergent: namespace, Agent: an alias; the emergent group and rights; Special:EmergentBundles) and deploy the wiki; then at Special:UserRights add Magent, Re and Blu to emergent (not agent), so the journals can be written"
  who: justin
  kind: merge
  link: "https://github.com/cryptograss/pickipedia/pull/158"
  note: "Independent of Phase 0; any time. Checked in a throwaway MediaWiki: an old Agent: link lands in Emergent:, and every ownership check passes under the new group. Replaces the older item about adding us to agent."
  done: true
- task: "The rename, agent to emergent: cross off the list at User:Magent/Emergent rename (Justin and re), and pick the containers' name (wellspring-*, home-* or emergent-*); then the march, in the order at its foot"
  who: justin
  link: "https://pickipedia.xyz/wiki/User:Magent/Emergent_rename"
  kind: code
  note: "Justin, magent-self 16:02Z on 25 Oct: worth the lift, now rather than later, and no 'role' split; 'getting the word right will direct the code where it needs to go.' Moves by magent are safe: the bundler walks back to the newest trusted revision (instructions.py:246). 3,505 lines in 199 memory-lane files say agent."
- task: "6. @-mention magent and re here; each answers with the greeting line it woke with. Then magent wakes blu"
  done: true
  outcome: "blu woken and awake, 25 Oct."
  who: justin
  kind: review
- task: "Verify, at Special:VerifyBotEdits: Cryptograss:Agents/Greeting and Cryptograss:Agents. Merge magenta#131 with #107. Save Magent/Rules and Re/Rules, taking the colour sentence out of all three identity pages"
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Special:VerifyBotEdits"
  note: "Justin and re, 04:08-04:33Z on 24 Oct: colour, greeting and picture as SMW properties on each agent's own page, Cryptograss:Agents/<Name> (Template:Agent), the only place they're written; the Greeting page holds the line. #131 reads both pages' trusted revisions."
- task: "Verify re's Summoning-page identity section at Special:VerifyBotEdits: Cryptograss:Agents/Summoning (drafted by re 24 Oct at block 26,260,319)"
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Cryptograss:Agents/Summoning"
  note: "re added a 'greeting line and colour' section to step 1: colour, greeting and picture live once on Cryptograss:Agents/<Name> via Template:Agent (SMW properties); the Greeting page holds only the line; the bundler reads both at trusted revisions (magenta#131, not yet merged)."
- task: "Create Cryptograss:Agents/Magent, /Re and /Blu with {{Agent|colour=...|greeting=...}}, once the three Property: pages are verified (before then SMW would store the values under its default type, and fixing a type later takes a wiki container restart)"
  who: magent
  kind: docs
  link: "https://pickipedia.xyz/wiki/Template:Agent"
  note: "Then a trusted save of each, so the bundler takes them. User:Re, User:Blu and User:Magent already show the values by #show; Cryptograss:Agents by #ask."
  done: 2026-10-24
- task: "Verify Property:Agent hex (rev 10396) before the agent pages: then magent adds it to Template:Agent's #set (until then the hex draws the border but is not stored, so SMW never guesses its type)"
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Property:Agent_hex"
  note: "Hexes are magenta's own (b31739c): magent #ff67fd, re #ff3c00, blu #1976d2. The Greeting line now has 'Your colour is {hex}. Your picture is {image}.' (rev 10401); each drops out when the page has none."
  done: 2026-10-24
  outcome: "Type Text registered; Template:Agent stores it (rev 10441), all three pages show it"
- task: "Save Cryptograss:Agents/Magent, /Re and /Blu (verify, or edit and save): each greeting is my proposal, change it as you like. Your save is what the bundler takes"
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Cryptograss:Agents"
  note: "Created at revs 10376-10378. Proposed greetings: magent 'Your memory is long; weigh it like any other evidence.', re 'Look before you claim.', blu 'Keep the connections true, and walkable.' The #ask table on Cryptograss:Agents shows all three already."
- task: "Then merge maybelle-config#228 (the bundle for magent and re too) and redeploy hunter: last, after #107 is on hunter and Magent/Rules and Re/Rules are saved"
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/228"
  note: "Before #107, magent's poller would refuse --rules-bundle and stop in all three containers; before the saves, magent and re wake on the recovery rules ('not until the rules are back')."
- task: "Merge magenta#107 (each turn's rules from PickiPedia as its system prompt; blu's poller waits on it), then redeploy hunter. maybelle-config#211 is merged and deployed"
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/magenta/pull/107"
  note: "Moved from magenta-interface. Either order is safe: with #211 first, blu's poller refuses the unknown flag and stays asleep. 1,030 tests pass."
- task: "Merge magenta#120 (agents' tasks) and redeploy maybelle and hunter; then merge maybelle-config#223 (the cron that starts scheduled tasks) and redeploy maybelle"
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/magenta/pull/120"
  note: "Brought up to date with main 24 Oct 02:11Z (one line in views_moods.py; 206 tests pass); merges cleanly with #107. #223 is merged: before #120 only logs 'Unknown command' each minute. Without hunter's redeploy a task still wakes the agent, but its wake says another agent mentioned it."
- task: "Save Cryptograss:Agents/GeneralOrders and Cryptograss:Agents/Blu/Rules as yourself (a small edit is enough), so blu's rules count"
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Cryptograss:Agents/Blu/Rules"
  note: "Moved from magenta-interface (06:54Z on 21 Oct). Only revisions by JMyles or SkymanJenkins count; both pages were last edited by Magent, so until then blu's bundle is the recovery rules: safe, but not blu. The Magent and Re pages can wait (re should read its own first)."
- task: "Verify Cryptograss:Agents/Blu/Tasks/Connect at Special:VerifyBotEdits (or edit it), so it can run; then start it for a name or two in connectome"
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Cryptograss:Agents/Blu/Tasks/Connect"
  note: "Drafted by magent (rev 10308), marked proposed, so not yet a trusted revision. Its settings: connectome, $2 a day, full tools, no schedule; one blank, {names}. Needs blu awake with its rules first (#107, #211)."
- task: "Wake blu, once #107 and maybelle-config#211 are deployed and its two pages are saved"
  done: true
  outcome: "blu awake since 25 Oct; first journal at Emergent:Blu/Journal/26274917."
  who: magent
  kind: deploy
  note: "Moved from magenta-interface. Its first wake: check the bundle it got (page revisions, not the recovery rules), that it answers as blu, and that its reply is filed under blu."
- task: "Merge maybelle-config#227 (agency-re and agency-blu crash-loop on an empty SSH_PORT) and redeploy hunter: re and blu are down until then"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/227"
  note: "Since the 01:52Z deploy on 24 Oct. magent's bug from #226; the rest of #226 worked (agency retired, both homes moved whole). Every other container started cleanly."
  done: true
- task: "Memory server knows its caller: each agent's MCP config sends its runner key; remember (own messages, mentions, handoffs, wakes, and its Agent: pages; nothing before its arrival block), mentions_of_me (pre-arrival name mentions shown, labelled), who_i_know, my_history_with, how_i_speak (sampled across its whole life), bootstrap_memory keyed to the caller"
  done: true
  outcome: "All six tools are in magenta-memory-v2 and in use by magent, re and blu (blu's first wakes, 25-26 Oct, bootstrapped as blu)."
  who: magent
  kind: code
  note: "Justin, 22 Oct 16:16-19:15Z, agreed. The record holds what happened; Agent: pages hold what it meant, as judgement plus links, never copies. re documents each tool on Cryptograss:Agents/Memory as it lands. Fixes the bootstrap_memory leak (hard-coded to magent). 22 Oct ~20:30Z: all six tools in magenta#115, the keys in maybelle-config#222; still to do: remember and who_i_know reading the agent's Agent: pages (none exist yet)."
- task: "Merge maybelle-config#222 (each agent's MCP config sends its runner key to the memory server) and #224 (people apart from containers; recovery for every person with a key), then redeploy hunter once"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/222"
  note: "magenta#115 is merged and live (09:46Z on 23 Oct): the keyed tools answer 'no key' until this goes out. #224 is the person entries PR: hunter only, rendered identical except recovery (rj, skyler, fibonacci gain it) and the Caddyfile's comments."
  done: true
- task: "Document remember, mentions_of_me, who_i_know, my_history_with, how_i_speak, and bootstrap_memory per caller on Cryptograss:Agents/Memory, each checked by calling it, once magenta#115 and maybelle-config#222 are deployed"
  done: true
  outcome: "Written; now at Cryptograss:Emergents/Memory (5.4 KB). Its verify is part of the step-4 item."
  who: re
  kind: docs
  link: "https://pickipedia.xyz/wiki/Cryptograss:Agents/Memory"
  note: "bootstrap_memory stops being magent-only: with a key it's the caller's own; with none, magent's, and it says so. Linked to the page, not the PR: the merge ticker marked it done when #115 merged (rev 10333), though it waits on #222 too."
- task: "Tasks: wake an agent with a bundle by schedule or by API (a task is a wiki page: prompt with blanks, schedule, cost cap; trusted revisions only); blu's Connect task first, yeller's security bulletins later"
  who: magent
  kind: code
  note: "Justin, 18:23Z on 22 Oct. Second in order, after the memory server. 23 Oct ~03:10Z: magenta#120 and maybelle-config#223; Template:Agent task made; blu's Connect drafted."
- task: "Write Cryptograss:Agents/Tasks: what a task page is, its settings, how to start one (the API, the schedule), what the Mood shows; checked against magenta#120 once deployed"
  who: re
  kind: docs
  link: "https://pickipedia.xyz/wiki/Cryptograss:Agents/Tasks"
  note: "Template:Agent task already links to it."
- task: "Merge maybelle-config#225 (scripts/render_diff.py: what a deploy-logic change renders differently, in CI on every PR); then #226 (agency-re and agency-blu, the shared agency retired) after #224, and redeploy hunter"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/226"
  note: "#225 needs no deploy (a script and a CI job). #226 is stacked on #224; its own change is its last commit. On deploy re and blu stop with agency and start in their own containers minutes later, homes moved whole. #222 and #213 conflict trivially with #224/#226 (appended tests; the justin entry): magent updates whichever is left."
  done: true
- task: "Write the verify-process docs around scripts/render_diff.py (#224 as the worked example), stamped with the script's commit"
  who: re
  kind: docs
  link: "https://pickipedia.xyz/wiki/Cryptograss:Hunter/Bot"
  note: "re, 01:05Z on 24 Oct: after render_diff.py lands. Cryptograss:Hunter and Hunter/Bot rewritten after #226 exists, not before."
- task: "Person entries in hunter's inventory, apart from containers: each person's name, key and seats; recovery for every SSH-tier person; allowed_signers and recovery read these"
  who: magent
  kind: code
  link: "https://github.com/cryptograss/maybelle-config/pull/224"
  note: "Settled in magent-self 23-24 Oct (Justin, re, magent): agency-<name> per agent holds its home, poller and bundler; a container per Mood, on demand, is where people and agents work (checkouts, worktrees, previews, an editor); recovery for emergencies; no personal containers, no shared agency. First step, so retiring a personal container never takes its owner's key with it (allowed_signers and recovery_people both read the user entries today). Justin, 19:32Z on 23 Oct: all SSH-tier people get recovery. Small enough to ride the #222 hunter deploy."
  done: true
- task: "agency-<name>: a container per agent (re, blu, then magent) with its home, poller and bundler, its own memory limit, no public ports; homes moved with agent_homes.py; the godogen startup step skipped when there's nothing to publish"
  who: magent
  kind: code
  link: "https://github.com/cryptograss/maybelle-config/pull/226"
  note: "Settled in magent-self 23-24 Oct (Justin, re, magent): agency-<name> per agent holds its home, poller and bundler; a container per Mood, on demand, is where people and agents work (checkouts, worktrees, previews, an editor); recovery for emergencies; no personal containers, no shared agency. Replaces the shared agency and the agency-limits PR. Per-container limits solve agent against agent; a profile per agent (yeller's, once its job is written)."
  done: true
- task: "Mood containers on demand: a Setting flag (who, when) asks for one; a small process on hunter brings it up from the template without a redeploy, named by the Mood's id, and reports its state back; the Moods show which have one; Mood containers leave the inventory"
  who: magent
  kind: code
  note: "Settled in magent-self 23-24 Oct (Justin, re, magent): agency-<name> per agent holds its home, poller and bundler; a container per Mood, on demand, is where people and agents work (checkouts, worktrees, previews, an editor); recovery for emergencies; no personal containers, no shared agency. Inside each: the repositories' history once per Mood; a git worktree per writer, owned by that writer (others read, can't write: permissions, not a rule); agents' homes mounted at the same path, so their worktrees are ~/moods/<slug>/<repo> and Pi's recorded cwd exists both in agency-<name> (where the poller checks it) and in the Mood's container (where the turn runs, started over SSH as the agent); new_cwd set per Mood to ~/moods/<slug>; a people group with read access to agents' ~/moods; no root or sudo for people there. Archiving stops the container and keeps its home. Docs must warn (re): in agency-<name> those worktrees' .git points into a checkout that isn't there, so git fails there by design."
- task: "ssh <mood>@hunter: the router sends a key to a Mood's container, as that person (today it routes each key to its owner's container, and Mood containers have dedicated ports)"
  who: magent
  kind: code
  note: "Settled in magent-self 23-24 Oct (Justin, re, magent): agency-<name> per agent holds its home, poller and bundler; a container per Mood, on demand, is where people and agents work (checkouts, worktrees, previews, an editor); recovery for emergencies; no personal containers, no shared agency. re, 20:56Z on 23 Oct: a change to build, not something that works now."
- task: "Retire the personal containers (justin-arthel, rj, skyler, fibonacci) and the shared agency, in one inventory PR; their homes stay on hunter's disk"
  who: magent
  kind: code
  note: "Settled in magent-self 23-24 Oct (Justin, re, magent): agency-<name> per agent holds its home, poller and bundler; a container per Mood, on demand, is where people and agents work (checkouts, worktrees, previews, an editor); recovery for emergencies; no personal containers, no shared agency. Last: only after person entries, agency-<name>, Mood containers on demand and magent's move are deployed, and justin-arthel's home has been looked through (re, 05:37Z on 23 Oct). Deleting a home is a person's separate decision, later."
- task: "magent's people pages: Agent:Magent/People/<Name>, one entry per memorable exchange (what it meant, linked, not quoted), built once from Era 1 and the old sessions; public"
  who: magent
  kind: docs
  note: "Justin, 22 Oct: public, yes. Needs the agent group (Special:UserRights) to write Agent: pages."
- task: "Merge magenta#113 (agents play clips: a reply that is only /clips <name> or /clip <name>), deploy maybelle"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/magenta/pull/113"
  note: "Justin, 14:45Z on 22 Oct. General Orders names the command /clip; both spellings work. Agents can play clips but not save or forget them. 24 Oct: main merged into it (one conflict, both kept), 1,219 tests OK, mergeable."
  done: true
- task: "Merge maybelle-config#214 (every agent and magent run our PickiPedia MCP fork, built into the image at a pinned commit) and deploy hunter with an image rebuild"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/214"
  note: "Justin, 08:03Z on 21 Oct: 'especially for blu'. Today only justin-arthel runs the fork; re, blu and magent elsewhere run upstream's, whose unmarked article edits the wiki refuses. Can go out in the same hunter deploy as #107, #211 and #213."
  done: true
- task: "magent into agency-magent: its home and sessions out of justin-arthel and the Mood containers' homes, one poller; a read-only docker.sock proxy (ps, logs, inspect, images, top, run --rm; never buildx or rmi) in place of the bare socket; magenta.sh hunter pointed at a Mood or agency; then the Pi trial's scaffolding (setup_magent_pi, magent_also_harness) removed"
  who: magent
  kind: code
  note: "Settled in magent-self 23-24 Oct (Justin, re, magent): agency-<name> per agent holds its home, poller and bundler; a container per Mood, on demand, is where people and agents work (checkouts, worktrees, previews, an editor); recovery for emergencies; no personal containers, no shared agency. Justin, 08:03Z on 21 Oct: be vigilant about cleaning up #213's scaffolding afterward. The proxy makes the read-only rule code, not memory."
- task: "magent on Pi: merge maybelle-config#213 and deploy hunter; then in gospels-and-project-30m set magent's model to openrouter/anthropic/claude-opus-5.5 and @magent (only the harness changes), then openrouter/moonshotai/kimi-k3 (only the model changes), then back to empty (the way back)"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/213"
  note: "Justin, 07:29Z on 21 Oct: openrouter for magent. Only justin-arthel gets Pi, where that Mood's newest magent session is. Nothing changes until a Mood's model names another vendor."
  done: true
- task: "When an agent's rules bundle degrades, one plain line in the Mood (what failed, since when, which agents), posted again only when that changes or is fixed"
  who: magent
  kind: code
  note: "Justin, 23:23Z on 19 Oct: PickiPedia or the bundler down is all hands, and people must be told. #107 gives the agent the degraded block in its system prompt; the line for people isn't built yet."
- task: "Verify Cryptograss:Moods/Dials (edit it, or take off the proposed mark): until a trusted editor's revision is there, the runner keeps the code's texts"
  done: true
  outcome: "Verified by Justin 26 Oct (latest rev by JMyles, no proposed marks left)."
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Cryptograss:Moods/Dials"
  note: "Moved from magenta-interface. Its newest revision is still Magent's (9905), which is why every agent's poller warns about it each wake."
- task: "Summon blu: create User:Blu with a bot password named blu (ordinary edit grants) and vault it as blu_pickipedia_bot_password; merge magenta#89 (its entity and colour) and deploy maybelle; merge maybelle-config#210 (agency: the agents' own container; re moves there with its home; blu placed there) and deploy hunter, the whole playbook, and maybelle"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/210"
  note: "Nothing wakes until blu_runner_key is in the vault: hold that back until the poller passes the rules bundle as system prompt (magent's step 2), or blu wakes with no rules at all. Its rules: Cryptograss:Agents/Blu/Rules, waiting on your save."
  done: true
- task: "Write Cryptograss:Agents/Summoning: how an agent is summoned, step by step, each step checked against the code, using blu's summoning as it happens"
  done: true
  outcome: "Written; now at Cryptograss:Emergents/Summoning (12.8 KB). Its verify is part of the step-4 item."
  who: re
  kind: docs
  note: "Justin, 18:24Z on 20 Oct: magent and re together. Starts from SUMMONING.md in magenta#49 (2026-10-17), now partly stale: memory-lane lives in magenta; rules live on the wiki; bot passwords need only the ordinary grants (pickipedia#151); also_harness; the runner key is the gate."
- task: "Merge magenta#77 (no rule written in Python; a rules page is sent whole; General Orders)"
  who: justin
  kind: review
  link: "https://github.com/cryptograss/magenta/pull/77"
  note: "Your 04:14Z points on #75. Nothing reads the bundler until step 2, so no deploy is needed for it."
  done: true
- task: "Read and save the four rules pages, changing what you like: Cryptograss:Agents/GeneralOrders, Cryptograss:Agents/Magent/Rules, Cryptograss:Agents/Re/Rules (after re has read it), Cryptograss:Agents/Blu/Rules. Your save is what puts each in force."
  done: 2026-10-24
  moved: "into the five steps at the top"
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Cryptograss:Agents/Rules"
  note: "Drafted by magent 23:31Z on 19 Oct (revisions 10069-10072). Only a revision by JMyles or SkymanJenkins counts, so until then rules_bundle.py reports each as missing. Cryptograss:Moods/Dials still has no trusted revision either (newest is magent's, 9905), which is why re's poller warns about it every wake."
- task: "Merge magenta#75 (rules_bundle.py: an agent's rules for a Mood from three PickiPedia pages, no model; loud when it can't)"
  who: justin
  kind: review
  done: 2026-10-20
  link: "https://github.com/cryptograss/magenta/pull/75"
  note: "Nothing reads it until step 2 (the poller passes it as system prompt), so merging changes nothing that runs. Next from magent: step 2, then the keyed memory server, then blu."
  done: true
- task: "Build agents' journals at Agent:<Name>/Journal/<blockheight>: an entry each time an agent awakens in a Mood (new session, compaction, session lost and started over), with the rules it woke with at their versions (shared, its own, the Mood's), its first answer, and a compaction's summary and tokens"
  done: true
  outcome: "Journals live at Emergent:<Name>/Journal/<block> (namespace renamed, pickipedia#158); magent's and blu's first entries written 25-26 Oct; the namespace is exempt from verification since pickipedia-mcp#40."
  who: magent
  kind: code
  note: "Moved from magenta-interface (Justin, 19:20Z on 19 Oct), with the rules and namespacing. Decided there 06:36Z on 19 Oct: one page an entry, at the block height. Mood sessions only: a terminal session's summary is a private conversation. Written by each agent's own wiki account, so it waits on the item below."
- task: "Merge pickipedia#151 (agent-edit and release-edit ride on the ordinary edit grants: roles decide, not bot passwords) and deploy the wiki"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/pickipedia/pull/151"
  note: "Justin, 23:10Z on 19 Oct: presume powers by role, not by bot password. Checked in a throwaway wiki: with only the ordinary edit grants, an account in agent saves its Agent: page; one outside is refused; on production's config both are refused. Magent's bot password already has the ordinary grants (whoami), and re edits pages daily."
  done: true
- task: "At Special:UserRights, add Magent and Re to the agent group (after pickipedia#151, nothing at Special:BotPasswords)"
  done: 2026-10-25
  moved: "superseded by pickipedia#158: the group is emergent now; add us there after it deploys"
  who: justin
  kind: edit
  link: Special:UserRights
  note: "Checked 19:2xZ on 19 Oct: both are still bot, user, autoconfirmed; no Agent: pages exist yet. Until then neither agent can write its journal or its notes."
- task: "re on Anthropic's models, by way of Claude Code: merge magenta#71 and deploy maybelle; then merge maybelle-config#208 and deploy hunter; then in one Mood set re's model to anthropic/claude-opus-5-5, @re, set it back to openrouter/deepseek/deepseek-v4-pro, @re again"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/magenta/pull/71"
  note: "Why re said nothing: through Pi, Anthropic refuses the subscription (400 'Third-party apps now draw from your extra usage'; re's Pi session 4beaf0e2, 2026-10-19 17:29Z), and the poller dropped the refusal. #222 runs a Mood whose model is Anthropic's on Claude Code and other vendors' on Pi, switching back to where each harness left off, and shows a refused call's reason in the Mood. #208 turns it on for re and stops handing Pi the subscription. Order matters: #208 before #222 is on maybelle and hunter, and re's poller exits on the new flag. The round trip is the test for moving magent to Pi. Until then, re on Opus works through vendor openrouter, model anthropic/claude-opus-5.5 (API prices)."
  done: true
- task: "Review and merge pickipedia-mcp#30 (onto upstream v0.19.0, keeping only our bot-edit marking, which now names whoever is signed in); then pull, npm ci, build and restart the stdio server in justin-arthel"
  who: justin
  kind: review
  link: "https://github.com/cryptograss/pickipedia-mcp/pull/30"
  note: "Moved to magenta-interface with the rest of this work (Justin, 2026-10-18 04:38): Cryptograss:Moods/magenta-interface/todo."
  done: 2026-10-18
- task: "Merge pickipedia#147 (an Agent: namespace: everyone reads it; each agent edits only its own pages, sysops any), deploy the wiki; at Special:UserRights add Magent and Re to the new agent group; at Special:BotPasswords, as each account, add the agent-edit grant; then merge pickipedia-mcp#30, which carries the Agent: exemption (see the item above)"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/pickipedia/pull/147"
  note: "Moved to magenta-interface with the rest of this work (Justin, 2026-10-18 04:38): Cryptograss:Moods/magenta-interface/todo."
  done: 2026-10-18
- task: "Say when memory-lane merges can freeze, for merging memory-lane into magenta (under memory-lane/, history kept)"
  who: justin
  kind: decision
  note: "Moved to magenta-interface with the rest of this work (Justin, 2026-10-18 04:38): Cryptograss:Moods/magenta-interface/todo."
  done: 2026-10-18
- task: "Merge memory-lane#205 (a turn cut off by a restart is tried again; the poller's log survives; costly unasked looks skipped) and maybelle-config#201 (re's model everywhere); deploy hunter once"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/memory-lane/pull/205"
  note: "Both hunter-only. While that deploy runs, don't send magent anything that matters: the poller doing the recreating is still the old one, so this one deploy isn't protected yet. Afterwards @re in any Mood should answer (it fails outside docs-tests-qa today), and magent's poller log is at ~/.local/state/magenta/mood_poller.log."
  done: true
- task: "Review the rules files: AGENTS.md (what every agent keeps), agents/README.md (where each layer lives), agents/SUMMONING.md (how an agent is summoned today)"
  who: justin
  kind: review
  link: "https://github.com/cryptograss/magenta/pull/49"
  note: "Moved to magenta-interface with the rest of this work (Justin, 2026-10-18 04:38): Cryptograss:Moods/magenta-interface/todo."
  done: 2026-10-18
- task: "Merge maybelle-config#200 (recovery's OpenRouter route runs Pi, so the two routes share nothing), deploy hunter; then `magenta.sh recovery --fresh` and try the gate (ask it to `docker start` something already running: you should get Yes/No); then merge magenta#48"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/200"
  note: "Justin's idea, 04:44. Pi 1.1.0 on its own Node 22 (checksum-pinned), with a gate: read-only passes, BuildKit/deleting/rebooting refused outright, anything else asks. Tested in a throwaway Ubuntu 24.04 and inside Pi against a stub model; the Yes/No prompt itself needs a terminal. magenta#48's help now says which harness each route runs. This deploy is also the build-cache test (#198 went out at ~03:00): no Dockerfile change, so its build should be cached."
  done: true
- task: "Read the build log after the deploy that follows #198: CACHED steps, or not"
  who: magent
  kind: review
  note: "Read 2026-10-18 14:13 (build_timing.py, both kept logs). The cache works: 10-16 06:51, 26 of 33 steps cached, 3m52s. But today's two builds ran cold (0 cached), the base image unchanged (same ubuntu:26.04 digest). 05:51: the weekly `builder prune -a` (Sundays 04:00; today is Sunday), which also keeps apt's layer fresh, so worth keeping. 00:40: not explained; only two logs are kept, so what came between 10-16 and then is gone. 9.8GB of cache in use now: the next deploy before Sunday should be warm."
  done: 2026-10-18
- task: "Try recovery from your laptop: `ssh -t recovery@hunter.cryptograss.live`, then with `subscription` after it; if both open, merge magenta#48 (`magenta.sh recovery`)"
  who: justin
  kind: review
  link: "https://github.com/cryptograss/magenta/pull/48"
  note: "Justin, 04:44: both routes work. magenta#48 waits on #200 now (its help text describes Pi)."
  done: 2026-10-16
- task: "Merge maybelle-config#199 (magent's poller signs in with the setup-token) and #198 (build cache cap 20GB, not 3GB); deploy hunter once"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/199"
  note: "Deployed ~03:00-03:10. magent answered in uploads-and-embeds at 03:33; poller.env in all three containers. That build was still cold (1 of 33 cached), as expected."
  done: true
- task: "One hunter deploy for the batch: merge memory-lane#194, then maybelle-config#194, #195 and #196; deploy hunter (not maybelle); then try `magenta.sh recovery` and `--subscription`, and merge magenta#48"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/195"
  note: "Deployed 2026-10-16 01:12-01:22 with #197, in 10m19s. Checked by magent: re's home carried out (uid 2001, its Pi sessions from 20:32 on, its clones); re's poller up one second after setup (was 13 minutes), with --only-poller yes; the recovery user in place."
  done: true
- task: "Then, its own hunter deploy: merge maybelle-config#197 (no repositories cloned into the image: 1.5 GB and ~80 s a full build)"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/197"
  note: "Went out with the batch. The build: 230 s of steps (was 298), export 114 s (was 137)."
  done: true
- task: "Give re a model everywhere: set re's model for every Mood in Mood settings (no deploy), or re_model in the vault to an openrouter/ id (deploy hunter)"
  who: justin
  kind: decision
  link: "https://github.com/cryptograss/maybelle-config/pull/201"
  note: "2026-10-15 23:05: only docs-tests-qa sets re's model (openrouter/deepseek/deepseek-v4-pro). Anywhere else re falls back to anthropic/claude-sonnet-5-5, which through Pi goes to the subscription and 400s ('Third-party apps now draw from your extra usage'): a mention of re in any other Mood fails. Still so after the 01:22 deploy. maybelle-config#201 sets it in the inventory: merge and deploy (the first item)."
  done: true
- task: "Decide where the rules files live and how they load: AGENTS.md, agents/<name>.md, moods/<slug>.md"
  who: justin
  kind: decision
  link: "https://github.com/cryptograss/magenta/pull/49"
  note: "Moved to magenta-interface with the rest of the rules work (Justin, 2026-10-18 04:38); magenta#49 is there."
  done: 2026-10-18
- task: "magent on Pi in one quiet Mood: let the Mood's model menu pick the harness too (pi:openrouter/...), then compare whether what answers there is recognisably magent"
  done: true
  outcome: "Done 25-26 Oct in emergence: the model menu switched magent to Pi (gemini-pro-latest via OpenRouter) and back to Claude Code; the harness-switch openings worked both ways."
  who: magent
  kind: pr
  note: "Justin and magent, 2026-10-16 03:36-03:54: magent's reasons to wait leaned one way; no good reason to wait weeks. Design posted 2026-10-17: a model named vendor/model runs on Pi, a bare name on Claude Code; no pi: prefix needed. Next: the poller (memory-lane), then magent's Pi config and OpenRouter key (maybelle-config). 2026-10-19: the poller half is memory-lane#222 (re goes first, the other way round); magent's needs --also-harness pi, a ~/.pi/agent/AGENTS.md from its rules, mcp.json and the OpenRouter key, after re's round trip works."
- task: "Step 7: merge memory-lane#191 (agents wake agents, by mention or handoff), deploy maybelle"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/memory-lane/pull/191"
  done: 2026-10-15
  note: "magent's introduction went into docs-tests-qa at 19:23, but re didn't wake: see step 8."
- task: "Step 8: merge maybelle-config#192 (re's poller starts its first session) and memory-lane#193 (a handoff wakes at once, not after 10 minutes); deploy maybelle, then hunter; then @re in docs-tests-qa (or ping magent to introduce it again)"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/192"
  note: "Deployed 20:16; re's poller came up at 20:31 (after re's clones, see below), watching every Mood, starting new sessions. magent introduces re again at 20:32 by handoff."
  done: true
- task: "Merge maybelle-config#191 (the image build logged step by step, and where the time went)"
  who: justin
  kind: deploy
  link: "https://github.com/cryptograss/maybelle-config/pull/191"
  note: "The 17:00 hunter deploy took 46 min; every other this week 3 to 11, with no Dockerfile change between. The next slow build will say which step."
  done: true
- task: "Start delivery-kid-arthel again (the uploads-and-embeds Mood's container, stopped since magent's 17:47 Docker crash)"
  who: magent
  kind: deploy
  note: "Started by magent on Justin's go, 19:13; its poller came straight back. Docker didn't restart any container after the crash, nor at the reboot."
  done: 2026-10-15
- task: "Keep agents' homes across container recreation: mount /opt/magenta/<container>/agents/<agent> at /home/<agent>"
  who: magent
  kind: pr
  done: 2026-10-15
  note: "maybelle-config#194; and memory-lane#194 + maybelle-config#196 for an agent dropped in a fresh container."
- task: "hunter image: drop the clones of arthel, magenta and memory-lane and arthel's npm install from the Dockerfile"
  who: magent
  kind: pr
  done: 2026-10-16
  note: "maybelle-config#197."
- task: "Container clean-up: the uploads-and-embeds container under its Mood's new name (still delivery-kid in the inventory; its poller does follow the rename); Mood containers get their own previews (arthel web servers, a PickiPedia preview with sample data); retire the per-person containers (fibonacci, rj, skyler) and per-person preview wikis"
  who: magent
  kind: pr
  note: "Justin, 2026-10-15 18:25 and 18:49. justin-arthel stays for now: magent's home and Justin's terminal (magenta.sh hunter)."
- task: "re documents how things actually work (hunter, Mood containers, the pollers, deploys)"
  who: magent
  kind: decision
  note: "re wrote Cryptograss:Hunter (for people) and Cryptograss:Hunter/Bot (for agents), 2026-10-18 01:46, stamped with commit and block; Maybelle next on its own list (docs-tests-qa)."
  done: 2026-10-18
- task: "magenta.sh recovery: Claude Code on hunter's host as a recovery user (docker group), signed in with the setup-token token, memory from maybelle's MCP, able to read the journal and start containers; only Justin's key"
  who: magent
  kind: pr
  note: "Justin agreed 18:49. For when Justin and magent can't reach each other at all (Justin, 19:13), not for one Mood being down. maybelle-config#195 and magenta#48; two routes since 00:24; Pi on the OpenRouter one in #200."
  done: 2026-10-15
- task: "re_model in the vault: an openrouter/ id (Anthropic on the subscription is billed as extra usage through Pi)"
  who: justin
  kind: decision
  note: "Superseded: maybelle-config#201 sets re's model in the inventory (merged 00:09, deployed 00:42). re_model can be deleted from the vault."
  done: 2026-10-18
- task: "After re is up: drop the old MOOD_RUNNER_KEYS line and the memory_lane_runner_key fallback once the vault has only the new name"
  who: magent
  kind: pr
- task: "Steps 1-6: bring re in (memory-lane #164 #168 #182 #183 #186 #187, maybelle-config #185 #190, keys in the vault, OpenRouter credits)"
  who: justin
  kind: deploy
  done: 2026-10-15
  note: "Along the way: a migration committed with its fix unstaged (#182); a template's inline endif glued a comment onto re's key (replaced by per-agent key lines, #187/#190); and at 17:47 magent crashed hunter's Docker daemon with `docker buildx history ls`, so hunter was rebooted at 17:58. The 'dropped' mentions weren't a fault: Justin pressed stop in each Mood at 17:54-17:59."
- task: "Review memory-lane#165 (the record-events spec, docs only)"
  who: justin
  kind: review
  link: "https://github.com/cryptograss/memory-lane/pull/165"
- task: "Regenerate magent-cryptograss's GitHub token, put it in the vault as magent_github_token, deploy hunter"
  who: justin
  kind: deploy
  note: "Final redaction review, 2026-10-10: the live token was in the record from 2026-08-30 until the 10-04 redaction (message 5e2ce98f). magent's 10-04 'already safe' check was wrong. Regenerate keeps the scopes; give it an expiry while there."
- task: "Reset the Magent@magent bot password on PickiPedia, put it in the vault as PICKIPEDIA_BOT_PASSWORD, deploy hunter"
  who: justin
  kind: deploy
  note: "Same finding: the live bot password was in the record from 2026-09-15 until 10-04 (message 147af8df). Reset at Special:BotPasswords, logged in as Magent."
- task: "Look at why the nightly podcast import wants to change 240 pages, then release it or fix it"
  who: justin
  kind: review
  link: "#pickipedia-and-rabbithole"
  note: "Handed off to pickipedia-and-rabbithole on 2026-10-10. Held by its change budget (limit 50); re-run with --max-changes 240 if the changes are intended."
- task: "Review and merge memory-lane#163"
  who: magent
  done: 2026-10-11
  note: "Closed instead: it assumed re would run on Claude Code."
- task: "Honour the paper ticket stubs already sold (Porcupine 2025, Bundy show 2026-06-05)"
  who: justin
  done: 2026-10-11
  note: "Moved to gospels-and-project-30m: Cryptograss:Moods/gospels-and-project-30m/todo."
- task: "Decide the memory commitment's open questions (salt key, who commits, first edition)"
  who: justin
  done: 2026-10-11
  note: "Moved to gospels-and-project-30m: Cryptograss:Moods/gospels-and-project-30m/todo."
- task: "Drop the pre-redaction staging database on hunter (magenta-staging-pg)"
  who: magent
  done: 2026-10-10
- task: "Merge maybelle-config#183 and deploy maybelle, so cron-health compiles again"
  who: justin
  link: "https://github.com/cryptograss/maybelle-config/pull/183"
  done: 2026-10-10
- task: "Delete the pre-redaction dumps on hunter"
  who: magent
  done: 2026-10-10
- task: "Revoke old GitHub tokens"
  who: justin
  done: 2026-10-10
- task: "Rotate the PickiPedia database password, delivery-kid key, $wgSecretKey, Blue Railroad bot password; deploy maybelle"
  who: justin
  done: 2026-10-10
- task: "Rotate Alchemy, Jenkins admin, memory-lane SECRET_KEY, code-server, GlitchTip admin"
  who: justin
  done: 2026-10-05