## Issue Triage — 2026-01-19

### P0 / P1 Issues (Immediate Triage)

---

### 1) Discord Plugin: `sendMessage` is undefined (breaks messaging)
- **Issue Title & ID:** `sendMessage is undefined` — elizaos-plugins/plugin-discord **#43**
- **Current Status:** Open (reported 2026-01-15); no fix referenced in current logs
- **Impact Assessment:**
  - **User Impact:** **High** (anyone using Discord plugin messaging paths that hit this code)
  - **Functional Impact:** **Yes** (core “agent replies in Discord” path likely broken)
  - **Brand Impact:** **High** (Discord is a primary demo surface; failures look like “project is broken”)
- **Technical Classification:**
  - **Issue Category:** Bug
  - **Component Affected:** Plugin System → `plugin-discord`
  - **Complexity:** Moderate effort (depends on call site/typing regressions)
- **Resource Requirements:**
  - **Required Expertise:** TypeScript, Discord API integration, eliza runtime message pipeline
  - **Dependencies:** Verify compatibility with current `eliza` core message abstractions (e.g., serverId → messageServerId migrations)
  - **Estimated Effort:** **3/5**
- **Recommended Priority:** **P0**
- **Specific Actionable Next Steps:**
  1. Reproduce with a minimal bot (message event → reply) and capture stack trace + plugin version matrix.
  2. Identify the missing binding: is `sendMessage` expected from a client wrapper, injected service, or runtime provider?
  3. Add a unit/integration test that exercises the failing path (mock Discord client).
  4. Patch + release a plugin-discord hotfix version; update compatibility note in docs.
- **Potential Assignees:** **odilitime** (prior discord/plugin work), plugin-discord maintainers; reviewer: **wtfsayo** (stability), **standujar** (if DB context involved)

---

### 2) Discord Plugin compatibility with ElizaCloud deployment appears broken/unclear
- **Issue Title & ID:** “`plugin-discord` possibly broken when used with ElizaCloud for chatbot creation” — **Discord report (star, 2026-01-18), untracked**
- **Current Status:** Unanswered in Discord; no linked GitHub issue yet
- **Impact Assessment:**
  - **User Impact:** **High** (blocks a common onboarding path: “deploy Discord bot via Cloud”)
  - **Functional Impact:** **Partial → Yes** (blocks cloud workflow even if local works)
  - **Brand Impact:** **High** (cloud onboarding is central to adoption; failures amplify “ghost town / dying” sentiment)
- **Technical Classification:**
  - **Issue Category:** Bug / UX (could be docs + env mismatch)
  - **Component Affected:** Cloud deployment pipeline + Plugin System (`plugin-discord`)
  - **Complexity:** Moderate effort (unknown root cause; could be env vars, OAuth/Intents, networking, buildpack)
- **Resource Requirements:**
  - **Required Expertise:** ElizaCloud runtime/deploy, secrets management, Discord bot configuration, plugin initialization
  - **Dependencies:** Clear “supported versions” matrix (eliza core version ↔ plugin-discord version ↔ cloud runtime)
  - **Estimated Effort:** **3/5**
- **Recommended Priority:** **P1** (treat as P0 if confirmed widespread)
- **Specific Actionable Next Steps:**
  1. Convert to a GitHub issue in the appropriate repo (Cloud or plugin-discord) with required template: cloud runtime version, eliza version, plugin-discord version, logs, env vars present, Discord bot settings.
  2. Reproduce in a controlled ElizaCloud staging environment.
  3. Validate secrets injection (DISCORD_TOKEN), gateway intents, and outbound network allowances.
  4. Publish a short “ElizaCloud + Discord bot checklist” doc once root cause is known.
- **Potential Assignees:** **Shaw** (cloud/app creation priority), **odilitime** (discord/plugin), **Wes** (offered experience; good for repro + docs)

---

