Carolopedia

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

📖 CarolopediaServicesBuild InitiativesAll activitiesINI-1000350Guide page
📋

CAROL-INI-0422-00: Carol Chat: prompt evolution + service education for web guests

Initiative
Open in Initiatives →

📖About

DEFERRED FROM CAROL-INI-416 (item 2).

GUEST PROMPT EVOLUTION. Today a web guest is served the static unverified-tier prompt + isolated guest memory. There is no mechanism that authors a per-user prompt as the conversation builds. Build a background loop (cron + scorer) that periodically reads the user's conversation history and authors/refines users///prompt_user.md with stable preferences + context Carol should always carry. Triggers: every N closed conversations, or N hours of fresh history, whichever first.

SERVICE EDUCATION. As a guest subscribes to services (ventures, jobsearch, requirements, etc.), the corresponding service prompt must come into effect for THAT user (per-user service-list, not a global toggle). Beyond that, Carol must pro-actively educate the guest about services on offer ONE service per appropriate conversational opportunity (NOT a brochure dump). Order: relevance > popularity > novelty. Define an opportunity gate (e.g. natural lull in the thread, or a question that maps to a service capability). Build a per-user service_education_log so Carol does not re-pitch a service that was already declined.

This is the natural next step after CAROL-INI-416 makes the web chat reliable; it gives Carol the layered prompt machinery on the web channel that today only exists for the admin/verified tiers on WhatsApp.

⚖️Decisions

  • Elrond stuck-watchdog: 3 consecutive failed recovery attempts since 2 strikes recorded. Initiative idle past 600s with no live queue row; Albus invoked 3 times without progress. Flipping to blocked and surfacing on operator queue per CAROL-INI-403. (elrond.handover_watchdog)
  • CAROL-INI-510 restore: this initiative was wrongly flipped to 'blocked' by elrond.handover_watchdog Gap D, which treated status='planned' as 'stuck'. INI-510 removes 'planned' from the watchdog's status scan; planned means filed-and-waiting-for-operator-dispatch, not stuck. Status restored to 'planned'. (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)
  • [status-router] planned -> closed | event=operator_put | PUT /api/initiatives (operator)