Files
stack/agents
jason.woltjeandClaude Opus 5.5 20ea5a0b64 fix(discord): row 25 approvers are user names, never Discord ids in tool text (#1509)
Jason's live check after the 20:58Z restart posted no Approve button. The
Discord Sage wrote DEC-009's required_approvers as names; the SetSpark
service stores approvers as discord:<id> and accepted the names, and the
connector correctly refused the approval request ("bad approver id").

- binding.mjs derives setspark.approvers from the binding's users (name to
  id); a binding-set approvers key and duplicate names are refused. With
  setspark set, a user id or name change refuses the reload (pi's approvers
  are fixed at start).
- setspark.mjs: record_create/record_update map required_approvers names to
  discord:<id> and refuse unknown names, ids, duplicates and non-lists
  before any request, without echoing the value. hideIds turns mentions,
  discord: values and standalone 17-20 digit runs into the user's name or
  "unknown user" in every verb's text and refusal, including the service
  message and code before they are cut. The connector's approval request
  keeps the bare ids.
- tests: boundary test over nested, keyed, numeric, mention and cut ids;
  a local contract fixture from create through validateRequest, with the
  old name-stored shape still refused.

Rocko: R1 revise, R2 revise, R3 approve (81379830..., report da75219f...).
Suites on an index export: 24/90/43/17/14/15/63/18; Discord node tests 173/173.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-09-26 16:30:11 -05:00
..

Mosaic Stack development team

These are interactive host development agents working in the canonical checkout. They do not create managed fleet registrations or change role policy. Sage leads the project and coordinates assignments, review, and integration (Jason's ruling, 2026-09-26). Development sessions run in T3 for now. For the current bootstrap phase, direct coding, review and research use Darkwing, Dewey, Filbert, Rocko, Researcher and further seats Jason launches from this repository's agents/ directory, not fleet seats. Keep changes in /mnt/storage/src/mosaic-stack; do not modify ~/.mosaic launchers/provisioning or migrate/stop live fleet processes.

Agent Responsibility Runtime Launch from repository root
Darkwing Hands-on engineering; collaborating seat under Sage Pi, configured Mosaic model agents/darkwing/launch.sh
Dewey Frontend design, UX, accessibility, and UI implementation Pi, configured Mosaic model agents/dewey/launch.sh
Rocko General development, investigation, testing, and review Claude Code, Sonnet model agents/rocko/launch.sh
Filbert General development, investigation, testing, and review Pi, openai-codex/gpt-6-astra:low agents/filbert/launch.sh
Researcher Source-grounded technical research and evidence Pi, configured Mosaic model agents/researcher/launch.sh
Sage Project lead: coordination, review, integration; earlier DYOR strategy records retained T3 session (Claude Code); Pi launcher zai/glm-5.3:high retained agents/sage/launch.sh

Each script supports --check and --fresh. Normal launches resume the agent's own conversation; a first launch starts one. See each agent's README for context inputs, authentication, and recovery details. Launch scripts can also be invoked by absolute path from any directory. No assignment or model request is submitted by the launcher itself.

The shared Pi helper supports --provider NAME, --model ID, and --thinking LEVEL as per-launch overrides of the validated system defaults. Filbert's wrapper appends the required provider, model and thinking flags so its launch configuration remains fixed, including on resume. Use Filbert's wrapper to select that configuration; a direct shared-helper invocation uses its own supplied flags or the system defaults.

All agents follow repository governance and current user direction. Team leadership does not add deployment or push authority. Coordinate overlapping work with Sage and preserve other sessions' changes.

Before 2026-09-26 Sage worked only on DYOR strategy and sat outside the development queue. Jason then made Sage the project lead and Darkwing a collaborating seat. A separate fleet Sage seat under ~/.mosaic is being decommissioned; it does not speak for this seat. Whether the DYOR strategy work continues is Jason's call. Joe retains DYOR engineering.