Carolopedia

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

📖 CarolopediaServicesBuild InitiativesAll activitiesINI-999902691Guide page
📋

CAROL-INI-3771-00: Carol + Sam web chat: styled multi-line input, prefixed live-reply stream, visible session failure

Initiative
Open in Initiatives →

📖About

Ninad (2026-08-10, as new user Carol Whitfield): both web chats look distorted and cannot send. Measured: (1) the Jul-31 multi-line input conversion (CAROL-INI-3544) left the pill styling on the old input selector, so the new textarea renders as an unstyled hairline on desktop; (2) the live-reply stream opens an absolute /api/events URL that misses the public /dev// prefix and 404s at the host root (proven headless with an authenticated session), so replies never stream on the public host; (3) a page bootstrapped without an approved session leaves the conversation id null and sendMessage returns SILENTLY forever - the exact state of tabs opened before the user was approved. Fix all three on carol-chat AND sam-chat: extend the pill styling to the textarea, prefix the EventSource URL with the page API base, and surface a visible reload notice when the conversation bootstrap fails or send is attempted with no conversation.

⚖️Decisions

  • Auto-detected remediation target INI-999902429 from title/description scan (matched CAROL-INI-3544 -> row id 999902429 (CAROL-INI-3544-00: Agent chat input: the up arrow recalls what you said before, )); override by setting remediates_initiative_id explicitly at bypass_start. (system-auto-detect)
  • Elrond's bypass methodology checklist (a reminder, not a gate -- you've got this): 0. File it requested_mode='bypass' (planner-vs-bypass is a deliberate choice). bypass_start REFUSES a non-bypass initiative (CAROL-INI-1846), and the dispatcher only skips the bypass lane when the mode says bypass -- a 'planner' mistag lets Merlin's pipeline grab the placeholder step and block your finished work. 1. Filed as planned status -- let the bypass claim/activate it; never file active. 2. Open the bypass (bypass_start) with your droid id + the remediation answer (remediates_initiative_id=NNN, or remediates_nothing=True). 3. Work the blocks for your work-type: template -> design -> code -> test -> review. Do the real work; record decisions on the initiative as you make them. 4. Reality is recorded for you at close -- code (files changed), each decision, and the twin-review verdict become real activities tied to this initiative and show in the Activity Tracker like a planner run (CAROL-INI-1840). No dummy rows. 5. Keep the initiative status moving; it parks in 'reviewing' and is tagged uat-pending for you at close (CAROL-INI-1836), so the stuck-watchdog leaves it alone until UAT. 6. Close runs the gates (design/architecture compliance + caller-audit). If a gate flags something pre-existing or unrelated to your change, waive it with a clear written rationale -- audit, don't skip. 7. Bypass skips the planner's auto-orchestration, NOT the standards. Same template checklist, same review, same observability as a planner run. (elrond)
  • [status-router] planned -> executing | event=bypass_executing | bypass transition (or-bx-01)
  • [delivery-check] 5 must-have criteria remain pending at bypass_end — delivery has no mechanical re-performance lane; UAT must grade on live evidence, not checklist silence (CAROL-INI-3020): (no detail) (orion)
  • [status-router] executing -> reviewing | event=bypass_reviewing | bypass transition (or-bx-01)
  • [status-router] reviewing -> closed | event=operator_signoff | Auto-accepted (CAROL-INI-1859): Orion-initiated, >2 days in reviewing with no objection. (el-srac-01)

Success criteria

  • The message box on both chats renders as the designed pill (>=40px, rounded, visible background) for the multi-line textarea on desktop (must_have)
  • The live-reply stream connects under the public route prefix on both chats (no 404 at the host root; verified headless with an authenticated session) (must_have)
  • A failed conversation bootstrap or a send with no conversation shows a visible notice instead of doing nothing (must_have)
  • The shared chat-input keyboard behavior (Enter sends, Shift+Enter newline, arrow-up history) is untouched (must_have)
  • Both apps restarted via Radagast and verified live (must_have)