### 3) Python example + runtime parity PR contains critical bugs (risk of shipping broken Python experience)
- **Issue Title & ID:** `fix(v2.0.0): Python example testing & fixes` — elizaos/eliza **PR #6358** (open)
- **Current Status:** Open PR; automated review flagged runtime-breaking issues (variable mismatch; inconsistent getattr usage; dependency gaps)
- **Impact Assessment:**
  - **User Impact:** **Medium → High** (Python quickstart users; likely a key onboarding path for agent developers)
  - **Functional Impact:** **Partial** (breaks examples and may break Python plugin behavior)
  - **Brand Impact:** **High** (broken quickstarts degrade trust, especially amid community skepticism)
- **Technical Classification:**
  - **Issue Category:** Bug (in PR) + Documentation (dependency/install steps)
  - **Component Affected:** Examples + Python runtime layer + plugin-inmemorydb
  - **Complexity:** Moderate effort
- **Resource Requirements:**
  - **Required Expertise:** Python packaging, Pydantic models, example/test harness, cross-language parity
  - **Dependencies:** Agreement on Python support scope for v2.0.0; CI coverage for Python examples
  - **Estimated Effort:** **3/5**
- **Recommended Priority:** **P1** (block merge until fixed; expedite)
- **Specific Actionable Next Steps:**
  1. Patch the concrete defects flagged by review (e.g., wrong variable reference in `update_memory`, ensure all optional attributes use `getattr` consistently).
  2. Ensure `python-dotenv` is included wherever imported (requirements/pyproject).
  3. Add CI job that runs the Python chat example end-to-end (or a minimal smoke test) to prevent regressions.
  4. Only merge once examples run from a clean environment with documented steps.
- **Potential Assignees:** **odilitime** (author), reviewer: **revlentless** (runtime rigor), **wtfsayo** (CI hardening)

---

### 4) SQL error related to “zero vector fallback” (can break embedding search / memory retrieval)
- **Issue Title & ID:** `SQL error related to zero vector fallback` — elizaos/eliza **#6380**
- **Current Status:** Open (created 2026-01-17)
- **Impact Assessment:**
  - **User Impact:** **High** if it affects default memory/embedding flows (many agents depend on memory search)
  - **Functional Impact:** **Yes / Partial** (can break memory retrieval, RAG-like behavior, or initialization depending on where triggered)
  - **Brand Impact:** **High** (memory failures present as “agent is dumb / not remembering”)
- **Technical Classification:**
  - **Issue Category:** Bug
  - **Component Affected:** Plugin System → `plugin-sql` (vector/embedding storage & queries)
  - **Complexity:** Moderate effort (likely query/path-specific; must preserve RLS and DB compatibility)
- **Resource Requirements:**
  - **Required Expertise:** PostgreSQL/pgvector (or equivalent), Drizzle adapter internals, eliza memory search semantics
  - **Dependencies:** DB backend matrix (Postgres, PGLite, Neon) and test coverage for fallback behavior
  - **Estimated Effort:** **3/5**
- **Recommended Priority:** **P1**
- **Specific Actionable Next Steps:**
  1. Identify which query fails (search-by-embedding vs insert/update) and under what condition a zero vector is used.
  2. Add regression tests across Postgres + PGLite to cover “missing embedding → fallback vector” paths.
  3. Decide correct behavior: reject empty embeddings early vs store nullable embeddings and skip vector ops.
  4. Patch and release plugin-sql version; add a troubleshooting note.
- **Potential Assignees:** **standujar** (plugin-sql focus), **0xbbjoker** (SQL plugin fixes), reviewer: **wtfsayo**

---

### 5) Migration eligibility mismatch / snapshot bug (trust & user funds perception risk)
- **Issue Title & ID:** `Migration eligibility mismatch and snapshot bug` — elizaos/eliza **#6369**
- **Current Status:** Open (created 2026-01-16)
- **Impact Assessment:**
  - **User Impact:** **Critical** (migration disputes can affect many users and create support load)
  - **Functional Impact:** **Partial** (not core runtime, but blocks ecosystem participation and creates account state inconsistencies)
  - **Brand Impact:** **High** (migration errors severely harm credibility; community already anxious)
