gabriel / musehub public
feat BREAKING intel task/intel-codemap #1 / 1
AI Agent gabriel · 140 days ago · May 3, 2026 · Diff

feat(intel): Code Map page — migration 0015, CodemapProvider, route, template, SCSS, dashboard card (issue #21, 32/32 tests GREEN)

sha256:cc8833210e7c1226d16d0933af1479fc0978d841786a7fbbf679ae520fdb95d5 sha
+76 ~3 symbols
sha256:b8d124cbe191ccee4241a806a5d90b22ab0f430da8d19a355dc61f08eeacf9ef snapshot
+76
symbols added
~3
symbols modified
0
dead code introduced
Semantic Changes 79 symbols
+ branch_labels variable variable branch_labels L18–18
+ depends_on variable variable depends_on L19–19
+ down_revision variable variable down_revision L17–17
+ downgrade function function downgrade L46–49
+ op import import op L13–13
+ sa import import sa L14–14
+ revision variable variable revision L16–16
+ upgrade function function upgrade L22–43
~ tests/test_intel_codemap.py .py 59 symbols added
+ TestDBModel class class TestDBModel L217–264
+ test_T01_module_model_has_all_required_columns method method test_T01_module_model_has_all_required_columns L219–226
+ test_T02_meta_model_has_all_required_columns method method test_T02_meta_model_has_all_required_columns L228–235
+ test_T03_cycles_json_is_nullable method method test_T03_cycles_json_is_nullable L237–240
+ test_T04_composite_pk_modules method method test_T04_composite_pk_modules L242–245
+ test_T05_cascade_delete_removes_module_rows method async_method test_T05_cascade_delete_removes_module_rows L248–264
+ TestDataIntegrity class class TestDataIntegrity L579–638
+ test_T24_upsert_is_idempotent method async_method test_T24_upsert_is_idempotent L582–599
+ test_T25_meta_upsert_overwrites method async_method test_T25_meta_upsert_overwrites L602–619
+ test_T26_cross_repo_isolation method async_method test_T26_cross_repo_isolation L622–638
+ TestHTML class class TestHTML L535–572
+ test_T20_stat_chips_present method async_method test_T20_stat_chips_present L538–545
+ test_T21_fan_in_bar_present method async_method test_T21_fan_in_bar_present L548–554
+ test_T22_cycle_ok_shown_when_no_cycles method async_method test_T22_cycle_ok_shown_when_no_cycles L557–563
+ test_T23_dashboard_back_link_present method async_method test_T23_dashboard_back_link_present L566–572
+ TestPerformance class class TestPerformance L645–696
+ test_T27_provider_completes_under_threshold method async_method test_T27_provider_completes_under_threshold L648–677
+ test_T28_route_responds_under_500ms method async_method test_T28_route_responds_under_500ms L680–688
+ test_T29_module_table_has_repo_index method method test_T29_module_table_has_repo_index L690–696
+ TestProvider class class TestProvider L271–434
+ test_T06_provider_returns_no_subprocess method async_method test_T06_provider_returns_no_subprocess L274–282
+ test_T07_provider_computes_fan_out method async_method test_T07_provider_computes_fan_out L285–319
+ test_T08_provider_computes_fan_in method async_method test_T08_provider_computes_fan_in L322–363
+ test_T09_provider_detects_no_cycles_for_dag method async_method test_T09_provider_detects_no_cycles_for_dag L366–391
+ test_T10_provider_detects_mutual_import_cycle method async_method test_T10_provider_detects_mutual_import_cycle L394–420
+ test_T11_provider_returns_empty_for_missing_manifest method async_method test_T11_provider_returns_empty_for_missing_manifest L423–434
+ TestRoute class class TestRoute L441–528
+ test_T12_codemap_page_returns_200 method async_method test_T12_codemap_page_returns_200 L444–449
+ test_T13_codemap_page_empty_state method async_method test_T13_codemap_page_empty_state L452–460
+ test_T14_codemap_page_404_for_missing_repo method async_method test_T14_codemap_page_404_for_missing_repo L463–468
+ test_T15_sort_by_fan_in method async_method test_T15_sort_by_fan_in L471–481
+ test_T16_sort_by_fan_out method async_method test_T16_sort_by_fan_out L484–494
+ test_T17_unknown_sort_coerces_to_symbols method async_method test_T17_unknown_sort_coerces_to_symbols L497–502
+ test_T18_top_filter_limits_rows method async_method test_T18_top_filter_limits_rows L505–519
+ test_T19_stat_chips_use_meta_row method async_method test_T19_stat_chips_use_meta_row L522–528
+ TestSecurity class class TestSecurity L703–735
+ test_T30_xss_file_path_is_escaped method async_method test_T30_xss_file_path_is_escaped L706–719
+ test_T31_sql_injection_in_sort_param_is_safe method async_method test_T31_sql_injection_in_sort_param_is_safe L722–727
+ test_T32_invalid_top_param_does_not_500 method async_method test_T32_invalid_top_param_does_not_500 L730–735
+ _REF variable variable _REF L32–32
+ _fake_import_tree function function _fake_import_tree L148–182
+ _insert_meta_row function async_function _insert_meta_row L74–104
+ _insert_module_row function async_function _insert_module_row L39–71
+ _seed_snapshot function async_function _seed_snapshot L107–145
+ cm_repo function async_function cm_repo L186–210
+ AsyncClient import import AsyncClient L25–25
+ AsyncMock import import AsyncMock L20–20
+ AsyncSession import import AsyncSession L27–27
+ annotations import import annotations L16–16
+ create_repo import import create_repo L30–30
+ datetime import import datetime L19–19
+ dbm import import dbm L29–29
+ patch import import patch L20–20
+ pg_insert import import pg_insert L26–26
+ pytest import import pytest L22–22
+ pytest_asyncio import import pytest_asyncio L23–23
+ sa import import sa L24–24
+ time import import time L18–18
+ timezone import import timezone L19–19
~ musehub/api/routes/musehub/ui_intel.py .py 3 symbols added, 1 symbol modified
+ _VALID_CM_SORTS variable variable _VALID_CM_SORTS L2506–2506
+ _VALID_CM_TOPS variable variable _VALID_CM_TOPS L2505–2505
+ intel_codemap_page function async_function intel_codemap_page L2510–2621
~ musehub/db/musehub_models.py .py 2 symbols added
+ MusehubIntelCodemapMeta class class MusehubIntelCodemapMeta L1836–1865
+ MusehubIntelCodemapModule class class MusehubIntelCodemapModule L1792–1833
~ musehub/services/musehub_intel_providers.py .py 4 symbols added, 2 symbols modified
+ CodemapProvider class class CodemapProvider L1985–2293
+ _resolve_import method method _resolve_import L2200–2233
+ _tarjan_cycles method method _tarjan_cycles L2240–2293
+ compute method async_method compute L2038–2193
← Older Oldest on task/intel-codemap
All commits
Newer → Latest on task/intel-codemap

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:cc8833210e7c1226d16d0933af1479fc0978d841786a7fbbf679ae520fdb95d5 --body "your comment"