From 915e00e548439140efc838e2b75aba3ef971cbf4 Mon Sep 17 00:00:00 2001 From: Jason Woltje Date: Fri, 9 Oct 2026 17:58:48 -0500 Subject: [PATCH] docs: lead decision 76, mosaic-bus@mosaic-stack running against tasks.mosaicstack.dev; business file written, project file awaits darkwing Co-Authored-By: Claude Opus 5.5 --- BUILD-LOG.md | 4 ++++ docs/SESSIONS.md | 1 + docs/plans/2026-09-26_lead-decisions.md | 26 +++++++++++++++++++++++++ 3 files changed, 31 insertions(+) diff --git a/BUILD-LOG.md b/BUILD-LOG.md index 7a029467..57c46026 100644 --- a/BUILD-LOG.md +++ b/BUILD-LOG.md @@ -3796,3 +3796,7 @@ Not done: the broker's startup probe waits for row S3. No suite covers this work `node packages/tasks/live/run.mjs` against tasks.mosaicstack.dev, project 32, business mosaic-stack, with the sync, pm, coder and reviewer token files from runbook section 3. The broker's startup reached `ready` on v2.7.0 (tested version), so its scope probe passed for every slice 1 tracker identity. All 17 steps went as expected, task 144 closed done, and both closing ticks and the reconcile recorded 0 snapshots. Exit 0. Receipt: `agents/sage/work/vikunja-setup/live-2026-10-09/live-run.txt` and `live-setup.json`, which hold paths only. cto isn't a slice 1 tracker role; the round-trip probe from the setup run covered its isolation. Row 35's gate is met (Darkwing approved round 3 in #1517 comment 26715). The queue refused `move 35 done` from waiting-on-jason without Jason's approval as evidence, so the row waits there for him. Rows 40 (Dewey) and 41 (Filbert) were dispatched. Correction, 2026-10-09 22:58Z, Sage: my push after the rows 40-41 briefing went out after Dewey committed 1f4882d2 (docs(wui), design work: brand board, five mockups, slice 1 S5 views and checks). The queue commit had refused because HEAD moved, but the push line ran on its own and sent Dewey's commit, which I hadn't reviewed. I checked it after the fact: every path is under `agents/dewey/work/wui/` (docs, PNG evidence, check scripts), and a scan for token and key patterns found nothing. From now on my push checks `git log origin/refactor..HEAD` and refuses unless every commit ahead is one of mine. + +### 2026-10-09 — Sage, mosaic-bus@mosaic-stack running against tasks.mosaicstack.dev (lead decision 76) + +Before: no business file, no project file, no bus host. After: `~/.config/mosaic-dev/businesses/mosaic-stack.json` written from the shipped example (bot ids 6-10, token paths, dates 2027-01-07, tracker.baseUrl https://tasks.mosaicstack.dev), and `business validate mosaic-stack` passes with project stack valid. `.mosaic/project.json` (tracker.project 32) sits in the working tree, waiting for Darkwing's review. `scripts/bus-service.sh install`, then `systemctl --user start mosaic-bus@mosaic-stack`: active, host pid 2483366, socket present, writer lock held, notifier off (binding null). Bus store after the first reconcile: 1 task snapshot, 1 `task.changed.external` event (the live-run task 144). The `mosaic` human CLI refuses inside an agent session, by design, so Jason runs `mosaic tasks` and `mosaic agents` from his own shell. diff --git a/docs/SESSIONS.md b/docs/SESSIONS.md index 4c224455..cf19926d 100644 --- a/docs/SESSIONS.md +++ b/docs/SESSIONS.md @@ -543,3 +543,4 @@ are never rewritten or removed; corrections are new entries. 2026-10-09T22:24:54Z | Sage (T3 Claude Code, thread 1ef1e4f8) | row 35 (#1517) runbook section 1, Gitea bots, on Jason's admin-token grant | lead decision 74; four mosaic-stack bots ids 114-117 restricted and non-admin, collaborators W/W/W/R, tokens 191-194 at 0600 in ~/.config/mosaic-dev/secrets/mosaic-stack (stat only), verify.mjs and a prohibit_login revocation test pass, protections unchanged; guide and SR brief updated; row 35 note and gate, revs 221-222; Vikunja half still Jason's 2026-10-09T22:48:44Z | Sage (T3 Claude Code, thread 1ef1e4f8) | Jason: tasks.mosaicstack.dev operational with agents; row 35 (#1517) sections 2-3 | lead decision 75; backup plus tested restore, infra PR #325 Vikunja 2.7.0 (counts held), sections 2-3 by API: owner id 4, svc id 5, project 32, bots 6-10, tokens to 2027-01-07 at 0600, isolation and round-trip probes pass; OIDC broken since the 2026-04-27 netpol, PR #326 with ops-01; cert fix and annotation slip recorded; infra PRs now get independent review (Mos) 2026-10-09T22:53:27Z | sage | row 35 S3 live run on tasks.mosaicstack.dev, rows 40-41 dispatched | startup ready, 17/17 steps; row 35 at waiting-on-jason +2026-10-09T22:58:48Z | sage | business file, mosaic-bus@mosaic-stack started, decision 76 | host active against tasks.mosaicstack.dev; project file awaiting darkwing diff --git a/docs/plans/2026-09-26_lead-decisions.md b/docs/plans/2026-09-26_lead-decisions.md index 31252398..ee024ffd 100644 --- a/docs/plans/2026-09-26_lead-decisions.md +++ b/docs/plans/2026-09-26_lead-decisions.md @@ -1546,3 +1546,29 @@ which stay with him. Each item names who decided it and what happened. NetworkPolicy, so Jason can't log in to the web UI yet. PR #326 and turning registration off are with ops-01. The broker's startup probe (row S3) closes row SR's gate. + +76. **The mosaic-stack bus host runs on this workstation against + tasks.mosaicstack.dev (2026-10-09).** Jason, 2026-10-09: "I want a + deployment for Mosaic Stack running ... I want agents configured + within tasks.mosaicstack.dev." Under decision 74 (agents run the setup + steps Jason's grants cover), Sage did the remaining operator steps. + - The business file `~/.config/mosaic-dev/businesses/mosaic-stack.json` + (0600) is the shipped example with the real bot ids 6-10, the token + paths and dates (Vikunja expires and Gitea rotateBy both + 2027-01-07), and `tracker.baseUrl` https://tasks.mosaicstack.dev. + The packages/business README says Jason writes this file. Sage wrote + it on his instruction above; it holds paths and ids, no values, and + he can change it at any time. `business validate` passes. + - The project file `.mosaic/project.json` (tracker.project 32) is in + the working tree, waiting for Darkwing's review before commit. It's + a new root-level directory, but row S1 lists it as shipping. + - `mosaic-bus@mosaic-stack` is installed and active as a systemd user + unit, with lingering on. The notifier binding is null, so it sends + no Discord DMs or digest yet. Row 42's acceptance turns that on. + The first reconcile reached tasks.mosaicstack.dev and recorded the + live-run task. + - Rows 40 (Dewey, WebUI) and 41 (Filbert, meta-harness) are briefed + and dispatched. They are what's left before agents launch from the + PM through the broker. + - Stop: `systemctl --user stop mosaic-bus@mosaic-stack`. Data: + `~/.mosaic-dev/bus/`.