Kord/graphify-out/GRAPH_REPORT.md

19 KiB

Graph Report - . (2026-04-09)

Corpus Check

  • 122 files · ~90,936 words
  • Verdict: corpus is large enough that graph structure adds value.

Summary

  • 384 nodes · 565 edges · 75 communities detected
  • Extraction: 65% EXTRACTED · 35% INFERRED · 0% AMBIGUOUS · INFERRED: 197 edges (avg confidence: 0.5)
  • Token cost: 0 input · 0 output

God Nodes (most connected - your core abstractions)

  1. FishingService - 55 edges
  2. MusicService - 38 edges
  3. RefinementService - 13 edges
  4. VoiceService - 8 edges
  5. 구독 티어 시스템 - 8 edges
  6. PermissionAuditService - 7 edges
  7. execute() - 6 edges
  8. InviteService - 6 edges
  9. AuditLogService - 6 edges
  10. EventService - 6 edges

Surprising Connections (you probably didn't know these)

  • None detected - all connections are within the same source files.

Communities

Community 0 - "Fishing Service (UI)"

Cohesion: 0.08 Nodes (1): FishingService

Community 1 - "Activity tracking & Audit"

Cohesion: 0.05 Nodes (3): ActivityTrackerService, FeverService, KordClient

Community 2 - "Music Service Logic"

Cohesion: 0.11 Nodes (6): extractYouTubeVideoId(), formatDuration(), isYouTubePlaylistUrl(), MusicService, parseDurationSeconds(), parseDurationTextToSeconds()

Community 3 - "I18n & Localization"

Cohesion: 0.14 Nodes (5): getNestedValue(), normalizeDiscordLocale(), resolveLocale(), StaticI18nProvider, t()

Community 4 - "Bot Errors & Exceptions"

Cohesion: 0.15 Nodes (3): BotError, ErrorReporter, withErrorHandler()

Community 5 - "Permission Audits"

Cohesion: 0.16 Nodes (4): execute(), getOverallColor(), PermissionAuditService, SetupWizardRenderer

Community 6 - "Event Scheduling"

Cohesion: 0.21 Nodes (10): buildStatusLabel(), execute(), formatReminderOffsets(), parseReminderOffsets(), parseSeoulDateTime(), toDiscordTimestamps(), buildEventEmbed(), EventService (+2 more)

Community 7 - "Refinement Economy"

Cohesion: 0.37 Nodes (1): RefinementService

Community 8 - "Emoji & Interaction"

Cohesion: 0.18 Nodes (3): BigEmojiService, MimicService, WebhookService

Community 9 - "System Architecture"

Cohesion: 0.2 Nodes (10): API Gateway, Billing & Payments, Data Persistence Layer, Centralized Logging & Monitoring, Notification System, External Payment Integration, Rate Limiting Middleware, Report Generation Engine (+2 more)

Community 10 - "Conceptual placeholders"

Cohesion: 0.2 Nodes (10): A, B, C, D, E, FishingGame, G, H (+2 more)

Community 11 - "Subscription Tiers"

Cohesion: 0.22 Nodes (9): FREE (프리), 서버, GuildOwnership, PREMIUM (프리미엄), PRO (프로), STANDARD (스탠다드), 사용자, UserSubscription (+1 more)

Community 12 - "Voice Channel Logic"

Cohesion: 0.46 Nodes (1): VoiceService

Community 13 - "Fishing Gameplay"

Cohesion: 0.33 Nodes (2): buildFishingGauge(), buildFishingLane()

Community 14 - "Invite Management"

Cohesion: 0.6 Nodes (1): InviteService

Community 15 - "Audit Logging"

Cohesion: 0.47 Nodes (1): AuditLogService

Community 16 - "Configuration & DB"

Cohesion: 0.4 Nodes (0):

Community 17 - "Mini-game Registry"

Cohesion: 0.4 Nodes (0):

Community 18 - "Bot Presence"

Cohesion: 0.67 Nodes (1): PresenceService

Community 19 - "Music Commands"

Cohesion: 0.83 Nodes (3): buildErrorMessage(), execute(), respond()

Community 20 - "Group: Database Credentials"

Cohesion: 1.0 Nodes (3): 데이터베이스 비밀번호 및 접속 주소, 디스코드 봇 토큰, 환경 변수

Community 21 - "Group: Node 1"

Cohesion: 0.67 Nodes (3): process_data, analyze_results, generate_report

Community 22 - "Group: Language"

Cohesion: 1.0 Nodes (0):

Community 23 - "Group: Jest Config"

Cohesion: 1.0 Nodes (0):

Community 24 - "Group: I18N Test"

Cohesion: 1.0 Nodes (0):

Community 25 - "Group: Temp Core Concepts"

Cohesion: 1.0 Nodes (1): Temp_Core_Concepts

Community 26 - "Group: I18N System"

Cohesion: 1.0 Nodes (1): i18n 시스템

Community 27 - "Group: Translationschema"

Cohesion: 1.0 Nodes (1): TranslationSchema

Community 28 - "Group: Src/I18N/Locales/En.Ts"

Cohesion: 1.0 Nodes (1): 영어 번역 데이터

Community 29 - "Group: Src/I18N/Locales/Ko.Ts"

Cohesion: 1.0 Nodes (1): 한국어 번역 데이터

Community 30 - "Group: Youtube Music Playback"

Cohesion: 1.0 Nodes (1): YouTube 음악 재생 기능

Community 31 - "Group: Musicservice"

Cohesion: 1.0 Nodes (1): MusicService

Community 32 - "Group: Slash Command"

Cohesion: 1.0 Nodes (1): Slash Command

Community 33 - "Group: Guildevent"

Cohesion: 1.0 Nodes (1): 이벤트 이벤트

Community 34 - "Group: Reminderoffsets"

Cohesion: 1.0 Nodes (1): 이벤트 리마인더 오프셋 목록

Community 35 - "Group: Fishing Mini Game"

Cohesion: 1.0 Nodes (1): 낚시 미니게임

Community 36 - "Group: Fishing Mini Game Registry"

Cohesion: 1.0 Nodes (1): 공용 미니게임 레지스트리

Community 37 - "Group: /Fishing Cast Command"

Cohesion: 1.0 Nodes (1): /fishing cast 명령어

Community 38 - "Group: /Fishing End Command"

Cohesion: 1.0 Nodes (1): /fishing end 명령어

Community 39 - "Group: 전용 스레드 기반 세션"

Cohesion: 1.0 Nodes (1): 전용 스레드 기반 세션

Community 40 - "Group: 메모리 기반 세션 관리"

Cohesion: 1.0 Nodes (1): 메모리 기반 세션 관리

Community 41 - "Group: 거리/끊어짐 게이지"

Cohesion: 1.0 Nodes (1): 거리/끊어짐 게이지

Community 42 - "Group: 골드 지급"

Cohesion: 1.0 Nodes (1): 골드 지급

Community 43 - "Group: Refinementprofile.Gold"

Cohesion: 1.0 Nodes (1): RefinementProfile.gold

Community 44 - "Group: Src/Commands/Fishing.Ts"

Cohesion: 1.0 Nodes (1): src/commands/fishing.ts

Community 45 - "Group: Src/Services/Fishingservice.Ts"

Cohesion: 1.0 Nodes (1): src/services/FishingService.ts

Community 46 - "Group: Src/Events/Interactioncreate.Ts"

Cohesion: 1.0 Nodes (1): src/events/interactionCreate.ts

Community 47 - "Group: Src/Services/Minigameregistry.Ts"

Cohesion: 1.0 Nodes (1): src/services/MiniGameRegistry.ts

Community 48 - "Group: Src/Services/Refinementservice.Ts"

Cohesion: 1.0 Nodes (1): src/services/RefinementService.ts

Community 49 - "Group: Src/I18N/Types.Ts"

Cohesion: 1.0 Nodes (1): src/i18n/types.ts

Community 50 - "Group: Tests/Services/Fishingservice.Test.Ts"

Cohesion: 1.0 Nodes (1): tests/services/FishingService.test.ts

Community 51 - "Group: Youtube Music Playback"

Cohesion: 1.0 Nodes (1): YouTube Music Playback

Community 52 - "Group: Pause/Resume Control"

Cohesion: 1.0 Nodes (1): pause/resume control

Community 53 - "Group: Next-Track Preview"

Cohesion: 1.0 Nodes (1): next-track preview

Community 54 - "Group: Src/Commands/Music.Ts"

Cohesion: 1.0 Nodes (1): src/commands/music.ts

Community 55 - "Group: Src/Services/Musicservice.Ts"

Cohesion: 1.0 Nodes (1): src/services/MusicService.ts

Community 56 - "Group: Error Guidance Ux"

Cohesion: 1.0 Nodes (1): 에러 안내 UX 개선

Community 57 - "Group: Boterror Class"

Cohesion: 1.0 Nodes (1): BotError 클래스

Community 58 - "Group: Errorcodes.Ts"

Cohesion: 1.0 Nodes (1): ErrorCodes.ts

Community 59 - "Group: Fishingprofile"

Cohesion: 1.0 Nodes (1): Fishing Profile (User Stats)

Community 60 - "Group: Fishingservice"

Cohesion: 1.0 Nodes (1): Fishing Service

Community 61 - "Group: /Fishing Status"

Cohesion: 1.0 Nodes (1): /fishing status command

Community 62 - "Group: Fishingcollectionentry"

Cohesion: 1.0 Nodes (1): Fishing Collection Entry

Community 63 - "Group: /Fishing Ranking"

Cohesion: 1.0 Nodes (1): /fishing ranking command

Community 64 - "Group: Permissionauditservice"

Cohesion: 1.0 Nodes (1): Permission Audit Service

Community 65 - "Group: /Audit-Permissions"

Cohesion: 1.0 Nodes (1): /audit-permissions command

Community 66 - "Group: Presenceservice"

Cohesion: 1.0 Nodes (1): Presence Service

Community 67 - "Group: Auditchannel"

Cohesion: 1.0 Nodes (1): Audit Channel Model

Community 68 - "Group: Auditlogservice"

Cohesion: 1.0 Nodes (1): Audit Log Service

Community 69 - "Group: File1"

Cohesion: 1.0 Nodes (1): file1

Community 70 - "Group: Root"

Cohesion: 1.0 Nodes (1): Root

Community 71 - "Group: Data"

Cohesion: 1.0 Nodes (1): Data

Community 72 - "Group: Model"

Cohesion: 1.0 Nodes (1): Model

Community 73 - "Group: Function A"

Cohesion: 1.0 Nodes (1): Function A

Community 74 - "Group: Function B"

Cohesion: 1.0 Nodes (1): Function B

Knowledge Gaps

  • 52 isolated node(s): 사용자, 서버, FREE (프리), STANDARD (스탠다드), PRO (프로) (+47 more) These have ≤1 connection - possible missing edges or undocumented components.
  • Thin community Group: Language (2 nodes): language.ts, execute() Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Jest Config (1 nodes): jest.config.js Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: I18N Test (1 nodes): i18n.test.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Temp Core Concepts (1 nodes): Temp_Core_Concepts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: I18N System (1 nodes): i18n 시스템 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Translationschema (1 nodes): TranslationSchema Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/I18N/Locales/En.Ts (1 nodes): 영어 번역 데이터 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/I18N/Locales/Ko.Ts (1 nodes): 한국어 번역 데이터 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Youtube Music Playback (1 nodes): YouTube 음악 재생 기능 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Musicservice (1 nodes): MusicService Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Slash Command (1 nodes): Slash Command Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Guildevent (1 nodes): 이벤트 이벤트 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Reminderoffsets (1 nodes): 이벤트 리마인더 오프셋 목록 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Fishing Mini Game (1 nodes): 낚시 미니게임 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Fishing Mini Game Registry (1 nodes): 공용 미니게임 레지스트리 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: /Fishing Cast Command (1 nodes): /fishing cast 명령어 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: /Fishing End Command (1 nodes): /fishing end 명령어 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: 전용 스레드 기반 세션 (1 nodes): 전용 스레드 기반 세션 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: 메모리 기반 세션 관리 (1 nodes): 메모리 기반 세션 관리 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: 거리/끊어짐 게이지 (1 nodes): 거리/끊어짐 게이지 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: 골드 지급 (1 nodes): 골드 지급 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Refinementprofile.Gold (1 nodes): RefinementProfile.gold Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/Commands/Fishing.Ts (1 nodes): src/commands/fishing.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/Services/Fishingservice.Ts (1 nodes): src/services/FishingService.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/Events/Interactioncreate.Ts (1 nodes): src/events/interactionCreate.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/Services/Minigameregistry.Ts (1 nodes): src/services/MiniGameRegistry.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/Services/Refinementservice.Ts (1 nodes): src/services/RefinementService.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/I18N/Types.Ts (1 nodes): src/i18n/types.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Tests/Services/Fishingservice.Test.Ts (1 nodes): tests/services/FishingService.test.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Youtube Music Playback (1 nodes): YouTube Music Playback Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Pause/Resume Control (1 nodes): pause/resume control Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Next-Track Preview (1 nodes): next-track preview Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/Commands/Music.Ts (1 nodes): src/commands/music.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Src/Services/Musicservice.Ts (1 nodes): src/services/MusicService.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Error Guidance Ux (1 nodes): 에러 안내 UX 개선 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Boterror Class (1 nodes): BotError 클래스 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Errorcodes.Ts (1 nodes): ErrorCodes.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Fishingprofile (1 nodes): Fishing Profile (User Stats) Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Fishingservice (1 nodes): Fishing Service Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: /Fishing Status (1 nodes): /fishing status command Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Fishingcollectionentry (1 nodes): Fishing Collection Entry Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: /Fishing Ranking (1 nodes): /fishing ranking command Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Permissionauditservice (1 nodes): Permission Audit Service Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: /Audit-Permissions (1 nodes): /audit-permissions command Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Presenceservice (1 nodes): Presence Service Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Auditchannel (1 nodes): Audit Channel Model Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Auditlogservice (1 nodes): Audit Log Service Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: File1 (1 nodes): file1 Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Root (1 nodes): Root Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Data (1 nodes): Data Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Model (1 nodes): Model Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Function A (1 nodes): Function A Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Group: Function B (1 nodes): Function B Too small to be a meaningful cluster - may be noise or needs more connections extracted.

Suggested Questions

Questions this graph is uniquely positioned to answer:

  • Why does FishingService connect Fishing Service (UI) to Fishing Gameplay? High betweenness centrality (0.184) - this node is a cross-community bridge.
  • Why does RefinementService connect Refinement Economy to Activity tracking & Audit? High betweenness centrality (0.045) - this node is a cross-community bridge.
  • What connects 사용자, 서버, FREE (프리) to the rest of the system? 52 weakly-connected nodes found - possible documentation gaps or missing edges.
  • Should Fishing Service (UI) be split into smaller, more focused modules? Cohesion score 0.08 - nodes in this community are weakly interconnected.
  • Should Activity tracking & Audit be split into smaller, more focused modules? Cohesion score 0.05 - nodes in this community are weakly interconnected.
  • Should Music Service Logic be split into smaller, more focused modules? Cohesion score 0.11 - nodes in this community are weakly interconnected.
  • Should I18n & Localization be split into smaller, more focused modules? Cohesion score 0.14 - nodes in this community are weakly interconnected.