## Issue Triage — 2026-01-20

### 1) `plugin-discord` runtime crash: undefined `sendMessage` function — elizaos-plugins/plugin-discord **#43**
- **Current Status:** Open (reported); needs reproduction + fix
- **Impact Assessment:**
  - User Impact: **High** (affects anyone using Discord integration in affected versions)
  - Functional Impact: **Yes** (core messaging path fails)
  - Brand Impact: **High** (public-facing integration appears broken)
- **Technical Classification:**
  - Issue Category: **Bug**
  - Component Affected: **Plugin System → Discord Plugin**
  - Complexity: **Moderate effort**
- **Resource Requirements:**
  - Required Expertise: TypeScript, Discord API/events, elizaOS message pipeline
  - Dependencies: Confirm version matrix (eliza core v1.7.x + plugin-discord versions), reproduce in minimal example
  - Estimated Effort (1-5): **3**
- **Recommended Priority:** **P0**
- **Specific Actionable Next Steps:**
  1. Create a minimal repro bot using latest eliza core + the plugin version where the crash occurs; capture stack trace.
  2. Identify where `sendMessage` is expected (adapter vs utility vs injected runtime service); add defensive checks + correct binding.
  3. Add regression test covering “message send” path (mock Discord client).
  4. Patch release of plugin-discord with changelog and compatibility notes.
- **Potential Assignees:** **odilitime** (prior plugin-discord work), **YuriNachos** (runtime/CLI robustness), plugin-discord maintainers

---

### 2) `plugin-telegram` crash on image handling (TypeError during image processing) — elizaos-plugins/plugin-telegram **#23**
- **Current Status:** Open (reported); needs triage + fix
- **Impact Assessment:**
  - User Impact: **Medium/High** (Telegram bots that receive images)
  - Functional Impact: **Partial** (text works; images crash/disable flows)
  - Brand Impact: **High** (bots crashing is highly visible)
- **Technical Classification:**
  - Issue Category: **Bug**
  - Component Affected: **Plugin System → Telegram Plugin**
  - Complexity: **Moderate effort**
- **Resource Requirements:**
  - Required Expertise: TypeScript, Telegram Bot API, media pipeline (buffers/files), runtime memory creation
  - Dependencies: Confirm what image libraries/codecs are used; ensure CI can run a media-handling test
  - Estimated Effort (1-5): **3**
- **Recommended Priority:** **P0**
- **Specific Actionable Next Steps:**
  1. Reproduce with a known image payload (jpg/png) and log the exact TypeError source line.
  2. Add input validation + fallback behavior (skip image, create placeholder memory, or degrade to caption-only).
  3. Add test fixture(s) for image message update parsing.
  4. Patch release and document supported image formats/limits.
- **Potential Assignees:** plugin-telegram maintainers; **odilitime** (plugin patterns); **wtfsayo** (stability fixes)

---

### 3) SQL error when using “zero-vector fallback” — elizaos/eliza **#6380**
- **Current Status:** Open (newly reported)
- **Impact Assessment:**
  - User Impact: **High** for users relying on embeddings/vector search or fallback logic
  - Functional Impact: **Yes/Partial** (RAG/memory retrieval may fail; may block agent responses depending on configuration)
  - Brand Impact: **Medium/High** (perceived reliability issues in core memory)
- **Technical Classification:**
  - Issue Category: **Bug**
  - Component Affected: **Plugin System → plugin-sql (vector/embedding queries)**
  - Complexity: **Moderate effort**
- **Resource Requirements:**
  - Required Expertise: PostgreSQL/pgvector (or equivalent), Drizzle queries, plugin-sql internals
  - Dependencies: Determine DB backend (Postgres vs Neon vs PGLite) and vector extension availability; align with RLS/isolation settings
  - Estimated Effort (1-5): **3**
- **Recommended Priority:** **P0**
- **Specific Actionable Next Steps:**
  1. Add a failing integration test that triggers the zero-vector path (empty/undefined embedding).
  2. Decide on correct semantics: skip vector distance clause vs use deterministic neutral embedding vs use text-only search.
  3. Implement fix across adapters (pg/neon/pglite) and ensure consistent behavior.
  4. Document expected behavior when embeddings are unavailable.
- **Potential Assignees:** **standujar** (plugin-sql/RLS expertise), **0xbbjoker** (SQL plugin reliability), **wtfsayo**

---

