Cryptograss:Moods/emergence/todo

From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Revision as of 03:54, 25 October 2026 by DrivingThatTrain (talk | contribs) (Merged, says GitHub: https://github.com/cryptograss/pickipedia/pull/156)
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 14: Duplicate key "done" detected at line 14 (near "done: 2026-10-24").

- 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. Merge, no redeploy yet: magenta #155 (agents react), #156 (a wait stays in the Mood as a line, in the agents' colours; contains #146, #144 and #143: merge it instead of #146), #140 (agents' turns folded between people's posts), #142 (the 👁 readers' places). #141, #145, #150, #152 and #153 are already merged. Then verify at Special:VerifyBotEdits: Cryptograss:Moods/Dials, GeneralOrders, Greeting, Cryptograss:Agents/Magent, /Re, /Blu, the three /Instructions pages, Cryptograss:Moods/Instructions, Cryptograss:Agents, and re's Index, Cryptograss:Instructions, Summoning, Wake"
  note: "Checked at 03:41Z: main plus #156, #140, #142 and #155 merge with no conflicts; 1261 tests pass (rechecked 03:50Z); no missing migrations."
  who: justin
  kind: review
  link: "https://pickipedia.xyz/wiki/Special:VerifyBotEdits"
  note: "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: merge magenta#153 (bootstrap_memory shows the newest journal entries; the reawaken-and-breathe reflection goes) and redeploy maybelle; 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. Then merge maybelle-config#228, and 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"
- task: "6. @-mention magent and re here; each answers with the greeting line it woke with. Then magent wakes blu"
  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"
  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"
  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"
  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"
  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"
  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"
  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)"
  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"
  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