# Council Briefing: 2025-03-15

## Monthly Goal

December 2025: Execution excellence—complete token migration with high success rate, launch ElizaOS Cloud, stabilize flagship agents, and build developer trust through reliability and clear documentation.

## Daily Focus

- The fleet accelerated toward V2 launch readiness by hardening core real-time infrastructure (Socket.IO + Bun) while a critical reliability fracture emerged in the Twitter client initialization path that threatens developer trust if unresolved before rollout.

## Key Points for Deliberation

### 1. Topic: Release Readiness Under Infrastructure Shift (Bun + Socket.IO)

**Summary of Topic:** Core chat transport and runtime tooling moved rapidly (WSS -> Socket.IO; Node -> Bun), improving performance and modernizing the stack, but this kind of foundational shift can amplify edge-case failures and complicate last-mile release confidence.

#### Deliberation Items (Questions):

**Question 1:** Do we freeze further infrastructure changes until V2 launch is stabilized, or continue shipping core refactors in parallel with launch?

  **Context:**
  - `GitHub Daily (2025-03-15): "Integrated Socket.IO for chat functionality, replacing WSS and enabling Bun compatibility" (PR #3946).`
  - `GitHub Daily (2025-03-15): "Upgraded the package manager to Bun" (PR #3945).`

  **Multiple Choice Answers:**
    a) Institute a short freeze: only release-blocking fixes allowed until V2 ships.
        *Implication:* Maximizes launch stability and trust, but slows momentum and may defer beneficial refactors.
    b) Continue parallel shipping with a strict risk budget and rollback plan for infra changes.
        *Implication:* Preserves velocity while reducing blast radius, but requires disciplined triage and clear ownership.
    c) Accelerate infra modernization aggressively before launch to avoid post-launch rewrites.
        *Implication:* Could yield a stronger platform baseline, but increases the probability of launch instability.
    d) Other / More discussion needed / None of the above.

**Question 2:** What is the Council’s minimum acceptable “operational proof” for V2 launch given the transport/runtime changes (e.g., soak tests, golden-path CI, or canary deployments)?

  **Context:**
  - `GitHub Activity Summary: "From March 14-15... 19 new pull requests with 13 merged..." indicating rapid change rate.`
  - `elizaOS Discord (2025-03-14): "ElizaOS V2 Release... Monday, March 17th (if nothing changes)".`

  **Multiple Choice Answers:**
    a) Require a 24–48 hour soak test of a reference deployment (AWS free tier + local) with no P0 regressions.
        *Implication:* Strongly aligns with Execution Excellence, but may force a launch slip if issues surface late.
    b) Require passing CI + a scripted golden-path checklist (install, start, chat, plugins, logs) across 2 environments.
        *Implication:* Balances speed and assurance; risks missing long-tail runtime failures like disconnections.
    c) Ship on schedule and rely on rapid patching + community reporting.
        *Implication:* Optimizes time-to-release, but undermines “Trust Through Shipping” if early adopters hit failures.
    d) Other / More discussion needed / None of the above.

**Question 3:** Should we standardize on Bun as the default runtime for developer onboarding now, or keep Node as an officially supported path until plugin compatibility is proven?

  **Context:**
  - `GitHub Daily (2025-03-14): "Switched to Socket.IO, removed WSS, and now using Bun instead of Node in the-org" (PR #3946).`
  - `Discord (2025-03-13): "Docker Deployment... difficulties deploying Eliza on Docker".`

  **Multiple Choice Answers:**
    a) Make Bun the default and de-emphasize Node in docs immediately.
        *Implication:* Simplifies the canonical path but may strand users and plugins not yet Bun-compatible.
    b) Support Bun and Node in parallel with a clearly marked “recommended” path and compatibility matrix.
        *Implication:* Improves DX clarity and reduces friction, but increases maintenance surface area.
    c) Delay Bun default until after V2 launch, using it only for select packages (e.g., the-org).
        *Implication:* Reduces launch risk, but postpones consolidation benefits and may prolong ecosystem fragmentation.
    d) Other / More discussion needed / None of the above.

---


### 2. Topic: Twitter Client Reliability & Rate-Limit Resilience

**Summary of Topic:** Field reports indicate agents stop replying after activity bursts and, more critically, Twitter client initialization can fail in main installs—this is a direct threat to platform reliability and the flagship-agent credibility loop.

#### Deliberation Items (Questions):

**Question 1:** Should Twitter support be treated as a release-blocker for V2, or decoupled as a “best-effort” plugin until stability and rate-limit handling are proven?

  **Context:**
  - `GitHub Daily (2025-03-15): "Urgent... Twitter client not initializing correctly with the main Eliza installation" (Issue #3949).`
  - `Discord Historical Summary: "Agents stop replying... likely due to Twitter rate-limiting".`

  **Multiple Choice Answers:**
    a) Release-blocker: no V2 launch until Twitter init + reply loop is stable.
        *Implication:* Protects trust and flagship credibility, but may delay broader framework progress.
    b) Ship V2, but explicitly label Twitter as experimental with guarded defaults and prominent troubleshooting.
        *Implication:* Maintains momentum while managing expectations, but risks social backlash if users ignore warnings.
    c) De-prioritize Twitter and focus on other clients (Discord/Telegram/Nostr) until API conditions improve.
        *Implication:* Reduces ongoing operational drag, but concedes a key distribution channel for developer acquisition.
    d) Other / More discussion needed / None of the above.