### 4) Dashboard usability: click-outside input doesn’t return to original creation window — elizaos/eliza **#6382**
- **Current Status:** Open (newly reported)
- **Impact Assessment:**
  - User Impact: **Medium** (affects dashboard users; likely common)
  - Functional Impact: **Partial** (workflow interruption; may cause repeated failed attempts)
  - Brand Impact: **Medium** (UI polish/quality perception)
- **Technical Classification:**
  - Issue Category: **UX / Bug**
  - Component Affected: **GUI/Dashboard (web app)**
  - Complexity: **Simple fix → Moderate** (depends on routing/modals/state)
- **Resource Requirements:**
  - Required Expertise: React/Next UI state management, focus/blur handling, modal/navigation stack
  - Dependencies: Identify affected component and expected navigation behavior
  - Estimated Effort (1-5): **2**
- **Recommended Priority:** **P1**
- **Specific Actionable Next Steps:**
  1. Record short repro steps + expected behavior (including browser/device).
  2. Audit input focus/blur handlers and “click outside” overlay logic (modal dismissal vs route change).
  3. Add an e2e test (Playwright/Cypress) for “create item → click outside → create again”.
- **Potential Assignees:** **borisudovicic** (UX/product focus), client/app contributors

---

### 5) ElizaCloud + `plugin-discord` compatibility issue (Discord chatbot creation) — **Discord report (untracked GH issue)**
- **Current Status:** Reported in Discord (2026-01-18); not yet tracked as a GitHub issue
- **Impact Assessment:**
  - User Impact: **High** (blocks a key “deploy a Discord bot” path for cloud users)
  - Functional Impact: **Yes** (integration/deployment blocked)
  - Brand Impact: **High** (cloud onboarding friction)
- **Technical Classification:**
  - Issue Category: **Bug / Integration**
  - Component Affected: **Model Integration/Deployment → ElizaCloud + Discord plugin**
  - Complexity: **Complex solution** (versioning, env/config, runtime differences)
- **Resource Requirements:**
  - Required Expertise: Cloud deployment pipeline, secrets/env handling, Discord plugin initialization, networking/webhooks
  - Dependencies: Need exact error logs, cloud runtime constraints, supported plugin versions
  - Estimated Effort (1-5): **4**
- **Recommended Priority:** **P1**
- **Specific Actionable Next Steps:**
  1. **Open a GitHub issue** in the appropriate repo (elizaos/eliza or plugin-discord) with logs + version info.
  2. Establish a supported compatibility matrix (ElizaCloud runtime version ↔ eliza core ↔ plugin-discord).
  3. Add a “cloud smoke test” that provisions a Discord bot and sends a message end-to-end.
  4. Document required env vars/scopes/permissions for Discord bots on cloud.
- **Potential Assignees:** **odilitime** (plugin-discord), **YuriNachos** (env/auth correctness), ElizaCloud maintainers

---

### 6) Migration eligibility / snapshot mismatch (Tangem hardware) — elizaos/eliza **#6369**
- **Current Status:** Open
- **Impact Assessment:**
  - User Impact: **Medium** (subset: Tangem/hardware + migration participants)
  - Functional Impact: **Partial** (migration/eligibility verification problems)
  - Brand Impact: **High** (trust and legitimacy concerns)
- **Technical Classification:**
  - Issue Category: **Bug / Data Integrity**
  - Component Affected: **Core/Infrastructure (migration tooling / snapshot validation)**
  - Complexity: **Complex solution**
- **Resource Requirements:**
  - Required Expertise: Data pipelines, snapshot logic, wallet/hardware address derivation edge-cases
  - Dependencies: Need authoritative snapshot source and reproducible mismatching samples
  - Estimated Effort (1-5): **4**
- **Recommended Priority:** **P1**
- **Specific Actionable Next Steps:**
  1. Collect affected addresses + expected eligibility evidence; define acceptance criteria.
  2. Validate derivation paths and representation (EOA vs proxy/safe-style edge cases).
  3. Add automated snapshot validation checks (in CI or a dedicated pipeline) to detect mismatches early.
  4. Publish a short migration FAQ/update once fixed.
- **Potential Assignees:** **wtfsayo** (infra), **standujar** (data correctness mindset), migration tooling owners

---

### 7) PR follow-up: refactor entity initialization to batch via `ensureEntities(list)` (concern raised during review) — elizaos/eliza **PR #6286 (follow-up task)**
- **Current Status:** Merged (v1.7.2 includes streaming retry + multi-step enhancements), but review feedback indicates potential suboptimal entity handling
- **Impact Assessment:**
  - User Impact: **Medium** (perf and correctness under load)
  - Functional Impact: **Partial** (could cause inefficiency or edge-case entity creation issues)
  - Brand Impact: **Medium** (maintainability + performance perception)
