{
  "communities": {
    "0": [
      "nextcloud_talk_bot_nextcloud_talk_bot_get_ai_reply",
      "nextcloud_talk_bot_nextcloud_talk_bot_main",
      "nextcloud_talk_bot_nextcloud_talk_bot_poll_new_messages",
      "nextcloud_talk_bot_nextcloud_talk_bot_rationale_114",
      "nextcloud_talk_bot_nextcloud_talk_bot_rationale_153",
      "nextcloud_talk_bot_py"
    ],
    "1": [
      "nextcloud_talk_bot_nextcloud_talk_bot_join_room",
      "nextcloud_talk_bot_nextcloud_talk_bot_nc_request",
      "nextcloud_talk_bot_nextcloud_talk_bot_rationale_130",
      "nextcloud_talk_bot_nextcloud_talk_bot_rationale_141",
      "nextcloud_talk_bot_nextcloud_talk_bot_rationale_93",
      "nextcloud_talk_bot_nextcloud_talk_bot_send_message"
    ],
    "2": [
      "nextcloud_talk_bot_nextcloud_talk_bot_build_system_prompt",
      "nextcloud_talk_bot_nextcloud_talk_bot_load_knowledge_base",
      "nextcloud_talk_bot_nextcloud_talk_bot_rationale_35",
      "nextcloud_talk_bot_nextcloud_talk_bot_rationale_71"
    ],
    "3": [
      "nextcloud_talk_bot_nextcloud_talk_bot_get_last_message_id",
      "nextcloud_talk_bot_nextcloud_talk_bot_rationale_107"
    ]
  },
  "cohesion": {
    "0": 0.47,
    "1": 0.4,
    "2": 0.5,
    "3": 1.0
  },
  "gods": [
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_nc_request",
      "label": "nc_request()",
      "degree": 6
    },
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_main",
      "label": "main()",
      "degree": 6
    },
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_send_message",
      "label": "send_message()",
      "degree": 5
    },
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_build_system_prompt",
      "label": "build_system_prompt()",
      "degree": 4
    },
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_get_last_message_id",
      "label": "get_last_message_id()",
      "degree": 4
    },
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_poll_new_messages",
      "label": "poll_new_messages()",
      "degree": 4
    },
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_join_room",
      "label": "join_room()",
      "degree": 4
    },
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_load_knowledge_base",
      "label": "load_knowledge_base()",
      "degree": 3
    },
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_get_ai_reply",
      "label": "get_ai_reply()",
      "degree": 3
    },
    {
      "id": "nextcloud_talk_bot_nextcloud_talk_bot_rationale_35",
      "label": "Load all .md files from knowledge-base repo into context string",
      "degree": 1
    }
  ],
  "surprises": [
    {
      "source": "build_system_prompt()",
      "target": "main()",
      "source_files": [
        "nextcloud-talk-bot.py",
        "nextcloud-talk-bot.py"
      ],
      "confidence": "EXTRACTED",
      "relation": "calls",
      "note": "Bridges community 2 \u2192 community 0"
    },
    {
      "source": "nc_request()",
      "target": "get_last_message_id()",
      "source_files": [
        "nextcloud-talk-bot.py",
        "nextcloud-talk-bot.py"
      ],
      "confidence": "EXTRACTED",
      "relation": "calls",
      "note": "Bridges community 1 \u2192 community 3"
    },
    {
      "source": "nc_request()",
      "target": "poll_new_messages()",
      "source_files": [
        "nextcloud-talk-bot.py",
        "nextcloud-talk-bot.py"
      ],
      "confidence": "EXTRACTED",
      "relation": "calls",
      "note": "Bridges community 1 \u2192 community 0"
    },
    {
      "source": "get_last_message_id()",
      "target": "main()",
      "source_files": [
        "nextcloud-talk-bot.py",
        "nextcloud-talk-bot.py"
      ],
      "confidence": "EXTRACTED",
      "relation": "calls",
      "note": "Bridges community 3 \u2192 community 0"
    }
  ],
  "tokens": {
    "input": 0,
    "output": 0
  }
}