{
  "interval": {
    "intervalStart": "2025-11-01T00:00:00.000Z",
    "intervalEnd": "2025-11-02T00:00:00.000Z",
    "intervalType": "day"
  },
  "repository": "elizaos/eliza",
  "overview": "From 2025-11-01 to 2025-11-02, elizaos/eliza had 0 new PRs (1 merged), 0 new issues, and 2 active contributors.",
  "topIssues": [],
  "topPRs": [
    {
      "id": "PR_kwDOMT5cIs6wsKIb",
      "title": "fix: agent settings persistence across restarts",
      "author": "standujar",
      "number": 6106,
      "body": "# Relates to\r\n\r\nFixes agent settings not persisting across restarts, causing runtime-generated configuration to be lost.\r\n\r\n# Risks\r\n\r\n**Low risk**\r\n\r\n- Changes core runtime initialization logic for agent settings merge\r\n- All existing tests pass, new comprehensive test suite added\r\n- Affects: Agent settings persistence, character configuration loading\r\n\r\n# Background\r\n\r\n## What does this PR do?\r\n\r\nFixes agent settings persistence by implementing intelligent merge between database-persisted settings and character file configuration during agent initialization.\r\n\r\n**Before**: Settings saved at runtime (via `runtime.setSetting()` and `runtime.updateAgent()`) were lost on agent restart.\r\n\r\n**After**: Settings are properly merged, preserving runtime state while allowing character file to override specific values.\r\n\r\n## What kind of change is this?\r\n\r\nBug fixes (non-breaking change which fixes an issue)\r\n\r\n# Documentation changes needed?\r\n\r\nMy changes do not require a change to the project documentation.\r\n\r\n# Testing\r\n\r\n## Where should a reviewer start?\r\n\r\n1. Review `packages/core/src/runtime.ts` changes in `ensureAgentExists()` (lines 2376-2442) and `initialize()` (lines 425-455)\r\n2. Review comprehensive test suite in `packages/core/src/__tests__/ensure-agent-exists.test.ts`\r\n\r\n## Detailed testing steps\r\n\r\n**Automated tests:**\r\n```bash\r\ncd packages/core\r\nbun test src/__tests__/ensure-agent-exists.test.ts\r\nbun test src/__tests__/runtime.test.ts\r\n```\r\n\r\n**Manual integration test:**\r\n1. Start agent with fresh character file (no runtime settings)\r\n2. Use `runtime.setSetting()` to add configuration at runtime\r\n3. Call `runtime.updateAgent()` to persist to database\r\n4. Restart agent\r\n5. Verify settings are loaded via `runtime.getSetting()`\r\n\r\n**Test coverage:**\r\n- ✅ New agent creation\r\n- ✅ Settings merge on restart (DB + character file)\r\n- ✅ Character file overrides DB values (same key)\r\n- ✅ Deep merge of secrets\r\n- ✅ Handles missing settings in DB\r\n- ✅ Handles missing settings in character file\r\n- ✅ Integration with `runtime.initialize()`\r\n- ✅ `getSetting()` access to merged settings\r\n\r\nAll tests pass (9 tests, 28 assertions).\r\n",
      "repository": "elizaos/eliza",
      "createdAt": "2025-10-30T19:08:31Z",
      "mergedAt": "2025-11-01T23:50:18Z",
      "additions": 515,
      "deletions": 3
    }
  ],
  "codeChanges": {
    "additions": 515,
    "deletions": 3,
    "files": 2,
    "commitCount": 1
  },
  "completedItems": [
    {
      "title": "fix: agent settings persistence across restarts",
      "prNumber": 6106,
      "type": "bugfix",
      "body": "# Relates to\r\n\r\nFixes agent settings not persisting across restarts, causing runtime-generated configuration to be lost.\r\n\r\n# Risks\r\n\r\n**Low risk**\r\n\r\n- Changes core runtime initialization logic for agent settings merge\r\n- All existing test",
      "files": [
        "packages/core/src/__tests__/ensure-agent-exists.test.ts",
        "packages/core/src/runtime.ts"
      ]
    }
  ],
  "topContributors": [
    {
      "username": "0xbbjoker",
      "avatarUrl": "https://avatars.githubusercontent.com/u/54844437?u=90fe1762420de6ad493a1c1582f1f70c0d87d8e2&v=4",
      "totalScore": 55.790946608171126,
      "prScore": 55.790946608171126,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "0xbbjoker: Focused on expanding functionality within the `plugin-openrouter` by implementing TEXT_EMBEDDING model support, as evidenced by the significant feature work in PR elizaos-plugins/plugin-openrouter#17 (+596/-384 lines), primarily touching code, tests, and configuration files."
    },
    {
      "username": "wtfsayo",
      "avatarUrl": "https://avatars.githubusercontent.com/u/82053242?u=98209a1f10456f42d4d2fa71db4d5bf4a672cbc3&v=4",
      "totalScore": 53.252675507723076,
      "prScore": 53.252675507723076,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "wtfsayo: Focused on refining existing functionality, merging a PR in elizaos-plugins/plugin-mcp (#18) that updated action names and dependencies, indicating a focus on feature work, bug fixes, and other tasks across code, documentation, and configuration files."
    },
    {
      "username": "ai16x402",
      "avatarUrl": "https://avatars.githubusercontent.com/u/241517257?u=db5e37fbc5cfc2fc78bd2de767f7235704dc2b0f&v=4",
      "totalScore": 6.476947636399186,
      "prScore": 6.476947636399186,
      "issueScore": 0,
      "reviewScore": 0,
      "commentScore": 0,
      "summary": "ai16x402: Focused on expanding plugin capabilities by opening PR elizaos-plugins/registry#237 to add a new Solana trading plugin, alongside a minor configuration update."
    }
  ],
  "newPRs": 0,
  "mergedPRs": 1,
  "newIssues": 0,
  "closedIssues": 0,
  "activeContributors": 2
}