https://github.com/vlakir/angarion
· scanned 2026-06-16 00:52 UTC (2 months, 1 week ago)
84 raw signals (0 security + 84 graph)
Last scanned 2 months, 1 week ago · v1 · 69 actionable findings from 1 signal source. 15 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 2166 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 |
|---|---|---|---|
test_version_is_exposed |
software | healthy | tests/test_package.py:8 |
_load_secrets_file |
software | healthy | tests/integration/conftest.py:31 |
groups |
software | healthy | tests/integration/conftest.py:54 |
tg_env |
software | healthy | tests/integration/conftest.py:60 |
tg_client |
software | healthy | tests/integration/conftest.py:79 |
test_account_authorized |
software | healthy | tests/integration/test_telegram_access.py:25 |
test_groups_accessible |
software | healthy | tests/integration/test_telegram_access.py:32 |
test_send_and_delete_roundtrip |
software | healthy | tests/integration/test_telegram_access.py:39 |
test_public_surface_is_importable |
software | healthy | tests/unit/test_testing_package.py:45 |
test_all_declares_exactly_the_public_surface |
software | healthy | tests/unit/test_testing_package.py:50 |
test_contract_classes_carry_asyncio_marker |
software | healthy | tests/unit/test_testing_package.py:54 |
test_pytest11_plugin_registered_via_entry_point |
software | healthy | tests/unit/test_testing_package.py:64 |
test_masks_values_of_secret_keys_case_insensitive |
software | healthy | tests/unit/test_log.py:10 |
test_masks_recursively_in_nested_payload |
software | healthy | tests/unit/test_log.py:26 |
test_non_secret_values_pass_through_unchanged |
software | healthy | tests/unit/test_log.py:43 |
test_secret_keys_cover_spec_list |
software | healthy | tests/unit/test_log.py:49 |
test_mask_secrets_works_as_structlog_processor |
software | healthy | tests/unit/test_log.py:54 |
test_get_logger_returns_bindable_logger |
software | healthy | tests/unit/test_log.py:64 |
write_toml |
software | healthy | tests/unit/test_config.py:55 |
test_defaults_without_any_config |
software | healthy | tests/unit/test_config.py:61 |
test_load_settings_parses_toml |
software | healthy | tests/unit/test_config.py:81 |
test_account_section_keeps_plugin_specific_keys |
software | healthy | tests/unit/test_config.py:99 |
test_account_without_messenger_fails |
software | healthy | tests/unit/test_config.py:107 |
test_env_overrides_toml |
software | healthy | tests/unit/test_config.py:114 |
test_missing_toml_file_fails_fast |
software | healthy | tests/unit/test_config.py:124 |
test_unknown_top_level_section_fails |
software | healthy | tests/unit/test_config.py:130 |
test_dedup_ttl_must_cover_registry_window |
software | healthy | tests/unit/test_config.py:136 |
test_unbounded_registry_requires_unbounded_dedup |
software | healthy | tests/unit/test_config.py:142 |
test_storage_and_queue_allow_backend_specific_keys |
software | healthy | tests/unit/test_config.py:152 |
test_pipeline_requires_events_sources_targets |
software | healthy | tests/unit/test_config.py:158 |
test_pipeline_rejects_unknown_event_kind |
software | healthy | tests/unit/test_config.py:172 |
test_settings_are_frozen |
software | healthy | tests/unit/test_config.py:185 |
test_telegram_runtime_defaults |
software | healthy | tests/unit/test_config.py:192 |
test_telegram_section_parsed_from_toml |
software | healthy | tests/unit/test_config.py:205 |
test_session_key_from_env |
software | healthy | tests/unit/test_config.py:228 |
test_unknown_telegram_key_fails |
software | healthy | tests/unit/test_config.py:237 |
test_api_defaults |
software | healthy | tests/unit/test_config.py:243 |
test_api_section_parsed_from_toml |
software | healthy | tests/unit/test_config.py:258 |
test_api_secret_and_admin_from_env |
software | healthy | tests/unit/test_config.py:280 |
test_api_rejects_unknown_auth_mode |
software | healthy | tests/unit/test_config.py:293 |
test_unknown_api_key_fails |
software | healthy | tests/unit/test_config.py:299 |
load_single |
software | healthy | tests/unit/test_entry_points.py:26 |
test_memory_adapter_plugin_loads_via_entry_point |
software | healthy | tests/unit/test_entry_points.py:31 |
test_telegram_adapter_plugin_loads_via_entry_point |
software | healthy | tests/unit/test_entry_points.py:39 |
test_memory_queue_backend_loads_and_builds_port |
software | healthy | tests/unit/test_entry_points.py:52 |
test_persistqueue_backend_loads_and_builds_port |
software | healthy | tests/unit/test_entry_points.py:60 |
test_memory_storage_backend_loads_and_builds_bundle |
software | healthy | tests/unit/test_entry_points.py:73 |
test_sqlite_storage_backend_loads_and_builds_bundle |
software | healthy | tests/unit/test_entry_points.py:81 |
test_passthrough_processor_loads_via_entry_point |
software | healthy | tests/unit/test_entry_points.py:94 |
test_memory_account_model_validates_section |
software | healthy | tests/unit/test_entry_points.py:100 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
TgEnv |
software | healthy | tests/integration/conftest.py:44 |
FakeApp |
software | healthy | tests/unit/test_cli.py:40 |
TestParser |
software | healthy | tests/unit/test_cli.py:51 |
TestMigrate |
software | healthy | tests/unit/test_cli.py:61 |
TestServe |
software | healthy | tests/unit/test_cli.py:87 |
TestRun |
software | healthy | tests/unit/test_cli.py:111 |
TestLogin |
software | healthy | tests/unit/test_cli.py:152 |
TestMain |
software | healthy | tests/unit/test_cli.py:183 |
StubAccountConfig |
software | healthy | tests/unit/test_bootstrap.py:90 |
StubListener |
software | healthy | tests/unit/test_bootstrap.py:96 |
FakeEntryPoint |
software | healthy | tests/unit/test_bootstrap.py:139 |
TestPluginLoading |
software | healthy | tests/unit/test_bootstrap.py:164 |
TestAccountValidation |
software | healthy | tests/unit/test_bootstrap.py:255 |
TestBackendResolution |
software | healthy | tests/unit/test_bootstrap.py:271 |
TestReferentialIntegrity |
software | healthy | tests/unit/test_bootstrap.py:283 |
TestProcessorConfigValidation |
software | healthy | tests/unit/test_bootstrap.py:308 |
TestCapabilitiesMatrix |
software | healthy | tests/unit/test_bootstrap.py:344 |
TestPluginFactoryContracts |
software | healthy | tests/unit/test_bootstrap.py:398 |
TestAppAssembly |
software | healthy | tests/unit/test_bootstrap.py:424 |
_PruneSpy |
software | healthy | tests/unit/test_bootstrap.py:475 |
TestPruneAndDispose |
software | healthy | tests/unit/test_bootstrap.py:484 |
_WithDispose |
software | healthy | tests/unit/test_bootstrap.py:534 |
TestDispatchSink |
software | healthy | tests/unit/test_bootstrap.py:545 |
FakeConnectedClient |
software | healthy | tests/unit/adapters/test_telegram_registry.py:13 |
TestConnectAll |
software | healthy | tests/unit/adapters/test_telegram_registry.py:44 |
TestDisconnectAll |
software | healthy | tests/unit/adapters/test_telegram_registry.py:65 |
FakeClock |
software | healthy | tests/unit/adapters/test_telegram_throttle.py:10 |
TestLifecycle |
software | healthy | tests/unit/adapters/test_memory_listener.py:61 |
TestEmit |
software | healthy | tests/unit/adapters/test_memory_listener.py:82 |
TestPluginObject |
software | healthy | tests/unit/adapters/test_telegram_plugin.py:117 |
TestEncryptedSessionStoreContract |
software | healthy | tests/unit/adapters/test_telegram_session.py:24 |
FakeTelegramClient |
software | healthy | tests/unit/adapters/telegram_fakes.py:48 |
FakePool |
software | healthy | tests/unit/adapters/telegram_fakes.py:158 |
RecordingIngest |
software | healthy | tests/unit/adapters/telegram_fakes.py:181 |
FakeServer |
software | healthy | tests/unit/adapters/http/test_server.py:38 |
TestSettingsNotifier |
software | healthy | tests/unit/adapters/http/test_composition.py:107 |
FakeLlmHttp |
software | healthy | tests/unit/examples/test_digest.py:47 |
Clock |
software | healthy | tests/unit/examples/test_digest.py:76 |
TestDigestProcessor |
software | healthy | tests/unit/examples/test_digest.py:115 |
TestNotifier |
software | healthy | tests/unit/application/test_settings.py:46 |
FakeSink |
software | healthy | tests/unit/application/test_outbox_consumer.py:29 |
FlakySink |
software | healthy | tests/unit/application/test_delivery.py:22 |
DeliveryHarness |
software | healthy | tests/unit/application/test_delivery.py:38 |
TestDelivery |
software | healthy | tests/unit/application/test_delivery.py:65 |
TestRunLifecycle |
software | healthy | tests/unit/application/test_delivery.py:134 |
SlowSink |
software | healthy | tests/unit/application/test_delivery.py:150 |
TestDedup |
software | healthy | tests/unit/application/test_ingest.py:85 |
TestRegistryMaintenance |
software | healthy | tests/unit/application/test_ingest.py:114 |
TestRoutingAndFanOut |
software | healthy | tests/unit/application/test_ingest.py:222 |
TestCrashSafety |
software | healthy | tests/unit/application/test_ingest.py:258 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
mkdocs.yml |
software | healthy | mkdocs.yml |
README.md |
software | healthy | README.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
CONCEPT.md |
software | healthy | CONCEPT.md |
pyproject.toml |
software | healthy | pyproject.toml |
.copier-answers.yml |
software | healthy | .copier-answers.yml |
LICENSE |
software | healthy | LICENSE |
BOARD.md |
software | healthy | BOARD.md |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
DECISIONS.md |
software | healthy | DECISIONS.md |
BACKLOG.md |
software | healthy | BACKLOG.md |
test_package.py |
software | healthy | tests/test_package.py |
conftest.py |
software | healthy | tests/integration/conftest.py |
test_telegram_access.py |
software | healthy | tests/integration/test_telegram_access.py |
test_testing_package.py |
software | healthy | tests/unit/test_testing_package.py |
test_log.py |
software | healthy | tests/unit/test_log.py |
test_config.py |
software | healthy | tests/unit/test_config.py |
test_entry_points.py |
software | healthy | tests/unit/test_entry_points.py |
test_cli.py |
software | healthy | tests/unit/test_cli.py |
test_bootstrap.py |
software | healthy | tests/unit/test_bootstrap.py |
test_telegram_registry.py |
software | healthy | tests/unit/adapters/test_telegram_registry.py |
test_telegram_sender.py |
software | healthy | tests/unit/adapters/test_telegram_sender.py |
test_telegram_throttle.py |
software | healthy | tests/unit/adapters/test_telegram_throttle.py |
test_memory_listener.py |
software | healthy | tests/unit/adapters/test_memory_listener.py |
test_telegram_mapping.py |
software | healthy | tests/unit/adapters/test_telegram_mapping.py |
test_telegram_plugin.py |
software | healthy | tests/unit/adapters/test_telegram_plugin.py |
test_telegram_resolver.py |
software | healthy | tests/unit/adapters/test_telegram_resolver.py |
test_telegram_session.py |
software | healthy | tests/unit/adapters/test_telegram_session.py |
test_sqlite_storage.py |
software | healthy | tests/unit/adapters/test_sqlite_storage.py |
test_telegram_listener.py |
software | healthy | tests/unit/adapters/test_telegram_listener.py |
test_telegram_catchup.py |
software | healthy | tests/unit/adapters/test_telegram_catchup.py |
telegram_fakes.py |
software | healthy | tests/unit/adapters/telegram_fakes.py |
test_telegram_realclient.py |
software | healthy | tests/unit/adapters/test_telegram_realclient.py |
test_telegram_buffer.py |
software | healthy | tests/unit/adapters/test_telegram_buffer.py |
test_persistqueue_queue.py |
software | healthy | tests/unit/adapters/test_persistqueue_queue.py |
test_notify.py |
software | healthy | tests/unit/adapters/http/test_notify.py |
conftest.py |
software | healthy | tests/unit/adapters/http/conftest.py |
test_create_app.py |
software | healthy | tests/unit/adapters/http/test_create_app.py |
test_ui.py |
software | healthy | tests/unit/adapters/http/test_ui.py |
test_ops.py |
software | healthy | tests/unit/adapters/http/test_ops.py |
test_api_v1.py |
software | healthy | tests/unit/adapters/http/test_api_v1.py |
test_server.py |
software | healthy | tests/unit/adapters/http/test_server.py |
test_pipelines_viz.py |
software | healthy | tests/unit/adapters/http/test_pipelines_viz.py |
test_auth.py |
software | healthy | tests/unit/adapters/http/test_auth.py |
test_composition.py |
software | healthy | tests/unit/adapters/http/test_composition.py |
conftest.py |
software | healthy | tests/unit/examples/conftest.py |
test_digest.py |
software | healthy | tests/unit/examples/test_digest.py |
test_settings.py |
software | healthy | tests/unit/application/test_settings.py |
test_outbox_consumer.py |
software | healthy | tests/unit/application/test_outbox_consumer.py |
test_delivery.py |
software | healthy | tests/unit/application/test_delivery.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 |
integration |
software | healthy | tests/integration |
unit |
software | healthy | tests/unit |
adapters |
software | healthy | tests/unit/adapters |
http |
software | healthy | tests/unit/adapters/http |
examples |
software | healthy | tests/unit/examples |
application |
software | healthy | tests/unit/application |
domain |
software | healthy | tests/unit/domain |
contracts |
software | healthy | tests/contracts |
e2e |
software | healthy | tests/e2e |
docs |
software | healthy | docs |
reference |
software | healthy | docs/reference |
guides |
software | healthy | docs/guides |
scripts |
software | healthy | scripts |
examples |
software | healthy | examples |
forward |
software | healthy | examples/forward |
digest |
software | healthy | examples/digest |
web |
software | healthy | examples/web |
templates |
software | healthy | examples/web/templates |
ext |
software | healthy | examples/web/templates/ext |
.github |
software | healthy | .github |
workflows |
software | healthy | .github/workflows |
src |
software | healthy | src |
angarion |
software | healthy | src/angarion |
adapters |
software | healthy | src/angarion/adapters |
telegram |
software | healthy | src/angarion/adapters/telegram |
http |
software | healthy | src/angarion/adapters/http |
auth |
software | healthy | src/angarion/adapters/http/auth |
static |
software | healthy | src/angarion/adapters/http/static |
templates |
software | healthy | src/angarion/adapters/http/templates |
angarion |
software | healthy | src/angarion/adapters/http/templates/angarion |
fragments |
software | healthy | src/angarion/adapters/http/templates/angarion/fragments |
queue |
software | healthy | src/angarion/adapters/queue |
memory |
software | healthy | src/angarion/adapters/memory |
storage |
software | healthy | src/angarion/adapters/storage |
testing |
software | healthy | src/angarion/testing |
application |
software | healthy | src/angarion/application |
migrations |
software | healthy | src/angarion/migrations |
versions |
software | healthy | src/angarion/migrations/versions |
domain |
software | healthy | src/angarion/domain |
specs |
software | healthy | specs |
T007-m4-llm-processor |
software | healthy | specs/T007-m4-llm-processor |
T008-m5-web |
software | healthy | specs/T008-m5-web |
T019-digest-examples |
software | healthy | specs/T019-digest-examples |
T002-m1-core |
software | healthy | specs/T002-m1-core |
T005-m3-telegram |
software | healthy | specs/T005-m3-telegram |
T003-m2-persistence |
software | healthy | specs/T003-m2-persistence |
T004-tgcf-review |
software | healthy | specs/T004-tgcf-review |
| Label | Layer | Status | Path |
|---|---|---|---|
GET /stats |
api | healthy | examples/web/ext.py |
GET /ui/ext |
api | healthy | examples/web/ext.py |
GET /health |
api | healthy | src/angarion/adapters/http/routes.py |
GET /diagnostics |
api | healthy | src/angarion/adapters/http/routes.py |
GET /events |
api | healthy | src/angarion/adapters/http/routes.py |
GET /settings |
api | healthy | src/angarion/adapters/http/ops_pages.py |
POST /settings |
api | healthy | src/angarion/adapters/http/ops_pages.py |
POST /settings/{key}/reset |
api | healthy | src/angarion/adapters/http/ops_pages.py |
POST /pipelines/{pipeline}/pause |
api | healthy | src/angarion/adapters/http/ops_pages.py |
POST /pipelines/{pipeline}/resume |
api | healthy | src/angarion/adapters/http/ops_pages.py |
POST /restart |
api | healthy | src/angarion/adapters/http/ops_pages.py |
POST /catchup |
api | healthy | src/angarion/adapters/http/ops_pages.py |
GET /dlq |
api | healthy | src/angarion/adapters/http/ops_pages.py |
POST /dlq/{uid}/requeue |
api | healthy | src/angarion/adapters/http/ops_pages.py |
PUT /settings |
api | healthy | src/angarion/adapters/http/ops.py |
DELETE /settings/{key} |
api | healthy | src/angarion/adapters/http/ops.py |
GET / |
api | healthy | src/angarion/adapters/http/ui.py |
GET /pipelines |
api | healthy | src/angarion/adapters/http/ui.py |
GET /fragments/pipelines |
api | healthy | src/angarion/adapters/http/ui.py |
GET /fragments/queue |
api | healthy | src/angarion/adapters/http/ui.py |
GET /fragments/event-counts |
api | healthy | src/angarion/adapters/http/ui.py |
GET /fragments/cursors |
api | healthy | src/angarion/adapters/http/ui.py |
GET /fragments/events-table |
api | healthy | src/angarion/adapters/http/ui.py |
POST / |
api | healthy | src/angarion/adapters/http/auth/admin.py |
PATCH /{user_id} |
api | healthy | src/angarion/adapters/http/auth/admin.py |
DELETE /{user_id} |
api | healthy | src/angarion/adapters/http/auth/admin.py |
POST /register |
api | healthy | src/angarion/adapters/http/auth/users.py |
GET /login |
api | healthy | src/angarion/adapters/http/auth/pages.py |
POST /login |
api | healthy | src/angarion/adapters/http/auth/pages.py |
GET /logout |
api | healthy | src/angarion/adapters/http/auth/pages.py |
GET /register |
api | healthy | src/angarion/adapters/http/auth/pages.py |
GET /users |
api | healthy | src/angarion/adapters/http/auth/pages.py |
POST /users/{user_id}/approve |
api | healthy | src/angarion/adapters/http/auth/pages.py |
POST /users/{user_id}/deactivate |
api | healthy | src/angarion/adapters/http/auth/pages.py |
POST /users/{user_id}/delete |
api | healthy | src/angarion/adapters/http/auth/pages.py |
POST /users/create |
api | healthy | src/angarion/adapters/http/auth/pages.py |
| Label | Layer | Status | Path |
|---|---|---|---|
Base |
data | healthy | src/angarion/adapters/storage/orm.py |
InboundDedupRow |
data | healthy | src/angarion/adapters/storage/orm.py |
OutboundRow |
data | healthy | src/angarion/adapters/storage/orm.py |
MessageRow |
data | healthy | src/angarion/adapters/storage/orm.py |
MessageVersionRow |
data | healthy | src/angarion/adapters/storage/orm.py |
SourceCursorRow |
data | healthy | src/angarion/adapters/storage/orm.py |
TelegramSessionRow |
data | healthy | src/angarion/adapters/storage/orm.py |
ProcessorStateRow |
data | healthy | src/angarion/adapters/storage/orm.py |
AnalyticsEventRow |
data | healthy | src/angarion/adapters/storage/orm.py |
DeadLetterRow |
data | healthy | src/angarion/adapters/storage/orm.py |
UserRow |
data | healthy | src/angarion/adapters/storage/orm.py |
AppSettingRow |
data | healthy | src/angarion/adapters/storage/orm.py |
OutboxCommandRow |
data | healthy | src/angarion/adapters/storage/orm.py |
outbound |
data | healthy | src/angarion/adapters/storage/orm.py |
message_versions |
data | healthy | src/angarion/adapters/storage/orm.py |
telegram_sessions |
data | healthy | src/angarion/adapters/storage/orm.py |
dead_letters |
data | healthy | src/angarion/adapters/storage/orm.py |
users |
data | healthy | src/angarion/adapters/storage/orm.py |
app_settings |
data | healthy | src/angarion/adapters/storage/orm.py |
outbox_commands |
data | healthy | src/angarion/adapters/storage/orm.py |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::src/angarion/adapters/http/auth/bootstrap.py |
security | healthy | src/angarion/adapters/http/auth/bootstrap.py |
auth::src/angarion/adapters/http/auth/__init__.py |
security | healthy | src/angarion/adapters/http/auth/__init__.py |
auth::src/angarion/adapters/http/auth/users.py |
security | healthy | src/angarion/adapters/http/auth/users.py |
auth::examples/web/README.md |
security | healthy | examples/web/README.md |
auth::examples/web/run.py |
security | healthy | examples/web/run.py |
auth::CLAUDE.md |
security | healthy | CLAUDE.md |
auth::tests/unit/test_config.py |
security | healthy | tests/unit/test_config.py |
auth::src/angarion/config.py |
security | healthy | src/angarion/config.py |
auth::src/angarion/adapters/http/auth/deps.py |
security | healthy | src/angarion/adapters/http/auth/deps.py |
auth::pyproject.toml |
security | healthy | pyproject.toml |
auth::src/angarion/adapters/http/auth/pages.py |
security | healthy | src/angarion/adapters/http/auth/pages.py |
auth::tests/unit/adapters/http/test_auth.py |
security | healthy | tests/unit/adapters/http/test_auth.py |
auth::examples/web/app.toml |
security | healthy | examples/web/app.toml |
| Label | Layer | Status | Path |
|---|---|---|---|
env.py |
data | healthy | src/angarion/migrations/env.py |
0001_m2_schema.py |
data | healthy | src/angarion/migrations/versions/0001_m2_schema.py |
0004_m5_app_settings.py |
data | healthy | src/angarion/migrations/versions/0004_m5_app_settings.py |
0002_telegram_sessions.py |
data | healthy | src/angarion/migrations/versions/0002_telegram_sessions.py |
0005_m5_outbox_commands.py |
data | healthy | src/angarion/migrations/versions/0005_m5_outbox_commands.py |
0003_m5_users.py |
data | healthy | src/angarion/migrations/versions/0003_m5_users.py |
| Label | Layer | Status | Path |
|---|---|---|---|
sqlite |
data | healthy | README.md |
postgres |
data | healthy | tests/unit/test_bootstrap.py |
| Label | Layer | Status | Path |
|---|---|---|---|
password_literal::tests/unit/adapters/http/test_auth.py |
security | healthy | tests/unit/adapters/http/test_auth.py |
password_literal::tests/unit/adapters/http/test_auth.py |
security | healthy | tests/unit/adapters/http/test_auth.py |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-3f27mrnu |
software | healthy | /tmp/repobility-clone-3f27mrnu |
| Label | Layer | Status | Path |
|---|---|---|---|
kafka |
data | healthy | tests/unit/test_bootstrap.py |
| Label | Layer | Status | Path |
|---|---|---|---|
port:9000 |
network | healthy | tests/unit/test_config.py |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | tests/unit/test_config.py |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::ci |
cicd | healthy | .github/workflows/ci.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
checks |
cicd | healthy | .github/workflows/ci.yml |
This page is publicly accessible at:
https://repobility.com/scan/5aed16b2-8396-46ac-aa1c-c689b39a4526/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/5aed16b2-8396-46ac-aa1c-c689b39a4526/
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.