https://github.com/discord/access
· scanned 2026-06-17 01:57 UTC (1 month, 1 week ago)
106 raw signals (0 security + 106 graph)
Last scanned 1 month, 1 week ago · v2 · last Δ -15.5 (diff) · 70 actionable findings from 1 signal source. 36 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 2511 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 |
|---|---|---|---|
resolveBackendPort |
software | healthy | vite.config.ts:resolveBackendPort |
_mock_okta |
software | healthy | tests/test_zombie_role_requests.py:25 |
_access_owner |
software | healthy | tests/test_zombie_role_requests.py:35 |
_pending_role_request |
software | healthy | tests/test_zombie_role_requests.py:41 |
test_unmanage_group_rejects_pending_role_request_for_group |
software | healthy | tests/test_zombie_role_requests.py:60 |
test_delete_group_rejects_pending_role_request_for_group |
software | healthy | tests/test_zombie_role_requests.py:78 |
test_unmanage_group_rejects_pending_role_request_where_grou… |
software | healthy | tests/test_zombie_role_requests.py:97 |
test_delete_group_rejects_pending_role_request_where_group_… |
software | healthy | tests/test_zombie_role_requests.py:115 |
app |
software | healthy | tests/conftest.py:54 |
db |
software | healthy | tests/conftest.py:75 |
request |
software | healthy | tests/conftest.py:136 |
_stringify_datetimes |
software | healthy | tests/conftest.py:143 |
client |
software | healthy | tests/conftest.py:160 |
mock_user |
software | healthy | tests/conftest.py:169 |
_set |
software | healthy | tests/conftest.py:173 |
url_for |
software | healthy | tests/conftest.py:188 |
_url_for |
software | healthy | tests/conftest.py:191 |
test_disallow_self_add_modify_group_users |
software | healthy | tests/test_disallow_self_add_constraint.py:27 |
test_disallow_self_add_modify_role_groups |
software | healthy | tests/test_disallow_self_add_constraint.py:403 |
test_disallow_self_add_admin_modify_group_users |
software | healthy | tests/test_disallow_self_add_constraint.py:952 |
test_disallow_self_add_admin_modify_role_groups |
software | healthy | tests/test_disallow_self_add_constraint.py:1435 |
test_get_role_request |
software | healthy | tests/test_role_request.py:40 |
test_get_role_request_includes_nested_role_and_group_data |
software | healthy | tests/test_role_request.py:138 |
test_put_role_request |
software | healthy | tests/test_role_request.py:190 |
test_put_role_request_by_non_owner |
software | healthy | tests/test_role_request.py:295 |
test_create_role_request |
software | healthy | tests/test_role_request.py:401 |
test_create_role_request_not_role_owner |
software | healthy | tests/test_role_request.py:438 |
test_get_all_role_request |
software | healthy | tests/test_role_request.py:494 |
test_create_role_request_notification |
software | healthy | tests/test_role_request.py:537 |
test_create_app_role_request_notification |
software | healthy | tests/test_role_request.py:583 |
test_get_all_possible_role_request_approvers |
software | healthy | tests/test_role_request.py:679 |
test_role_request_approvers_tagged |
software | healthy | tests/test_role_request.py:709 |
test_resolve_app_role_request_notification |
software | healthy | tests/test_role_request.py:764 |
test_auto_resolve_create_role_request |
software | healthy | tests/test_role_request.py:878 |
test_auto_resolve_create_role_request_with_time_limit_const… |
software | healthy | tests/test_role_request.py:1007 |
test_time_limit_constraint_tag |
software | healthy | tests/test_role_request.py:1075 |
test_owner_cant_add_self_constraint_tag |
software | healthy | tests/test_role_request.py:1154 |
test_role_request_approval_via_direct_add |
software | healthy | tests/test_role_request.py:1246 |
test_role_request_list_filters_via_http |
software | healthy | tests/test_role_request.py:1342 |
ids |
software | healthy | tests/test_role_request.py:1381 |
test_get_role_request_detail_requested_group_for_app_group |
software | healthy | tests/test_role_request.py:1409 |
test_put_role_request_pending_check_includes_resolved_at |
software | healthy | tests/test_role_request.py:1465 |
test_audit_user_default_order_by_created_at_desc |
software | healthy | tests/test_query_models.py:30 |
test_audit_groups_default_order_by_created_at_desc |
software | healthy | tests/test_query_models.py:36 |
test_audit_order_by_rejects_unknown_value |
software | healthy | tests/test_query_models.py:42 |
test_search_groups_managed_accepts_truthy_strings |
software | healthy | tests/test_query_models.py:53 |
test_search_groups_managed_rejects_garbage |
software | healthy | tests/test_query_models.py:58 |
test_audit_user_carries_owner_id_role_owner_app_owner_etc |
software | healthy | tests/test_query_models.py:66 |
test_audit_groups_carries_role_owner_id |
software | healthy | tests/test_query_models.py:85 |
test_role_request_carries_role_id |
software | healthy | tests/test_query_models.py:90 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
.env.psql.example |
software | healthy | .env.psql.example |
tsconfig.paths.json |
software | healthy | tsconfig.paths.json |
.ruff.toml |
software | healthy | .ruff.toml |
vite.config.ts |
software | healthy | vite.config.ts |
requirements.txt |
software | healthy | requirements.txt |
package-lock.json |
software | healthy | package-lock.json |
README.md |
software | healthy | README.md |
Makefile |
software | healthy | Makefile |
setup.py |
software | healthy | setup.py |
LICENSE |
software | healthy | LICENSE |
docker-compose.yml |
software | healthy | docker-compose.yml |
openapi-codegen.config.ts |
software | healthy | openapi-codegen.config.ts |
package.json |
software | healthy | package.json |
index.html |
software | healthy | index.html |
.env.production.example |
software | healthy | .env.production.example |
POST_MIGRATION_TODO.md |
software | healthy | POST_MIGRATION_TODO.md |
Dockerfile |
software | healthy | Dockerfile |
tsconfig.json |
software | healthy | tsconfig.json |
test_zombie_role_requests.py |
software | healthy | tests/test_zombie_role_requests.py |
conftest.py |
software | healthy | tests/conftest.py |
test_disallow_self_add_constraint.py |
software | healthy | tests/test_disallow_self_add_constraint.py |
test_role_request.py |
software | healthy | tests/test_role_request.py |
__init__.py |
software | healthy | tests/__init__.py |
test_query_models.py |
software | healthy | tests/test_query_models.py |
test_access_request.py |
software | healthy | tests/test_access_request.py |
test_okta_retries.py |
software | healthy | tests/test_okta_retries.py |
test_app.py |
software | healthy | tests/test_app.py |
test_role.py |
software | healthy | tests/test_role.py |
test_user_sync.py |
software | healthy | tests/test_user_sync.py |
test_group.py |
software | healthy | tests/test_group.py |
test_group_sync.py |
software | healthy | tests/test_group_sync.py |
test_expiring_access_notifications.py |
software | healthy | tests/test_expiring_access_notifications.py |
test_require_reason_constraint.py |
software | healthy | tests/test_require_reason_constraint.py |
test_access_config.py |
software | healthy | tests/test_access_config.py |
test_role_memberships_fix.py |
software | healthy | tests/test_role_memberships_fix.py |
test_health_check.py |
software | healthy | tests/test_health_check.py |
test_audit.py |
software | healthy | tests/test_audit.py |
test_group_ownership_sync.py |
software | healthy | tests/test_group_ownership_sync.py |
test_log_filters.py |
software | healthy | tests/test_log_filters.py |
test_time_limit_constraint.py |
software | healthy | tests/test_time_limit_constraint.py |
test_approve_reject_stale_state.py |
software | healthy | tests/test_approve_reject_stale_state.py |
test_okta_service.py |
software | healthy | tests/test_okta_service.py |
test_request_observability_middleware.py |
software | healthy | tests/test_request_observability_middleware.py |
test_group_request.py |
software | healthy | tests/test_group_request.py |
test_request_models.py |
software | healthy | tests/test_request_models.py |
test_group_membership_sync.py |
software | healthy | tests/test_group_membership_sync.py |
test_bugs.py |
software | healthy | tests/test_bugs.py |
test_notification_metrics.py |
software | healthy | tests/test_notification_metrics.py |
test_config.py |
software | healthy | tests/test_config.py |
test_expire_access_request.py |
software | healthy | tests/test_expire_access_request.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
_DatetimeAwareTestClient |
software | healthy | tests/conftest.py:129 |
FakerWithPyStr |
software | healthy | tests/test_app.py:276 |
FakerWithPyStr |
software | healthy | tests/test_group.py:35 |
MockOktaClientContext |
software | healthy | tests/test_okta_service.py:99 |
FakerWithPyStr |
software | healthy | tests/test_group_request.py:38 |
_FakeAsyncClient |
software | healthy | tests/test_bugs.py:45 |
_Key |
software | healthy | tests/test_mcp.py:546 |
_StubJWKS |
software | healthy | tests/test_mcp.py:549 |
GoodPlugin |
software | healthy | tests/test_metrics_reporter_validation.py:24 |
BadPlugin |
software | healthy | tests/test_metrics_reporter_validation.py:35 |
DummyPlugin |
software | healthy | tests/test_app_group_lifecycle_plugin.py:44 |
TestPluginRegistration |
software | healthy | tests/test_app_group_lifecycle_plugin.py:226 |
TestPluginAPIEndpoints |
software | healthy | tests/test_app_group_lifecycle_plugin.py:246 |
TestPluginConfigAuthorization |
software | healthy | tests/test_app_group_lifecycle_plugin.py:335 |
TestPluginHelperFunctions |
software | healthy | tests/test_app_group_lifecycle_plugin.py:572 |
TestPluginValidation |
software | healthy | tests/test_app_group_lifecycle_plugin.py:621 |
TestPluginDataRestore |
software | healthy | tests/test_app_group_lifecycle_plugin.py:737 |
TestPluginDirectFunctions |
software | healthy | tests/test_app_group_lifecycle_plugin.py:830 |
TestPluginGroupUpdatedHook |
software | healthy | tests/test_app_group_lifecycle_plugin.py:890 |
TestPluginGroupDeletedOnTypeChange |
software | healthy | tests/test_app_group_lifecycle_plugin.py:1068 |
TestPluginGroupCreatedOnTypeChange |
software | healthy | tests/test_app_group_lifecycle_plugin.py:1173 |
TestPluginMembershipHooks |
software | healthy | tests/test_app_group_lifecycle_plugin.py:1269 |
TestPluginAuditLogging |
software | healthy | tests/test_app_group_lifecycle_plugin.py:1810 |
GroupProfileFactory |
software | healthy | tests/factories.py:28 |
Meta |
software | healthy | tests/factories.py:262 |
GroupFactory |
software | healthy | tests/factories.py:41 |
UserProfileFactory |
software | healthy | tests/factories.py:71 |
UserFactory |
software | healthy | tests/factories.py:84 |
UserSchemaFactory |
software | healthy | tests/factories.py:112 |
OktaUserFactory |
software | healthy | tests/factories.py:174 |
AppFactory |
software | healthy | tests/factories.py:188 |
OktaGroupFactory |
software | healthy | tests/factories.py:198 |
RoleGroupFactory |
software | healthy | tests/factories.py:211 |
AppGroupFactory |
software | healthy | tests/factories.py:224 |
AccessRequestFactory |
software | healthy | tests/factories.py:240 |
RoleRequestFactory |
software | healthy | tests/factories.py:249 |
TagFactory |
software | healthy | tests/factories.py:258 |
RequestIdMiddleware |
software | healthy | api/middleware.py:74 |
RequestContextMiddleware |
software | healthy | api/middleware.py:118 |
SecurityHeadersMiddleware |
software | healthy | api/middleware.py:133 |
CacheControlMiddleware |
software | healthy | api/middleware.py:149 |
RequestObservabilityMiddleware |
software | healthy | api/middleware.py:164 |
GroupsAndUsers |
software | healthy | api/syncer.py:546 |
UndefinedConfigKeyError |
software | healthy | api/access_config.py:14 |
ConfigFileNotFoundError |
software | healthy | api/access_config.py:19 |
ConfigValidationError |
software | healthy | api/access_config.py:24 |
AccessConfig |
software | healthy | api/access_config.py:29 |
PageParams |
software | healthy | api/pagination.py:27 |
Base |
software | healthy | api/extensions.py:51 |
_DB |
software | healthy | api/extensions.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 |
|---|---|---|---|
/NotFound |
frontend | healthy | src/pages/NotFound.tsx |
/Error |
frontend | healthy | src/pages/Error.tsx |
/ComingSoon |
frontend | healthy | src/pages/ComingSoon.tsx |
/Home |
frontend | healthy | src/pages/Home.tsx |
/role_requests/Create |
frontend | healthy | src/pages/role_requests/Create.tsx |
/role_requests/RoleMembers |
frontend | healthy | src/pages/role_requests/RoleMembers.tsx |
/role_requests/List |
frontend | healthy | src/pages/role_requests/List.tsx |
/role_requests/Read |
frontend | healthy | src/pages/role_requests/Read.tsx |
/group_requests/Create |
frontend | healthy | src/pages/group_requests/Create.tsx |
/group_requests/List |
frontend | healthy | src/pages/group_requests/List.tsx |
/group_requests/Read |
frontend | healthy | src/pages/group_requests/Read.tsx |
/groups/CreateUpdate |
frontend | healthy | src/pages/groups/CreateUpdate.tsx |
/groups/Expiring |
frontend | healthy | src/pages/groups/Expiring.tsx |
/groups/AddUsers |
frontend | healthy | src/pages/groups/AddUsers.tsx |
/groups/AddRoles |
frontend | healthy | src/pages/groups/AddRoles.tsx |
/groups/RemoveOwnDirectAccess |
frontend | healthy | src/pages/groups/RemoveOwnDirectAccess.tsx |
/groups/Audit |
frontend | healthy | src/pages/groups/Audit.tsx |
/groups/List |
frontend | healthy | src/pages/groups/List.tsx |
/groups/Delete |
frontend | healthy | src/pages/groups/Delete.tsx |
/groups/BulkRenewal |
frontend | healthy | src/pages/groups/BulkRenewal.tsx |
/groups/Read |
frontend | healthy | src/pages/groups/Read.tsx |
/groups/AppLinkButton |
frontend | healthy | src/pages/groups/AppLinkButton.tsx |
/groups/ExternallyManaged |
frontend | healthy | src/pages/groups/ExternallyManaged.tsx |
/requests/Create |
frontend | healthy | src/pages/requests/Create.tsx |
/requests/List |
frontend | healthy | src/pages/requests/List.tsx |
/requests/Read |
frontend | healthy | src/pages/requests/Read.tsx |
/users/UserAvatar |
frontend | healthy | src/pages/users/UserAvatar.tsx |
/users/Audit |
frontend | healthy | src/pages/users/Audit.tsx |
/users/List |
frontend | healthy | src/pages/users/List.tsx |
/users/Read |
frontend | healthy | src/pages/users/Read.tsx |
/tags/CreateUpdate |
frontend | healthy | src/pages/tags/CreateUpdate.tsx |
/tags/AddApps |
frontend | healthy | src/pages/tags/AddApps.tsx |
/tags/List |
frontend | healthy | src/pages/tags/List.tsx |
/tags/Delete |
frontend | healthy | src/pages/tags/Delete.tsx |
/tags/AddGroups |
frontend | healthy | src/pages/tags/AddGroups.tsx |
/tags/Read |
frontend | healthy | src/pages/tags/Read.tsx |
/apps/CreateUpdate |
frontend | healthy | src/pages/apps/CreateUpdate.tsx |
/apps/List |
frontend | healthy | src/pages/apps/List.tsx |
/apps/Delete |
frontend | healthy | src/pages/apps/Delete.tsx |
/apps/Read |
frontend | healthy | src/pages/apps/Read.tsx |
/apps/components/AppsHeader |
frontend | healthy | src/pages/apps/components/AppsHeader.tsx |
/apps/components/AppsAccordionListGroup |
frontend | healthy | src/pages/apps/components/AppsAccordionListGroup.tsx |
/apps/components/AppsAdminActionGroup |
frontend | healthy | src/pages/apps/components/AppsAdminActionGroup.tsx |
/apps/components/ |
frontend | healthy | src/pages/apps/components/index.tsx |
/roles/Expiring |
frontend | healthy | src/pages/roles/Expiring.tsx |
/roles/RemoveGroups |
frontend | healthy | src/pages/roles/RemoveGroups.tsx |
/roles/Audit |
frontend | healthy | src/pages/roles/Audit.tsx |
/roles/List |
frontend | healthy | src/pages/roles/List.tsx |
/roles/AddGroups |
frontend | healthy | src/pages/roles/AddGroups.tsx |
/roles/BulkRenewal |
frontend | healthy | src/pages/roles/BulkRenewal.tsx |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
ChangeTitle |
frontend | healthy | src/tab-title.tsx |
App |
frontend | healthy | src/App.tsx |
AppGroupLifecyclePluginData |
frontend | healthy | src/components/AppGroupLifecyclePluginData.tsx |
TableTopBar |
frontend | healthy | src/components/TableTopBar.tsx |
InlineReason |
frontend | healthy | src/components/InlineReason.tsx |
Started |
frontend | healthy | src/components/Started.tsx |
DateRangePicker |
frontend | healthy | src/components/DateRange.tsx |
MembershipChip |
frontend | healthy | src/components/MembershipChip.tsx |
AppGroupLifecyclePluginConfigurationForm |
frontend | healthy | src/components/AppGroupLifecyclePluginConfigurationForm.tsx |
StatusFilter |
frontend | healthy | src/components/StatusFilter.tsx |
NumberInput |
frontend | healthy | src/components/NumberInput.tsx |
NavItems |
frontend | healthy | src/components/NavItems.tsx |
BulkRenewalDataGrid |
frontend | healthy | src/components/BulkRenewalDataGrid.tsx |
Crumbs |
frontend | healthy | src/components/Breadcrumbs.tsx |
AccessMethodChip |
frontend | healthy | src/components/AccessMethodChip.tsx |
AccessHistoryTable |
frontend | healthy | src/components/AccessHistoryTable.tsx |
MarkdownDescription |
frontend | healthy | src/components/MarkdownDescription.tsx |
AvatarButton |
frontend | healthy | src/components/AvatarButton.tsx |
LinkTableRow |
frontend | healthy | src/components/LinkTableRow.tsx |
AccessHistory |
frontend | healthy | src/components/AccessHistory.tsx |
Ending |
frontend | healthy | src/components/Ending.tsx |
CreatedReason |
frontend | healthy | src/components/CreatedReason.tsx |
Loading |
frontend | healthy | src/components/Loading.tsx |
MoreTime |
frontend | healthy | src/components/icons/MoreTime.tsx |
TablePaginationActions |
frontend | healthy | src/components/actions/TablePaginationActions.tsx |
NotFound |
frontend | healthy | src/pages/NotFound.tsx |
NotFound |
frontend | healthy | src/pages/Error.tsx |
ComingSoon |
frontend | healthy | src/pages/ComingSoon.tsx |
Home |
frontend | healthy | src/pages/Home.tsx |
CreateRequest |
frontend | healthy | src/pages/role_requests/Create.tsx |
RoleMembers |
frontend | healthy | src/pages/role_requests/RoleMembers.tsx |
ListRoleRequests |
frontend | healthy | src/pages/role_requests/List.tsx |
ReadRoleRequest |
frontend | healthy | src/pages/role_requests/Read.tsx |
CreateRequest |
frontend | healthy | src/pages/group_requests/Create.tsx |
ListGroupRequests |
frontend | healthy | src/pages/group_requests/List.tsx |
ReadGroupRequest |
frontend | healthy | src/pages/group_requests/Read.tsx |
CreateUpdateGroup |
frontend | healthy | src/pages/groups/CreateUpdate.tsx |
ExpiringGroups |
frontend | healthy | src/pages/groups/Expiring.tsx |
AddUsers |
frontend | healthy | src/pages/groups/AddUsers.tsx |
AddRoles |
frontend | healthy | src/pages/groups/AddRoles.tsx |
RemoveOwnDirectAccessDialog |
frontend | healthy | src/pages/groups/RemoveOwnDirectAccess.tsx |
AuditGroup |
frontend | healthy | src/pages/groups/Audit.tsx |
ListGroups |
frontend | healthy | src/pages/groups/List.tsx |
DeleteGroup |
frontend | healthy | src/pages/groups/Delete.tsx |
BulkRenewal |
frontend | healthy | src/pages/groups/BulkRenewal.tsx |
ReadGroup |
frontend | healthy | src/pages/groups/Read.tsx |
AppLink |
frontend | healthy | src/pages/groups/AppLinkButton.tsx |
ExternallyManaged |
frontend | healthy | src/pages/groups/ExternallyManaged.tsx |
CreateRequest |
frontend | healthy | src/pages/requests/Create.tsx |
ListRequests |
frontend | healthy | src/pages/requests/List.tsx |
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 |
api |
software | healthy | api |
plugins |
software | healthy | api/plugins |
schemas |
software | healthy | api/schemas |
operations |
software | healthy | api/operations |
constraints |
software | healthy | api/operations/constraints |
auth |
software | healthy | api/auth |
models |
software | healthy | api/models |
routers |
software | healthy | api/routers |
mcp |
software | healthy | api/mcp |
auth |
software | healthy | api/mcp/auth |
services |
software | healthy | api/services |
.github |
software | healthy | .github |
workflows |
software | healthy | .github/workflows |
examples |
software | healthy | examples |
plugins |
software | healthy | examples/plugins |
app_group_lifecycle_audit_logger |
software | healthy | examples/plugins/app_group_lifecycle_audit_logger |
notifications_slack |
software | healthy | examples/plugins/notifications_slack |
health_check_plugin |
software | healthy | examples/plugins/health_check_plugin |
datadog_metrics_reporter |
software | healthy | examples/plugins/datadog_metrics_reporter |
conditional_access |
software | healthy | examples/plugins/conditional_access |
notifications |
software | healthy | examples/plugins/notifications |
kubernetes |
software | healthy | examples/kubernetes |
src |
software | healthy | src |
api |
software | healthy | src/api |
components |
software | healthy | src/components |
icons |
software | healthy | src/components/icons |
actions |
software | healthy | src/components/actions |
pages |
software | healthy | src/pages |
role_requests |
software | healthy | src/pages/role_requests |
group_requests |
software | healthy | src/pages/group_requests |
groups |
software | healthy | src/pages/groups |
requests |
software | healthy | src/pages/requests |
users |
software | healthy | src/pages/users |
tags |
software | healthy | src/pages/tags |
apps |
software | healthy | src/pages/apps |
components |
software | healthy | src/pages/apps/components |
roles |
software | healthy | src/pages/roles |
config |
software | healthy | src/config |
config |
software | healthy | config |
.claude |
software | healthy | .claude |
migrations |
software | healthy | migrations |
versions |
software | healthy | migrations/versions |
public |
software | healthy | public |
| Label | Layer | Status | Path |
|---|---|---|---|
GET /{spa_path:path} |
api | healthy | api/app.py |
GET /login |
api | healthy | api/auth/oidc.py |
GET /authorize |
api | healthy | api/auth/oidc.py |
GET /logout |
api | healthy | api/auth/oidc.py |
GET / |
api | healthy | api/routers/group_requests.py |
GET /{group_request_id} |
api | healthy | api/routers/group_requests.py |
POST / |
api | healthy | api/routers/group_requests.py |
PUT /{group_request_id} |
api | healthy | api/routers/group_requests.py |
GET /app-group-lifecycle |
api | healthy | api/routers/plugins.py |
GET /app-group-lifecycle/{plugin_id}/app-config-props |
api | healthy | api/routers/plugins.py |
GET /app-group-lifecycle/{plugin_id}/group-config-props |
api | healthy | api/routers/plugins.py |
GET /app-group-lifecycle/{plugin_id}/app-status-props |
api | healthy | api/routers/plugins.py |
GET /app-group-lifecycle/{plugin_id}/group-status-props |
api | healthy | api/routers/plugins.py |
GET /users |
api | healthy | api/routers/audit.py |
GET /groups |
api | healthy | api/routers/audit.py |
GET /{role_id} |
api | healthy | api/routers/roles.py |
GET /{role_id}/audit |
api | healthy | api/routers/roles.py |
GET /{role_id}/members |
api | healthy | api/routers/roles.py |
PUT /{role_id}/members |
api | healthy | api/routers/roles.py |
GET /{role_request_id} |
api | healthy | api/routers/role_requests.py |
PUT /{role_request_id} |
api | healthy | api/routers/role_requests.py |
GET /{app_id} |
api | healthy | api/routers/apps.py |
PUT /{app_id} |
api | healthy | api/routers/apps.py |
DELETE /{app_id} |
api | healthy | api/routers/apps.py |
GET /{access_request_id} |
api | healthy | api/routers/access_requests.py |
PUT /{access_request_id} |
api | healthy | api/routers/access_requests.py |
GET /{tag_id} |
api | healthy | api/routers/tags.py |
PUT /{tag_id} |
api | healthy | api/routers/tags.py |
DELETE /{tag_id} |
api | healthy | api/routers/tags.py |
GET /{user_id} |
api | healthy | api/routers/users.py |
GET /{user_id}/audit |
api | healthy | api/routers/users.py |
GET /{group_id} |
api | healthy | api/routers/groups.py |
PUT /{group_id} |
api | healthy | api/routers/groups.py |
DELETE /{group_id} |
api | healthy | api/routers/groups.py |
GET /{group_id}/audit |
api | healthy | api/routers/groups.py |
GET /{group_id}/members |
api | healthy | api/routers/groups.py |
PUT /{group_id}/members |
api | healthy | api/routers/groups.py |
POST /sentry |
api | healthy | api/routers/bugs.py |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::tests/test_oidc.py |
security | healthy | tests/test_oidc.py |
auth::tests/test_mcp.py |
security | healthy | tests/test_mcp.py |
auth::api/mcp/auth/dev.py |
security | healthy | api/mcp/auth/dev.py |
auth::api/mcp/server.py |
security | healthy | api/mcp/server.py |
auth::api/config.py |
security | healthy | api/config.py |
auth::.env.production.example |
security | healthy | .env.production.example |
auth::api/mcp/prompts.py |
security | healthy | api/mcp/prompts.py |
auth::api/mcp/auth/__init__.py |
security | healthy | api/mcp/auth/__init__.py |
auth::tests/test_log_filters.py |
security | healthy | tests/test_log_filters.py |
auth::api/mcp/auth/cloudflare.py |
security | healthy | api/mcp/auth/cloudflare.py |
auth::api/auth/__init__.py |
security | healthy | api/auth/__init__.py |
auth::api/log_filters.py |
security | healthy | api/log_filters.py |
auth::api/services/okta_service.py |
security | healthy | api/services/okta_service.py |
auth::api/app.py |
security | healthy | api/app.py |
auth::api/exception_handlers.py |
security | healthy | api/exception_handlers.py |
auth::api/auth/cloudflare.py |
security | healthy | api/auth/cloudflare.py |
auth::README.md |
security | healthy | README.md |
auth::api/mcp/auth/oidc.py |
security | healthy | api/mcp/auth/oidc.py |
auth::tests/test_bugs.py |
security | healthy | tests/test_bugs.py |
auth::api/auth/oidc.py |
security | healthy | api/auth/oidc.py |
auth::api/auth/dependencies.py |
security | healthy | api/auth/dependencies.py |
| Label | Layer | Status | Path |
|---|---|---|---|
Base |
data | healthy | api/extensions.py |
OktaUserGroupMember |
data | healthy | api/models/core_models.py |
OktaUser |
data | healthy | api/models/core_models.py |
OktaGroup |
data | healthy | api/models/core_models.py |
RoleGroupMap |
data | healthy | api/models/core_models.py |
App |
data | healthy | api/models/core_models.py |
AccessRequest |
data | healthy | api/models/core_models.py |
RoleRequest |
data | healthy | api/models/core_models.py |
GroupRequest |
data | healthy | api/models/core_models.py |
Tag |
data | healthy | api/models/core_models.py |
OktaGroupTagMap |
data | healthy | api/models/core_models.py |
AppTagMap |
data | healthy | api/models/core_models.py |
okta_group |
data | healthy | api/models/core_models.py |
role_group |
data | healthy | api/models/core_models.py |
app_group |
data | healthy | api/models/core_models.py |
| Label | Layer | Status | Path |
|---|---|---|---|
__init__.py |
data | healthy | migrations/__init__.py |
env.py |
data | healthy | migrations/env.py |
dc768a8ce1ad_align_postgres_enum_and_json_column_.py |
data | healthy | migrations/versions/dc768a8ce1ad_align_postgres_enum_and_js… |
11a0117dabea_group_requests.py |
data | healthy | migrations/versions/11a0117dabea_group_requests.py |
0ed12d651875_add_app_group_lifecycle_plugin_to_app.py |
data | healthy | migrations/versions/0ed12d651875_add_app_group_lifecycle_pl… |
__init__.py |
data | healthy | migrations/versions/__init__.py |
d6db40b0805d_initial_migration.py |
data | healthy | migrations/versions/d6db40b0805d_initial_migration.py |
cbc5bb2f05b7_do_not_renew.py |
data | healthy | migrations/versions/cbc5bb2f05b7_do_not_renew.py |
6d2a03b326f9_role_requests.py |
data | healthy | migrations/versions/6d2a03b326f9_role_requests.py |
| Label | Layer | Status | Path |
|---|---|---|---|
semgrep |
cicd | healthy | .github/workflows/semgrep.yml |
migrations |
cicd | healthy | .github/workflows/db-migrations.yml |
node-lint |
cicd | healthy | .github/workflows/lint.yml |
python-lint |
cicd | healthy | .github/workflows/lint.yml |
openapi-client-drift |
cicd | healthy | .github/workflows/openapi-client-drift.yml |
docker-release |
cicd | healthy | .github/workflows/docker-image.yml |
python-test |
cicd | healthy | .github/workflows/ci.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::semgrep |
cicd | healthy | .github/workflows/semgrep.yml |
gha::db-migrations |
cicd | healthy | .github/workflows/db-migrations.yml |
gha::lint |
cicd | healthy | .github/workflows/lint.yml |
gha::openapi-client-drift |
cicd | healthy | .github/workflows/openapi-client-drift.yml |
gha::docker-image |
cicd | healthy | .github/workflows/docker-image.yml |
gha::ci |
cicd | healthy | .github/workflows/ci.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
image::Dockerfile |
hardware | healthy | Dockerfile |
discord-access |
hardware | healthy | docker-compose.yml |
postgres |
hardware | healthy | docker-compose.yml |
k8s::Namespace::examples/kubernetes/namespace.yaml |
hardware | healthy | examples/kubernetes/namespace.yaml |
k8s::ServiceAccount::examples/kubernetes/service-account.ya… |
hardware | healthy | examples/kubernetes/service-account.yaml |
| Label | Layer | Status | Path |
|---|---|---|---|
k8s::CronJob::examples/kubernetes/cron-job-notify-users.yaml |
hardware | healthy | examples/kubernetes/cron-job-notify-users.yaml |
k8s::CronJob::examples/kubernetes/cron-job-notify-owners.ya… |
hardware | healthy | examples/kubernetes/cron-job-notify-owners.yaml |
k8s::CronJob::examples/kubernetes/cron-job-syncer.yaml |
hardware | healthy | examples/kubernetes/cron-job-syncer.yaml |
k8s::Deployment::examples/kubernetes/deployment.yaml |
hardware | healthy | examples/kubernetes/deployment.yaml |
| Label | Layer | Status | Path |
|---|---|---|---|
SENTRY_AUTH_TOKEN |
cicd | healthy | — |
SENTRY_PROJECT |
cicd | healthy | — |
SEMGREP_APP_TOKEN |
cicd | healthy | — |
SENTRY_ORG |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
postgres |
data | healthy | .env.psql.example |
sqlite |
data | healthy | README.md |
postgresql |
data | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
port:3000 |
network | healthy | vite.config.ts |
port:5432 |
network | healthy | .github/workflows/db-migrations.yml |
port:443 |
network | healthy | examples/kubernetes/service.yaml |
| Label | Layer | Status | Path |
|---|---|---|---|
1.2.3.4 |
network | healthy | tests/test_log_filters.py |
127.0.0.1 |
network | healthy | tests/test_mcp.py |
| Label | Layer | Status | Path |
|---|---|---|---|
discord__access |
software | healthy | /data/fable5_failed_archive/discord__access |
| Label | Layer | Status | Path |
|---|---|---|---|
loadbalancer |
network | healthy | README.md |
This page is publicly accessible at:
https://repobility.com/scan/b2239a8c-3c0b-4a31-b642-f0dc8780c2e1/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/b2239a8c-3c0b-4a31-b642-f0dc8780c2e1/
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.