{ "nodes": [ { "id": "admin_layouts_default_layout", "label": "Admin Default Layout (Sidebar + Topbar + Mobile BottomTab)", "file_type": "code", "source_file": "apps/admin/layouts/default.vue", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_layouts_default_useadminauth", "label": "useAdminAuth composable (adminEmail, logout)", "file_type": "code", "source_file": "apps/admin/layouts/default.vue", "source_location": "line 84", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_layouts_default_nav", "label": "Admin Navigation Items (Dashboard, Domains, Users, Stats, Moderation, Lyra)", "file_type": "concept", "source_file": "apps/admin/layouts/default.vue", "source_location": "lines 94-101", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_index_dashboard", "label": "Admin Dashboard Page (Quick-Links to sub-pages)", "file_type": "code", "source_file": "apps/admin/pages/index.vue", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_index_adminauth_middleware", "label": "admin-auth Nuxt Middleware (auth guard)", "file_type": "concept", "source_file": "apps/admin/pages/index.vue", "source_location": "line 44", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_moderation_page", "label": "Admin Moderation Page (reported content queue: dismiss/delete/ban)", "file_type": "code", "source_file": "apps/admin/pages/moderation.vue", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_moderation_api_queue", "label": "API /api/moderation/queue (ModerationQueueResponse)", "file_type": "concept", "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 288", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_moderation_api_dismiss", "label": "API /api/moderation/{id}/dismiss (POST)", "file_type": "concept", "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 393", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_moderation_api_delete", "label": "API /api/moderation/{id}/delete (POST, soft-delete with audit log)", "file_type": "concept", "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 436", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_moderation_api_ban", "label": "API /api/moderation/{id}/ban-user (POST)", "file_type": "concept", "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 489", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_login_page", "label": "Admin Login Page (email+password, no layout)", "file_type": "code", "source_file": "apps/admin/pages/login.vue", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_login_loginwithpassword", "label": "loginWithPassword (useAdminAuth) → navigateTo /", "file_type": "concept", "source_file": "apps/admin/pages/login.vue", "source_location": "line 63", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_domains_page", "label": "Admin Domain-Approval Page (pending blocklist domain requests)", "file_type": "code", "source_file": "apps/admin/pages/domains.vue", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_domains_api_submissions", "label": "API /api/domain-submissions (GET, DomainSubmission[])", "file_type": "concept", "source_file": "apps/admin/pages/domains.vue", "source_location": "line 287", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_domains_approve_reject", "label": "Domain Approve/Reject Actions (POST /api/domain-submissions/{id}/approve|reject)", "file_type": "concept", "source_file": "apps/admin/pages/domains.vue", "source_location": "lines 432,469", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_domains_legend_sla", "label": "Legend Plan SLA 24h for domain approval (gold urgency stripe)", "file_type": "concept", "source_file": "apps/admin/pages/domains.vue", "source_location": "lines 9,375", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_users_page", "label": "Admin User-Management Page (plan/ban/soft-delete, anonymized)", "file_type": "code", "source_file": "apps/admin/pages/users.vue", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_users_api_users", "label": "API /api/users (GET, paginated, search+plan filter)", "file_type": "concept", "source_file": "apps/admin/pages/users.vue", "source_location": "line 327", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_users_api_patch", "label": "API /api/users/{id} PATCH (plan change / ban toggle)", "file_type": "concept", "source_file": "apps/admin/pages/users.vue", "source_location": "lines 381,399", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_users_api_delete", "label": "API /api/users/{id} DELETE (DSGVO soft-delete: nickname→null, username→deleted-{id})", "file_type": "concept", "source_file": "apps/admin/pages/users.vue", "source_location": "line 419", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_users_anonymity", "label": "User anonymity enforcement (nicknames only, never email/realname)", "file_type": "concept", "source_file": "apps/admin/pages/users.vue", "source_location": "line 5", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_stats_page", "label": "Admin Stats Page (aggregated metrics, 60s auto-refresh)", "file_type": "code", "source_file": "apps/admin/pages/stats.vue", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_stats_api_stats", "label": "API /api/stats (GET, AdminStats: users/posts/domains/feedback/lyra)", "file_type": "concept", "source_file": "apps/admin/pages/stats.vue", "source_location": "line 136", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_lyra_page", "label": "Admin Lyra-Posts Page (AI-generated or manual community posts as Lyra or ReBreak bot)", "file_type": "code", "source_file": "apps/admin/pages/lyra.vue", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_lyra_api_profile", "label": "API /api/admin/lyra-profile (GET, bot nickname+avatar)", "file_type": "concept", "source_file": "apps/admin/pages/lyra.vue", "source_location": "line 221", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_lyra_api_generate", "label": "API /api/admin/lyra-generate (POST, AI content generation by topic)", "file_type": "concept", "source_file": "apps/admin/pages/lyra.vue", "source_location": "line 254", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_lyra_api_post", "label": "API /api/admin/lyra-post (POST, publish community post as bot)", "file_type": "concept", "source_file": "apps/admin/pages/lyra.vue", "source_location": "line 280", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_lyra_topics", "label": "Lyra Post Topics (motivation, CBT-tip, quote, funny, news, feature)", "file_type": "concept", "source_file": "apps/admin/pages/lyra.vue", "source_location": "lines 190-197", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "admin_pages_auth_confirm_page", "label": "Auth Confirm Page (Supabase PKCE callback, no layout)", "file_type": "code", "source_file": "apps/admin/pages/auth/confirm.vue", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "rebreak_magic_mac_build_dmg", "label": "RebreakMagic macOS DMG Build Script (xcodegen + create-dmg)", "file_type": "code", "source_file": "apps/rebreak-magic-mac/build-dmg.sh", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "rebreak_magic_mac_app_entry", "label": "RebreakMagicApp SwiftUI entry point (WizardModel, debug supervision menu)", "file_type": "code", "source_file": "apps/rebreak-magic-mac/Sources/RebreakMagicApp.swift", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "rebreak_magic_mac_wizardmodel", "label": "WizardModel (supervisionMode, resetAll/resetEnrollmentProfile/resetLockProfile/resetApp, startDebugReset)", "file_type": "concept", "source_file": "apps/rebreak-magic-mac/Sources/RebreakMagicApp.swift", "source_location": "line 5", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "rebreak_magic_mac_debug_supervision", "label": "Debug Supervision Mode menu (none/forceSupervised/forceUnsupervised)", "file_type": "concept", "source_file": "apps/rebreak-magic-mac/Sources/RebreakMagicApp.swift", "source_location": "lines 17-27", "source_url": null, "captured_at": null, "author": null, "contributor": null }, { "id": "rebreak_magic_mac_app_icon", "label": "RebreakMagic macOS App Icon (broken chain link symbol, dark navy on white, 'ReBreak' wordmark)", "file_type": "image", "source_file": "apps/rebreak-magic-mac/Sources/Resources/Assets.xcassets/AppIcon.appiconset/icon_256x256.png", "source_location": null, "source_url": null, "captured_at": null, "author": null, "contributor": null } ], "edges": [ { "source": "admin_layouts_default_layout", "target": "admin_layouts_default_useadminauth", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/layouts/default.vue", "source_location": "line 84", "weight": 1.0 }, { "source": "admin_layouts_default_layout", "target": "admin_layouts_default_nav", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/layouts/default.vue", "source_location": "lines 94-101", "weight": 1.0 }, { "source": "admin_pages_index_dashboard", "target": "admin_pages_index_adminauth_middleware", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/index.vue", "source_location": "line 44", "weight": 1.0 }, { "source": "admin_pages_index_dashboard", "target": "admin_layouts_default_nav", "relation": "conceptually_related_to", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "apps/admin/pages/index.vue", "source_location": "lines 49-85", "weight": 0.85 }, { "source": "admin_pages_moderation_page", "target": "admin_pages_index_adminauth_middleware", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 290", "weight": 1.0 }, { "source": "admin_pages_moderation_page", "target": "admin_pages_moderation_api_queue", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 302", "weight": 1.0 }, { "source": "admin_pages_moderation_page", "target": "admin_pages_moderation_api_dismiss", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 393", "weight": 1.0 }, { "source": "admin_pages_moderation_page", "target": "admin_pages_moderation_api_delete", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 436", "weight": 1.0 }, { "source": "admin_pages_moderation_page", "target": "admin_pages_moderation_api_ban", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 489", "weight": 1.0 }, { "source": "admin_pages_login_page", "target": "admin_layouts_default_useadminauth", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/login.vue", "source_location": "line 53", "weight": 1.0 }, { "source": "admin_pages_login_page", "target": "admin_pages_login_loginwithpassword", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/login.vue", "source_location": "line 64", "weight": 1.0 }, { "source": "admin_pages_domains_page", "target": "admin_pages_index_adminauth_middleware", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/domains.vue", "source_location": "line 262", "weight": 1.0 }, { "source": "admin_pages_domains_page", "target": "admin_pages_domains_api_submissions", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/domains.vue", "source_location": "line 287", "weight": 1.0 }, { "source": "admin_pages_domains_page", "target": "admin_pages_domains_approve_reject", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/domains.vue", "source_location": "lines 432,469", "weight": 1.0 }, { "source": "admin_pages_domains_page", "target": "admin_pages_domains_legend_sla", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/domains.vue", "source_location": "lines 9,372-409", "weight": 1.0 }, { "source": "admin_pages_users_page", "target": "admin_pages_index_adminauth_middleware", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/users.vue", "source_location": "line 205", "weight": 1.0 }, { "source": "admin_pages_users_page", "target": "admin_pages_users_api_users", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/users.vue", "source_location": "line 327", "weight": 1.0 }, { "source": "admin_pages_users_page", "target": "admin_pages_users_api_patch", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/users.vue", "source_location": "lines 381,399", "weight": 1.0 }, { "source": "admin_pages_users_page", "target": "admin_pages_users_api_delete", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/users.vue", "source_location": "line 419", "weight": 1.0 }, { "source": "admin_pages_users_page", "target": "admin_pages_users_anonymity", "relation": "implements", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/users.vue", "source_location": "line 5", "weight": 1.0 }, { "source": "admin_pages_stats_page", "target": "admin_pages_index_adminauth_middleware", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/stats.vue", "source_location": "line 134", "weight": 1.0 }, { "source": "admin_pages_stats_page", "target": "admin_pages_stats_api_stats", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/stats.vue", "source_location": "line 136", "weight": 1.0 }, { "source": "admin_pages_stats_page", "target": "admin_pages_domains_page", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/stats.vue", "source_location": "line 112", "weight": 0.8 }, { "source": "admin_pages_lyra_page", "target": "admin_pages_index_adminauth_middleware", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/lyra.vue", "source_location": "line 188", "weight": 1.0 }, { "source": "admin_pages_lyra_page", "target": "admin_pages_lyra_api_profile", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/lyra.vue", "source_location": "line 221", "weight": 1.0 }, { "source": "admin_pages_lyra_page", "target": "admin_pages_lyra_api_generate", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/lyra.vue", "source_location": "line 254", "weight": 1.0 }, { "source": "admin_pages_lyra_page", "target": "admin_pages_lyra_api_post", "relation": "calls", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/lyra.vue", "source_location": "line 280", "weight": 1.0 }, { "source": "admin_pages_lyra_page", "target": "admin_pages_lyra_topics", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/lyra.vue", "source_location": "lines 190-197", "weight": 1.0 }, { "source": "admin_pages_auth_confirm_page", "target": "admin_pages_login_page", "relation": "conceptually_related_to", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "apps/admin/pages/auth/confirm.vue", "source_location": "line 10", "weight": 0.85 }, { "source": "rebreak_magic_mac_app_entry", "target": "rebreak_magic_mac_wizardmodel", "relation": "references", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/rebreak-magic-mac/Sources/RebreakMagicApp.swift", "source_location": "line 5", "weight": 1.0 }, { "source": "rebreak_magic_mac_app_entry", "target": "rebreak_magic_mac_debug_supervision", "relation": "implements", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/rebreak-magic-mac/Sources/RebreakMagicApp.swift", "source_location": "lines 17-27", "weight": 1.0 }, { "source": "rebreak_magic_mac_build_dmg", "target": "rebreak_magic_mac_app_entry", "relation": "references", "confidence": "INFERRED", "confidence_score": 0.95, "source_file": "apps/rebreak-magic-mac/build-dmg.sh", "source_location": "line 103", "weight": 0.95 }, { "source": "rebreak_magic_mac_app_entry", "target": "rebreak_magic_mac_app_icon", "relation": "references", "confidence": "INFERRED", "confidence_score": 0.85, "source_file": "apps/rebreak-magic-mac/Sources/RebreakMagicApp.swift", "source_location": null, "weight": 0.85 }, { "source": "admin_pages_users_anonymity", "target": "admin_pages_moderation_page", "relation": "conceptually_related_to", "confidence": "INFERRED", "confidence_score": 0.75, "source_file": "apps/admin/pages/moderation.vue", "source_location": "line 100", "weight": 0.75 }, { "source": "admin_pages_lyra_api_generate", "target": "admin_pages_lyra_topics", "relation": "shares_data_with", "confidence": "EXTRACTED", "confidence_score": 1.0, "source_file": "apps/admin/pages/lyra.vue", "source_location": "line 260", "weight": 1.0 } ], "hyperedges": [], "input_tokens": 0, "output_tokens": 0 }