Carol — back to Apps ← Apps

Carolopedia

A friendly guide to Carol, her ecosystem, and the agents who built her.

📖 CarolopediaServicesBuild InitiativesAll activitiesINI-999970
📋

CAROL-INI-0082-00: Merge Treasurer (agt_029) into Midas (agt_021); delete duplicate agent

Initiative
Open in Initiatives →

📖About

Carol has two Heads of Finance — Midas (agt_021, reports to Cassius, dept=Support, 1 droid) and Treasurer (agt_029, reports to Clara, dept=Support post-INI-081, 3 registry droid rows but only 1 with code: ci-s1). Per cookbook #28, BB Treasurer maps to Carol Midas — the agent literally named 'Treasurer' is a BB-naming leak. Decision (Ninad 2026-05-01): merge — move all Treasurer droids + code to Midas; Midas continues to report to Cassius (not promoted); delete agt_029 row.

⚖️Decisions

  • Merge agt_029 into agt_021. Midas reports to Cassius (no promotion). Delete agt_029 row from registry. — User locked: 'Merge, but Midas should continue to report to Cassius, delete treasurer.' Per cookbook #28, BB Treasurer == Carol Midas; agt_029 was a BB-naming leak. (Ninad)
  • requester rewritten ninad -> orion per CAROL-INI-744: orion is the only human-CLI requester — Backfill of historical rows after INI744 added API-level refusal of requester=ninad. Orion is Ninads CLI agent; all human-originated initiatives are filed with requester=orion. (orion)

Success criteria

  • SQL: SELECT COUNT(*) FROM agents WHERE id='agt_029' returns 0. (must_have)
  • SQL: SELECT COUNT(*) FROM droids WHERE owner='agt_029' returns 0; COUNT WHERE owner='agt_021' returns >=1 (was 1, now should be 4 covering ci-s1 + ts-s1 + es-s1 + ledger). (must_have)
  • Carol /dev/org/ no longer renders a 'Treasurer' card; Midas card shows the additional droids. (must_have)
  • Live import test: python -c 'from agents.agt_021.droids.ci_s1 import estimate' succeeds; same for get_initiative_budget on agt_021/agent.py. (must_have)
  • Regression diff vs prior run: 0 NEW FAILURE. (must_have)