- **Technical Classification:**
  - Issue Category: **Performance / Tech Debt**
  - Component Affected: **Core Framework → runtime entity management**
  - Complexity: **Moderate effort**
- **Resource Requirements:**
  - Required Expertise: Core runtime architecture, DB adapter usage patterns, batching/transactions
  - Dependencies: Confirm current entity call sites and quantify N+1 patterns; ensure no behavior regression
  - Estimated Effort (1-5): **3**
- **Recommended Priority:** **P2**
- **Specific Actionable Next Steps:**
  1. Identify hotspots where entities are ensured one-by-one inside loops during message handling/multi-step flows.
  2. Implement `ensureEntities(entities[])` (or equivalent) and migrate call sites.
  3. Add benchmarks (startup/message handling) and regression tests.
- **Potential Assignees:** **odilitime** (raised/adjacent work), **standujar** (DB efficiency), **0xbbjoker**

---

### 8) Documentation optimization for “agent consumption” (kapa.ai-style) — **Discord initiative (untracked GH epic)**
- **Current Status:** Proposed in Discord core-devs discussions; not tracked as a single epic issue
- **Impact Assessment:**
  - User Impact: **Medium/High** (improves developer success + reduces support load)
  - Functional Impact: **No** (but strongly affects adoption)
  - Brand Impact: **Medium** (docs quality perception)
- **Technical Classification:**
  - Issue Category: **Documentation**
  - Component Affected: **Docs / Knowledge base**
  - Complexity: **Moderate effort** (process + tooling + editorial)
- **Resource Requirements:**
  - Required Expertise: Technical writing, information architecture, doc tooling, prompt engineering for doc agents
  - Dependencies: Decide doc standards, templates, and “definition of done” per page
  - Estimated Effort (1-5): **3**
- **Recommended Priority:** **P2**
- **Specific Actionable Next Steps:**
  1. Open a GitHub epic (likely in elizaos/elizaos.github.io or elizaOS/knowledge) with checklist by doc section.
  2. Define a doc lint rubric for LLM-readability (structure, headings, examples, API refs).
  3. Pilot on 3–5 highest-traffic pages (Quickstart, Plugins, Deployment, Memory/RAG, Discord/Telegram setup).
- **Potential Assignees:** **madjin** (docs/community initiatives), **Jin** (initiative owner from Discord), docs maintainers

---

## Summary — Top Priority (address immediately)

1. **P0:** plugin-discord undefined `sendMessage` crash — **plugin-discord #43**
2. **P0:** plugin-telegram image processing TypeError crash — **plugin-telegram #23**
3. **P0:** SQL zero-vector fallback error — **eliza #6380**
4. **P1:** ElizaCloud + plugin-discord compatibility blocking Discord chatbot creation — **Discord report (open GH issue needed)**
5. **P1:** Migration eligibility / snapshot mismatch (Tangem) — **eliza #6369**
6. **P1:** Dashboard click-outside creation flow bug — **eliza #6382**
7. **P2:** Post-merge refactor to batch entity initialization (`ensureEntities(list)`) — **follow-up to PR #6286**
8. **P2:** Docs optimization for agent consumption — **untracked epic**

---

## Patterns / Themes Indicating Deeper Issues

- **Integration fragility across version boundaries (core ↔ plugins ↔ cloud):** Multiple signals (Discord plugin crash, ElizaCloud incompatibility) suggest insufficient compatibility testing and unclear supported version matrices.
- **Insufficient end-to-end regression coverage for “real-world inputs”:** Media handling (Telegram images) and message sending (Discord) are classic e2e gaps that unit tests often miss.
- **Data/DB edge-case handling remains a common failure mode:** The zero-vector fallback issue implies missing guardrails for “no embedding available” scenarios across adapters/backends.

---

## Process Recommendations (to prevent recurrence)

1. **Publish and enforce a compatibility matrix** (core version ↔ plugin versions ↔ ElizaCloud runtime), and gate releases on it.
2. **Add cross-plugin “smoke test” suites** in CI:
   - Discord: boot bot → send message → receive reply
   - Telegram: send text + image → ensure no crash and consistent memory creation
3. **Introduce “edge-case contracts” for DB/vector behavior** (e.g., how to handle null/empty embeddings) with shared tests across pg/neon/pglite adapters.
4. **Require reproduction artifacts for integration bugs**: minimal repo, exact versions, env sample, and logs as part of issue templates for plugins/cloud-related reports.