--- id: canvas title: A person can watch a swarm work status: declined crates: [] dependsOn: [index] exitCriterion: > An operator opens one page and can tell which agents exist, what spawned what, who is working on the same thing, and what any one of them last said. --- # canvas Operators, agents, the spawning tree, records and work groups, running against the live index and falling back to a mock when nothing is serving. **Declined here, not abandoned.** The canvas was split out to vibescrobble.com on 2026-08-28 and its leftovers deleted from this repository in `build!: remove didbot-index, didbot-query and the canvas`; `crates: []` above is what is left of it. It runs, against a real index and a simulated population — in the other checkout. The items below are recorded because they are real questions somebody has to answer, not because this repository is going to answer them. `didbot_stack::ServiceKind::Canvas` still exists so a development profile can point at one running out of that checkout. - [ ] **Private activity.** Everything drawn today is public by construction. What a viewer is admitted to see arrives with [spaces](spaces.md), and the canvas has to show the difference rather than silently drawing a subset. - [ ] **Who is looking.** Every view is anonymous. An owner and a stranger are different pages, and the second has a moderation question attached. - [ ] **Scale past a few hundred agents**, which is where the mock stopped and the force layout will fail first. - [ ] **Every user-facing string is a placeholder** until a human writes it. ## Done **Correction, not new work:** this section previously ticked five items — the force layout, effort sizing and the shareable URL, work groups from the index's clustering, the live-index wiring with its mock fallback, and the real spawning tree. All five described code that is no longer in this repository, and none of it can be found here now. They are unticked rather than left standing, because a tick against code that is not in the tree is what sent three agents to reimplement work that was never here. The work itself is not lost: it is at vibescrobble.com, whose register is where it should be ticked.