- **Technical Classification:**
  - **Issue Category:** Bug / Data integrity
  - **Component Affected:** Migration tooling / snapshot logic (project infrastructure)
  - **Complexity:** Complex solution (requires data audit + deterministic rules)
- **Resource Requirements:**
  - **Required Expertise:** Data pipelines, snapshot reproducibility, verification tooling, communication clarity
  - **Dependencies:** Access to snapshot source-of-truth, deterministic eligibility spec, ability to re-run/audit
  - **Estimated Effort:** **4/5**
- **Recommended Priority:** **P0** (because brand + user trust + potential scale)
- **Specific Actionable Next Steps:**
  1. Write/confirm an explicit eligibility specification (inputs, cutoffs, exclusions, tie-breaking).
  2. Build an audit script that can reproduce eligibility for a sample set and compare with published results.
  3. Provide a user-facing verification mechanism (“why am I ineligible?”) with minimal data exposure.
  4. Publish an incident-style update (what happened, what’s being checked, ETA).
- **Potential Assignees:** **Shaw** (project-level ownership), **wtfsayo** (infra/CI style rigor), support from **standujar** (data correctness mindset)

---

## P2 / P3 Issues (Near-term Planning)

---

### 6) Public guidance for identifying spoofed repos/commits (security communication gap)
- **Issue Title & ID:** “GitHub repo spoofing / commit impersonation confusion” — **Discord security report (2026-01-16), untracked**
- **Current Status:** Addressed verbally (PGP/MFA explanation), but no durable documentation/SECURITY.md callout referenced
- **Impact Assessment:**
  - **User Impact:** **Medium** (affects many observers; scams rely on confusion)
  - **Functional Impact:** **No**
  - **Brand Impact:** **High** (security doubts spread fast; “team got hacked?” narratives)
- **Technical Classification:**
  - **Issue Category:** Security / Documentation
  - **Component Affected:** Project governance + release provenance
  - **Complexity:** Simple fix (docs + pinned guidance) to Moderate (supply-chain hardening)
- **Resource Requirements:**
  - **Required Expertise:** OSS security best practices, GitHub org settings, signing policies
  - **Dependencies:** Agreement on required commit signing / release signing policy
  - **Estimated Effort:** **2/5**
- **Recommended Priority:** **P2**
- **Specific Actionable Next Steps:**
  1. Add/refresh SECURITY.md and a “How to verify official repos/releases” doc page.
  2. Document commit signing expectations (PGP/Sigstore) and how users should validate releases.
  3. Pin a Discord message with verification steps and official links.
- **Potential Assignees:** **odilitime** (already explained), **wtfsayo** (process/automation), **Jin** (docs initiative)

---

### 7) Documentation optimized for AI-agent consumption (high leverage, but not a fire)
- **Issue Title & ID:** “LLM-readable / agentic documentation overhaul using kapa.ai guidelines” — **Discord core-devs initiative (jin, 2026-01-18), untracked**
- **Current Status:** Proposed; not yet converted into a tracked plan with milestones
- **Impact Assessment:**
  - **User Impact:** **Medium** (improves onboarding and agent-driven integration)
  - **Functional Impact:** **No**
  - **Brand Impact:** **Medium** (better docs counteract “inactive project” perception)
- **Technical Classification:**
  - **Issue Category:** Documentation
  - **Component Affected:** Docs site + examples
  - **Complexity:** Moderate effort (systematic rewrite + information architecture)
- **Resource Requirements:**
  - **Required Expertise:** Technical writing, prompt-aware structuring, examples correctness, tooling for doc QA
  - **Dependencies:** Decide doc style guide; ensure examples compile/run
  - **Estimated Effort:** **3/5**
