https://github.com/statyk/compendium
· scanned 2026-06-16 00:21 UTC (2 months, 2 weeks ago)
152 raw signals (7 security + 145 graph)
Last scanned 2 months, 2 weeks ago · v1 · 125 actionable findings from 2 signal sources. 29 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 6451 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 |
|---|---|---|---|
engine |
software | healthy | tests/conftest.py:26 |
session |
software | healthy | tests/conftest.py:34 |
pg_engine |
software | healthy | tests/conftest.py:45 |
pg_session |
software | healthy | tests/conftest.py:72 |
std_settings |
software | healthy | tests/helpers.py:26 |
setup_sqlite_fts |
software | healthy | tests/helpers.py:31 |
make_engine |
software | healthy | tests/helpers.py:64 |
session_for |
software | healthy | tests/helpers.py:76 |
make_client |
software | healthy | tests/helpers.py:88 |
_session_override |
software | healthy | tests/helpers.py:104 |
make_user |
software | healthy | tests/helpers.py:122 |
csrf_pair |
software | healthy | tests/helpers.py:145 |
_next |
software | healthy | tests/integration/test_labels_api.py:34 |
lab_engine |
software | healthy | tests/integration/test_labels_api.py:40 |
lab_session |
software | healthy | tests/integration/test_labels_api.py:57 |
lab_client |
software | healthy | tests/integration/test_labels_api.py:66 |
_override |
software | healthy | tests/integration/test_labels_api.py:69 |
_librarian_token |
software | healthy | tests/integration/test_labels_api.py:85 |
_ro_token |
software | healthy | tests/integration/test_labels_api.py:100 |
_seed_item |
software | healthy | tests/integration/test_labels_api.py:115 |
_seed_patron |
software | healthy | tests/integration/test_labels_api.py:135 |
test_items_requires_labels_generate |
software | healthy | tests/integration/test_labels_api.py:145 |
test_unauthenticated_rejected |
software | healthy | tests/integration/test_labels_api.py:152 |
test_generates_pdf_with_no_filter |
software | healthy | tests/integration/test_labels_api.py:158 |
test_returns_404_when_no_items_match |
software | healthy | tests/integration/test_labels_api.py:168 |
test_rejects_unknown_template |
software | healthy | tests/integration/test_labels_api.py:176 |
test_barcodes_filter |
software | healthy | tests/integration/test_labels_api.py:185 |
test_generates_full_pdf |
software | healthy | tests/integration/test_labels_api.py:198 |
test_generates_sticker_pdf |
software | healthy | tests/integration/test_labels_api.py:208 |
test_rejects_invalid_format |
software | healthy | tests/integration/test_labels_api.py:218 |
test_returns_404_when_no_patrons_match |
software | healthy | tests/integration/test_labels_api.py:226 |
test_full_on_small_template_rejected |
software | healthy | tests/integration/test_labels_api.py:234 |
test_api_spine_format |
software | healthy | tests/integration/test_labels_api.py:248 |
test_api_spine_compat_aliases |
software | healthy | tests/integration/test_labels_api.py:260 |
test_api_new_templates |
software | healthy | tests/integration/test_labels_api.py:273 |
test_api_invalid_format_rejected |
software | healthy | tests/integration/test_labels_api.py:285 |
cli_engine |
software | healthy | tests/integration/test_cli_household.py:22 |
db |
software | healthy | tests/integration/test_cli_household.py:34 |
_session_scope_for |
software | healthy | tests/integration/test_cli_household.py:44 |
_scope |
software | healthy | tests/integration/test_cli_household.py:47 |
test_household_create |
software | healthy | tests/integration/test_cli_household.py:52 |
test_household_list |
software | healthy | tests/integration/test_cli_household.py:59 |
test_household_add_member |
software | healthy | tests/integration/test_cli_household.py:68 |
test_household_remove_member |
software | healthy | tests/integration/test_cli_household.py:82 |
web_engine |
software | healthy | tests/integration/test_web_item_notes.py:29 |
db |
software | healthy | tests/integration/test_web_item_notes.py:41 |
client |
software | healthy | tests/integration/test_web_item_notes.py:52 |
_override |
software | healthy | tests/integration/test_web_item_notes.py:55 |
_make_csrf_pair |
software | healthy | tests/integration/test_web_item_notes.py:72 |
_make_librarian |
software | healthy | tests/integration/test_web_item_notes.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 |
|---|---|---|---|
TestAuth |
software | healthy | tests/integration/test_labels_api.py:144 |
TestItemLabels |
software | healthy | tests/integration/test_labels_api.py:157 |
TestPatronCards |
software | healthy | tests/integration/test_labels_api.py:197 |
TestNewFormats |
software | healthy | tests/integration/test_labels_api.py:245 |
TestCategoryEndpoints |
software | healthy | tests/integration/test_patron_categories_api.py:112 |
TestPatronCreateWithCategory |
software | healthy | tests/integration/test_patron_categories_api.py:155 |
TestPatronPatch |
software | healthy | tests/integration/test_patron_categories_api.py:180 |
TestAdminClaimsPage |
software | healthy | tests/integration/test_claims_web.py:140 |
TestVerifyReturnedRoute |
software | healthy | tests/integration/test_claims_web.py:162 |
TestWriteOffClaimForm |
software | healthy | tests/integration/test_claims_web.py:179 |
TestPatronSelfService |
software | healthy | tests/integration/test_claims_web.py:192 |
TestMeLoans |
software | healthy | tests/integration/test_api_me.py:130 |
TestMeHolds |
software | healthy | tests/integration/test_api_me.py:160 |
TestMeRenew |
software | healthy | tests/integration/test_api_me.py:243 |
TestCreateHousehold |
software | healthy | tests/integration/test_api_households.py:103 |
TestGetHousehold |
software | healthy | tests/integration/test_api_households.py:135 |
TestListHouseholds |
software | healthy | tests/integration/test_api_households.py:150 |
TestUpdateHousehold |
software | healthy | tests/integration/test_api_households.py:161 |
TestDeleteHousehold |
software | healthy | tests/integration/test_api_households.py:175 |
TestMemberManagement |
software | healthy | tests/integration/test_api_households.py:193 |
TestResolutionPrecedence |
software | healthy | tests/integration/test_policy_resolution.py:48 |
TestItemPatch |
software | healthy | tests/integration/test_api_patch.py:127 |
TestWorkPatch |
software | healthy | tests/integration/test_api_patch.py:215 |
TestWorkCreatorsReplace |
software | healthy | tests/integration/test_api_patch.py:272 |
TestCreatorPatch |
software | healthy | tests/integration/test_api_patch.py:349 |
TestBranchPatch |
software | healthy | tests/integration/test_api_patch.py:413 |
TestLibraryHoursWeb |
software | healthy | tests/integration/test_calendar_web.py:96 |
TestClosedDatesWeb |
software | healthy | tests/integration/test_calendar_web.py:135 |
TestAuditEndpoint |
software | healthy | tests/integration/test_api_audit.py:103 |
TestSearchFilters |
software | healthy | tests/integration/test_discovery_api.py:113 |
TestNewArrivalsApi |
software | healthy | tests/integration/test_discovery_api.py:141 |
TestRecentlyReturnedApi |
software | healthy | tests/integration/test_discovery_api.py:158 |
_FakeResp |
software | healthy | tests/integration/test_web_ui.py:1073 |
_FakeClient |
software | healthy | tests/integration/test_web_ui.py:1080 |
TestAuth |
software | healthy | tests/integration/test_labels_web.py:118 |
TestIndex |
software | healthy | tests/integration/test_labels_web.py:130 |
TestItemForm |
software | healthy | tests/integration/test_labels_web.py:140 |
TestPatronForm |
software | healthy | tests/integration/test_labels_web.py:187 |
TestNewTemplates |
software | healthy | tests/integration/test_labels_web.py:216 |
TestSymbologyBanner |
software | healthy | tests/integration/test_labels_web.py:330 |
TestItemPreviewEndpoint |
software | healthy | tests/integration/test_labels_web.py:401 |
TestAuth |
software | healthy | tests/integration/test_kiosk_web.py:132 |
TestStart |
software | healthy | tests/integration/test_kiosk_web.py:150 |
TestSessionPage |
software | healthy | tests/integration/test_kiosk_web.py:203 |
TestCheckoutPost |
software | healthy | tests/integration/test_kiosk_web.py:223 |
TestLibraryHoursApi |
software | healthy | tests/integration/test_calendar_api.py:64 |
TestClosedDatesApi |
software | healthy | tests/integration/test_calendar_api.py:101 |
TestFineNoCalendar |
software | healthy | tests/integration/test_fines_calendar.py:115 |
TestFineWithCalendar |
software | healthy | tests/integration/test_fines_calendar.py:146 |
TestMyHoldsShowsSuspendUI |
software | healthy | tests/integration/test_hold_suspend_web.py:154 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README.md |
software | healthy | README.md |
install.sh |
software | healthy | install.sh |
pyproject.toml |
software | healthy | pyproject.toml |
ils_parity.md |
software | healthy | ils_parity.md |
LICENSE |
software | healthy | LICENSE |
CHANGELOG.md |
software | healthy | CHANGELOG.md |
docker-compose.build.yml |
software | healthy | docker/docker-compose.build.yml |
README.md |
software | healthy | docker/README.md |
Dockerfile |
software | healthy | docker/Dockerfile |
.env.example |
software | healthy | docker/.env.example |
install-cron.sh |
software | healthy | docker/install-cron.sh |
docker-compose.yml |
software | healthy | docker/docker-compose.yml |
entrypoint.sh |
software | healthy | docker/nginx/entrypoint.sh |
entrypoint.sh |
software | healthy | docker/compendium/entrypoint.sh |
__init__.py |
software | healthy | tests/__init__.py |
conftest.py |
software | healthy | tests/conftest.py |
helpers.py |
software | healthy | tests/helpers.py |
test_labels_api.py |
software | healthy | tests/integration/test_labels_api.py |
test_cli_household.py |
software | healthy | tests/integration/test_cli_household.py |
test_web_item_notes.py |
software | healthy | tests/integration/test_web_item_notes.py |
test_patron_categories_api.py |
software | healthy | tests/integration/test_patron_categories_api.py |
test_claims_web.py |
software | healthy | tests/integration/test_claims_web.py |
test_admin_settings_secrets.py |
software | healthy | tests/integration/test_admin_settings_secrets.py |
test_classification_fallback.py |
software | healthy | tests/integration/test_classification_fallback.py |
test_notifications_circulation.py |
software | healthy | tests/integration/test_notifications_circulation.py |
__init__.py |
software | healthy | tests/integration/__init__.py |
test_api_me.py |
software | healthy | tests/integration/test_api_me.py |
test_import_export_cli.py |
software | healthy | tests/integration/test_import_export_cli.py |
conftest.py |
software | healthy | tests/integration/conftest.py |
test_api_households.py |
software | healthy | tests/integration/test_api_households.py |
test_import_export_marc.py |
software | healthy | tests/integration/test_import_export_marc.py |
test_policy_resolution.py |
software | healthy | tests/integration/test_policy_resolution.py |
test_api_patch.py |
software | healthy | tests/integration/test_api_patch.py |
test_catalog_add_from_metadata.py |
software | healthy | tests/integration/test_catalog_add_from_metadata.py |
test_calendar_web.py |
software | healthy | tests/integration/test_calendar_web.py |
test_api_audit.py |
software | healthy | tests/integration/test_api_audit.py |
test_fines_web.py |
software | healthy | tests/integration/test_fines_web.py |
test_scan_repos.py |
software | healthy | tests/integration/test_scan_repos.py |
test_csp_inline_handlers.py |
software | healthy | tests/integration/test_csp_inline_handlers.py |
test_discovery_api.py |
software | healthy | tests/integration/test_discovery_api.py |
test_uploads_bounded.py |
software | healthy | tests/integration/test_uploads_bounded.py |
test_import_csv_preserve_barcodes.py |
software | healthy | tests/integration/test_import_csv_preserve_barcodes.py |
test_web_ui.py |
software | healthy | tests/integration/test_web_ui.py |
test_labels_web.py |
software | healthy | tests/integration/test_labels_web.py |
test_kiosk_web.py |
software | healthy | tests/integration/test_kiosk_web.py |
test_calendar_api.py |
software | healthy | tests/integration/test_calendar_api.py |
test_import_metadata_cache.py |
software | healthy | tests/integration/test_import_metadata_cache.py |
test_fines_calendar.py |
software | healthy | tests/integration/test_fines_calendar.py |
test_catalog_refresh_bulk.py |
software | healthy | tests/integration/test_catalog_refresh_bulk.py |
test_hold_suspend_web.py |
software | healthy | tests/integration/test_hold_suspend_web.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
GET / |
api | healthy | src/compendium/api/routes/notifications.py |
POST /{notification_id}/retry |
api | healthy | src/compendium/api/routes/notifications.py |
GET /library-hours/ |
api | healthy | src/compendium/api/routes/calendar.py |
PATCH /library-hours/{weekday} |
api | healthy | src/compendium/api/routes/calendar.py |
GET /closed-dates/ |
api | healthy | src/compendium/api/routes/calendar.py |
POST /closed-dates/ |
api | healthy | src/compendium/api/routes/calendar.py |
PATCH /closed-dates/{closed_date_id} |
api | healthy | src/compendium/api/routes/calendar.py |
DELETE /closed-dates/{closed_date_id} |
api | healthy | src/compendium/api/routes/calendar.py |
POST /loans/checkout |
api | healthy | src/compendium/api/routes/loans.py |
POST /loans/{loan_id}/checkin |
api | healthy | src/compendium/api/routes/loans.py |
POST /loans/{loan_id}/renew |
api | healthy | src/compendium/api/routes/loans.py |
GET /loans |
api | healthy | src/compendium/api/routes/loans.py |
GET /loans/patron/{card_number} |
api | healthy | src/compendium/api/routes/loans.py |
GET /loans/item/{barcode} |
api | healthy | src/compendium/api/routes/loans.py |
GET /reports/checkouts |
api | healthy | src/compendium/api/routes/reports.py |
GET /reports/popular |
api | healthy | src/compendium/api/routes/reports.py |
GET /reports/dormant |
api | healthy | src/compendium/api/routes/reports.py |
GET /reports/overdues |
api | healthy | src/compendium/api/routes/reports.py |
GET /branches/ |
api | healthy | src/compendium/api/routes/branches.py |
PATCH /branches/{branch_id} |
api | healthy | src/compendium/api/routes/branches.py |
GET /{card_number}/fines |
api | healthy | src/compendium/api/routes/fines.py |
POST /{card_number}/fines/assess-overdue |
api | healthy | src/compendium/api/routes/fines.py |
POST / |
api | healthy | src/compendium/api/routes/fines.py |
POST /{fine_id}/pay |
api | healthy | src/compendium/api/routes/fines.py |
POST /{fine_id}/waive |
api | healthy | src/compendium/api/routes/fines.py |
GET /fines |
api | healthy | src/compendium/api/routes/fines.py |
PATCH /creators/{creator_id} |
api | healthy | src/compendium/api/routes/creators.py |
POST /auth/login |
api | healthy | src/compendium/api/routes/auth.py |
POST /households |
api | healthy | src/compendium/api/routes/households.py |
GET /households |
api | healthy | src/compendium/api/routes/households.py |
GET /households/{household_id} |
api | healthy | src/compendium/api/routes/households.py |
PATCH /households/{household_id} |
api | healthy | src/compendium/api/routes/households.py |
DELETE /households/{household_id} |
api | healthy | src/compendium/api/routes/households.py |
POST /households/{household_id}/members |
api | healthy | src/compendium/api/routes/households.py |
DELETE /households/{household_id}/members/{card_number} |
api | healthy | src/compendium/api/routes/households.py |
GET /items/{barcode} |
api | healthy | src/compendium/api/routes/items.py |
POST /items/{barcode}/withdraw |
api | healthy | src/compendium/api/routes/items.py |
PATCH /items/{barcode} |
api | healthy | src/compendium/api/routes/items.py |
POST /items/{barcode}/loanable |
api | healthy | src/compendium/api/routes/items.py |
GET /items/{barcode}/notes |
api | healthy | src/compendium/api/routes/items.py |
POST /items/{barcode}/notes |
api | healthy | src/compendium/api/routes/items.py |
DELETE /items/{barcode}/notes/{note_id} |
api | healthy | src/compendium/api/routes/items.py |
POST /items/{barcode}/lost |
api | healthy | src/compendium/api/routes/items.py |
POST /items/{barcode}/damaged |
api | healthy | src/compendium/api/routes/items.py |
POST /items/{barcode}/clear-damage |
api | healthy | src/compendium/api/routes/items.py |
POST /items/{barcode}/clear-lost |
api | healthy | src/compendium/api/routes/items.py |
GET /patron-categories/ |
api | healthy | src/compendium/api/routes/patron_categories.py |
POST /patron-categories/ |
api | healthy | src/compendium/api/routes/patron_categories.py |
PATCH /patron-categories/{category_id} |
api | healthy | src/compendium/api/routes/patron_categories.py |
DELETE /patron-categories/{category_id} |
api | healthy | src/compendium/api/routes/patron_categories.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
Base |
data | healthy | src/compendium/domain/models.py |
MediaType |
data | healthy | src/compendium/domain/models.py |
Branch |
data | healthy | src/compendium/domain/models.py |
Creator |
data | healthy | src/compendium/domain/models.py |
WorkCreator |
data | healthy | src/compendium/domain/models.py |
Work |
data | healthy | src/compendium/domain/models.py |
Item |
data | healthy | src/compendium/domain/models.py |
ItemNote |
data | healthy | src/compendium/domain/models.py |
Role |
data | healthy | src/compendium/domain/models.py |
AppUser |
data | healthy | src/compendium/domain/models.py |
CuratedList |
data | healthy | src/compendium/domain/models.py |
CuratedListEntry |
data | healthy | src/compendium/domain/models.py |
Household |
data | healthy | src/compendium/domain/models.py |
PatronCategory |
data | healthy | src/compendium/domain/models.py |
Patron |
data | healthy | src/compendium/domain/models.py |
Loan |
data | healthy | src/compendium/domain/models.py |
LoanPolicy |
data | healthy | src/compendium/domain/models.py |
Hold |
data | healthy | src/compendium/domain/models.py |
Fine |
data | healthy | src/compendium/domain/models.py |
Notification |
data | healthy | src/compendium/domain/models.py |
AuditLog |
data | healthy | src/compendium/domain/models.py |
SiteSetting |
data | healthy | src/compendium/domain/models.py |
Counter |
data | healthy | src/compendium/domain/models.py |
FailedLogin |
data | healthy | src/compendium/domain/models.py |
LibraryHours |
data | healthy | src/compendium/domain/models.py |
ClosedDate |
data | healthy | src/compendium/domain/models.py |
MetadataCache |
data | healthy | src/compendium/domain/models.py |
ScanPairing |
data | healthy | src/compendium/domain/models.py |
ScanEvent |
data | healthy | src/compendium/domain/models.py |
ScanPendingItem |
data | healthy | src/compendium/domain/models.py |
media_type |
data | healthy | src/compendium/domain/models.py |
branch |
data | healthy | src/compendium/domain/models.py |
creator |
data | healthy | src/compendium/domain/models.py |
work_creator |
data | healthy | src/compendium/domain/models.py |
work |
data | healthy | src/compendium/domain/models.py |
item |
data | healthy | src/compendium/domain/models.py |
item_note |
data | healthy | src/compendium/domain/models.py |
role |
data | healthy | src/compendium/domain/models.py |
app_user |
data | healthy | src/compendium/domain/models.py |
curated_list |
data | healthy | src/compendium/domain/models.py |
curated_list_entry |
data | healthy | src/compendium/domain/models.py |
household |
data | healthy | src/compendium/domain/models.py |
patron_category |
data | healthy | src/compendium/domain/models.py |
patron |
data | healthy | src/compendium/domain/models.py |
loan |
data | healthy | src/compendium/domain/models.py |
loan_policy |
data | healthy | src/compendium/domain/models.py |
hold |
data | healthy | src/compendium/domain/models.py |
fine |
data | healthy | src/compendium/domain/models.py |
notification |
data | healthy | src/compendium/domain/models.py |
audit_log |
data | healthy | src/compendium/domain/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 |
|---|---|---|---|
docker |
software | healthy | docker |
nginx |
software | healthy | docker/nginx |
compendium |
software | healthy | docker/compendium |
tests |
software | healthy | tests |
integration |
software | healthy | tests/integration |
unit |
software | healthy | tests/unit |
services |
software | healthy | tests/unit/services |
postgres |
software | healthy | tests/postgres |
visual |
software | healthy | tests/visual |
e2e |
software | healthy | tests/e2e |
docs |
software | healthy | docs |
scripts |
software | healthy | scripts |
.github |
software | healthy | .github |
workflows |
software | healthy | .github/workflows |
src |
software | healthy | src |
compendium |
software | healthy | src/compendium |
config |
software | healthy | src/compendium/config |
api |
software | healthy | src/compendium/api |
routes |
software | healthy | src/compendium/api/routes |
cli |
software | healthy | src/compendium/cli |
commands |
software | healthy | src/compendium/cli/commands |
web |
software | healthy | src/compendium/web |
static |
software | healthy | src/compendium/web/static |
zxing |
software | healthy | src/compendium/web/static/zxing |
templates |
software | healthy | src/compendium/web/templates |
households |
software | healthy | src/compendium/web/templates/households |
users |
software | healthy | src/compendium/web/templates/users |
notifications |
software | healthy | src/compendium/web/templates/notifications |
fines |
software | healthy | src/compendium/web/templates/fines |
_partials |
software | healthy | src/compendium/web/templates/_partials |
kiosk |
software | healthy | src/compendium/web/templates/kiosk |
lists |
software | healthy | src/compendium/web/templates/lists |
catalog |
software | healthy | src/compendium/web/templates/catalog |
audit |
software | healthy | src/compendium/web/templates/audit |
roles |
software | healthy | src/compendium/web/templates/roles |
patrons |
software | healthy | src/compendium/web/templates/patrons |
admin |
software | healthy | src/compendium/web/templates/admin |
curated_lists |
software | healthy | src/compendium/web/templates/curated_lists |
me |
software | healthy | src/compendium/web/templates/me |
policies |
software | healthy | src/compendium/web/templates/policies |
items |
software | healthy | src/compendium/web/templates/items |
scan |
software | healthy | src/compendium/web/templates/scan |
branches |
software | healthy | src/compendium/web/templates/branches |
reports |
software | healthy | src/compendium/web/templates/reports |
labels |
software | healthy | src/compendium/web/templates/labels |
creators |
software | healthy | src/compendium/web/templates/creators |
circ |
software | healthy | src/compendium/web/templates/circ |
routes |
software | healthy | src/compendium/web/routes |
services |
software | healthy | src/compendium/services |
notifications |
software | healthy | src/compendium/services/notifications |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
test_settings_migration.py |
data | healthy | tests/unit/test_settings_migration.py |
env.py |
data | healthy | src/compendium/migrations/env.py |
b2c3d4e5f6a7_add_counters_table.py |
data | healthy | src/compendium/migrations/versions/b2c3d4e5f6a7_add_counter… |
cec97d4626cf_initial_schema.py |
data | healthy | src/compendium/migrations/versions/cec97d4626cf_initial_sch… |
a8b9c0d1e2f3_add_branch_location_code.py |
data | healthy | src/compendium/migrations/versions/a8b9c0d1e2f3_add_branch_… |
d0e1f2a3b4c5_add_site_setting.py |
data | healthy | src/compendium/migrations/versions/d0e1f2a3b4c5_add_site_se… |
e9f0a1b2c3d4_fix_failed_login_id_type.py |
data | healthy | src/compendium/migrations/versions/e9f0a1b2c3d4_fix_failed_… |
6e72f68cf15a_add_auth.py |
data | healthy | src/compendium/migrations/versions/6e72f68cf15a_add_auth.py |
c1d2e3f4a5b6_add_branch_classification_scheme.py |
data | healthy | src/compendium/migrations/versions/c1d2e3f4a5b6_add_branch_… |
1b17e2ba445c_consolidate_barcode_settings.py |
data | healthy | src/compendium/migrations/versions/1b17e2ba445c_consolidate… |
e1f2a3b4c5d6_split_admin_roles.py |
data | healthy | src/compendium/migrations/versions/e1f2a3b4c5d6_split_admin… |
b8c9d0e1f2a3_add_patron_categories.py |
data | healthy | src/compendium/migrations/versions/b8c9d0e1f2a3_add_patron_… |
443891bfaa50_add_item_note.py |
data | healthy | src/compendium/migrations/versions/443891bfaa50_add_item_no… |
c4d5e6f7a8b9_add_library_calendar.py |
data | healthy | src/compendium/migrations/versions/c4d5e6f7a8b9_add_library… |
d7e8f9a0b1c2_add_work_sort_title.py |
data | healthy | src/compendium/migrations/versions/d7e8f9a0b1c2_add_work_so… |
b1c2d3e4f5a6_add_curated_list.py |
data | healthy | src/compendium/migrations/versions/b1c2d3e4f5a6_add_curated… |
d3e4f5a6b7c8_add_scan_event_and_pending.py |
data | healthy | src/compendium/migrations/versions/d3e4f5a6b7c8_add_scan_ev… |
f2a3b4c5d6e7_add_failed_login_table.py |
data | healthy | src/compendium/migrations/versions/f2a3b4c5d6e7_add_failed_… |
a7b8c9d0e1f2_add_hold_held_item.py |
data | healthy | src/compendium/migrations/versions/a7b8c9d0e1f2_add_hold_he… |
e5f6a7b8c9d0_add_fines.py |
data | healthy | src/compendium/migrations/versions/e5f6a7b8c9d0_add_fines.py |
a9b9ea15933f_add_holds_and_loan_policies.py |
data | healthy | src/compendium/migrations/versions/a9b9ea15933f_add_holds_a… |
11dbd4cede12_add_search_text_and_fts.py |
data | healthy | src/compendium/migrations/versions/11dbd4cede12_add_search_… |
fab1c2d3e4f5_patron_account_manage.py |
data | healthy | src/compendium/migrations/versions/fab1c2d3e4f5_patron_acco… |
c3d4e5f6a7b8_revamp_identifiers.py |
data | healthy | src/compendium/migrations/versions/c3d4e5f6a7b8_revamp_iden… |
5b9e539aca65_add_household_model.py |
data | healthy | src/compendium/migrations/versions/5b9e539aca65_add_househo… |
f6a7b8c9d0e1_add_notifications.py |
data | healthy | src/compendium/migrations/versions/f6a7b8c9d0e1_add_notific… |
c2d3e4f5a6b7_add_scan_pairing.py |
data | healthy | src/compendium/migrations/versions/c2d3e4f5a6b7_add_scan_pa… |
a1b2c3d4e5f6_add_app_user_password_changed_at.py |
data | healthy | src/compendium/migrations/versions/a1b2c3d4e5f6_add_app_use… |
d4e5f6a7b8c9_add_item_loanable.py |
data | healthy | src/compendium/migrations/versions/d4e5f6a7b8c9_add_item_lo… |
611abe9ea6e5_add_metadata_cache.py |
data | healthy | src/compendium/migrations/versions/611abe9ea6e5_add_metadat… |
b3c4d5e6f7a8_add_audit_log.py |
data | healthy | src/compendium/migrations/versions/b3c4d5e6f7a8_add_audit_l… |
c9d0e1f2a3b4_add_hold_suspend.py |
data | healthy | src/compendium/migrations/versions/c9d0e1f2a3b4_add_hold_su… |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::tests/unit/test_settings_secret_file.py |
security | healthy | tests/unit/test_settings_secret_file.py |
auth::src/compendium/services/auth.py |
security | healthy | src/compendium/services/auth.py |
auth::README.md |
security | healthy | README.md |
auth::.github/workflows/release.yml |
security | healthy | .github/workflows/release.yml |
auth::src/compendium/api/app.py |
security | healthy | src/compendium/api/app.py |
auth::tests/helpers.py |
security | healthy | tests/helpers.py |
auth::src/compendium/web/deps.py |
security | healthy | src/compendium/web/deps.py |
auth::tests/integration/test_api_authz.py |
security | healthy | tests/integration/test_api_authz.py |
auth::src/compendium/cli/commands/keygen.py |
security | healthy | src/compendium/cli/commands/keygen.py |
auth::docker/README.md |
security | healthy | docker/README.md |
auth::src/compendium/api/deps.py |
security | healthy | src/compendium/api/deps.py |
auth::src/compendium/api/routes/me.py |
security | healthy | src/compendium/api/routes/me.py |
auth::tests/unit/test_startup_warning.py |
security | healthy | tests/unit/test_startup_warning.py |
auth::docker/.env.example |
security | healthy | docker/.env.example |
auth::src/compendium/services/settings_registry.py |
security | healthy | src/compendium/services/settings_registry.py |
auth::src/compendium/cli/commands/settings.py |
security | healthy | src/compendium/cli/commands/settings.py |
| Label | Layer | Status | Path |
|---|---|---|---|
password_literal::tests/integration/test_rate_limit_login.py |
security | healthy | tests/integration/test_rate_limit_login.py |
password_literal::tests/integration/test_import_export_web.… |
security | healthy | tests/integration/test_import_export_web.py |
password_literal::tests/unit/test_patron_service_account.py |
security | healthy | tests/unit/test_patron_service_account.py |
password_literal::tests/unit/test_patron_service_account.py |
security | healthy | tests/unit/test_patron_service_account.py |
password_literal::tests/unit/test_patron_service_account.py |
security | healthy | tests/unit/test_patron_service_account.py |
password_literal::tests/unit/test_patron_service_account.py |
security | healthy | tests/unit/test_patron_service_account.py |
password_literal::tests/unit/test_patron_service_account.py |
security | healthy | tests/unit/test_patron_service_account.py |
password_literal::tests/unit/test_auth_service.py |
security | healthy | tests/unit/test_auth_service.py |
password_literal::tests/unit/test_auth_service.py |
security | healthy | tests/unit/test_auth_service.py |
password_literal::tests/unit/test_auth_service.py |
security | healthy | tests/unit/test_auth_service.py |
password_literal::tests/unit/test_auth_service.py |
security | healthy | tests/unit/test_auth_service.py |
password_literal::tests/unit/test_auth_service.py |
security | healthy | tests/unit/test_auth_service.py |
password_literal::tests/e2e/conftest.py |
security | healthy | tests/e2e/conftest.py |
password_literal::tests/e2e/conftest.py |
security | healthy | tests/e2e/conftest.py |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | docker/docker-compose.yml |
1.2.3.4 |
network | healthy | tests/integration/test_rate_limit_login.py |
8.8.8.8 |
network | healthy | tests/unit/test_rate_limit_service.py |
10.0.0.1 |
network | healthy | tests/unit/test_rate_limit_service.py |
10.0.0.2 |
network | healthy | tests/unit/test_rate_limit_service.py |
9.9.9.9 |
network | healthy | tests/unit/test_rate_limit_service.py |
172.17.0.2 |
network | healthy | src/compendium/config/settings.py |
| Label | Layer | Status | Path |
|---|---|---|---|
sqlite |
data | healthy | README.md |
postgres |
data | healthy | README.md |
postgresql |
data | healthy | README.md |
redis |
data | healthy | docker/README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
image::docker/Dockerfile |
hardware | healthy | docker/Dockerfile |
db |
hardware | healthy | docker/docker-compose.yml |
compendium |
hardware | healthy | docker/docker-compose.yml |
nginx |
hardware | healthy | docker/docker-compose.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
nginx |
network | healthy | README.md |
caddy |
network | healthy | docker/README.md |
traefik |
network | healthy | docker/README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
port:5432 |
network | healthy | docker/README.md |
port:8000 |
network | healthy | docker/Dockerfile |
| Label | Layer | Status | Path |
|---|---|---|---|
publish-pypi |
cicd | healthy | .github/workflows/release.yml |
publish-image |
cicd | healthy | .github/workflows/release.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-aci2swr5 |
software | healthy | /tmp/repobility-clone-aci2swr5 |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::release |
cicd | healthy | .github/workflows/release.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
GITHUB_TOKEN |
cicd | healthy | — |
This page is publicly accessible at:
https://repobility.com/scan/b72a777a-78f2-4948-8479-da8a81a22b70/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/b72a777a-78f2-4948-8479-da8a81a22b70/
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.