diff --git a/.gitignore b/.gitignore
index 79df4222..0e6fc586 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,11 +14,6 @@ build/
*.egg
.graphify/
graphify-out/
-# Committed evaluation artifacts under evaluations/ are intentional evidence โ keep them
-!evaluations/**/graphify-out/
-!evaluations/**/graphify-out-with-tests/
-!evaluations/**/graphify-out/**
-!evaluations/**/graphify-out-with-tests/**
.graphify_*.json
.graphify_python
.claude/
diff --git a/evaluations/README.md b/evaluations/README.md
deleted file mode 100644
index 68dc1f9a..00000000
--- a/evaluations/README.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# Graphify Evaluations
-
-Per-codebase evaluations of [graphify](https://github.com/safishamsi/graphify) โ runbook + captured artifacts + a written verdict.
-
-Each subdirectory is one evaluation:
-
-- A `runbook.md` capturing the methodology used at the time.
-- A `results.md` documenting the run output, the acid-test scoring, and the adopt / don't-adopt decision.
-- The raw `graphify-out/` directories (often two: one with tests excluded, one with tests included) so quoted findings remain auditable.
-
-## Evaluations
-
-| Codebase | Verdict | Date |
-|---|---|---|
-| [`rsl-siege-manager/`](./rsl-siege-manager/) | Do not adopt | 2026-05-15 |
-
-๐ค _Generated by Claude Code on behalf of @cbeaulieu-gt_
diff --git a/evaluations/rsl-siege-manager/graphify-out/GRAPH_REPORT.md b/evaluations/rsl-siege-manager/graphify-out/GRAPH_REPORT.md
deleted file mode 100644
index bbf1c312..00000000
--- a/evaluations/rsl-siege-manager/graphify-out/GRAPH_REPORT.md
+++ /dev/null
@@ -1,233 +0,0 @@
-# Graph Report - . (2026-05-13)
-
-## Corpus Check
-- cluster-only mode โ file stats not available
-
-## Summary
-- 833 nodes ยท 1758 edges ยท 52 communities (48 shown, 4 thin omitted)
-- Extraction: 85% EXTRACTED ยท 15% INFERRED ยท 0% AMBIGUOUS ยท INFERRED: 266 edges (avg confidence: 0.59)
-- Token cost: 0 input ยท 0 output
-
-## Graph Freshness
-- Built from commit: `6085fd66`
-- Run `git rev-parse HEAD` and compare to check if the graph is stale.
-- Run `graphify update .` after code changes (no API cost).
-
-## Community Hubs (Navigation)
-- [[_COMMUNITY_Community 0|Community 0]]
-- [[_COMMUNITY_Community 1|Community 1]]
-- [[_COMMUNITY_Community 2|Community 2]]
-- [[_COMMUNITY_Community 3|Community 3]]
-- [[_COMMUNITY_Community 4|Community 4]]
-- [[_COMMUNITY_Community 5|Community 5]]
-- [[_COMMUNITY_Community 6|Community 6]]
-- [[_COMMUNITY_Community 7|Community 7]]
-- [[_COMMUNITY_Community 8|Community 8]]
-- [[_COMMUNITY_Community 9|Community 9]]
-- [[_COMMUNITY_Community 10|Community 10]]
-- [[_COMMUNITY_Community 11|Community 11]]
-- [[_COMMUNITY_Community 12|Community 12]]
-- [[_COMMUNITY_Community 13|Community 13]]
-- [[_COMMUNITY_Community 14|Community 14]]
-- [[_COMMUNITY_Community 15|Community 15]]
-- [[_COMMUNITY_Community 16|Community 16]]
-- [[_COMMUNITY_Community 17|Community 17]]
-- [[_COMMUNITY_Community 18|Community 18]]
-- [[_COMMUNITY_Community 19|Community 19]]
-- [[_COMMUNITY_Community 20|Community 20]]
-- [[_COMMUNITY_Community 21|Community 21]]
-- [[_COMMUNITY_Community 22|Community 22]]
-- [[_COMMUNITY_Community 23|Community 23]]
-- [[_COMMUNITY_Community 24|Community 24]]
-- [[_COMMUNITY_Community 25|Community 25]]
-- [[_COMMUNITY_Community 26|Community 26]]
-- [[_COMMUNITY_Community 27|Community 27]]
-- [[_COMMUNITY_Community 28|Community 28]]
-- [[_COMMUNITY_Community 29|Community 29]]
-- [[_COMMUNITY_Community 30|Community 30]]
-- [[_COMMUNITY_Community 31|Community 31]]
-- [[_COMMUNITY_Community 32|Community 32]]
-- [[_COMMUNITY_Community 33|Community 33]]
-- [[_COMMUNITY_Community 34|Community 34]]
-- [[_COMMUNITY_Community 37|Community 37]]
-
-## God Nodes (most connected - your core abstractions)
-1. `SiegeMember` - 55 edges
-2. `BoardPage()` - 53 edges
-3. `Post Suggestions Modal Handoff` - 40 edges
-4. `postsTab` - 29 edges
-5. `cn()` - 29 edges
-6. `PostsPage()` - 28 edges
-7. `BuildingType` - 27 edges
-8. `MembersPage()` - 27 edges
-9. `MemberRole` - 25 edges
-10. `Self-Host on Azure Wiki Page` - 23 edges
-
-## Surprising Connections (you probably didn't know these)
-- `A single post assignment suggestion produced by the greedy algorithm. Attri` --rationale_for--> `PostSuggestionEntry Schema` [EXTRACTED]
- backend/app/schemas/post_suggestions.py โ docs/superpowers/plans/2026-05-09-post-suggestions.md
-- `Post Suggestions Modal Handoff` --calls--> `cn()` [EXTRACTED]
- docs/design-refs/post-suggestions/README.md โ frontend/src/lib/utils.ts
-- `Discord OAuth2 Authentication Spec` --semantically_similar_to--> `Discord OAuth2 Auth Flow` [INFERRED] [semantically similar]
- docs/WEB_DESIGN_DOCUMENT.md โ CLAUDE.md
-- `AuthError` --uses--> `Member` [INFERRED]
- backend/app/api/auth.py โ frontend/src/api/types.ts
-- `PostPriorityResponse` --uses--> `PostPriorityConfig` [INFERRED]
- backend/app/api/post_priority_config.py โ frontend/src/api/posts.ts
-
-## Communities (52 total, 4 thin omitted)
-
-### Community 0 - "Community 0"
-Cohesion: 0.05
-Nodes (112): getBoard(), add_group(), generate_images(), Image generation endpoints., Generate PNG images for siege assignments and members list., getNotificationBatch(), notifySiegeMembers(), postToChannel() (+104 more)
-
-### Community 1 - "Community 1"
-Cohesion: 0.06
-Nodes (67): getMember(), getMemberRoles(), getPostConditions(), updateMemberPreferences(), getSiege(), getSiegeMembers(), getSieges(), MemberRoleInfo (+59 more)
-
-### Community 2 - "Community 2"
-Cohesion: 0.05
-Nodes (55): API router for the Suggest Post Assignments feature. Routes: POST /sieges/{, Generate a greedy post-assignment suggestion preview. Args: siege_i, Apply a caller-filtered subset of the stored preview atomically. Uses SELEC, activateSiege(), applyAttackDay(), applyAutofill(), applyPostSuggestions(), compareSiegesSpecific() (+47 more)
-
-### Community 3 - "Community 3"
-Cohesion: 0.05
-Nodes (52): asyncpg, FastAPI, OpenTelemetry / Azure Monitor, Playwright (backend dep), PyJWT, Backend Requirements, slowapi, SQLAlchemy (+44 more)
-
-### Community 4 - "Community 4"
-Cohesion: 0.06
-Nodes (41): PostSuggestionStaleEntry, ChangeCell(), Classification, classify(), ExpiryCountdown, OutcomeFilter, Pill(), PRIORITY_META (+33 more)
-
-### Community 5 - "Community 5"
-Cohesion: 0.09
-Nodes (45): Application Insights, scripts/bootstrap-images.ps1, Caddy Reverse Proxy, .github/workflows/deploy.yml, Discord OAuth2, GitHub Actions CI/CD, .github/workflows/infra-deploy.yml, Azure Managed Identity (+37 more)
-
-### Community 6 - "Community 6"
-Cohesion: 0.06
-Nodes (36): health(), createMember(), get_member(), getMemberPreferences(), updateMember(), Send DMs for each member and record results in a fresh DB session., _send_dms(), Find member by username in the guild, open DM, send message. (+28 more)
-
-### Community 7 - "Community 7"
-Cohesion: 0.08
-Nodes (27): lifespan(), main(), FastAPI application factory and middleware wiring., Run the FastAPI/uvicorn HTTP sidecar on port 8001., Connect and run the Discord client., Start both the Discord client and HTTP server concurrently., Application lifespan โ runs startup guards before serving requests., run_discord_client() (+19 more)
-
-### Community 8 - "Community 8"
-Cohesion: 0.1
-Nodes (17): downgrade(), initial schema Revision ID: 0001 Revises: Create Date: 2026-03-16, upgrade(), add autofill and attack day preview columns to siege Revision ID: 0002 Revises:, make siege date nullable Revision ID: 0003 Revises: 0002 Create Date: 2026-03-1, Add post_priority_config table, Add description to post_priority_config, Replace power with power_level, drop sort_value (+9 more)
-
-### Community 9 - "Community 9"
-Cohesion: 0.1
-Nodes (24): AuthError, callback(), _check_guild_membership(), _error_redirect(), _exchange_code_for_token(), _get_discord_user(), login(), logout() (+16 more)
-
-### Community 10 - "Community 10"
-Cohesion: 0.12
-Nodes (17): apiAddBuilding(), apiCreateMember(), apiCreateSiege(), autofillBtn, buildingsTab, chevron, firstPositionSpan, positionCell (+9 more)
-
-### Community 11 - "Community 11"
-Cohesion: 0.17
-Nodes (14): add_building(), delete_group(), deleteBuilding(), getBuildings(), updateBuilding(), get_team_count(), Return the theoretical total team slots for a building type at a given level., _create_groups_and_positions() (+6 more)
-
-### Community 12 - "Community 12"
-Cohesion: 0.16
-Nodes (15): VersionInfo, _fetch_bot_version(), getVersion(), Return a version string for the backend. When both BUILD_NUMBER and GIT_SHA, Call the bot sidecar's /version endpoint. Returns None if unreachable., Return version information for all components., _read_backend_version(), useVersion() (+7 more)
-
-### Community 13 - "Community 13"
-Cohesion: 0.13
-Nodes (9): BUILDING_LABELS, BuildingColorClass, ActiveTab, BoardPage(), BUILDING_TYPE_ORDER, ROLE_CHIP_COLORS, ROLE_COLORS, ROLE_FILTER_OPTIONS (+1 more)
-
-### Community 14 - "Community 14"
-Cohesion: 0.16
-Nodes (11): getSiegeMemberPreferences(), DuplicateConditionMap, findPostPosition(), MemberWithMatches, postsTab, priorityBadgeColor(), priorityLabel(), POWER_LABELS (+3 more)
-
-### Community 15 - "Community 15"
-Cohesion: 0.19
-Nodes (13): build_member_notification_message(), _build_section(), _position_label(), _position_sort_key(), _positions_from_keys(), _positions_to_key_set(), Build rich per-member Discord DM messages for siege assignment notifications., Convert a list of PositionInfo objects to a set of comparable tuples. (+5 more)
-
-### Community 16 - "Community 16"
-Cohesion: 0.26
-Nodes (12): list_posts(), Build a PostResponse-compatible dict, denormalizing building_number from the rel, _serialize_post(), setPostConditions(), updatePost(), Update a single position's assignment. Raises: 404 if position not, _validate_member_active(), _get_post_for_siege_or_404() (+4 more)
-
-### Community 17 - "Community 17"
-Cohesion: 0.23
-Nodes (11): _build_assignments_html(), _build_reserves_html(), generate_assignments_image(), generate_reserves_image(), Image generation service โ renders HTML/CSS to PNG via Playwright., Build the reserves/members list HTML string. Args: members: Siege m, Render an HTML string to PNG bytes using headless Chromium., Render the assignments board as a PNG. Returns raw PNG bytes. (+3 more)
-
-### Community 18 - "Community 18"
-Cohesion: 0.25
-Nodes (10): get_changelog_status(), markChangelogSeen(), Changelog status and mark-seen endpoints. These endpoints let the frontend trac, Raise HTTP 400 if the caller is a service principal. Args: current_, Return the authenticated user's last-seen changelog timestamp. Args:, Set the authenticated user's last-seen changelog timestamp to now. Idempote, _require_member_session(), ChangelogStatusResponse (+2 more)
-
-### Community 19 - "Community 19"
-Cohesion: 0.22
-Nodes (5): Carousel(), CarouselProps, CarouselSlide, COLORS, SLIDES
-
-### Community 20 - "Community 20"
-Cohesion: 0.24
-Nodes (7): AppConfig, fetchConfig(), Layout(), navLinkClass(), RequireAuth(), useAuth(), LandingOrSieges()
-
-### Community 21 - "Community 21"
-Cohesion: 0.22
-Nodes (7): compareSieges(), ComparisonResult, MemberDiff, PositionKey, _load_assignments(), _load_member_names(), Return {member_id: [PositionKey, ...]} for non-reserve, non-disabled assigned po
-
-### Community 22 - "Community 22"
-Cohesion: 0.24
-Nodes (9): _get_client_ip(), _parse_retry_after_seconds(), rate_limit_exceeded_handler(), _rate_limit_key(), Rate-limiting utilities shared across the application. This module owns the sin, Composite key function that honours the AUTH_DISABLED bypass. When ``AUTH_D, Parse a slowapi rate-limit detail string into a window size in seconds. slo, Return a JSON 429 response with a ``Retry-After`` header. Replaces slowapi' (+1 more)
-
-### Community 23 - "Community 23"
-Cohesion: 0.22
-Nodes (8): DropdownMenuCheckboxItem, DropdownMenuItem, DropdownMenuLabel, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut(), DropdownMenuSubContent, DropdownMenuSubTrigger
-
-### Community 24 - "Community 24"
-Cohesion: 0.22
-Nodes (8): Endpoints for Discord guild member โ clan member sync., Return proposed Discord โ clan member matches without writing to the DB., Apply accepted sync matches, updating discord_username and discord_id., applyDiscordSync(), previewDiscordSync(), Service logic for Discord guild member โ clan member matching., Return proposed matches between Discord guild members and clan members. Mat, Apply accepted sync matches, writing discord_username and discord_id. Unkno
-
-### Community 25 - "Community 25"
-Cohesion: 0.33
-Nodes (5): AuthContext, AuthContextValue, AuthProvider(), AuthUser, queryClient
-
-### Community 26 - "Community 26"
-Cohesion: 0.4
-Nodes (3): ChangelogStatus, fetchChangelogStatus(), DropdownMenuContent
-
-### Community 27 - "Community 27"
-Cohesion: 0.33
-Nodes (4): apiClient, ERROR_MESSAGES, LoginPage(), MEMBERSHIP_ERRORS
-
-### Community 28 - "Community 28"
-Cohesion: 0.33
-Nodes (5): get_config(), Public config endpoint โ exposes non-sensitive runtime flags to the frontend., Return public runtime configuration flags. This endpoint is intentionally u, Settings, BaseSettings
-
-### Community 31 - "Community 31"
-Cohesion: 0.5
-Nodes (3): configure_telemetry(), Application Insights / OpenTelemetry initialisation for the backend. Call ``con, Initialise Azure Monitor OpenTelemetry and instrument the app. The ``azure-
-
-### Community 33 - "Community 33"
-Cohesion: 0.5
-Nodes (3): getPostPriorities(), getPosts(), updatePostPriority()
-
-### Community 34 - "Community 34"
-Cohesion: 0.5
-Nodes (4): bulk_update_positions(), Apply multiple position updates in a single transaction. Each update dict m, Validate the logical consistency of position flag combinations., _validate_position_state()
-
-## Ambiguous Edges - Review These
-- `bootstrap-images.ps1` โ `scripts/bootstrap-images.ps1` [AMBIGUOUS]
- wiki/Self-Host-on-Azure.md ยท relation: semantically_similar_to
-
-## Knowledge Gaps
-- **259 isolated node(s):** `initial schema Revision ID: 0001 Revises: Create Date: 2026-03-16`, `add autofill and attack day preview columns to siege Revision ID: 0002 Revises:`, `make siege date nullable Revision ID: 0003 Revises: 0002 Create Date: 2026-03-1`, `Add post_priority_config table`, `Add description to post_priority_config` (+254 more)
- These have โค1 connection - possible missing edges or undocumented components.
-- **4 thin communities (<3 nodes) omitted from report** โ run `graphify query` to explore isolated nodes.
-
-## Suggested Questions
-_Questions this graph is uniquely positioned to answer:_
-
-- **What is the exact relationship between `bootstrap-images.ps1` and `scripts/bootstrap-images.ps1`?**
- _Edge tagged AMBIGUOUS (relation: semantically_similar_to) - confidence is low._
-- **Why does `Post Suggestions Modal Handoff` connect `Community 4` to `Community 0`, `Community 1`, `Community 2`, `Community 3`, `Community 14`?**
- _High betweenness centrality (0.257) - this node is a cross-community bridge._
-- **Why does `Web Design Document` connect `Community 4` to `Community 3`?**
- _High betweenness centrality (0.131) - this node is a cross-community bridge._
-- **Are the 13 inferred relationships involving `SiegeMember` (e.g. with `Base` and `Member`) actually correct?**
- _`SiegeMember` has 13 INFERRED edges - model-reasoned connections that need verification._
-- **Are the 3 inferred relationships involving `Post Suggestions Modal Handoff` (e.g. with `Suggest Post Assignments Feature` and `Post Data Model`) actually correct?**
- _`Post Suggestions Modal Handoff` has 3 INFERRED edges - model-reasoned connections that need verification._
-- **What connects `initial schema Revision ID: 0001 Revises: Create Date: 2026-03-16`, `add autofill and attack day preview columns to siege Revision ID: 0002 Revises:`, `make siege date nullable Revision ID: 0003 Revises: 0002 Create Date: 2026-03-1` to the rest of the system?**
- _259 weakly-connected nodes found - possible documentation gaps or missing edges._
-- **Should `Community 0` be split into smaller, more focused modules?**
- _Cohesion score 0.05 - nodes in this community are weakly interconnected._
\ No newline at end of file
diff --git a/evaluations/rsl-siege-manager/graphify-out/graph.html b/evaluations/rsl-siege-manager/graphify-out/graph.html
deleted file mode 100644
index 5c00b42e..00000000
--- a/evaluations/rsl-siege-manager/graphify-out/graph.html
+++ /dev/null
@@ -1,305 +0,0 @@
-
-
-
-
-graphify - graphify-out\graph.html
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/evaluations/rsl-siege-manager/graphify-out/graph.json b/evaluations/rsl-siege-manager/graphify-out/graph.json
deleted file mode 100644
index 68208834..00000000
--- a/evaluations/rsl-siege-manager/graphify-out/graph.json
+++ /dev/null
@@ -1,26177 +0,0 @@
-{
- "directed": false,
- "multigraph": false,
- "graph": {},
- "nodes": [
- {
- "label": "env.py",
- "file_type": "code",
- "source_file": "backend/alembic/env.py",
- "source_location": "L1",
- "community": 29,
- "norm_label": "env.py",
- "id": "backend_alembic_env_py"
- },
- {
- "label": "run_migrations_offline()",
- "file_type": "code",
- "source_file": "backend/alembic/env.py",
- "source_location": "L24",
- "community": 29,
- "norm_label": "run_migrations_offline()",
- "id": "alembic_env_run_migrations_offline"
- },
- {
- "label": "do_run_migrations()",
- "file_type": "code",
- "source_file": "backend/alembic/env.py",
- "source_location": "L36",
- "community": 29,
- "norm_label": "do_run_migrations()",
- "id": "alembic_env_do_run_migrations"
- },
- {
- "label": "run_async_migrations()",
- "file_type": "code",
- "source_file": "backend/alembic/env.py",
- "source_location": "L42",
- "community": 29,
- "norm_label": "run_async_migrations()",
- "id": "alembic_env_run_async_migrations"
- },
- {
- "label": "run_migrations_online()",
- "file_type": "code",
- "source_file": "backend/alembic/env.py",
- "source_location": "L53",
- "community": 29,
- "norm_label": "run_migrations_online()",
- "id": "alembic_env_run_migrations_online"
- },
- {
- "label": "0001_initial_schema.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0001_initial_schema.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0001_initial_schema.py",
- "id": "backend_alembic_versions_0001_initial_schema_py"
- },
- {
- "label": "upgrade()",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0001_initial_schema.py",
- "source_location": "L19",
- "community": 8,
- "norm_label": "upgrade()",
- "id": "versions_0001_initial_schema_upgrade"
- },
- {
- "label": "downgrade()",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0001_initial_schema.py",
- "source_location": "L273",
- "community": 8,
- "norm_label": "downgrade()",
- "id": "versions_0001_initial_schema_downgrade"
- },
- {
- "label": "initial schema Revision ID: 0001 Revises: Create Date: 2026-03-16",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0001_initial_schema.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "initial schema revision id: 0001 revises: create date: 2026-03-16",
- "id": "versions_0001_initial_schema_rationale_1"
- },
- {
- "label": "0002_add_preview_columns.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0002_add_preview_columns.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0002_add_preview_columns.py",
- "id": "backend_alembic_versions_0002_add_preview_columns_py"
- },
- {
- "label": "add autofill and attack day preview columns to siege Revision ID: 0002 Revises:",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0002_add_preview_columns.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "add autofill and attack day preview columns to siege revision id: 0002 revises:",
- "id": "versions_0002_add_preview_columns_rationale_1"
- },
- {
- "label": "0003_make_siege_date_nullable.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0003_make_siege_date_nullable.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0003_make_siege_date_nullable.py",
- "id": "backend_alembic_versions_0003_make_siege_date_nullable_py"
- },
- {
- "label": "make siege date nullable Revision ID: 0003 Revises: 0002 Create Date: 2026-03-1",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0003_make_siege_date_nullable.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "make siege date nullable revision id: 0003 revises: 0002 create date: 2026-03-1",
- "id": "versions_0003_make_siege_date_nullable_rationale_1"
- },
- {
- "label": "0004_add_post_priority_config.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0004_add_post_priority_config.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0004_add_post_priority_config.py",
- "id": "backend_alembic_versions_0004_add_post_priority_config_py"
- },
- {
- "label": "Add post_priority_config table",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0004_add_post_priority_config.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "add post_priority_config table",
- "id": "versions_0004_add_post_priority_config_rationale_1"
- },
- {
- "label": "0005_add_description_to_post_priority_config.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0005_add_description_to_post_priority_config.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0005_add_description_to_post_priority_config.py",
- "id": "backend_alembic_versions_0005_add_description_to_post_priority_config_py"
- },
- {
- "label": "Add description to post_priority_config",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0005_add_description_to_post_priority_config.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "add description to post_priority_config",
- "id": "versions_0005_add_description_to_post_priority_config_rationale_1"
- },
- {
- "label": "0006_power_level_and_drop_sort_value.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0006_power_level_and_drop_sort_value.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0006_power_level_and_drop_sort_value.py",
- "id": "backend_alembic_versions_0006_power_level_and_drop_sort_value_py"
- },
- {
- "label": "Replace power with power_level, drop sort_value",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0006_power_level_and_drop_sort_value.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "replace power with power_level, drop sort_value",
- "id": "versions_0006_power_level_and_drop_sort_value_rationale_1"
- },
- {
- "label": "0007_fix_group_number_max.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0007_fix_group_number_max.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0007_fix_group_number_max.py",
- "id": "backend_alembic_versions_0007_fix_group_number_max_py"
- },
- {
- "label": "Raise group_number_range constraint max from 9 to 10 Stronghold at level 6 requ",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0007_fix_group_number_max.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "raise group_number_range constraint max from 9 to 10 stronghold at level 6 requ",
- "id": "versions_0007_fix_group_number_max_rationale_1"
- },
- {
- "label": "0008_add_matched_condition_id_to_position.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0008_add_matched_condition_id_to_position.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0008_add_matched_condition_id_to_position.py",
- "id": "backend_alembic_versions_0008_add_matched_condition_id_to_position_py"
- },
- {
- "label": "Add matched_condition_id to position Tracks which PostCondition a member was ma",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0008_add_matched_condition_id_to_position.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "add matched_condition_id to position tracks which postcondition a member was ma",
- "id": "versions_0008_add_matched_condition_id_to_position_rationale_1"
- },
- {
- "label": "0009_add_discord_id_to_member.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0009_add_discord_id_to_member.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0009_add_discord_id_to_member.py",
- "id": "backend_alembic_versions_0009_add_discord_id_to_member_py"
- },
- {
- "label": "Add discord_id to member Stores the Discord snowflake ID for each clan member,",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0009_add_discord_id_to_member.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "add discord_id to member stores the discord snowflake id for each clan member,",
- "id": "versions_0009_add_discord_id_to_member_rationale_1"
- },
- {
- "label": "0010_add_last_seen_changelog_at_to_member.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0010_add_last_seen_changelog_at_to_member.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0010_add_last_seen_changelog_at_to_member.py",
- "id": "backend_alembic_versions_0010_add_last_seen_changelog_at_to_member_py"
- },
- {
- "label": "Add last_seen_changelog_at to member Tracks the timestamp of the last changelog",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0010_add_last_seen_changelog_at_to_member.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "add last_seen_changelog_at to member tracks the timestamp of the last changelog",
- "id": "versions_0010_add_last_seen_changelog_at_to_member_rationale_1"
- },
- {
- "label": "Add nullable last_seen_changelog_at column to the member table.",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0010_add_last_seen_changelog_at_to_member.py",
- "source_location": "L25",
- "community": 8,
- "norm_label": "add nullable last_seen_changelog_at column to the member table.",
- "id": "versions_0010_add_last_seen_changelog_at_to_member_rationale_25"
- },
- {
- "label": "Remove last_seen_changelog_at column from the member table.",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0010_add_last_seen_changelog_at_to_member.py",
- "source_location": "L33",
- "community": 8,
- "norm_label": "remove last_seen_changelog_at column from the member table.",
- "id": "versions_0010_add_last_seen_changelog_at_to_member_rationale_33"
- },
- {
- "label": "0011_add_post_suggest_preview.py",
- "file_type": "code",
- "source_file": "backend/alembic/versions/0011_add_post_suggest_preview.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "0011_add_post_suggest_preview.py",
- "id": "backend_alembic_versions_0011_add_post_suggest_preview_py"
- },
- {
- "label": "Add post_suggest_preview columns to siege table. Mirrors the autofill_preview /",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0011_add_post_suggest_preview.py",
- "source_location": "L1",
- "community": 8,
- "norm_label": "add post_suggest_preview columns to siege table. mirrors the autofill_preview /",
- "id": "versions_0011_add_post_suggest_preview_rationale_1"
- },
- {
- "label": "Add post_suggest_preview and post_suggest_preview_expires_at columns.",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0011_add_post_suggest_preview.py",
- "source_location": "L23",
- "community": 8,
- "norm_label": "add post_suggest_preview and post_suggest_preview_expires_at columns.",
- "id": "versions_0011_add_post_suggest_preview_rationale_23"
- },
- {
- "label": "Drop post_suggest_preview and post_suggest_preview_expires_at columns.",
- "file_type": "rationale",
- "source_file": "backend/alembic/versions/0011_add_post_suggest_preview.py",
- "source_location": "L34",
- "community": 8,
- "norm_label": "drop post_suggest_preview and post_suggest_preview_expires_at columns.",
- "id": "versions_0011_add_post_suggest_preview_rationale_34"
- },
- {
- "label": "Settings",
- "file_type": "code",
- "source_file": "backend/app/config.py",
- "source_location": "L4",
- "community": 28,
- "norm_label": "settings",
- "id": "app_config_settings"
- },
- {
- "label": "BaseSettings",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "community": 28,
- "norm_label": "basesettings",
- "id": "basesettings"
- },
- {
- "label": "lifespan()",
- "file_type": "code",
- "source_file": "backend/app/main.py",
- "source_location": "L47",
- "community": 7,
- "norm_label": "lifespan()",
- "id": "app_main_lifespan"
- },
- {
- "label": "FastAPI application factory and middleware wiring.",
- "file_type": "rationale",
- "source_file": "backend/app/main.py",
- "source_location": "L1",
- "community": 7,
- "norm_label": "fastapi application factory and middleware wiring.",
- "id": "app_main_rationale_1"
- },
- {
- "label": "Application lifespan \u2014 runs startup guards before serving requests.",
- "file_type": "rationale",
- "source_file": "backend/app/main.py",
- "source_location": "L48",
- "community": 7,
- "norm_label": "application lifespan \u2014 runs startup guards before serving requests.",
- "id": "app_main_rationale_48"
- },
- {
- "label": "middleware.py",
- "file_type": "code",
- "source_file": "backend/app/middleware.py",
- "source_location": "L1",
- "community": 30,
- "norm_label": "middleware.py",
- "id": "backend_app_middleware_py"
- },
- {
- "label": "RequestLoggingMiddleware",
- "file_type": "code",
- "source_file": "backend/app/middleware.py",
- "source_location": "L12",
- "community": 30,
- "norm_label": "requestloggingmiddleware",
- "id": "app_middleware_requestloggingmiddleware"
- },
- {
- "label": "BaseHTTPMiddleware",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "community": 30,
- "norm_label": "basehttpmiddleware",
- "id": "basehttpmiddleware"
- },
- {
- "label": ".dispatch()",
- "file_type": "code",
- "source_file": "backend/app/middleware.py",
- "source_location": "L13",
- "community": 30,
- "norm_label": ".dispatch()",
- "id": "app_middleware_requestloggingmiddleware_dispatch"
- },
- {
- "label": "rate_limit.py",
- "file_type": "code",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L1",
- "community": 22,
- "norm_label": "rate_limit.py",
- "id": "backend_app_rate_limit_py"
- },
- {
- "label": "_get_client_ip()",
- "file_type": "code",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L52",
- "community": 22,
- "norm_label": "_get_client_ip()",
- "id": "app_rate_limit_get_client_ip"
- },
- {
- "label": "_rate_limit_key()",
- "file_type": "code",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L154",
- "community": 22,
- "norm_label": "_rate_limit_key()",
- "id": "app_rate_limit_rate_limit_key"
- },
- {
- "label": "_parse_retry_after_seconds()",
- "file_type": "code",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L179",
- "community": 22,
- "norm_label": "_parse_retry_after_seconds()",
- "id": "app_rate_limit_parse_retry_after_seconds"
- },
- {
- "label": "rate_limit_exceeded_handler()",
- "file_type": "code",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L217",
- "community": 22,
- "norm_label": "rate_limit_exceeded_handler()",
- "id": "app_rate_limit_rate_limit_exceeded_handler"
- },
- {
- "label": "Rate-limiting utilities shared across the application. This module owns the sin",
- "file_type": "rationale",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L1",
- "community": 22,
- "norm_label": "rate-limiting utilities shared across the application. this module owns the sin",
- "id": "app_rate_limit_rationale_1"
- },
- {
- "label": "Extract the real client IP from X-Forwarded-For for rate bucketing. Reads t",
- "file_type": "rationale",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L53",
- "community": 22,
- "norm_label": "extract the real client ip from x-forwarded-for for rate bucketing. reads t",
- "id": "app_rate_limit_rationale_53"
- },
- {
- "label": "Composite key function that honours the AUTH_DISABLED bypass. When ``AUTH_D",
- "file_type": "rationale",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L155",
- "community": 22,
- "norm_label": "composite key function that honours the auth_disabled bypass. when ``auth_d",
- "id": "app_rate_limit_rationale_155"
- },
- {
- "label": "Parse a slowapi rate-limit detail string into a window size in seconds. slo",
- "file_type": "rationale",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L180",
- "community": 22,
- "norm_label": "parse a slowapi rate-limit detail string into a window size in seconds. slo",
- "id": "app_rate_limit_rationale_180"
- },
- {
- "label": "Return a JSON 429 response with a ``Retry-After`` header. Replaces slowapi'",
- "file_type": "rationale",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L218",
- "community": 22,
- "norm_label": "return a json 429 response with a ``retry-after`` header. replaces slowapi'",
- "id": "app_rate_limit_rationale_218"
- },
- {
- "label": "configure_telemetry()",
- "file_type": "code",
- "source_file": "backend/app/telemetry.py",
- "source_location": "L28",
- "community": 31,
- "norm_label": "configure_telemetry()",
- "id": "app_telemetry_configure_telemetry"
- },
- {
- "label": "Application Insights / OpenTelemetry initialisation for the backend. Call ``con",
- "file_type": "rationale",
- "source_file": "backend/app/telemetry.py",
- "source_location": "L1",
- "community": 31,
- "norm_label": "application insights / opentelemetry initialisation for the backend. call ``con",
- "id": "app_telemetry_rationale_1"
- },
- {
- "label": "Initialise Azure Monitor OpenTelemetry and instrument the app. The ``azure-",
- "file_type": "rationale",
- "source_file": "backend/app/telemetry.py",
- "source_location": "L32",
- "community": 31,
- "norm_label": "initialise azure monitor opentelemetry and instrument the app. the ``azure-",
- "id": "app_telemetry_rationale_32"
- },
- {
- "label": "attack_day.py",
- "file_type": "code",
- "source_file": "backend/app/api/attack_day.py",
- "source_location": "L1",
- "community": 2,
- "norm_label": "attack_day.py",
- "id": "backend_app_api_attack_day_py"
- },
- {
- "label": "auth.py",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L1",
- "community": 9,
- "norm_label": "auth.py",
- "id": "backend_app_api_auth_py"
- },
- {
- "label": "AuthError",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L27",
- "community": 9,
- "norm_label": "autherror",
- "id": "api_auth_autherror"
- },
- {
- "label": "_exchange_code_for_token()",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L41",
- "community": 9,
- "norm_label": "_exchange_code_for_token()",
- "id": "api_auth_exchange_code_for_token"
- },
- {
- "label": "_get_discord_user()",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L59",
- "community": 9,
- "norm_label": "_get_discord_user()",
- "id": "api_auth_get_discord_user"
- },
- {
- "label": "_check_guild_membership()",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L70",
- "community": 9,
- "norm_label": "_check_guild_membership()",
- "id": "api_auth_check_guild_membership"
- },
- {
- "label": "login()",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L77",
- "community": 9,
- "norm_label": "login()",
- "id": "api_auth_login"
- },
- {
- "label": "callback()",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L112",
- "community": 9,
- "norm_label": "callback()",
- "id": "api_auth_callback"
- },
- {
- "label": "logout()",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L203",
- "community": 9,
- "norm_label": "logout()",
- "id": "api_auth_logout"
- },
- {
- "label": "me()",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L210",
- "community": 9,
- "norm_label": "me()",
- "id": "api_auth_me"
- },
- {
- "label": "_error_redirect()",
- "file_type": "code",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L222",
- "community": 9,
- "norm_label": "_error_redirect()",
- "id": "api_auth_error_redirect"
- },
- {
- "label": "Discord OAuth2 authentication endpoints.",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L1",
- "community": 9,
- "norm_label": "discord oauth2 authentication endpoints.",
- "id": "api_auth_rationale_1"
- },
- {
- "label": "Error codes returned in login redirect query parameters.",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L28",
- "community": 9,
- "norm_label": "error codes returned in login redirect query parameters.",
- "id": "api_auth_rationale_28"
- },
- {
- "label": "Exchange an authorization code for a Discord access token.",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L42",
- "community": 9,
- "norm_label": "exchange an authorization code for a discord access token.",
- "id": "api_auth_rationale_42"
- },
- {
- "label": "Fetch the authenticated Discord user's profile (identify scope).",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L60",
- "community": 9,
- "norm_label": "fetch the authenticated discord user's profile (identify scope).",
- "id": "api_auth_rationale_60"
- },
- {
- "label": "Check guild membership via the bot sidecar. Raises on connection failure.",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L71",
- "community": 9,
- "norm_label": "check guild membership via the bot sidecar. raises on connection failure.",
- "id": "api_auth_rationale_71"
- },
- {
- "label": "Initiate Discord OAuth2 flow. Generates a CSRF state token, stores it in a",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L78",
- "community": 9,
- "norm_label": "initiate discord oauth2 flow. generates a csrf state token, stores it in a",
- "id": "api_auth_rationale_78"
- },
- {
- "label": "Handle Discord OAuth2 callback. Validates CSRF state, exchanges the authori",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L118",
- "community": 9,
- "norm_label": "handle discord oauth2 callback. validates csrf state, exchanges the authori",
- "id": "api_auth_rationale_118"
- },
- {
- "label": "Clear the session cookie, ending the user's session.",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L204",
- "community": 9,
- "norm_label": "clear the session cookie, ending the user's session.",
- "id": "api_auth_rationale_204"
- },
- {
- "label": "Return identity information for the currently authenticated caller.",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L213",
- "community": 9,
- "norm_label": "return identity information for the currently authenticated caller.",
- "id": "api_auth_rationale_213"
- },
- {
- "label": "Return a redirect to the login page with an error query parameter.",
- "file_type": "rationale",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L223",
- "community": 9,
- "norm_label": "return a redirect to the login page with an error query parameter.",
- "id": "api_auth_rationale_223"
- },
- {
- "label": "autofill.py",
- "file_type": "code",
- "source_file": "backend/app/api/autofill.py",
- "source_location": "L1",
- "community": 2,
- "norm_label": "autofill.py",
- "id": "backend_app_api_autofill_py"
- },
- {
- "label": "board.py",
- "file_type": "code",
- "source_file": "backend/app/api/board.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "board.py",
- "id": "backend_app_api_board_py"
- },
- {
- "label": "bulk_update_positions()",
- "file_type": "code",
- "source_file": "backend/app/api/board.py",
- "source_location": "L38",
- "community": 34,
- "norm_label": "bulk_update_positions()",
- "id": "api_board_bulk_update_positions"
- },
- {
- "label": "buildings.py",
- "file_type": "code",
- "source_file": "backend/app/api/buildings.py",
- "source_location": "L1",
- "community": 11,
- "norm_label": "buildings.py",
- "id": "backend_app_api_buildings_py"
- },
- {
- "label": "list_buildings()",
- "file_type": "code",
- "source_file": "backend/app/api/buildings.py",
- "source_location": "L18",
- "community": 11,
- "norm_label": "list_buildings()",
- "id": "api_buildings_list_buildings"
- },
- {
- "label": "add_building()",
- "file_type": "code",
- "source_file": "backend/app/api/buildings.py",
- "source_location": "L26",
- "community": 11,
- "norm_label": "add_building()",
- "id": "api_buildings_add_building"
- },
- {
- "label": "add_group()",
- "file_type": "code",
- "source_file": "backend/app/api/buildings.py",
- "source_location": "L59",
- "community": 0,
- "norm_label": "add_group()",
- "id": "api_buildings_add_group"
- },
- {
- "label": "delete_group()",
- "file_type": "code",
- "source_file": "backend/app/api/buildings.py",
- "source_location": "L69",
- "community": 11,
- "norm_label": "delete_group()",
- "id": "api_buildings_delete_group"
- },
- {
- "label": "changelog.py",
- "file_type": "code",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L1",
- "community": 18,
- "norm_label": "changelog.py",
- "id": "backend_app_api_changelog_py"
- },
- {
- "label": "_require_member_session()",
- "file_type": "code",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L24",
- "community": 18,
- "norm_label": "_require_member_session()",
- "id": "api_changelog_require_member_session"
- },
- {
- "label": "get_changelog_status()",
- "file_type": "code",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L43",
- "community": 18,
- "norm_label": "get_changelog_status()",
- "id": "api_changelog_get_changelog_status"
- },
- {
- "label": "Changelog status and mark-seen endpoints. These endpoints let the frontend trac",
- "file_type": "rationale",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L1",
- "community": 18,
- "norm_label": "changelog status and mark-seen endpoints. these endpoints let the frontend trac",
- "id": "api_changelog_rationale_1"
- },
- {
- "label": "Raise HTTP 400 if the caller is a service principal. Args: current_",
- "file_type": "rationale",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L25",
- "community": 18,
- "norm_label": "raise http 400 if the caller is a service principal. args: current_",
- "id": "api_changelog_rationale_25"
- },
- {
- "label": "Return the authenticated user's last-seen changelog timestamp. Args:",
- "file_type": "rationale",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L47",
- "community": 18,
- "norm_label": "return the authenticated user's last-seen changelog timestamp. args:",
- "id": "api_changelog_rationale_47"
- },
- {
- "label": "Set the authenticated user's last-seen changelog timestamp to now. Idempote",
- "file_type": "rationale",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L73",
- "community": 18,
- "norm_label": "set the authenticated user's last-seen changelog timestamp to now. idempote",
- "id": "api_changelog_rationale_73"
- },
- {
- "label": "comparison.py",
- "file_type": "code",
- "source_file": "backend/app/api/comparison.py",
- "source_location": "L1",
- "community": 21,
- "norm_label": "comparison.py",
- "id": "backend_app_api_comparison_py"
- },
- {
- "label": "compare_with_most_recent()",
- "file_type": "code",
- "source_file": "backend/app/api/comparison.py",
- "source_location": "L14",
- "community": 21,
- "norm_label": "compare_with_most_recent()",
- "id": "api_comparison_compare_with_most_recent"
- },
- {
- "label": "compare_with_specific()",
- "file_type": "code",
- "source_file": "backend/app/api/comparison.py",
- "source_location": "L31",
- "community": 21,
- "norm_label": "compare_with_specific()",
- "id": "api_comparison_compare_with_specific"
- },
- {
- "label": "get_config()",
- "file_type": "code",
- "source_file": "backend/app/api/config.py",
- "source_location": "L11",
- "community": 28,
- "norm_label": "get_config()",
- "id": "api_config_get_config"
- },
- {
- "label": "Public config endpoint \u2014 exposes non-sensitive runtime flags to the frontend.",
- "file_type": "rationale",
- "source_file": "backend/app/api/config.py",
- "source_location": "L1",
- "community": 28,
- "norm_label": "public config endpoint \u2014 exposes non-sensitive runtime flags to the frontend.",
- "id": "api_config_rationale_1"
- },
- {
- "label": "Return public runtime configuration flags. This endpoint is intentionally u",
- "file_type": "rationale",
- "source_file": "backend/app/api/config.py",
- "source_location": "L12",
- "community": 28,
- "norm_label": "return public runtime configuration flags. this endpoint is intentionally u",
- "id": "api_config_rationale_12"
- },
- {
- "label": "discord_sync.py",
- "file_type": "code",
- "source_file": "backend/app/api/discord_sync.py",
- "source_location": "L1",
- "community": 24,
- "norm_label": "discord_sync.py",
- "id": "backend_app_api_discord_sync_py"
- },
- {
- "label": "Endpoints for Discord guild member \u2194 clan member sync.",
- "file_type": "rationale",
- "source_file": "backend/app/api/discord_sync.py",
- "source_location": "L1",
- "community": 24,
- "norm_label": "endpoints for discord guild member \u2194 clan member sync.",
- "id": "api_discord_sync_rationale_1"
- },
- {
- "label": "Return proposed Discord \u2194 clan member matches without writing to the DB.",
- "file_type": "rationale",
- "source_file": "backend/app/api/discord_sync.py",
- "source_location": "L17",
- "community": 24,
- "norm_label": "return proposed discord \u2194 clan member matches without writing to the db.",
- "id": "api_discord_sync_rationale_17"
- },
- {
- "label": "Apply accepted sync matches, updating discord_username and discord_id.",
- "file_type": "rationale",
- "source_file": "backend/app/api/discord_sync.py",
- "source_location": "L26",
- "community": 24,
- "norm_label": "apply accepted sync matches, updating discord_username and discord_id.",
- "id": "api_discord_sync_rationale_26"
- },
- {
- "label": "health.py",
- "file_type": "code",
- "source_file": "backend/app/api/health.py",
- "source_location": "L1",
- "community": 6,
- "norm_label": "health.py",
- "id": "backend_app_api_health_py"
- },
- {
- "label": "health()",
- "file_type": "code",
- "source_file": "backend/app/api/health.py",
- "source_location": "L11",
- "community": 6,
- "norm_label": "health()",
- "id": "api_health_health"
- },
- {
- "label": "images.py",
- "file_type": "code",
- "source_file": "backend/app/api/images.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "images.py",
- "id": "backend_app_api_images_py"
- },
- {
- "label": "BaseModel",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "community": 0,
- "norm_label": "basemodel",
- "id": "basemodel"
- },
- {
- "label": "generate_images()",
- "file_type": "code",
- "source_file": "backend/app/api/images.py",
- "source_location": "L31",
- "community": 0,
- "norm_label": "generate_images()",
- "id": "api_images_generate_images"
- },
- {
- "label": "Image generation endpoints.",
- "file_type": "rationale",
- "source_file": "backend/app/api/images.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "image generation endpoints.",
- "id": "api_images_rationale_1"
- },
- {
- "label": "Generate PNG images for siege assignments and members list.",
- "file_type": "rationale",
- "source_file": "backend/app/api/images.py",
- "source_location": "L35",
- "community": 0,
- "norm_label": "generate png images for siege assignments and members list.",
- "id": "api_images_rationale_35"
- },
- {
- "label": "lifecycle.py",
- "file_type": "code",
- "source_file": "backend/app/api/lifecycle.py",
- "source_location": "L1",
- "community": 2,
- "norm_label": "lifecycle.py",
- "id": "backend_app_api_lifecycle_py"
- },
- {
- "label": "members.py",
- "file_type": "code",
- "source_file": "backend/app/api/members.py",
- "source_location": "L1",
- "community": 6,
- "norm_label": "members.py",
- "id": "backend_app_api_members_py"
- },
- {
- "label": "list_members()",
- "file_type": "code",
- "source_file": "backend/app/api/members.py",
- "source_location": "L18",
- "community": 6,
- "norm_label": "list_members()",
- "id": "api_members_list_members"
- },
- {
- "label": "get_member()",
- "file_type": "code",
- "source_file": "backend/app/api/members.py",
- "source_location": "L34",
- "community": 6,
- "norm_label": "get_member()",
- "id": "api_members_get_member"
- },
- {
- "label": "delete_member()",
- "file_type": "code",
- "source_file": "backend/app/api/members.py",
- "source_location": "L51",
- "community": 6,
- "norm_label": "delete_member()",
- "id": "api_members_delete_member"
- },
- {
- "label": "notifications.py",
- "file_type": "code",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "notifications.py",
- "id": "backend_app_api_notifications_py"
- },
- {
- "label": "_send_dms()",
- "file_type": "code",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L64",
- "community": 6,
- "norm_label": "_send_dms()",
- "id": "api_notifications_send_dms"
- },
- {
- "label": "Notification endpoints \u2014 send DMs and post images to Discord.",
- "file_type": "rationale",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "notification endpoints \u2014 send dms and post images to discord.",
- "id": "api_notifications_rationale_1"
- },
- {
- "label": "Send DMs for each member and record results in a fresh DB session.",
- "file_type": "rationale",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L65",
- "community": 6,
- "norm_label": "send dms for each member and record results in a fresh db session.",
- "id": "api_notifications_rationale_65"
- },
- {
- "label": "Send DM notifications to all siege members asynchronously.",
- "file_type": "rationale",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L142",
- "community": 0,
- "norm_label": "send dm notifications to all siege members asynchronously.",
- "id": "api_notifications_rationale_142"
- },
- {
- "label": "Get the status and results of a notification batch.",
- "file_type": "rationale",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L310",
- "community": 0,
- "norm_label": "get the status and results of a notification batch.",
- "id": "api_notifications_rationale_310"
- },
- {
- "label": "Generate images and post them + a summary message to Discord channels.",
- "file_type": "rationale",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L371",
- "community": 0,
- "norm_label": "generate images and post them + a summary message to discord channels.",
- "id": "api_notifications_rationale_371"
- },
- {
- "label": "posts.py",
- "file_type": "code",
- "source_file": "backend/app/api/posts.py",
- "source_location": "L1",
- "community": 16,
- "norm_label": "posts.py",
- "id": "backend_app_api_posts_py"
- },
- {
- "label": "_serialize_post()",
- "file_type": "code",
- "source_file": "backend/app/api/posts.py",
- "source_location": "L12",
- "community": 16,
- "norm_label": "_serialize_post()",
- "id": "api_posts_serialize_post"
- },
- {
- "label": "list_posts()",
- "file_type": "code",
- "source_file": "backend/app/api/posts.py",
- "source_location": "L29",
- "community": 16,
- "norm_label": "list_posts()",
- "id": "api_posts_list_posts"
- },
- {
- "label": "Build a PostResponse-compatible dict, denormalizing building_number from the rel",
- "file_type": "rationale",
- "source_file": "backend/app/api/posts.py",
- "source_location": "L13",
- "community": 16,
- "norm_label": "build a postresponse-compatible dict, denormalizing building_number from the rel",
- "id": "api_posts_rationale_13"
- },
- {
- "label": "PostPriorityResponse",
- "file_type": "code",
- "source_file": "backend/app/api/post_priority_config.py",
- "source_location": "L12",
- "community": 0,
- "norm_label": "postpriorityresponse",
- "id": "api_post_priority_config_postpriorityresponse"
- },
- {
- "label": "PostPriorityUpdate",
- "file_type": "code",
- "source_file": "backend/app/api/post_priority_config.py",
- "source_location": "L20",
- "community": 0,
- "norm_label": "postpriorityupdate",
- "id": "api_post_priority_config_postpriorityupdate"
- },
- {
- "label": "list_post_priorities()",
- "file_type": "code",
- "source_file": "backend/app/api/post_priority_config.py",
- "source_location": "L26",
- "community": 0,
- "norm_label": "list_post_priorities()",
- "id": "api_post_priority_config_list_post_priorities"
- },
- {
- "label": "post_suggestions.py",
- "file_type": "code",
- "source_file": "backend/app/api/post_suggestions.py",
- "source_location": "L1",
- "community": 2,
- "norm_label": "post_suggestions.py",
- "id": "backend_app_api_post_suggestions_py"
- },
- {
- "label": "API router for the Suggest Post Assignments feature. Routes: POST /sieges/{",
- "file_type": "rationale",
- "source_file": "backend/app/api/post_suggestions.py",
- "source_location": "L1",
- "community": 2,
- "norm_label": "api router for the suggest post assignments feature. routes: post /sieges/{",
- "id": "api_post_suggestions_rationale_1"
- },
- {
- "label": "Generate a greedy post-assignment suggestion preview. Args: siege_i",
- "file_type": "rationale",
- "source_file": "backend/app/api/post_suggestions.py",
- "source_location": "L37",
- "community": 2,
- "norm_label": "generate a greedy post-assignment suggestion preview. args: siege_i",
- "id": "api_post_suggestions_rationale_37"
- },
- {
- "label": "Apply a caller-filtered subset of the stored preview atomically. Uses SELEC",
- "file_type": "rationale",
- "source_file": "backend/app/api/post_suggestions.py",
- "source_location": "L62",
- "community": 2,
- "norm_label": "apply a caller-filtered subset of the stored preview atomically. uses selec",
- "id": "api_post_suggestions_rationale_62"
- },
- {
- "label": "reference.py",
- "file_type": "code",
- "source_file": "backend/app/api/reference.py",
- "source_location": "L1",
- "community": 1,
- "norm_label": "reference.py",
- "id": "backend_app_api_reference_py"
- },
- {
- "label": "sieges.py",
- "file_type": "code",
- "source_file": "backend/app/api/sieges.py",
- "source_location": "L1",
- "community": 2,
- "norm_label": "sieges.py",
- "id": "backend_app_api_sieges_py"
- },
- {
- "label": "list_sieges()",
- "file_type": "code",
- "source_file": "backend/app/api/sieges.py",
- "source_location": "L13",
- "community": 2,
- "norm_label": "list_sieges()",
- "id": "api_sieges_list_sieges"
- },
- {
- "label": "get_siege()",
- "file_type": "code",
- "source_file": "backend/app/api/sieges.py",
- "source_location": "L40",
- "community": 2,
- "norm_label": "get_siege()",
- "id": "api_sieges_get_siege"
- },
- {
- "label": "delete_siege()",
- "file_type": "code",
- "source_file": "backend/app/api/sieges.py",
- "source_location": "L65",
- "community": 2,
- "norm_label": "delete_siege()",
- "id": "api_sieges_delete_siege"
- },
- {
- "label": "SiegeMemberCreate",
- "file_type": "code",
- "source_file": "backend/app/api/siege_members.py",
- "source_location": "L12",
- "community": 0,
- "norm_label": "siegemembercreate",
- "id": "api_siege_members_siegemembercreate"
- },
- {
- "label": "list_siege_members()",
- "file_type": "code",
- "source_file": "backend/app/api/siege_members.py",
- "source_location": "L28",
- "community": 1,
- "norm_label": "list_siege_members()",
- "id": "api_siege_members_list_siege_members"
- },
- {
- "label": "validation.py",
- "file_type": "code",
- "source_file": "backend/app/api/validation.py",
- "source_location": "L1",
- "community": 2,
- "norm_label": "validation.py",
- "id": "backend_app_api_validation_py"
- },
- {
- "label": "_read_backend_version()",
- "file_type": "code",
- "source_file": "backend/app/api/version.py",
- "source_location": "L19",
- "community": 12,
- "norm_label": "_read_backend_version()",
- "id": "api_version_read_backend_version"
- },
- {
- "label": "_fetch_bot_version()",
- "file_type": "code",
- "source_file": "backend/app/api/version.py",
- "source_location": "L42",
- "community": 12,
- "norm_label": "_fetch_bot_version()",
- "id": "api_version_fetch_bot_version"
- },
- {
- "label": "Return a version string for the backend. When both BUILD_NUMBER and GIT_SHA",
- "file_type": "rationale",
- "source_file": "backend/app/api/version.py",
- "source_location": "L20",
- "community": 12,
- "norm_label": "return a version string for the backend. when both build_number and git_sha",
- "id": "api_version_rationale_20"
- },
- {
- "label": "Call the bot sidecar's /version endpoint. Returns None if unreachable.",
- "file_type": "rationale",
- "source_file": "backend/app/api/version.py",
- "source_location": "L43",
- "community": 12,
- "norm_label": "call the bot sidecar's /version endpoint. returns none if unreachable.",
- "id": "api_version_rationale_43"
- },
- {
- "label": "Return version information for all components.",
- "file_type": "rationale",
- "source_file": "backend/app/api/version.py",
- "source_location": "L57",
- "community": 12,
- "norm_label": "return version information for all components.",
- "id": "api_version_rationale_57"
- },
- {
- "label": "base.py",
- "file_type": "code",
- "source_file": "backend/app/db/base.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "base.py",
- "id": "backend_app_db_base_py"
- },
- {
- "label": "DeclarativeBase",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "community": 0,
- "norm_label": "declarativebase",
- "id": "declarativebase"
- },
- {
- "label": "seeds.py",
- "file_type": "code",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L1",
- "community": 7,
- "norm_label": "seeds.py",
- "id": "backend_app_db_seeds_py"
- },
- {
- "label": "seed_post_conditions()",
- "file_type": "code",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L7",
- "community": 7,
- "norm_label": "seed_post_conditions()",
- "id": "db_seeds_seed_post_conditions"
- },
- {
- "label": "seed_building_type_config()",
- "file_type": "code",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L63",
- "community": 7,
- "norm_label": "seed_building_type_config()",
- "id": "db_seeds_seed_building_type_config"
- },
- {
- "label": "seed_post_priority_config()",
- "file_type": "code",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L91",
- "community": 7,
- "norm_label": "seed_post_priority_config()",
- "id": "db_seeds_seed_post_priority_config"
- },
- {
- "label": "Seed functions for reference/static data tables.",
- "file_type": "rationale",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L1",
- "community": 7,
- "norm_label": "seed functions for reference/static data tables.",
- "id": "db_seeds_rationale_1"
- },
- {
- "label": "Insert all 36 PostCondition rows. Safe to re-run (ON CONFLICT DO NOTHING).",
- "file_type": "rationale",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L8",
- "community": 7,
- "norm_label": "insert all 36 postcondition rows. safe to re-run (on conflict do nothing).",
- "id": "db_seeds_rationale_8"
- },
- {
- "label": "Insert all 5 BuildingTypeConfig rows. Safe to re-run (ON CONFLICT DO NOTHING).",
- "file_type": "rationale",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L64",
- "community": 7,
- "norm_label": "insert all 5 buildingtypeconfig rows. safe to re-run (on conflict do nothing).",
- "id": "db_seeds_rationale_64"
- },
- {
- "label": "Insert all 18 PostPriorityConfig rows with default priority=2. Safe to re-r",
- "file_type": "rationale",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L92",
- "community": 7,
- "norm_label": "insert all 18 postpriorityconfig rows with default priority=2. safe to re-r",
- "id": "db_seeds_rationale_92"
- },
- {
- "label": "session.py",
- "file_type": "code",
- "source_file": "backend/app/db/session.py",
- "source_location": "L1",
- "community": 35,
- "norm_label": "session.py",
- "id": "backend_app_db_session_py"
- },
- {
- "label": "get_db()",
- "file_type": "code",
- "source_file": "backend/app/db/session.py",
- "source_location": "L12",
- "community": 35,
- "norm_label": "get_db()",
- "id": "db_session_get_db"
- },
- {
- "label": "AuthenticatedUser",
- "file_type": "code",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L23",
- "community": 9,
- "norm_label": "authenticateduser",
- "id": "dependencies_auth_authenticateduser"
- },
- {
- "label": "get_current_user()",
- "file_type": "code",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L33",
- "community": 9,
- "norm_label": "get_current_user()",
- "id": "dependencies_auth_get_current_user"
- },
- {
- "label": "FastAPI dependency for request authentication. Checks three paths in order: 1.",
- "file_type": "rationale",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L1",
- "community": 9,
- "norm_label": "fastapi dependency for request authentication. checks three paths in order: 1.",
- "id": "dependencies_auth_rationale_1"
- },
- {
- "label": "Represents the currently authenticated user or service principal.",
- "file_type": "rationale",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L24",
- "community": 9,
- "norm_label": "represents the currently authenticated user or service principal.",
- "id": "dependencies_auth_rationale_24"
- },
- {
- "label": "Resolve the caller's identity from the incoming request. Tries three mechan",
- "file_type": "rationale",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L37",
- "community": 9,
- "norm_label": "resolve the caller's identity from the incoming request. tries three mechan",
- "id": "dependencies_auth_rationale_37"
- },
- {
- "label": "Base",
- "file_type": "code",
- "source_file": "",
- "source_location": "",
- "community": 0,
- "norm_label": "base",
- "id": "base"
- },
- {
- "label": "BuildingGroup",
- "file_type": "code",
- "source_file": "backend/app/models/building_group.py",
- "source_location": "L13",
- "community": 0,
- "norm_label": "buildinggroup",
- "id": "models_building_group_buildinggroup"
- },
- {
- "label": "building_type_config.py",
- "file_type": "code",
- "source_file": "backend/app/models/building_type_config.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "building_type_config.py",
- "id": "backend_app_models_building_type_config_py"
- },
- {
- "label": "enums.py",
- "file_type": "code",
- "source_file": "backend/app/models/enums.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "enums.py",
- "id": "backend_app_models_enums_py"
- },
- {
- "label": "PowerLevel",
- "file_type": "code",
- "source_file": "backend/app/models/enums.py",
- "source_location": "L25",
- "community": 0,
- "norm_label": "powerlevel",
- "id": "models_enums_powerlevel"
- },
- {
- "label": "NotificationBatchStatus",
- "file_type": "code",
- "source_file": "backend/app/models/enums.py",
- "source_location": "L33",
- "community": 0,
- "norm_label": "notificationbatchstatus",
- "id": "models_enums_notificationbatchstatus"
- },
- {
- "label": "member.py",
- "file_type": "code",
- "source_file": "backend/app/models/member.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "member.py",
- "id": "backend_app_models_member_py"
- },
- {
- "label": "member_post_preference.py",
- "file_type": "code",
- "source_file": "backend/app/models/member_post_preference.py",
- "source_location": "L1",
- "community": 38,
- "norm_label": "member_post_preference.py",
- "id": "backend_app_models_member_post_preference_py"
- },
- {
- "label": "notification_batch_result.py",
- "file_type": "code",
- "source_file": "backend/app/models/notification_batch_result.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "notification_batch_result.py",
- "id": "backend_app_models_notification_batch_result_py"
- },
- {
- "label": "position.py",
- "file_type": "code",
- "source_file": "backend/app/models/position.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "position.py",
- "id": "backend_app_models_position_py"
- },
- {
- "label": "Position",
- "file_type": "code",
- "source_file": "backend/app/models/position.py",
- "source_location": "L14",
- "community": 0,
- "norm_label": "position",
- "id": "models_position_position"
- },
- {
- "label": "post.py",
- "file_type": "code",
- "source_file": "backend/app/models/post.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "post.py",
- "id": "backend_app_models_post_py"
- },
- {
- "label": "post_active_condition.py",
- "file_type": "code",
- "source_file": "backend/app/models/post_active_condition.py",
- "source_location": "L1",
- "community": 39,
- "norm_label": "post_active_condition.py",
- "id": "backend_app_models_post_active_condition_py"
- },
- {
- "label": "siege.py",
- "file_type": "code",
- "source_file": "backend/app/models/siege.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "siege.py",
- "id": "backend_app_models_siege_py"
- },
- {
- "label": "PositionBoardResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L6",
- "community": 0,
- "norm_label": "positionboardresponse",
- "id": "schemas_board_positionboardresponse"
- },
- {
- "label": "GroupBoardResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L17",
- "community": 0,
- "norm_label": "groupboardresponse",
- "id": "schemas_board_groupboardresponse"
- },
- {
- "label": "BuildingBoardResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L25",
- "community": 0,
- "norm_label": "buildingboardresponse",
- "id": "schemas_board_buildingboardresponse"
- },
- {
- "label": "PositionUpdate",
- "file_type": "code",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L40",
- "community": 0,
- "norm_label": "positionupdate",
- "id": "schemas_board_positionupdate"
- },
- {
- "label": "BulkPositionUpdate",
- "file_type": "code",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L47",
- "community": 0,
- "norm_label": "bulkpositionupdate",
- "id": "schemas_board_bulkpositionupdate"
- },
- {
- "label": "BuildingCreate",
- "file_type": "code",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L6",
- "community": 0,
- "norm_label": "buildingcreate",
- "id": "schemas_building_buildingcreate"
- },
- {
- "label": "BuildingUpdate",
- "file_type": "code",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L12",
- "community": 0,
- "norm_label": "buildingupdate",
- "id": "schemas_building_buildingupdate"
- },
- {
- "label": "GroupCreate",
- "file_type": "code",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L43",
- "community": 0,
- "norm_label": "groupcreate",
- "id": "schemas_building_groupcreate"
- },
- {
- "label": "ChangelogStatusResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/changelog.py",
- "source_location": "L8",
- "community": 18,
- "norm_label": "changelogstatusresponse",
- "id": "schemas_changelog_changelogstatusresponse"
- },
- {
- "label": "Response schemas for the changelog endpoints.",
- "file_type": "rationale",
- "source_file": "backend/app/schemas/changelog.py",
- "source_location": "L1",
- "community": 18,
- "norm_label": "response schemas for the changelog endpoints.",
- "id": "schemas_changelog_rationale_1"
- },
- {
- "label": "Response shape for both GET /changelog/status and POST /changelog/mark-seen.",
- "file_type": "rationale",
- "source_file": "backend/app/schemas/changelog.py",
- "source_location": "L9",
- "community": 18,
- "norm_label": "response shape for both get /changelog/status and post /changelog/mark-seen.",
- "id": "schemas_changelog_rationale_9"
- },
- {
- "label": "common.py",
- "file_type": "code",
- "source_file": "backend/app/schemas/common.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "common.py",
- "id": "backend_app_schemas_common_py"
- },
- {
- "label": "ErrorResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/common.py",
- "source_location": "L4",
- "community": 0,
- "norm_label": "errorresponse",
- "id": "schemas_common_errorresponse"
- },
- {
- "label": "MemberBase",
- "file_type": "code",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L8",
- "community": 0,
- "norm_label": "memberbase",
- "id": "schemas_member_memberbase"
- },
- {
- "label": "MemberCreate",
- "file_type": "code",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L15",
- "community": 0,
- "norm_label": "membercreate",
- "id": "schemas_member_membercreate"
- },
- {
- "label": "MemberUpdate",
- "file_type": "code",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L19",
- "community": 0,
- "norm_label": "memberupdate",
- "id": "schemas_member_memberupdate"
- },
- {
- "label": "MemberResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L27",
- "community": 0,
- "norm_label": "memberresponse",
- "id": "schemas_member_memberresponse"
- },
- {
- "label": "MemberPreferencesUpdate",
- "file_type": "code",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L35",
- "community": 0,
- "norm_label": "memberpreferencesupdate",
- "id": "schemas_member_memberpreferencesupdate"
- },
- {
- "label": "SyncApply",
- "file_type": "code",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L59",
- "community": 0,
- "norm_label": "syncapply",
- "id": "schemas_member_syncapply"
- },
- {
- "label": "SyncApplyResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L65",
- "community": 0,
- "norm_label": "syncapplyresponse",
- "id": "schemas_member_syncapplyresponse"
- },
- {
- "label": "PostResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L6",
- "community": 0,
- "norm_label": "postresponse",
- "id": "schemas_post_postresponse"
- },
- {
- "label": "PostUpdate",
- "file_type": "code",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L17",
- "community": 0,
- "norm_label": "postupdate",
- "id": "schemas_post_postupdate"
- },
- {
- "label": "PostConditionsUpdate",
- "file_type": "code",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L22",
- "community": 0,
- "norm_label": "postconditionsupdate",
- "id": "schemas_post_postconditionsupdate"
- },
- {
- "label": "PostConditionResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/post_condition.py",
- "source_location": "L4",
- "community": 0,
- "norm_label": "postconditionresponse",
- "id": "schemas_post_condition_postconditionresponse"
- },
- {
- "label": "PostSuggestionApplyRequest",
- "file_type": "code",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L79",
- "community": 2,
- "norm_label": "postsuggestionapplyrequest",
- "id": "schemas_post_suggestions_postsuggestionapplyrequest"
- },
- {
- "label": "StaleEntry",
- "file_type": "code",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L91",
- "community": 2,
- "norm_label": "staleentry",
- "id": "schemas_post_suggestions_staleentry"
- },
- {
- "label": "Pydantic schemas for the Suggest Post Assignments feature. These schemas define",
- "file_type": "rationale",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L1",
- "community": 2,
- "norm_label": "pydantic schemas for the suggest post assignments feature. these schemas define",
- "id": "schemas_post_suggestions_rationale_1"
- },
- {
- "label": "A single post assignment suggestion produced by the greedy algorithm. Attri",
- "file_type": "rationale",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L13",
- "community": 4,
- "norm_label": "a single post assignment suggestion produced by the greedy algorithm. attri",
- "id": "schemas_post_suggestions_rationale_13"
- },
- {
- "label": "The full preview result returned by POST /post-suggestions. Attributes:",
- "file_type": "rationale",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L66",
- "community": 2,
- "norm_label": "the full preview result returned by post /post-suggestions. attributes:",
- "id": "schemas_post_suggestions_rationale_66"
- },
- {
- "label": "Request body for POST /post-suggestions/apply. Attributes: apply_po",
- "file_type": "rationale",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L80",
- "community": 2,
- "norm_label": "request body for post /post-suggestions/apply. attributes: apply_po",
- "id": "schemas_post_suggestions_rationale_80"
- },
- {
- "label": "A single stale-state violation detected during apply revalidation. Attribut",
- "file_type": "rationale",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L92",
- "community": 2,
- "norm_label": "a single stale-state violation detected during apply revalidation. attribut",
- "id": "schemas_post_suggestions_rationale_92"
- },
- {
- "label": "Response body for a successful POST /post-suggestions/apply. Attributes:",
- "file_type": "rationale",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L117",
- "community": 2,
- "norm_label": "response body for a successful post /post-suggestions/apply. attributes:",
- "id": "schemas_post_suggestions_rationale_117"
- },
- {
- "label": "SiegeCreate",
- "file_type": "code",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L8",
- "community": 0,
- "norm_label": "siegecreate",
- "id": "schemas_siege_siegecreate"
- },
- {
- "label": "SiegeUpdate",
- "file_type": "code",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L12",
- "community": 0,
- "norm_label": "siegeupdate",
- "id": "schemas_siege_siegeupdate"
- },
- {
- "label": "SiegeResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L16",
- "community": 0,
- "norm_label": "siegeresponse",
- "id": "schemas_siege_siegeresponse"
- },
- {
- "label": "SiegeMemberResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L6",
- "community": 0,
- "norm_label": "siegememberresponse",
- "id": "schemas_siege_member_siegememberresponse"
- },
- {
- "label": "resolve_member_fields()",
- "file_type": "code",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L19",
- "community": 1,
- "norm_label": "resolve_member_fields()",
- "id": "schemas_siege_member_resolve_member_fields"
- },
- {
- "label": "SiegeMemberUpdate",
- "file_type": "code",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L27",
- "community": 0,
- "norm_label": "siegememberupdate",
- "id": "schemas_siege_member_siegememberupdate"
- },
- {
- "label": "VersionResponse",
- "file_type": "code",
- "source_file": "backend/app/schemas/version.py",
- "source_location": "L4",
- "community": 12,
- "norm_label": "versionresponse",
- "id": "schemas_version_versionresponse"
- },
- {
- "label": "_build_preview()",
- "file_type": "code",
- "source_file": "backend/app/services/attack_day.py",
- "source_location": "L114",
- "community": 2,
- "norm_label": "_build_preview()",
- "id": "services_attack_day_build_preview"
- },
- {
- "label": "_now_utc()",
- "file_type": "code",
- "source_file": "backend/app/services/autofill.py",
- "source_location": "L23",
- "community": 2,
- "norm_label": "_now_utc()",
- "id": "services_autofill_now_utc"
- },
- {
- "label": "_get_siege_for_position()",
- "file_type": "code",
- "source_file": "backend/app/services/board.py",
- "source_location": "L89",
- "community": 0,
- "norm_label": "_get_siege_for_position()",
- "id": "services_board_get_siege_for_position"
- },
- {
- "label": "_validate_position_state()",
- "file_type": "code",
- "source_file": "backend/app/services/board.py",
- "source_location": "L97",
- "community": 34,
- "norm_label": "_validate_position_state()",
- "id": "services_board_validate_position_state"
- },
- {
- "label": "_validate_member_active()",
- "file_type": "code",
- "source_file": "backend/app/services/board.py",
- "source_location": "L112",
- "community": 16,
- "norm_label": "_validate_member_active()",
- "id": "services_board_validate_member_active"
- },
- {
- "label": "Return the full nested board structure for a siege. Raises 404 if the siege",
- "file_type": "rationale",
- "source_file": "backend/app/services/board.py",
- "source_location": "L16",
- "community": 0,
- "norm_label": "return the full nested board structure for a siege. raises 404 if the siege",
- "id": "services_board_rationale_16"
- },
- {
- "label": "Validate the logical consistency of position flag combinations.",
- "file_type": "rationale",
- "source_file": "backend/app/services/board.py",
- "source_location": "L98",
- "community": 34,
- "norm_label": "validate the logical consistency of position flag combinations.",
- "id": "services_board_rationale_98"
- },
- {
- "label": "Update a single position's assignment. Raises: 404 if position not",
- "file_type": "rationale",
- "source_file": "backend/app/services/board.py",
- "source_location": "L123",
- "community": 16,
- "norm_label": "update a single position's assignment. raises: 404 if position not",
- "id": "services_board_rationale_123"
- },
- {
- "label": "Apply multiple position updates in a single transaction. Each update dict m",
- "file_type": "rationale",
- "source_file": "backend/app/services/board.py",
- "source_location": "L172",
- "community": 34,
- "norm_label": "apply multiple position updates in a single transaction. each update dict m",
- "id": "services_board_rationale_172"
- },
- {
- "label": "BotClient",
- "file_type": "code",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L8",
- "community": 6,
- "norm_label": "botclient",
- "id": "services_bot_client_botclient"
- },
- {
- "label": "._make_client()",
- "file_type": "code",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L11",
- "community": 6,
- "norm_label": "._make_client()",
- "id": "services_bot_client_botclient_make_client"
- },
- {
- "label": "HTTP client for the Discord bot sidecar API.",
- "file_type": "rationale",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L1",
- "community": 6,
- "norm_label": "http client for the discord bot sidecar api.",
- "id": "services_bot_client_rationale_1"
- },
- {
- "label": "Send DM via bot. Returns True on success, False on error.",
- "file_type": "rationale",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L19",
- "community": 6,
- "norm_label": "send dm via bot. returns true on success, false on error.",
- "id": "services_bot_client_rationale_19"
- },
- {
- "label": "Post text to channel. Returns True on success, False on error.",
- "file_type": "rationale",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L32",
- "community": 6,
- "norm_label": "post text to channel. returns true on success, false on error.",
- "id": "services_bot_client_rationale_32"
- },
- {
- "label": "Post image to channel. Returns the CDN URL on success, None on error.",
- "file_type": "rationale",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L45",
- "community": 6,
- "norm_label": "post image to channel. returns the cdn url on success, none on error.",
- "id": "services_bot_client_rationale_45"
- },
- {
- "label": "Check guild membership via bot sidecar. Returns the member dict (includi",
- "file_type": "rationale",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L72",
- "community": 6,
- "norm_label": "check guild membership via bot sidecar. returns the member dict (includi",
- "id": "services_bot_client_rationale_72"
- },
- {
- "label": "_rebuild_groups_for_level()",
- "file_type": "code",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L17",
- "community": 11,
- "norm_label": "_rebuild_groups_for_level()",
- "id": "services_buildings_rebuild_groups_for_level"
- },
- {
- "label": "_get_building_type_config()",
- "file_type": "code",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L114",
- "community": 11,
- "norm_label": "_get_building_type_config()",
- "id": "services_buildings_get_building_type_config"
- },
- {
- "label": "_require_planning_or_not_locked()",
- "file_type": "code",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L141",
- "community": 11,
- "norm_label": "_require_planning_or_not_locked()",
- "id": "services_buildings_require_planning_or_not_locked"
- },
- {
- "label": "_create_groups_and_positions()",
- "file_type": "code",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L150",
- "community": 11,
- "norm_label": "_create_groups_and_positions()",
- "id": "services_buildings_create_groups_and_positions"
- },
- {
- "label": "Rebuild groups and positions so they match the level-appropriate configuration.",
- "file_type": "rationale",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L23",
- "community": 11,
- "norm_label": "rebuild groups and positions so they match the level-appropriate configuration.",
- "id": "services_buildings_rationale_23"
- },
- {
- "label": "Raise 400 if the siege is locked for layout changes.",
- "file_type": "rationale",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L142",
- "community": 11,
- "norm_label": "raise 400 if the siege is locked for layout changes.",
- "id": "services_buildings_rationale_142"
- },
- {
- "label": "Auto-create BuildingGroups and Positions from config.",
- "file_type": "rationale",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L156",
- "community": 11,
- "norm_label": "auto-create buildinggroups and positions from config.",
- "id": "services_buildings_rationale_156"
- },
- {
- "label": "building_capacity.py",
- "file_type": "code",
- "source_file": "backend/app/services/building_capacity.py",
- "source_location": "L1",
- "community": 11,
- "norm_label": "building_capacity.py",
- "id": "backend_app_services_building_capacity_py"
- },
- {
- "label": "get_team_count()",
- "file_type": "code",
- "source_file": "backend/app/services/building_capacity.py",
- "source_location": "L13",
- "community": 11,
- "norm_label": "get_team_count()",
- "id": "services_building_capacity_get_team_count"
- },
- {
- "label": "Return the theoretical total team slots for a building type at a given level.",
- "file_type": "rationale",
- "source_file": "backend/app/services/building_capacity.py",
- "source_location": "L14",
- "community": 11,
- "norm_label": "return the theoretical total team slots for a building type at a given level.",
- "id": "services_building_capacity_rationale_14"
- },
- {
- "label": "_load_assignments()",
- "file_type": "code",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L13",
- "community": 21,
- "norm_label": "_load_assignments()",
- "id": "services_comparison_load_assignments"
- },
- {
- "label": "_load_member_names()",
- "file_type": "code",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L45",
- "community": 21,
- "norm_label": "_load_member_names()",
- "id": "services_comparison_load_member_names"
- },
- {
- "label": "get_most_recent_completed()",
- "file_type": "code",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L52",
- "community": 21,
- "norm_label": "get_most_recent_completed()",
- "id": "services_comparison_get_most_recent_completed"
- },
- {
- "label": "Return {member_id: [PositionKey, ...]} for non-reserve, non-disabled assigned po",
- "file_type": "rationale",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L14",
- "community": 21,
- "norm_label": "return {member_id: [positionkey, ...]} for non-reserve, non-disabled assigned po",
- "id": "services_comparison_rationale_14"
- },
- {
- "label": "Service logic for Discord guild member \u2192 clan member matching.",
- "file_type": "rationale",
- "source_file": "backend/app/services/discord_sync.py",
- "source_location": "L1",
- "community": 24,
- "norm_label": "service logic for discord guild member \u2192 clan member matching.",
- "id": "services_discord_sync_rationale_1"
- },
- {
- "label": "Return proposed matches between Discord guild members and clan members. Mat",
- "file_type": "rationale",
- "source_file": "backend/app/services/discord_sync.py",
- "source_location": "L12",
- "community": 24,
- "norm_label": "return proposed matches between discord guild members and clan members. mat",
- "id": "services_discord_sync_rationale_12"
- },
- {
- "label": "Apply accepted sync matches, writing discord_username and discord_id. Unkno",
- "file_type": "rationale",
- "source_file": "backend/app/services/discord_sync.py",
- "source_location": "L153",
- "community": 24,
- "norm_label": "apply accepted sync matches, writing discord_username and discord_id. unkno",
- "id": "services_discord_sync_rationale_153"
- },
- {
- "label": "image_gen.py",
- "file_type": "code",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L1",
- "community": 17,
- "norm_label": "image_gen.py",
- "id": "backend_app_services_image_gen_py"
- },
- {
- "label": "SiegeMemberWithName",
- "file_type": "code",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L14",
- "community": 0,
- "norm_label": "siegememberwithname",
- "id": "services_image_gen_siegememberwithname"
- },
- {
- "label": "_build_assignments_html()",
- "file_type": "code",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L61",
- "community": 17,
- "norm_label": "_build_assignments_html()",
- "id": "services_image_gen_build_assignments_html"
- },
- {
- "label": "_build_reserves_html()",
- "file_type": "code",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L233",
- "community": 17,
- "norm_label": "_build_reserves_html()",
- "id": "services_image_gen_build_reserves_html"
- },
- {
- "label": "_render_html_to_png()",
- "file_type": "code",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L331",
- "community": 17,
- "norm_label": "_render_html_to_png()",
- "id": "services_image_gen_render_html_to_png"
- },
- {
- "label": "generate_assignments_image()",
- "file_type": "code",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L350",
- "community": 17,
- "norm_label": "generate_assignments_image()",
- "id": "services_image_gen_generate_assignments_image"
- },
- {
- "label": "generate_reserves_image()",
- "file_type": "code",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L360",
- "community": 17,
- "norm_label": "generate_reserves_image()",
- "id": "services_image_gen_generate_reserves_image"
- },
- {
- "label": "Image generation service \u2014 renders HTML/CSS to PNG via Playwright.",
- "file_type": "rationale",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L1",
- "community": 17,
- "norm_label": "image generation service \u2014 renders html/css to png via playwright.",
- "id": "services_image_gen_rationale_1"
- },
- {
- "label": "Build the full assignments board HTML string. Args: board: Validate",
- "file_type": "rationale",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L66",
- "community": 17,
- "norm_label": "build the full assignments board html string. args: board: validate",
- "id": "services_image_gen_rationale_66"
- },
- {
- "label": "Build the reserves/members list HTML string. Args: members: Siege m",
- "file_type": "rationale",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L237",
- "community": 17,
- "norm_label": "build the reserves/members list html string. args: members: siege m",
- "id": "services_image_gen_rationale_237"
- },
- {
- "label": "Render an HTML string to PNG bytes using headless Chromium.",
- "file_type": "rationale",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L332",
- "community": 17,
- "norm_label": "render an html string to png bytes using headless chromium.",
- "id": "services_image_gen_rationale_332"
- },
- {
- "label": "Render the assignments board as a PNG. Returns raw PNG bytes.",
- "file_type": "rationale",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L355",
- "community": 17,
- "norm_label": "render the assignments board as a png. returns raw png bytes.",
- "id": "services_image_gen_rationale_355"
- },
- {
- "label": "Render the members/reserves list as a PNG. Returns raw PNG bytes.",
- "file_type": "rationale",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L364",
- "community": 17,
- "norm_label": "render the members/reserves list as a png. returns raw png bytes.",
- "id": "services_image_gen_rationale_364"
- },
- {
- "label": "Transition a planning siege to active status. Raises: 404 if siege",
- "file_type": "rationale",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L18",
- "community": 2,
- "norm_label": "transition a planning siege to active status. raises: 404 if siege",
- "id": "services_lifecycle_rationale_18"
- },
- {
- "label": "Transition an active siege to complete status. Raises: 404 if siege",
- "file_type": "rationale",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L62",
- "community": 2,
- "norm_label": "transition an active siege to complete status. raises: 404 if siege",
- "id": "services_lifecycle_rationale_62"
- },
- {
- "label": "Transition a completed siege back to planning status. Raises: 404 i",
- "file_type": "rationale",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L86",
- "community": 2,
- "norm_label": "transition a completed siege back to planning status. raises: 404 i",
- "id": "services_lifecycle_rationale_86"
- },
- {
- "label": "Deep-copy a siege into a new planning siege. Rules: - New siege: same d",
- "file_type": "rationale",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L110",
- "community": 0,
- "norm_label": "deep-copy a siege into a new planning siege. rules: - new siege: same d",
- "id": "services_lifecycle_rationale_110"
- },
- {
- "label": "deactivate_member()",
- "file_type": "code",
- "source_file": "backend/app/services/members.py",
- "source_location": "L81",
- "community": 6,
- "norm_label": "deactivate_member()",
- "id": "services_members_deactivate_member"
- },
- {
- "label": "notification_message.py",
- "file_type": "code",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L1",
- "community": 15,
- "norm_label": "notification_message.py",
- "id": "backend_app_services_notification_message_py"
- },
- {
- "label": "PositionInfo",
- "file_type": "code",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L60",
- "community": 0,
- "norm_label": "positioninfo",
- "id": "services_notification_message_positioninfo"
- },
- {
- "label": "_position_sort_key()",
- "file_type": "code",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L74",
- "community": 15,
- "norm_label": "_position_sort_key()",
- "id": "services_notification_message_position_sort_key"
- },
- {
- "label": "_position_label()",
- "file_type": "code",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L84",
- "community": 15,
- "norm_label": "_position_label()",
- "id": "services_notification_message_position_label"
- },
- {
- "label": "_positions_to_key_set()",
- "file_type": "code",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L110",
- "community": 15,
- "norm_label": "_positions_to_key_set()",
- "id": "services_notification_message_positions_to_key_set"
- },
- {
- "label": "_positions_from_keys()",
- "file_type": "code",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L117",
- "community": 15,
- "norm_label": "_positions_from_keys()",
- "id": "services_notification_message_positions_from_keys"
- },
- {
- "label": "_build_section()",
- "file_type": "code",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L126",
- "community": 15,
- "norm_label": "_build_section()",
- "id": "services_notification_message_build_section"
- },
- {
- "label": "build_member_notification_message()",
- "file_type": "code",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L153",
- "community": 15,
- "norm_label": "build_member_notification_message()",
- "id": "services_notification_message_build_member_notification_message"
- },
- {
- "label": "Build rich per-member Discord DM messages for siege assignment notifications.",
- "file_type": "rationale",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L1",
- "community": 15,
- "norm_label": "build rich per-member discord dm messages for siege assignment notifications.",
- "id": "services_notification_message_rationale_1"
- },
- {
- "label": "Minimal description of a single assigned position.",
- "file_type": "rationale",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L61",
- "community": 0,
- "norm_label": "minimal description of a single assigned position.",
- "id": "services_notification_message_rationale_61"
- },
- {
- "label": "Return a sortable tuple for consistent ordering within a section. Sorts by:",
- "file_type": "rationale",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L75",
- "community": 15,
- "norm_label": "return a sortable tuple for consistent ordering within a section. sorts by:",
- "id": "services_notification_message_rationale_75"
- },
- {
- "label": "Format a human-readable label for a position. Posts always use the short ``",
- "file_type": "rationale",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L85",
- "community": 15,
- "norm_label": "format a human-readable label for a position. posts always use the short ``",
- "id": "services_notification_message_rationale_85"
- },
- {
- "label": "Convert a list of PositionInfo objects to a set of comparable tuples.",
- "file_type": "rationale",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L111",
- "community": 15,
- "norm_label": "convert a list of positioninfo objects to a set of comparable tuples.",
- "id": "services_notification_message_rationale_111"
- },
- {
- "label": "Filter ``positions`` to those whose key is in ``keys``, preserving PositionInfo",
- "file_type": "rationale",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L118",
- "community": 15,
- "norm_label": "filter ``positions`` to those whose key is in ``keys``, preserving positioninfo",
- "id": "services_notification_message_rationale_118"
- },
- {
- "label": "Render one diff section as a header line followed by plain position lines.",
- "file_type": "rationale",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L131",
- "community": 15,
- "norm_label": "render one diff section as a header line followed by plain position lines.",
- "id": "services_notification_message_rationale_131"
- },
- {
- "label": "Build a rich Discord DM message for a single siege member. Args: si",
- "file_type": "rationale",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L161",
- "community": 15,
- "norm_label": "build a rich discord dm message for a single siege member. args: si",
- "id": "services_notification_message_rationale_161"
- },
- {
- "label": "_get_siege_or_404()",
- "file_type": "code",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L15",
- "community": 16,
- "norm_label": "_get_siege_or_404()",
- "id": "services_posts_get_siege_or_404"
- },
- {
- "label": "_get_post_for_siege_or_404()",
- "file_type": "code",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L23",
- "community": 16,
- "norm_label": "_get_post_for_siege_or_404()",
- "id": "services_posts_get_post_for_siege_or_404"
- },
- {
- "label": "Return all Post records for a siege with active_conditions loaded. Raises:",
- "file_type": "rationale",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L37",
- "community": 16,
- "norm_label": "return all post records for a siege with active_conditions loaded. raises:",
- "id": "services_posts_rationale_37"
- },
- {
- "label": "Update a post's priority and/or description. Raises: 404 if post no",
- "file_type": "rationale",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L55",
- "community": 16,
- "norm_label": "update a post's priority and/or description. raises: 404 if post no",
- "id": "services_posts_rationale_55"
- },
- {
- "label": "Replace all active conditions on a post. Raises: 404 if post not fo",
- "file_type": "rationale",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L79",
- "community": 16,
- "norm_label": "replace all active conditions on a post. raises: 404 if post not fo",
- "id": "services_posts_rationale_79"
- },
- {
- "label": "_get_target_position()",
- "file_type": "code",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L517",
- "community": 2,
- "norm_label": "_get_target_position()",
- "id": "services_post_suggestions_get_target_position"
- },
- {
- "label": "_null_entry()",
- "file_type": "code",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L537",
- "community": 2,
- "norm_label": "_null_entry()",
- "id": "services_post_suggestions_null_entry"
- },
- {
- "label": "Service implementing the Suggest Post Assignments feature. Public API: prev",
- "file_type": "rationale",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L1",
- "community": 2,
- "norm_label": "service implementing the suggest post assignments feature. public api: prev",
- "id": "services_post_suggestions_rationale_1"
- },
- {
- "label": "Return the current UTC datetime (naive, matching DB TIMESTAMP columns).",
- "file_type": "rationale",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L71",
- "community": 2,
- "norm_label": "return the current utc datetime (naive, matching db timestamp columns).",
- "id": "services_post_suggestions_rationale_71"
- },
- {
- "label": "Generate a greedy post assignment suggestion and persist it as a preview. T",
- "file_type": "rationale",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L79",
- "community": 2,
- "norm_label": "generate a greedy post assignment suggestion and persist it as a preview. t",
- "id": "services_post_suggestions_rationale_79"
- },
- {
- "label": "Apply a subset of a stored post-suggestion preview atomically. The whole se",
- "file_type": "rationale",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L340",
- "community": 2,
- "norm_label": "apply a subset of a stored post-suggestion preview atomically. the whole se",
- "id": "services_post_suggestions_rationale_340"
- },
- {
- "label": "Return the single target position from a post building, or None. Posts have",
- "file_type": "rationale",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L518",
- "community": 2,
- "norm_label": "return the single target position from a post building, or none. posts have",
- "id": "services_post_suggestions_rationale_518"
- },
- {
- "label": "Build a PostSuggestionEntry with no suggestion (skipped post). Args:",
- "file_type": "rationale",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L546",
- "community": 2,
- "norm_label": "build a postsuggestionentry with no suggestion (skipped post). args:",
- "id": "services_post_suggestions_rationale_546"
- },
- {
- "label": "# NOTE: _validate_position_state() from bulk_update_positions is NOT",
- "file_type": "rationale",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L418",
- "community": 2,
- "norm_label": "# note: _validate_position_state() from bulk_update_positions is not",
- "id": "services_post_suggestions_rationale_418"
- },
- {
- "label": "# NOTE: session.refresh(pos) is not called post-write because the apply",
- "file_type": "rationale",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L489",
- "community": 2,
- "norm_label": "# note: session.refresh(pos) is not called post-write because the apply",
- "id": "services_post_suggestions_rationale_489"
- },
- {
- "label": "scrolls_per_player()",
- "file_type": "code",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L19",
- "community": 2,
- "norm_label": "scrolls_per_player()",
- "id": "services_sieges_scrolls_per_player"
- },
- {
- "label": "compute_scroll_count()",
- "file_type": "code",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L28",
- "community": 2,
- "norm_label": "compute_scroll_count()",
- "id": "services_sieges_compute_scroll_count"
- },
- {
- "label": "Return the per-player scroll limit for a siege. Matches the UI formula: 4 s",
- "file_type": "rationale",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L20",
- "community": 2,
- "norm_label": "return the per-player scroll limit for a siege. matches the ui formula: 4 s",
- "id": "services_sieges_rationale_20"
- },
- {
- "label": "Compute total scroll count from the theoretical capacity of every building.",
- "file_type": "rationale",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L29",
- "community": 2,
- "norm_label": "compute total scroll count from the theoretical capacity of every building.",
- "id": "services_sieges_rationale_29"
- },
- {
- "label": "seed.py",
- "file_type": "code",
- "source_file": "backend/scripts/seed.py",
- "source_location": "L1",
- "community": 7,
- "norm_label": "seed.py",
- "id": "backend_scripts_seed_py"
- },
- {
- "label": "seed_demo.py",
- "file_type": "code",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L1",
- "community": 7,
- "norm_label": "seed_demo.py",
- "id": "backend_scripts_seed_demo_py"
- },
- {
- "label": "get_or_create_members()",
- "file_type": "code",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L95",
- "community": 7,
- "norm_label": "get_or_create_members()",
- "id": "scripts_seed_demo_get_or_create_members"
- },
- {
- "label": "get_or_create_demo_siege()",
- "file_type": "code",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L114",
- "community": 7,
- "norm_label": "get_or_create_demo_siege()",
- "id": "scripts_seed_demo_get_or_create_demo_siege"
- },
- {
- "label": "seed_buildings_and_positions()",
- "file_type": "code",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L133",
- "community": 0,
- "norm_label": "seed_buildings_and_positions()",
- "id": "scripts_seed_demo_seed_buildings_and_positions"
- },
- {
- "label": "get_or_create_second_siege()",
- "file_type": "code",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L203",
- "community": 7,
- "norm_label": "get_or_create_second_siege()",
- "id": "scripts_seed_demo_get_or_create_second_siege"
- },
- {
- "label": "seed_siege_members()",
- "file_type": "code",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L220",
- "community": 7,
- "norm_label": "seed_siege_members()",
- "id": "scripts_seed_demo_seed_siege_members"
- },
- {
- "label": "Return existing demo members or create them.",
- "file_type": "rationale",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L96",
- "community": 7,
- "norm_label": "return existing demo members or create them.",
- "id": "scripts_seed_demo_rationale_96"
- },
- {
- "label": "Return the existing demo siege or create a new one.",
- "file_type": "rationale",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L115",
- "community": 7,
- "norm_label": "return the existing demo siege or create a new one.",
- "id": "scripts_seed_demo_rationale_115"
- },
- {
- "label": "Create buildings, groups, and positions; assign members round-robin. member",
- "file_type": "rationale",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L139",
- "community": 0,
- "norm_label": "create buildings, groups, and positions; assign members round-robin. member",
- "id": "scripts_seed_demo_rationale_139"
- },
- {
- "label": "Return the existing planning siege or create one one week after the first.",
- "file_type": "rationale",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L204",
- "community": 7,
- "norm_label": "return the existing planning siege or create one one week after the first.",
- "id": "scripts_seed_demo_rationale_204"
- },
- {
- "label": "Enrol members in the siege with attack day assignments.",
- "file_type": "rationale",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L225",
- "community": 7,
- "norm_label": "enrol members in the siege with attack day assignments.",
- "id": "scripts_seed_demo_rationale_225"
- },
- {
- "label": "config.py",
- "file_type": "code",
- "source_file": "bot/app/config.py",
- "source_location": "L1",
- "community": 28,
- "norm_label": "config.py",
- "id": "bot_app_config_py"
- },
- {
- "label": "discord_client.py",
- "file_type": "code",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L1",
- "community": 6,
- "norm_label": "discord_client.py",
- "id": "bot_app_discord_client_py"
- },
- {
- "label": "SiegeBot",
- "file_type": "code",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L6",
- "community": 6,
- "norm_label": "siegebot",
- "id": "app_discord_client_siegebot"
- },
- {
- "label": ".__init__()",
- "file_type": "code",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L9",
- "community": 6,
- "norm_label": ".__init__()",
- "id": "app_discord_client_siegebot_init"
- },
- {
- "label": ".on_ready()",
- "file_type": "code",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L14",
- "community": 6,
- "norm_label": ".on_ready()",
- "id": "app_discord_client_siegebot_on_ready"
- },
- {
- "label": "._require_guild()",
- "file_type": "code",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L17",
- "community": 6,
- "norm_label": "._require_guild()",
- "id": "app_discord_client_siegebot_require_guild"
- },
- {
- "label": "Discord client for the Siege Assignment System.",
- "file_type": "rationale",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L7",
- "community": 6,
- "norm_label": "discord client for the siege assignment system.",
- "id": "app_discord_client_rationale_7"
- },
- {
- "label": "Find member by username in the guild, open DM, send message.",
- "file_type": "rationale",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L23",
- "community": 6,
- "norm_label": "find member by username in the guild, open dm, send message.",
- "id": "app_discord_client_rationale_23"
- },
- {
- "label": "Find text channel by name, post message.",
- "file_type": "rationale",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L34",
- "community": 6,
- "norm_label": "find text channel by name, post message.",
- "id": "app_discord_client_rationale_34"
- },
- {
- "label": "Find text channel by name, post image as Discord file attachment. Retur",
- "file_type": "rationale",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L47",
- "community": 6,
- "norm_label": "find text channel by name, post image as discord file attachment. retur",
- "id": "app_discord_client_rationale_47"
- },
- {
- "label": "Return list of guild members as dicts with id, username, and display_name.",
- "file_type": "rationale",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L62",
- "community": 6,
- "norm_label": "return list of guild members as dicts with id, username, and display_name.",
- "id": "app_discord_client_rationale_62"
- },
- {
- "label": "http_api.py",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L1",
- "community": 6,
- "norm_label": "http_api.py",
- "id": "bot_app_http_api_py"
- },
- {
- "label": "set_bot()",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L22",
- "community": 6,
- "norm_label": "set_bot()",
- "id": "app_http_api_set_bot"
- },
- {
- "label": "_get_bot()",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L27",
- "community": 6,
- "norm_label": "_get_bot()",
- "id": "app_http_api_get_bot"
- },
- {
- "label": "verify_api_key()",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L36",
- "community": 6,
- "norm_label": "verify_api_key()",
- "id": "app_http_api_verify_api_key"
- },
- {
- "label": "NotifyRequest",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L46",
- "community": 6,
- "norm_label": "notifyrequest",
- "id": "app_http_api_notifyrequest"
- },
- {
- "label": "PostMessageRequest",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L51",
- "community": 6,
- "norm_label": "postmessagerequest",
- "id": "app_http_api_postmessagerequest"
- },
- {
- "label": "version()",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L57",
- "community": 12,
- "norm_label": "version()",
- "id": "app_http_api_version"
- },
- {
- "label": "notify()",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L83",
- "community": 6,
- "norm_label": "notify()",
- "id": "app_http_api_notify"
- },
- {
- "label": "post_message()",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L97",
- "community": 6,
- "norm_label": "post_message()",
- "id": "app_http_api_post_message"
- },
- {
- "label": "post_image()",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L111",
- "community": 6,
- "norm_label": "post_image()",
- "id": "app_http_api_post_image"
- },
- {
- "label": "get_guild_member()",
- "file_type": "code",
- "source_file": "bot/app/http_api.py",
- "source_location": "L136",
- "community": 6,
- "norm_label": "get_guild_member()",
- "id": "app_http_api_get_guild_member"
- },
- {
- "label": "Validate the Bearer token against the configured bot API key.",
- "file_type": "rationale",
- "source_file": "bot/app/http_api.py",
- "source_location": "L37",
- "community": 6,
- "norm_label": "validate the bearer token against the configured bot api key.",
- "id": "app_http_api_rationale_37"
- },
- {
- "label": "Return the bot version \u2014 no authentication required. Returns ``1.0.1+42.abc",
- "file_type": "rationale",
- "source_file": "bot/app/http_api.py",
- "source_location": "L58",
- "community": 12,
- "norm_label": "return the bot version \u2014 no authentication required. returns ``1.0.1+42.abc",
- "id": "app_http_api_rationale_58"
- },
- {
- "label": "Health check \u2014 no authentication required.",
- "file_type": "rationale",
- "source_file": "bot/app/http_api.py",
- "source_location": "L78",
- "community": 6,
- "norm_label": "health check \u2014 no authentication required.",
- "id": "app_http_api_rationale_78"
- },
- {
- "label": "Send a DM notification to a guild member.",
- "file_type": "rationale",
- "source_file": "bot/app/http_api.py",
- "source_location": "L87",
- "community": 6,
- "norm_label": "send a dm notification to a guild member.",
- "id": "app_http_api_rationale_87"
- },
- {
- "label": "Post a text message to a guild channel.",
- "file_type": "rationale",
- "source_file": "bot/app/http_api.py",
- "source_location": "L101",
- "community": 6,
- "norm_label": "post a text message to a guild channel.",
- "id": "app_http_api_rationale_101"
- },
- {
- "label": "Post an image to a guild channel.",
- "file_type": "rationale",
- "source_file": "bot/app/http_api.py",
- "source_location": "L116",
- "community": 6,
- "norm_label": "post an image to a guild channel.",
- "id": "app_http_api_rationale_116"
- },
- {
- "label": "Retrieve guild member list.",
- "file_type": "rationale",
- "source_file": "bot/app/http_api.py",
- "source_location": "L130",
- "community": 6,
- "norm_label": "retrieve guild member list.",
- "id": "app_http_api_rationale_130"
- },
- {
- "label": "Look up a single guild member by Discord user ID. Returns ``{\"is_member\": f",
- "file_type": "rationale",
- "source_file": "bot/app/http_api.py",
- "source_location": "L140",
- "community": 6,
- "norm_label": "look up a single guild member by discord user id. returns ``{\"is_member\": f",
- "id": "app_http_api_rationale_140"
- },
- {
- "label": "main.py",
- "file_type": "code",
- "source_file": "bot/app/main.py",
- "source_location": "L1",
- "community": 7,
- "norm_label": "main.py",
- "id": "bot_app_main_py"
- },
- {
- "label": "run_http_server()",
- "file_type": "code",
- "source_file": "bot/app/main.py",
- "source_location": "L18",
- "community": 7,
- "norm_label": "run_http_server()",
- "id": "app_main_run_http_server"
- },
- {
- "label": "run_discord_client()",
- "file_type": "code",
- "source_file": "bot/app/main.py",
- "source_location": "L30",
- "community": 7,
- "norm_label": "run_discord_client()",
- "id": "app_main_run_discord_client"
- },
- {
- "label": "main()",
- "file_type": "code",
- "source_file": "bot/app/main.py",
- "source_location": "L36",
- "community": 7,
- "norm_label": "main()",
- "id": "app_main_main"
- },
- {
- "label": "Run the FastAPI/uvicorn HTTP sidecar on port 8001.",
- "file_type": "rationale",
- "source_file": "bot/app/main.py",
- "source_location": "L19",
- "community": 7,
- "norm_label": "run the fastapi/uvicorn http sidecar on port 8001.",
- "id": "app_main_rationale_19"
- },
- {
- "label": "Connect and run the Discord client.",
- "file_type": "rationale",
- "source_file": "bot/app/main.py",
- "source_location": "L31",
- "community": 7,
- "norm_label": "connect and run the discord client.",
- "id": "app_main_rationale_31"
- },
- {
- "label": "Start both the Discord client and HTTP server concurrently.",
- "file_type": "rationale",
- "source_file": "bot/app/main.py",
- "source_location": "L37",
- "community": 7,
- "norm_label": "start both the discord client and http server concurrently.",
- "id": "app_main_rationale_37"
- },
- {
- "label": "telemetry.py",
- "file_type": "code",
- "source_file": "bot/app/telemetry.py",
- "source_location": "L1",
- "community": 31,
- "norm_label": "telemetry.py",
- "id": "bot_app_telemetry_py"
- },
- {
- "label": "__init__.py",
- "file_type": "code",
- "source_file": "bot/app/__init__.py",
- "source_location": "L1",
- "community": 40,
- "norm_label": "__init__.py",
- "id": "bot_app_init_py"
- },
- {
- "label": "eslint.config.js",
- "file_type": "code",
- "source_file": "frontend/eslint.config.js",
- "source_location": "L1",
- "community": 41,
- "norm_label": "eslint.config.js",
- "id": "frontend_eslint_config_js"
- },
- {
- "label": "playwright.config.ts",
- "file_type": "code",
- "source_file": "frontend/playwright.config.ts",
- "source_location": "L1",
- "community": 42,
- "norm_label": "playwright.config.ts",
- "id": "frontend_playwright_config_ts"
- },
- {
- "label": "postcss.config.js",
- "file_type": "code",
- "source_file": "frontend/postcss.config.js",
- "source_location": "L1",
- "community": 43,
- "norm_label": "postcss.config.js",
- "id": "frontend_postcss_config_js"
- },
- {
- "label": "tailwind.config.ts",
- "file_type": "code",
- "source_file": "frontend/tailwind.config.ts",
- "source_location": "L1",
- "community": 20,
- "norm_label": "tailwind.config.ts",
- "id": "frontend_tailwind_config_ts"
- },
- {
- "label": "vite.config.ts",
- "file_type": "code",
- "source_file": "frontend/vite.config.ts",
- "source_location": "L1",
- "community": 36,
- "norm_label": "vite.config.ts",
- "id": "frontend_vite_config_ts"
- },
- {
- "label": "vitest.config.ts",
- "file_type": "code",
- "source_file": "frontend/vitest.config.ts",
- "source_location": "L1",
- "community": 36,
- "norm_label": "vitest.config.ts",
- "id": "frontend_vitest_config_ts"
- },
- {
- "label": "board.spec.ts",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L1",
- "community": 10,
- "norm_label": "board.spec.ts",
- "id": "frontend_e2e_board_spec_ts"
- },
- {
- "label": "apiCreateSiege()",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L13",
- "community": 10,
- "norm_label": "apicreatesiege()",
- "id": "e2e_board_spec_apicreatesiege"
- },
- {
- "label": "apiAddBuilding()",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L27",
- "community": 10,
- "norm_label": "apiaddbuilding()",
- "id": "e2e_board_spec_apiaddbuilding"
- },
- {
- "label": "apiCreateMember()",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L52",
- "community": 10,
- "norm_label": "apicreatemember()",
- "id": "e2e_board_spec_apicreatemember"
- },
- {
- "label": "buildingsTab",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L127",
- "community": 10,
- "norm_label": "buildingstab",
- "id": "e2e_board_spec_buildingstab"
- },
- {
- "label": "postsTab",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L128",
- "community": 14,
- "norm_label": "poststab",
- "id": "e2e_board_spec_poststab"
- },
- {
- "label": "search",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L179",
- "community": 10,
- "norm_label": "search",
- "id": "e2e_board_spec_search"
- },
- {
- "label": "roleSelect",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L198",
- "community": 10,
- "norm_label": "roleselect",
- "id": "e2e_board_spec_roleselect"
- },
- {
- "label": "firstPositionSpan",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L238",
- "community": 10,
- "norm_label": "firstpositionspan",
- "id": "e2e_board_spec_firstpositionspan"
- },
- {
- "label": "positionCell",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L239",
- "community": 10,
- "norm_label": "positioncell",
- "id": "e2e_board_spec_positioncell"
- },
- {
- "label": "chevron",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L244",
- "community": 10,
- "norm_label": "chevron",
- "id": "e2e_board_spec_chevron"
- },
- {
- "label": "autofillBtn",
- "file_type": "code",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L367",
- "community": 10,
- "norm_label": "autofillbtn",
- "id": "e2e_board_spec_autofillbtn"
- },
- {
- "label": "members.spec.ts",
- "file_type": "code",
- "source_file": "frontend/e2e/members.spec.ts",
- "source_location": "L1",
- "community": 32,
- "norm_label": "members.spec.ts",
- "id": "frontend_e2e_members_spec_ts"
- },
- {
- "label": "ensureMemberSlotsAvailable()",
- "file_type": "code",
- "source_file": "frontend/e2e/members.spec.ts",
- "source_location": "L20",
- "community": 32,
- "norm_label": "ensurememberslotsavailable()",
- "id": "e2e_members_spec_ensurememberslotsavailable"
- },
- {
- "label": "activeCheckbox",
- "file_type": "code",
- "source_file": "frontend/e2e/members.spec.ts",
- "source_location": "L125",
- "community": 32,
- "norm_label": "activecheckbox",
- "id": "e2e_members_spec_activecheckbox"
- },
- {
- "label": "editLinks",
- "file_type": "code",
- "source_file": "frontend/e2e/members.spec.ts",
- "source_location": "L131",
- "community": 32,
- "norm_label": "editlinks",
- "id": "e2e_members_spec_editlinks"
- },
- {
- "label": "siege-lifecycle.spec.ts",
- "file_type": "code",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L1",
- "community": 10,
- "norm_label": "siege-lifecycle.spec.ts",
- "id": "frontend_e2e_siege_lifecycle_spec_ts"
- },
- {
- "label": "dateInput",
- "file_type": "code",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L121",
- "community": 10,
- "norm_label": "dateinput",
- "id": "e2e_siege_lifecycle_spec_dateinput"
- },
- {
- "label": "url",
- "file_type": "code",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L153",
- "community": 10,
- "norm_label": "url",
- "id": "e2e_siege_lifecycle_spec_url"
- },
- {
- "label": "tabStrip",
- "file_type": "code",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L181",
- "community": 10,
- "norm_label": "tabstrip",
- "id": "e2e_siege_lifecycle_spec_tabstrip"
- },
- {
- "label": "boardLink",
- "file_type": "code",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L203",
- "community": 10,
- "norm_label": "boardlink",
- "id": "e2e_siege_lifecycle_spec_boardlink"
- },
- {
- "label": "memberRow",
- "file_type": "code",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L369",
- "community": 10,
- "norm_label": "memberrow",
- "id": "e2e_siege_lifecycle_spec_memberrow"
- },
- {
- "label": "activeBadge",
- "file_type": "code",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L382",
- "community": 10,
- "norm_label": "activebadge",
- "id": "e2e_siege_lifecycle_spec_activebadge"
- },
- {
- "label": "errorBadge",
- "file_type": "code",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L383",
- "community": 10,
- "norm_label": "errorbadge",
- "id": "e2e_siege_lifecycle_spec_errorbadge"
- },
- {
- "label": "smoke.spec.ts",
- "file_type": "code",
- "source_file": "frontend/e2e/smoke.spec.ts",
- "source_location": "L1",
- "community": 44,
- "norm_label": "smoke.spec.ts",
- "id": "frontend_e2e_smoke_spec_ts"
- },
- {
- "label": "App.tsx",
- "file_type": "code",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "app.tsx",
- "id": "frontend_src_app_tsx"
- },
- {
- "label": "App()",
- "file_type": "code",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L19",
- "community": 1,
- "norm_label": "app()",
- "id": "src_app_app"
- },
- {
- "label": "main.tsx",
- "file_type": "code",
- "source_file": "frontend/src/main.tsx",
- "source_location": "L1",
- "community": 25,
- "norm_label": "main.tsx",
- "id": "frontend_src_main_tsx"
- },
- {
- "label": "queryClient",
- "file_type": "code",
- "source_file": "frontend/src/main.tsx",
- "source_location": "L9",
- "community": 25,
- "norm_label": "queryclient",
- "id": "src_main_queryclient"
- },
- {
- "label": "vite-env.d.ts",
- "file_type": "code",
- "source_file": "frontend/src/vite-env.d.ts",
- "source_location": "L1",
- "community": 45,
- "norm_label": "vite-env.d.ts",
- "id": "frontend_src_vite_env_d_ts"
- },
- {
- "label": "board.ts",
- "file_type": "code",
- "source_file": "frontend/src/api/board.ts",
- "source_location": "L1",
- "community": 0,
- "norm_label": "board.ts",
- "id": "frontend_src_api_board_ts"
- },
- {
- "label": "getBoard()",
- "file_type": "code",
- "source_file": "frontend/src/api/board.ts",
- "source_location": "L4",
- "community": 0,
- "norm_label": "getboard()",
- "id": "api_board_getboard"
- },
- {
- "label": "changelog.ts",
- "file_type": "code",
- "source_file": "frontend/src/api/changelog.ts",
- "source_location": "L1",
- "community": 26,
- "norm_label": "changelog.ts",
- "id": "frontend_src_api_changelog_ts"
- },
- {
- "label": "ChangelogStatus",
- "file_type": "code",
- "source_file": "frontend/src/api/changelog.ts",
- "source_location": "L3",
- "community": 26,
- "norm_label": "changelogstatus",
- "id": "api_changelog_changelogstatus"
- },
- {
- "label": "fetchChangelogStatus()",
- "file_type": "code",
- "source_file": "frontend/src/api/changelog.ts",
- "source_location": "L7",
- "community": 26,
- "norm_label": "fetchchangelogstatus()",
- "id": "api_changelog_fetchchangelogstatus"
- },
- {
- "label": "markChangelogSeen()",
- "file_type": "code",
- "source_file": "frontend/src/api/changelog.ts",
- "source_location": "L12",
- "community": 18,
- "norm_label": "markchangelogseen()",
- "id": "api_changelog_markchangelogseen"
- },
- {
- "label": "client.ts",
- "file_type": "code",
- "source_file": "frontend/src/api/client.ts",
- "source_location": "L1",
- "community": 27,
- "norm_label": "client.ts",
- "id": "frontend_src_api_client_ts"
- },
- {
- "label": "apiClient",
- "file_type": "code",
- "source_file": "frontend/src/api/client.ts",
- "source_location": "L3",
- "community": 27,
- "norm_label": "apiclient",
- "id": "api_client_apiclient"
- },
- {
- "label": "config.ts",
- "file_type": "code",
- "source_file": "frontend/src/api/config.ts",
- "source_location": "L1",
- "community": 20,
- "norm_label": "config.ts",
- "id": "frontend_src_api_config_ts"
- },
- {
- "label": "AppConfig",
- "file_type": "code",
- "source_file": "frontend/src/api/config.ts",
- "source_location": "L3",
- "community": 20,
- "norm_label": "appconfig",
- "id": "api_config_appconfig"
- },
- {
- "label": "fetchConfig()",
- "file_type": "code",
- "source_file": "frontend/src/api/config.ts",
- "source_location": "L7",
- "community": 20,
- "norm_label": "fetchconfig()",
- "id": "api_config_fetchconfig"
- },
- {
- "label": "members.ts",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L1",
- "community": 1,
- "norm_label": "members.ts",
- "id": "frontend_src_api_members_ts"
- },
- {
- "label": "getMember()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L17",
- "community": 1,
- "norm_label": "getmember()",
- "id": "api_members_getmember"
- },
- {
- "label": "createMember()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L22",
- "community": 6,
- "norm_label": "createmember()",
- "id": "api_members_createmember"
- },
- {
- "label": "updateMember()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L32",
- "community": 6,
- "norm_label": "updatemember()",
- "id": "api_members_updatemember"
- },
- {
- "label": "deleteMember()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L46",
- "community": 1,
- "norm_label": "deletemember()",
- "id": "api_members_deletemember"
- },
- {
- "label": "getMemberPreferences()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L50",
- "community": 6,
- "norm_label": "getmemberpreferences()",
- "id": "api_members_getmemberpreferences"
- },
- {
- "label": "updateMemberPreferences()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L59",
- "community": 1,
- "norm_label": "updatememberpreferences()",
- "id": "api_members_updatememberpreferences"
- },
- {
- "label": "getPostConditions()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L72",
- "community": 1,
- "norm_label": "getpostconditions()",
- "id": "api_members_getpostconditions"
- },
- {
- "label": "getMemberRoles()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L77",
- "community": 1,
- "norm_label": "getmemberroles()",
- "id": "api_members_getmemberroles"
- },
- {
- "label": "previewDiscordSync()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L82",
- "community": 24,
- "norm_label": "previewdiscordsync()",
- "id": "api_members_previewdiscordsync"
- },
- {
- "label": "applyDiscordSync()",
- "file_type": "code",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L89",
- "community": 24,
- "norm_label": "applydiscordsync()",
- "id": "api_members_applydiscordsync"
- },
- {
- "label": "notifySiegeMembers()",
- "file_type": "code",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L8",
- "community": 0,
- "norm_label": "notifysiegemembers()",
- "id": "api_notifications_notifysiegemembers"
- },
- {
- "label": "getNotificationBatch()",
- "file_type": "code",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L17",
- "community": 0,
- "norm_label": "getnotificationbatch()",
- "id": "api_notifications_getnotificationbatch"
- },
- {
- "label": "postToChannel()",
- "file_type": "code",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L27",
- "community": 0,
- "norm_label": "posttochannel()",
- "id": "api_notifications_posttochannel"
- },
- {
- "label": "posts.ts",
- "file_type": "code",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L1",
- "community": 33,
- "norm_label": "posts.ts",
- "id": "frontend_src_api_posts_ts"
- },
- {
- "label": "PostPriorityConfig",
- "file_type": "code",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L4",
- "community": 0,
- "norm_label": "postpriorityconfig",
- "id": "api_posts_postpriorityconfig"
- },
- {
- "label": "getPostPriorities()",
- "file_type": "code",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L11",
- "community": 33,
- "norm_label": "getpostpriorities()",
- "id": "api_posts_getpostpriorities"
- },
- {
- "label": "updatePostPriority()",
- "file_type": "code",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L16",
- "community": 33,
- "norm_label": "updatepostpriority()",
- "id": "api_posts_updatepostpriority"
- },
- {
- "label": "getPosts()",
- "file_type": "code",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L27",
- "community": 33,
- "norm_label": "getposts()",
- "id": "api_posts_getposts"
- },
- {
- "label": "updatePost()",
- "file_type": "code",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L32",
- "community": 16,
- "norm_label": "updatepost()",
- "id": "api_posts_updatepost"
- },
- {
- "label": "setPostConditions()",
- "file_type": "code",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L44",
- "community": 16,
- "norm_label": "setpostconditions()",
- "id": "api_posts_setpostconditions"
- },
- {
- "label": "sieges.ts",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L1",
- "community": 2,
- "norm_label": "sieges.ts",
- "id": "frontend_src_api_sieges_ts"
- },
- {
- "label": "getSieges()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L20",
- "community": 1,
- "norm_label": "getsieges()",
- "id": "api_sieges_getsieges"
- },
- {
- "label": "getSiege()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L27",
- "community": 1,
- "norm_label": "getsiege()",
- "id": "api_sieges_getsiege"
- },
- {
- "label": "createSiege()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L32",
- "community": 0,
- "norm_label": "createsiege()",
- "id": "api_sieges_createsiege"
- },
- {
- "label": "updateSiege()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L37",
- "community": 2,
- "norm_label": "updatesiege()",
- "id": "api_sieges_updatesiege"
- },
- {
- "label": "deleteSiege()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L45",
- "community": 2,
- "norm_label": "deletesiege()",
- "id": "api_sieges_deletesiege"
- },
- {
- "label": "activateSiege()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L49",
- "community": 2,
- "norm_label": "activatesiege()",
- "id": "api_sieges_activatesiege"
- },
- {
- "label": "completeSiege()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L54",
- "community": 2,
- "norm_label": "completesiege()",
- "id": "api_sieges_completesiege"
- },
- {
- "label": "cloneSiege()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L59",
- "community": 0,
- "norm_label": "clonesiege()",
- "id": "api_sieges_clonesiege"
- },
- {
- "label": "reopenSiege()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L64",
- "community": 2,
- "norm_label": "reopensiege()",
- "id": "api_sieges_reopensiege"
- },
- {
- "label": "validateSiege()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L69",
- "community": 2,
- "norm_label": "validatesiege()",
- "id": "api_sieges_validatesiege"
- },
- {
- "label": "getBuildings()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L76",
- "community": 11,
- "norm_label": "getbuildings()",
- "id": "api_sieges_getbuildings"
- },
- {
- "label": "createBuilding()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L83",
- "community": 2,
- "norm_label": "createbuilding()",
- "id": "api_sieges_createbuilding"
- },
- {
- "label": "updateBuilding()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L94",
- "community": 11,
- "norm_label": "updatebuilding()",
- "id": "api_sieges_updatebuilding"
- },
- {
- "label": "deleteBuilding()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L106",
- "community": 11,
- "norm_label": "deletebuilding()",
- "id": "api_sieges_deletebuilding"
- },
- {
- "label": "getSiegeMembers()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L120",
- "community": 1,
- "norm_label": "getsiegemembers()",
- "id": "api_sieges_getsiegemembers"
- },
- {
- "label": "getSiegeMemberPreferences()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L127",
- "community": 14,
- "norm_label": "getsiegememberpreferences()",
- "id": "api_sieges_getsiegememberpreferences"
- },
- {
- "label": "previewAutofill()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L165",
- "community": 2,
- "norm_label": "previewautofill()",
- "id": "api_sieges_previewautofill"
- },
- {
- "label": "applyAutofill()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L174",
- "community": 2,
- "norm_label": "applyautofill()",
- "id": "api_sieges_applyautofill"
- },
- {
- "label": "previewAttackDay()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L183",
- "community": 2,
- "norm_label": "previewattackday()",
- "id": "api_sieges_previewattackday"
- },
- {
- "label": "applyAttackDay()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L192",
- "community": 2,
- "norm_label": "applyattackday()",
- "id": "api_sieges_applyattackday"
- },
- {
- "label": "compareSieges()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L201",
- "community": 21,
- "norm_label": "comparesieges()",
- "id": "api_sieges_comparesieges"
- },
- {
- "label": "compareSiegesSpecific()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L210",
- "community": 2,
- "norm_label": "comparesiegesspecific()",
- "id": "api_sieges_comparesiegesspecific"
- },
- {
- "label": "previewPostSuggestions()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L220",
- "community": 2,
- "norm_label": "previewpostsuggestions()",
- "id": "api_sieges_previewpostsuggestions"
- },
- {
- "label": "applyPostSuggestions()",
- "file_type": "code",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L229",
- "community": 2,
- "norm_label": "applypostsuggestions()",
- "id": "api_sieges_applypostsuggestions"
- },
- {
- "label": "types.ts",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L1",
- "community": 0,
- "norm_label": "types.ts",
- "id": "frontend_src_api_types_ts"
- },
- {
- "label": "MemberRole",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L2",
- "community": 0,
- "norm_label": "memberrole",
- "id": "api_types_memberrole"
- },
- {
- "label": "SiegeStatus",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L3",
- "community": 0,
- "norm_label": "siegestatus",
- "id": "api_types_siegestatus"
- },
- {
- "label": "BuildingType",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L4",
- "community": 0,
- "norm_label": "buildingtype",
- "id": "api_types_buildingtype"
- },
- {
- "label": "Member",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L12",
- "community": 0,
- "norm_label": "member",
- "id": "api_types_member"
- },
- {
- "label": "SyncMatch",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L23",
- "community": 0,
- "norm_label": "syncmatch",
- "id": "api_types_syncmatch"
- },
- {
- "label": "SyncPreviewResponse",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L32",
- "community": 0,
- "norm_label": "syncpreviewresponse",
- "id": "api_types_syncpreviewresponse"
- },
- {
- "label": "SyncApplyItem",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L38",
- "community": 1,
- "norm_label": "syncapplyitem",
- "id": "api_types_syncapplyitem"
- },
- {
- "label": "PostCondition",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L44",
- "community": 0,
- "norm_label": "postcondition",
- "id": "api_types_postcondition"
- },
- {
- "label": "Siege",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L51",
- "community": 0,
- "norm_label": "siege",
- "id": "api_types_siege"
- },
- {
- "label": "Building",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L62",
- "community": 0,
- "norm_label": "building",
- "id": "api_types_building"
- },
- {
- "label": "MemberPreferenceSummary",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L72",
- "community": 0,
- "norm_label": "memberpreferencesummary",
- "id": "api_types_memberpreferencesummary"
- },
- {
- "label": "PositionResponse",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L79",
- "community": 0,
- "norm_label": "positionresponse",
- "id": "api_types_positionresponse"
- },
- {
- "label": "BuildingGroupResponse",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L89",
- "community": 0,
- "norm_label": "buildinggroupresponse",
- "id": "api_types_buildinggroupresponse"
- },
- {
- "label": "BuildingResponse",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L96",
- "community": 0,
- "norm_label": "buildingresponse",
- "id": "api_types_buildingresponse"
- },
- {
- "label": "BoardResponse",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L105",
- "community": 0,
- "norm_label": "boardresponse",
- "id": "api_types_boardresponse"
- },
- {
- "label": "SiegeMember",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L111",
- "community": 1,
- "norm_label": "siegemember",
- "id": "api_types_siegemember"
- },
- {
- "label": "Post",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L129",
- "community": 0,
- "norm_label": "post",
- "id": "api_types_post"
- },
- {
- "label": "ValidationIssue",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L140",
- "community": 2,
- "norm_label": "validationissue",
- "id": "api_types_validationissue"
- },
- {
- "label": "ValidationResult",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L146",
- "community": 2,
- "norm_label": "validationresult",
- "id": "api_types_validationresult"
- },
- {
- "label": "AutofillAssignment",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L152",
- "community": 2,
- "norm_label": "autofillassignment",
- "id": "api_types_autofillassignment"
- },
- {
- "label": "AutofillPreviewResult",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L158",
- "community": 2,
- "norm_label": "autofillpreviewresult",
- "id": "api_types_autofillpreviewresult"
- },
- {
- "label": "AutofillApplyResult",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L163",
- "community": 2,
- "norm_label": "autofillapplyresult",
- "id": "api_types_autofillapplyresult"
- },
- {
- "label": "AttackDayAssignment",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L168",
- "community": 2,
- "norm_label": "attackdayassignment",
- "id": "api_types_attackdayassignment"
- },
- {
- "label": "AttackDayPreviewResult",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L173",
- "community": 2,
- "norm_label": "attackdaypreviewresult",
- "id": "api_types_attackdaypreviewresult"
- },
- {
- "label": "AttackDayApplyResult",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L178",
- "community": 2,
- "norm_label": "attackdayapplyresult",
- "id": "api_types_attackdayapplyresult"
- },
- {
- "label": "PositionKey",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L183",
- "community": 21,
- "norm_label": "positionkey",
- "id": "api_types_positionkey"
- },
- {
- "label": "MemberDiff",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L190",
- "community": 21,
- "norm_label": "memberdiff",
- "id": "api_types_memberdiff"
- },
- {
- "label": "ComparisonResult",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L198",
- "community": 21,
- "norm_label": "comparisonresult",
- "id": "api_types_comparisonresult"
- },
- {
- "label": "NotificationResultItem",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L205",
- "community": 0,
- "norm_label": "notificationresultitem",
- "id": "api_types_notificationresultitem"
- },
- {
- "label": "NotificationBatchResponse",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L214",
- "community": 0,
- "norm_label": "notificationbatchresponse",
- "id": "api_types_notificationbatchresponse"
- },
- {
- "label": "NotifyResponse",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L220",
- "community": 0,
- "norm_label": "notifyresponse",
- "id": "api_types_notifyresponse"
- },
- {
- "label": "GenerateImagesResponse",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L227",
- "community": 0,
- "norm_label": "generateimagesresponse",
- "id": "api_types_generateimagesresponse"
- },
- {
- "label": "VersionInfo",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L233",
- "community": 12,
- "norm_label": "versioninfo",
- "id": "api_types_versioninfo"
- },
- {
- "label": "BuildingTypeInfo",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L241",
- "community": 2,
- "norm_label": "buildingtypeinfo",
- "id": "api_types_buildingtypeinfo"
- },
- {
- "label": "MemberRoleInfo",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L249",
- "community": 1,
- "norm_label": "memberroleinfo",
- "id": "api_types_memberroleinfo"
- },
- {
- "label": "PostSuggestionSkipReason",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L256",
- "community": 0,
- "norm_label": "postsuggestionskipreason",
- "id": "api_types_postsuggestionskipreason"
- },
- {
- "label": "PostSuggestionPreviewResult",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L279",
- "community": 2,
- "norm_label": "postsuggestionpreviewresult",
- "id": "api_types_postsuggestionpreviewresult"
- },
- {
- "label": "PostSuggestionStaleReason",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L284",
- "community": 0,
- "norm_label": "postsuggestionstalereason",
- "id": "api_types_postsuggestionstalereason"
- },
- {
- "label": "PostSuggestionStaleEntry",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L291",
- "community": 4,
- "norm_label": "postsuggestionstaleentry",
- "id": "api_types_postsuggestionstaleentry"
- },
- {
- "label": "PostSuggestionApplyResult",
- "file_type": "code",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L298",
- "community": 2,
- "norm_label": "postsuggestionapplyresult",
- "id": "api_types_postsuggestionapplyresult"
- },
- {
- "label": "getVersion()",
- "file_type": "code",
- "source_file": "frontend/src/api/version.ts",
- "source_location": "L5",
- "community": 12,
- "norm_label": "getversion()",
- "id": "api_version_getversion"
- },
- {
- "label": "useVersion()",
- "file_type": "code",
- "source_file": "frontend/src/api/version.ts",
- "source_location": "L10",
- "community": 12,
- "norm_label": "useversion()",
- "id": "api_version_useversion"
- },
- {
- "label": "CarouselSlide",
- "file_type": "code",
- "source_file": "frontend/src/components/Carousel.tsx",
- "source_location": "L10",
- "community": 19,
- "norm_label": "carouselslide",
- "id": "components_carousel_carouselslide"
- },
- {
- "label": "CarouselProps",
- "file_type": "code",
- "source_file": "frontend/src/components/Carousel.tsx",
- "source_location": "L22",
- "community": 19,
- "norm_label": "carouselprops",
- "id": "components_carousel_carouselprops"
- },
- {
- "label": "Carousel()",
- "file_type": "code",
- "source_file": "frontend/src/components/Carousel.tsx",
- "source_location": "L35",
- "community": 19,
- "norm_label": "carousel()",
- "id": "components_carousel_carousel"
- },
- {
- "label": "ChangelogDropdown.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L1",
- "community": 26,
- "norm_label": "changelogdropdown.tsx",
- "id": "frontend_src_components_changelogdropdown_tsx"
- },
- {
- "label": "hasUnread()",
- "file_type": "code",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L29",
- "community": 26,
- "norm_label": "hasunread()",
- "id": "components_changelogdropdown_hasunread"
- },
- {
- "label": "DiscordSyncModal.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "discordsyncmodal.tsx",
- "id": "frontend_src_components_discordsyncmodal_tsx"
- },
- {
- "label": "ConfidenceVariant",
- "file_type": "code",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L31",
- "community": 1,
- "norm_label": "confidencevariant",
- "id": "components_discordsyncmodal_confidencevariant"
- },
- {
- "label": "CONFIDENCE_LABEL",
- "file_type": "code",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L39",
- "community": 1,
- "norm_label": "confidence_label",
- "id": "components_discordsyncmodal_confidence_label"
- },
- {
- "label": "Props",
- "file_type": "code",
- "source_file": "frontend/src/components/GroupByToggle.tsx",
- "source_location": "L11",
- "community": 1,
- "norm_label": "props",
- "id": "components_groupbytoggle_props"
- },
- {
- "label": "GroupByToggle()",
- "file_type": "code",
- "source_file": "frontend/src/components/GroupByToggle.tsx",
- "source_location": "L31",
- "community": 1,
- "norm_label": "groupbytoggle()",
- "id": "components_groupbytoggle_groupbytoggle"
- },
- {
- "label": "Layout.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L1",
- "community": 20,
- "norm_label": "layout.tsx",
- "id": "frontend_src_components_layout_tsx"
- },
- {
- "label": "navLinkClass()",
- "file_type": "code",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L9",
- "community": 20,
- "norm_label": "navlinkclass()",
- "id": "components_layout_navlinkclass"
- },
- {
- "label": "Layout()",
- "file_type": "code",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L17",
- "community": 20,
- "norm_label": "layout()",
- "id": "components_layout_layout"
- },
- {
- "label": "MemberWithMatches",
- "file_type": "code",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L57",
- "community": 14,
- "norm_label": "memberwithmatches",
- "id": "components_poststab_memberwithmatches"
- },
- {
- "label": "DuplicateConditionMap",
- "file_type": "code",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L64",
- "community": 14,
- "norm_label": "duplicateconditionmap",
- "id": "components_poststab_duplicateconditionmap"
- },
- {
- "label": "buildDuplicateConditionMap()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L68",
- "community": 14,
- "norm_label": "buildduplicateconditionmap()",
- "id": "components_poststab_buildduplicateconditionmap"
- },
- {
- "label": "findPostPosition()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L85",
- "community": 14,
- "norm_label": "findpostposition()",
- "id": "components_poststab_findpostposition"
- },
- {
- "label": "MemberAssignRow()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L100",
- "community": 14,
- "norm_label": "memberassignrow()",
- "id": "components_poststab_memberassignrow"
- },
- {
- "label": "OutcomeFilter",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L30",
- "community": 4,
- "norm_label": "outcomefilter",
- "id": "components_postsuggestionsmodal_outcomefilter"
- },
- {
- "label": "Classification",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L32",
- "community": 4,
- "norm_label": "classification",
- "id": "components_postsuggestionsmodal_classification"
- },
- {
- "label": "PRIORITY_META",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L42",
- "community": 4,
- "norm_label": "priority_meta",
- "id": "components_postsuggestionsmodal_priority_meta"
- },
- {
- "label": "getPriorityMeta()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L64",
- "community": 4,
- "norm_label": "getprioritymeta()",
- "id": "components_postsuggestionsmodal_getprioritymeta"
- },
- {
- "label": "SKIP_REASON_LABEL",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L70",
- "community": 4,
- "norm_label": "skip_reason_label",
- "id": "components_postsuggestionsmodal_skip_reason_label"
- },
- {
- "label": "STALE_REASON_LABEL",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L82",
- "community": 4,
- "norm_label": "stale_reason_label",
- "id": "components_postsuggestionsmodal_stale_reason_label"
- },
- {
- "label": "TileConfig",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L93",
- "community": 4,
- "norm_label": "tileconfig",
- "id": "components_postsuggestionsmodal_tileconfig"
- },
- {
- "label": "classify()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L159",
- "community": 4,
- "norm_label": "classify()",
- "id": "components_postsuggestionsmodal_classify"
- },
- {
- "label": "Pill()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L169",
- "community": 4,
- "norm_label": "pill()",
- "id": "components_postsuggestionsmodal_pill"
- },
- {
- "label": "ChangeCell()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L197",
- "community": 4,
- "norm_label": "changecell()",
- "id": "components_postsuggestionsmodal_changecell"
- },
- {
- "label": "SkipIcon()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L248",
- "community": 4,
- "norm_label": "skipicon()",
- "id": "components_postsuggestionsmodal_skipicon"
- },
- {
- "label": "ConditionCell()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L259",
- "community": 4,
- "norm_label": "conditioncell()",
- "id": "components_postsuggestionsmodal_conditioncell"
- },
- {
- "label": "SummaryTile()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L290",
- "community": 4,
- "norm_label": "summarytile()",
- "id": "components_postsuggestionsmodal_summarytile"
- },
- {
- "label": "StateLoading()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L345",
- "community": 4,
- "norm_label": "stateloading()",
- "id": "components_postsuggestionsmodal_stateloading"
- },
- {
- "label": "StateEmpty()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L355",
- "community": 4,
- "norm_label": "stateempty()",
- "id": "components_postsuggestionsmodal_stateempty"
- },
- {
- "label": "StateStaleConflict()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L379",
- "community": 4,
- "norm_label": "statestaleconflict()",
- "id": "components_postsuggestionsmodal_statestaleconflict"
- },
- {
- "label": "ExpiryCountdown",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L476",
- "community": 4,
- "norm_label": "expirycountdown",
- "id": "components_postsuggestionsmodal_expirycountdown"
- },
- {
- "label": "useExpiryCountdown()",
- "file_type": "code",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L486",
- "community": 4,
- "norm_label": "useexpirycountdown()",
- "id": "components_postsuggestionsmodal_useexpirycountdown"
- },
- {
- "label": "RequireAuth.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/RequireAuth.tsx",
- "source_location": "L1",
- "community": 20,
- "norm_label": "requireauth.tsx",
- "id": "frontend_src_components_requireauth_tsx"
- },
- {
- "label": "RequireAuth()",
- "file_type": "code",
- "source_file": "frontend/src/components/RequireAuth.tsx",
- "source_location": "L4",
- "community": 20,
- "norm_label": "requireauth()",
- "id": "components_requireauth_requireauth"
- },
- {
- "label": "SiegeLayout.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/SiegeLayout.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "siegelayout.tsx",
- "id": "frontend_src_components_siegelayout_tsx"
- },
- {
- "label": "SiegeLayout()",
- "file_type": "code",
- "source_file": "frontend/src/components/SiegeLayout.tsx",
- "source_location": "L13",
- "community": 1,
- "norm_label": "siegelayout()",
- "id": "components_siegelayout_siegelayout"
- },
- {
- "label": "badge.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "badge.tsx",
- "id": "frontend_src_components_ui_badge_tsx"
- },
- {
- "label": "badgeVariants",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L5",
- "community": 1,
- "norm_label": "badgevariants",
- "id": "ui_badge_badgevariants"
- },
- {
- "label": "BadgeProps",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L29",
- "community": 1,
- "norm_label": "badgeprops",
- "id": "ui_badge_badgeprops"
- },
- {
- "label": "Badge()",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L34",
- "community": 1,
- "norm_label": "badge()",
- "id": "ui_badge_badge"
- },
- {
- "label": "button.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/button.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "button.tsx",
- "id": "frontend_src_components_ui_button_tsx"
- },
- {
- "label": "buttonVariants",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/button.tsx",
- "source_location": "L6",
- "community": 1,
- "norm_label": "buttonvariants",
- "id": "ui_button_buttonvariants"
- },
- {
- "label": "ButtonProps",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/button.tsx",
- "source_location": "L36",
- "community": 1,
- "norm_label": "buttonprops",
- "id": "ui_button_buttonprops"
- },
- {
- "label": "Button",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/button.tsx",
- "source_location": "L43",
- "community": 1,
- "norm_label": "button",
- "id": "ui_button_button"
- },
- {
- "label": "Checkbox",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/checkbox.tsx",
- "source_location": "L6",
- "community": 1,
- "norm_label": "checkbox",
- "id": "ui_checkbox_checkbox"
- },
- {
- "label": "dialog.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "dialog.tsx",
- "id": "frontend_src_components_ui_dialog_tsx"
- },
- {
- "label": "DialogOverlay",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L11",
- "community": 1,
- "norm_label": "dialogoverlay",
- "id": "ui_dialog_dialogoverlay"
- },
- {
- "label": "DialogContent",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L26",
- "community": 1,
- "norm_label": "dialogcontent",
- "id": "ui_dialog_dialogcontent"
- },
- {
- "label": "DialogHeader()",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L50",
- "community": 1,
- "norm_label": "dialogheader()",
- "id": "ui_dialog_dialogheader"
- },
- {
- "label": "DialogFooter()",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L66",
- "community": 1,
- "norm_label": "dialogfooter()",
- "id": "ui_dialog_dialogfooter"
- },
- {
- "label": "DialogTitle",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L82",
- "community": 1,
- "norm_label": "dialogtitle",
- "id": "ui_dialog_dialogtitle"
- },
- {
- "label": "DialogDescription",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L97",
- "community": 1,
- "norm_label": "dialogdescription",
- "id": "ui_dialog_dialogdescription"
- },
- {
- "label": "dropdown-menu.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L1",
- "community": 23,
- "norm_label": "dropdown-menu.tsx",
- "id": "frontend_src_components_ui_dropdown_menu_tsx"
- },
- {
- "label": "DropdownMenuSubTrigger",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L20",
- "community": 23,
- "norm_label": "dropdownmenusubtrigger",
- "id": "ui_dropdown_menu_dropdownmenusubtrigger"
- },
- {
- "label": "DropdownMenuSubContent",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L42",
- "community": 23,
- "norm_label": "dropdownmenusubcontent",
- "id": "ui_dropdown_menu_dropdownmenusubcontent"
- },
- {
- "label": "DropdownMenuContent",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L58",
- "community": 26,
- "norm_label": "dropdownmenucontent",
- "id": "ui_dropdown_menu_dropdownmenucontent"
- },
- {
- "label": "DropdownMenuItem",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L76",
- "community": 23,
- "norm_label": "dropdownmenuitem",
- "id": "ui_dropdown_menu_dropdownmenuitem"
- },
- {
- "label": "DropdownMenuCheckboxItem",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L94",
- "community": 23,
- "norm_label": "dropdownmenucheckboxitem",
- "id": "ui_dropdown_menu_dropdownmenucheckboxitem"
- },
- {
- "label": "DropdownMenuRadioItem",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L118",
- "community": 23,
- "norm_label": "dropdownmenuradioitem",
- "id": "ui_dropdown_menu_dropdownmenuradioitem"
- },
- {
- "label": "DropdownMenuLabel",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L140",
- "community": 23,
- "norm_label": "dropdownmenulabel",
- "id": "ui_dropdown_menu_dropdownmenulabel"
- },
- {
- "label": "DropdownMenuSeparator",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L158",
- "community": 23,
- "norm_label": "dropdownmenuseparator",
- "id": "ui_dropdown_menu_dropdownmenuseparator"
- },
- {
- "label": "DropdownMenuShortcut()",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L170",
- "community": 23,
- "norm_label": "dropdownmenushortcut()",
- "id": "ui_dropdown_menu_dropdownmenushortcut"
- },
- {
- "label": "input.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/input.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "input.tsx",
- "id": "frontend_src_components_ui_input_tsx"
- },
- {
- "label": "InputProps",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/input.tsx",
- "source_location": "L4",
- "community": 1,
- "norm_label": "inputprops",
- "id": "ui_input_inputprops"
- },
- {
- "label": "Input",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/input.tsx",
- "source_location": "L6",
- "community": 1,
- "norm_label": "input",
- "id": "ui_input_input"
- },
- {
- "label": "label.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/label.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "label.tsx",
- "id": "frontend_src_components_ui_label_tsx"
- },
- {
- "label": "Label",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/label.tsx",
- "source_location": "L5",
- "community": 1,
- "norm_label": "label",
- "id": "ui_label_label"
- },
- {
- "label": "select.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "select.tsx",
- "id": "frontend_src_components_ui_select_tsx"
- },
- {
- "label": "SelectTrigger",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L10",
- "community": 1,
- "norm_label": "selecttrigger",
- "id": "ui_select_selecttrigger"
- },
- {
- "label": "SelectScrollUpButton",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L30",
- "community": 1,
- "norm_label": "selectscrollupbutton",
- "id": "ui_select_selectscrollupbutton"
- },
- {
- "label": "SelectScrollDownButton",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L47",
- "community": 1,
- "norm_label": "selectscrolldownbutton",
- "id": "ui_select_selectscrolldownbutton"
- },
- {
- "label": "SelectContent",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L65",
- "community": 1,
- "norm_label": "selectcontent",
- "id": "ui_select_selectcontent"
- },
- {
- "label": "SelectLabel",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L97",
- "community": 1,
- "norm_label": "selectlabel",
- "id": "ui_select_selectlabel"
- },
- {
- "label": "SelectItem",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L109",
- "community": 1,
- "norm_label": "selectitem",
- "id": "ui_select_selectitem"
- },
- {
- "label": "SelectSeparator",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L131",
- "community": 1,
- "norm_label": "selectseparator",
- "id": "ui_select_selectseparator"
- },
- {
- "label": "table.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "table.tsx",
- "id": "frontend_src_components_ui_table_tsx"
- },
- {
- "label": "Table",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L4",
- "community": 1,
- "norm_label": "table",
- "id": "ui_table_table"
- },
- {
- "label": "TableBody",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L26",
- "community": 1,
- "norm_label": "tablebody",
- "id": "ui_table_tablebody"
- },
- {
- "label": "TableFooter",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L38",
- "community": 1,
- "norm_label": "tablefooter",
- "id": "ui_table_tablefooter"
- },
- {
- "label": "TableRow",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L53",
- "community": 1,
- "norm_label": "tablerow",
- "id": "ui_table_tablerow"
- },
- {
- "label": "TableHead",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L68",
- "community": 1,
- "norm_label": "tablehead",
- "id": "ui_table_tablehead"
- },
- {
- "label": "TableCell",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L83",
- "community": 1,
- "norm_label": "tablecell",
- "id": "ui_table_tablecell"
- },
- {
- "label": "TableCaption",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L98",
- "community": 1,
- "norm_label": "tablecaption",
- "id": "ui_table_tablecaption"
- },
- {
- "label": "textarea.tsx",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/textarea.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "textarea.tsx",
- "id": "frontend_src_components_ui_textarea_tsx"
- },
- {
- "label": "TextareaProps",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/textarea.tsx",
- "source_location": "L4",
- "community": 1,
- "norm_label": "textareaprops",
- "id": "ui_textarea_textareaprops"
- },
- {
- "label": "Textarea",
- "file_type": "code",
- "source_file": "frontend/src/components/ui/textarea.tsx",
- "source_location": "L6",
- "community": 1,
- "norm_label": "textarea",
- "id": "ui_textarea_textarea"
- },
- {
- "label": "AuthContext.tsx",
- "file_type": "code",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L1",
- "community": 25,
- "norm_label": "authcontext.tsx",
- "id": "frontend_src_context_authcontext_tsx"
- },
- {
- "label": "AuthUser",
- "file_type": "code",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L11",
- "community": 25,
- "norm_label": "authuser",
- "id": "context_authcontext_authuser"
- },
- {
- "label": "AuthContextValue",
- "file_type": "code",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L18",
- "community": 25,
- "norm_label": "authcontextvalue",
- "id": "context_authcontext_authcontextvalue"
- },
- {
- "label": "AuthContext",
- "file_type": "code",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L25",
- "community": 25,
- "norm_label": "authcontext",
- "id": "context_authcontext_authcontext"
- },
- {
- "label": "AuthProvider()",
- "file_type": "code",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L27",
- "community": 25,
- "norm_label": "authprovider()",
- "id": "context_authcontext_authprovider"
- },
- {
- "label": "useAuth()",
- "file_type": "code",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L63",
- "community": 20,
- "norm_label": "useauth()",
- "id": "context_authcontext_useauth"
- },
- {
- "label": "buildingColors.ts",
- "file_type": "code",
- "source_file": "frontend/src/lib/buildingColors.ts",
- "source_location": "L1",
- "community": 13,
- "norm_label": "buildingcolors.ts",
- "id": "frontend_src_lib_buildingcolors_ts"
- },
- {
- "label": "BuildingColorClass",
- "file_type": "code",
- "source_file": "frontend/src/lib/buildingColors.ts",
- "source_location": "L3",
- "community": 13,
- "norm_label": "buildingcolorclass",
- "id": "lib_buildingcolors_buildingcolorclass"
- },
- {
- "label": "BUILDING_LABELS",
- "file_type": "code",
- "source_file": "frontend/src/lib/buildingColors.ts",
- "source_location": "L49",
- "community": 13,
- "norm_label": "building_labels",
- "id": "lib_buildingcolors_building_labels"
- },
- {
- "label": "groupPostConditions.ts",
- "file_type": "code",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L1",
- "community": 1,
- "norm_label": "grouppostconditions.ts",
- "id": "frontend_src_lib_grouppostconditions_ts"
- },
- {
- "label": "GroupByMode",
- "file_type": "code",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L17",
- "community": 1,
- "norm_label": "groupbymode",
- "id": "lib_grouppostconditions_groupbymode"
- },
- {
- "label": "ConditionGroup",
- "file_type": "code",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L20",
- "community": 1,
- "norm_label": "conditiongroup",
- "id": "lib_grouppostconditions_conditiongroup"
- },
- {
- "label": "groupByLevel()",
- "file_type": "code",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L53",
- "community": 1,
- "norm_label": "groupbylevel()",
- "id": "lib_grouppostconditions_groupbylevel"
- },
- {
- "label": "groupByType()",
- "file_type": "code",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L74",
- "community": 1,
- "norm_label": "groupbytype()",
- "id": "lib_grouppostconditions_groupbytype"
- },
- {
- "label": "post-priority.ts",
- "file_type": "code",
- "source_file": "frontend/src/lib/post-priority.ts",
- "source_location": "L1",
- "community": 14,
- "norm_label": "post-priority.ts",
- "id": "frontend_src_lib_post_priority_ts"
- },
- {
- "label": "priorityLabel()",
- "file_type": "code",
- "source_file": "frontend/src/lib/post-priority.ts",
- "source_location": "L23",
- "community": 14,
- "norm_label": "prioritylabel()",
- "id": "lib_post_priority_prioritylabel"
- },
- {
- "label": "priorityBadgeColor()",
- "file_type": "code",
- "source_file": "frontend/src/lib/post-priority.ts",
- "source_location": "L27",
- "community": 14,
- "norm_label": "prioritybadgecolor()",
- "id": "lib_post_priority_prioritybadgecolor"
- },
- {
- "label": "useGroupByPreference.ts",
- "file_type": "code",
- "source_file": "frontend/src/lib/useGroupByPreference.ts",
- "source_location": "L1",
- "community": 1,
- "norm_label": "usegroupbypreference.ts",
- "id": "frontend_src_lib_usegroupbypreference_ts"
- },
- {
- "label": "VALID_MODES",
- "file_type": "code",
- "source_file": "frontend/src/lib/useGroupByPreference.ts",
- "source_location": "L14",
- "community": 1,
- "norm_label": "valid_modes",
- "id": "lib_usegroupbypreference_valid_modes"
- },
- {
- "label": "utils.ts",
- "file_type": "code",
- "source_file": "frontend/src/lib/utils.ts",
- "source_location": "L1",
- "community": 1,
- "norm_label": "utils.ts",
- "id": "frontend_src_lib_utils_ts"
- },
- {
- "label": "cn()",
- "file_type": "code",
- "source_file": "frontend/src/lib/utils.ts",
- "source_location": "L4",
- "community": 1,
- "norm_label": "cn()",
- "id": "lib_utils_cn"
- },
- {
- "label": "ROLE_LABELS",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L58",
- "community": 14,
- "norm_label": "role_labels",
- "id": "pages_boardpage_role_labels"
- },
- {
- "label": "ROLE_PRIORITY",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L65",
- "community": 14,
- "norm_label": "role_priority",
- "id": "pages_boardpage_role_priority"
- },
- {
- "label": "ROLE_COLORS",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L72",
- "community": 13,
- "norm_label": "role_colors",
- "id": "pages_boardpage_role_colors"
- },
- {
- "label": "ROLE_BADGE_COLORS",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L79",
- "community": 14,
- "norm_label": "role_badge_colors",
- "id": "pages_boardpage_role_badge_colors"
- },
- {
- "label": "ROLE_CHIP_COLORS",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L87",
- "community": 13,
- "norm_label": "role_chip_colors",
- "id": "pages_boardpage_role_chip_colors"
- },
- {
- "label": "POWER_LABELS",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L94",
- "community": 14,
- "norm_label": "power_labels",
- "id": "pages_boardpage_power_labels"
- },
- {
- "label": "BUILDING_TYPE_ORDER",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L103",
- "community": 13,
- "norm_label": "building_type_order",
- "id": "pages_boardpage_building_type_order"
- },
- {
- "label": "DraggableMemberRow()",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L254",
- "community": 13,
- "norm_label": "draggablememberrow()",
- "id": "pages_boardpage_draggablememberrow"
- },
- {
- "label": "MemberDragOverlay()",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L322",
- "community": 13,
- "norm_label": "memberdragoverlay()",
- "id": "pages_boardpage_memberdragoverlay"
- },
- {
- "label": "RoleFilter",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L347",
- "community": 13,
- "norm_label": "rolefilter",
- "id": "pages_boardpage_rolefilter"
- },
- {
- "label": "ROLE_FILTER_OPTIONS",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L349",
- "community": 13,
- "norm_label": "role_filter_options",
- "id": "pages_boardpage_role_filter_options"
- },
- {
- "label": "MemberBucket()",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L357",
- "community": 13,
- "norm_label": "memberbucket()",
- "id": "pages_boardpage_memberbucket"
- },
- {
- "label": "BuildingTableRow()",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L457",
- "community": 13,
- "norm_label": "buildingtablerow()",
- "id": "pages_boardpage_buildingtablerow"
- },
- {
- "label": "BuildingTypeSection()",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L553",
- "community": 13,
- "norm_label": "buildingtypesection()",
- "id": "pages_boardpage_buildingtypesection"
- },
- {
- "label": "ConditionalDndContext()",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L679",
- "community": 13,
- "norm_label": "conditionaldndcontext()",
- "id": "pages_boardpage_conditionaldndcontext"
- },
- {
- "label": "ActiveTab",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L711",
- "community": 13,
- "norm_label": "activetab",
- "id": "pages_boardpage_activetab"
- },
- {
- "label": "BoardPage()",
- "file_type": "code",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L713",
- "community": 13,
- "norm_label": "boardpage()",
- "id": "pages_boardpage_boardpage"
- },
- {
- "label": "formatPosition()",
- "file_type": "code",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L17",
- "community": 1,
- "norm_label": "formatposition()",
- "id": "pages_comparisonpage_formatposition"
- },
- {
- "label": "PositionTag()",
- "file_type": "code",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L26",
- "community": 1,
- "norm_label": "positiontag()",
- "id": "pages_comparisonpage_positiontag"
- },
- {
- "label": "MemberPositionsCell()",
- "file_type": "code",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L41",
- "community": 1,
- "norm_label": "memberpositionscell()",
- "id": "pages_comparisonpage_memberpositionscell"
- },
- {
- "label": "ComparisonPage()",
- "file_type": "code",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L67",
- "community": 1,
- "norm_label": "comparisonpage()",
- "id": "pages_comparisonpage_comparisonpage"
- },
- {
- "label": "LandingPage.tsx",
- "file_type": "code",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L1",
- "community": 19,
- "norm_label": "landingpage.tsx",
- "id": "frontend_src_pages_landingpage_tsx"
- },
- {
- "label": "LandingOrSieges()",
- "file_type": "code",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L10",
- "community": 20,
- "norm_label": "landingorsieges()",
- "id": "pages_landingpage_landingorsieges"
- },
- {
- "label": "SLIDES",
- "file_type": "code",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L26",
- "community": 19,
- "norm_label": "slides",
- "id": "pages_landingpage_slides"
- },
- {
- "label": "ShieldIcon()",
- "file_type": "code",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L68",
- "community": 19,
- "norm_label": "shieldicon()",
- "id": "pages_landingpage_shieldicon"
- },
- {
- "label": "GitHubIcon()",
- "file_type": "code",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L88",
- "community": 19,
- "norm_label": "githubicon()",
- "id": "pages_landingpage_githubicon"
- },
- {
- "label": "CheckIcon()",
- "file_type": "code",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L108",
- "community": 19,
- "norm_label": "checkicon()",
- "id": "pages_landingpage_checkicon"
- },
- {
- "label": "ExternalLinkIcon()",
- "file_type": "code",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L128",
- "community": 19,
- "norm_label": "externallinkicon()",
- "id": "pages_landingpage_externallinkicon"
- },
- {
- "label": "COLORS",
- "file_type": "code",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L150",
- "community": 19,
- "norm_label": "colors",
- "id": "pages_landingpage_colors"
- },
- {
- "label": "LandingPage()",
- "file_type": "code",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L157",
- "community": 19,
- "norm_label": "landingpage()",
- "id": "pages_landingpage_landingpage"
- },
- {
- "label": "ERROR_MESSAGES",
- "file_type": "code",
- "source_file": "frontend/src/pages/LoginPage.tsx",
- "source_location": "L7",
- "community": 27,
- "norm_label": "error_messages",
- "id": "pages_loginpage_error_messages"
- },
- {
- "label": "MEMBERSHIP_ERRORS",
- "file_type": "code",
- "source_file": "frontend/src/pages/LoginPage.tsx",
- "source_location": "L15",
- "community": 27,
- "norm_label": "membership_errors",
- "id": "pages_loginpage_membership_errors"
- },
- {
- "label": "MobileBanner()",
- "file_type": "code",
- "source_file": "frontend/src/pages/LoginPage.tsx",
- "source_location": "L18",
- "community": 27,
- "norm_label": "mobilebanner()",
- "id": "pages_loginpage_mobilebanner"
- },
- {
- "label": "LoginPage()",
- "file_type": "code",
- "source_file": "frontend/src/pages/LoginPage.tsx",
- "source_location": "L34",
- "community": 27,
- "norm_label": "loginpage()",
- "id": "pages_loginpage_loginpage"
- },
- {
- "label": "MemberDetailPage.tsx",
- "file_type": "code",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "memberdetailpage.tsx",
- "id": "frontend_src_pages_memberdetailpage_tsx"
- },
- {
- "label": "ROLE_OPTIONS",
- "file_type": "code",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L41",
- "community": 1,
- "norm_label": "role_options",
- "id": "pages_memberdetailpage_role_options"
- },
- {
- "label": "RoleBadgeVariant",
- "file_type": "code",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L43",
- "community": 1,
- "norm_label": "rolebadgevariant",
- "id": "pages_memberspage_rolebadgevariant"
- },
- {
- "label": "ROLE_VARIANTS",
- "file_type": "code",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L45",
- "community": 1,
- "norm_label": "role_variants",
- "id": "pages_memberspage_role_variants"
- },
- {
- "label": "MembersPage()",
- "file_type": "code",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L52",
- "community": 1,
- "norm_label": "memberspage()",
- "id": "pages_memberspage_memberspage"
- },
- {
- "label": "PostPrioritiesPage.tsx",
- "file_type": "code",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "postprioritiespage.tsx",
- "id": "frontend_src_pages_postprioritiespage_tsx"
- },
- {
- "label": "DescriptionCell()",
- "file_type": "code",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L30",
- "community": 1,
- "norm_label": "descriptioncell()",
- "id": "pages_postprioritiespage_descriptioncell"
- },
- {
- "label": "Tab",
- "file_type": "code",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L64",
- "community": 1,
- "norm_label": "tab",
- "id": "pages_postprioritiespage_tab"
- },
- {
- "label": "PostRow()",
- "file_type": "code",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L30",
- "community": 1,
- "norm_label": "postrow()",
- "id": "pages_postspage_postrow"
- },
- {
- "label": "PostsPage()",
- "file_type": "code",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L265",
- "community": 1,
- "norm_label": "postspage()",
- "id": "pages_postspage_postspage"
- },
- {
- "label": "nextTuesdayFrom()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L19",
- "community": 1,
- "norm_label": "nexttuesdayfrom()",
- "id": "pages_siegecreatepage_nexttuesdayfrom"
- },
- {
- "label": "formatDateLocal()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L27",
- "community": 1,
- "norm_label": "formatdatelocal()",
- "id": "pages_siegecreatepage_formatdatelocal"
- },
- {
- "label": "suggestNextSiegeDate()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L34",
- "community": 1,
- "norm_label": "suggestnextsiegedate()",
- "id": "pages_siegecreatepage_suggestnextsiegedate"
- },
- {
- "label": "SiegeCreatePage()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L46",
- "community": 1,
- "norm_label": "siegecreatepage()",
- "id": "pages_siegecreatepage_siegecreatepage"
- },
- {
- "label": "AttackDaySelect()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L41",
- "community": 1,
- "norm_label": "attackdayselect()",
- "id": "pages_siegememberspage_attackdayselect"
- },
- {
- "label": "SiegeSettingsPage.tsx",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "siegesettingspage.tsx",
- "id": "frontend_src_pages_siegesettingspage_tsx"
- },
- {
- "label": "SiegesPage.tsx",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L1",
- "community": 1,
- "norm_label": "siegespage.tsx",
- "id": "frontend_src_pages_siegespage_tsx"
- },
- {
- "label": "StatusBadgeVariant",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L17",
- "community": 1,
- "norm_label": "statusbadgevariant",
- "id": "pages_siegespage_statusbadgevariant"
- },
- {
- "label": "STATUS_VARIANTS",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L19",
- "community": 1,
- "norm_label": "status_variants",
- "id": "pages_siegespage_status_variants"
- },
- {
- "label": "STATUS_LABELS",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L25",
- "community": 1,
- "norm_label": "status_labels",
- "id": "pages_siegespage_status_labels"
- },
- {
- "label": "SiegesPage()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L31",
- "community": 1,
- "norm_label": "siegespage()",
- "id": "pages_siegespage_siegespage"
- },
- {
- "label": "UI_LIBRARIES",
- "file_type": "code",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L6",
- "community": 12,
- "norm_label": "ui_libraries",
- "id": "pages_systempage_ui_libraries"
- },
- {
- "label": "SectionPanel()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L16",
- "community": 12,
- "norm_label": "sectionpanel()",
- "id": "pages_systempage_sectionpanel"
- },
- {
- "label": "DataRow()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L47",
- "community": 12,
- "norm_label": "datarow()",
- "id": "pages_systempage_datarow"
- },
- {
- "label": "LibraryRow()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L80",
- "community": 12,
- "norm_label": "libraryrow()",
- "id": "pages_systempage_libraryrow"
- },
- {
- "label": "SystemPage()",
- "file_type": "code",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L100",
- "community": 12,
- "norm_label": "systempage()",
- "id": "pages_systempage_systempage"
- },
- {
- "label": "changelog.d.ts",
- "file_type": "code",
- "source_file": "frontend/src/types/changelog.d.ts",
- "source_location": "L1",
- "community": 37,
- "norm_label": "changelog.d.ts",
- "id": "frontend_src_types_changelog_d_ts"
- },
- {
- "label": "ChangelogEntry",
- "file_type": "code",
- "source_file": "frontend/src/types/changelog.d.ts",
- "source_location": "L13",
- "community": 37,
- "norm_label": "changelogentry",
- "id": "types_changelog_d_changelogentry"
- },
- {
- "label": "bootstrap-db.ps1",
- "file_type": "code",
- "source_file": "scripts/bootstrap-db.ps1",
- "source_location": "L1",
- "community": 46,
- "norm_label": "bootstrap-db.ps1",
- "id": "scripts_bootstrap_db_ps1"
- },
- {
- "label": "bootstrap-excel-import.ps1",
- "file_type": "code",
- "source_file": "scripts/bootstrap-excel-import.ps1",
- "source_location": "L1",
- "community": 5,
- "norm_label": "bootstrap-excel-import.ps1",
- "id": "scripts_bootstrap_excel_import_ps1"
- },
- {
- "label": "bootstrap-images.ps1",
- "file_type": "code",
- "source_file": "scripts/bootstrap-images.ps1",
- "source_location": "L1",
- "community": 5,
- "norm_label": "bootstrap-images.ps1",
- "id": "scripts_bootstrap_images_ps1"
- },
- {
- "label": "bootstrap-keyvault.ps1",
- "file_type": "code",
- "source_file": "scripts/bootstrap-keyvault.ps1",
- "source_location": "L1",
- "community": 47,
- "norm_label": "bootstrap-keyvault.ps1",
- "id": "scripts_bootstrap_keyvault_ps1"
- },
- {
- "label": "bootstrap-reimport.ps1",
- "file_type": "code",
- "source_file": "scripts/bootstrap-reimport.ps1",
- "source_location": "L1",
- "community": 48,
- "norm_label": "bootstrap-reimport.ps1",
- "id": "scripts_bootstrap_reimport_ps1"
- },
- {
- "label": "generate-origin-pfx.ps1",
- "file_type": "code",
- "source_file": "scripts/generate-origin-pfx.ps1",
- "source_location": "L1",
- "community": 49,
- "norm_label": "generate-origin-pfx.ps1",
- "id": "scripts_generate_origin_pfx_ps1"
- },
- {
- "label": "rebuild.ps1",
- "file_type": "code",
- "source_file": "scripts/rebuild.ps1",
- "source_location": "L1",
- "community": 50,
- "norm_label": "rebuild.ps1",
- "id": "scripts_rebuild_ps1"
- },
- {
- "label": "import_excel.py",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "import_excel.py",
- "id": "scripts_excel_import_import_excel_py"
- },
- {
- "label": "ParsedMember",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L160",
- "community": 0,
- "norm_label": "parsedmember",
- "id": "excel_import_import_excel_parsedmember"
- },
- {
- "label": "ParsedAssignment",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L169",
- "community": 0,
- "norm_label": "parsedassignment",
- "id": "excel_import_import_excel_parsedassignment"
- },
- {
- "label": "ParsedReserve",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L178",
- "community": 0,
- "norm_label": "parsedreserve",
- "id": "excel_import_import_excel_parsedreserve"
- },
- {
- "label": "ParsedPostConfig",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L185",
- "community": 0,
- "norm_label": "parsedpostconfig",
- "id": "excel_import_import_excel_parsedpostconfig"
- },
- {
- "label": "ParsedPostConditions",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L192",
- "community": 0,
- "norm_label": "parsedpostconditions",
- "id": "excel_import_import_excel_parsedpostconditions"
- },
- {
- "label": "ImportStats",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L198",
- "community": 0,
- "norm_label": "importstats",
- "id": "excel_import_import_excel_importstats"
- },
- {
- "label": "parse_filename_date()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L224",
- "community": 0,
- "norm_label": "parse_filename_date()",
- "id": "excel_import_import_excel_parse_filename_date"
- },
- {
- "label": "map_role()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L236",
- "community": 0,
- "norm_label": "map_role()",
- "id": "excel_import_import_excel_map_role"
- },
- {
- "label": "map_building_alias()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L241",
- "community": 0,
- "norm_label": "map_building_alias()",
- "id": "excel_import_import_excel_map_building_alias"
- },
- {
- "label": "parse_members_sheet()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L265",
- "community": 0,
- "norm_label": "parse_members_sheet()",
- "id": "excel_import_import_excel_parse_members_sheet"
- },
- {
- "label": "parse_assignments_sheet()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L337",
- "community": 0,
- "norm_label": "parse_assignments_sheet()",
- "id": "excel_import_import_excel_parse_assignments_sheet"
- },
- {
- "label": "parse_reserves_sheet()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L445",
- "community": 0,
- "norm_label": "parse_reserves_sheet()",
- "id": "excel_import_import_excel_parse_reserves_sheet"
- },
- {
- "label": "parse_posts_sheet_config()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L489",
- "community": 0,
- "norm_label": "parse_posts_sheet_config()",
- "id": "excel_import_import_excel_parse_posts_sheet_config"
- },
- {
- "label": "parse_posts_sheet_conditions()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L534",
- "community": 0,
- "norm_label": "parse_posts_sheet_conditions()",
- "id": "excel_import_import_excel_parse_posts_sheet_conditions"
- },
- {
- "label": "build_group_structure()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L570",
- "community": 0,
- "norm_label": "build_group_structure()",
- "id": "excel_import_import_excel_build_group_structure"
- },
- {
- "label": "compute_building_group_structure()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L592",
- "community": 0,
- "norm_label": "compute_building_group_structure()",
- "id": "excel_import_import_excel_compute_building_group_structure"
- },
- {
- "label": "infer_building_level()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L677",
- "community": 0,
- "norm_label": "infer_building_level()",
- "id": "excel_import_import_excel_infer_building_level"
- },
- {
- "label": "create_building_with_groups_and_positions()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L719",
- "community": 0,
- "norm_label": "create_building_with_groups_and_positions()",
- "id": "excel_import_import_excel_create_building_with_groups_and_positions"
- },
- {
- "label": "import_file()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L776",
- "community": 0,
- "norm_label": "import_file()",
- "id": "excel_import_import_excel_import_file"
- },
- {
- "label": "collect_xlsm_files()",
- "file_type": "code",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1146",
- "community": 7,
- "norm_label": "collect_xlsm_files()",
- "id": "excel_import_import_excel_collect_xlsm_files"
- },
- {
- "label": "Excel import script for Raid Shadow Legends Siege Assignment Web App. Imports h",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1",
- "community": 0,
- "norm_label": "excel import script for raid shadow legends siege assignment web app. imports h",
- "id": "excel_import_import_excel_rationale_1"
- },
- {
- "label": "Extract the siege date from a filename like clan_siege_MM_DD_YYYY.xlsm.",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L225",
- "community": 0,
- "norm_label": "extract the siege date from a filename like clan_siege_mm_dd_yyyy.xlsm.",
- "id": "excel_import_import_excel_rationale_225"
- },
- {
- "label": "Map a display role string to its enum value.",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L237",
- "community": 0,
- "norm_label": "map a display role string to its enum value.",
- "id": "excel_import_import_excel_rationale_237"
- },
- {
- "label": "Map a raw building type string to its canonical enum value and optional building",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L242",
- "community": 0,
- "norm_label": "map a raw building type string to its canonical enum value and optional building",
- "id": "excel_import_import_excel_rationale_242"
- },
- {
- "label": "Parse the 'Members' worksheet. Expected columns: A: name, B: level (i",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L266",
- "community": 0,
- "norm_label": "parse the 'members' worksheet. expected columns: a: name, b: level (i",
- "id": "excel_import_import_excel_rationale_266"
- },
- {
- "label": "Parse the 'Assignments' worksheet in its visual grid format. Layout:",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L338",
- "community": 0,
- "norm_label": "parse the 'assignments' worksheet in its visual grid format. layout:",
- "id": "excel_import_import_excel_rationale_338"
- },
- {
- "label": "Parse the 'Reserves' worksheet. Expected columns: A: member_name, B:",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L446",
- "community": 0,
- "norm_label": "parse the 'reserves' worksheet. expected columns: a: member_name, b:",
- "id": "excel_import_import_excel_rationale_446"
- },
- {
- "label": "Parse post priority and descriptions from the Posts sheet, rows 2\u201317, columns B\u2013",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L490",
- "community": 0,
- "norm_label": "parse post priority and descriptions from the posts sheet, rows 2\u201317, columns b\u2013",
- "id": "excel_import_import_excel_rationale_490"
- },
- {
- "label": "Parse post active conditions from the Posts sheet, rows 34\u201351, columns D\u2013F.",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L535",
- "community": 0,
- "norm_label": "parse post active conditions from the posts sheet, rows 34\u201351, columns d\u2013f.",
- "id": "excel_import_import_excel_rationale_535"
- },
- {
- "label": "Return a list of slot_counts for each group of the given building type. e.g",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L571",
- "community": 0,
- "norm_label": "return a list of slot_counts for each group of the given building type. e.g",
- "id": "excel_import_import_excel_rationale_571"
- },
- {
- "label": "Scan the given list of ParsedAssignments and return {group_number: slot_count}",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L597",
- "community": 0,
- "norm_label": "scan the given list of parsedassignments and return {group_number: slot_count}",
- "id": "excel_import_import_excel_rationale_597"
- },
- {
- "label": "Sum all slot counts in group_structure and look up the level for that building t",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L678",
- "community": 0,
- "norm_label": "sum all slot counts in group_structure and look up the level for that building t",
- "id": "excel_import_import_excel_rationale_678"
- },
- {
- "label": "Return (member, created). Looks up by name (case-insensitive). Creates if no",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L691",
- "community": 7,
- "norm_label": "return (member, created). looks up by name (case-insensitive). creates if no",
- "id": "excel_import_import_excel_rationale_691"
- },
- {
- "label": "Create a Building, its BuildingGroups, and their Positions. Uses the provid",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L727",
- "community": 0,
- "norm_label": "create a building, its buildinggroups, and their positions. uses the provid",
- "id": "excel_import_import_excel_rationale_727"
- },
- {
- "label": "Import a single .xlsm file. Returns ImportStats.",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L781",
- "community": 0,
- "norm_label": "import a single .xlsm file. returns importstats.",
- "id": "excel_import_import_excel_rationale_781"
- },
- {
- "label": "Import a list of .xlsm files into the database.",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1073",
- "community": 0,
- "norm_label": "import a list of .xlsm files into the database.",
- "id": "excel_import_import_excel_rationale_1073"
- },
- {
- "label": "Return a sorted list of .xlsm files from a file path or directory.",
- "file_type": "rationale",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1147",
- "community": 7,
- "norm_label": "return a sorted list of .xlsm files from a file path or directory.",
- "id": "excel_import_import_excel_rationale_1147"
- },
- {
- "label": "run-graphify-dry-run.ps1",
- "file_type": "code",
- "source_file": "scripts/experiments/run-graphify-dry-run.ps1",
- "source_location": "L1",
- "community": 51,
- "norm_label": "run-graphify-dry-run.ps1",
- "id": "scripts_experiments_run_graphify_dry_run_ps1"
- },
- {
- "label": "CHANGELOG v1.2.0",
- "file_type": "document",
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "changelog v1.2.0",
- "id": "changelog_v120"
- },
- {
- "label": "CHANGELOG v1.1.0",
- "file_type": "document",
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "changelog v1.1.0",
- "id": "changelog_v110"
- },
- {
- "label": "CHANGELOG v1.0.0",
- "file_type": "document",
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "changelog v1.0.0",
- "id": "changelog_v100"
- },
- {
- "label": "Suggest Post Assignments Feature",
- "file_type": "concept",
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "suggest post assignments feature",
- "id": "changelog_suggest_post_assignments"
- },
- {
- "label": "Group Post Conditions by Level or Type",
- "file_type": "concept",
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "group post conditions by level or type",
- "id": "changelog_group_post_conditions"
- },
- {
- "label": "Rate-limited Discord OAuth2 Endpoints",
- "file_type": "concept",
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "rate-limited discord oauth2 endpoints",
- "id": "changelog_rate_limited_discord_oauth"
- },
- {
- "label": "Project Overview (CLAUDE.md)",
- "file_type": "document",
- "source_file": "CLAUDE.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "project overview (claude.md)",
- "id": "claude_project_overview"
- },
- {
- "label": "Backend Service (FastAPI)",
- "file_type": "concept",
- "source_file": "CLAUDE.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "backend service (fastapi)",
- "id": "claude_backend_service"
- },
- {
- "label": "Frontend Service (React)",
- "file_type": "concept",
- "source_file": "CLAUDE.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "frontend service (react)",
- "id": "claude_frontend_service"
- },
- {
- "label": "Bot Service (discord.py + FastAPI sidecar)",
- "file_type": "concept",
- "source_file": "CLAUDE.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "bot service (discord.py + fastapi sidecar)",
- "id": "claude_bot_service"
- },
- {
- "label": "Discord OAuth2 Auth Flow",
- "file_type": "concept",
- "source_file": "CLAUDE.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "discord oauth2 auth flow",
- "id": "claude_discord_oauth2"
- },
- {
- "label": "PostgreSQL Database",
- "file_type": "concept",
- "source_file": "CLAUDE.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "postgresql database",
- "id": "claude_postgresql"
- },
- {
- "label": "Alembic Migrations",
- "file_type": "concept",
- "source_file": "CLAUDE.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "alembic migrations",
- "id": "claude_alembic"
- },
- {
- "label": "Playwright Image Generation",
- "file_type": "concept",
- "source_file": "CLAUDE.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "playwright image generation",
- "id": "claude_playwright"
- },
- {
- "label": "Docker Compose Stack",
- "file_type": "code",
- "source_file": "docker-compose.yml",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "docker compose stack",
- "id": "dockercompose_stack"
- },
- {
- "label": "PostgreSQL Service (docker-compose)",
- "file_type": "code",
- "source_file": "docker-compose.yml",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "postgresql service (docker-compose)",
- "id": "dockercompose_postgres"
- },
- {
- "label": "Backend Service (docker-compose)",
- "file_type": "code",
- "source_file": "docker-compose.yml",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "backend service (docker-compose)",
- "id": "dockercompose_backend"
- },
- {
- "label": "Frontend Service (docker-compose)",
- "file_type": "code",
- "source_file": "docker-compose.yml",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "frontend service (docker-compose)",
- "id": "dockercompose_frontend"
- },
- {
- "label": "Bot Service (docker-compose)",
- "file_type": "code",
- "source_file": "docker-compose.yml",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "bot service (docker-compose)",
- "id": "dockercompose_bot"
- },
- {
- "label": "Docker Compose Production Overlay",
- "file_type": "code",
- "source_file": "docker-compose.prod.yml",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "docker compose production overlay",
- "id": "dockercomposeprod_overlay"
- },
- {
- "label": "Backend Requirements",
- "file_type": "code",
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "backend requirements",
- "id": "backend_requirements"
- },
- {
- "label": "FastAPI",
- "file_type": "concept",
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "fastapi",
- "id": "backend_fastapi"
- },
- {
- "label": "SQLAlchemy",
- "file_type": "concept",
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "sqlalchemy",
- "id": "backend_sqlalchemy"
- },
- {
- "label": "asyncpg",
- "file_type": "concept",
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "asyncpg",
- "id": "backend_asyncpg"
- },
- {
- "label": "PyJWT",
- "file_type": "concept",
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "pyjwt",
- "id": "backend_pyjwt"
- },
- {
- "label": "slowapi",
- "file_type": "concept",
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "slowapi",
- "id": "backend_slowapi"
- },
- {
- "label": "Playwright (backend dep)",
- "file_type": "concept",
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "playwright (backend dep)",
- "id": "backend_playwright_dep"
- },
- {
- "label": "OpenTelemetry / Azure Monitor",
- "file_type": "concept",
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "opentelemetry / azure monitor",
- "id": "backend_otel"
- },
- {
- "label": "Bot Requirements",
- "file_type": "code",
- "source_file": "bot/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "bot requirements",
- "id": "bot_requirements"
- },
- {
- "label": "Bot Dev Requirements",
- "file_type": "code",
- "source_file": "bot/requirements-dev.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "bot dev requirements",
- "id": "bot_requirements_dev"
- },
- {
- "label": "discord.py",
- "file_type": "concept",
- "source_file": "bot/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "discord.py",
- "id": "bot_discordpy"
- },
- {
- "label": "FastAPI (bot sidecar)",
- "file_type": "concept",
- "source_file": "bot/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "fastapi (bot sidecar)",
- "id": "bot_fastapi"
- },
- {
- "label": "Implementation Plan",
- "file_type": "document",
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "implementation plan",
- "id": "impl_plan"
- },
- {
- "label": "Phase 0: Foundation",
- "file_type": "concept",
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "phase 0: foundation",
- "id": "impl_plan_phase0"
- },
- {
- "label": "Phase 1: Database Schema",
- "file_type": "concept",
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "phase 1: database schema",
- "id": "impl_plan_phase1"
- },
- {
- "label": "Phase 2: Core Backend CRUD",
- "file_type": "concept",
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "phase 2: core backend crud",
- "id": "impl_plan_phase2"
- },
- {
- "label": "Phase 3: Assignment Board Backend",
- "file_type": "concept",
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "phase 3: assignment board backend",
- "id": "impl_plan_phase3"
- },
- {
- "label": "Phase 4: Business Logic",
- "file_type": "concept",
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "phase 4: business logic",
- "id": "impl_plan_phase4"
- },
- {
- "label": "Phase 5: Discord Bot + Image Gen",
- "file_type": "concept",
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "phase 5: discord bot + image gen",
- "id": "impl_plan_phase5"
- },
- {
- "label": "Phase 6: Frontend Core",
- "file_type": "concept",
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "phase 6: frontend core",
- "id": "impl_plan_phase6"
- },
- {
- "label": "BuildingTypeConfig Reference",
- "file_type": "concept",
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "buildingtypeconfig reference",
- "id": "impl_plan_buildingtypeconfig"
- },
- {
- "label": "Operations Runbook",
- "file_type": "document",
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "operations runbook",
- "id": "runbook"
- },
- {
- "label": "Azure Container Apps",
- "file_type": "concept",
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "azure container apps",
- "id": "runbook_azure_container_apps"
- },
- {
- "label": "Azure Key Vault",
- "file_type": "concept",
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "azure key vault",
- "id": "runbook_azure_keyvault"
- },
- {
- "label": "Azure PostgreSQL Flexible Server",
- "file_type": "concept",
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "azure postgresql flexible server",
- "id": "runbook_azure_postgresql"
- },
- {
- "label": "Application Insights / OpenTelemetry",
- "file_type": "concept",
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "application insights / opentelemetry",
- "id": "runbook_app_insights"
- },
- {
- "label": "Log Analytics Workspace",
- "file_type": "concept",
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "log analytics workspace",
- "id": "runbook_log_analytics"
- },
- {
- "label": "Web Design Document",
- "file_type": "document",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "web design document",
- "id": "wdd"
- },
- {
- "label": "Siege Data Model",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "siege data model",
- "id": "wdd_siege_model"
- },
- {
- "label": "Building Data Model",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "building data model",
- "id": "wdd_building_model"
- },
- {
- "label": "Member Data Model",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "member data model",
- "id": "wdd_member_model"
- },
- {
- "label": "Position Data Model",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "position data model",
- "id": "wdd_position_model"
- },
- {
- "label": "Post Data Model",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "post data model",
- "id": "wdd_post_model"
- },
- {
- "label": "PostCondition Data Model",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "postcondition data model",
- "id": "wdd_postcondition_model"
- },
- {
- "label": "16 Validation Rules",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "16 validation rules",
- "id": "wdd_validation_rules"
- },
- {
- "label": "Auto-fill Algorithm",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "auto-fill algorithm",
- "id": "wdd_autofill_algorithm"
- },
- {
- "label": "Attack Day Algorithm",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "attack day algorithm",
- "id": "wdd_attack_day_algorithm"
- },
- {
- "label": "Discord OAuth2 Authentication Spec",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "discord oauth2 authentication spec",
- "id": "wdd_discord_auth"
- },
- {
- "label": "Notify Members Data Flow",
- "file_type": "concept",
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "notify members data flow",
- "id": "wdd_notification_flow"
- },
- {
- "label": "Siege Building Levels Reference",
- "file_type": "document",
- "source_file": "docs/siege_levels.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "siege building levels reference",
- "id": "siege_levels"
- },
- {
- "label": "Post Suggestions Modal Handoff",
- "file_type": "document",
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "post suggestions modal handoff",
- "id": "post_suggestions_readme"
- },
- {
- "label": "DiffListA Modal Component",
- "file_type": "concept",
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "difflista modal component",
- "id": "post_suggestions_difflist"
- },
- {
- "label": "AssignmentEntry Type",
- "file_type": "concept",
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "assignmententry type",
- "id": "post_suggestions_assignmententry"
- },
- {
- "label": "Graphify Dry-Run Evaluation Plan",
- "file_type": "document",
- "source_file": "docs/experiments/graphify-dry-run.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "graphify dry-run evaluation plan",
- "id": "graphify_dryrun"
- },
- {
- "label": "Landing Page Mockup",
- "file_type": "document",
- "source_file": "docs/mockups/mockup-landing.html",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "landing page mockup",
- "id": "mockup_landing"
- },
- {
- "label": "Login Page Mockup",
- "file_type": "document",
- "source_file": "docs/mockups/mockup-login.html",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "login page mockup",
- "id": "mockup_login"
- },
- {
- "label": "Public Launch Plan",
- "file_type": "document",
- "source_file": "docs/plans/public-launch-self-hostable-and-landing-page.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "public launch plan",
- "id": "public_launch_plan"
- },
- {
- "label": "Self-Host on Any VPS (redirect)",
- "file_type": "document",
- "source_file": "docs/self-host/anywhere.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "self-host on any vps (redirect)",
- "id": "self_host_anywhere"
- },
- {
- "label": "Self-Host on Azure (redirect)",
- "file_type": "document",
- "source_file": "docs/self-host/azure.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "self-host on azure (redirect)",
- "id": "self_host_azure"
- },
- {
- "label": "Discord Auth Implementation Plan (Historical)",
- "file_type": "document",
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "discord auth implementation plan (historical)",
- "id": "discord_auth_impl_plan"
- },
- {
- "label": "get_current_user FastAPI Dependency",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "get_current_user fastapi dependency",
- "id": "discord_auth_get_current_user"
- },
- {
- "label": "BotClient.get_member()",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "botclient.get_member()",
- "id": "discord_auth_botclient_get_member"
- },
- {
- "label": "JWT Session Cookie (HS256)",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "jwt session cookie (hs256)",
- "id": "discord_auth_jwt_cookie"
- },
- {
- "label": "Component Versioning Plan",
- "file_type": "document",
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "component versioning plan",
- "id": "component_versioning_plan"
- },
- {
- "label": "backend/VERSION file",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "backend/version file",
- "id": "component_versioning_backend_version"
- },
- {
- "label": "bot/VERSION file",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "bot/version file",
- "id": "component_versioning_bot_version"
- },
- {
- "label": "frontend/package.json version",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "frontend/package.json version",
- "id": "component_versioning_frontend_version"
- },
- {
- "label": "Version Bump CI Gate",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "version bump ci gate",
- "id": "component_versioning_ci_gate"
- },
- {
- "label": "Post Suggestions Backend Plan",
- "file_type": "document",
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "post suggestions backend plan",
- "id": "post_suggestions_plan"
- },
- {
- "label": "post_suggestions.py Service",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "post_suggestions.py service",
- "id": "post_suggestions_service"
- },
- {
- "label": "POST /sieges/{id}/post-suggestions Endpoint",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "post /sieges/{id}/post-suggestions endpoint",
- "id": "post_suggestions_api"
- },
- {
- "label": "PostSuggestionEntry Schema",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "postsuggestionentry schema",
- "id": "post_suggestions_schema"
- },
- {
- "label": "Greedy Post Assignment Algorithm",
- "file_type": "concept",
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 4,
- "norm_label": "greedy post assignment algorithm",
- "id": "post_suggestions_greedy_algo"
- },
- {
- "label": "README",
- "file_type": "document",
- "source_file": "README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "readme",
- "id": "readme"
- },
- {
- "label": "CONTRIBUTING.md",
- "file_type": "document",
- "source_file": "CONTRIBUTING.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "contributing.md",
- "id": "contributing"
- },
- {
- "label": "Code of Conduct",
- "file_type": "document",
- "source_file": "CODE_OF_CONDUCT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "code of conduct",
- "id": "code_of_conduct"
- },
- {
- "label": "SUPPORT.md",
- "file_type": "document",
- "source_file": "SUPPORT.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "support.md",
- "id": "support"
- },
- {
- "label": "Infrastructure README",
- "file_type": "document",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "infrastructure readme",
- "id": "infra_readme_infrastructure"
- },
- {
- "label": "main.bicep",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "main.bicep",
- "id": "infra_readme_main_bicep"
- },
- {
- "label": "modules/registry.bicep",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "modules/registry.bicep",
- "id": "infra_readme_registry_bicep"
- },
- {
- "label": "modules/log-analytics.bicep",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "modules/log-analytics.bicep",
- "id": "infra_readme_log_analytics_bicep"
- },
- {
- "label": "modules/app-insights.bicep",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "modules/app-insights.bicep",
- "id": "infra_readme_app_insights_bicep"
- },
- {
- "label": "modules/postgres.bicep",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "modules/postgres.bicep",
- "id": "infra_readme_postgres_bicep"
- },
- {
- "label": "modules/keyvault.bicep",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "modules/keyvault.bicep",
- "id": "infra_readme_keyvault_bicep"
- },
- {
- "label": "modules/container-env.bicep",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "modules/container-env.bicep",
- "id": "infra_readme_container_env_bicep"
- },
- {
- "label": "modules/container-apps.bicep",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "modules/container-apps.bicep",
- "id": "infra_readme_container_apps_bicep"
- },
- {
- "label": "Azure Container Registry",
- "file_type": "concept",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "azure container registry",
- "id": "infra_readme_azure_container_registry"
- },
- {
- "label": "PostgreSQL Flexible Server",
- "file_type": "concept",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "postgresql flexible server",
- "id": "infra_readme_postgres_flexible_server"
- },
- {
- "label": "Container Apps Environment",
- "file_type": "concept",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "container apps environment",
- "id": "infra_readme_container_apps_environment"
- },
- {
- "label": "siege-api Container App",
- "file_type": "concept",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "siege-api container app",
- "id": "infra_readme_siege_api"
- },
- {
- "label": "siege-bot Container App",
- "file_type": "concept",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "siege-bot container app",
- "id": "infra_readme_siege_bot"
- },
- {
- "label": "siege-frontend Container App",
- "file_type": "concept",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "siege-frontend container app",
- "id": "infra_readme_siege_frontend"
- },
- {
- "label": "ACR weekly-purge Task",
- "file_type": "concept",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "acr weekly-purge task",
- "id": "infra_readme_weekly_purge_task"
- },
- {
- "label": "main.bicepparam (dev)",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "main.bicepparam (dev)",
- "id": "infra_readme_main_bicepparam"
- },
- {
- "label": "main.prod.bicepparam",
- "file_type": "code",
- "source_file": "infra/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "main.prod.bicepparam",
- "id": "infra_readme_main_prod_bicepparam"
- },
- {
- "label": "Excel Import Scripts README",
- "file_type": "document",
- "source_file": "scripts/excel-import/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "excel import scripts readme",
- "id": "excel_import_readme_scripts"
- },
- {
- "label": "seed_db.py",
- "file_type": "code",
- "source_file": "scripts/excel-import/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "seed_db.py",
- "id": "excel_import_readme_seed_db_py"
- },
- {
- "label": "run_migrations.sh",
- "file_type": "code",
- "source_file": "scripts/excel-import/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "run_migrations.sh",
- "id": "excel_import_readme_run_migrations_sh"
- },
- {
- "label": "import_members.py",
- "file_type": "code",
- "source_file": "scripts/excel-import/README.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "import_members.py",
- "id": "excel_import_readme_import_members_py"
- },
- {
- "label": "openpyxl",
- "file_type": "concept",
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "openpyxl",
- "id": "requirements_openpyxl"
- },
- {
- "label": "sqlalchemy[asyncio]",
- "file_type": "concept",
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "sqlalchemy[asyncio]",
- "id": "requirements_sqlalchemy"
- },
- {
- "label": "python-dotenv",
- "file_type": "concept",
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 3,
- "norm_label": "python-dotenv",
- "id": "requirements_python_dotenv"
- },
- {
- "label": "FAQ Wiki Page",
- "file_type": "document",
- "source_file": "wiki/FAQ.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "faq wiki page",
- "id": "faq_wiki"
- },
- {
- "label": "Getting Started Wiki Page",
- "file_type": "document",
- "source_file": "wiki/Getting-Started.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "getting started wiki page",
- "id": "getting_started_wiki"
- },
- {
- "label": "Home Wiki Page",
- "file_type": "document",
- "source_file": "wiki/Home.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "home wiki page",
- "id": "home_wiki"
- },
- {
- "label": "Self-Host on Any VPS Wiki Page",
- "file_type": "document",
- "source_file": "wiki/Self-Host-on-Any-VPS.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "self-host on any vps wiki page",
- "id": "self_host_vps_wiki"
- },
- {
- "label": "Self-Host on Azure Wiki Page",
- "file_type": "document",
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "self-host on azure wiki page",
- "id": "self_host_azure_wiki"
- },
- {
- "label": "Wiki Sidebar",
- "file_type": "document",
- "source_file": "wiki/_Sidebar.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "wiki sidebar",
- "id": "sidebar_wiki"
- },
- {
- "label": "RSL Siege Manager Application",
- "file_type": "concept",
- "source_file": "wiki/Home.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "rsl siege manager application",
- "id": "concept_rsl_siege_manager"
- },
- {
- "label": "Discord OAuth2",
- "file_type": "concept",
- "source_file": "wiki/Self-Host-on-Any-VPS.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "discord oauth2",
- "id": "concept_discord_oauth2"
- },
- {
- "label": "Caddy Reverse Proxy",
- "file_type": "concept",
- "source_file": "wiki/Self-Host-on-Any-VPS.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "caddy reverse proxy",
- "id": "concept_caddy_reverse_proxy"
- },
- {
- "label": "GitHub Actions CI/CD",
- "file_type": "concept",
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "github actions ci/cd",
- "id": "concept_github_actions"
- },
- {
- "label": ".github/workflows/deploy.yml",
- "file_type": "code",
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": ".github/workflows/deploy.yml",
- "id": "concept_deploy_workflow"
- },
- {
- "label": ".github/workflows/infra-deploy.yml",
- "file_type": "code",
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": ".github/workflows/infra-deploy.yml",
- "id": "concept_infra_deploy_workflow"
- },
- {
- "label": "Azure Managed Identity",
- "file_type": "concept",
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "azure managed identity",
- "id": "concept_managed_identity"
- },
- {
- "label": "Application Insights",
- "file_type": "concept",
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "application insights",
- "id": "concept_app_insights"
- },
- {
- "label": "scripts/bootstrap-images.ps1",
- "file_type": "code",
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "source_url": null,
- "captured_at": null,
- "author": null,
- "contributor": null,
- "community": 5,
- "norm_label": "scripts/bootstrap-images.ps1",
- "id": "concept_bootstrap_images_script"
- }
- ],
- "links": [
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/env.py",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_env_py",
- "target": "alembic_env_run_migrations_offline"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/env.py",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_env_py",
- "target": "alembic_env_do_run_migrations"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/env.py",
- "source_location": "L42",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_env_py",
- "target": "alembic_env_run_async_migrations"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/env.py",
- "source_location": "L53",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_env_py",
- "target": "alembic_env_run_migrations_online"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/env.py",
- "source_location": "L54",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "alembic_env_run_migrations_online",
- "target": "alembic_env_run_async_migrations"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0001_initial_schema.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0001_initial_schema_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0001_initial_schema.py",
- "source_location": "L273",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0001_initial_schema_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0001_initial_schema.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0001_initial_schema_rationale_1",
- "target": "backend_alembic_versions_0001_initial_schema_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0002_add_preview_columns.py",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0002_add_preview_columns_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0003_make_siege_date_nullable.py",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0003_make_siege_date_nullable_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0004_add_post_priority_config.py",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0004_add_post_priority_config_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0005_add_description_to_post_priority_config.py",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0005_add_description_to_post_priority_config_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0006_power_level_and_drop_sort_value.py",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0006_power_level_and_drop_sort_value_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0007_fix_group_number_max.py",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0007_fix_group_number_max_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0008_add_matched_condition_id_to_position.py",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0008_add_matched_condition_id_to_position_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0009_add_discord_id_to_member.py",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0009_add_discord_id_to_member_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0010_add_last_seen_changelog_at_to_member.py",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0010_add_last_seen_changelog_at_to_member_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0010_add_last_seen_changelog_at_to_member.py",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0010_add_last_seen_changelog_at_to_member_rationale_25",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0011_add_post_suggest_preview.py",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0011_add_post_suggest_preview_py",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0011_add_post_suggest_preview.py",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0011_add_post_suggest_preview_rationale_23",
- "target": "versions_0001_initial_schema_upgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0002_add_preview_columns.py",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0002_add_preview_columns_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0003_make_siege_date_nullable.py",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0003_make_siege_date_nullable_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0004_add_post_priority_config.py",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0004_add_post_priority_config_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0005_add_description_to_post_priority_config.py",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0005_add_description_to_post_priority_config_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0006_power_level_and_drop_sort_value.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0006_power_level_and_drop_sort_value_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0007_fix_group_number_max.py",
- "source_location": "L29",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0007_fix_group_number_max_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0008_add_matched_condition_id_to_position.py",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0008_add_matched_condition_id_to_position_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0009_add_discord_id_to_member.py",
- "source_location": "L29",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0009_add_discord_id_to_member_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0010_add_last_seen_changelog_at_to_member.py",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0010_add_last_seen_changelog_at_to_member_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0010_add_last_seen_changelog_at_to_member.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0010_add_last_seen_changelog_at_to_member_rationale_33",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0011_add_post_suggest_preview.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_alembic_versions_0011_add_post_suggest_preview_py",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0011_add_post_suggest_preview.py",
- "source_location": "L34",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0011_add_post_suggest_preview_rationale_34",
- "target": "versions_0001_initial_schema_downgrade"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0002_add_preview_columns.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0002_add_preview_columns_rationale_1",
- "target": "backend_alembic_versions_0002_add_preview_columns_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0003_make_siege_date_nullable.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0003_make_siege_date_nullable_rationale_1",
- "target": "backend_alembic_versions_0003_make_siege_date_nullable_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0004_add_post_priority_config.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0004_add_post_priority_config_rationale_1",
- "target": "backend_alembic_versions_0004_add_post_priority_config_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0005_add_description_to_post_priority_config.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0005_add_description_to_post_priority_config_rationale_1",
- "target": "backend_alembic_versions_0005_add_description_to_post_priority_config_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0006_power_level_and_drop_sort_value.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0006_power_level_and_drop_sort_value_rationale_1",
- "target": "backend_alembic_versions_0006_power_level_and_drop_sort_value_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0007_fix_group_number_max.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0007_fix_group_number_max_rationale_1",
- "target": "backend_alembic_versions_0007_fix_group_number_max_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0008_add_matched_condition_id_to_position.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0008_add_matched_condition_id_to_position_rationale_1",
- "target": "backend_alembic_versions_0008_add_matched_condition_id_to_position_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0009_add_discord_id_to_member.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0009_add_discord_id_to_member_rationale_1",
- "target": "backend_alembic_versions_0009_add_discord_id_to_member_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0010_add_last_seen_changelog_at_to_member.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0010_add_last_seen_changelog_at_to_member_rationale_1",
- "target": "backend_alembic_versions_0010_add_last_seen_changelog_at_to_member_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/alembic/versions/0011_add_post_suggest_preview.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "versions_0011_add_post_suggest_preview_rationale_1",
- "target": "backend_alembic_versions_0011_add_post_suggest_preview_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/config.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_config_py",
- "target": "app_config_settings"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/config.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_config_settings",
- "target": "basesettings"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/main.py",
- "source_location": "L47",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_main_py",
- "target": "app_main_lifespan"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/main.py",
- "source_location": "L48",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_rationale_48",
- "target": "app_main_lifespan"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/main.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_rationale_1",
- "target": "bot_app_main_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/middleware.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_middleware_py",
- "target": "app_middleware_requestloggingmiddleware"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/middleware.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_middleware_requestloggingmiddleware",
- "target": "basehttpmiddleware"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/middleware.py",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_middleware_requestloggingmiddleware",
- "target": "app_middleware_requestloggingmiddleware_dispatch"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L52",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_rate_limit_py",
- "target": "app_rate_limit_get_client_ip"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L154",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_rate_limit_py",
- "target": "app_rate_limit_rate_limit_key"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L179",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_rate_limit_py",
- "target": "app_rate_limit_parse_retry_after_seconds"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L217",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_rate_limit_py",
- "target": "app_rate_limit_rate_limit_exceeded_handler"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_rate_limit_rationale_1",
- "target": "backend_app_rate_limit_py"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L176",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_rate_limit_rate_limit_key",
- "target": "app_rate_limit_get_client_ip"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L53",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_rate_limit_rationale_53",
- "target": "app_rate_limit_get_client_ip"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L155",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_rate_limit_rationale_155",
- "target": "app_rate_limit_rate_limit_key"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L267",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_rate_limit_rate_limit_exceeded_handler",
- "target": "app_rate_limit_parse_retry_after_seconds"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L180",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_rate_limit_rationale_180",
- "target": "app_rate_limit_parse_retry_after_seconds"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/rate_limit.py",
- "source_location": "L218",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_rate_limit_rationale_218",
- "target": "app_rate_limit_rate_limit_exceeded_handler"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/telemetry.py",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_telemetry_py",
- "target": "app_telemetry_configure_telemetry"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/telemetry.py",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_telemetry_rationale_32",
- "target": "app_telemetry_configure_telemetry"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/telemetry.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_telemetry_rationale_1",
- "target": "bot_app_telemetry_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/attack_day.py",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_attack_day_py",
- "target": "api_sieges_previewattackday"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/attack_day.py",
- "source_location": "L130",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_attack_day_py",
- "target": "api_sieges_applyattackday"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/attack_day.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_attack_day_py",
- "target": "api_types_attackdayassignment"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/attack_day.py",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_attack_day_py",
- "target": "api_types_attackdaypreviewresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/attack_day.py",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_attack_day_py",
- "target": "api_types_attackdayapplyresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/attack_day.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_attack_day_py",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/attack_day.py",
- "source_location": "L114",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_attack_day_py",
- "target": "services_attack_day_build_preview"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "api_auth_autherror"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L41",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "api_auth_exchange_code_for_token"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L59",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "api_auth_get_discord_user"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L70",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "api_auth_check_guild_membership"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L77",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "api_auth_login"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L112",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "api_auth_callback"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L203",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "api_auth_logout"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L210",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "api_auth_me"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L222",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "api_auth_error_redirect"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_1",
- "target": "backend_app_api_auth_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "dependencies_auth_authenticateduser"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_auth_py",
- "target": "dependencies_auth_get_current_user"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "dependencies_auth_rationale_1",
- "target": "backend_app_api_auth_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L28",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_28",
- "target": "api_auth_autherror"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L17",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_auth_autherror",
- "target": "dependencies_auth_authenticateduser"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L18",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_auth_autherror",
- "target": "api_types_member"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L137",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_callback",
- "target": "api_auth_exchange_code_for_token"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L42",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_42",
- "target": "api_auth_exchange_code_for_token"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L144",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_callback",
- "target": "api_auth_get_discord_user"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L60",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_60",
- "target": "api_auth_get_discord_user"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L153",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_callback",
- "target": "api_auth_check_guild_membership"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L71",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_71",
- "target": "api_auth_check_guild_membership"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L78",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_78",
- "target": "api_auth_login"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L133",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_callback",
- "target": "api_auth_error_redirect"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L118",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_118",
- "target": "api_auth_callback"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L204",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_204",
- "target": "api_auth_logout"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L213",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_213",
- "target": "api_auth_me"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/auth.py",
- "source_location": "L223",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_auth_rationale_223",
- "target": "api_auth_error_redirect"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/autofill.py",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_autofill_py",
- "target": "api_sieges_previewautofill"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/autofill.py",
- "source_location": "L122",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_autofill_py",
- "target": "api_sieges_applyautofill"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/autofill.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_autofill_py",
- "target": "api_types_autofillassignment"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/autofill.py",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_autofill_py",
- "target": "api_types_autofillpreviewresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/autofill.py",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_autofill_py",
- "target": "api_types_autofillapplyresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/autofill.py",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_autofill_py",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "api_board_getboard"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L120",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "api_posts_updatepost"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L169",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "api_board_bulk_update_positions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "schemas_board_positionboardresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "schemas_board_groupboardresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "schemas_board_buildingboardresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "api_types_boardresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L40",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "schemas_board_positionupdate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L47",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "schemas_board_bulkpositionupdate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L89",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "services_board_get_siege_for_position"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L97",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "services_board_validate_position_state"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L112",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_board_py",
- "target": "services_board_validate_member_active"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L227",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_board_bulk_update_positions",
- "target": "services_board_validate_position_state"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L172",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_board_rationale_172",
- "target": "api_board_bulk_update_positions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L176",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "api_buildings_list_buildings"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L181",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "api_buildings_add_building"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L270",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "api_sieges_updatebuilding"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L334",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "api_sieges_deletebuilding"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L346",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "api_buildings_add_group"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L397",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "api_buildings_delete_group"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "services_buildings_rebuild_groups_for_level"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L114",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "services_buildings_get_building_type_config"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L128",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "api_sieges_getbuildings"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L141",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "services_buildings_require_planning_or_not_locked"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L150",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_buildings_py",
- "target": "services_buildings_create_groups_and_positions"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L189",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_buildings_add_building",
- "target": "services_buildings_get_building_type_config"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L242",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_buildings_add_building",
- "target": "services_buildings_create_groups_and_positions"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L356",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_buildings_add_group",
- "target": "api_sieges_getbuildings"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L376",
- "weight": 1.0,
- "source": "api_buildings_add_group",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L386",
- "weight": 1.0,
- "source": "api_buildings_add_group",
- "target": "models_position_position"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L407",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_buildings_delete_group",
- "target": "api_sieges_getbuildings"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_changelog_py",
- "target": "api_changelog_require_member_session"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L43",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_changelog_py",
- "target": "api_changelog_get_changelog_status"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L69",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_changelog_py",
- "target": "api_changelog_markchangelogseen"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_changelog_rationale_1",
- "target": "backend_app_api_changelog_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/changelog.py",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_changelog_py",
- "target": "schemas_changelog_changelogstatusresponse"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/changelog.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_changelog_rationale_1",
- "target": "backend_app_api_changelog_py"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L61",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_changelog_get_changelog_status",
- "target": "api_changelog_require_member_session"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L89",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_changelog_markchangelogseen",
- "target": "api_changelog_require_member_session"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_changelog_rationale_25",
- "target": "api_changelog_require_member_session"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L47",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_changelog_rationale_47",
- "target": "api_changelog_get_changelog_status"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L65",
- "weight": 1.0,
- "source": "api_changelog_get_changelog_status",
- "target": "schemas_changelog_changelogstatusresponse"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L73",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_changelog_rationale_73",
- "target": "api_changelog_markchangelogseen"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/comparison.py",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_comparison_py",
- "target": "api_comparison_compare_with_most_recent"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/comparison.py",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_comparison_py",
- "target": "api_comparison_compare_with_specific"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/comparison.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_comparison_py",
- "target": "api_types_positionkey"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/comparison.py",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_comparison_py",
- "target": "api_types_memberdiff"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/comparison.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_comparison_py",
- "target": "api_types_comparisonresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_comparison_py",
- "target": "services_comparison_load_assignments"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L45",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_comparison_py",
- "target": "services_comparison_load_member_names"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L52",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_comparison_py",
- "target": "services_comparison_get_most_recent_completed"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L63",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_comparison_py",
- "target": "api_sieges_comparesieges"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/config.py",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_config_py",
- "target": "api_config_get_config"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/config.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_config_rationale_12",
- "target": "api_config_get_config"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/config.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_config_rationale_1",
- "target": "bot_app_config_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/discord_sync.py",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_discord_sync_py",
- "target": "api_members_previewdiscordsync"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/discord_sync.py",
- "source_location": "L152",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_discord_sync_py",
- "target": "api_members_applydiscordsync"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/discord_sync.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_discord_sync_rationale_1",
- "target": "backend_app_api_discord_sync_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/discord_sync.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_discord_sync_rationale_1",
- "target": "backend_app_api_discord_sync_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/discord_sync.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_discord_sync_rationale_17",
- "target": "api_members_previewdiscordsync"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/discord_sync.py",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_discord_sync_rationale_26",
- "target": "api_members_applydiscordsync"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/health.py",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_health_py",
- "target": "api_health_health"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L77",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "api_health_health"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L78",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_rationale_78",
- "target": "api_health_health"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_images_py",
- "target": "api_types_generateimagesresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_images_py",
- "target": "api_images_generate_images"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_images_rationale_1",
- "target": "backend_app_api_images_py"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_generateimagesresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L37",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_notifyresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L44",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_notificationresultitem",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L53",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_notificationbatchresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/post_priority_config.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_post_priority_config_postpriorityresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/post_priority_config.py",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_post_priority_config_postpriorityupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/siege_members.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_siege_members_siegemembercreate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/attack_day.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_attackdayassignment",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/attack_day.py",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_attackdaypreviewresult",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/attack_day.py",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_attackdayapplyresult",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/autofill.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_autofillassignment",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/autofill.py",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_autofillpreviewresult",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/autofill.py",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_autofillapplyresult",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_board_positionboardresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_board_groupboardresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_board_buildingboardresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_boardresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L40",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_board_positionupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L47",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_board_bulkpositionupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_building_buildingcreate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_building_buildingupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_positionresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_buildinggroupresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_buildingresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L43",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_building_groupcreate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/changelog.py",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_changelog_changelogstatusresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/common.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_common_errorresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/comparison.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_positionkey",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/comparison.py",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_memberdiff",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/comparison.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_comparisonresult",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_member_memberbase",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_member_memberupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_member_memberpreferencesupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L44",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_syncmatch",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L53",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_syncpreviewresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L59",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_member_syncapply",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L65",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_member_syncapplyresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_postresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_postupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_postconditionsupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_condition.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_condition_postconditionresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_schema",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L65",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_postsuggestionpreviewresult",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L79",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_suggestions_postsuggestionapplyrequest",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L91",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_suggestions_staleentry",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L116",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_postsuggestionapplyresult",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_siege_siegecreate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_siege_siegeupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_siege_siegeresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_siege_member_siegememberresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_siege_member_siegememberupdate",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_memberpreferencesummary",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/validation.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_validationissue",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/validation.py",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_validationresult",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/version.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_version_versionresponse",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L46",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_notifyrequest",
- "target": "basemodel"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L51",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_postmessagerequest",
- "target": "basemodel"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L73",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_images_generate_images",
- "target": "api_types_generateimagesresponse"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_images_rationale_35",
- "target": "api_images_generate_images"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L34",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "api_images_generate_images"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_images_generate_images"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/api/images.py",
- "source_location": "L58",
- "weight": 1.0,
- "source": "api_images_generate_images",
- "target": "services_image_gen_siegememberwithname"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_lifecycle_py",
- "target": "api_sieges_activatesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L61",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_lifecycle_py",
- "target": "api_sieges_completesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L85",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_lifecycle_py",
- "target": "api_sieges_reopensiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L109",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_lifecycle_py",
- "target": "api_sieges_clonesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/members.py",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_members_py",
- "target": "api_members_list_members"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/members.py",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_members_py",
- "target": "api_members_createmember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/members.py",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_members_py",
- "target": "api_members_get_member"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/members.py",
- "source_location": "L62",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_members_py",
- "target": "api_members_updatemember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/members.py",
- "source_location": "L51",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_members_py",
- "target": "api_members_delete_member"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/members.py",
- "source_location": "L113",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_members_py",
- "target": "api_members_getmemberpreferences"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/members.py",
- "source_location": "L81",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_members_py",
- "target": "services_members_deactivate_member"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L71",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_botclient",
- "target": "api_members_get_member"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L78",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_members_get_member",
- "target": "services_bot_client_botclient_make_client"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L62",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_get_guild_member",
- "target": "api_members_get_member"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L72",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_rationale_72",
- "target": "api_members_get_member"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/members.py",
- "source_location": "L63",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_members_updatemember",
- "target": "api_members_get_member"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/members.py",
- "source_location": "L82",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_members_deactivate_member",
- "target": "api_members_get_member"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/members.py",
- "source_location": "L116",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_members_getmemberpreferences",
- "target": "api_members_get_member"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L61",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_siegebot",
- "target": "api_members_get_member"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L63",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_members_get_member",
- "target": "app_discord_client_siegebot_require_guild"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L62",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_rationale_62",
- "target": "api_members_get_member"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L127",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "api_members_get_member"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L131",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_members_get_member",
- "target": "app_http_api_get_bot"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L130",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_rationale_130",
- "target": "api_members_get_member"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_get_member"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "api_members_get_member"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_members_get_member"
- },
- {
- "relation": "imports",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L2",
- "weight": 1.0,
- "context": "import",
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "api_types_notifyresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L44",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "api_types_notificationresultitem"
- },
- {
- "relation": "imports",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L2",
- "weight": 1.0,
- "context": "import",
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "api_types_notificationbatchresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L64",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "api_notifications_send_dms"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "api_notifications_notifysiegemembers"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "api_notifications_getnotificationbatch"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "api_notifications_posttochannel"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_notifications_rationale_1",
- "target": "backend_app_api_notifications_py"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/notifications.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_notifications_py",
- "target": "api_types_generateimagesresponse"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "backend_app_api_notifications_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L65",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_notifications_rationale_65",
- "target": "api_notifications_send_dms"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_siegebot",
- "target": "api_notifications_send_dms"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_notifications_send_dms",
- "target": "app_discord_client_siegebot_require_guild"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_rationale_23",
- "target": "api_notifications_send_dms"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L142",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_notifications_rationale_142",
- "target": "api_notifications_notifysiegemembers"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L310",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_notifications_rationale_310",
- "target": "api_notifications_getnotificationbatch"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L371",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_notifications_rationale_371",
- "target": "api_notifications_posttochannel"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/posts.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_posts_py",
- "target": "api_posts_serialize_post"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_posts_py",
- "target": "api_posts_list_posts"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L54",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_posts_py",
- "target": "api_posts_updatepost"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L76",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_posts_py",
- "target": "api_posts_setpostconditions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_posts_py",
- "target": "services_posts_get_siege_or_404"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_posts_py",
- "target": "services_posts_get_post_for_siege_or_404"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/posts.py",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_list_posts",
- "target": "api_posts_serialize_post"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/posts.py",
- "source_location": "L46",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_updatepost",
- "target": "api_posts_serialize_post"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/posts.py",
- "source_location": "L60",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_setpostconditions",
- "target": "api_posts_serialize_post"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/posts.py",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_rationale_13",
- "target": "api_posts_serialize_post"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L42",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_list_posts",
- "target": "services_posts_get_siege_or_404"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L37",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_posts_rationale_37",
- "target": "api_posts_list_posts"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/post_priority_config.py",
- "source_location": "L7",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_post_priority_config_postpriorityresponse",
- "target": "api_posts_postpriorityconfig"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/post_priority_config.py",
- "source_location": "L7",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_post_priority_config_postpriorityupdate",
- "target": "api_posts_postpriorityconfig"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/post_priority_config.py",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_postpriorityconfig",
- "target": "api_post_priority_config_list_post_priorities"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L75",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "api_sieges_previewpostsuggestions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L335",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "api_sieges_applypostsuggestions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/post_suggestions.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_post_suggestions_rationale_1",
- "target": "backend_app_api_post_suggestions_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "post_suggestions_schema"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L65",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "api_types_postsuggestionpreviewresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L79",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "schemas_post_suggestions_postsuggestionapplyrequest"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L91",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "schemas_post_suggestions_staleentry"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L116",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "api_types_postsuggestionapplyresult"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_suggestions_rationale_1",
- "target": "backend_app_api_post_suggestions_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L70",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L517",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "services_post_suggestions_get_target_position"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L537",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_post_suggestions_py",
- "target": "services_post_suggestions_null_entry"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_post_suggestions_rationale_1",
- "target": "backend_app_api_post_suggestions_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L418",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_post_suggestions_rationale_418",
- "target": "backend_app_api_post_suggestions_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L489",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_post_suggestions_rationale_489",
- "target": "backend_app_api_post_suggestions_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/post_suggestions.py",
- "source_location": "L37",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_post_suggestions_rationale_37",
- "target": "api_sieges_previewpostsuggestions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/post_suggestions.py",
- "source_location": "L62",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_post_suggestions_rationale_62",
- "target": "api_sieges_applypostsuggestions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/reference.py",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_reference_py",
- "target": "api_members_getpostconditions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/reference.py",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_reference_py",
- "target": "api_sieges_getbuildings"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/reference.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_reference_py",
- "target": "api_members_getmemberroles"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L49",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_sieges_py",
- "target": "api_sieges_list_sieges"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L66",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_sieges_py",
- "target": "api_sieges_createsiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L58",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_sieges_py",
- "target": "api_sieges_get_siege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L144",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_sieges_py",
- "target": "api_sieges_updatesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L156",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_sieges_py",
- "target": "api_sieges_delete_siege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_sieges_py",
- "target": "services_sieges_scrolls_per_player"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L28",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_sieges_py",
- "target": "services_sieges_compute_scroll_count"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L145",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_updatesiege",
- "target": "api_sieges_get_siege"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L157",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_delete_siege",
- "target": "api_sieges_get_siege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/siege_members.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_siege_members_siegemembercreate"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/siege_members.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_siege_members_siegemembercreate",
- "target": "api_types_memberpreferencesummary"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/siege_members.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_siege_members_siegemembercreate",
- "target": "schemas_siege_member_siegememberresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/siege_members.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_siege_members_siegemembercreate",
- "target": "schemas_siege_member_siegememberupdate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/siege_members.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_siege_members_list_siege_members"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/validation.py",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_validation_py",
- "target": "api_sieges_validatesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/validation.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_validation_py",
- "target": "api_types_validationissue"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/validation.py",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_api_validation_py",
- "target": "api_types_validationresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/version.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_version",
- "target": "api_version_read_backend_version"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/version.py",
- "source_location": "L58",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_version_getversion",
- "target": "api_version_read_backend_version"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/version.py",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_version_rationale_20",
- "target": "api_version_read_backend_version"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/version.py",
- "source_location": "L42",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_version",
- "target": "api_version_fetch_bot_version"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/version.py",
- "source_location": "L59",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_version_getversion",
- "target": "api_version_fetch_bot_version"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/version.py",
- "source_location": "L43",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_version_rationale_43",
- "target": "api_version_fetch_bot_version"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/version.py",
- "source_location": "L57",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_version_rationale_57",
- "target": "api_version_getversion"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/base.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_db_base_py",
- "target": "base"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/base.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "base",
- "target": "declarativebase"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_db_seeds_py",
- "target": "db_seeds_seed_post_conditions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L63",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_db_seeds_py",
- "target": "db_seeds_seed_building_type_config"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L91",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_db_seeds_py",
- "target": "db_seeds_seed_post_priority_config"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "db_seeds_rationale_1",
- "target": "backend_app_db_seeds_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "db_seeds_rationale_8",
- "target": "db_seeds_seed_post_conditions"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L249",
- "weight": 1.0,
- "source": "app_main_main",
- "target": "db_seeds_seed_post_conditions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L64",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "db_seeds_rationale_64",
- "target": "db_seeds_seed_building_type_config"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L250",
- "weight": 1.0,
- "source": "app_main_main",
- "target": "db_seeds_seed_building_type_config"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/seeds.py",
- "source_location": "L92",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "db_seeds_rationale_92",
- "target": "db_seeds_seed_post_priority_config"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L251",
- "weight": 1.0,
- "source": "app_main_main",
- "target": "db_seeds_seed_post_priority_config"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1085",
- "weight": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "db_seeds_seed_post_priority_config"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/db/session.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_db_session_py",
- "target": "db_session_get_db"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L45",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "dependencies_auth_get_current_user",
- "target": "dependencies_auth_authenticateduser"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "dependencies_auth_rationale_24",
- "target": "dependencies_auth_authenticateduser"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L19",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "dependencies_auth_authenticateduser",
- "target": "api_types_member"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/dependencies/auth.py",
- "source_location": "L37",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "dependencies_auth_rationale_37",
- "target": "dependencies_auth_get_current_user"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/building.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_building",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/building_group.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "models_building_group_buildinggroup",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/building_type_config.py",
- "source_location": "L4",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "backend_app_models_building_type_config_py",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/member.py",
- "source_location": "L7",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_member",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/notification_batch.py",
- "source_location": "L7",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/notification_batch_result.py",
- "source_location": "L7",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "backend_app_models_notification_batch_result_py",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/position.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "models_position_position",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/post.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_post",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/post_condition.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_postcondition",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/post_priority_config.py",
- "source_location": "L4",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_posts_postpriorityconfig",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/siege.py",
- "source_location": "L7",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_siege",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/siege_member.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_siegemember",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L35",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L35",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L35",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L35",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L35",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L35",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "base"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L14",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L14",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L14",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/building_group.py",
- "source_location": "L9",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "models_building_group_buildinggroup",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/position.py",
- "source_location": "L9",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "models_position_position",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L38",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L38",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L38",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L38",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L38",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L38",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L66",
- "weight": 1.0,
- "source": "services_buildings_rebuild_groups_for_level",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L160",
- "weight": 1.0,
- "source": "services_buildings_create_groups_and_positions",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L164",
- "weight": 1.0,
- "source": "api_sieges_clonesiege",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L109",
- "weight": 1.0,
- "source": "api_sieges_createsiege",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L164",
- "weight": 1.0,
- "source": "scripts_seed_demo_seed_buildings_and_positions",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L751",
- "weight": 1.0,
- "source": "excel_import_import_excel_create_building_with_groups_and_positions",
- "target": "models_building_group_buildinggroup"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/building_type_config.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "backend_app_models_building_type_config_py",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/models/enums.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_enums_py",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/models/enums.py",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_enums_py",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/models/enums.py",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_enums_py",
- "target": "api_types_memberrole"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/models/enums.py",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_enums_py",
- "target": "models_enums_powerlevel"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/models/enums.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_enums_py",
- "target": "models_enums_notificationbatchstatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L15",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "models_enums_notificationbatchstatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L15",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "models_enums_notificationbatchstatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/notification_batch.py",
- "source_location": "L8",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "models_enums_notificationbatchstatus"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/models/member.py",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "api_types_member"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "schemas_member_memberbase"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "schemas_member_membercreate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "schemas_member_memberupdate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "schemas_member_memberresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "schemas_member_memberpreferencesupdate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L44",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "api_types_syncmatch"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L53",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "api_types_syncpreviewresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L59",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "schemas_member_syncapply"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L65",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_member_py",
- "target": "schemas_member_syncapplyresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L17",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "backend_app_models_notification_batch_result_py"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L17",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "backend_app_models_notification_batch_result_py"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/notification_batch_result.py",
- "source_location": "L10",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "backend_app_models_notification_batch_result_py",
- "target": "api_types_notificationbatchresponse"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L270",
- "weight": 1.0,
- "source": "api_notifications_notifysiegemembers",
- "target": "backend_app_models_notification_batch_result_py"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/models/position.py",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_position_py",
- "target": "models_position_position"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L18",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "models_position_position"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L18",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "models_position_position"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L18",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "models_position_position"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/position.py",
- "source_location": "L10",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "models_position_position",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/position.py",
- "source_location": "L11",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "models_position_position",
- "target": "api_types_postcondition"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L41",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "models_position_position"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L41",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "models_position_position"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L41",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "models_position_position"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L41",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "models_position_position"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L41",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "models_position_position"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L41",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "models_position_position"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L55",
- "weight": 1.0,
- "source": "services_buildings_rebuild_groups_for_level",
- "target": "models_position_position"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L169",
- "weight": 1.0,
- "source": "services_buildings_create_groups_and_positions",
- "target": "models_position_position"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L176",
- "weight": 1.0,
- "source": "api_sieges_clonesiege",
- "target": "models_position_position"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L118",
- "weight": 1.0,
- "source": "api_sieges_createsiege",
- "target": "models_position_position"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L176",
- "weight": 1.0,
- "source": "scripts_seed_demo_seed_buildings_and_positions",
- "target": "models_position_position"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L760",
- "weight": 1.0,
- "source": "excel_import_import_excel_create_building_with_groups_and_positions",
- "target": "models_position_position"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/models/post.py",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_post_py",
- "target": "api_types_post"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_post_py",
- "target": "schemas_post_postresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_post_py",
- "target": "schemas_post_postupdate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_post_py",
- "target": "schemas_post_postconditionsupdate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/models/siege.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_siege_py",
- "target": "api_types_siege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_siege_py",
- "target": "schemas_siege_siegecreate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_siege_py",
- "target": "schemas_siege_siegeupdate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_models_siege_py",
- "target": "schemas_siege_siegeresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_board_positionboardresponse",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_board_groupboardresponse",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_board_buildingboardresponse",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_board_positionupdate",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_board_bulkpositionupdate",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_building",
- "target": "schemas_building_buildingcreate"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_building_buildingcreate",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_building",
- "target": "schemas_building_buildingupdate"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_building_buildingupdate",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L43",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_building",
- "target": "schemas_building_groupcreate"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_building_groupcreate",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/changelog.py",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_changelog_rationale_9",
- "target": "schemas_changelog_changelogstatusresponse"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/api/changelog.py",
- "source_location": "L95",
- "weight": 1.0,
- "source": "api_changelog_markchangelogseen",
- "target": "schemas_changelog_changelogstatusresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/common.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_schemas_common_py",
- "target": "schemas_common_errorresponse"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_member_membercreate",
- "target": "schemas_member_memberbase"
- },
- {
- "relation": "inherits",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_member_memberresponse",
- "target": "schemas_member_memberbase"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_member_memberbase",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_member_membercreate",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_member_memberupdate",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_member_memberresponse",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_member_memberpreferencesupdate",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_member_syncapply",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_member_syncapplyresponse",
- "target": "api_types_memberrole"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/discord_sync.py",
- "source_location": "L158",
- "weight": 1.0,
- "source": "api_members_applydiscordsync",
- "target": "schemas_member_syncapplyresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_post_postresponse",
- "target": "schemas_post_condition_postconditionresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_post_postupdate",
- "target": "schemas_post_condition_postconditionresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/post.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_post_postconditionsupdate",
- "target": "schemas_post_condition_postconditionresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_condition.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_postcondition",
- "target": "schemas_post_condition_postconditionresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_siege_member_siegememberresponse",
- "target": "schemas_post_condition_postconditionresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_siege_member_siegememberupdate",
- "target": "schemas_post_condition_postconditionresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_memberpreferencesummary",
- "target": "schemas_post_condition_postconditionresponse"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L80",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_suggestions_rationale_80",
- "target": "schemas_post_suggestions_postsuggestionapplyrequest"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L92",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_suggestions_rationale_92",
- "target": "schemas_post_suggestions_staleentry"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L454",
- "weight": 1.0,
- "source": "api_sieges_applypostsuggestions",
- "target": "schemas_post_suggestions_staleentry"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_suggestions_rationale_13",
- "target": "post_suggestions_schema"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L66",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_suggestions_rationale_66",
- "target": "api_types_postsuggestionpreviewresult"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/post_suggestions.py",
- "source_location": "L117",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "schemas_post_suggestions_rationale_117",
- "target": "api_types_postsuggestionapplyresult"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_siege_siegecreate",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_siege_siegeupdate",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/siege.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "schemas_siege_siegeresponse",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "schemas_siege_member_siegememberresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "schemas_siege_member_resolve_member_fields"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "schemas_siege_member_siegememberupdate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/version.py",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_version",
- "target": "schemas_version_versionresponse"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/api/version.py",
- "source_location": "L63",
- "weight": 1.0,
- "source": "api_version_getversion",
- "target": "schemas_version_versionresponse"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/attack_day.py",
- "source_location": "L72",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_previewattackday",
- "target": "services_attack_day_build_preview"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/attack_day.py",
- "source_location": "L120",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_attack_day_build_preview",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/attack_day.py",
- "source_location": "L145",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_applyattackday",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/autofill.py",
- "source_location": "L111",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_previewautofill",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/autofill.py",
- "source_location": "L136",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_applyautofill",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L324",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_previewpostsuggestions",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L385",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_applypostsuggestions",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L71",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_post_suggestions_rationale_71",
- "target": "services_autofill_now_utc"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L151",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_updatepost",
- "target": "services_board_validate_position_state"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L98",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_board_rationale_98",
- "target": "services_board_validate_position_state"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L154",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_updatepost",
- "target": "services_board_validate_member_active"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_board_rationale_16",
- "target": "api_board_getboard"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/board.py",
- "source_location": "L123",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_board_rationale_123",
- "target": "api_posts_updatepost"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_botclient",
- "target": "services_bot_client_botclient_make_client"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_botclient",
- "target": "app_http_api_notify"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_botclient",
- "target": "app_http_api_post_message"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L44",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_botclient",
- "target": "app_http_api_post_image"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_rationale_1",
- "target": "services_bot_client_botclient"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_notify",
- "target": "services_bot_client_botclient_make_client"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L34",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_post_message",
- "target": "services_bot_client_botclient_make_client"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_rationale_19",
- "target": "app_http_api_notify"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_rationale_32",
- "target": "app_http_api_post_message"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/bot_client.py",
- "source_location": "L45",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_bot_client_rationale_45",
- "target": "app_http_api_post_image"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L321",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_updatebuilding",
- "target": "services_buildings_rebuild_groups_for_level"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_buildings_rationale_23",
- "target": "services_buildings_rebuild_groups_for_level"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L31",
- "weight": 1.0,
- "source": "services_buildings_rebuild_groups_for_level",
- "target": "services_building_capacity_get_team_count"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L290",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_updatebuilding",
- "target": "services_buildings_get_building_type_config"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L142",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_buildings_rationale_142",
- "target": "services_buildings_require_planning_or_not_locked"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L156",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_buildings_rationale_156",
- "target": "services_buildings_create_groups_and_positions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/building_capacity.py",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_building_capacity_py",
- "target": "services_building_capacity_get_team_count"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/building_capacity.py",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_building_capacity_rationale_14",
- "target": "services_building_capacity_get_team_count"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L46",
- "weight": 1.0,
- "source": "services_sieges_compute_scroll_count",
- "target": "services_building_capacity_get_team_count"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L66",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_comparesieges",
- "target": "services_comparison_load_assignments"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_comparison_rationale_14",
- "target": "services_comparison_load_assignments"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/comparison.py",
- "source_location": "L70",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_comparesieges",
- "target": "services_comparison_load_member_names"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/discord_sync.py",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_discord_sync_rationale_12",
- "target": "api_members_previewdiscordsync"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/discord_sync.py",
- "source_location": "L153",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_discord_sync_rationale_153",
- "target": "api_members_applydiscordsync"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_image_gen_py",
- "target": "services_image_gen_siegememberwithname"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L61",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_image_gen_py",
- "target": "services_image_gen_build_assignments_html"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L233",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_image_gen_py",
- "target": "services_image_gen_build_reserves_html"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L331",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_image_gen_py",
- "target": "services_image_gen_render_html_to_png"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L350",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_image_gen_py",
- "target": "services_image_gen_generate_assignments_image"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L360",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_image_gen_py",
- "target": "services_image_gen_generate_reserves_image"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_rationale_1",
- "target": "backend_app_services_image_gen_py"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L16",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_generateimagesresponse",
- "target": "services_image_gen_siegememberwithname"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L24",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "services_image_gen_siegememberwithname"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L24",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "services_image_gen_siegememberwithname"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L24",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "services_image_gen_siegememberwithname"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "services_image_gen_siegememberwithname",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "services_image_gen_siegememberwithname",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L6",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "services_image_gen_siegememberwithname",
- "target": "api_types_boardresponse"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L399",
- "weight": 1.0,
- "source": "api_notifications_posttochannel",
- "target": "services_image_gen_siegememberwithname"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L356",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_generate_assignments_image",
- "target": "services_image_gen_build_assignments_html"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L66",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_rationale_66",
- "target": "services_image_gen_build_assignments_html"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L365",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_generate_reserves_image",
- "target": "services_image_gen_build_reserves_html"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L237",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_rationale_237",
- "target": "services_image_gen_build_reserves_html"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L357",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_generate_assignments_image",
- "target": "services_image_gen_render_html_to_png"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L366",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_generate_reserves_image",
- "target": "services_image_gen_render_html_to_png"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L332",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_rationale_332",
- "target": "services_image_gen_render_html_to_png"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L355",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_rationale_355",
- "target": "services_image_gen_generate_assignments_image"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/image_gen.py",
- "source_location": "L364",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_image_gen_rationale_364",
- "target": "services_image_gen_generate_reserves_image"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_lifecycle_rationale_18",
- "target": "api_sieges_activatesiege"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L62",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_lifecycle_rationale_62",
- "target": "api_sieges_completesiege"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L86",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_lifecycle_rationale_86",
- "target": "api_sieges_reopensiege"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/lifecycle.py",
- "source_location": "L110",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_lifecycle_rationale_110",
- "target": "api_sieges_clonesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L60",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_notification_message_py",
- "target": "services_notification_message_positioninfo"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L74",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_notification_message_py",
- "target": "services_notification_message_position_sort_key"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L84",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_notification_message_py",
- "target": "services_notification_message_position_label"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L110",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_notification_message_py",
- "target": "services_notification_message_positions_to_key_set"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L117",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_notification_message_py",
- "target": "services_notification_message_positions_from_keys"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L126",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_notification_message_py",
- "target": "services_notification_message_build_section"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L153",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_app_services_notification_message_py",
- "target": "services_notification_message_build_member_notification_message"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_rationale_1",
- "target": "backend_app_services_notification_message_py"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L61",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_rationale_61",
- "target": "services_notification_message_positioninfo"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L25",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "services_notification_message_positioninfo"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L25",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "services_notification_message_positioninfo"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L25",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "services_notification_message_positioninfo"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "services_notification_message_positioninfo",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L214",
- "weight": 1.0,
- "source": "api_notifications_notifysiegemembers",
- "target": "services_notification_message_positioninfo"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L75",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_rationale_75",
- "target": "services_notification_message_position_sort_key"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L142",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_build_section",
- "target": "services_notification_message_position_label"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L85",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_rationale_85",
- "target": "services_notification_message_position_label"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L196",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_build_member_notification_message",
- "target": "services_notification_message_positions_to_key_set"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L111",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_rationale_111",
- "target": "services_notification_message_positions_to_key_set"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L205",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_build_member_notification_message",
- "target": "services_notification_message_positions_from_keys"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L118",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_rationale_118",
- "target": "services_notification_message_positions_from_keys"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L213",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_build_member_notification_message",
- "target": "services_notification_message_build_section"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L131",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_rationale_131",
- "target": "services_notification_message_build_section"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/notification_message.py",
- "source_location": "L161",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_notification_message_rationale_161",
- "target": "services_notification_message_build_member_notification_message"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L262",
- "weight": 1.0,
- "source": "api_notifications_notifysiegemembers",
- "target": "services_notification_message_build_member_notification_message"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L61",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_updatepost",
- "target": "services_posts_get_siege_or_404"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L93",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_setpostconditions",
- "target": "services_posts_get_siege_or_404"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L65",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_updatepost",
- "target": "services_posts_get_post_for_siege_or_404"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L97",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_setpostconditions",
- "target": "services_posts_get_post_for_siege_or_404"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L55",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_posts_rationale_55",
- "target": "api_posts_updatepost"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/posts.py",
- "source_location": "L79",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_posts_rationale_79",
- "target": "api_posts_setpostconditions"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L167",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_previewpostsuggestions",
- "target": "services_post_suggestions_get_target_position"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L518",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_post_suggestions_rationale_518",
- "target": "services_post_suggestions_get_target_position"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L170",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_previewpostsuggestions",
- "target": "services_post_suggestions_null_entry"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L546",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_post_suggestions_rationale_546",
- "target": "services_post_suggestions_null_entry"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L79",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_post_suggestions_rationale_79",
- "target": "api_sieges_previewpostsuggestions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/post_suggestions.py",
- "source_location": "L340",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_post_suggestions_rationale_340",
- "target": "api_sieges_applypostsuggestions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_sieges_rationale_20",
- "target": "services_sieges_scrolls_per_player"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/autofill.py",
- "source_location": "L77",
- "weight": 1.0,
- "source": "api_sieges_previewautofill",
- "target": "services_sieges_scrolls_per_player"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/validation.py",
- "source_location": "L43",
- "weight": 1.0,
- "source": "api_sieges_validatesiege",
- "target": "services_sieges_scrolls_per_player"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/sieges.py",
- "source_location": "L29",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "services_sieges_rationale_29",
- "target": "services_sieges_compute_scroll_count"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/autofill.py",
- "source_location": "L76",
- "weight": 1.0,
- "source": "api_sieges_previewautofill",
- "target": "services_sieges_compute_scroll_count"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/services/validation.py",
- "source_location": "L42",
- "weight": 1.0,
- "source": "api_sieges_validatesiege",
- "target": "services_sieges_compute_scroll_count"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed.py",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_scripts_seed_py",
- "target": "app_main_main"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L95",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_scripts_seed_demo_py",
- "target": "scripts_seed_demo_get_or_create_members"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L114",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_scripts_seed_demo_py",
- "target": "scripts_seed_demo_get_or_create_demo_siege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L133",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_scripts_seed_demo_py",
- "target": "scripts_seed_demo_seed_buildings_and_positions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L203",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_scripts_seed_demo_py",
- "target": "scripts_seed_demo_get_or_create_second_siege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L220",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_scripts_seed_demo_py",
- "target": "scripts_seed_demo_seed_siege_members"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L242",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "backend_scripts_seed_demo_py",
- "target": "app_main_main"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L256",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_main",
- "target": "scripts_seed_demo_get_or_create_members"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L96",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_seed_demo_rationale_96",
- "target": "scripts_seed_demo_get_or_create_members"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L687",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "scripts_seed_demo_get_or_create_members"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L702",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_seed_demo_get_or_create_members",
- "target": "excel_import_import_excel_map_role"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L835",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "scripts_seed_demo_get_or_create_members"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L691",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_691",
- "target": "scripts_seed_demo_get_or_create_members"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L261",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_main",
- "target": "scripts_seed_demo_get_or_create_demo_siege"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L115",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_seed_demo_rationale_115",
- "target": "scripts_seed_demo_get_or_create_demo_siege"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L266",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_main",
- "target": "scripts_seed_demo_seed_buildings_and_positions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L139",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_seed_demo_rationale_139",
- "target": "scripts_seed_demo_seed_buildings_and_positions"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L276",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_main",
- "target": "scripts_seed_demo_get_or_create_second_siege"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L204",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_seed_demo_rationale_204",
- "target": "scripts_seed_demo_get_or_create_second_siege"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L271",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_main",
- "target": "scripts_seed_demo_seed_siege_members"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "backend/scripts/seed_demo.py",
- "source_location": "L225",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_seed_demo_rationale_225",
- "target": "scripts_seed_demo_seed_siege_members"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_discord_client_py",
- "target": "app_discord_client_siegebot"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_siegebot",
- "target": "app_discord_client_siegebot_init"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_siegebot",
- "target": "app_discord_client_siegebot_on_ready"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_siegebot",
- "target": "app_discord_client_siegebot_require_guild"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_siegebot",
- "target": "app_http_api_post_message"
- },
- {
- "relation": "method",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L44",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_siegebot",
- "target": "app_http_api_post_image"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_rationale_7",
- "target": "app_discord_client_siegebot"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L11",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "app_http_api_notifyrequest",
- "target": "app_discord_client_siegebot"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L11",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "app_http_api_postmessagerequest",
- "target": "app_discord_client_siegebot"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "bot/app/main.py",
- "source_location": "L40",
- "weight": 1.0,
- "source": "app_main_main",
- "target": "app_discord_client_siegebot"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_post_message",
- "target": "app_discord_client_siegebot_require_guild"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L51",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_post_image",
- "target": "app_discord_client_siegebot_require_guild"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L34",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_rationale_34",
- "target": "app_http_api_post_message"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/discord_client.py",
- "source_location": "L47",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_discord_client_rationale_47",
- "target": "app_http_api_post_image"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_set_bot"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_get_bot"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_verify_api_key"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L46",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_notifyrequest"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L51",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_postmessagerequest"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L57",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_version"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L83",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_notify"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L97",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_post_message"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L111",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_post_image"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L136",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_http_api_py",
- "target": "app_http_api_get_guild_member"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "bot/app/main.py",
- "source_location": "L41",
- "weight": 1.0,
- "source": "app_main_main",
- "target": "app_http_api_set_bot"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L88",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_notify",
- "target": "app_http_api_get_bot"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L102",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_post_message",
- "target": "app_http_api_get_bot"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L117",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_post_image",
- "target": "app_http_api_get_bot"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L37",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_rationale_37",
- "target": "app_http_api_verify_api_key"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/version.ts",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_version",
- "target": "api_version_getversion"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L58",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_rationale_58",
- "target": "app_http_api_version"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/version.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_version",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/version.ts",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_version",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/version.ts",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_version",
- "target": "api_types_versioninfo"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/version.ts",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_version",
- "target": "api_version_useversion"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_systempage_systempage",
- "target": "app_http_api_version"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L87",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_rationale_87",
- "target": "app_http_api_notify"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L101",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_rationale_101",
- "target": "app_http_api_post_message"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L116",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_rationale_116",
- "target": "app_http_api_post_image"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/http_api.py",
- "source_location": "L140",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_http_api_rationale_140",
- "target": "app_http_api_get_guild_member"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/main.py",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_main_py",
- "target": "app_main_run_http_server"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/main.py",
- "source_location": "L30",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_main_py",
- "target": "app_main_run_discord_client"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/main.py",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "bot_app_main_py",
- "target": "app_main_main"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/main.py",
- "source_location": "L45",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_main",
- "target": "app_main_run_http_server"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/main.py",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_rationale_19",
- "target": "app_main_run_http_server"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/main.py",
- "source_location": "L44",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_main",
- "target": "app_main_run_discord_client"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/main.py",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_rationale_31",
- "target": "app_main_run_discord_client"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "bot/app/main.py",
- "source_location": "L37",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_rationale_37",
- "target": "app_main_main"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L144",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "app_main_main"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1162",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "app_main_main"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1196",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_main",
- "target": "excel_import_import_excel_collect_xlsm_files"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1200",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "app_main_main",
- "target": "excel_import_import_excel_import_file"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/tailwind.config.ts",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_tailwind_config_ts",
- "target": "frontend_src_api_config_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/vitest.config.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_vitest_config_ts",
- "target": "frontend_vite_config_ts"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_apicreatesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_apiaddbuilding"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L52",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_apicreatemember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L84",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "api_types_siegemember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L127",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_buildingstab"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L128",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_poststab"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L179",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_search"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L198",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_roleselect"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L273",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_firstpositionspan"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L274",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_positioncell"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L276",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_chevron"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/board.spec.ts",
- "source_location": "L367",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_board_spec_ts",
- "target": "e2e_board_spec_autofillbtn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L48",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_board_spec_apicreatesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L63",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_board_spec_apiaddbuilding"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_board_spec_apicreatemember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L613",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "e2e_board_spec_buildingstab"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "frontend_src_api_posts_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "api_posts_getposts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "api_sieges_getsiegememberpreferences"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "api_sieges_previewpostsuggestions"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "frontend_src_api_board_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "api_posts_updatepost"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "api_types_buildingresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "api_types_siegemember"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "api_types_postcondition"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "ui_button_button"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "post_suggestions_readme"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "frontend_src_lib_post_priority_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "lib_post_priority_prioritylabel"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "lib_post_priority_prioritybadgecolor"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "pages_boardpage_role_labels"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "pages_boardpage_role_priority"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L40",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "pages_boardpage_role_badge_colors"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L47",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "pages_boardpage_power_labels"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L57",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "components_poststab_memberwithmatches"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L64",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "components_poststab_duplicateconditionmap"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L68",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "components_poststab_buildduplicateconditionmap"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L85",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "components_poststab_findpostposition"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L100",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "components_poststab_memberassignrow"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L302",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "e2e_board_spec_poststab",
- "target": "pages_postspage_postrow"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "e2e_board_spec_poststab"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L112",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "e2e_board_spec_positioncell"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/members.spec.ts",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_members_spec_ts",
- "target": "e2e_members_spec_ensurememberslotsavailable"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/members.spec.ts",
- "source_location": "L68",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_members_spec_ts",
- "target": "ui_checkbox_checkbox"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/members.spec.ts",
- "source_location": "L125",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_members_spec_ts",
- "target": "e2e_members_spec_activecheckbox"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/members.spec.ts",
- "source_location": "L131",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_members_spec_ts",
- "target": "e2e_members_spec_editlinks"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L93",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "api_types_siegemember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L212",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_siege_lifecycle_spec_dateinput"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L153",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_siege_lifecycle_spec_url"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L181",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_siege_lifecycle_spec_tabstrip"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L203",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_siege_lifecycle_spec_boardlink"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L369",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_siege_lifecycle_spec_memberrow"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L382",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_siege_lifecycle_spec_activebadge"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/e2e/siege-lifecycle.spec.ts",
- "source_location": "L383",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_e2e_siege_lifecycle_spec_ts",
- "target": "e2e_siege_lifecycle_spec_errorbadge"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "frontend_src_components_layout_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "frontend_src_components_requireauth_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "frontend_src_components_siegelayout_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "pages_loginpage_loginpage"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "frontend_src_pages_landingpage_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "pages_landingpage_landingorsieges"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "pages_memberspage_memberspage"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "frontend_src_pages_memberdetailpage_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "frontend_src_pages_siegespage_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "pages_siegecreatepage_siegecreatepage"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "frontend_src_pages_siegesettingspage_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "pages_boardpage_boardpage"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "pages_postspage_postspage"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "api_types_siegemember"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "pages_comparisonpage_comparisonpage"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "frontend_src_pages_postprioritiespage_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "pages_systempage_systempage"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/App.tsx",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_app_tsx",
- "target": "src_app_app"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/main.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_main_tsx",
- "target": "frontend_src_app_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/main.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_main_tsx",
- "target": "frontend_src_context_authcontext_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/main.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_main_tsx",
- "target": "context_authcontext_authprovider"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/main.tsx",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_main_tsx",
- "target": "src_main_queryclient"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/board.ts",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_board_ts",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/board.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_board_ts",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/board.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_board_ts",
- "target": "api_types_boardresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/board.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_board_ts",
- "target": "api_types_positionresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/board.ts",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_board_ts",
- "target": "api_board_getboard"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/board.ts",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_board_ts",
- "target": "api_posts_updatepost"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "frontend_src_api_board_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_api_board_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_board_getboard"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "api_board_getboard"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/changelog.ts",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_changelog_ts",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/changelog.ts",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_changelog_ts",
- "target": "api_changelog_changelogstatus"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/changelog.ts",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_changelog_ts",
- "target": "api_changelog_fetchchangelogstatus"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/changelog.ts",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_changelog_ts",
- "target": "api_changelog_markchangelogseen"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_changelogdropdown_tsx",
- "target": "frontend_src_api_changelog_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_changelogdropdown_tsx",
- "target": "api_changelog_fetchchangelogstatus"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_changelogdropdown_tsx",
- "target": "api_changelog_markchangelogseen"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/client.ts",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_client_ts",
- "target": "api_client_apiclient"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/config.ts",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_config_ts",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_posts_ts",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_context_authcontext_tsx",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LoginPage.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_loginpage_loginpage",
- "target": "frontend_src_api_client_ts"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/config.ts",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_config_ts",
- "target": "api_config_appconfig"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/config.ts",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_config_ts",
- "target": "api_config_fetchconfig"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_layout_tsx",
- "target": "frontend_src_api_config_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_layout_tsx",
- "target": "api_config_fetchconfig"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_types_member"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_types_postcondition"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_types_memberroleinfo"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_types_syncpreviewresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_types_syncapplyitem"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_getmember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_createmember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_updatemember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L46",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_deletemember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L50",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_getmemberpreferences"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L59",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_updatememberpreferences"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L72",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_getpostconditions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L77",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_getmemberroles"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L82",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_previewdiscordsync"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/members.ts",
- "source_location": "L89",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_members_ts",
- "target": "api_members_applydiscordsync"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "frontend_src_api_members_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "frontend_src_api_members_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "frontend_src_api_members_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "frontend_src_api_members_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_api_members_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "frontend_src_api_members_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "api_members_getmember"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "api_members_createmember"
- },
- {
- "relation": "imports",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "context": "import",
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_members_updatemember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L149",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_members_updatemember"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "api_members_updatemember"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "api_members_getmemberpreferences"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "api_members_updatememberpreferences"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "api_members_getpostconditions"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "api_members_getpostconditions"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "api_members_getpostconditions"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "api_members_previewdiscordsync"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "api_members_applydiscordsync"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L288",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_notifications_notifysiegemembers",
- "target": "api_types_notifyresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_notifications_notifysiegemembers"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L255",
- "weight": 1.0,
- "source": "api_notifications_notifysiegemembers",
- "target": "api_types_notificationbatchresponse"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L341",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_notifications_getnotificationbatch",
- "target": "api_types_notificationresultitem"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L354",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_notifications_getnotificationbatch",
- "target": "api_types_notificationbatchresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_notifications_getnotificationbatch"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_notifications_posttochannel"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_posts_ts",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_posts_ts",
- "target": "api_types_post"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_posts_ts",
- "target": "api_posts_postpriorityconfig"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_posts_ts",
- "target": "api_posts_getpostpriorities"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_posts_ts",
- "target": "api_posts_updatepostpriority"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_posts_ts",
- "target": "api_posts_getposts"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_posts_ts",
- "target": "api_posts_updatepost"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/posts.ts",
- "source_location": "L44",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_posts_ts",
- "target": "api_posts_setpostconditions"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "frontend_src_api_posts_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "frontend_src_api_posts_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_api_posts_ts"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/api/post_priority_config.py",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_posts_postpriorityconfig",
- "target": "api_posts_updatepostpriority"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L44",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_posts_postpriorityconfig"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L44",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_posts_postpriorityconfig"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L44",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_posts_postpriorityconfig"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L44",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_posts_postpriorityconfig"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L44",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_posts_postpriorityconfig"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L44",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_posts_postpriorityconfig"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_posts_getpostpriorities"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "api_posts_getpostpriorities"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "api_posts_updatepostpriority"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "api_posts_getposts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_posts_updatepost"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "api_posts_setpostconditions"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_siege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_building"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_buildingtypeinfo"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_memberpreferencesummary"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_validationresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_autofillpreviewresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_autofillapplyresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_attackdaypreviewresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_attackdayapplyresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_comparisonresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_postsuggestionpreviewresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_types_postsuggestionapplyresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_getsieges"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_getsiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_createsiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L37",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_updatesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L45",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_deletesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L49",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_activatesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L54",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_completesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L59",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_clonesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L64",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_reopensiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L69",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_validatesiege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L113",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_getbuildings"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L83",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_createbuilding"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L94",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_updatebuilding"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L106",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_deletebuilding"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L120",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_getsiegemembers"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L127",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_getsiegememberpreferences"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L165",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_previewautofill"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L174",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_applyautofill"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L183",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_previewattackday"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L192",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_applyattackday"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L201",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_comparesieges"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L210",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_comparesiegesspecific"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L220",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_previewpostsuggestions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/sieges.ts",
- "source_location": "L229",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_sieges_ts",
- "target": "api_sieges_applypostsuggestions"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/SiegeLayout.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_siegelayout_tsx",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "frontend_src_api_sieges_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "api_sieges_getsieges"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "api_sieges_getsieges"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "api_sieges_getsieges"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/SiegeLayout.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_siegelayout_tsx",
- "target": "api_sieges_getsiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_sieges_getsiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "api_sieges_getsiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_sieges_getsiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_getsiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "api_sieges_createsiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_updatesiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_deletesiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_activatesiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_completesiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "api_sieges_clonesiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_clonesiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_reopensiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_sieges_validatesiege"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_validatesiege"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L284",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_updatebuilding",
- "target": "api_sieges_getbuildings"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/buildings.py",
- "source_location": "L341",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_sieges_deletebuilding",
- "target": "api_sieges_getbuildings"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_getbuildings"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_updatebuilding"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_sieges_getsiegemembers"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_sieges_getsiegemembers"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_sieges_getsiegemembers"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/services/siege_members.py",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_sieges_getsiegememberpreferences"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_sieges_previewautofill"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_sieges_applyautofill"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_sieges_previewattackday"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_sieges_applyattackday"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "api_sieges_comparesieges"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "api_sieges_comparesiegesspecific"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "api_sieges_previewpostsuggestions"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "api_sieges_applypostsuggestions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_memberrole"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_member"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_syncmatch"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_syncpreviewresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L38",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_syncapplyitem"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L123",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_postcondition"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L51",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_siege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L62",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_building"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L72",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_memberpreferencesummary"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L79",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_positionresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L89",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_buildinggroupresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L96",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_buildingresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L105",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_boardresponse"
- },
- {
- "relation": "imports_from",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "context": "import",
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L129",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_post"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L140",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_validationissue"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L146",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_validationresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L152",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_autofillassignment"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L158",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_autofillpreviewresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L163",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_autofillapplyresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L168",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_attackdayassignment"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L173",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_attackdaypreviewresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L178",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_attackdayapplyresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L183",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_positionkey"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L190",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_memberdiff"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L198",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_comparisonresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L205",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_notificationresultitem"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L214",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_notificationbatchresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L220",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_notifyresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L227",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_generateimagesresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L233",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_versioninfo"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L241",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_buildingtypeinfo"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L249",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_memberroleinfo"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L256",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_postsuggestionskipreason"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L262",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "post_suggestions_schema"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L279",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_postsuggestionpreviewresult"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L284",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_postsuggestionstalereason"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L291",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_postsuggestionstaleentry"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/api/types.ts",
- "source_location": "L298",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_api_types_ts",
- "target": "api_types_postsuggestionapplyresult"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/buildingColors.ts",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_buildingcolors_ts",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_grouppostconditions_ts",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "frontend_src_api_types_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "api_types_memberrole"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L12",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_generateimagesresponse",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L15",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L15",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L15",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/member.py",
- "source_location": "L8",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_member",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_syncmatch",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/member.py",
- "source_location": "L5",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_syncpreviewresponse",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_types_memberrole"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_types_memberrole"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L15",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L15",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L15",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/siege.py",
- "source_location": "L8",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_siege",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_types_siegestatus"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/buildingColors.ts",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_buildingcolors_ts",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/building.py",
- "source_location": "L7",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_building",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/board.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_boardresponse",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_positionresponse",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_buildinggroupresponse",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L3",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_buildingresponse",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L39",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_types_buildingtype"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L334",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L334",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L334",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/post_condition.py",
- "source_location": "L9",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_postcondition",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/siege_member.py",
- "source_location": "L9",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_siegemember",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L40",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L40",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L40",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L40",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L40",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_types_member"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L40",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_types_member"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "api_types_syncmatch"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "api_types_syncapplyitem"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_grouppostconditions_ts",
- "target": "api_types_postcondition"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/post_condition.py",
- "source_location": "L10",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_postcondition",
- "target": "api_types_post"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L43",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_types_postcondition"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L43",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_types_postcondition"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L43",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_types_postcondition"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L43",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_types_postcondition"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L43",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_types_postcondition"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L43",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_types_postcondition"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L19",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "api_types_siege"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L19",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "api_types_siege"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/siege.py",
- "source_location": "L12",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_siege",
- "target": "api_types_notificationbatchresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/siege.py",
- "source_location": "L11",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_siege",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/siege.py",
- "source_location": "L13",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_siege",
- "target": "api_types_post"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/siege_member.py",
- "source_location": "L10",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_siegemember",
- "target": "api_types_siege"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L45",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_types_siege"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L45",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_types_siege"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L45",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_types_siege"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L45",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_types_siege"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L45",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_types_siege"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L45",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_types_siege"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_building",
- "target": "api_types_positionresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_building",
- "target": "api_types_buildinggroupresponse"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/building.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_building",
- "target": "api_types_buildingresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L13",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L13",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L13",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/models/post.py",
- "source_location": "L9",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_post",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L37",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L37",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L37",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L37",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L37",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_types_building"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L37",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_types_building"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "backend/app/schemas/siege_member.py",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_types_memberpreferencesummary"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_types_positionresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_types_buildinggroupresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_types_buildingresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "api_types_buildingresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L41",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_generateimagesresponse",
- "target": "api_types_boardresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L382",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "api_types_boardresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L382",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "api_types_boardresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L382",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "api_types_boardresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_types_siegemember"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "api_types_attackdaypreviewresult"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "frontend_src_components_ui_table_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_table_table"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_table_tablebody"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_table_tablecell"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_table_tablehead"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_table_tablerow"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_button_button"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_checkbox_checkbox"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "frontend_src_components_ui_select_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_select_selectcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_select_selectitem"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_select_selecttrigger"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "frontend_src_components_ui_dialog_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_dialog_dialogcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_dialog_dialogheader"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_dialog_dialogtitle"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_dialog_dialogfooter"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "ui_dialog_dialogdescription"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeMembersPage.tsx",
- "source_location": "L41",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "api_types_siegemember",
- "target": "pages_siegememberspage_attackdayselect"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/images.py",
- "source_location": "L13",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_generateimagesresponse",
- "target": "api_types_siegemember"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L20",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "api_types_siegemember"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L20",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "api_types_siegemember"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L20",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationbatchresponse",
- "target": "api_types_siegemember"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L46",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_types_siegemember"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L46",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_types_siegemember"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L46",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_types_siegemember"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L46",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_types_siegemember"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L46",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_types_siegemember"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L46",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_types_siegemember"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "api_types_post"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L42",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedmember",
- "target": "api_types_post"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L42",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedassignment",
- "target": "api_types_post"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L42",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedreserve",
- "target": "api_types_post"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L42",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconfig",
- "target": "api_types_post"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L42",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_parsedpostconditions",
- "target": "api_types_post"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L42",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "excel_import_import_excel_importstats",
- "target": "api_types_post"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_types_validationissue"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_types_validationresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_types_validationresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "api_types_autofillpreviewresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "api_types_positionkey"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "api_types_memberdiff"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_types_notificationresultitem"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L16",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notificationresultitem",
- "target": "api_types_notificationbatchresponse"
- },
- {
- "relation": "uses",
- "confidence": "INFERRED",
- "source_file": "backend/app/api/notifications.py",
- "source_location": "L16",
- "weight": 0.8,
- "confidence_score": 0.5,
- "source": "api_types_notifyresponse",
- "target": "api_types_notificationbatchresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "api_types_notifyresponse"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "api_types_postsuggestionpreviewresult"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "api_types_postsuggestionstaleentry"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L101",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_systempage_systempage",
- "target": "api_version_useversion"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Carousel.tsx",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "components_carousel_carousel",
- "target": "components_carousel_carouselslide"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "components_carousel_carouselslide"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Carousel.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "components_carousel_carousel",
- "target": "components_carousel_carouselprops"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Carousel.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "components_carousel_carousel",
- "target": "pages_landingpage_colors"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "components_carousel_carousel"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_changelogdropdown_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L131",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_changelogdropdown_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_changelogdropdown_tsx",
- "target": "frontend_src_components_ui_dropdown_menu_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_changelogdropdown_tsx",
- "target": "ui_dropdown_menu_dropdownmenucontent"
- },
- {
- "relation": "calls",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ChangelogDropdown.tsx",
- "source_location": "L103",
- "weight": 1.0,
- "context": "call",
- "confidence_score": 1.0,
- "source": "frontend_src_components_changelogdropdown_tsx",
- "target": "components_changelogdropdown_hasunread"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_layout_tsx",
- "target": "frontend_src_components_changelogdropdown_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "frontend_src_components_ui_dialog_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_dialog_dialogcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_dialog_dialogheader"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_dialog_dialogtitle"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_dialog_dialogfooter"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "frontend_src_components_ui_table_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_table_table"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_table_tablebody"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_table_tablecell"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_table_tablehead"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_table_tablerow"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_button_button"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "frontend_src_components_ui_badge_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_badge_badge"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "ui_checkbox_checkbox"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "components_groupbytoggle_props"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "components_discordsyncmodal_confidencevariant"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/DiscordSyncModal.tsx",
- "source_location": "L39",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_discordsyncmodal_tsx",
- "target": "components_discordsyncmodal_confidence_label"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "frontend_src_components_discordsyncmodal_tsx"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/GroupByToggle.tsx",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "components_groupbytoggle_groupbytoggle",
- "target": "components_groupbytoggle_props"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L34",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_groupbytoggle_props"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/GroupByToggle.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "components_groupbytoggle_groupbytoggle",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/GroupByToggle.tsx",
- "source_location": "L39",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "components_groupbytoggle_groupbytoggle",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/GroupByToggle.tsx",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "components_groupbytoggle_groupbytoggle",
- "target": "frontend_src_lib_grouppostconditions_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/GroupByToggle.tsx",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "components_groupbytoggle_groupbytoggle",
- "target": "lib_grouppostconditions_groupbymode"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L34",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "components_groupbytoggle_groupbytoggle"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "components_groupbytoggle_groupbytoggle"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "components_groupbytoggle_groupbytoggle"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_layout_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_layout_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_layout_tsx",
- "target": "frontend_src_context_authcontext_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_layout_tsx",
- "target": "context_authcontext_useauth"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_layout_tsx",
- "target": "components_layout_navlinkclass"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_layout_tsx",
- "target": "components_layout_layout"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L10",
- "weight": 1.0,
- "source": "components_layout_navlinkclass",
- "target": "lib_utils_cn"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/components/Layout.tsx",
- "source_location": "L18",
- "weight": 1.0,
- "source": "components_layout_layout",
- "target": "context_authcontext_useauth"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostsTab.tsx",
- "source_location": "L329",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postrow",
- "target": "components_poststab_findpostposition"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L30",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_outcomefilter"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_classification"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L42",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_priority_meta"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L64",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_getprioritymeta"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L70",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_skip_reason_label"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L82",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_stale_reason_label"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L104",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_tileconfig"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L159",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_classify"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L198",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "components_postsuggestionsmodal_changecell",
- "target": "components_postsuggestionsmodal_classify"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L169",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_pill"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L185",
- "weight": 1.0,
- "source": "components_postsuggestionsmodal_pill",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L197",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_changecell"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L248",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_skipicon"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L259",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_conditioncell"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L290",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_summarytile"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L308",
- "weight": 1.0,
- "source": "components_postsuggestionsmodal_summarytile",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L345",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_stateloading"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L355",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_stateempty"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L379",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_statestaleconflict"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L476",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_expirycountdown"
- },
- {
- "relation": "calls",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L554",
- "weight": 1.0,
- "context": "call",
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "components_postsuggestionsmodal_useexpirycountdown"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/RequireAuth.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_requireauth_tsx",
- "target": "frontend_src_context_authcontext_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/RequireAuth.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_requireauth_tsx",
- "target": "context_authcontext_useauth"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/RequireAuth.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_requireauth_tsx",
- "target": "components_requireauth_requireauth"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/components/RequireAuth.tsx",
- "source_location": "L9",
- "weight": 1.0,
- "source": "components_requireauth_requireauth",
- "target": "context_authcontext_useauth"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/SiegeLayout.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_siegelayout_tsx",
- "target": "components_siegelayout_siegelayout"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_badge_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_badge_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_badge_tsx",
- "target": "ui_badge_badgevariants"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L29",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_badge_tsx",
- "target": "ui_badge_badgeprops"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L34",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_badge_tsx",
- "target": "ui_badge_badge"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "frontend_src_components_ui_badge_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "frontend_src_components_ui_badge_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "frontend_src_components_ui_badge_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_components_ui_badge_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L41",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "frontend_src_components_ui_badge_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "frontend_src_components_ui_badge_tsx"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "ui_badge_badge",
- "target": "ui_badge_badgevariants"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "ui_badge_badge"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_badge_badge"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L21",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_badge_badge"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "ui_badge_badge"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L41",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_badge_badge"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "ui_badge_badge"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/components/ui/badge.tsx",
- "source_location": "L36",
- "weight": 1.0,
- "source": "ui_badge_badge",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/button.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_button_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/button.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_button_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/button.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_button_tsx",
- "target": "ui_button_buttonvariants"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/button.tsx",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_button_tsx",
- "target": "ui_button_buttonprops"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/button.tsx",
- "source_location": "L43",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_button_tsx",
- "target": "ui_button_button"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L29",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "frontend_src_components_ui_button_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "ui_button_button"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L35",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "ui_button_button"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_button_button"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_button_button"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "ui_button_button"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "ui_button_button"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L29",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_button_button"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "ui_button_button"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/checkbox.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "ui_checkbox_checkbox",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/checkbox.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "ui_checkbox_checkbox",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_checkbox_checkbox"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_checkbox_checkbox"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L12",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "ui_checkbox_checkbox"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L32",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_checkbox_checkbox"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "frontend_src_components_ui_dialog_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dialog_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dialog_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dialog_tsx",
- "target": "ui_dialog_dialogoverlay"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dialog_tsx",
- "target": "ui_dialog_dialogcontent"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L50",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dialog_tsx",
- "target": "ui_dialog_dialogheader"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L66",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dialog_tsx",
- "target": "ui_dialog_dialogfooter"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L82",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dialog_tsx",
- "target": "ui_dialog_dialogtitle"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L97",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dialog_tsx",
- "target": "ui_dialog_dialogdescription"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L38",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "frontend_src_components_ui_dialog_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "frontend_src_components_ui_dialog_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "frontend_src_components_ui_dialog_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "ui_dialog_dialogcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L38",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "ui_dialog_dialogcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_dialog_dialogcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_dialog_dialogcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "ui_dialog_dialogheader"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L38",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "ui_dialog_dialogheader"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_dialog_dialogheader"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_dialog_dialogheader"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L56",
- "weight": 1.0,
- "source": "ui_dialog_dialogheader",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L38",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "ui_dialog_dialogfooter"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_dialog_dialogfooter"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_dialog_dialogfooter"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/components/ui/dialog.tsx",
- "source_location": "L72",
- "weight": 1.0,
- "source": "ui_dialog_dialogfooter",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "ui_dialog_dialogtitle"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L38",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "ui_dialog_dialogtitle"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_dialog_dialogtitle"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_dialog_dialogtitle"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L38",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "ui_dialog_dialogdescription"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_dialog_dialogdescription"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L33",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_dialog_dialogdescription"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "ui_dropdown_menu_dropdownmenusubtrigger"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L42",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "ui_dropdown_menu_dropdownmenusubcontent"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L58",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "ui_dropdown_menu_dropdownmenucontent"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L76",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "ui_dropdown_menu_dropdownmenuitem"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L94",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "ui_dropdown_menu_dropdownmenucheckboxitem"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L118",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "ui_dropdown_menu_dropdownmenuradioitem"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L140",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "ui_dropdown_menu_dropdownmenulabel"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L158",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "ui_dropdown_menu_dropdownmenuseparator"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L170",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_dropdown_menu_tsx",
- "target": "ui_dropdown_menu_dropdownmenushortcut"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/components/ui/dropdown-menu.tsx",
- "source_location": "L176",
- "weight": 1.0,
- "source": "ui_dropdown_menu_dropdownmenushortcut",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/input.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_input_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/input.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_input_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/input.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_input_tsx",
- "target": "ui_input_inputprops"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/input.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_input_tsx",
- "target": "ui_input_input"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L37",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "frontend_src_components_ui_input_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "frontend_src_components_ui_input_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "frontend_src_components_ui_input_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_components_ui_input_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "frontend_src_components_ui_input_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L30",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "frontend_src_components_ui_input_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L37",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "ui_input_input"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_input_input"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_input_input"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "ui_input_input"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "ui_input_input"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L30",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_input_input"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/label.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_label_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/label.tsx",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_label_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/label.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_label_tsx",
- "target": "ui_label_label"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "frontend_src_components_ui_label_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "frontend_src_components_ui_label_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "frontend_src_components_ui_label_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_components_ui_label_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "frontend_src_components_ui_label_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "frontend_src_components_ui_label_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "ui_label_label"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_label_label"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L24",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_label_label"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "ui_label_label"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "ui_label_label"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "ui_label_label"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_select_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_select_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_select_tsx",
- "target": "ui_select_selecttrigger"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L30",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_select_tsx",
- "target": "ui_select_selectscrollupbutton"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L47",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_select_tsx",
- "target": "ui_select_selectscrolldownbutton"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L65",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_select_tsx",
- "target": "ui_select_selectcontent"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L97",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_select_tsx",
- "target": "ui_select_selectlabel"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L109",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_select_tsx",
- "target": "ui_select_selectitem"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/select.tsx",
- "source_location": "L131",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_select_tsx",
- "target": "ui_select_selectseparator"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "frontend_src_components_ui_select_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "frontend_src_components_ui_select_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "frontend_src_components_ui_select_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "frontend_src_components_ui_select_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "frontend_src_components_ui_select_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "ui_select_selecttrigger"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_select_selecttrigger"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_select_selecttrigger"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_select_selecttrigger"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "ui_select_selecttrigger"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "ui_select_selectcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_select_selectcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_select_selectcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_select_selectcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "ui_select_selectcontent"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "ui_select_selectitem"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "ui_select_selectitem"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_select_selectitem"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_select_selectitem"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L8",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "ui_select_selectitem"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_table_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_table_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_table_tsx",
- "target": "ui_table_table"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L68",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_table_tsx",
- "target": "ui_table_tablehead"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_table_tsx",
- "target": "ui_table_tablebody"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L38",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_table_tsx",
- "target": "ui_table_tablefooter"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L53",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_table_tsx",
- "target": "ui_table_tablerow"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L83",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_table_tsx",
- "target": "ui_table_tablecell"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/table.tsx",
- "source_location": "L98",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_table_tsx",
- "target": "ui_table_tablecaption"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "frontend_src_components_ui_table_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "frontend_src_components_ui_table_tsx"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "frontend_src_components_ui_table_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_table_table"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_table_table"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "ui_table_table"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_table_tablebody"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_table_tablebody"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "ui_table_tablebody"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_table_tablerow"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_table_tablerow"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "ui_table_tablerow"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_table_tablehead"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_table_tablehead"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "ui_table_tablehead"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "ui_table_tablecell"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "ui_table_tablecell"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L5",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "ui_table_tablecell"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/textarea.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_textarea_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/textarea.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_textarea_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/textarea.tsx",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_textarea_tsx",
- "target": "ui_textarea_textareaprops"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/ui/textarea.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_components_ui_textarea_tsx",
- "target": "ui_textarea_textarea"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L11",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_context_authcontext_tsx",
- "target": "context_authcontext_authuser"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_context_authcontext_tsx",
- "target": "context_authcontext_authcontextvalue"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_context_authcontext_tsx",
- "target": "context_authcontext_authcontext"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_context_authcontext_tsx",
- "target": "context_authcontext_authprovider"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/context/AuthContext.tsx",
- "source_location": "L63",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_context_authcontext_tsx",
- "target": "context_authcontext_useauth"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "frontend_src_context_authcontext_tsx"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L2",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "context_authcontext_useauth"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L11",
- "weight": 1.0,
- "source": "pages_landingpage_landingorsieges",
- "target": "context_authcontext_useauth"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/buildingColors.ts",
- "source_location": "L3",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_buildingcolors_ts",
- "target": "lib_buildingcolors_buildingcolorclass"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/buildingColors.ts",
- "source_location": "L49",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_buildingcolors_ts",
- "target": "lib_buildingcolors_building_labels"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L54",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "frontend_src_lib_buildingcolors_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L55",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "frontend_src_lib_buildingcolors_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L54",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "lib_buildingcolors_building_labels"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L55",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "lib_buildingcolors_building_labels"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_grouppostconditions_ts",
- "target": "lib_grouppostconditions_groupbymode"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L20",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_grouppostconditions_ts",
- "target": "lib_grouppostconditions_conditiongroup"
- },
- {
- "relation": "calls",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L46",
- "weight": 1.0,
- "context": "call",
- "confidence_score": 1.0,
- "source": "frontend_src_lib_grouppostconditions_ts",
- "target": "lib_grouppostconditions_groupbylevel"
- },
- {
- "relation": "calls",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/groupPostConditions.ts",
- "source_location": "L48",
- "weight": 1.0,
- "context": "call",
- "confidence_score": 1.0,
- "source": "frontend_src_lib_grouppostconditions_ts",
- "target": "lib_grouppostconditions_groupbytype"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/useGroupByPreference.ts",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_usegroupbypreference_ts",
- "target": "frontend_src_lib_grouppostconditions_ts"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L304",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "frontend_src_lib_grouppostconditions_ts"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L196",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "frontend_src_lib_grouppostconditions_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_lib_grouppostconditions_ts"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L103",
- "weight": 1.0,
- "source": "pages_postspage_postrow",
- "target": "frontend_src_lib_grouppostconditions_ts"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/useGroupByPreference.ts",
- "source_location": "L9",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_usegroupbypreference_ts",
- "target": "lib_grouppostconditions_groupbymode"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "lib_grouppostconditions_groupbymode"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/post-priority.ts",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_post_priority_ts",
- "target": "lib_post_priority_prioritylabel"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/post-priority.ts",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_post_priority_ts",
- "target": "lib_post_priority_prioritybadgecolor"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L23",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "lib_post_priority_prioritylabel"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/useGroupByPreference.ts",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_usegroupbypreference_ts",
- "target": "lib_usegroupbypreference_valid_modes"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L65",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "frontend_src_lib_usegroupbypreference_ts"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L70",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "frontend_src_lib_usegroupbypreference_ts"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L278",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "frontend_src_lib_usegroupbypreference_ts"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L57",
- "weight": 1.0,
- "source": "pages_postspage_postrow",
- "target": "frontend_src_lib_usegroupbypreference_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/lib/utils.ts",
- "source_location": "L4",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_lib_utils_ts",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L22",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L54",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "imports_from",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_systempage_systempage",
- "target": "frontend_src_lib_utils_ts"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L755",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "lib_utils_cn"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L102",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeSettingsPage.tsx",
- "source_location": "L501",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegesettingspage_tsx",
- "target": "lib_utils_cn"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_systempage_systempage",
- "target": "lib_utils_cn"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L29",
- "weight": 1.0,
- "source": "pages_comparisonpage_positiontag",
- "target": "lib_utils_cn"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L27",
- "weight": 1.0,
- "source": "pages_systempage_sectionpanel",
- "target": "lib_utils_cn"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L67",
- "weight": 1.0,
- "source": "pages_systempage_datarow",
- "target": "lib_utils_cn"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L58",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_role_labels"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "pages_boardpage_role_labels"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L65",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_role_priority"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L72",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_role_colors"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L79",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_role_badge_colors"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L87",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_role_chip_colors"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L94",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_power_labels"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L28",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "pages_boardpage_power_labels"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L103",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_building_type_order"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L254",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_draggablememberrow"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L322",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_memberdragoverlay"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L347",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_rolefilter"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L349",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_role_filter_options"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L357",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_memberbucket"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L457",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_buildingtablerow"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L553",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_buildingtypesection"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L679",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_conditionaldndcontext"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/BoardPage.tsx",
- "source_location": "L711",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_boardpage_boardpage",
- "target": "pages_boardpage_activetab"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "pages_comparisonpage_formatposition"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L36",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_positiontag",
- "target": "pages_comparisonpage_formatposition"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "pages_comparisonpage_positiontag"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/ComparisonPage.tsx",
- "source_location": "L54",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_comparisonpage_comparisonpage",
- "target": "pages_comparisonpage_memberpositionscell"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L10",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "pages_landingpage_landingorsieges"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L26",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "pages_landingpage_slides"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L68",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "pages_landingpage_shieldicon"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L88",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "pages_landingpage_githubicon"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L108",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "pages_landingpage_checkicon"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L128",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "pages_landingpage_externallinkicon"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L150",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "pages_landingpage_colors"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LandingPage.tsx",
- "source_location": "L157",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_landingpage_tsx",
- "target": "pages_landingpage_landingpage"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LoginPage.tsx",
- "source_location": "L7",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_loginpage_loginpage",
- "target": "pages_loginpage_error_messages"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LoginPage.tsx",
- "source_location": "L15",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_loginpage_loginpage",
- "target": "pages_loginpage_membership_errors"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/LoginPage.tsx",
- "source_location": "L18",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_loginpage_loginpage",
- "target": "pages_loginpage_mobilebanner"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MemberDetailPage.tsx",
- "source_location": "L41",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_memberdetailpage_tsx",
- "target": "pages_memberdetailpage_role_options"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L43",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "pages_memberspage_rolebadgevariant"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/MembersPage.tsx",
- "source_location": "L45",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_memberspage_memberspage",
- "target": "pages_memberspage_role_variants"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L30",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "pages_postprioritiespage_descriptioncell"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostPrioritiesPage.tsx",
- "source_location": "L64",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_postprioritiespage_tsx",
- "target": "pages_postprioritiespage_tab"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/PostsPage.tsx",
- "source_location": "L30",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_postspage_postspage",
- "target": "pages_postspage_postrow"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "pages_siegecreatepage_nexttuesdayfrom"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L43",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_suggestnextsiegedate",
- "target": "pages_siegecreatepage_nexttuesdayfrom"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L27",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "pages_siegecreatepage_formatdatelocal"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L41",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_suggestnextsiegedate",
- "target": "pages_siegecreatepage_formatdatelocal"
- },
- {
- "relation": "calls",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegeCreatePage.tsx",
- "source_location": "L60",
- "weight": 1.0,
- "context": "call",
- "confidence_score": 1.0,
- "source": "pages_siegecreatepage_siegecreatepage",
- "target": "pages_siegecreatepage_suggestnextsiegedate"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L17",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "pages_siegespage_statusbadgevariant"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L19",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "pages_siegespage_status_variants"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L25",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "pages_siegespage_status_labels"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SiegesPage.tsx",
- "source_location": "L31",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_pages_siegespage_tsx",
- "target": "pages_siegespage_siegespage"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L6",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_systempage_systempage",
- "target": "pages_systempage_ui_libraries"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L16",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_systempage_systempage",
- "target": "pages_systempage_sectionpanel"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L47",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_systempage_systempage",
- "target": "pages_systempage_datarow"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/pages/SystemPage.tsx",
- "source_location": "L80",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "pages_systempage_systempage",
- "target": "pages_systempage_libraryrow"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/types/changelog.d.ts",
- "source_location": "L13",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "frontend_src_types_changelog_d_ts",
- "target": "types_changelog_d_changelogentry"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "scripts_bootstrap_excel_import_ps1"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "scripts_bootstrap_excel_import_ps1",
- "target": "runbook_azure_keyvault"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "scripts_bootstrap_excel_import_ps1",
- "target": "infra_readme_postgres_flexible_server"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "scripts_bootstrap_images_ps1"
- },
- {
- "relation": "semantically_similar_to",
- "confidence": "AMBIGUOUS",
- "confidence_score": 0.7,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 0.7,
- "source": "concept_bootstrap_images_script",
- "target": "scripts_bootstrap_images_ps1"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L160",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parsedmember"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L169",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parsedassignment"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L178",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parsedreserve"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L185",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parsedpostconfig"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L192",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parsedpostconditions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L198",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_importstats"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L224",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parse_filename_date"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L236",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_map_role"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L241",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_map_building_alias"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L265",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parse_members_sheet"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L337",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parse_assignments_sheet"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L445",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parse_reserves_sheet"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L489",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parse_posts_sheet_config"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L534",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_parse_posts_sheet_conditions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L570",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_build_group_structure"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L592",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_compute_building_group_structure"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L677",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_infer_building_level"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L719",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_create_building_with_groups_and_positions"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1069",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_import_file"
- },
- {
- "relation": "contains",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1146",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "scripts_excel_import_import_excel_py",
- "target": "excel_import_import_excel_collect_xlsm_files"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_1",
- "target": "scripts_excel_import_import_excel_py"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L326",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_parse_members_sheet",
- "target": "excel_import_import_excel_parsedmember"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L433",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_parse_assignments_sheet",
- "target": "excel_import_import_excel_parsedassignment"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L480",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_parse_reserves_sheet",
- "target": "excel_import_import_excel_parsedreserve"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L525",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_parse_posts_sheet_config",
- "target": "excel_import_import_excel_parsedpostconfig"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L557",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_parse_posts_sheet_conditions",
- "target": "excel_import_import_excel_parsedpostconditions"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L784",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_importstats"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L787",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_parse_filename_date"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L225",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_225",
- "target": "excel_import_import_excel_parse_filename_date"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L843",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_map_role"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L237",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_237",
- "target": "excel_import_import_excel_map_role"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L402",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_parse_assignments_sheet",
- "target": "excel_import_import_excel_map_building_alias"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L242",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_242",
- "target": "excel_import_import_excel_map_building_alias"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L814",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_parse_members_sheet"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L266",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_266",
- "target": "excel_import_import_excel_parse_members_sheet"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L815",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_parse_assignments_sheet"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L338",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_338",
- "target": "excel_import_import_excel_parse_assignments_sheet"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L816",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_parse_reserves_sheet"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L446",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_446",
- "target": "excel_import_import_excel_parse_reserves_sheet"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L823",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_parse_posts_sheet_config"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L490",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_490",
- "target": "excel_import_import_excel_parse_posts_sheet_config"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L824",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_parse_posts_sheet_conditions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L535",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_535",
- "target": "excel_import_import_excel_parse_posts_sheet_conditions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L571",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_571",
- "target": "excel_import_import_excel_build_group_structure"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L929",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_compute_building_group_structure"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L597",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_597",
- "target": "excel_import_import_excel_compute_building_group_structure"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L934",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_infer_building_level"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L678",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_678",
- "target": "excel_import_import_excel_infer_building_level"
- },
- {
- "relation": "calls",
- "context": "call",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L935",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_import_file",
- "target": "excel_import_import_excel_create_building_with_groups_and_positions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L727",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_727",
- "target": "excel_import_import_excel_create_building_with_groups_and_positions"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L781",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_781",
- "target": "excel_import_import_excel_import_file"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1073",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_1073",
- "target": "excel_import_import_excel_import_file"
- },
- {
- "relation": "rationale_for",
- "confidence": "EXTRACTED",
- "source_file": "scripts/excel-import/import_excel.py",
- "source_location": "L1147",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "excel_import_import_excel_rationale_1147",
- "target": "excel_import_import_excel_collect_xlsm_files"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "weight": 1.0,
- "source": "changelog_v120",
- "target": "changelog_suggest_post_assignments"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "weight": 1.0,
- "source": "changelog_v120",
- "target": "changelog_group_post_conditions"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "weight": 1.0,
- "source": "changelog_v120",
- "target": "changelog_rate_limited_discord_oauth"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "weight": 0.8,
- "source": "changelog_v120",
- "target": "changelog_v110"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "README.md",
- "source_location": null,
- "weight": 0.7,
- "source": "readme",
- "target": "changelog_v120"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "weight": 0.8,
- "source": "changelog_v110",
- "target": "changelog_v100"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "post_suggestions_readme",
- "target": "changelog_suggest_post_assignments"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 0.9,
- "source": "post_suggestions_plan",
- "target": "changelog_suggest_post_assignments"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "weight": 0.8,
- "source": "changelog_rate_limited_discord_oauth",
- "target": "backend_slowapi"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "CHANGELOG.md",
- "source_location": null,
- "weight": 0.8,
- "source": "changelog_rate_limited_discord_oauth",
- "target": "claude_discord_oauth2"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_project_overview",
- "target": "claude_backend_service"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_project_overview",
- "target": "claude_frontend_service"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_project_overview",
- "target": "claude_bot_service"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_project_overview",
- "target": "claude_discord_oauth2"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_project_overview",
- "target": "claude_postgresql"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_project_overview",
- "target": "claude_alembic"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_project_overview",
- "target": "claude_playwright"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_project_overview",
- "target": "impl_plan"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_project_overview",
- "target": "wdd"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "weight": 0.8,
- "source": "component_versioning_plan",
- "target": "claude_project_overview"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "README.md",
- "source_location": null,
- "weight": 0.8,
- "source": "readme",
- "target": "claude_project_overview"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "docs/experiments/graphify-dry-run.md",
- "source_location": null,
- "weight": 0.8,
- "source": "graphify_dryrun",
- "target": "claude_project_overview"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_backend_service",
- "target": "backend_fastapi"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_backend_service",
- "target": "backend_sqlalchemy"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_backend_service",
- "target": "claude_alembic"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_backend_service",
- "target": "claude_postgresql"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_frontend_service",
- "target": "claude_backend_service"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 1.0,
- "source": "claude_bot_service",
- "target": "claude_backend_service"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "weight": 0.8,
- "source": "component_versioning_backend_version",
- "target": "claude_backend_service"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "weight": 0.8,
- "source": "component_versioning_frontend_version",
- "target": "claude_frontend_service"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "weight": 0.9,
- "source": "discord_auth_botclient_get_member",
- "target": "claude_bot_service"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "weight": 0.8,
- "source": "component_versioning_bot_version",
- "target": "claude_bot_service"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 0.9,
- "source": "wdd_notification_flow",
- "target": "claude_bot_service"
- },
- {
- "relation": "semantically_similar_to",
- "confidence": "INFERRED",
- "confidence_score": 0.95,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 0.9,
- "source": "wdd_discord_auth",
- "target": "claude_discord_oauth2"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "docs/mockups/mockup-login.html",
- "source_location": null,
- "weight": 0.7,
- "source": "mockup_login",
- "target": "claude_discord_oauth2"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "weight": 0.8,
- "source": "runbook",
- "target": "claude_alembic"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Any-VPS.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_vps_wiki",
- "target": "claude_alembic"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "wiki/Self-Host-on-Any-VPS.md",
- "source_location": null,
- "weight": 0.8,
- "source": "claude_alembic",
- "target": "infra_readme_postgres_flexible_server"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan_phase5",
- "target": "claude_playwright"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.95,
- "source_file": "CLAUDE.md",
- "source_location": null,
- "weight": 0.9,
- "source": "claude_playwright",
- "target": "backend_playwright_dep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docker-compose.yml",
- "source_location": null,
- "weight": 1.0,
- "source": "dockercompose_stack",
- "target": "dockercompose_postgres"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docker-compose.yml",
- "source_location": null,
- "weight": 1.0,
- "source": "dockercompose_stack",
- "target": "dockercompose_backend"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docker-compose.yml",
- "source_location": null,
- "weight": 1.0,
- "source": "dockercompose_stack",
- "target": "dockercompose_frontend"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docker-compose.yml",
- "source_location": null,
- "weight": 1.0,
- "source": "dockercompose_stack",
- "target": "dockercompose_bot"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docker-compose.prod.yml",
- "source_location": null,
- "weight": 1.0,
- "source": "dockercomposeprod_overlay",
- "target": "dockercompose_stack"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "readme",
- "target": "dockercompose_stack"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Getting-Started.md",
- "source_location": null,
- "weight": 1.0,
- "source": "getting_started_wiki",
- "target": "dockercompose_stack"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Any-VPS.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_vps_wiki",
- "target": "dockercompose_stack"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docker-compose.yml",
- "source_location": null,
- "weight": 1.0,
- "source": "dockercompose_backend",
- "target": "dockercompose_postgres"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docker-compose.yml",
- "source_location": null,
- "weight": 1.0,
- "source": "dockercompose_bot",
- "target": "dockercompose_postgres"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docker-compose.yml",
- "source_location": null,
- "weight": 1.0,
- "source": "dockercompose_frontend",
- "target": "dockercompose_backend"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "backend_requirements",
- "target": "backend_fastapi"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "backend_requirements",
- "target": "backend_sqlalchemy"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "backend_requirements",
- "target": "backend_asyncpg"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "backend_requirements",
- "target": "backend_pyjwt"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "backend_requirements",
- "target": "backend_slowapi"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "backend_requirements",
- "target": "backend_playwright_dep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "backend/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "backend_requirements",
- "target": "backend_otel"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "weight": 0.9,
- "source": "discord_auth_get_current_user",
- "target": "backend_fastapi"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "excel_import_readme_scripts",
- "target": "backend_asyncpg"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "weight": 0.85,
- "source": "excel_import_readme_import_members_py",
- "target": "backend_asyncpg"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "weight": 1.0,
- "source": "discord_auth_get_current_user",
- "target": "backend_pyjwt"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "weight": 1.0,
- "source": "discord_auth_jwt_cookie",
- "target": "backend_pyjwt"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "weight": 0.9,
- "source": "runbook_app_insights",
- "target": "backend_otel"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "bot/requirements-dev.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "bot_requirements_dev",
- "target": "bot_requirements"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "bot/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "bot_requirements",
- "target": "bot_discordpy"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "bot/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "bot_requirements",
- "target": "bot_fastapi"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan_phase5",
- "target": "bot_discordpy"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan",
- "target": "impl_plan_phase0"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan",
- "target": "impl_plan_phase1"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan",
- "target": "impl_plan_phase2"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan",
- "target": "impl_plan_phase3"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan",
- "target": "impl_plan_phase4"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan",
- "target": "impl_plan_phase5"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan",
- "target": "impl_plan_phase6"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan",
- "target": "impl_plan_buildingtypeconfig"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan",
- "target": "wdd"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 0.8,
- "source": "impl_plan_phase1",
- "target": "wdd_siege_model"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan_phase4",
- "target": "wdd_validation_rules"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan_phase4",
- "target": "wdd_autofill_algorithm"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/IMPLEMENTATION_PLAN.md",
- "source_location": null,
- "weight": 1.0,
- "source": "impl_plan_phase4",
- "target": "wdd_attack_day_algorithm"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 0.9,
- "source": "wdd",
- "target": "impl_plan_buildingtypeconfig"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "docs/siege_levels.md",
- "source_location": null,
- "weight": 0.8,
- "source": "siege_levels",
- "target": "impl_plan_buildingtypeconfig"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "weight": 1.0,
- "source": "runbook",
- "target": "runbook_azure_container_apps"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "weight": 1.0,
- "source": "runbook",
- "target": "runbook_azure_keyvault"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "weight": 1.0,
- "source": "runbook",
- "target": "runbook_azure_postgresql"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "weight": 1.0,
- "source": "runbook",
- "target": "runbook_app_insights"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/RUNBOOK.md",
- "source_location": null,
- "weight": 1.0,
- "source": "runbook",
- "target": "runbook_log_analytics"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_keyvault_bicep",
- "target": "runbook_azure_keyvault"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_siege_api",
- "target": "runbook_azure_keyvault"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_siege_bot",
- "target": "runbook_azure_keyvault"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "runbook_azure_keyvault"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "concept_managed_identity",
- "target": "runbook_azure_keyvault"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "runbook_log_analytics"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.85,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 0.85,
- "source": "runbook_log_analytics",
- "target": "concept_app_insights"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_log_analytics_bicep",
- "target": "runbook_log_analytics"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_siege_model"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_building_model"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_member_model"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_position_model"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_post_model"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_postcondition_model"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_validation_rules"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_autofill_algorithm"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_attack_day_algorithm"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_discord_auth"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd",
- "target": "wdd_notification_flow"
- },
- {
- "relation": "shares_data_with",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd_siege_model",
- "target": "wdd_building_model"
- },
- {
- "relation": "shares_data_with",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd_building_model",
- "target": "wdd_position_model"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "docs/siege_levels.md",
- "source_location": null,
- "weight": 0.8,
- "source": "siege_levels",
- "target": "wdd_building_model"
- },
- {
- "relation": "shares_data_with",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd_position_model",
- "target": "wdd_member_model"
- },
- {
- "relation": "shares_data_with",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 0.9,
- "source": "wdd_member_model",
- "target": "wdd_postcondition_model"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 0.9,
- "source": "post_suggestions_plan",
- "target": "wdd_member_model"
- },
- {
- "relation": "shares_data_with",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/WEB_DESIGN_DOCUMENT.md",
- "source_location": null,
- "weight": 1.0,
- "source": "wdd_post_model",
- "target": "wdd_postcondition_model"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "weight": 0.8,
- "source": "post_suggestions_readme",
- "target": "wdd_post_model"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 0.9,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 0.9,
- "source": "post_suggestions_plan",
- "target": "wdd_post_model"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "EXTRACTED",
- "confidence_score": 0.85,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 0.8,
- "source": "post_suggestions_plan",
- "target": "wdd_autofill_algorithm"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 0.8,
- "source": "post_suggestions_service",
- "target": "wdd_autofill_algorithm"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "weight": 1.0,
- "source": "discord_auth_impl_plan",
- "target": "wdd_discord_auth"
- },
- {
- "relation": "imports",
- "context": "import",
- "confidence": "EXTRACTED",
- "source_file": "frontend/src/components/PostSuggestionsModal.tsx",
- "source_location": "L14",
- "weight": 1.0,
- "confidence_score": 1.0,
- "source": "post_suggestions_readme",
- "target": "post_suggestions_schema"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_readme",
- "target": "post_suggestions_difflist"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_readme",
- "target": "post_suggestions_assignmententry"
- },
- {
- "relation": "conceptually_related_to",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "post_suggestions_readme",
- "target": "post_suggestions_plan"
- },
- {
- "relation": "shares_data_with",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_difflist",
- "target": "post_suggestions_assignmententry"
- },
- {
- "relation": "semantically_similar_to",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "docs/design-refs/post-suggestions/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "post_suggestions_assignmententry",
- "target": "post_suggestions_schema"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/plans/public-launch-self-hostable-and-landing-page.md",
- "source_location": null,
- "weight": 1.0,
- "source": "public_launch_plan",
- "target": "mockup_landing"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/plans/public-launch-self-hostable-and-landing-page.md",
- "source_location": null,
- "weight": 1.0,
- "source": "public_launch_plan",
- "target": "mockup_login"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/plans/public-launch-self-hostable-and-landing-page.md",
- "source_location": null,
- "weight": 1.0,
- "source": "public_launch_plan",
- "target": "self_host_anywhere"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/plans/public-launch-self-hostable-and-landing-page.md",
- "source_location": null,
- "weight": 1.0,
- "source": "public_launch_plan",
- "target": "self_host_azure"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "readme",
- "target": "self_host_anywhere"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "readme",
- "target": "self_host_azure"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "weight": 1.0,
- "source": "discord_auth_impl_plan",
- "target": "discord_auth_get_current_user"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "weight": 1.0,
- "source": "discord_auth_impl_plan",
- "target": "discord_auth_botclient_get_member"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-04-08-discord-auth-implementation.md",
- "source_location": null,
- "weight": 1.0,
- "source": "discord_auth_impl_plan",
- "target": "discord_auth_jwt_cookie"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "weight": 1.0,
- "source": "component_versioning_plan",
- "target": "component_versioning_backend_version"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "weight": 1.0,
- "source": "component_versioning_plan",
- "target": "component_versioning_bot_version"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "weight": 1.0,
- "source": "component_versioning_plan",
- "target": "component_versioning_frontend_version"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "weight": 1.0,
- "source": "component_versioning_plan",
- "target": "component_versioning_ci_gate"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-08-component-versioning.md",
- "source_location": null,
- "weight": 1.0,
- "source": "component_versioning_plan",
- "target": "contributing"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_plan",
- "target": "post_suggestions_service"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_plan",
- "target": "post_suggestions_api"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_plan",
- "target": "post_suggestions_schema"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_plan",
- "target": "post_suggestions_greedy_algo"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_service",
- "target": "post_suggestions_greedy_algo"
- },
- {
- "relation": "calls",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_api",
- "target": "post_suggestions_service"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "docs/superpowers/plans/2026-05-09-post-suggestions.md",
- "source_location": null,
- "weight": 1.0,
- "source": "post_suggestions_api",
- "target": "post_suggestions_schema"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CONTRIBUTING.md",
- "source_location": null,
- "weight": 1.0,
- "source": "contributing",
- "target": "readme"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "readme",
- "target": "code_of_conduct"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CONTRIBUTING.md",
- "source_location": null,
- "weight": 1.0,
- "source": "contributing",
- "target": "code_of_conduct"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "CONTRIBUTING.md",
- "source_location": null,
- "weight": 1.0,
- "source": "contributing",
- "target": "support"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "infra_readme_main_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "infra_readme_registry_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "infra_readme_log_analytics_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "infra_readme_app_insights_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "infra_readme_postgres_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "infra_readme_keyvault_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "infra_readme_container_env_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "infra_readme_container_apps_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_infrastructure",
- "target": "self_host_azure_wiki"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "infra_readme_main_bicep",
- "target": "infra_readme_registry_bicep"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "infra_readme_main_bicep",
- "target": "infra_readme_log_analytics_bicep"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "infra_readme_main_bicep",
- "target": "infra_readme_app_insights_bicep"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "infra_readme_main_bicep",
- "target": "infra_readme_postgres_bicep"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "infra_readme_main_bicep",
- "target": "infra_readme_keyvault_bicep"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "infra_readme_main_bicep",
- "target": "infra_readme_container_env_bicep"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "infra_readme_main_bicep",
- "target": "infra_readme_container_apps_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_main_bicep",
- "target": "infra_readme_main_bicepparam"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_main_bicep",
- "target": "infra_readme_main_prod_bicepparam"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "infra_readme_main_bicep"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_registry_bicep",
- "target": "infra_readme_azure_container_registry"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 0.85,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.85,
- "source": "infra_readme_registry_bicep",
- "target": "infra_readme_weekly_purge_task"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_app_insights_bicep",
- "target": "concept_app_insights"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_postgres_bicep",
- "target": "infra_readme_postgres_flexible_server"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_container_env_bicep",
- "target": "infra_readme_container_apps_environment"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_container_apps_bicep",
- "target": "infra_readme_siege_api"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_container_apps_bicep",
- "target": "infra_readme_siege_bot"
- },
- {
- "relation": "implements",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_container_apps_bicep",
- "target": "infra_readme_siege_frontend"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "infra_readme_container_apps_bicep"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "infra_readme_azure_container_registry"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.95,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.95,
- "source": "infra_readme_siege_api",
- "target": "infra_readme_postgres_flexible_server"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.9,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 0.9,
- "source": "infra_readme_siege_bot",
- "target": "infra_readme_postgres_flexible_server"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.8,
- "source_file": "wiki/Self-Host-on-Any-VPS.md",
- "source_location": null,
- "weight": 0.8,
- "source": "self_host_vps_wiki",
- "target": "infra_readme_postgres_flexible_server"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "infra_readme_postgres_flexible_server"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_weekly_purge_task",
- "target": "infra_readme_siege_api"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "infra_readme_siege_api"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_weekly_purge_task",
- "target": "infra_readme_siege_bot"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "infra_readme_siege_bot"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "infra/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "infra_readme_weekly_purge_task",
- "target": "infra_readme_siege_frontend"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "infra_readme_siege_frontend"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "infra_readme_main_prod_bicepparam"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "scripts/excel-import/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "excel_import_readme_scripts",
- "target": "excel_import_readme_seed_db_py"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "scripts/excel-import/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "excel_import_readme_scripts",
- "target": "excel_import_readme_run_migrations_sh"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "scripts/excel-import/README.md",
- "source_location": null,
- "weight": 1.0,
- "source": "excel_import_readme_scripts",
- "target": "excel_import_readme_import_members_py"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "excel_import_readme_scripts",
- "target": "requirements_openpyxl"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "excel_import_readme_scripts",
- "target": "requirements_sqlalchemy"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "weight": 1.0,
- "source": "excel_import_readme_scripts",
- "target": "requirements_python_dotenv"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.85,
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "weight": 0.85,
- "source": "excel_import_readme_import_members_py",
- "target": "requirements_sqlalchemy"
- },
- {
- "relation": "references",
- "confidence": "INFERRED",
- "confidence_score": 0.75,
- "source_file": "scripts/excel-import/requirements.txt",
- "source_location": null,
- "weight": 0.75,
- "source": "excel_import_readme_import_members_py",
- "target": "requirements_openpyxl"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/FAQ.md",
- "source_location": null,
- "weight": 1.0,
- "source": "faq_wiki",
- "target": "self_host_vps_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/FAQ.md",
- "source_location": null,
- "weight": 1.0,
- "source": "faq_wiki",
- "target": "self_host_azure_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Getting-Started.md",
- "source_location": null,
- "weight": 1.0,
- "source": "getting_started_wiki",
- "target": "faq_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Home.md",
- "source_location": null,
- "weight": 1.0,
- "source": "home_wiki",
- "target": "faq_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/_Sidebar.md",
- "source_location": null,
- "weight": 1.0,
- "source": "sidebar_wiki",
- "target": "faq_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Getting-Started.md",
- "source_location": null,
- "weight": 1.0,
- "source": "getting_started_wiki",
- "target": "self_host_vps_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Getting-Started.md",
- "source_location": null,
- "weight": 1.0,
- "source": "getting_started_wiki",
- "target": "self_host_azure_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Home.md",
- "source_location": null,
- "weight": 1.0,
- "source": "home_wiki",
- "target": "getting_started_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/_Sidebar.md",
- "source_location": null,
- "weight": 1.0,
- "source": "sidebar_wiki",
- "target": "getting_started_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Home.md",
- "source_location": null,
- "weight": 1.0,
- "source": "home_wiki",
- "target": "self_host_vps_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Home.md",
- "source_location": null,
- "weight": 1.0,
- "source": "home_wiki",
- "target": "self_host_azure_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Home.md",
- "source_location": null,
- "weight": 1.0,
- "source": "home_wiki",
- "target": "concept_rsl_siege_manager"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/_Sidebar.md",
- "source_location": null,
- "weight": 1.0,
- "source": "sidebar_wiki",
- "target": "home_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "self_host_vps_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Any-VPS.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_vps_wiki",
- "target": "concept_discord_oauth2"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Any-VPS.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_vps_wiki",
- "target": "concept_caddy_reverse_proxy"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/_Sidebar.md",
- "source_location": null,
- "weight": 1.0,
- "source": "sidebar_wiki",
- "target": "self_host_vps_wiki"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "concept_github_actions"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "concept_deploy_workflow"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "concept_infra_deploy_workflow"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "concept_managed_identity"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "concept_app_insights"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "concept_bootstrap_images_script"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/Self-Host-on-Azure.md",
- "source_location": null,
- "weight": 1.0,
- "source": "self_host_azure_wiki",
- "target": "concept_discord_oauth2"
- },
- {
- "relation": "references",
- "confidence": "EXTRACTED",
- "confidence_score": 1.0,
- "source_file": "wiki/_Sidebar.md",
- "source_location": null,
- "weight": 1.0,
- "source": "sidebar_wiki",
- "target": "self_host_azure_wiki"
- }
- ],
- "hyperedges": [],
- "built_at_commit": "6085fd660692d0eade02696128e186f03f2c8f5e"
-}
\ No newline at end of file
diff --git a/evaluations/rsl-siege-manager/graphify-out/manifest.json b/evaluations/rsl-siege-manager/graphify-out/manifest.json
deleted file mode 100644
index 87e0f395..00000000
--- a/evaluations/rsl-siege-manager/graphify-out/manifest.json
+++ /dev/null
@@ -1,918 +0,0 @@
-{
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\env.py": {
- "mtime": 1778710280.615952,
- "hash": "731374a0c60b7a3d7ab4fe969af77cdc"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0001_initial_schema.py": {
- "mtime": 1778710280.6174564,
- "hash": "89da22558cc25f69a85fdb95c5226094"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0002_add_preview_columns.py": {
- "mtime": 1778710280.6174564,
- "hash": "7272088a42b67a8e4808eb3c9b7dd696"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0003_make_siege_date_nullable.py": {
- "mtime": 1778710280.6174564,
- "hash": "2e9c3427061e4be701fe13af654dff62"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0004_add_post_priority_config.py": {
- "mtime": 1778710280.6174564,
- "hash": "6dfb516e649bc98b4af75c6d72217b55"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0005_add_description_to_post_priority_config.py": {
- "mtime": 1778710280.6184616,
- "hash": "610068cb10304ae4dbcc7bc71a32e78c"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0006_power_level_and_drop_sort_value.py": {
- "mtime": 1778710280.6184616,
- "hash": "8182ba42f31e35ef28f5c4d9dabfde1c"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0007_fix_group_number_max.py": {
- "mtime": 1778710280.6184616,
- "hash": "4b47bdeebb46156e514a5b067df94235"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0008_add_matched_condition_id_to_position.py": {
- "mtime": 1778710280.6184616,
- "hash": "c954ca95fdadd4a7ef20ffa633d12fed"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0009_add_discord_id_to_member.py": {
- "mtime": 1778710280.6194618,
- "hash": "dcf300cf8ed80c1b8b3825bcca67e245"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0010_add_last_seen_changelog_at_to_member.py": {
- "mtime": 1778710280.6194618,
- "hash": "611bcc51cacb45fa38a397483251978e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\alembic\\versions\\0011_add_post_suggest_preview.py": {
- "mtime": 1778710280.6194618,
- "hash": "c2911c522068032d232ebdda418ae402"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\config.py": {
- "mtime": 1778710280.6260061,
- "hash": "af7166f36bc6603c51a31821b4169166"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\main.py": {
- "mtime": 1778710280.6275196,
- "hash": "ef3a111d022f595379cdfc5e4949daf0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\middleware.py": {
- "mtime": 1778710280.6275196,
- "hash": "4f8742627daa35dd41d30076e24f6215"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\rate_limit.py": {
- "mtime": 1778710280.631044,
- "hash": "d19e5a629177df85c43e3c14f4dc0d46"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\telemetry.py": {
- "mtime": 1778710280.639125,
- "hash": "0c58ed46b46a65c553da095108b27bfd"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\__init__.py": {
- "mtime": 1778710280.6194618,
- "hash": "d41d8cd98f00b204e9800998ecf8427e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\attack_day.py": {
- "mtime": 1778710280.6204622,
- "hash": "03d01cbf514354d406ed91fbc65b35a1"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\auth.py": {
- "mtime": 1778710280.6204622,
- "hash": "a5f33d846d98152318daec3a46d0d248"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\autofill.py": {
- "mtime": 1778710280.6204622,
- "hash": "a09d58b4a1d3c5af8f5c8a3ba6a7029e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\board.py": {
- "mtime": 1778710280.621461,
- "hash": "aaeb8712e563ba3dec103df4a3fc04ac"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\buildings.py": {
- "mtime": 1778710280.621461,
- "hash": "ffdd155eb162bceae062773746e4a736"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\changelog.py": {
- "mtime": 1778710280.621461,
- "hash": "46c813936a455f15a7b9c81d21193278"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\comparison.py": {
- "mtime": 1778710280.621461,
- "hash": "ddca1ab6be65dc3372ad48159b99f019"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\config.py": {
- "mtime": 1778710280.6224627,
- "hash": "4cfef35cbf17cda161b15128a218884a"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\discord_sync.py": {
- "mtime": 1778710280.6224627,
- "hash": "4af25fe7f78cdd7ed0a19b43a6c0d944"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\health.py": {
- "mtime": 1778710280.6224627,
- "hash": "7e3eb64485f05fe2e50e5681ca1f0932"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\images.py": {
- "mtime": 1778710280.6224627,
- "hash": "bdbf492718a5d11dd6b98c1d639931ac"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\lifecycle.py": {
- "mtime": 1778710280.6234608,
- "hash": "224fbb28b68c1d85ac358d96f4d8d307"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\members.py": {
- "mtime": 1778710280.6234608,
- "hash": "fade885c4c9b9ac20cccbc9b1022ea02"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\notifications.py": {
- "mtime": 1778710280.6234608,
- "hash": "ff2badd250e6e4abd60f76c17bf197a9"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\posts.py": {
- "mtime": 1778710280.6234608,
- "hash": "8f342e23f193f2ba528ee0f2ea924710"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\post_priority_config.py": {
- "mtime": 1778710280.6234608,
- "hash": "6cbb8addbb8fbbf729b2938cd64e4077"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\post_suggestions.py": {
- "mtime": 1778710280.6234608,
- "hash": "57ba4074cf0d1413e5604e6c20c458ba"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\reference.py": {
- "mtime": 1778710280.6249774,
- "hash": "e723050f84384dc9adcdb7796fd5a105"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\sieges.py": {
- "mtime": 1778710280.6249774,
- "hash": "e2f544c55968478ef4b80943fcda6ccc"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\siege_members.py": {
- "mtime": 1778710280.6249774,
- "hash": "f2eb1fd29b959b826008f6a627da9c0d"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\validation.py": {
- "mtime": 1778710280.6249774,
- "hash": "05d95e278dfb5f2da15598253b2ec32e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\version.py": {
- "mtime": 1778710280.6249774,
- "hash": "72b877fef624fbab48f6170475e4482b"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\api\\__init__.py": {
- "mtime": 1778710280.6204622,
- "hash": "d41d8cd98f00b204e9800998ecf8427e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\db\\base.py": {
- "mtime": 1778710280.6260061,
- "hash": "16deb2759f7de2cf86f328dce6b2d38b"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\db\\seeds.py": {
- "mtime": 1778710280.6260061,
- "hash": "c1238d95afe54852c9f8e4946bcd1184"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\db\\session.py": {
- "mtime": 1778710280.6260061,
- "hash": "d83e8d560833942da095e4e77ef715a0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\db\\__init__.py": {
- "mtime": 1778710280.6260061,
- "hash": "d41d8cd98f00b204e9800998ecf8427e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\dependencies\\auth.py": {
- "mtime": 1778710280.6260061,
- "hash": "1e13ad83f41440240858e379bc350e32"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\dependencies\\__init__.py": {
- "mtime": 1778710280.6260061,
- "hash": "d41d8cd98f00b204e9800998ecf8427e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\building.py": {
- "mtime": 1778710280.6275196,
- "hash": "264dd9c1b5b9af8261e39ef40bb56d0d"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\building_group.py": {
- "mtime": 1778710280.6285377,
- "hash": "9e4fe949454ac06e8919c54d17cd053f"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\building_type_config.py": {
- "mtime": 1778710280.6285377,
- "hash": "8d46f6dce4eefc61342e1a5084563f76"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\enums.py": {
- "mtime": 1778710280.6285377,
- "hash": "bbcd730b23b6ae966f00a7b209dfa1ba"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\member.py": {
- "mtime": 1778710280.6285377,
- "hash": "00c8c2af6e5087bcdf9b485d8f32afab"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\member_post_preference.py": {
- "mtime": 1778710280.6295295,
- "hash": "9b9b1f5de349977ad8897398d6698ef8"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\notification_batch.py": {
- "mtime": 1778710280.6295295,
- "hash": "3ad5726f0ca19a456eb02ac12dbb4f89"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\notification_batch_result.py": {
- "mtime": 1778710280.6295295,
- "hash": "c4fd788d9d88b1b994a35cf770b7d875"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\position.py": {
- "mtime": 1778710280.6300344,
- "hash": "d1bafc8772229db93351d7e179c15ea3"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\post.py": {
- "mtime": 1778710280.6300344,
- "hash": "6d62df6899ba21737f61bb917210dad0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\post_active_condition.py": {
- "mtime": 1778710280.6300344,
- "hash": "ab9b5ba959ad8c87635a5565cc7a6857"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\post_condition.py": {
- "mtime": 1778710280.6300344,
- "hash": "9fc05e2a8819db37bc7bd224f8c2db67"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\post_priority_config.py": {
- "mtime": 1778710280.6300344,
- "hash": "21b1c5860d8e42fef07463b5bf52ceab"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\siege.py": {
- "mtime": 1778710280.631044,
- "hash": "ac548c74c451dca2c84d9d039de46b6a"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\siege_member.py": {
- "mtime": 1778710280.631044,
- "hash": "24f74c67df2a8375175a818e2ef592be"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\models\\__init__.py": {
- "mtime": 1778710280.6275196,
- "hash": "002c14a2213747661b77b5a30b8d3110"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\attack_day.py": {
- "mtime": 1778710280.631044,
- "hash": "6636af44aa1f3f3079f864b3c8bb9cac"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\autofill.py": {
- "mtime": 1778710280.6320436,
- "hash": "261012c1a7cdae9c401576016a1e0535"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\board.py": {
- "mtime": 1778710280.6320436,
- "hash": "c69579e0609dceba1fafa087eda2405e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\building.py": {
- "mtime": 1778710280.6320436,
- "hash": "17a76e00a22acfa311063cf3bf0aceb1"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\changelog.py": {
- "mtime": 1778710280.6320436,
- "hash": "f86a9e09fe755643a15a7f7b06a4f7e7"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\common.py": {
- "mtime": 1778710280.6320436,
- "hash": "011d46dc2203c3ed97184cec370ac179"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\comparison.py": {
- "mtime": 1778710280.6320436,
- "hash": "48ffa2ab0f4f95040236b6611ed375d0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\member.py": {
- "mtime": 1778710280.6320436,
- "hash": "726dad9ff8c7a8bffd365ddcfd543645"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\post.py": {
- "mtime": 1778710280.6335557,
- "hash": "ff0149eb24572e4ba21fa191a73c762f"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\post_condition.py": {
- "mtime": 1778710280.6335557,
- "hash": "6fec8cfb3b2eea536953026b0116b4af"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\post_suggestions.py": {
- "mtime": 1778710280.6335557,
- "hash": "7db30a2f2f5a9232d8a783a85ee2df6a"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\siege.py": {
- "mtime": 1778710280.6335557,
- "hash": "1178a2cb1bc13ec3defa148e36991683"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\siege_member.py": {
- "mtime": 1778710280.6335557,
- "hash": "45b79b07f1d489b2daef9b719a0a0929"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\validation.py": {
- "mtime": 1778710280.6335557,
- "hash": "0221b358c7f777442cde715c227ac6ca"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\version.py": {
- "mtime": 1778710280.6335557,
- "hash": "b2fbcf0d416ddb9f1997acd6cb62bcf3"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\schemas\\__init__.py": {
- "mtime": 1778710280.631044,
- "hash": "d41d8cd98f00b204e9800998ecf8427e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\attack_day.py": {
- "mtime": 1778710280.6350994,
- "hash": "997ffc05e8c23b0a544979ae0ed8dc7a"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\autofill.py": {
- "mtime": 1778710280.6350994,
- "hash": "e9ce9ddf48273c0d9932f75ea8e8b0be"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\board.py": {
- "mtime": 1778710280.6350994,
- "hash": "7222c72b83f1091828c689f490ebcfe6"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\bot_client.py": {
- "mtime": 1778710280.6350994,
- "hash": "b699c8adf0b08521c02f3e6a4072c1ef"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\buildings.py": {
- "mtime": 1778710280.6361103,
- "hash": "22d3b48b747d63585084db712f7526ff"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\building_capacity.py": {
- "mtime": 1778710280.6361103,
- "hash": "5b463b5af305f54cd34e75e568756db9"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\comparison.py": {
- "mtime": 1778710280.6361103,
- "hash": "17d8b0f29ef13d8a469dcbe79e5e0b18"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\discord_sync.py": {
- "mtime": 1778710280.6361103,
- "hash": "0fdbe1441877c11241501e6f37e6874a"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\image_gen.py": {
- "mtime": 1778710280.6361103,
- "hash": "42d66ff5cc72422b6cffdce18e7b88e9"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\lifecycle.py": {
- "mtime": 1778710280.6376143,
- "hash": "c6850f4b0ee921550d23553aa50db9ac"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\members.py": {
- "mtime": 1778710280.6376143,
- "hash": "1586e16427694996d81ce4d54812c5f0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\notification_message.py": {
- "mtime": 1778710280.6376143,
- "hash": "514ad0558f51c114a96e8316cd4392bf"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\posts.py": {
- "mtime": 1778710280.63862,
- "hash": "56792826d430eaa6cdd86796ddb43c10"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\post_suggestions.py": {
- "mtime": 1778710280.63862,
- "hash": "4a62a36d881bf55a4f73b623b95738bf"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\reference.py": {
- "mtime": 1778710280.639125,
- "hash": "e86f9864edb3e0eaa1a5e00cd2b903a9"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\sieges.py": {
- "mtime": 1778710280.639125,
- "hash": "4f43c0760d92d03cc1062ba4b7610dba"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\siege_members.py": {
- "mtime": 1778710280.639125,
- "hash": "444d8aba42f567d23a8b1a5a12e51200"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\validation.py": {
- "mtime": 1778710280.639125,
- "hash": "bf8431f5d8b0c8dc793ed927f6de075f"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\app\\services\\__init__.py": {
- "mtime": 1778710280.6335557,
- "hash": "d41d8cd98f00b204e9800998ecf8427e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\scripts\\seed.py": {
- "mtime": 1778710280.640529,
- "hash": "08609621e397256df55a763eb98530c3"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\scripts\\seed_demo.py": {
- "mtime": 1778710280.6415303,
- "hash": "ef5c21e671c3184b5cbb2240979c0690"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\bot\\app\\config.py": {
- "mtime": 1778710280.65144,
- "hash": "b80130299a391da986cfd02386e5dea7"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\bot\\app\\discord_client.py": {
- "mtime": 1778710280.65144,
- "hash": "99db4ab6cf0ecc3d30602e2b8db66a70"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\bot\\app\\http_api.py": {
- "mtime": 1778710280.65144,
- "hash": "936ed9c6f1e4443f5035d0de3340329e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\bot\\app\\main.py": {
- "mtime": 1778710280.6519608,
- "hash": "e05678b35f14c576d1cd2ee7f0ee86b0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\bot\\app\\telemetry.py": {
- "mtime": 1778710280.6519608,
- "hash": "a42e02bf2fddd81cca77baa570cdc1ac"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\bot\\app\\__init__.py": {
- "mtime": 1778710280.650921,
- "hash": "d41d8cd98f00b204e9800998ecf8427e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\eslint.config.js": {
- "mtime": 1778710280.6638145,
- "hash": "820d67ddf4af94ab7a60b247ef568493"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\playwright.config.ts": {
- "mtime": 1778710280.6663249,
- "hash": "c0c6f46da1f83e4dad062bf96a1645ce"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\postcss.config.js": {
- "mtime": 1778710280.6663249,
- "hash": "33fad9c02cb0ec6d6030369ef6347d57"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\tailwind.config.ts": {
- "mtime": 1778710280.6950474,
- "hash": "ab2458852a94f3918fc4dc8eec8ee34a"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\vite.config.ts": {
- "mtime": 1778710280.6955535,
- "hash": "f0b8bf87fac76c40d6423f702e2a122d"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\vitest.config.ts": {
- "mtime": 1778710280.6955535,
- "hash": "e102be79d7bf6fd8b83320963d3d4d00"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\e2e\\board.spec.ts": {
- "mtime": 1778710280.6618135,
- "hash": "2e1ab122df18ca111301f5244c1b4903"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\e2e\\members.spec.ts": {
- "mtime": 1778710280.6618135,
- "hash": "012b10ee19afe7952752bdb34d947596"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\e2e\\siege-lifecycle.spec.ts": {
- "mtime": 1778710280.6638145,
- "hash": "d3c27ac7e90b3bb5f190694f8d692f6c"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\e2e\\smoke.spec.ts": {
- "mtime": 1778710280.6638145,
- "hash": "7ffc073a7b7ce29603e7b1dda85b101b"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\App.tsx": {
- "mtime": 1778710280.6731784,
- "hash": "dc94be0210c5307affde3c5e0e5412b7"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\main.tsx": {
- "mtime": 1778710280.6834679,
- "hash": "5310a6bf9e3bdf98dc615af3ceff1537"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\vite-env.d.ts": {
- "mtime": 1778710280.6950474,
- "hash": "0352474ba2918efe13895edbc3780d94"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\board.ts": {
- "mtime": 1778710280.6731784,
- "hash": "997fae78645cd70b5c2fc3476313e4c1"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\changelog.ts": {
- "mtime": 1778710280.6731784,
- "hash": "9baa9e3d2be3e4bb566ba86923829a17"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\client.ts": {
- "mtime": 1778710280.6746829,
- "hash": "10a76391bc7690246d448e867cf7af57"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\config.ts": {
- "mtime": 1778710280.6746829,
- "hash": "3715d4f6dd51e505949f4b0f7ec9b309"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\members.ts": {
- "mtime": 1778710280.6752062,
- "hash": "385a652bab3624eb1a556666b369c7be"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\notifications.ts": {
- "mtime": 1778710280.6752062,
- "hash": "b202ca64e4f5445d309fa8cede22ff0c"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\posts.ts": {
- "mtime": 1778710280.6752062,
- "hash": "42847a5a2b91ef16e25b1be64c9c5955"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\sieges.ts": {
- "mtime": 1778710280.6752062,
- "hash": "f1014577b76ed9125141f290e8fb7578"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\types.ts": {
- "mtime": 1778710280.6752062,
- "hash": "f83637e41fcfc597e14c140b81e74a63"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\api\\version.ts": {
- "mtime": 1778710280.6762116,
- "hash": "3c320e1ae650ccfaf0fcc58db6f0ad8c"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\Carousel.tsx": {
- "mtime": 1778710280.6772118,
- "hash": "9c1e5964f8b5e400f963606ee0cd4eb9"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ChangelogDropdown.tsx": {
- "mtime": 1778710280.6772118,
- "hash": "32af80944e867e66ec8cf25f6391e233"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\DiscordSyncModal.tsx": {
- "mtime": 1778710280.6772118,
- "hash": "52ea2cf5bf019ad4e9c376a447e87eaa"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\GroupByToggle.tsx": {
- "mtime": 1778710280.6772118,
- "hash": "78856592b8aaeb706087c4ef1e6c843b"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\Layout.tsx": {
- "mtime": 1778710280.6772118,
- "hash": "e813042f31449a0de61f906090164004"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\PostsTab.tsx": {
- "mtime": 1778710280.678212,
- "hash": "3f11fa6d290cff08dffcc9262a092b3a"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\PostSuggestionsModal.tsx": {
- "mtime": 1778710280.678212,
- "hash": "9c16b7f40b7352b2f423f7ce46a68b11"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\RequireAuth.tsx": {
- "mtime": 1778710280.678212,
- "hash": "cd2b2e1cd2d319fc3f3977f7589f291e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\SiegeLayout.tsx": {
- "mtime": 1778710280.679212,
- "hash": "5dc89034188b6823763f9c6852f5f03a"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\badge.tsx": {
- "mtime": 1778710280.679212,
- "hash": "639942830535b4f2bb8e21e8d3a674e4"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\button.tsx": {
- "mtime": 1778710280.679212,
- "hash": "99376e90207bb72645519879a6ad87aa"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\checkbox.tsx": {
- "mtime": 1778710280.679212,
- "hash": "596afb4c85e5b432c24e2606e9623bf8"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\dialog.tsx": {
- "mtime": 1778710280.679212,
- "hash": "b917e9be88d5dc6b1b6d2660df3be9a0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\dropdown-menu.tsx": {
- "mtime": 1778710280.6804683,
- "hash": "8f8f3621f203e9d7d566ed3827ddb95c"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\input.tsx": {
- "mtime": 1778710280.6804683,
- "hash": "4f418a1677a7fa837b7a5f16b05eabea"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\label.tsx": {
- "mtime": 1778710280.6804683,
- "hash": "ede7445a0bd4c9380bff1fb664d21763"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\select.tsx": {
- "mtime": 1778710280.6804683,
- "hash": "594f45397eb2ac6bd77df7b7e37d5644"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\table.tsx": {
- "mtime": 1778710280.681468,
- "hash": "0e1676ab2a771ea388b5fa63036cd502"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\components\\ui\\textarea.tsx": {
- "mtime": 1778710280.681468,
- "hash": "4118508b3f819ceaee3b0d5f16bbb649"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\context\\AuthContext.tsx": {
- "mtime": 1778710280.681468,
- "hash": "44ab8c9079dffb96a8f0826540377cb3"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\lib\\buildingColors.ts": {
- "mtime": 1778710280.6824672,
- "hash": "b348eff15681381b572787a373b909ce"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\lib\\groupPostConditions.ts": {
- "mtime": 1778710280.6824672,
- "hash": "788b0f8427b263370cdab41d8850cf41"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\lib\\post-priority.ts": {
- "mtime": 1778710280.6824672,
- "hash": "94e7a97549b23802f43bb3f6ac6c28cc"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\lib\\postConditionTypes.ts": {
- "mtime": 1778710280.6834679,
- "hash": "3b06353374f1df46ea8de1cfd4afd788"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\lib\\useGroupByPreference.ts": {
- "mtime": 1778710280.6834679,
- "hash": "bb6b5032d31d41e56bfa0c1462240482"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\lib\\utils.ts": {
- "mtime": 1778710280.6834679,
- "hash": "d9837f38cc05303254571985e3164050"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\BoardPage.tsx": {
- "mtime": 1778710280.6834679,
- "hash": "ca60bdc402bf7fc73d45bf4a9786efa2"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\ComparisonPage.tsx": {
- "mtime": 1778710280.6849875,
- "hash": "5f40cf11f1c285fcc713c66f6b70cc7e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\LandingPage.tsx": {
- "mtime": 1778710280.6849875,
- "hash": "0592d360b4d150e643f2ed7d853cec37"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\LoginPage.tsx": {
- "mtime": 1778710280.6849875,
- "hash": "a7f86666a5e860fa06370cd44d5b2009"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\MemberDetailPage.tsx": {
- "mtime": 1778710280.6849875,
- "hash": "91d2961273fc9f2065dd82b95a4dd2e6"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\MembersPage.tsx": {
- "mtime": 1778710280.6860092,
- "hash": "0e20169e021eddba33936ff03cb09ed6"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\PostPrioritiesPage.tsx": {
- "mtime": 1778710280.6860092,
- "hash": "44ba6c946c49e4491f401a05ada7b0ce"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\PostsPage.tsx": {
- "mtime": 1778710280.6860092,
- "hash": "6299292c6d99e49321c62ebd458b5a3f"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\SiegeCreatePage.tsx": {
- "mtime": 1778710280.6860092,
- "hash": "2889e8903df72e1ab56a1a1a13ef0519"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\SiegeMembersPage.tsx": {
- "mtime": 1778710280.687007,
- "hash": "864268a2bc137e9b39782eb85260adff"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\SiegeSettingsPage.tsx": {
- "mtime": 1778710280.687007,
- "hash": "f594078ade4735208a55056c7cf4dd5f"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\SiegesPage.tsx": {
- "mtime": 1778710280.687007,
- "hash": "f93156052c5124138148122147b74acb"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\pages\\SystemPage.tsx": {
- "mtime": 1778710280.687007,
- "hash": "9332c96da0f1502dbb14d6f1d7164aaa"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\src\\types\\changelog.d.ts": {
- "mtime": 1778710280.6940484,
- "hash": "29f6e6e4d1a48ca3686c20d21c03dc3c"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\bootstrap-db.ps1": {
- "mtime": 1778710280.7000616,
- "hash": "2963ef492dbaa1e8aed3c7d0b42cb2bf"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\bootstrap-excel-import.ps1": {
- "mtime": 1778710280.7010694,
- "hash": "833c292e832a70a4d642e969418cec01"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\bootstrap-images.ps1": {
- "mtime": 1778710280.701412,
- "hash": "770e3450dec21a6498dd9380f2070049"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\bootstrap-keyvault.ps1": {
- "mtime": 1778710280.701412,
- "hash": "571c851084af0db873bdc82226b59797"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\bootstrap-reimport.ps1": {
- "mtime": 1778710280.701412,
- "hash": "39d7a16633e94d6cefeb8aca40862cff"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\generate-origin-pfx.ps1": {
- "mtime": 1778710280.7034204,
- "hash": "b0900217644486cdf9adf852befa4fde"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\rebuild.ps1": {
- "mtime": 1778710280.7034204,
- "hash": "1b5123763516e1ee3dbc308f2638eb4f"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\excel-import\\import_excel.py": {
- "mtime": 1778710280.70243,
- "hash": "4151fee1079d2b495340976e008542dd"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\excel-import\\tests\\__init__.py": {
- "mtime": 1778710280.70243,
- "hash": "d41d8cd98f00b204e9800998ecf8427e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\experiments\\run-graphify-dry-run.ps1": {
- "mtime": 1778715097.451517,
- "hash": "8a66f56768d8c9b2b04c9d03452a8285"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\CHANGELOG.md": {
- "mtime": 1778710280.6144302,
- "hash": "0c5a48d5f48933acad20d931797847b0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\CLAUDE.md": {
- "mtime": 1778710280.614946,
- "hash": "efb936d1d3711ed3ca65b394f9d6b9b2"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\CODE_OF_CONDUCT.md": {
- "mtime": 1778710280.614946,
- "hash": "9b2d51a163a531cb2f62e72697b0ccc1"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\CONTRIBUTING.md": {
- "mtime": 1778710280.614946,
- "hash": "f1099f1c0582333df2fabef4dccad223"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docker-compose.prod.yml": {
- "mtime": 1778710280.6545522,
- "hash": "e55ffd8443f4dd9cf1acb386a7956bfb"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docker-compose.yml": {
- "mtime": 1778710280.6550682,
- "hash": "376b6eb4a3cfab39144103477cea42cf"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\README.md": {
- "mtime": 1778710280.615952,
- "hash": "8b4ba27465aa3d5dfd16ed64c6cbf45f"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\SUPPORT.md": {
- "mtime": 1778710280.615952,
- "hash": "64c8848cde6a11b59d25bcc9b621e546"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\requirements-dev.txt": {
- "mtime": 1778710280.640529,
- "hash": "61ce4838a8959c3c183db9bab83b737d"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\backend\\requirements.txt": {
- "mtime": 1778710280.640529,
- "hash": "b06051b552c2ea4732940c0dbc2b9db0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\bot\\requirements-dev.txt": {
- "mtime": 1778710280.6524813,
- "hash": "cf6fc69a9af8b95f5758cac0a94bb9e6"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\bot\\requirements.txt": {
- "mtime": 1778710280.6524813,
- "hash": "fbf3dc8cb3581931efa8dc526f44f7ef"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\IMPLEMENTATION_PLAN.md": {
- "mtime": 1778710280.6550682,
- "hash": "5e4f9f914ca2ce9d67d6705a5933b7ba"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\RUNBOOK.md": {
- "mtime": 1778710280.6555874,
- "hash": "50fc656921246e9004108c9b114a09e5"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\siege_levels.md": {
- "mtime": 1778710280.6587057,
- "hash": "07d9f028f42a8b94ce3365a6f72bafc4"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\WEB_DESIGN_DOCUMENT.md": {
- "mtime": 1778710280.656117,
- "hash": "83b709cc8ac4aa14b027eda0a0c562b8"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\design-refs\\post-suggestions\\README.md": {
- "mtime": 1778710280.6566384,
- "hash": "de10b175d0df9256e5daeca315f7b252"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\experiments\\graphify-dry-run.md": {
- "mtime": 1778711028.4433894,
- "hash": "496df0deb7da1e88640f0a8bcdcb7e3b"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\mockups\\mockup-landing.html": {
- "mtime": 1778710280.6571586,
- "hash": "0548e8204463ddf92a09c5ce6f97fe34"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\mockups\\mockup-login.html": {
- "mtime": 1778710280.6571586,
- "hash": "7e1759c2d6a5fa6a3c4e5ed58777c289"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\mockups\\README.md": {
- "mtime": 1778710280.6566384,
- "hash": "fe28480a5cc9c486f4dc5d6be6c5f368"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\plans\\public-launch-self-hostable-and-landing-page.md": {
- "mtime": 1778710280.657677,
- "hash": "afed648bab4d1590d9b833607a4f7502"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\self-host\\anywhere.md": {
- "mtime": 1778710280.6581955,
- "hash": "2efab5a64706d9964b8fa13de3037449"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\self-host\\azure.md": {
- "mtime": 1778710280.6587057,
- "hash": "c9ee5c5fc8721e7c0ca2bb54da0782c9"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\superpowers\\plans\\2026-04-08-discord-auth-implementation.md": {
- "mtime": 1778710280.6592517,
- "hash": "01ee8f99120035b952a2699b8a01eb6b"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\superpowers\\plans\\2026-05-08-component-versioning.md": {
- "mtime": 1778710280.6597755,
- "hash": "4eea9e7828ef6f2c88737f1f2feb1ee2"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\superpowers\\plans\\2026-05-09-post-suggestions.md": {
- "mtime": 1778710280.6597755,
- "hash": "3c89d2df41aebf5c5bc5add19cbd6281"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\superpowers\\plans\\discord-auth-plan.md": {
- "mtime": 1778710280.6597755,
- "hash": "bab1c00cda76f8ccaf26079a049ecf40"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\docs\\superpowers\\plans\\v1-release-plan.md": {
- "mtime": 1778710280.6607814,
- "hash": "f7ebc80091b9fc6eb0a5bf8661c0300e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\index.html": {
- "mtime": 1778710280.6638145,
- "hash": "dde055b245027a69a68049238ed823b3"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\graphify-out-with-tests\\graph.html": {
- "mtime": 1778718921.8433201,
- "hash": "b6226c2e30e0ccfbc56b15297319fa65"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\graphify-out-with-tests\\GRAPH_REPORT.md": {
- "mtime": 1778718921.7281322,
- "hash": "2c56ab55dda9d94cb5aab4e1a21a2cf1"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\infra\\README.md": {
- "mtime": 1778710280.696556,
- "hash": "3e76fbd727bcceeb02eb75d416c64aff"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\excel-import\\README.md": {
- "mtime": 1778710280.701412,
- "hash": "4a0e8a05091bd257fe417671858923a2"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\scripts\\excel-import\\requirements.txt": {
- "mtime": 1778710280.70243,
- "hash": "5e740ca3e2b112ec37fea64eae859ae0"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\wiki\\FAQ.md": {
- "mtime": 1778710280.7034204,
- "hash": "5e52ba23a226df064a14d75b1fd0d715"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\wiki\\Getting-Started.md": {
- "mtime": 1778710280.7034204,
- "hash": "f9dea57e10cfeada6f10255144249741"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\wiki\\Home.md": {
- "mtime": 1778710280.7034204,
- "hash": "32652bdc5aadfc11288cc5a4df5fe4a3"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\wiki\\Self-Host-on-Any-VPS.md": {
- "mtime": 1778710280.7034204,
- "hash": "178c7e9323276c57b1ce23786431f634"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\wiki\\Self-Host-on-Azure.md": {
- "mtime": 1778710280.7049341,
- "hash": "170d3ef1fbc3b5d52c18a8b6470951f5"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\wiki\\_Sidebar.md": {
- "mtime": 1778710280.7049341,
- "hash": "d92afc34965b5e470b581ce61e53b6ca"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\public\\favicon.svg": {
- "mtime": 1778710280.6663249,
- "hash": "1544a9686a82728b10dd2d54a4c539b4"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\public\\landing\\carousel-assignment-board.png": {
- "mtime": 1778710280.6673253,
- "hash": "138b785969e45c8eeec46b97c86dbfec"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\public\\landing\\carousel-discord-image.png": {
- "mtime": 1778710280.6673253,
- "hash": "490ecc84ff80e40ca12651e2626bc424"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\public\\landing\\carousel-member-management.png": {
- "mtime": 1778710280.6688316,
- "hash": "e87aa520a2aaecf3e9a1eea306182d0d"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\public\\landing\\carousel-post-assignments.png": {
- "mtime": 1778710280.6698372,
- "hash": "79bdc954a2b7803d178cc4b3f2d7fbd8"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\public\\landing\\carousel-siege-comparison.png": {
- "mtime": 1778710280.6711512,
- "hash": "913d494ae2e7465514441dec70f864c9"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\public\\landing\\carousel-validation-errors.png": {
- "mtime": 1778710280.6721778,
- "hash": "a6f43ec1ae7d66d5580b8b8d9d8c154e"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\public\\landing\\hero-board.png": {
- "mtime": 1778710280.6721778,
- "hash": "4640413678efc867d27bceed64b60ea9"
- },
- "I:\\games\\raid\\siege-web\\.worktrees\\experiment-graphify-dry-run-doc\\frontend\\public\\landing\\og-image.png": {
- "mtime": 1778710280.6731784,
- "hash": "4640413678efc867d27bceed64b60ea9"
- }
-}
\ No newline at end of file
diff --git a/evaluations/rsl-siege-manager/results.md b/evaluations/rsl-siege-manager/results.md
deleted file mode 100644
index 7b2d6ba8..00000000
--- a/evaluations/rsl-siege-manager/results.md
+++ /dev/null
@@ -1,194 +0,0 @@
-# Graphify Dry-Run โ Results & Decision
-
-**Date:** 2026-05-15
-**Tool:** [`safishamsi/graphify`](https://github.com/safishamsi/graphify) (PyPI `graphifyy`)
-**Tracking issue:** #397
-**Runbook:** [`runbook.md`](./runbook.md)
-**Source codebase:** [`glitchwerks/rsl-siege-manager`](https://github.com/glitchwerks/rsl-siege-manager) @ `6085fd66`
-**Decision:** Do not adopt.
-
----
-
-## TL;DR
-
-The dry-run was executed twice against rsl-siege-manager at commit `6085fd66` โ once excluding tests, once including them. Evaluated against the acid-test criteria from #397 (god nodes, surprising connections, and suggested questions should reflect things the user would nominate themselves), the tool failed on all three headline outputs. The without-tests run surfaces utilities and React page components alongside legitimate domain models; the with-tests run is dominated by test fixtures. Neither output justifies integrating a `PreToolUse` hook.
-
----
-
-## What was run
-
-Two runs at commit `6085fd66`:
-
-| Run | Scope | Nodes | Edges | Communities | Extraction quality |
-|-----|-------|-------|-------|-------------|-------------------|
-| A (codebase only) | `.graphifyignore` excluded `backend/tests/`, `frontend/src/**/__tests__/` | 833 | 1758 | 52 | 85% EXTRACTED / 15% INFERRED (avg confidence 0.59) |
-| B (codebase + tests) | No exclusions beyond vendored deps | 1886 | 3876 | 141 | 90% EXTRACTED / 10% INFERRED (avg confidence 0.62) |
-
-Run cost: $0 token cost in both cases. graphify uses tree-sitter for code extraction; LLM API calls fire only for non-code files. After `.graphifyignore`, there were effectively none.
-
----
-
-## Evaluation against the acid test
-
-Issue #397 set this bar:
-
-> "whether GRAPH_REPORT.md's named extractions (god nodes, surprising connections, suggested questions) reflect things the user would nominate themselves โ generic graph-theory output ('`index.ts` is highly connected') means it didn't work."
-
-Each finding below quotes the report directly. The raw artifacts are not committed (see "Artifact handling"), but the quotes are verifiable by re-running the dry-run against the same commit.
-
-### Finding 1 โ Test fixtures dominate "core abstractions" with tests included
-
-Run B's god-node list, verbatim (`graphify-out-with-tests/GRAPH_REPORT.md`, lines 141โ150):
-
-```
-1. `_make_siege()` - 124 edges
-2. `_make_member()` - 92 edges
-3. `_make_position()` - 85 edges
-4. `SiegeMember` - 78 edges
-5. `_make_building()` - 64 edges
-6. `_make_group()` - 60 edges
-7. `BoardPage()` - 55 edges
-8. `makeSiegeMember()` - 55 edges
-9. `PostsPage()` - 37 edges
-10. `_session_with_siege_and_configs()` - 35 edges
-```
-
-Six of the top ten โ positions 1, 2, 3, 5, 6, and 8 โ are test factory functions (`_make_siege`, `_make_member`, `_make_position`, `_make_building`, `_make_group`, `makeSiegeMember`). Position 10 is a test session fixture. These are the highest-connectivity nodes in the graph, and they are infrastructure for verifying the codebase, not the codebase itself.
-
-This is the cleanest failure signal in the dataset. The god-node list is explicitly labeled "your core abstractions." No developer would nominate `_make_siege()` as a core abstraction of a siege-assignment web app. The metric โ degree centrality โ is measuring test coverage, not architecture. The inversion is structural: the better your test coverage, the more your test factories saturate every part of the codebase, and the higher their degree count climbs. Codebases that most need architectural insight (low coverage, high complexity) will produce the cleanest god-node lists. Codebases that least need it (high coverage, known domain) will look like run B.
-
-### Finding 2 โ Codebase-only god nodes are surface-level
-
-Run A's god-node list, verbatim (`graphify-out/GRAPH_REPORT.md`, lines 55โ64):
-
-```
-1. `SiegeMember` - 55 edges
-2. `BoardPage()` - 53 edges
-3. `Post Suggestions Modal Handoff` - 40 edges
-4. `postsTab` - 29 edges
-5. `cn()` - 29 edges
-6. `PostsPage()` - 28 edges
-7. `BuildingType` - 27 edges
-8. `MembersPage()` - 27 edges
-9. `MemberRole` - 25 edges
-10. `Self-Host on Azure Wiki Page` - 23 edges
-```
-
-`SiegeMember`, `BuildingType`, and `MemberRole` at positions 1, 7, and 9 are legitimate domain models a developer would identify as important. That is three of ten.
-
-The remaining seven are less useful. `BoardPage()`, `PostsPage()`, and `MembersPage()` at positions 2, 6, and 8 are React top-level page components โ they import many things because they are entry points, not because they encode domain logic. `cn()` at position 5 is a one-line Tailwind class-merging utility (`src/lib/utils.ts`). It scores 29 edges because every component that merges conditional classes imports it. This is the canonical generic-graph-theory false positive the runbook warned about: `cn()` is "highly connected" in the same way `/dev/null` would be if files wrote to it โ the connection count reflects a structural pattern, not semantic importance. `Post Suggestions Modal Handoff` at position 3 is a planning document node extracted from `docs/design-refs/`, not a code entity at all. `Self-Host on Azure Wiki Page` at position 10 is a wiki article.
-
-The acid test asks whether these are things the user would nominate. They are not.
-
-### Finding 3 โ Surprising connections cross language boundaries spuriously
-
-Both runs surface INFERRED edges between Python backend types and TypeScript frontend types, presented under the heading "Surprising Connections (you probably didn't know these)." From run A (`graphify-out/GRAPH_REPORT.md`, lines 73โ74):
-
-```
-- `AuthError` --uses--> `Member` [INFERRED]
- backend/app/api/auth.py โ frontend/src/api/types.ts
-```
-
-And from run B (`graphify-out-with-tests/GRAPH_REPORT.md`, lines 158โ159):
-
-```
-- `TestStartupValidation` --uses--> `MemberRole` [INFERRED]
- backend/tests/test_auth.py โ frontend/src/api/types.ts
-```
-
-A Python class does not "use" a TypeScript type at runtime. These are name-based similarity matches โ `AuthError` and `Member` share a namespace with identically-named constructs in the frontend โ presented as semantic relationships. The confidence is low (avg INFERRED confidence 0.59 in run A, 0.62 in run B), but the framing ("you probably didn't know these") presents them as insights worth investigating. They are not.
-
-The one genuinely plausible INFERRED connection in run A is:
-
-```
-- `PostPriorityResponse` --uses--> `PostPriorityConfig` [INFERRED]
- backend/app/api/post_priority_config.py โ frontend/src/api/posts.ts
-```
-
-The backend schema and the frontend type do mirror each other by contract. But that relationship is a deliberate design decision well-known to anyone who wrote it โ not a discovery.
-
-### Finding 4 โ Community cohesion is universally weak
-
-The majority of rsl-siege-manager's 52 communities (run A) score between 0.05 and 0.17 on cohesion. Run A community distribution:
-
-- Communities 0, 2, 3, 6: cohesion 0.05โ0.06 (the four largest communities, 36โ112 nodes each)
-- Most remaining communities: cohesion 0.08โ0.17
-- Cohesion above 0.25: six communities, all small (3โ10 nodes)
-
-The report itself flags cohesion 0.05 as "weakly interconnected" in the Suggested Questions section: "Should `Community 0` be split into smaller, more focused modules? โ Cohesion score 0.05 - nodes in this community are weakly interconnected." Community 0 has 112 nodes.
-
-rsl-siege-manager has a clean three-service architecture (backend / frontend / bot) that any developer can describe in a sentence. The graph algorithm is not finding that structure โ it is producing communities with no legible semantic identity and flagging most of them as internally incoherent.
-
-### Finding 5 โ Noise inflated into knowledge gaps
-
-Run A reports 259 isolated nodes; run B reports 752. The leading examples in both are identical (`graphify-out/GRAPH_REPORT.md`, line 213; `graphify-out-with-tests/GRAPH_REPORT.md`, line 447):
-
-```
-`initial schema Revision ID: 0001 Revises: Create Date: 2026-03-16`,
-`add autofill and attack day preview columns to siege Revision ID: 0002 Revises:`,
-`make siege date nullable Revision ID: 0003 Revises: 0002 Create Date: 2026-03-1`,
-`Add post_priority_config table`, ...
-```
-
-These are Alembic migration revision docstrings parsed as standalone graph nodes. A migration docstring like `"make siege date nullable"` is a change-tracking annotation, not an architectural entity. There are 17 Alembic migration files in this repo. The isolated-node count growing from 259 to 752 when tests are added is almost entirely test docstrings and test function descriptions parsed the same way.
-
-The report labels these as "possible documentation gaps or missing edges" โ a framing that implies they are meaningful silences the developer should investigate. They are not gaps; they are noise.
-
-### Finding 6 โ Suggested questions are self-referential
-
-The Suggested Questions section in both runs consists primarily of two kinds of questions:
-
-1. **Betweenness centrality prompts:** "Why does `_make_siege()` connect Community 12 to Community 0, Community 1, Community 3...?" These ask the developer to explain why a test fixture has high betweenness. The answer is obvious: it creates the primary domain object; every test uses it.
-
-2. **Inferred-edge audits:** "Are the 17 inferred relationships involving `SiegeMember` (e.g. with `Base` and `TestSeedDemoMembers`) actually correct?" This is the tool asking the developer to validate the tool's own low-confidence connections. It is not the tool answering questions about the codebase; it is the tool outsourcing its uncertainty.
-
-Run A's most interesting question โ "What is the exact relationship between `bootstrap-images.ps1` and `scripts/bootstrap-images.ps1`?" โ is itself tagged AMBIGUOUS. The answer is: they are the same script referenced by two slightly different paths in different contexts. This is a file-naming question, not an architectural one.
-
----
-
-## What graphify is good at
-
-The throughput is fine: 833 nodes in a few minutes, $0 LLM cost on a code-heavy repo. The tree-sitter extraction is genuinely fast and does pick up real entities โ `SiegeMember`, `BuildingType`, and `MemberRole` in the god-node list are correct. The `graph.html` interactive visualization is well-built and easy to navigate. The EXTRACTED cross-service connections are occasionally real: `PostPriorityResponse --uses--> PostPriorityConfig` between `backend/app/api/post_priority_config.py` and `frontend/src/api/posts.ts` reflects an actual contract.
-
-The problem is not the underlying graph build. The problem is what the report does with it.
-
----
-
-## Why this is a rejection, not a tuning problem
-
-The headline outputs โ god nodes, surprising connections, suggested questions โ are what would justify wiring a `PreToolUse` hook that nudges the assistant to consult `GRAPH_REPORT.md` on every `grep`/`rg`/`find` invocation. If those outputs are mostly test fixtures (run B), surface-level import counts (run A), low-confidence cross-language inferences, and self-referential audit requests, then the hook would be steering the assistant's attention toward noise on every search. Tightening `.graphifyignore` further would fix run B's test-fixture problem, but it would not fix the architecture-of-the-metric problem visible in run A: degree centrality will always surface utilities and entry points over domain logic, regardless of what the ignore file excludes. The tool is measuring the right thing (connectivity) for the wrong purpose (identifying abstractions worth knowing about).
-
----
-
-## Cost incurred vs cost avoided
-
-**Cost incurred:**
-
-- ~10 minutes of CLI time across two runs.
-- $0 LLM cost (tree-sitter handled all code; no non-code files survived the ignore filter in any meaningful quantity).
-
-**Cost avoided by not adopting:**
-
-The two harness mutations from `graphify claude install` documented in #397:
-
-1. **Global CLAUDE.md append** โ a `# graphify` block appended to `~/.claude/CLAUDE.md` without a parseable fence marker, requiring manual cleanup on backout.
-2. **Per-project `PreToolUse` hook** โ fires on `Bash` commands containing `grep`/`rg`/`find` substrings. As noted in the runbook's Windows-specific gotchas section: the hook matcher is substring-based (`*grep*`), creating false-positive nudges on `pg_dump | grep`, `kubectl get pods | grep`, and similar. The hook also uses `python3` (not `python.exe`) which may silently no-op on Windows.
-
----
-
-## Artifact handling
-
-The raw outputs from both runs โ `graph.html`, `graph.json`, `GRAPH_REPORT.md`, `cache/`, `manifest.json` (approximately 12 MB total) โ are committed alongside this writeup under [`./graphify-out/`](./graphify-out/) and [`./graphify-out-with-tests/`](./graphify-out-with-tests/). The quoted findings above are auditable against the originals; the interactive `graph.html` files render the underlying force-directed graph if you want to explore.
-
-Reproducing the run against a different revision: see [`runbook.md`](./runbook.md) for the methodology and acid-test criteria.
-
----
-
-## Follow-up
-
-- Issue tracking is disabled on this fork, so the PR that lands this evaluation is the durable record of the decision.
-- No upstream contribution intended โ this is an evaluation of graphify as a consumer, not a change request to the tool. The fork exists as a stable point to reference if upstream evolves.
-
----
-
-๐ค _Generated by Claude Code on behalf of @cbeaulieu-gt_
diff --git a/evaluations/rsl-siege-manager/runbook.md b/evaluations/rsl-siege-manager/runbook.md
deleted file mode 100644
index 9993518e..00000000
--- a/evaluations/rsl-siege-manager/runbook.md
+++ /dev/null
@@ -1,160 +0,0 @@
-# Graphify Dry-Run for rsl-siege-manager
-
-> **Captured artifact.** This is the runbook as used during the [rsl-siege-manager evaluation](./results.md). Originally lived at `docs/experiments/graphify-dry-run.md` in that repo; relocated here so methodology and results stay together. References to siege-web-specific paths and cleanup commands are kept verbatim โ they reflect the original context.
-
-A scoped evaluation plan for [`safishamsi/graphify`](https://github.com/safishamsi/graphify) โ a tool that builds a queryable knowledge graph (code + docs + PDFs + images) from a project folder and exposes it to AI coding assistants.
-
-**Goal of this dry-run:** produce graphify's artifacts inside `rsl-siege-manager/graphify-out/` so I can judge whether the graph genuinely illuminates this codebase, **without** modifying my global `~/.claude/CLAUDE.md`, this repo's `.claude/settings.json`, or installing any harness hooks. Everything below is reversible by deleting one folder.
-
----
-
-## Why this approach
-
-Graphify's full install does two things:
-
-1. **Global**: drops a skill at `~/.claude/skills/graphify/SKILL.md` and **appends a `# graphify` block to `~/.claude/CLAUDE.md`** (string-match guarded โ not a fenced/marker block, so manual cleanup is needed if I back it out).
-2. **Per-project**: appends a `## graphify` section to this repo's `CLAUDE.md` and registers a `PreToolUse` hook in `.claude/settings.json` that nudges the assistant to consult `GRAPH_REPORT.md` whenever a `Bash` command contains `grep`/`rg`/`find`/etc.
-
-Both are reasonable but non-trivial mutations to harness configuration I tune carefully. The dry-run skips both, runs only the CLI, and lets me decide whether the artifact is worth the integration cost **after** seeing it.
-
----
-
-## Step 1 โ Install the CLI globally
-
-```powershell
-uv tool install graphifyy
-```
-
-> The PyPI package is `graphifyy` (double-y). The CLI command is `graphify`.
-
-Verify it's on PATH:
-
-```powershell
-graphify --version
-```
-
-If "not recognized," open a new PowerShell window โ `uv tool` updates PATH but the current session won't see it.
-
----
-
-## Step 2 โ Optional: gate the first build with `.graphifyignore`
-
-Cheap insurance. Each non-code file (markdown, PDF, image) becomes an LLM API call during the first build. A `.graphifyignore` (same syntax as `.gitignore`, including `!` negation) keeps vendored deps and build output out of scope.
-
-From the rsl-siege-manager root:
-
-```powershell
-@'
-node_modules/
-dist/
-build/
-.next/
-.venv/
-coverage/
-*.generated.*
-*.min.js
-'@ | Set-Content -Encoding UTF8 .graphifyignore
-```
-
-Adjust to rsl-siege-manager's actual layout. If unsure what to ignore, skip this step โ the build will still work, just bigger.
-
----
-
-## Step 3 โ Build the graph (the only step with $ cost)
-
-From the rsl-siege-manager root:
-
-```powershell
-graphify extract .
-```
-
-> **Estimated cost:** `$0.10โ$2.00` depending on the number of docs, PDFs, and images that survive the ignore filter. Watch terminal output; `Ctrl+C` is safe at any point.
-
-What happens under the hood:
-
-| Content type | Mechanism | Cost |
-| --- | --- | --- |
-| Code (29 languages, AST via tree-sitter) | Local | Free |
-| Docs, markdown, PDFs, images, videos | LLM API call per file | $$ |
-
-Watch terminal output. If it's processing far more files than expected, `Ctrl+C` and tighten `.graphifyignore` before re-running.
-
-Check the cost summary when it finishes:
-
-```powershell
-Get-Content .\graphify-out\cost.json
-```
-
----
-
-## Step 4 โ Inspect the three artifacts
-
-```powershell
-# The headline summary the assistant would read on every query
-code .\graphify-out\GRAPH_REPORT.md
-
-# The interactive graph (click nodes, filter, search)
-Start-Process .\graphify-out\graph.html
-
-# The raw graph data (used by the query commands below)
-Get-Content .\graphify-out\graph.json | Select-Object -First 50
-```
-
-**The honest evaluation lives in `GRAPH_REPORT.md`, not `graph.html`.** The viz is dopamine โ colorful and clickable on any codebase. The report's "god nodes," "surprising connections," and "suggested questions" sections are what tell me whether the LLM extraction actually *understood* rsl-siege-manager. If those sections name files/concepts I'd nominate myself, it worked. If they're generic ("`index.ts` is highly connected") or wrong, it didn't.
-
----
-
-## Step 5 โ Try query commands without any hook wiring
-
-These work directly off `graphify-out/graph.json` โ no skill registration, no settings.json mutation:
-
-```powershell
-graphify query "how does authentication flow through the app?"
-graphify query "what connects the database layer to the API routes?"
-graphify path "" ""
-graphify explain ""
-```
-
-**Acid test:** ask 3โ5 questions I already know the answer to. If it answers them correctly, the tool can help with the ones I don't.
-
----
-
-## Step 6 โ Decide
-
-| Outcome | Next move |
-| --- | --- |
-| Graph is genuinely illuminating | Run `graphify claude install` (accept the CLAUDE.md / `.claude/settings.json` mutations) |
-| Useful but not always-on | Keep the CLI, rebuild manually when useful, query from terminal โ no install |
-| Generic or wrong | Delete and move on |
-
----
-
-## Abort / full cleanup
-
-Nothing outside `rsl-siege-manager/graphify-out/` was touched. To roll back completely:
-
-```powershell
-Remove-Item -Recurse -Force .\graphify-out
-Remove-Item .\.graphifyignore # if added and unwanted
-Remove-Item .\docs\experiments\graphify-dry-run.md # this file
-uv tool uninstall graphifyy # remove the CLI itself
-```
-
-After this, the repo is byte-identical to before the dry-run, and `~/.claude/CLAUDE.md` was never modified.
-
----
-
-## Windows-specific gotchas to watch for
-
-- **`/graphify extract .` will fail in PowerShell.** PowerShell treats `/` as a path separator. Use `graphify extract .` (no leading slash). The slash form only works inside an AI coding assistant's chat prompt.
-- **The PreToolUse hook graphify installs uses `python3`.** Windows installers typically register `python.exe`, not `python3.exe`. If I do eventually run `graphify claude install`, the hook's `python3 -c "..."` may silently no-op (it's wrapped in `2>/dev/null || true`) โ meaning the nudge never fires and I won't know.
-- **The hook also relies on Bash `case` syntax.** Claude Code on Windows routes hook commands through Git Bash, so this works โ but it's an implicit dependency on Git Bash being present.
-- **Hook matcher is substring-based on `*grep*`.** That catches `pg_dump | grep`, `kubectl get pods | grep`, anything-grep. False-positive nudges are low cost but worth knowing.
-
----
-
-## Reference
-
-- Repo: https://github.com/safishamsi/graphify
-- PyPI: https://pypi.org/project/graphifyy/
-- Repo signals at evaluation time (2026-05-13): 47k stars, 5k forks, MIT, ~5 weeks old. Star count is anomalously high for age โ treat it as marketing signal, not quality signal. Evaluate the artifact, not the badges.
diff --git a/evaluations/rsl-siege-manager/graphify-out-with-tests/GRAPH_REPORT.md b/worked/rsl-siege-manager/GRAPH_REPORT.md
similarity index 100%
rename from evaluations/rsl-siege-manager/graphify-out-with-tests/GRAPH_REPORT.md
rename to worked/rsl-siege-manager/GRAPH_REPORT.md
diff --git a/worked/rsl-siege-manager/README.md b/worked/rsl-siege-manager/README.md
new file mode 100644
index 00000000..b3d5b243
--- /dev/null
+++ b/worked/rsl-siege-manager/README.md
@@ -0,0 +1,88 @@
+# Case Study: rsl-siege-manager (Python + TypeScript monorepo)
+
+A graphify dry-run against [`glitchwerks/rsl-siege-manager`](https://github.com/glitchwerks/rsl-siege-manager) โ a real-world web app with a Python (FastAPI) backend, a TypeScript (React + Vite) frontend, and a Python Discord bot, all in one repo. Captured here as a worked example of running graphify on a mixed-language full-stack codebase that includes a substantial test suite.
+
+**Corpus:** `glitchwerks/rsl-siege-manager` @ commit `6085fd66`
+**Date:** 2026-05-15
+**Findings:** [`review.md`](./review.md)
+**Raw artifacts:** [`GRAPH_REPORT.md`](./GRAPH_REPORT.md), [`graph.html`](./graph.html), [`graph.json`](./graph.json), [`manifest.json`](./manifest.json)
+
+## How to reproduce
+
+### 1. Clone the corpus
+
+```bash
+git clone https://github.com/glitchwerks/rsl-siege-manager
+cd rsl-siege-manager
+git checkout 6085fd66
+```
+
+### 2. Install the CLI
+
+```powershell
+uv tool install graphifyy
+```
+
+> The PyPI package is `graphifyy` (double-y). The CLI command is `graphify`.
+
+Verify it's on PATH:
+
+```powershell
+graphify --version
+```
+
+If "not recognized" on Windows, open a new shell โ `uv tool` updates PATH but the current session won't see it.
+
+### 3. Run extraction
+
+This case study ran extraction with no `.graphifyignore` (the run included tests). To reproduce a tests-included run:
+
+```powershell
+graphify extract .
+```
+
+Watch terminal output. graphify uses tree-sitter for code (free, fast) and LLM API calls only for non-code files (markdown, PDFs, images). On a code-heavy repo like rsl-siege-manager, the cost is dominated by docs.
+
+Check the cost summary when it finishes:
+
+```powershell
+Get-Content .\graphify-out\cost.json
+```
+
+### 4. Inspect
+
+```powershell
+# The headline summary an assistant would read
+code .\graphify-out\GRAPH_REPORT.md
+
+# The interactive graph
+Start-Process .\graphify-out\graph.html
+```
+
+## What's in this directory
+
+| File | What it is |
+|---|---|
+| `README.md` | This file โ corpus description + reproduction steps |
+| `review.md` | Findings against the headline outputs in `GRAPH_REPORT.md` |
+| `GRAPH_REPORT.md` | Raw graphify report (god nodes, communities, surprising connections, suggested questions) |
+| `graph.html` | Interactive force-directed visualization |
+| `graph.json` | Underlying graph data used by `graphify query` |
+| `manifest.json` | Per-file extraction record |
+
+The AST cache (`graphify-out/cache/`) is regenerable and not committed.
+
+## Why this corpus
+
+rsl-siege-manager is structurally interesting for graphify evaluation because:
+
+- **Three services in one repo** โ Python backend, TypeScript frontend, Python bot โ exercises cross-language inference.
+- **Substantial test suite** โ both Python (`backend/tests/`) and TypeScript (`frontend/src/**/__tests__/`) โ surfaces how degree-centrality behaves on covered codebases.
+- **17 Alembic migrations** with revision docstrings โ exercises how docstring-shaped content is or is not treated as graph entities.
+- **Clean three-tier architecture** โ a developer can describe the structure in one sentence, giving a clear ground truth to evaluate community detection against.
+
+## Reference
+
+- graphify repo: https://github.com/safishamsi/graphify
+- graphify PyPI: https://pypi.org/project/graphifyy/
+- rsl-siege-manager: https://github.com/glitchwerks/rsl-siege-manager
diff --git a/evaluations/rsl-siege-manager/graphify-out-with-tests/graph.html b/worked/rsl-siege-manager/graph.html
similarity index 100%
rename from evaluations/rsl-siege-manager/graphify-out-with-tests/graph.html
rename to worked/rsl-siege-manager/graph.html
diff --git a/evaluations/rsl-siege-manager/graphify-out-with-tests/graph.json b/worked/rsl-siege-manager/graph.json
similarity index 100%
rename from evaluations/rsl-siege-manager/graphify-out-with-tests/graph.json
rename to worked/rsl-siege-manager/graph.json
diff --git a/evaluations/rsl-siege-manager/graphify-out-with-tests/manifest.json b/worked/rsl-siege-manager/manifest.json
similarity index 100%
rename from evaluations/rsl-siege-manager/graphify-out-with-tests/manifest.json
rename to worked/rsl-siege-manager/manifest.json
diff --git a/worked/rsl-siege-manager/review.md b/worked/rsl-siege-manager/review.md
new file mode 100644
index 00000000..f0072b41
--- /dev/null
+++ b/worked/rsl-siege-manager/review.md
@@ -0,0 +1,154 @@
+# Review: rsl-siege-manager
+
+**Corpus:** [`glitchwerks/rsl-siege-manager`](https://github.com/glitchwerks/rsl-siege-manager) @ `6085fd66`
+**Date:** 2026-05-15
+**Run:** tests included, no `.graphifyignore`
+**Counts:** 1886 nodes ยท 3876 edges ยท 141 communities ยท 90% EXTRACTED / 10% INFERRED (avg INFERRED confidence 0.62)
+**Cost:** $0 (tree-sitter only; this corpus's natural file mix surfaced no non-code files in meaningful quantity)
+**Setup:** ~10 minutes of CLI time end-to-end
+
+This review evaluates the **headline outputs** in `GRAPH_REPORT.md` โ god nodes, surprising connections, communities, isolated nodes, suggested questions โ against a single criterion: do they reflect things a developer familiar with this codebase would themselves nominate as core, surprising, or worth investigating? Each finding quotes the report directly so it is verifiable against the committed artifacts.
+
+---
+
+## Finding 1 โ Test fixtures dominate "core abstractions" when tests are included
+
+Top god nodes, verbatim from `GRAPH_REPORT.md` (lines 141โ150):
+
+```
+1. `_make_siege()` - 124 edges
+2. `_make_member()` - 92 edges
+3. `_make_position()` - 85 edges
+4. `SiegeMember` - 78 edges
+5. `_make_building()` - 64 edges
+6. `_make_group()` - 60 edges
+7. `BoardPage()` - 55 edges
+8. `makeSiegeMember()` - 55 edges
+9. `PostsPage()` - 37 edges
+10. `_session_with_siege_and_configs()` - 35 edges
+```
+
+Six of the top ten โ positions 1, 2, 3, 5, 6, and 8 โ are test factory functions (`_make_siege`, `_make_member`, `_make_position`, `_make_building`, `_make_group`, `makeSiegeMember`). Position 10 is a test session fixture. These are the highest-connectivity nodes in the graph, and they are infrastructure for verifying the codebase, not the codebase itself.
+
+The god-node list is labeled "your core abstractions" in the report. On this corpus, no developer would nominate `_make_siege()` as a core abstraction of a siege-assignment web app. Degree centrality on a well-tested codebase will tend to surface test factories: by design, factories create the primary domain objects that every test then exercises, so they accumulate edges from every part of the suite. The pattern is structural โ the better the test coverage, the more saturated the factory's degree count.
+
+For users running graphify on a codebase with substantial test coverage, the documented mitigation (a `.graphifyignore` excluding `tests/`, `__tests__/`, etc.) is effective at removing this class of false-positive. See Finding 2 for what the same corpus surfaces without tests.
+
+## Finding 2 โ Without tests, god nodes mix domain types with entry points and utilities
+
+For comparison, an earlier run of the same corpus with `.graphifyignore` excluding `backend/tests/` and `frontend/src/**/__tests__/` produced this god-node list:
+
+```
+1. `SiegeMember` - 55 edges
+2. `BoardPage()` - 53 edges
+3. `Post Suggestions Modal Handoff` - 40 edges
+4. `postsTab` - 29 edges
+5. `cn()` - 29 edges
+6. `PostsPage()` - 28 edges
+7. `BuildingType` - 27 edges
+8. `MembersPage()` - 27 edges
+9. `MemberRole` - 25 edges
+10. `Self-Host on Azure Wiki Page` - 23 edges
+```
+
+(That run's artifacts are not committed here โ only the tests-included artifacts are kept โ but the list is reproducible by re-running with the same `.graphifyignore`.)
+
+Three of ten โ `SiegeMember`, `BuildingType`, `MemberRole` (positions 1, 7, 9) โ are legitimate domain models a developer would identify.
+
+The other seven illustrate a second pattern worth knowing about:
+
+- **React top-level page components** (`BoardPage`, `PostsPage`, `MembersPage` at 2, 6, 8) โ these import many things because they are entry points, not because they encode domain logic.
+- **Class-merge utilities** โ `cn()` (position 5) is a one-line Tailwind class-merging utility (`src/lib/utils.ts`). It scores 29 edges because every component that conditionally combines classes imports it. The connection count reflects a structural pattern (the React+Tailwind idiom), not semantic importance.
+- **Document/wiki entities** โ `Post Suggestions Modal Handoff` (position 3) is a planning document under `docs/design-refs/`; `Self-Host on Azure Wiki Page` (position 10) is a wiki article. Both are extracted as nodes alongside code entities and sort by edge count the same way.
+
+This is informative for users tuning expectations: degree centrality on a React frontend with a shared `cn()` utility will surface that utility regardless of how aggressive the ignore filter is, because the connections are real even though the semantic importance is low.
+
+## Finding 3 โ Surprising connections cross language boundaries
+
+Both runs surface INFERRED edges between Python backend types and TypeScript frontend types under "Surprising Connections (you probably didn't know these)." Examples:
+
+```
+- `AuthError` --uses--> `Member` [INFERRED]
+ backend/app/api/auth.py โ frontend/src/api/types.ts
+```
+
+```
+- `TestStartupValidation` --uses--> `MemberRole` [INFERRED]
+ backend/tests/test_auth.py โ frontend/src/api/types.ts
+```
+
+A Python class does not "use" a TypeScript type at runtime. These are name-based similarity matches between identically-named constructs in two languages, surfaced as semantic relationships. The confidence values are flagged as INFERRED (avg 0.62 on this run), but the section header presents them as insights worth investigating.
+
+The one cross-language INFERRED edge in this run that maps to a real design contract is:
+
+```
+- `PostPriorityResponse` --uses--> `PostPriorityConfig` [INFERRED]
+ backend/app/api/post_priority_config.py โ frontend/src/api/posts.ts
+```
+
+The backend Pydantic schema and the frontend TypeScript type do mirror each other intentionally โ this is the API contract. That relationship is real, but a developer who wrote either side already knows about it; INFERRED detection here recovers a fact rather than discovering one.
+
+For corpora that mix Python and TypeScript with overlapping type names (common in monorepos with shared domain vocabulary), users should expect a high false-positive rate in this section and read it with the INFERRED confidence in mind.
+
+## Finding 4 โ Community cohesion is uniformly low on this corpus
+
+Most of rsl-siege-manager's 141 communities (tests-included run) score between 0.05 and 0.17 on cohesion. The report itself flags 0.05 as "weakly interconnected" in the Suggested Questions section:
+
+> "Should `Community 0` be split into smaller, more focused modules? โ Cohesion score 0.05 - nodes in this community are weakly interconnected."
+
+Community 0 has 112 nodes on this corpus.
+
+rsl-siege-manager has a clean three-service architecture (backend / frontend / bot). The community-detection pass does not recover that structure as three large cohesive communities; it produces many small communities with low internal cohesion. Possible interpretations: the underlying graph has many INFERRED cross-language edges diluting the cluster signal, the chosen algorithm parameters favor over-segmentation on graphs of this density, or this corpus genuinely lacks tight intra-cluster topology that community detection can exploit.
+
+A neutral framing for users: community cohesion is informative on this corpus mainly as a signal that the graph topology does not match the obvious three-tier mental model โ which itself may be useful (it surfaces that the cross-language edges are doing the work). The "split this community" prompts the report generates from low cohesion scores are less actionable as direct architectural advice on this corpus.
+
+## Finding 5 โ Alembic migration docstrings surface as isolated nodes
+
+The tests-included run reports 752 isolated nodes; the without-tests run reports 259. The leading examples are identical in both:
+
+```
+`initial schema Revision ID: 0001 Revises: Create Date: 2026-03-16`,
+`add autofill and attack day preview columns to siege Revision ID: 0002 Revises:`,
+`make siege date nullable Revision ID: 0003 Revises: 0002 Create Date: 2026-03-1`,
+`Add post_priority_config table`, ...
+```
+
+These are Alembic migration revision docstrings parsed as standalone graph nodes. There are 17 migration files in this corpus. The isolated-node count growing from 259 to 752 when tests are added is dominated by test docstrings parsed the same way.
+
+The report labels these as "possible documentation gaps or missing edges." For users with corpora that contain Alembic migrations, pytest docstrings, or other docstring-heavy auto-generated files, this label can be misleading โ these are change annotations or test descriptions, not architectural entities with missing connections.
+
+A `.graphifyignore` rule for `**/alembic/versions/*.py` reduces the isolated-node count materially on this corpus; users with similar setups may want a default recipe.
+
+## Finding 6 โ Suggested questions skew toward graph-property prompts
+
+The Suggested Questions section consists primarily of two kinds of questions:
+
+1. **Betweenness centrality prompts:** "Why does `_make_siege()` connect Community 12 to Community 0, Community 1, Community 3...?" The answer on this corpus is direct: `_make_siege()` creates the primary domain object, every test that touches a siege uses it, and the test suite spans the codebase โ so the fixture is a betweenness bridge by construction.
+
+2. **Inferred-edge audits:** "Are the 17 inferred relationships involving `SiegeMember` (e.g. with `Base` and `TestSeedDemoMembers`) actually correct?" These ask the developer to validate the tool's own low-confidence connections.
+
+A genuinely concrete question in this section โ "What is the exact relationship between `bootstrap-images.ps1` and `scripts/bootstrap-images.ps1`?" โ is tagged AMBIGUOUS by the report. The answer is concrete (they are the same script referenced by two slightly different paths), but it is a file-naming observation, not an architectural insight.
+
+For users hoping the Suggested Questions section will surface domain-level prompts ("how does authentication flow?", "what enforces the siege-day invariant?"), this corpus's section is dominated by graph-property meta-questions.
+
+---
+
+## What worked well on this corpus
+
+- **Throughput:** 1886 nodes extracted in a few minutes at $0 cost. tree-sitter handles all 29 supported languages locally; LLM calls fire only for non-code files.
+- **Genuine domain extractions are present:** `SiegeMember`, `BuildingType`, and `MemberRole` in the god-node list are correct. `PostPriorityResponse --uses--> PostPriorityConfig` is a real API contract that INFERRED detection picked up across the Python/TypeScript boundary.
+- **`graph.html` visualization:** clear, navigable, easy to filter and search. Useful for browsing communities even when the labelled cohesion scores are low.
+
+The underlying graph build is solid. The findings above are about how the report layer summarizes that graph into headline metrics โ specifically, what those metrics surface on a well-tested cross-language full-stack web app.
+
+---
+
+## Suggested follow-ups
+
+Patterns from this review that may be worth tracking upstream:
+
+1. **Test-fixture suppression** โ degree centrality on covered codebases consistently surfaces test factories; documenting the ignore-pattern recipe in a "first run on a codebase with tests" section would shorten the iteration loop for users.
+2. **Cross-language INFERRED edges in monorepos** โ name-based matches between Python and TypeScript types in mixed-language repos may warrant a higher confidence threshold or a "potential contract" label rather than the current "surprising connection" framing.
+3. **Docstring-heavy files (Alembic, pytest)** โ defaulting to skip migration `versions/` directories, or detecting and grouping docstring nodes that share a structural pattern, would reduce the isolated-node noise materially.
+
+These are observations, not change requests โ users running graphify on similar corpora may find the same patterns useful to know about.