- **Recommended Priority:** **P2**
- **Specific Actionable Next Steps:**
  1. Create a tracking issue/epic with pages list, acceptance criteria, and “definition of done.”
  2. Pilot 3–5 high-traffic pages (quickstart, cloud deploy, discord bot, memory/sql, troubleshooting).
  3. Add doc CI checks: link checking + “example commands smoke test” where feasible.
- **Potential Assignees:** **Jin** (initiator), **Wes** (offered dev experience), reviewer: **borisudovicic** (UX/product), **wtfsayo** (CI)

---

### 8) Community management UX: job/skill posts cluttering main channels
- **Issue Title & ID:** “Create separate section for skill/job postings” — **Discord suggestion (averma, 2026-01-18), untracked**
- **Current Status:** Proposed
- **Impact Assessment:**
  - **User Impact:** **Medium** (improves signal-to-noise for many community members)
  - **Functional Impact:** **No**
  - **Brand Impact:** **Medium** (reduces “dead chat” optics)
- **Technical Classification:**
  - **Issue Category:** UX / Community Ops
  - **Component Affected:** Discord server structure/moderation
  - **Complexity:** Simple fix
- **Resource Requirements:**
  - **Required Expertise:** Community moderation, Discord admin
  - **Dependencies:** Moderator availability; agreement on channel taxonomy
  - **Estimated Effort:** **1/5**
- **Recommended Priority:** **P3**
- **Specific Actionable Next Steps:**
  1. Create `#jobs-and-gigs` (or similar) + update rules/automod to redirect posts.
  2. Pin guidance and add a short rationale.
- **Potential Assignees:** Discord moderators/admins; **Shaw** for final approval

---

## Summary: Top Highest-Priority Items to Address Now (Next 24–72h)

1. **P0 — elizaos-plugins/plugin-discord #43:** `sendMessage` undefined (restore Discord messaging reliability).
2. **P0 — elizaos/eliza #6369:** Migration eligibility mismatch/snapshot bug (trust + scale risk).
3. **P1 — Discord→GitHub:** ElizaCloud + `plugin-discord` compatibility report (convert to tracked issue; reproduce on staging).
4. **P1 — elizaos/eliza #6380:** SQL “zero vector fallback” error (protect memory/embedding flows).
5. **P1 — elizaos/eliza PR #6358:** Fix Python example/runtime issues before merge (prevent broken onboarding).

(Secondary near-term: P2 security verification docs; P2 agentic-docs overhaul.)

---

## Patterns / Themes Suggesting Deeper Issues

- **Interface drift across components (core ↔ plugins ↔ cloud):** Repeated compatibility issues (e.g., `serverId → messageServerId` migration, Discord plugin runtime expectations, cloud deployment assumptions) indicate weak version-matrix management and insufficient contract testing.
- **Onboarding fragility:** Critical user journeys (Discord bot creation, Python quickstart, memory/embeddings) are failing at the “first 30 minutes” layer—this compounds negative community sentiment quickly.
- **Insufficient “production-like” CI coverage:** Bugs are being caught by users/automated reviewers rather than by end-to-end smoke tests (examples, plugin integrations, cloud deploy checks).

---

## Process Improvement Recommendations (Prevent Recurrence)

1. **Publish and enforce a compatibility matrix** (core version ↔ plugin versions ↔ cloud runtime) and pin “known good” sets for common templates (Discord bot, Telegram bot, web chat).
2. **Add integration smoke tests**:
   - Plugin-discord: minimal bot sends/receives message in a mocked harness (and optionally a nightly real Discord sandbox).
   - Python example: run from clean env in CI.
   - plugin-sql: vector search fallback tests across Postgres + PGLite.
3. **Adopt “breaking-change gates”** for schema/field migrations (like `serverId` changes): require a deprecation window, codemods, and plugin contract tests before release.
4. **Create a lightweight “incident + comms” playbook** for high-trust areas (migration/snapshot, security spoofing): single canonical status page post + pinned Discord updates + follow-up RCA.