**Question 2:** Which engineering strategy should be the canonical fix for rate limits: request minimization via caching, adaptive backoff with quotas, or user-configured polling/search behavior?

  **Context:**
  - `Discord Historical Summary: "Hypothesis... excessive searches... Proposed Solution: fetch multiple tweets in one request, cache them".`
  - `Discord (2025-03-14 coders): "Twitter clients stopping responses... likely due to rate limiting".`

  **Multiple Choice Answers:**
    a) Implement caching + batch retrieval as the default behavior (minimize API calls).
        *Implication:* Most reliable and cost-efficient, but requires careful cache invalidation and state management.
    b) Implement adaptive backoff + quota-aware scheduling with robust telemetry.
        *Implication:* Handles dynamic limits well, but requires instrumentation and may slow responsiveness under load.
    c) Expose rate-limit controls to users (polling intervals, search depth) and document safe presets.
        *Implication:* Gives power users flexibility, but increases configuration complexity and support burden.
    d) Other / More discussion needed / None of the above.

**Question 3:** Do we want a single “social client contract” (standardized retry, rate-limit, observability hooks) enforced across all social plugins to prevent each integration from becoming a bespoke reliability trap?

  **Context:**
  - `Discord (2025-03-14): "Multiple users struggling with plugin installation and configuration" (Twitter setup called out).`
  - `GitHub PR list (2025-03-14): multiple fixes around logging, websocket behavior, and runtime logs in UI (e.g., PR #3908, #3940).`

  **Multiple Choice Answers:**
    a) Yes—define and enforce a core client contract with shared middleware (retry/backoff/logging).
        *Implication:* Raises baseline reliability and DX, but requires coordination and potential breaking changes.
    b) Partially—provide an optional shared toolkit, but keep plugin autonomy.
        *Implication:* Improves quality without heavy governance, but may lead to inconsistent adoption.
    c) No—keep integrations independent to maximize experimentation speed.
        *Implication:* Faster iteration, but repeats the same operational failures across multiple plugins.
    d) Other / More discussion needed / None of the above.

---


### 3. Topic: Developer Experience, Documentation, and Onboarding Clarity

**Summary of Topic:** Community friction is concentrated in plugin installation, websocket/API usage, and outdated starters; despite active doc work, the current experience risks violating the Developer-First principle during a high-visibility release window.

#### Deliberation Items (Questions):

**Question 1:** What single “golden path” should we canonize for new builders (starter template + CLI flow + stable version), and how aggressively do we deprecate older paths?

  **Context:**
  - `Discord (2025-03-14 discussion): "eliza-starter project... outdated compared to... 0.25.9" (lay.qin).`
  - `Discord (2025-03-13): "Which branch is most stable... Use version 0.25.9, not the main branch" (notorious_d_e_v).`

  **Multiple Choice Answers:**
    a) Canonize one starter + one CLI flow; mark everything else as deprecated with redirects and warnings.
        *Implication:* Reduces confusion and support load, but may upset power users relying on legacy flows.
    b) Maintain multiple paths but publish a comparison matrix and “recommended for X” guidance.
        *Implication:* Supports diverse user needs, but documentation complexity increases and confusion may persist.
    c) Delay canonization until after V2 launch to avoid churn while release stabilizes.
        *Implication:* Avoids last-minute docs changes, but keeps onboarding fragmented during peak attention.
    d) Other / More discussion needed / None of the above.

**Question 2:** Given recurring confusion around websockets/SSE and API endpoints, should we prioritize an official reference client + recipes (websocket/SSE, REST agent chat, plugin wiring) over new features in the next sprint?

  **Context:**
  - `Discord (2025-03-14 coders): "Requests for better documentation on... websocket connections"; "Create guide for connecting to agent via websockets" (winded4752).`
  - `Discord (2025-03-14): jin shared REST docs link: "https://elizaos.github.io/eliza/docs/rest/set-agent".`

  **Multiple Choice Answers:**
    a) Yes—prioritize reference client + recipes as a release-adjacent deliverable.
        *Implication:* Directly boosts DX and reduces support burden, accelerating ecosystem growth via clarity.
    b) Split—ship minimal docs now, but keep feature velocity; expand docs post-launch.
        *Implication:* Balances short-term release needs with momentum, but may fail to prevent immediate user churn.
    c) No—focus on core features; let community tutorials fill the gap.
        *Implication:* Preserves engineering bandwidth, but risks inconsistent guidance and erosion of developer trust.
    d) Other / More discussion needed / None of the above.

**Question 3:** How should we operationalize “Taming Information” so Discord troubleshooting (e.g., folder2knowledge paths, Twitter plugin installs) becomes self-healing knowledge rather than repeated ad-hoc answers?

  **Context:**
  - `Discord (2025-03-14): "folder2knowledge... resolved by adding '../' prefix" (Shaw, Midas).`
  - `Discord Historical Summary: Twitter plugins require manual reinstall with specific commands and character.json edits.`

  **Multiple Choice Answers:**
    a) Create an auto-ingested “Known Issues + Fixes” knowledge base linked directly from CLI errors and docs.
        *Implication:* Turns support pain into compounding documentation value and improves perceived reliability.
    b) Embed troubleshooting as interactive CLI prompts (detect failure modes, suggest fixes).
        *Implication:* Best-in-class DX, but increases CLI complexity and requires sustained maintenance.
    c) Rely on periodic manual doc updates and community threads for common fixes.
        *Implication:* Low lift, but repeats support loops and undermines “Trust Through Shipping” during growth phases.
    d) Other / More discussion needed / None of the above.