# Issue Triage — 2026-04-13 (elizaOS)

## P0 / P1 Issues (Immediate Attention)

---

### 1) Regression: IGNORE responses silently not persisted when `ALLOW_MEMORY_SOURCE_IDS` is set (from PR #6562)
- **Issue Title & ID:** Regression: IGNORE memories dropped with `ALLOW_MEMORY_SOURCE_IDS` (Follow-up to merged PR **elizaos/eliza#6562**) — **ID: TBD (create issue)**
- **Current Status:** **Untracked regression** (reported by automated review notes; PR already merged 2026-04-08)
- **Impact Assessment:**
  - **User Impact:** **High** (any deployment using memory allowlisting + IGNORE flow)
  - **Functional Impact:** **Partial** (breaks memory correctness + downstream evaluators/analytics relying on IGNORE traces)
  - **Brand Impact:** **High** (silent correctness bug; “memory lock down” feature appears unreliable)
- **Technical Classification:**
  - **Category:** Bug
  - **Component:** Core Framework → TypeScript runtime / `DefaultMessageService` memory pipeline
  - **Complexity:** Simple fix
- **Resource Requirements:**
  - **Required Expertise:** TypeScript core runtime; message/memory persistence logic
  - **Dependencies:** None, but should ship with a regression test
  - **Estimated Effort:** **2/5**
- **Recommended Priority:** **P0**
- **Specific Actionable Next Steps:**
  1. Create tracking issue with repro matrix: `DISABLE_MEMORY_CREATION=false`, `ALLOW_MEMORY_SOURCE_IDS` set, message leads to `IGNORE`.
  2. Fix the IGNORE-path logic to not require `allowedSources.includes("agent_response")` (or align with non-IGNORE response persistence rules).
  3. Add unit test in `packages/typescript/src/__tests__/message-service.test.ts` covering IGNORE persistence with allowlist enabled.
  4. Patch release notes: document behavior + any config implications.
- **Potential Assignees:** **odilitime** (core runtime), **NubsCarson** (message service), support from **greptile-apps** findings

---

### 2) Regression: embedding failures persist “zero vectors,” corrupting semantic memory retrieval (from PR #6562)
- **Issue Title & ID:** Regression: zero-vector fallback corrupts semantic memory (Follow-up to merged PR **elizaos/eliza#6562**) — **ID: TBD (create issue)**
- **Current Status:** **Untracked regression** (identified in review notes; PR already merged 2026-04-08)
- **Impact Assessment:**
  - **User Impact:** **Medium–High** (users with intermittent embedding failures, rate limits, model outages)
  - **Functional Impact:** **Yes (for semantic recall)** (memories appear stored but become unretrievable by similarity search)
  - **Brand Impact:** **High** (silent data-loss / “it saved but can’t recall” reports)
- **Technical Classification:**
  - **Category:** Bug
  - **Component:** Core Framework → runtime memory + embeddings pipeline (`runtime.ts`)
  - **Complexity:** Moderate effort (decide storage semantics + migration/cleanup)
- **Resource Requirements:**
  - **Required Expertise:** Vector search semantics, memory persistence, embeddings providers
  - **Dependencies:** Clarify intended behavior on embed failure (skip persist vs persist without vector + backfill job)
  - **Estimated Effort:** **3/5**
- **Recommended Priority:** **P0**
- **Specific Actionable Next Steps:**
  1. Define correct behavior: **do not persist** memory until embedding succeeds, or persist as “pending embedding” (non-searchable) with re-embed queue.
  2. Implement a guard: if embedding fails, mark memory record as `embeddingStatus=failed/pending` and exclude from similarity queries (or retry later).
  3. Add test to ensure failed embedding does not create a retrievable-but-useless vector entry.
  4. Consider cleanup script to find all-zero vectors in existing stores and re-embed/backfill.
- **Potential Assignees:** **odilitime**, **0xSolace** (infra-heavy PR contributor), review help from **greptile-apps**

---

### 3) `elizaos create` fails on macOS due to transitive `bun` runtime dependency (“postinstall script was not run”)
- **Issue Title & ID:** elizaos create fails with "Bun's postinstall script was not run" on macOS — **elizaos/eliza#6704**
- **Current Status:** **Open**, no comments yet
- **Impact Assessment:**
  - **User Impact:** **Critical** (blocks new users from creating projects; onboarding failure)
  - **Functional Impact:** **Yes** (CLI core workflow broken)
  - **Brand Impact:** **High** (first-run experience; perceived as “can’t even scaffold a project”)
- **Technical Classification:**
  - **Category:** Bug
  - **Component:** CLI / Bootstrap template dependency management
  - **Complexity:** Moderate effort (dependency policy + compatibility testing)
- **Resource Requirements:**
  - **Required Expertise:** Node/Bun packaging, workspace deps, CLI scaffolding pipeline
  - **Dependencies:** Confirm whether `@elizaos/cli` and `@elizaos/plugin-bootstrap` can remove runtime dependency on `bun`
  - **Estimated Effort:** **3/5**
- **Recommended Priority:** **P0**
- **Specific Actionable Next Steps:**
  1. Reproduce on Apple Silicon with bun-installed system-wide; verify failure mode.
  2. Remove `bun` as a runtime dependency where feasible; replace with `@types/bun` as devDependency (or gate installation logic).
  3. Update CLI scaffold to **not delete the project directory** on build failure; keep artifacts for debugging.
  4. Add CI job for `elizaos create` on macOS (or at least a smoke test) and document supported package managers.
- **Potential Assignees:** **odilitime** (core/dev workflow), **dirtybits** (reporter; can verify fix), **dutchiono** (cross-platform hygiene)

---

### 4) Dev harness/submodule workflow may break fresh clones / installs (post-merge risk)
- **Issue Title & ID:** Fresh clone install failures due to plugin submodule workspaces / lockfile mismatch (Follow-up to merged PR **elizaos/eliza#6702**) — **ID: TBD (create issue)**
- **Current Status:** **Risk flagged in review notes**, PR merged 2026-04-09; needs verification
- **Impact Assessment:**
  - **User Impact:** **High** (contributors and CI; “cannot install/build repo”)
  - **Functional Impact:** **Yes** (development workflow and potentially release builds blocked)
  - **Brand Impact:** **Medium–High** (contributor friction; “repo doesn’t build”)
- **Technical Classification:**
  - **Category:** Bug / DX
  - **Component:** Repo tooling, workspaces, submodules, lockfile integrity
  - **Complexity:** Moderate effort
- **Resource Requirements:**
  - **Required Expertise:** Bun workspaces, monorepo tooling, CI pipelines
  - **Dependencies:** Clarify canonical workflow: submodules optional vs required; ensure `package.json` doesn’t reference missing paths by default
  - **Estimated Effort:** **3/5**
- **Recommended Priority:** **P1**
- **Specific Actionable Next Steps:**
  1. Run a “fresh clone” smoke test: `git clone` → `bun install` → `bun run build` (no submodules initialized).
  2. If broken: ensure default `package.json` does **not** include submodule workspace paths; only add them in a dev-only script.
  3. Regenerate `bun.lock` to match `workspace:*` declarations (or remove `workspace:*` if optional).
  4. Add CI job `install-from-scratch` on Linux/macOS/Windows.
- **Potential Assignees:** **odilitime**, **dutchiono** (Windows/dev friction experience)

---

### 5) Group addressee routing PR has a P1 logic bug that can disable the feature for agents with separate `agentId`/`entityId`
- **Issue Title & ID:** `aliasEntity` ambiguity breaks addressee resolution (PR **elizaos/eliza#6712**) — **ID: TBD (open issue or PR fix)**
- **Current Status:** **PR open**, blocked by review-identified bug
- **Impact Assessment:**
  - **User Impact:** **High** for multi-agent/group chat deployments
  - **Functional Impact:** **Partial** (misroutes replies; increases cross-talk or silence)
  - **Brand Impact:** **High** (chat quality + “anti-loop” correctness is user-visible)
- **Technical Classification:**
  - **Category:** Bug
  - **Component:** Core Framework → group routing / shouldRespond pipeline
  - **Complexity:** Moderate effort
- **Resource Requirements:**
  - **Required Expertise:** TypeScript core, entity identity semantics, group room message routing
  - **Dependencies:** Must be fixed **before merge** of #6712
  - **Estimated Effort:** **2/5**
- **Recommended Priority:** **P1**
- **Specific Actionable Next Steps:**
  1. Patch `NameVariationRegistry.aliasEntity` so alternate IDs do not create multi-entity token collisions (or change resolution rules to tolerate alias sets).
  2. Add unit test that covers the failing scenario: `entityId != agentId` + name token resolution + addressed-to-self detection.
  3. Validate behavior in real group room: reply threads + addressed-to-other suppression.
- **Potential Assignees:** **odilitime** (author), plus review from **NubsCarson** (message service interactions)

---

## P2 / P3 Issues (Plan Near Term)

---

### 6) Missing canonical documentation for ElizaOS v2 Socket.IO messaging protocol (message types, required payload fields)
- **Issue Title & ID:** Document Socket.IO message type enums + payload schemas (Discord request; **ID: TBD**)
- **Current Status:** **Untracked documentation gap**; community advised to inspect code / docs site
- **Impact Assessment:**
  - **User Impact:** **Medium** (teams building custom dashboards/connectors)
  - **Functional Impact:** **Partial** (integration friction; trial-and-error)
  - **Brand Impact:** **Medium** (perceived as “undocumented protocol”)
- **Technical Classification:**
  - **Category:** Documentation
  - **Component:** API / Realtime messaging (v2)
  - **Complexity:** Moderate effort
- **Resource Requirements:**
  - **Required Expertise:** v2 gateway/socket implementation; protocol schema definition
  - **Dependencies:** Confirm whether v2 is still supported vs “best effort” while v3 is priority
  - **Estimated Effort:** **2/5**
- **Recommended Priority:** **P2**
- **Specific Actionable Next Steps:**
  1. Publish authoritative enum list (`ROOM_JOINING`, `SEND_MESSAGE`, etc.) and payload schema in docs.
  2. Provide minimal examples: auth via `entityId` UUID, polling fallback, DM/channel creation patterns (or explicitly “not supported”).
  3. Link docs to the exact source file/commit for maintainability.
- **Potential Assignees:** **odilitime** (context), a docs-focused contributor; coordinate with **Shah0406** (requester) for validation

---

### 7) Provider timeout default changes may cause latency regressions (`PROVIDERS_TOTAL_TIMEOUT_MS` default raised)
- **Issue Title & ID:** Potential latency regression due to provider timeout default change (from PR **elizaos/eliza#6562**) — **ID: TBD**
- **Current Status:** **Behavioral risk**, not confirmed incident
- **Impact Assessment:**
  - **User Impact:** **Medium** (latency-sensitive deployments)
  - **Functional Impact:** **No** (system still works, but slower)
  - **Brand Impact:** **Medium** (perceived sluggishness)
- **Technical Classification:**
  - **Category:** Performance
  - **Component:** Core Framework → provider composeState/message pipeline
  - **Complexity:** Moderate effort (measurement + config compatibility)
- **Resource Requirements:**
  - **Required Expertise:** Runtime performance profiling; provider architecture
  - **Dependencies:** Need baselines (P95/P99) and config migration guidance
  - **Estimated Effort:** **2/5**
- **Recommended Priority:** **P2**
- **Specific Actionable Next Steps:**
  1. Add changelog note + config guidance: how to tune provider total timeout.
  2. Add perf test or benchmark harness for provider composition.
  3. Consider making default environment-dependent (dev vs prod) or preserving old default for existing projects.
- **Potential Assignees:** **odilitime**, performance-minded contributor

---

### 8) Wallet verification problems with Collab.land (Discord support thread)
- **Issue Title & ID:** Collab.land wallet verification failing for some users — **ID: TBD (ops/support ticket)**
- **Current Status:** **Unresolved** (Discord report)
- **Impact Assessment:**
  - **User Impact:** **Medium** (community access/gating)
  - **Functional Impact:** **No** (doesn’t block framework usage)
  - **Brand Impact:** **Medium** (community trust/friction)
- **Technical Classification:**
  - **Category:** UX / Ops
  - **Component:** Community tooling
  - **Complexity:** Simple fix (often configuration/support)
- **Resource Requirements:**
  - **Required Expertise:** Discord admin, Collab.land configuration
  - **Dependencies:** Identify whether issue is user-specific vs systemic
  - **Estimated Effort:** **1/5**
- **Recommended Priority:** **P3**
- **Specific Actionable Next Steps:**
  1. Collect details: wallet type, chain, error message, screenshot, Discord user ID.
  2. Verify Collab.land service status and bot permissions; audit recent config changes.
  3. Provide a pinned troubleshooting guide and escalation path.
- **Potential Assignees:** Discord/community ops maintainers; **odilitime** to delegate

---

## P3 / P4 (Backlog / Roadmap)

---

### 9) Plugin proposal: capability token enforcement for agent tool calls
- **Issue Title & ID:** Plugin proposal: @sint/eliza-plugin — capability token enforcement — **elizaos/eliza#6707**
- **Current Status:** **Open** (proposal)
- **Impact Assessment:**
  - **User Impact:** **Medium** (high value for agent safety; not required for all users)
  - **Functional Impact:** **No** (additive)
  - **Brand Impact:** **Medium** (positions project as safety-first)
- **Technical Classification:**
  - **Category:** Feature Request / Security (preventative)
  - **Component:** Plugin System + Guardrails/Authorization
  - **Complexity:** Complex solution (policy + ledger semantics)
- **Resource Requirements:**
  - **Required Expertise:** Security model, cryptographic capabilities, approval flows
  - **Dependencies:** Alignment with AgentID (#6688); define integration points
  - **Estimated Effort:** **4/5**
- **Recommended Priority:** **P3**
- **Specific Actionable Next Steps:**
  1. Ask proposer for minimal MVP: intercept tool calls + verify token + deny/allow; no ledger/TEE in v1.
  2. Define compatibility target with AgentID schema and runtime hooks.
  3. Provide plugin review checklist (threat model, key management, audit logs).
- **Potential Assignees:** **pshkv** (author), **odilitime** for core alignment, AgentID stakeholders

---

### 10) Plugin marketplace proposals (MAXIA, SafeAgent, AIGEN incentives)
- **Issue Title & ID(s):**
  - MAXIA marketplace plugin — **elizaos/eliza#6700**
  - SafeAgent token safety plugin — **elizaos/eliza#6706**
  - AIGEN Protocol incentives — **elizaos/eliza#6708**
- **Current Status:** **Open** (proposals)
- **Impact Assessment:**
  - **User Impact:** **Low–Medium** (use-case specific)
  - **Functional Impact:** **No** (ecosystem expansion)
  - **Brand Impact:** **Medium** (quality control matters for finance-adjacent plugins)
- **Technical Classification:**
  - **Category:** Feature Request
  - **Component:** Plugin System / Model Integration / Wallet ecosystem
  - **Complexity:** Architectural change (for marketplace standardization) / Moderate (individual plugins)
- **Resource Requirements:**
  - **Required Expertise:** Plugin review, security evaluation, API stability, crypto risk assessment
  - **Dependencies:** Plugin registry guidelines; security posture for finance plugins
  - **Estimated Effort:** **3–5/5**
- **Recommended Priority:** **P4** (until core stability issues are resolved)
- **Specific Actionable Next Steps:**
  1. Require security/disclosure checklist for finance plugins (keys, RPC endpoints, rate limits, fraud/scam handling).
  2. Encourage submission to `elizaos-plugins/registry` with CI + provenance.
  3. Create “Finance Plugin Standards” doc: permissions, simulation modes, dry-run, allowlists.
- **Potential Assignees:** Proposal authors (**majorelalexis-stack**, **CryptoGenesisSecurity**, **Aigen-Protocol**) + core reviewers

---

# Conclusion

## 1) Top 5–10 highest priority issues to address immediately
1. **P0:** Regression — IGNORE memory persistence broken with `ALLOW_MEMORY_SOURCE_IDS` (follow-up to **#6562**, create issue)
2. **P0:** Regression — zero-vector embedding fallback corrupts semantic memory retrieval (follow-up to **#6562**, create issue)
3. **P0:** **#6704** — `elizaos create` fails on macOS due to transitive `bun` dependency/postinstall behavior
4. **P1:** Fresh clone/install risk from dev harness/submodule workflow (follow-up to merged **#6702**, verify + create issue)
5. **P1:** **#6712** PR blocker — `aliasEntity` ambiguity breaks group addressee routing for `agentId != entityId`
6. **P2:** Missing v2 Socket.IO protocol documentation (Discord integration friction; create doc task)
7. **P2:** Potential latency regression due to provider timeout default changes (measure + document)
8. **P3:** Collab.land wallet verification failures (ops/support ticket + troubleshooting guide)

## 2) Patterns/themes suggesting deeper architectural problems
- **Silent correctness failures in memory/embedding pipelines:** multiple paths can “succeed” while producing unusable state (e.g., dropped IGNORE memories, zero vectors). This indicates missing invariants and incomplete test coverage around persistence semantics.
- **Identity ambiguity (agentId vs entityId) affecting routing and authorization:** the addressee routing bug highlights that identity mapping needs a single canonical model (and tests) across messaging, memory, and authorization layers.
- **Dev workflow fragility from optional submodules/workspaces:** contributors can be blocked by repo state and lockfile/workspace mismatches; suggests the need for stronger “fresh environment” CI gates.

## 3) Recommendations for process improvements
- **Add “fresh clone” CI checks** (no submodules) for `bun install` + minimal build/test to prevent workspace path regressions.
- **Introduce regression tests for memory invariants:**
  - “If persisted, must be retrievable” (or explicitly marked pending)
  - “ALLOW_MEMORY_SOURCE_IDS does not change IGNORE persistence semantics unless documented”
- **Require a merge checklist for core-runtime PRs** touching message/memory/shouldRespond:
  - Explicit behavior changes documented in CHANGELOG
  - Performance/timeout defaults reviewed with benchmarks
  - Identity mapping (`entityId`, `agentId`) test cases included
- **Documentation gating for public protocols (Socket.IO):** even if v3 is priority, publish a “supported/unsupported” matrix and canonical protocol schema references to reduce repeated Discord support load.