https://github.com/Starsky618/-velo
· scanned 2026-06-16 00:21 UTC (2 months, 2 weeks ago)
129 raw signals (8 security + 121 graph)
Last scanned 2 months, 2 weeks ago · v1 · 122 actionable findings from 2 signal sources. 7 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 3463 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
_resolve_queues |
software | healthy | worker.py:39 |
main |
software | healthy | scheduler.py:41 |
_utc_for_bj_day |
software | healthy | tests/test_training_load_api.py:13 |
_insert_activity_for_coverage |
software | healthy | tests/test_training_load_api.py:26 |
_insert_daily_load |
software | healthy | tests/test_training_load_api.py:48 |
_seed_daily_loads |
software | healthy | tests/test_training_load_api.py:76 |
test_training_load_30d_returns_30_points |
software | healthy | tests/test_training_load_api.py:94 |
test_training_load_supports_90d_and_1y_ranges |
software | healthy | tests/test_training_load_api.py:117 |
test_training_load_no_records_returns_empty_points |
software | healthy | tests/test_training_load_api.py:130 |
test_training_load_invalid_range_returns_422 |
software | healthy | tests/test_training_load_api.py:150 |
test_training_load_requires_login |
software | healthy | tests/test_training_load_api.py:157 |
test_training_load_does_not_leak_other_user_data |
software | healthy | tests/test_training_load_api.py:164 |
test_training_load_rounds_floats_to_one_decimal |
software | healthy | tests/test_training_load_api.py:191 |
test_training_load_13_days_history_is_incomplete |
software | healthy | tests/test_training_load_api.py:215 |
test_training_load_fills_missing_day_with_natural_decay |
software | healthy | tests/test_training_load_api.py:226 |
test_training_load_insufficient_power_coverage_hides_curve |
software | healthy | tests/test_training_load_api.py:247 |
test_training_load_sufficient_power_coverage_shows_curve |
software | healthy | tests/test_training_load_api.py:261 |
test_training_load_1y_coverage_uses_365d_range_not_recent_4… |
software | healthy | tests/test_training_load_api.py:275 |
_make_segment |
software | healthy | tests/test_curation_pool_script.py:12 |
_add_efforts |
software | healthy | tests/test_curation_pool_script.py:40 |
test_calculate_pool_score_weights_attempts_kom_and_balance |
software | healthy | tests/test_curation_pool_script.py:60 |
test_generate_handles_empty_segments_table |
software | healthy | tests/test_curation_pool_script.py:65 |
test_generate_creates_top_n_and_balances_difficulty |
software | healthy | tests/test_curation_pool_script.py:73 |
test_generate_popularity_weighted_within_same_difficulty |
software | healthy | tests/test_curation_pool_script.py:105 |
test_generate_idempotent_and_preserves_manual_selection_fie… |
software | healthy | tests/test_curation_pool_script.py:120 |
test_generate_prunes_unselected_stale_rows_but_keeps_select… |
software | healthy | tests/test_curation_pool_script.py:145 |
_read |
software | healthy | tests/test_training_calendar_static.py:12 |
test_training_calendar_still_registered_after_distribution_… |
software | healthy | tests/test_training_calendar_static.py:16 |
test_profile_entry_is_always_visible_and_navigates_to_train… |
software | healthy | tests/test_training_calendar_static.py:28 |
test_training_calendar_files_and_api_contract_exist |
software | healthy | tests/test_training_calendar_static.py:42 |
test_training_calendar_range_tab_drives_api_range_param |
software | healthy | tests/test_training_calendar_static.py:54 |
test_training_calendar_explains_metrics_in_plain_language |
software | healthy | tests/test_training_calendar_static.py:66 |
test_training_calendar_canvas_and_empty_state_are_safe |
software | healthy | tests/test_training_calendar_static.py:79 |
test_training_calendar_error_state_does_not_fall_into_empty… |
software | healthy | tests/test_training_calendar_static.py:94 |
test_training_calendar_status_copy_covers_four_bands |
software | healthy | tests/test_training_calendar_static.py:106 |
test_redis_conn_is_module_singleton |
software | healthy | tests/test_queue.py:11 |
test_queues_share_redis_connection |
software | healthy | tests/test_queue.py:20 |
test_queue_names_stable |
software | healthy | tests/test_queue.py:32 |
test_redis_conn_decode_responses_is_false |
software | healthy | tests/test_queue.py:44 |
__init__ |
software | healthy | tests/test_backfill_phase5.py:78 |
__eq__ |
software | healthy | tests/test_backfill_phase5.py:12 |
__ge__ |
software | healthy | tests/test_backfill_phase5.py:15 |
is_ |
software | healthy | tests/test_backfill_phase5.py:18 |
isnot |
software | healthy | tests/test_backfill_phase5.py:21 |
filter |
software | healthy | tests/test_backfill_phase5.py:52 |
order_by |
software | healthy | tests/test_backfill_phase5.py:56 |
all |
software | healthy | tests/test_backfill_phase5.py:59 |
__enter__ |
software | healthy | tests/test_backfill_phase5.py:70 |
__exit__ |
software | healthy | tests/test_backfill_phase5.py:73 |
query |
software | healthy | tests/test_backfill_phase5.py:87 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
docker-compose.dev.yml |
software | healthy | docker-compose.dev.yml |
worker.py |
software | healthy | worker.py |
CLAUDE.md |
software | healthy | CLAUDE.md |
scheduler.py |
software | healthy | scheduler.py |
Dockerfile |
software | healthy | Dockerfile |
.env.example |
software | healthy | .env.example |
requirements.txt |
software | healthy | requirements.txt |
AGENTS.md |
software | healthy | AGENTS.md |
docker-compose.yml |
software | healthy | docker-compose.yml |
test_training_load_api.py |
software | healthy | tests/test_training_load_api.py |
test_curation_pool_script.py |
software | healthy | tests/test_curation_pool_script.py |
test_training_calendar_static.py |
software | healthy | tests/test_training_calendar_static.py |
test_queue.py |
software | healthy | tests/test_queue.py |
test_backfill_phase5.py |
software | healthy | tests/test_backfill_phase5.py |
test_backfill_power_zone_zero_seconds.py |
software | healthy | tests/test_backfill_power_zone_zero_seconds.py |
test_meetup_service.py |
software | healthy | tests/test_meetup_service.py |
test_segment.py |
software | healthy | tests/test_segment.py |
test_power_curve.py |
software | healthy | tests/test_power_curve.py |
test_activity_dedupe_service.py |
software | healthy | tests/test_activity_dedupe_service.py |
test_parsing.py |
software | healthy | tests/test_parsing.py |
test_activity.py |
software | healthy | tests/test_activity.py |
test_mark_all_read.py |
software | healthy | tests/test_mark_all_read.py |
test_user.py |
software | healthy | tests/test_user.py |
__init__.py |
software | healthy | tests/__init__.py |
conftest.py |
software | healthy | tests/conftest.py |
test_training_distribution.py |
software | healthy | tests/test_training_distribution.py |
test_route_guides_api.py |
software | healthy | tests/test_route_guides_api.py |
test_power_zones.py |
software | healthy | tests/test_power_zones.py |
test_activity_chart_pointer_static.py |
software | healthy | tests/test_activity_chart_pointer_static.py |
test_ftp_estimator.py |
software | healthy | tests/test_ftp_estimator.py |
test_notification.py |
software | healthy | tests/test_notification.py |
test_meetup_cron_delete_user.py |
software | healthy | tests/test_meetup_cron_delete_user.py |
test_intensity_metrics.py |
software | healthy | tests/test_intensity_metrics.py |
test_backup_freshness.py |
software | healthy | tests/test_backup_freshness.py |
test_user_city_field.py |
software | healthy | tests/test_user_city_field.py |
test_segment_concurrency.py |
software | healthy | tests/test_segment_concurrency.py |
test_monitor_admin_h5_health.py |
software | healthy | tests/test_monitor_admin_h5_health.py |
test_admin_router.py |
software | healthy | tests/test_admin_router.py |
test_fix7_data_layer_filter.py |
software | healthy | tests/test_fix7_data_layer_filter.py |
test_parse_activity_type.py |
software | healthy | tests/test_parse_activity_type.py |
test_cities.py |
software | healthy | tests/test_cities.py |
test_city_medals.py |
software | healthy | tests/test_city_medals.py |
test_segment_algorithms.py |
software | healthy | tests/test_segment_algorithms.py |
test_activity_power_curve_analysis.py |
software | healthy | tests/test_activity_power_curve_analysis.py |
test_bindchart_pointer_node.py |
software | healthy | tests/test_bindchart_pointer_node.py |
test_training_daily_load_hook.py |
software | healthy | tests/test_training_daily_load_hook.py |
test_user_router_v5.py |
software | healthy | tests/test_user_router_v5.py |
test_segment_router_v5.py |
software | healthy | tests/test_segment_router_v5.py |
test_segment_fields.py |
software | healthy | tests/test_segment_fields.py |
test_meetup_models.py |
software | healthy | tests/test_meetup_models.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
_Attr |
software | healthy | tests/test_backfill_phase5.py:8 |
_FakeSegment |
software | healthy | tests/test_backfill_phase5.py:25 |
_FakeTrackpoint |
software | healthy | tests/test_backfill_phase5.py:30 |
_FakeUser |
software | healthy | tests/test_backfill_phase5.py:36 |
_FakeActivity |
software | healthy | tests/test_backfill_phase5.py:41 |
_Query |
software | healthy | tests/test_backfill_phase5.py:47 |
_Nested |
software | healthy | tests/test_backfill_phase5.py:66 |
_FakeDb |
software | healthy | tests/test_backfill_phase5.py:77 |
TestCalculatePowerCurve |
software | healthy | tests/test_power_curve.py:27 |
TestCalculatePowerCurveFromActivities |
software | healthy | tests/test_power_curve.py:125 |
TestTypes |
software | healthy | tests/test_parsing.py:82 |
TestGeoMath |
software | healthy | tests/test_parsing.py:130 |
TestStatsCalculator |
software | healthy | tests/test_parsing.py:228 |
TestCalculateMovingTime |
software | healthy | tests/test_parsing.py:310 |
TestGPXParser |
software | healthy | tests/test_parsing.py:385 |
TestCoordNormalizer |
software | healthy | tests/test_parsing.py:569 |
TestSlidingWindowMonotonicity |
software | healthy | tests/test_ftp_estimator.py:23 |
TestFtpEstimator |
software | healthy | tests/test_ftp_estimator.py:69 |
TestHrGatedFtpEstimator |
software | healthy | tests/test_ftp_estimator.py:141 |
TestIntensityMetrics |
software | healthy | tests/test_intensity_metrics.py:6 |
TestStatsFilterCycling |
software | healthy | tests/test_fix7_data_layer_filter.py:58 |
TestSocialFilterCycling |
software | healthy | tests/test_fix7_data_layer_filter.py:88 |
_FakeActivity |
software | healthy | tests/test_city_medals.py:231 |
_FakePoint |
software | healthy | tests/test_segment_algorithms.py:36 |
TestHaversineDistance |
software | healthy | tests/test_segment_algorithms.py:47 |
TestCalculateMaxGradient |
software | healthy | tests/test_segment_algorithms.py:93 |
TestSmoothElevations |
software | healthy | tests/test_segment_algorithms.py:199 |
TestCalculateDifficulty |
software | healthy | tests/test_segment_algorithms.py:235 |
TestInferCityFromCoords |
software | healthy | tests/test_segment_algorithms.py:281 |
_Dialect |
software | healthy | tests/test_training_daily_load_hook.py:210 |
_Bind |
software | healthy | tests/test_training_daily_load_hook.py:213 |
_FakeDb |
software | healthy | tests/test_training_daily_load_hook.py:216 |
FakeResponse |
software | healthy | tests/test_tencent_place.py:150 |
FakeStorage |
software | healthy | tests/test_meetup_media.py:469 |
FakeResponse |
software | healthy | tests/test_tencent_direction.py:37 |
TestUnbindStrava |
software | healthy | tests/test_strava_unbind.py:83 |
FakeStorage |
software | healthy | tests/test_route_book_api.py:126 |
_StubActivity |
software | healthy | tests/test_breakthrough.py:49 |
TestBreakthroughDetector |
software | healthy | tests/test_breakthrough.py:76 |
TestBreakthroughEndpoints |
software | healthy | tests/test_breakthrough.py:212 |
TestListFilterCycling |
software | healthy | tests/test_fix5_list_filter.py:45 |
_FakeQuery |
software | healthy | tests/test_segment_service_v5.py:33 |
TestStravaAdapter |
software | healthy | tests/test_strava.py:139 |
TestOAuthRoutes |
software | healthy | tests/test_strava.py:320 |
TestWebhookRoutes |
software | healthy | tests/test_strava.py:372 |
TestManualSync |
software | healthy | tests/test_strava.py:508 |
TestImportProgress |
software | healthy | tests/test_strava.py:520 |
TestImportScheduler |
software | healthy | tests/test_strava.py:580 |
TestSaveParseResult |
software | healthy | tests/test_strava.py:720 |
TestSegmentLeaderboardCyclingFilter |
software | healthy | tests/test_fix7_segment_cycling_filter.py:79 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
GET /health |
api | healthy | app/main.py |
GET / |
api | healthy | app/notification/router.py |
POST /mark-all-read |
api | healthy | app/notification/router.py |
GET /honors |
api | healthy | app/notification/router.py |
GET /authorize |
api | healthy | app/strava/router.py |
GET /callback |
api | healthy | app/strava/router.py |
GET /status |
api | healthy | app/strava/router.py |
POST /unbind |
api | healthy | app/strava/router.py |
GET /webhook |
api | healthy | app/strava/router.py |
POST /webhook |
api | healthy | app/strava/router.py |
POST /sync |
api | healthy | app/strava/router.py |
GET /import-progress |
api | healthy | app/strava/router.py |
POST /upload |
api | healthy | app/activity/router.py |
GET /track-thumbs |
api | healthy | app/activity/router.py |
GET /{activity_id} |
api | healthy | app/activity/router.py |
PATCH /{activity_id} |
api | healthy | app/activity/router.py |
PATCH /{activity_id}/privacy |
api | healthy | app/activity/router.py |
DELETE /{activity_id} |
api | healthy | app/activity/router.py |
GET /{activity_id}/timeseries |
api | healthy | app/activity/router.py |
GET /{activity_id}/power-curve |
api | healthy | app/activity/router.py |
GET /{activity_id}/power-curve/effort |
api | healthy | app/activity/router.py |
GET /{activity_id}/status |
api | healthy | app/activity/router.py |
POST / |
api | healthy | app/route_book/router.py |
POST /tencent-direction |
api | healthy | app/route_book/router.py |
GET /activity-candidates |
api | healthy | app/route_book/router.py |
GET /{route_book_id} |
api | healthy | app/route_book/router.py |
DELETE /{route_book_id} |
api | healthy | app/route_book/router.py |
GET /{guide_id} |
api | healthy | app/route_book/guides_router.py |
GET /my-draft |
api | healthy | app/meetup/router.py |
GET /mine |
api | healthy | app/meetup/router.py |
GET /favorite-places |
api | healthy | app/meetup/router.py |
POST /favorite-places |
api | healthy | app/meetup/router.py |
DELETE /favorite-places/{place_id} |
api | healthy | app/meetup/router.py |
GET /place-suggestions |
api | healthy | app/meetup/router.py |
GET /{meetup_id}/participants |
api | healthy | app/meetup/router.py |
GET /{meetup_id}/report |
api | healthy | app/meetup/router.py |
GET /{meetup_id} |
api | healthy | app/meetup/router.py |
PATCH /{meetup_id} |
api | healthy | app/meetup/router.py |
POST /{meetup_id}/publish |
api | healthy | app/meetup/router.py |
POST /{meetup_id}/cancel |
api | healthy | app/meetup/router.py |
POST /{meetup_id}/join |
api | healthy | app/meetup/router.py |
DELETE /{meetup_id}/leave |
api | healthy | app/meetup/router.py |
GET /{meetup_id}/media |
api | healthy | app/meetup/router.py |
POST /{meetup_id}/media |
api | healthy | app/meetup/router.py |
DELETE /{meetup_id}/media/{media_id} |
api | healthy | app/meetup/router.py |
DELETE /{meetup_id} |
api | healthy | app/meetup/router.py |
GET /whoami |
api | healthy | app/admin/router.py |
GET /curation-pool |
api | healthy | app/admin/router.py |
PATCH /curation-pool/{pool_id} |
api | healthy | app/admin/router.py |
POST /ai/segment-drafts/{segment_id}/generate |
api | healthy | app/admin/router.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
strava |
software | healthy | tests/strava |
fixtures |
software | healthy | tests/fixtures |
routes |
software | healthy | tests/fixtures/routes |
test-no-track |
software | healthy | tests/fixtures/routes/test-no-track |
test-gpx-route |
software | healthy | tests/fixtures/routes/test-gpx-route |
admin |
software | healthy | tests/admin |
docs |
software | healthy | docs |
superpowers |
software | healthy | docs/superpowers |
plans |
software | healthy | docs/superpowers/plans |
2026-05-28-meetup-module |
software | healthy | docs/superpowers/plans/2026-05-28-meetup-module |
specs |
software | healthy | docs/superpowers/specs |
competitive-analysis |
software | healthy | docs/competitive-analysis |
archive |
software | healthy | docs/archive |
persona-db-backup |
software | healthy | docs/archive/persona-db-backup |
agent-rules |
software | healthy | docs/archive/agent-rules |
agent-weekly |
software | healthy | docs/archive/agent-weekly |
prd |
software | healthy | docs/prd |
learning |
software | healthy | docs/learning |
reviews |
software | healthy | docs/reviews |
agent-rules |
software | healthy | docs/agent-rules |
adr |
software | healthy | docs/adr |
plans |
software | healthy | docs/plans |
sprint-13 |
software | healthy | docs/plans/sprint-13 |
prototypes |
software | healthy | docs/prototypes |
scripts |
software | healthy | scripts |
app |
software | healthy | app |
notification |
software | healthy | app/notification |
monitor |
software | healthy | app/monitor |
parsing |
software | healthy | app/parsing |
middleware |
software | healthy | app/middleware |
strava |
software | healthy | app/strava |
common |
software | healthy | app/common |
activity |
software | healthy | app/activity |
route_book |
software | healthy | app/route_book |
agent |
software | healthy | app/agent |
meetup |
software | healthy | app/meetup |
admin |
software | healthy | app/admin |
segment |
software | healthy | app/segment |
user |
software | healthy | app/user |
storage |
software | healthy | app/storage |
training |
software | healthy | app/training |
miniprogram |
software | healthy | miniprogram |
utils |
software | healthy | miniprogram/utils |
components |
software | healthy | miniprogram/components |
power-curve-card |
software | healthy | miniprogram/components/power-curve-card |
ride-card |
software | healthy | miniprogram/components/ride-card |
strava-bind-row |
software | healthy | miniprogram/components/strava-bind-row |
heatmap-card |
software | healthy | miniprogram/components/heatmap-card |
activity-power-curve-card |
software | healthy | miniprogram/components/activity-power-curve-card |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
auth::app/strava/service.py |
security | healthy | app/strava/service.py |
auth::docker-compose.dev.yml |
security | healthy | docker-compose.dev.yml |
auth::app/user/models.py |
security | healthy | app/user/models.py |
auth::app/meetup/router.py |
security | healthy | app/meetup/router.py |
auth::app/config.py |
security | healthy | app/config.py |
auth::tests/test_user.py |
security | healthy | tests/test_user.py |
auth::miniprogram/components/strava-bind-row/strava-bind-ro… |
security | healthy | miniprogram/components/strava-bind-row/strava-bind-row.js |
auth::docs/README.md |
security | healthy | docs/README.md |
auth::tests/strava/test_hardening.py |
security | healthy | tests/strava/test_hardening.py |
auth::app/admin/dependencies.py |
security | healthy | app/admin/dependencies.py |
auth::miniprogram/app.js |
security | healthy | miniprogram/app.js |
auth::app/user/router.py |
security | healthy | app/user/router.py |
auth::app/main.py |
security | healthy | app/main.py |
auth::app/user/service_auth.py |
security | healthy | app/user/service_auth.py |
auth::docs/dev-guide.html |
security | healthy | docs/dev-guide.html |
auth::app/strava/exceptions.py |
security | healthy | app/strava/exceptions.py |
auth::miniprogram/utils/api.js |
security | healthy | miniprogram/utils/api.js |
auth::scripts/gen_learning_notes.py |
security | healthy | scripts/gen_learning_notes.py |
auth::app/strava/service_oauth.py |
security | healthy | app/strava/service_oauth.py |
auth::AGENTS.md |
security | healthy | AGENTS.md |
auth::migrations/versions/phase2_strava_oauth.py |
security | healthy | migrations/versions/phase2_strava_oauth.py |
auth::miniprogram/pages/settings/settings.js |
security | healthy | miniprogram/pages/settings/settings.js |
auth::app/strava/service_token.py |
security | healthy | app/strava/service_token.py |
auth::tests/test_admin_router.py |
security | healthy | tests/test_admin_router.py |
auth::CLAUDE.md |
security | healthy | CLAUDE.md |
auth::tests/conftest.py |
security | healthy | tests/conftest.py |
auth::.env.example |
security | healthy | .env.example |
auth::tests/test_strava.py |
security | healthy | tests/test_strava.py |
auth::tests/test_admin_dependencies.py |
security | healthy | tests/test_admin_dependencies.py |
auth::tests/test_breakthrough.py |
security | healthy | tests/test_breakthrough.py |
auth::app/middleware/rate_limit.py |
security | healthy | app/middleware/rate_limit.py |
auth::scripts/historical_dedupe_cleanup.py |
security | healthy | scripts/historical_dedupe_cleanup.py |
auth::app/strava/router.py |
security | healthy | app/strava/router.py |
auth::tests/strava/test_oauth_state.py |
security | healthy | tests/strava/test_oauth_state.py |
auth::app/user/service.py |
security | healthy | app/user/service.py |
auth::tests/admin/test_trackpoints.py |
security | healthy | tests/admin/test_trackpoints.py |
auth::app/strava/__init__.py |
security | healthy | app/strava/__init__.py |
auth::tests/test_user_router_v5.py |
security | healthy | tests/test_user_router_v5.py |
auth::app/dependencies.py |
security | healthy | app/dependencies.py |
auth::app/strava/service_sync.py |
security | healthy | app/strava/service_sync.py |
auth::tests/test_meetup_api.py |
security | healthy | tests/test_meetup_api.py |
auth::tests/test_strava_unbind.py |
security | healthy | tests/test_strava_unbind.py |
| Label | Layer | Status | Path |
|---|---|---|---|
public |
data | healthy | docs/archive/persona-db-backup/2026-05-21-persona-tables.sql |
Notification |
data | healthy | app/notification/models.py |
notifications |
data | healthy | app/notification/models.py |
StravaImport |
data | healthy | app/strava/models.py |
strava_imports |
data | healthy | app/strava/models.py |
Activity |
data | healthy | app/activity/models.py |
Trackpoint |
data | healthy | app/activity/models.py |
ActivityPrivacy |
data | healthy | app/activity/models.py |
BreakthroughEvent |
data | healthy | app/activity/models.py |
activities |
data | healthy | app/activity/models.py |
trackpoints |
data | healthy | app/activity/models.py |
activity_privacy |
data | healthy | app/activity/models.py |
breakthrough_events |
data | healthy | app/activity/models.py |
RouteBook |
data | healthy | app/route_book/models.py |
RouteGuide |
data | healthy | app/route_book/models.py |
Meetup |
data | healthy | app/meetup/models.py |
MeetupParticipant |
data | healthy | app/meetup/models.py |
MeetupMedia |
data | healthy | app/meetup/models.py |
MeetupActivity |
data | healthy | app/meetup/models.py |
MeetupFavoritePlace |
data | healthy | app/meetup/models.py |
Segment |
data | healthy | app/segment/models.py |
SegmentEffort |
data | healthy | app/segment/models.py |
SegmentAiDraft |
data | healthy | app/segment/models.py |
SegmentCurationPool |
data | healthy | app/segment/models.py |
segments |
data | healthy | app/segment/models.py |
segment_efforts |
data | healthy | app/segment/models.py |
segment_ai_drafts |
data | healthy | app/segment/models.py |
segment_curation_pool |
data | healthy | app/segment/models.py |
User |
data | healthy | app/user/models.py |
users |
data | healthy | app/user/models.py |
DailyTrainingLoad |
data | healthy | app/training/models.py |
| Label | Layer | Status | Path |
|---|---|---|---|
env.py |
data | healthy | migrations/env.py |
sprint6_user_city_widen.py |
data | healthy | migrations/versions/sprint6_user_city_widen.py |
20260612_meetup_power_hints.py |
data | healthy | migrations/versions/20260612_meetup_power_hints.py |
phase2_strava_imports.py |
data | healthy | migrations/versions/phase2_strava_imports.py |
phase1_translation_layer.py |
data | healthy | migrations/versions/phase1_translation_layer.py |
20260602_route_book_tencent_direction.py |
data | healthy | migrations/versions/20260602_route_book_tencent_direction.py |
sprint5_moving_time.py |
data | healthy | migrations/versions/sprint5_moving_time.py |
20260603_meetup_create_prototype_fields.py |
data | healthy | migrations/versions/20260603_meetup_create_prototype_fields… |
sprint8_max_cadence.py |
data | healthy | migrations/versions/sprint8_max_cadence.py |
sprint9_training_metrics.py |
data | healthy | migrations/versions/sprint9_training_metrics.py |
sprint9_breakthrough_events.py |
data | healthy | migrations/versions/sprint9_breakthrough_events.py |
20260528_meetup_route_book.py |
data | healthy | migrations/versions/20260528_meetup_route_book.py |
persona_engine_init.py |
data | healthy | migrations/versions/persona_engine_init.py |
phase0_foundation_fixes.py |
data | healthy | migrations/versions/phase0_foundation_fixes.py |
sprint6_user_bio.py |
data | healthy | migrations/versions/sprint6_user_bio.py |
sprint10_daily_training_load.py |
data | healthy | migrations/versions/sprint10_daily_training_load.py |
20260612_route_guides.py |
data | healthy | migrations/versions/20260612_route_guides.py |
sprint5_activity_privacy.py |
data | healthy | migrations/versions/sprint5_activity_privacy.py |
phase4_frontend_consume.py |
data | healthy | migrations/versions/phase4_frontend_consume.py |
phase5_tz_aware.py |
data | healthy | migrations/versions/phase5_tz_aware.py |
sprint6_activity_city.py |
data | healthy | migrations/versions/sprint6_activity_city.py |
sprint5_activity_dedupe.py |
data | healthy | migrations/versions/sprint5_activity_dedupe.py |
20260611_meetup_activities.py |
data | healthy | migrations/versions/20260611_meetup_activities.py |
0d0e5adcd706_initial_schema.py |
data | healthy | migrations/versions/0d0e5adcd706_initial_schema.py |
persona_engine_seed.py |
data | healthy | migrations/versions/persona_engine_seed.py |
phase5_v5_db_changes.py |
data | healthy | migrations/versions/phase5_v5_db_changes.py |
sprint10_user_hr_profile.py |
data | healthy | migrations/versions/sprint10_user_hr_profile.py |
sprint9_persona_cleanup.py |
data | healthy | migrations/versions/sprint9_persona_cleanup.py |
phase2_strava_oauth.py |
data | healthy | migrations/versions/phase2_strava_oauth.py |
20260612_route_guide_gallery.py |
data | healthy | migrations/versions/20260612_route_guide_gallery.py |
phase3_notifications.py |
data | healthy | migrations/versions/phase3_notifications.py |
| Label | Layer | Status | Path |
|---|---|---|---|
/settings/settings |
frontend | healthy | miniprogram/pages/settings/settings.js |
/notification/notification |
frontend | healthy | miniprogram/pages/notification/notification.js |
/segment-efforts/segment-efforts |
frontend | healthy | miniprogram/pages/segment-efforts/segment-efforts.js |
/upload/upload |
frontend | healthy | miniprogram/pages/upload/upload.js |
/detail/detail |
frontend | healthy | miniprogram/pages/detail/detail.js |
/training-distribution/training-distribution |
frontend | healthy | miniprogram/pages/training-distribution/training-distributi… |
/meetup-create/meetup-create |
frontend | healthy | miniprogram/pages/meetup-create/meetup-create.js |
/meetup-report/meetup-report |
frontend | healthy | miniprogram/pages/meetup-report/meetup-report.js |
/meetup-detail/meetup-detail |
frontend | healthy | miniprogram/pages/meetup-detail/meetup-detail.js |
/meetups-list/meetups-list |
frontend | healthy | miniprogram/pages/meetups-list/meetups-list.js |
/honor/honor |
frontend | healthy | miniprogram/pages/honor/honor.js |
/home/home |
frontend | healthy | miniprogram/pages/home/home.js |
/meetups-mine/meetups-mine |
frontend | healthy | miniprogram/pages/meetups-mine/meetups-mine.js |
/route-list/route-list |
frontend | healthy | miniprogram/pages/route-list/route-list.js |
/training-calendar/training-calendar |
frontend | healthy | miniprogram/pages/training-calendar/training-calendar.js |
/segment/segment |
frontend | healthy | miniprogram/pages/segment/segment.js |
/route-detail/route-detail |
frontend | healthy | miniprogram/pages/route-detail/route-detail.js |
/user/user |
frontend | healthy | miniprogram/pages/user/user.js |
/profile/profile |
frontend | healthy | miniprogram/pages/profile/profile.js |
/explore/explore |
frontend | healthy | miniprogram/pages/explore/explore.js |
/map-picker/map-picker |
frontend | healthy | miniprogram/pages/map-picker/map-picker.js |
/route-map/route-map |
frontend | healthy | miniprogram/pages/route-map/route-map.js |
/strava-auth/strava-auth |
frontend | healthy | miniprogram/pages/strava-auth/strava-auth.js |
/pages/upload/upload |
frontend | healthy | miniprogram/pages/upload/upload.js |
| Label | Layer | Status | Path |
|---|---|---|---|
image::Dockerfile |
hardware | healthy | Dockerfile |
db |
hardware | healthy | docker-compose.yml |
redis |
hardware | healthy | docker-compose.yml |
api |
hardware | healthy | docker-compose.yml |
worker |
hardware | healthy | docker-compose.yml |
cleanup |
hardware | healthy | docker-compose.yml |
db-backup |
hardware | healthy | docker-compose.yml |
monitor |
hardware | healthy | docker-compose.yml |
scheduler |
hardware | healthy | docker-compose.yml |
curation-pool-cron |
hardware | healthy | docker-compose.yml |
admin-h5 |
hardware | healthy | docker-compose.yml |
caddy |
hardware | healthy | docker-compose.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
port:5435 |
network | healthy | docker-compose.dev.yml |
port:5432 |
network | healthy | docker-compose.dev.yml |
port:16379 |
network | healthy | docker-compose.dev.yml |
port:6379 |
network | healthy | docker-compose.dev.yml |
port:8001 |
network | healthy | docker-compose.dev.yml |
port:8000 |
network | healthy | docker-compose.dev.yml |
port:9000 |
network | healthy | docker-compose.yml |
port:80 |
network | healthy | docker-compose.yml |
port:443 |
network | healthy | docker-compose.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
redis |
data | healthy | docker-compose.dev.yml |
postgresql |
data | healthy | docker-compose.dev.yml |
postgres |
data | healthy | docker-compose.dev.yml |
sqlite |
data | healthy | CLAUDE.md |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | docker-compose.dev.yml |
127.0.0.11 |
network | healthy | CLAUDE.md |
114.132.190.245 |
network | healthy | CLAUDE.md |
| Label | Layer | Status | Path |
|---|---|---|---|
caddy |
network | healthy | docker-compose.dev.yml |
nginx |
network | healthy | CLAUDE.md |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-5nbvsss7 |
software | healthy | /tmp/repobility-clone-5nbvsss7 |
| Label | Layer | Status | Path |
|---|---|---|---|
celery |
data | healthy | scheduler.py |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::test |
cicd | healthy | .github/workflows/test.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
pytest |
cicd | healthy | .github/workflows/test.yml |
This page is publicly accessible at:
https://repobility.com/scan/b669dc2c-6e65-46bf-82c9-d73b705465ee/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/b669dc2c-6e65-46bf-82c9-d73b705465ee/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.