AI Slop Code RIsk Monitor

goauthentik/authentik

The authentication glue you need.

11.3 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for goauthentik/authentik, a Python project with 25,904 GitHub stars. SynthScan examined 689,849 lines of code across 4709 source files, recording 6216 pattern matches distributed across 22 syntactic categories. The legacy adjusted pattern signal is 11.3 (Moderate pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

11.3
Adjusted Signal
11.3
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
25.9K
Stars
Python
Language
689.8K
Lines of Code
4.7K
Files
6.2K
Pattern Hits
2026-10-12
Scan Date
0.02
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 39.4/100 · MEDIUM

Can maintainers explain intent, assumptions, and trade-offs? 5951 finding(s).

Hallucinated Dependency & Supply Chain Risk 3.4/100 · LOW

Are imports declared and package/API names verified? 143 finding(s).

Agent Over-Engineering Ratio 39.2/100 · MEDIUM

Are wrappers, guards, and repeated structures necessary? 5751 finding(s).

PR Review Velocity Impact 39.7/100 · MEDIUM

Which changes need focused human review? 6216 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 34HIGH 76MEDIUM 42LOW 6064

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 6216 distinct pattern matches across 22 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Hyper-Verbose Identifiers5625 hits · 6446 pts
SeverityFileLineSnippetContext
LOWweb/test/browser/310-user-offboarding.test.ts239async function createAndOpenInternalUser(CODE
LOWweb/scripts/build-locales.ts90async function checkIfEmittedFileCurrent(localeCode: string): Promise<boolean> {CODE
LOWweb/scripts/pseudolocalize.ts54export async function generatePseudoLocaleModule() {CODE
LOWweb/scripts/visual.ts247async function recordStorybookFromWorktree(commit: string, specHash: string): Promise<void> {CODE
LOWweb/scripts/unescape-locale-entities.ts206export async function unescapeOverescapedLitTemplates(directory: string): Promise<SanitizeSummary> {CODE
LOWweb/bundler/mdx-plugin/remark.ts42export function normalizeAdmonitionLabels(source: string): string {CODE
LOWweb/src/admin/blueprints/BlueprintListPage.ts59export function formatBlueprintDescription(item: BlueprintInstance): string | null {CODE
LOW…src/admin/object-attributes/ObjectAttributeListPage.ts23export function formatObjectAttributeType(type?: ObjectAttributeTypeEnum): string {CODE
LOWweb/src/admin/stages/authenticator_webauthn/utils.ts7export function deviceTypeRestrictionPair(item: WebAuthnDeviceType): DualSelectPair {CODE
LOWweb/src/admin/stages/captcha/shared.ts210export function detectProviderFromInstance(stage?: CaptchaStage | null): CaptchaProviderKey {CODE
LOW…ator_validate/AuthenticatorValidateStageFormHelpers.ts47export async function authenticatorWebauthnDeviceTypesListProvider(page = 1, search = "") {CODE
LOWweb/src/admin/brands/Certificates.ts18function createCertificateProvider(allowedKeyTypes?: KeyTypeEnum[]): DataProvider {CODE
LOW…rosoft_entra/MicrosoftEntraProviderPropertyMappings.ts7export async function microsoftEntraPropertyMappingsProvider(page = 1, search = "") {CODE
LOW…rosoft_entra/MicrosoftEntraProviderPropertyMappings.ts23export function makeMicrosoftEntraPropertyMappingsSelector(CODE
LOWweb/src/admin/providers/proxy/ProxyProviderFormForm.ts124function renderForwardSingleSettings(CODE
LOWweb/src/admin/providers/proxy/ProxyProviderFormForm.ts148function renderForwardDomainSettings(CODE
LOWweb/src/admin/providers/saml/SAMLProviderOptions.ts101export function retrieveSignatureAlgorithm(CODE
LOWweb/src/admin/lifecycle/LifecycleRuleForm.ts68function formatContentTypePlaceholder(contentType: ContentTypeEnum): string {CODE
LOWweb/src/admin/navigation/sidebar.ts66export function findSidebarSectionByRoute(CODE
LOWweb/src/admin/agents/AgentForm.ts26function createPolicyBehaviorOptions(): RadioOption<PolicyBehaviorEnum>[] {CODE
LOWweb/src/admin/policies/BoundPoliciesList.ts32export function getPolicyUserGroupRowLabel(item: PolicyBinding): string {CODE
LOWweb/src/admin/requests/RequestRuleForm.ts29function createNotificationModeOptions(): RadioOption<NotificationModeEnum>[] {CODE
LOWweb/src/admin/users/UserActiveForm.ts100export function ToggleUserActivationButton(CODE
LOW…rc/admin/applications/wizard/steps/providers/shared.ts54export function isApplicationTransactionValidationError(CODE
LOWweb/src/admin/sources/kerberos/KerberosSourceForm.ts43function createSyncOutgoingTriggerModeOptions(): RadioOption<SyncOutgoingTriggerModeEnum>[] {CODE
LOWweb/src/admin/sources/ldap/LDAPSourceForm.ts34function createSyncOutgoingTriggerModeOptions(): RadioOption<SyncOutgoingTriggerModeEnum>[] {CODE
LOWweb/src/admin/flows/StageBindingForm.ts41function createInvalidResponseOptions(): RadioOption<InvalidResponseActionEnum>[] {CODE
LOWweb/src/components/notifications/utils.ts16export function createPaginatedNotificationListFrom(CODE
LOWweb/src/components/notifications/utils.ts57export function renderNotificationDrawerPanel({ notifications, api }: DrawerState) {CODE
LOWweb/src/common/collections.ts36export function checkIterableShallowEquality(CODE
LOWweb/src/common/collections.ts53export function checkObjectShallowEquality(CODE
LOW⚡web/src/common/users.ts45export function formatDisambiguatedUserDisplayName(CODE
LOW⚡web/src/common/users.ts50export function formatDisambiguatedUserDisplayName(CODE
LOW⚡web/src/common/users.ts55export function formatDisambiguatedUserDisplayName(CODE
LOWweb/src/common/theme.ts349function pluckCurrentBackgroundURL(CODE
LOWweb/src/common/theme.ts377export function applyBackgroundImageProperty(CODE
LOWweb/src/common/labels.ts124export function formatDeviceChallengeMessage(deviceChallenge?: DeviceChallenge | null): string {CODE
LOWweb/src/common/ui/locale/utils.ts51function getParsedSupportedLocales(): ParsedLocale[] {CODE
LOWweb/src/common/ui/locale/utils.ts204export function formatAcceptLanguageHeader(languageTag: Intl.UnicodeBCP47LocaleIdentifier): string {CODE
LOWweb/src/common/ui/locale/format.ts218export function formatRelativeLocaleDisplayName(CODE
LOWweb/src/common/ui/locale/format.ts244export function formatAutoDetectLocaleDisplayName(detectedLocale?: LocaleDisplay | null) {CODE
LOWweb/src/common/ui/locale/cjk.ts121export function resolveChineseScriptLegacy(candidate: string): HanScriptTag {CODE
LOWweb/src/common/errors/network.ts143export function createSyntheticGenericError(detail?: string): GenericError {CODE
LOWweb/src/common/errors/network.ts175export function composeResponseErrorDescriptor(descriptor: ResponseErrorDescriptor): string {CODE
LOWweb/src/common/helpers/webauthn.ts39export function ensurePublicKeyCredential(assertion?: Credential | null): PublicKeyCredential {CODE
LOWweb/src/common/helpers/webauthn.ts57export function isWebAuthnNotAllowedError(error: unknown): error is DOMException {CODE
LOWweb/src/common/helpers/webauthn.ts64export async function isConditionalMediationAvailable(): Promise<boolean> {CODE
LOWweb/src/common/helpers/webauthn.ts81export function transformCredentialCreateOptions(CODE
LOWweb/src/common/helpers/webauthn.ts117export function transformNewAssertionForServer(newAssertion: PublicKeyCredential): Assertion {CODE
LOWweb/src/common/helpers/webauthn.ts139export function transformCredentialRequestOptions(CODE
LOWweb/src/common/helpers/webauthn.ts177export function transformAssertionForServer(newAssertion: PublicKeyCredential): AuthAssertion {CODE
LOWweb/src/elements/sidebar/expansion.ts25export function parseSidebarExpansionState(value: unknown): SidebarExpansionState {CODE
LOWweb/src/elements/sidebar/expansion.ts36export function readSidebarExpansionState(): SidebarExpansionState {CODE
LOWweb/src/elements/sidebar/expansion.ts62export function clearSidebarExpansionState(): boolean {CODE
LOWweb/src/elements/CodeMirror/shared.ts16export function stringifyCodeMirrorSource(value: unknown, mode: CodeMirrorMode): string {CODE
LOW…/src/elements/buttons/IconEnrollmentTokenCopyButton.ts12export function IconEnrollmentTokenCopyButton(tokenUuid?: string | null): SlottedTemplateResult {CODE
LOWweb/src/elements/decorators/listen.ts127 target.disconnectedCallback = function disconnectedCallbackWrapped(this: T) {CODE
LOWweb/src/elements/decorators/intersection-observer.ts135 this.disconnectedCallback = function disconnectedCallbackWrapper(CODE
LOWweb/src/elements/ak-mdx/remark/remark-admonition.ts100export function normalizeAdmonitionLabels(source: string): string {CODE
LOWweb/src/elements/utils/unsafe.ts18export function assertAKRegisteredElement(CODE
5565 more matches not shown…
Hallucination Indicators34 hits · 350 pts
SeverityFileLineSnippetContext
CRITICALblueprints/default/flow-oobe.yaml112 from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/tasks/tests/test_broker.py148 consumer.query_set.filter.return_value.exclude.assert_called_once_with(CODE
CRITICAL⚡authentik/tasks/tests/test_broker.py182 consumer.query_set.filter.return_value.exclude.assert_called_once_with(CODE
CRITICAL⚡authentik/tasks/tests/test_broker.py185 consumer.query_set.filter.return_value.exclude.return_value.update.assert_called_once_with(CODE
CRITICALauthentik/blueprints/v1/importer.py13from django.core.exceptions import FieldErrorCODE
CRITICALauthentik/stages/captcha/stage.py107 key=self.stage.executor.plan.context.get(PLAN_CONTEXT_CAPTCHA_PRIVATE_KEY),CODE
CRITICALauthentik/stages/consent/stage.py55 token, self.stage.executor.plan.context.get(PLAN_CONTEXT_CONSENT_TOKEN, "")CODE
CRITICALauthentik/stages/authenticator_validate/stage.py81 device_challenges: list[dict] = self.stage.executor.plan.context.get(CODE
CRITICALauthentik/stages/authenticator_validate/stage.py114 for device_challenge in self.stage.executor.plan.context.get(CODE
CRITICALauthentik/stages/authenticator_validate/stage.py139 stages = self.stage.executor.plan.context.get(PLAN_CONTEXT_STAGES, [])CODE
CRITICALauthentik/stages/authenticator_validate/stage.py151 self.stage.executor.plan.context.setdefault(PLAN_CONTEXT_METHOD, "auth_mfa")CODE
CRITICALauthentik/stages/authenticator_validate/stage.py152 self.stage.executor.plan.context.setdefault(PLAN_CONTEXT_METHOD_ARGS, {})CODE
CRITICALauthentik/stages/identification/stage.py226 key=self.stage.executor.plan.context.get(PLAN_CONTEXT_CAPTCHA_PRIVATE_KEY),CODE
CRITICALauthentik/stages/authenticator/util.py8from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/stages/invitation/stage.py4from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/providers/scim/clients/schema.py6from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/admin/apps.py41 from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/admin/tests/test_validate_base_url.py3from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/admin/files/validation.py4from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/admin/files/tests/test_validation.py1from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/lib/models.py59 return self.field.remote_field.model.objects.db_manager(hints=hints).select_subclasses()CODE
CRITICALauthentik/lib/tests/test_utils_time.py6from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/lib/utils/time.py8from django.core.exceptions import ValidationErrorCODE
CRITICALauthentik/lib/expression/evaluator.py12from django.core.exceptions import FieldErrorCODE
CRITICALauthentik/sources/kerberos/sync.py5from django.core.exceptions import FieldErrorCODE
CRITICALauthentik/sources/scim/views/v2/base.py6from django.core.exceptions import FieldErrorCODE
CRITICALauthentik/sources/ldap/tests/test_sync.py8from ldap3.core.exceptions import LDAPInvalidFilterErrorCODE
CRITICALauthentik/sources/ldap/tests/test_models.py7from ldap3.core.exceptions import LDAPConfigurationErrorCODE
CRITICALauthentik/sources/ldap/sync/users.py5from django.core.exceptions import FieldErrorCODE
CRITICALauthentik/sources/ldap/sync/groups.py5from django.core.exceptions import FieldErrorCODE
CRITICALtests/e2e/test_source_ldap_samba.py4from ldap3.core.exceptions import LDAPSessionTerminatedByServerErrorCODE
CRITICALinternal/outpost/radius/handler_pap.go16 fe := flow.NewFlowExecutor(r.Context(), r.pi.flowSlug, r.pi.s.ac.Client.GetConfig(), log.Fields{CODE
CRITICALpackages/ak-guardian/guardian/models.py4from django.core.exceptions import ValidationErrorCODE
CRITICAL…o-dramatiq-postgres/django_dramatiq_postgres/models.py11from django.core.exceptions import ValidationErrorCODE
Empty Error Handlers37 hits · 185 pts
SeverityFileLineSnippetContext
HIGHauthentik/blueprints/v1/importer.py111except DoRollback:CODE
HIGHauthentik/blueprints/v1/importer.py151except ModuleNotFoundError:CODE
HIGH…ntik/blueprints/management/commands/blueprint_shell.py36except FileNotFoundError:CODE
HIGHauthentik/outposts/docker_ssh.py96except OSError:CODE
HIGHauthentik/core/api/tokens.py75except ValueError:CODE
HIGHauthentik/core/api/object_types.py78except ModuleNotFoundError:CODE
HIGH…enterprise/providers/microsoft_entra/clients/groups.py151except ObjectExistsSyncException:CODE
HIGH…nterprise/providers/google_workspace/clients/groups.py135except ObjectExistsSyncException:CODE
HIGHauthentik/stages/email/utils.py66except TemplateDoesNotExist:CODE
HIGHauthentik/providers/scim/clients/exceptions.py28except ValidationError:CODE
HIGHauthentik/providers/oauth2/api/providers.py206except Provider.application.RelatedObjectDoesNotExist:CODE
HIGHauthentik/providers/oauth2/views/provider.py140except OAuth2DynamicClientRegistration.DoesNotExist:CODE
HIGHauthentik/providers/rac/consumer_client.py172except ChannelFull:CODE
HIGHauthentik/providers/rac/consumer_outpost.py38except ChannelFull:CODE
HIGHauthentik/root/settings.py568except ImportError:CODE
HIGHauthentik/root/settings.py559except ImportError:CODE
HIGHauthentik/lib/config.py229except JSONDecodeError:CODE
HIGHauthentik/lib/xml.py41except _RootElement:CODE
HIGHauthentik/lib/tests/test_serializer_model.py27except NotImplementedError:CODE
HIGHauthentik/lib/expression/evaluator.py110except OSError:CODE
HIGHauthentik/lib/sync/outgoing/tasks.py150except NotFoundSyncException:CODE
HIGHauthentik/lib/sync/outgoing/api.py122except ResultError:CODE
HIGHauthentik/lib/sync/outgoing/api.py139except NotImplementedError:CODE
HIGHauthentik/lib/sync/outgoing/exceptions.py21except JSONDecodeError:CODE
HIGHauthentik/sources/scim/views/v2/base.py117except ValueError:CODE
HIGHauthentik/events/api/events.py146except ValueError:CODE
HIGHtests/docker.py122except DockerException:CODE
HIGHtests/docker.py126except DockerException:CODE
HIGHtests/integration/test_outpost_docker.py89except PermissionError:CODE
HIGHtests/integration/test_proxy_docker.py89except PermissionError:CODE
HIGHlifecycle/gunicorn.conf.py184except Exception: # nosec # noqaCODE
HIGH…o-dramatiq-postgres/django_dramatiq_postgres/broker.py592except KeyError:CODE
HIGH…o-dramatiq-postgres/django_dramatiq_postgres/broker.py690except DATABASE_ERRORS:CODE
HIGH…o-dramatiq-postgres/django_dramatiq_postgres/broker.py72except DATABASE_ERRORS:CODE
HIGH…o-dramatiq-postgres/django_dramatiq_postgres/broker.py679except DATABASE_ERRORS:CODE
HIGH…o-dramatiq-postgres/django_dramatiq_postgres/broker.py686except DATABASE_ERRORS:CODE
HIGH…amatiq-postgres/django_dramatiq_postgres/middleware.py193except DatabaseError:CODE
Cross-File Repetition33 hits · 165 pts
SeverityFileLineSnippetContext
HIGHauthentik/core/sources/flow_manager.py0prepare authentication plan, redirect user flowexecutorSTRING
HIGHauthentik/sources/telegram/views.py0prepare authentication plan, redirect user flowexecutorSTRING
HIGHauthentik/sources/saml/views.py0prepare authentication plan, redirect user flowexecutorSTRING
HIGHauthentik/core/api/property_mappings.py0get object component so that we know how to edit the objectSTRING
HIGHauthentik/core/api/providers.py0get object component so that we know how to edit the objectSTRING
HIGHauthentik/core/api/sources.py0get object component so that we know how to edit the objectSTRING
HIGHauthentik/endpoints/api/connectors.py0get object component so that we know how to edit the objectSTRING
HIGHauthentik/policies/api/policies.py0get object component so that we know how to edit the objectSTRING
HIGH…/enterprise/providers/microsoft_entra/clients/users.py0create user from scratch and create a connection objectSTRING
HIGH…enterprise/providers/google_workspace/clients/users.py0create user from scratch and create a connection objectSTRING
HIGHauthentik/providers/scim/clients/users.py0create user from scratch and create a connection objectSTRING
HIGH…enterprise/providers/microsoft_entra/clients/groups.py0create group from scratch and create a connection objectSTRING
HIGH…nterprise/providers/google_workspace/clients/groups.py0create group from scratch and create a connection objectSTRING
HIGHauthentik/providers/scim/clients/groups.py0create group from scratch and create a connection objectSTRING
HIGH…terprise/providers/microsoft_entra/tests/test_users.py0test without group property mappings, no group is createdSTRING
HIGH…erprise/providers/google_workspace/tests/test_users.py0test without group property mappings, no group is createdSTRING
HIGH…erprise/providers/microsoft_entra/tests/test_groups.py0test without group property mappings, no group is createdSTRING
HIGH…rprise/providers/google_workspace/tests/test_groups.py0test without group property mappings, no group is createdSTRING
HIGHauthentik/stages/authenticator_duo/tests.py0a setup stage with enrolled devices cannot be deleted.STRING
HIGHauthentik/stages/authenticator_email/tests.py0a setup stage with enrolled devices cannot be deleted.STRING
HIGHauthentik/stages/authenticator_sms/tests.py0a setup stage with enrolled devices cannot be deleted.STRING
HIGHauthentik/admin/files/backends/tests/test_s3_backend.py0test themed_urls returns dict of urls for each themeSTRING
HIGH…hentik/admin/files/backends/tests/test_file_backend.py0test themed_urls returns dict of urls for each themeSTRING
HIGHauthentik/admin/files/tests/test_manager.py0test themed_urls returns dict of urls for each themeSTRING
HIGHtests/e2e/test_provider_oidc_implicit.py0test openid provider flow (invalid redirect uri, check error message)STRING
HIGHtests/e2e/test_provider_oidc.py0test openid provider flow (invalid redirect uri, check error message)STRING
HIGHtests/e2e/test_provider_oauth2_grafana.py0test openid provider flow (invalid redirect uri, check error message)STRING
HIGHtests/e2e/test_provider_oidc_implicit.py0test openid provider flow (default authorization flow with explicit consent)STRING
HIGHtests/e2e/test_provider_oidc.py0test openid provider flow (default authorization flow with explicit consent)STRING
HIGHtests/e2e/test_provider_oauth2_grafana.py0test openid provider flow (default authorization flow with explicit consent)STRING
HIGHtests/e2e/test_provider_oidc_implicit.py0test openid provider flow (default authorization with access deny)STRING
HIGHtests/e2e/test_provider_oidc.py0test openid provider flow (default authorization with access deny)STRING
HIGHtests/e2e/test_provider_oauth2_grafana.py0test openid provider flow (default authorization with access deny)STRING
Over-Commented Block146 hits · 146 pts
SeverityFileLineSnippetContext
LOWlocales.yaml1# The authoritative list of authentik's UI languages.COMMENT
LOW…rints/example/flows-invitation-enrollment-minimal.yaml1# Minimal Invitation-based Enrollment BlueprintCOMMENT
LOWblueprints/example/flows-invitation-enrollment.yaml1# Example - Invitation-based Enrollment BlueprintCOMMENT
LOWlocale/en/dictionaries/overrides.txt1# Legitimate terms that the spell checker's common-misspellings list wouldCOMMENT
LOWweb/pnpm-workspace.yaml1packages:COMMENT
LOW…s/20240625-add-htmlelementtagnamemaps-to-everything.py1#!/opt/homebrew/bin/python3COMMENT
LOWweb/src/elements/decorators/bound.ts1// Automatically binds a method to the `this` instance during instantiation.COMMENT
LOWauthentik/rbac/filters.py21#COMMENT
LOWauthentik/providers/proxy/tests.py181 # },COMMENT
LOWauthentik/providers/oauth2/id_token.py41 https://www.iana.org/assignments/jwt/jwt.xhtml"""COMMENT
LOWauthentik/lib/default.yml1# authentik configurationCOMMENT
LOWauthentik/lib/default.yml181storage:COMMENT
LOWauthentik/lib/default.yml201 # backend: file # or s3COMMENT
LOWauthentik/lib/tests/test_config.py541 conf["replica_1"]["OPTIONS"]["connect_timeout"],COMMENT
LOWauthentik/lib/tests/test_config.py561 # "default": {COMMENT
LOWauthentik/lib/tests/test_config.py581 # )COMMENT
LOWauthentik/lib/tests/test_config.py601 # ).decode(),COMMENT
LOWinternal/outpost/ak/api_utils_test.go61COMMENT
LOWinternal/outpost/ak/api_utils_test.go81// req := api.ApiOutpostsProxyListRequest{}COMMENT
LOWscripts/compose.tracing.yml1## Local OTLP trace testing.COMMENT
LOWpackages/client-rust/src/models/event_actions.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/shell_challenge.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/user_type_enum.rs1// authentikCOMMENT
LOW…rust/src/models/telegram_challenge_response_request.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/event_request.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/contextual_flow_info.rs1// authentikCOMMENT
LOW…ges/client-rust/src/models/identification_challenge.rs1// authentikCOMMENT
LOW…lient-rust/src/models/open_id_connect_configuration.rs1// authentikCOMMENT
LOW…ges/client-rust/src/models/endpoint_agent_challenge.rs1// authentikCOMMENT
LOW…rust/src/models/o_auth_device_code_finish_challenge.rs1// authentikCOMMENT
LOW…_auth_device_code_finish_challenge_response_request.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/radius_check_access.rs1// authentikCOMMENT
LOW…-rust/src/models/authenticator_validation_challenge.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/password_challenge.rs1// authentikCOMMENT
LOW…ient-rust/src/models/authenticator_static_challenge.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/role.rs1// authentikCOMMENT
LOW…-rust/src/models/consent_challenge_response_request.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/proxy_mode.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/certificate_key_pair.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/certificate_key_pair.rs21 #[serde(COMMENT
LOW…odels/o_auth_device_code_challenge_response_request.rs1// authentikCOMMENT
LOW…nt-rust/src/models/email_challenge_response_request.rs1// authentikCOMMENT
LOW…client-rust/src/models/o_auth_device_code_challenge.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/redirect_challenge.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/stage_prompt.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/flow_message.rs1// authentikCOMMENT
LOW…ckages/client-rust/src/models/apple_login_challenge.rs1// authentikCOMMENT
LOW…t-rust/src/models/prompt_challenge_response_request.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/related_group.rs1// authentikCOMMENT
LOW…ges/client-rust/src/models/telegram_login_challenge.rs1// authentikCOMMENT
LOW…ckages/client-rust/src/models/login_challenge_types.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/login_source.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/log_level_enum.rs1// authentikCOMMENT
LOW…authenticator_validation_challenge_response_request.rs1// authentikCOMMENT
LOW…t-rust/src/models/authenticator_web_authn_challenge.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/config.rs1// authentikCOMMENT
LOWpackages/client-rust/src/models/paginated_brand_list.rs1// authentikCOMMENT
LOW…-rust/src/models/paginated_ldap_outpost_config_list.rs1// authentikCOMMENT
LOW…rust/src/models/paginated_proxy_outpost_config_list.rs1// authentikCOMMENT
LOW…ckages/client-rust/src/models/flow_designation_enum.rs1// authentikCOMMENT
86 more matches not shown…
Self-Referential Comments33 hits · 104 pts
SeverityFileLineSnippetContext
MEDIUM…terprise/policies/unique_password/tests/test_stages.py64 # Create a password history entry manually to simulate the signal behaviorCOMMENT
MEDIUM…nterprise/policies/unique_password/tests/test_flows.py58 # Create a policy request with the reused passwordCOMMENT
MEDIUM⚡…nterprise/policies/unique_password/tests/test_tasks.py22 # Create a UniquePasswordPolicy and a PolicyBinding for itCOMMENT
MEDIUM⚡…nterprise/policies/unique_password/tests/test_tasks.py34 # Create a UniquePasswordPolicy and attach it to a PromptStageCOMMENT
MEDIUM…nterprise/policies/unique_password/tests/test_tasks.py53 # Create a policy with a limit of 1 passwordCOMMENT
MEDIUM…nterprise/policies/unique_password/tests/test_tasks.py86 # Create a policy and bindingCOMMENT
MEDIUM…ntik/stages/authenticator_validate/tests/test_email.py72 # Create a device for our userCOMMENT
MEDIUM…ntik/stages/authenticator_validate/tests/test_email.py143 # Create a device for our userCOMMENT
MEDIUMauthentik/providers/scim/tests/test_client.py278 # Creating a new client should now hit the API again since cache was clearedCOMMENT
MEDIUMauthentik/providers/proxy/controllers/k8s/ingress.py52 # Create a list of all expected host and tls hostsCOMMENT
MEDIUMauthentik/providers/oauth2/utils.py284 # Create the logout token payloadCOMMENT
MEDIUM…ntik/providers/oauth2/tests/test_backchannel_logout.py65 # Create a token with the same issuer that the view will expectCOMMENT
MEDIUMauthentik/providers/oauth2/tests/test_token.py637 # Create a custom scope mapping that returns a custom scope claimCOMMENT
MEDIUMauthentik/providers/oauth2/tests/test_dcr.py302 # Create a separate provider/app without DCRCOMMENT
MEDIUMauthentik/providers/saml/tasks.py111 # Create a minimal LogoutRequest object for the response processorCOMMENT
MEDIUM⚡authentik/providers/saml/tests/test_auth_n_request.py238 # Create a full keypair for the source (SP) - it needs the private key to decryptCOMMENT
MEDIUM⚡authentik/providers/saml/tests/test_auth_n_request.py241 # Create a certificate-only keypair for the provider (IdP)COMMENT
MEDIUMauthentik/providers/saml/tests/test_views_sp_slo.py155 # Create a flow plan with the return URLCOMMENT
MEDIUMauthentik/providers/saml/tests/test_views_sp_slo.py270 # Create a flow plan with the return URLCOMMENT
MEDIUMauthentik/providers/saml/tests/test_api.py84 # Create an Ed25519 certificateCOMMENT
MEDIUMauthentik/providers/saml/tests/test_models_session.py30 # Create a providerCOMMENT
MEDIUMauthentik/providers/saml/tests/test_models_session.py46 # Create a session first (using authentik's custom Session model)COMMENT
MEDIUMauthentik/providers/saml/tests/test_models_session.py52 # Create an authenticated sessionCOMMENT
MEDIUMauthentik/providers/saml/tests/test_models_session.py249 # Create an expired sessionCOMMENT
MEDIUM…/providers/saml/tests/test_logout_request_processor.py29 # Create a signing keypairCOMMENT
MEDIUMauthentik/providers/saml/processors/assertion.py415 # Create a standalone copy so namespace declarations are included in the encrypted contentCOMMENT
MEDIUM⚡…hentik/admin/files/backends/tests/test_file_backend.py40 # Create the directory but keep it emptyCOMMENT
MEDIUMauthentik/sources/ldap/tests/test_sync.py140 # Create the user beforehand so we can set attributes and check they aren't removedCOMMENT
MEDIUMauthentik/sources/ldap/tests/test_sync.py186 # Create the user beforehand so we can set attributes and check they aren't removedCOMMENT
MEDIUMauthentik/sources/saml/processors/request.py150 # Create the full querystring in the correct order to be signedCOMMENT
MEDIUMauthentik/sources/saml/processors/response.py372 # Create a temporary UserCOMMENT
MEDIUMauthentik/events/tasks.py81 # Create the notification objectsCOMMENT
MEDIUM…o-dramatiq-postgres/django_dramatiq_postgres/broker.py499 # This method is called every secondSTRING
Fake / Example Data78 hits · 84 pts
SeverityFileLineSnippetContext
LOWblueprints/schema.json18016 "placeholder": {CODE
LOWweb/src/admin/ak-admin-debug-page.ts73 message: `lorem ipsum ${Date.now()}`,CODE
LOWweb/src/admin/stages/prompt/PromptForm.ts300 <ak-form-element-horizontal label=${msg("Placeholder")} name="placeholder">CODE
LOWweb/src/user/ak-interface-user.ts187 return html`<slot name="placeholder"></slot>`;CODE
LOW…src/styles/authentik/components/Login/flow-loading.css14ak-flow-executor:not(:defined) > :not([slot="placeholder"]) {CODE
LOW…src/styles/authentik/components/Login/login-layout.css135 slot[name="placeholder"] {CODE
LOW…src/styles/authentik/components/Login/login-layout.css154 &:has([slot="placeholder"]),CODE
LOW…src/styles/authentik/components/Login/login-layout.css155 &:has(slot[name="placeholder"]) {CODE
LOW…flow/stages/access_denied/AccessDeniedStage.stories.ts11 title: "lorem ipsum foo bar baz",CODE
LOWweb/src/flow/stages/consent/ConsentStage.stories.ts10 headerText: "lorem ipsum",CODE
LOWweb/src/flow/stages/consent/ConsentStage.stories.ts21 headerText: "lorem ipsum",CODE
LOWweb/src/flow/components/ak-flow-card.stories.ts26 title: "lorem ipsum foo bar baz",CODE
LOWweb/src/flow/components/ak-flow-card.stories.ts57 title: "lorem ipsum foo bar baz",CODE
LOWweb/src/flow/components/ak-flow-card.stories.ts86 title: "lorem ipsum foo bar baz",CODE
LOWauthentik/core/templates/base/placeholder.html3<div class="ak-c-placeholder" id="ak-placeholder" slot="placeholder">CODE
LOW…nterprise/policies/unique_password/tests/test_flows.py92 "placeholder": "PASSWORD_PLACEHOLDER",CODE
LOWauthentik/stages/prompt/api.py63 "placeholder",CODE
LOWauthentik/stages/prompt/api.py84 filterset_fields = ["field_key", "name", "label", "type", "placeholder"]CODE
LOWauthentik/stages/prompt/api.py85 search_fields = ["field_key", "name", "label", "type", "placeholder"]CODE
LOWauthentik/stages/prompt/stage.py232 data["placeholder"] = str(CODE
LOW⚡authentik/stages/prompt/tests.py719 "placeholder": "Hello world",CODE
LOW⚡authentik/stages/prompt/tests.py738 "placeholder": "return [",CODE
LOWauthentik/stages/prompt/tests.py700 "placeholder": 'return "Hello world"',CODE
LOWauthentik/stages/invitation/tests.py288 "email_addresses": ["user@example.com"],CODE
LOWauthentik/stages/invitation/tests.py313 {"email_addresses": ["user@example.com"]},CODE
LOWauthentik/providers/scim/tests/test_schema.py10 Email.model_validate({"value": "foo@bar.com"})CODE
LOWauthentik/policies/password/tests/test_flows.py62 "placeholder": "PASSWORD_PLACEHOLDER",CODE
LOWauthentik/lib/tests/test_evaluator.py151 "[('John Doe', 'john@example.com'), 'Jane Doe <jane@example.com>'], "CODE
LOW⚡authentik/lib/tests/test_utils_email.py17 self.assertEqual(normalize_addresses("user@example.com"), [("", "user@example.com")])CODE
LOW⚡authentik/lib/tests/test_utils_email.py23 [("John Doe", "user@example.com")],CODE
LOW⚡authentik/lib/tests/test_utils_email.py23 [("John Doe", "user@example.com")],CODE
LOW⚡authentik/lib/tests/test_utils_email.py27 [("Doe, John", "user@example.com")],CODE
LOW⚡authentik/lib/tests/test_utils_email.py33 normalize_addresses(("John Doe", "user@example.com")),CODE
LOW⚡authentik/lib/tests/test_utils_email.py33 normalize_addresses(("John Doe", "user@example.com")),CODE
LOW⚡authentik/lib/tests/test_utils_email.py34 [("John Doe", "user@example.com")],CODE
LOW⚡authentik/lib/tests/test_utils_email.py34 [("John Doe", "user@example.com")],CODE
LOW⚡authentik/lib/tests/test_utils_email.py37 normalize_addresses((None, "user@example.com")),CODE
LOW⚡authentik/lib/tests/test_utils_email.py38 [("", "user@example.com")],CODE
LOW⚡authentik/lib/utils/email.py32 - Single email string: "user@example.com"STRING
LOW⚡authentik/lib/utils/email.py34 - (name, email) tuple: ("John Doe", "user@example.com")STRING
LOW⚡authentik/lib/utils/email.py34 - (name, email) tuple: ("John Doe", "user@example.com")STRING
LOW⚡authentik/lib/expression/evaluator.py268 - Single email: "user@example.com"STRING
LOW⚡authentik/lib/expression/evaluator.py270 - (name, email) tuple: ("John Doe", "user@example.com")STRING
LOW⚡authentik/lib/expression/evaluator.py270 - (name, email) tuple: ("John Doe", "user@example.com")STRING
LOW⚡authentik/sources/scim/tests/test_patch.py265 patches = [PatchOperation(op=PatchOp.add, path="address.street", value="123 Main St")]CODE
LOW⚡authentik/sources/scim/tests/test_patch.py268 self.assertEqual(result["address"]["street"], "123 Main St")CODE
LOW⚡authentik/sources/scim/tests/test_patch.py962 self.processor._navigate_and_modify(data_copy, components, "123 Main St", "add")CODE
LOW⚡authentik/sources/scim/tests/test_patch.py964 self.assertEqual(data_copy["profile"]["address"]["street"], "123 Main St")CODE
LOW⚡authentik/sources/scim/tests/test_patch.py988 data_copy["profile"] = {"address": {"street": "123 Main St", "city": "New York"}}CODE
LOW⚡authentik/sources/scim/tests/test_patch.py1005 self.processor._navigate_and_modify(data_copy, components, "123 Main St", "add")CODE
LOW⚡authentik/sources/scim/tests/test_patch.py1007 self.assertEqual(data_copy["profile"]["address"]["street"], "123 Main St")CODE
LOWauthentik/sources/scim/tests/test_patch.py30 "name": {"formatted": "John Doe", "familyName": "Doe", "givenName": "John"},CODE
LOWauthentik/sources/oauth/tests/test_type_slack.py20 "email": "user@example.com",CODE
LOWauthentik/flows/tests/test_api.py199 # "placeholder", purely to draw the fulfilled edge.COMMENT
LOWauthentik/flows/tests/test_api.py200 self.assertNotIn("placeholder", [n["name"] for n in graph["nodes"]])CODE
LOWtests/e2e/test_source_oauth_oauth2.py129 self.driver.find_element(By.ID, "login").send_keys("admin@example.com")CODE
LOWtests/e2e/test_source_oauth_oauth2.py187 self.assert_user(User(username="foo", name="admin", email="admin@example.com"))CODE
LOWtests/e2e/test_source_oauth_oauth2.py213 self.assert_user(User(username="foo", name="admin", email="admin@example.com"))CODE
LOWpackages/client-go/model_stage_prompt.go28 Placeholder string `json:"placeholder"`CODE
LOWpackages/client-go/model_stage_prompt.go296 toSerialize["placeholder"] = o.PlaceholderCODE
18 more matches not shown…
Redundant / Tautological Comments54 hits · 83 pts
SeverityFileLineSnippetContext
LOWblueprints/default/flow-default-source-enrollment.yaml28 # Check if we''ve not been given a username by the external IdPCOMMENT
LOWauthentik/rbac/api/rbac_assigned_by_roles.py46 # Check if we're setting an object-level perm or globalCOMMENT
LOWauthentik/blueprints/v1/tasks.py123 # Check if any part in the path starts with a dot and assume a hidden fileCOMMENT
LOWauthentik/outposts/controllers/docker.py253 # Check if the container is out of date, delete it and retryCOMMENT
LOWauthentik/core/views/apps.py36 # Check if we're authenticated already, saves us the flow runCOMMENT
LOWauthentik/endpoints/connectors/agent/stage.py90 # Check if we're in a device interactive auth flow, in which case we use thatCOMMENT
LOWauthentik/enterprise/stages/source/stage.py97 # Check if token is expired and rotate key if soCOMMENT
LOW…thentik/enterprise/policies/unique_password/signals.py16 # Check if any UniquePasswordPolicy is in useCOMMENT
LOWauthentik/enterprise/policies/unique_password/models.py104 # Check if any policy is in use through bindingsCOMMENT
LOWauthentik/enterprise/policies/unique_password/models.py108 # Check if any policy is attached to a PromptStageCOMMENT
LOWauthentik/stages/user_write/stage.py115 # Check if user has a setter for this key, like set_passwordCOMMENT
LOWauthentik/stages/user_write/stage.py150 # Check if we're writing from a source, and save the source to the attributesCOMMENT
LOWauthentik/stages/user_write/stage.py232 # Check if the password has been updated, and update the session auth hashCOMMENT
LOWauthentik/stages/user_login/stage.py228 # Check if the login request is coming from a known deviceCOMMENT
LOWauthentik/stages/prompt/stage.py102 # Check if we have a password field, add a handler that sends a signalCOMMENT
LOWauthentik/stages/prompt/stage.py121 # Check if we have any static or hidden fields, and ensure theyCOMMENT
LOWauthentik/stages/prompt/stage.py142 # Check if we have two password fields, and make sure they are the sameCOMMENT
LOWauthentik/stages/identification/stage.py164 # Check if this is a passkey authenticationCOMMENT
LOWauthentik/stages/email/stage.py98 # Check if token is expired and rotate key if soCOMMENT
LOWauthentik/stages/email/stage.py142 # Check if the user came back from the email link to verifyCOMMENT
LOWauthentik/stages/email/stage.py145 # Check if we have an actual pending user (no fallbacks, we only care ifCOMMENT
LOWauthentik/stages/email/stage.py160 # Check if we've already sent the initial e-mailCOMMENT
LOWauthentik/providers/oauth2/views/authorize.py552 # Check if we're not already doing the re-authenticationCOMMENT
LOWauthentik/providers/oauth2/views/authorize.py775 # Check if response_type must include access_token in the response.COMMENT
LOWauthentik/providers/oauth2/views/authorize.py785 # Check if response_type must include id_token in the response.COMMENT
LOWauthentik/providers/rac/views.py123 # Check if we're already at the maximum connection limitCOMMENT
LOWauthentik/providers/rac/views.py131 # Check if any other tokens exist for the current user, and inform themCOMMENT
LOWauthentik/providers/saml/tests/test_models_session.py246 # Check if session is expired (ExpiringModel behavior)COMMENT
LOWauthentik/providers/saml/tests/test_models_session.py263 # Check if marked as expiredCOMMENT
LOW…ntik/providers/saml/processors/authn_request_parser.py88 # Check if AuthnRequest has a NameID Policy objectCOMMENT
LOWauthentik/providers/saml/views/sp_slo.py234 # Check if this is a LogoutResponse before doing any authentication checksCOMMENT
LOWauthentik/providers/saml/views/sp_slo.py277 # Check if this is a LogoutResponse before doing any authentication checksCOMMENT
LOWauthentik/admin/tasks.py52 # Check if upstream version is newer than what we're running,COMMENT
LOWauthentik/admin/files/api.py131 # Check if file already existsCOMMENT
LOWauthentik/policies/views.py76 # Check if user is unauthenticated, so we pass the applicationCOMMENT
LOWauthentik/policies/geoip/models.py144 # Check if distance between `previous_login` and now is moreCOMMENT
LOWauthentik/root/test_runner.py168 # Check if the label is a dotted module pathCOMMENT
LOWauthentik/lib/config.py92 # Check if path is relative, and if so join with base_dirCOMMENT
LOWauthentik/lib/config.py226 # Check if the value is json, and try to load itCOMMENT
LOWauthentik/lib/models.py105 # Check if the scheme is valid.COMMENT
LOWauthentik/lib/utils/reflection.py23 # Check if we're in debug mode, if not exclude classes which have `__debug_only__`COMMENT
LOWauthentik/lib/utils/email.py100 if not domain_parts[-1]: # Check if TLD is emptyCODE
LOWauthentik/lib/sync/outgoing/tasks.py54 # Assign tasks to the same schedule as the current oneCOMMENT
LOWauthentik/lib/sync/outgoing/tasks.py276 # Check if the object is allowed within the provider's restrictions.COMMENT
LOWauthentik/lib/sync/outgoing/tasks.py399 # Check if the object is allowed within the provider's restrictions.COMMENT
LOWauthentik/sources/oauth/tasks.py44 # Check if we're actually changing anything to onlyCOMMENT
LOWauthentik/sources/ldap/password.py145 # Check if password contains sAMAccountName or displayNamesCOMMENT
LOWauthentik/sources/saml/processors/response.py95 # Check if response is compressed, b64 decode itCOMMENT
LOWauthentik/events/signals.py79 # Check if this even comes from the user_login stage's middleware, which will set an extraCOMMENT
LOWauthentik/events/models.py238 # Check if we're currently impersonating, and add that userCOMMENT
LOWauthentik/flows/planner.py132 # Check if we actually need to show the Flow executor, or if we can jump straight to the endCOMMENT
LOW⚡tests/openid_conformance/base.py112 # Check if we need to clear cookies - tests only indicates this in their written summaryCOMMENT
LOW⚡tests/openid_conformance/base.py119 # Check if we need deal with any browser URLsCOMMENT
LOW⚡tests/openid_conformance/base.py125 # Check if we need to upload any itemsCOMMENT
Deep Nesting62 hits · 62 pts
SeverityFileLineSnippetContext
LOWauthentik/crypto/tasks.py115CODE
LOWauthentik/blueprints/v1/importer.py175CODE
LOWauthentik/blueprints/v1/importer.py389CODE
LOWauthentik/blueprints/v1/schema.py158CODE
LOWauthentik/outposts/signals.py120CODE
LOWauthentik/outposts/docker_ssh.py80CODE
LOWauthentik/outposts/models.py333CODE
LOWauthentik/outposts/apps.py38CODE
LOWauthentik/core/sources/flow_manager.py211CODE
LOWauthentik/core/sources/flow_manager.py306CODE
LOWauthentik/enterprise/core/revocation.py50CODE
LOWauthentik/enterprise/audit/tests.py318CODE
LOWauthentik/stages/user_write/stage.py106CODE
LOWauthentik/stages/captcha/stage.py36CODE
LOWauthentik/stages/prompt/models.py156CODE
LOWauthentik/stages/prompt/models.py225CODE
LOWauthentik/stages/prompt/models.py269CODE
LOWauthentik/stages/authenticator_validate/models.py116CODE
LOWauthentik/stages/authenticator_validate/challenge.py144CODE
LOWauthentik/providers/oauth2/token/router.py26CODE
LOWauthentik/providers/oauth2/token/base.py179CODE
LOWauthentik/providers/oauth2/tests/test_dpop.py72CODE
LOWauthentik/providers/oauth2/views/end_session.py67CODE
LOWauthentik/providers/saml/views/sp_slo.py84CODE
LOWauthentik/admin/files/api.py215CODE
LOWauthentik/admin/files/backends/static.py31CODE
LOWauthentik/policies/engine.py313CODE
LOWauthentik/policies/engine.py394CODE
LOWauthentik/policies/engine.py605CODE
LOWauthentik/policies/tests/test_static_dry_run.py19CODE
LOWauthentik/policies/tests/test_static_dry_run.py70CODE
LOWauthentik/root/asgi.py36CODE
LOWauthentik/lib/config.py86CODE
LOWauthentik/lib/config.py157CODE
LOWauthentik/sources/kerberos/tasks.py38CODE
LOWauthentik/sources/scim/patch/processor.py14CODE
LOWauthentik/sources/scim/patch/processor.py32CODE
LOWauthentik/sources/scim/patch/processor.py108CODE
LOWauthentik/sources/scim/patch/processor.py194CODE
LOWauthentik/sources/scim/patch/parser.py80CODE
LOWauthentik/sources/scim/patch/lexer.py120CODE
LOWauthentik/sources/scim/views/v2/groups.py159CODE
LOWauthentik/sources/oauth/tasks.py22CODE
LOWauthentik/sources/oauth/tests/test_type_entra_id.py76CODE
LOWauthentik/sources/oauth/api/source.py70CODE
LOWauthentik/sources/ldap/sync/users.py59CODE
LOWauthentik/sources/ldap/sync/groups.py58CODE
LOWauthentik/api/search/fields.py90CODE
LOWauthentik/api/v3/schema/query.py75CODE
LOWauthentik/api/v3/schema/enum.py28CODE
LOWauthentik/api/v3/schema/enum.py247CODE
LOWauthentik/api/v3/schema/enum.py42CODE
LOWauthentik/api/v3/schema/enum.py43CODE
LOWauthentik/api/v3/schema/enum.py61CODE
LOWauthentik/events/tests/test_middleware.py164CODE
LOWauthentik/flows/planner.py316CODE
LOWauthentik/flows/views/executor.py166CODE
LOWtests/openid_conformance/conformance.py60CODE
LOWlifecycle/migrate.py148CODE
LOWscripts/locales.py209CODE
2 more matches not shown…
Excessive Try-Catch Wrapping35 hits · 39 pts
SeverityFileLineSnippetContext
LOWauthentik/blueprints/v1/common.py380 except Exception as exc: # noqa: BLE001 - a repr must never raiseCODE
LOWauthentik/core/models.py631 except Exception as exc: # noqaCODE
LOWauthentik/core/models.py831 except Exception as exc: # noqaCODE
LOWauthentik/core/models.py1060 except Exception as exc: # noqaCODE
LOWauthentik/core/models.py1289 except Exception as exc:CODE
LOWauthentik/core/api/property_mappings.py172 except Exception as exc: # noqaCODE
LOWauthentik/enterprise/stages/account_lockdown/stage.py148 except Exception as exc: # noqa: BLE001CODE
LOWauthentik/enterprise/stages/account_lockdown/stage.py176 except Exception as exc: # noqa: BLE001CODE
LOWauthentik/enterprise/stages/account_lockdown/stage.py227 except Exception as exc: # noqa: BLE001CODE
LOW…enterprise/stages/account_lockdown/tests/test_stage.py597 except Exception as exc: # noqa: BLE001CODE
MEDIUM…enterprise/stages/account_lockdown/tests/test_stage.py584def run(self):CODE
LOWauthentik/enterprise/lifecycle/offboarding/tasks.py44 except Exception:CODE
MEDIUM…rprise/lifecycle/offboarding/tests/test_offboarding.py263def run(self):CODE
MEDIUM…rprise/lifecycle/offboarding/tests/test_offboarding.py319def run(self):CODE
MEDIUM…rprise/lifecycle/offboarding/tests/test_offboarding.py330def run(self):CODE
LOW…rprise/lifecycle/offboarding/tests/test_offboarding.py266 except Exception as exc: # noqa: BLE001CODE
LOW…rprise/lifecycle/offboarding/tests/test_offboarding.py322 except Exception as exc: # noqa: BLE001CODE
LOW…rprise/lifecycle/offboarding/tests/test_offboarding.py333 except Exception as exc: # noqa: BLE001CODE
LOWauthentik/stages/prompt/models.py177 except Exception as exc: # pylint:disable=broad-exceptCODE
LOWauthentik/stages/prompt/models.py215 except Exception as exc: # pylint:disable=broad-exceptCODE
LOWauthentik/stages/prompt/models.py244 except Exception as exc: # pylint:disable=broad-exceptCODE
LOWauthentik/brands/models.py175 except Exception as exc: # noqaCODE
LOWauthentik/providers/saml/views/unified.py54 except Exception: # noqa: BLE001CODE
LOWauthentik/policies/process.py159 except Exception as exc: # noqaCODE
LOWauthentik/policies/expression/evaluator.py74 except Exception as exc: # noqaCODE
LOWauthentik/root/test_runner.py194 except Exception as exc: # noqaCODE
LOWauthentik/root/middleware.py330 except Exception as exc:CODE
LOWauthentik/lib/expression/evaluator.py367 except Exception as exc:CODE
LOWauthentik/lib/sync/mapper.py75 except Exception as exc:CODE
LOWauthentik/flows/stage.py167 except Exception as exc: # noqaCODE
LOWauthentik/flows/views/executor.py223 except Exception as exc: # noqaCODE
LOWauthentik/flows/views/executor.py313 except Exception as exc: # noqaCODE
LOWauthentik/flows/views/executor.py364 except Exception as exc: # noqaCODE
LOWauthentik/flows/views/executor.py376 except Exception: # noqaCODE
LOWlifecycle/gunicorn.conf.py184 except Exception: # nosec # noqaCODE
Unused Imports29 hits · 29 pts
SeverityFileLineSnippetContext
LOWauthentik/blueprints/tasks.py2CODE
LOWauthentik/endpoints/controller.py4CODE
LOWauthentik/enterprise/lifecycle/signals.py7CODE
LOWauthentik/enterprise/lifecycle/signals.py7CODE
LOWauthentik/enterprise/lifecycle/tasks.py7CODE
LOWauthentik/enterprise/lifecycle/tasks.py7CODE
LOWauthentik/enterprise/lifecycle/tasks.py11CODE
LOWauthentik/enterprise/lifecycle/tasks.py11CODE
LOWauthentik/enterprise/lifecycle/tasks.py11CODE
LOWauthentik/enterprise/lifecycle/models.py12CODE
LOWauthentik/enterprise/lifecycle/models.py12CODE
LOWauthentik/enterprise/lifecycle/models.py12CODE
LOWauthentik/enterprise/lifecycle/models.py12CODE
LOWauthentik/enterprise/lifecycle/models.py12CODE
LOWauthentik/enterprise/lifecycle/models.py12CODE
LOWauthentik/enterprise/lifecycle/models.py12CODE
LOWauthentik/enterprise/lifecycle/models.py21CODE
LOWauthentik/enterprise/lifecycle/models.py21CODE
LOWauthentik/enterprise/lifecycle/models.py21CODE
LOWauthentik/providers/scim/clients/base.py30CODE
LOWauthentik/providers/scim/clients/base.py31CODE
LOWauthentik/policies/types.py3CODE
LOWauthentik/lib/tracing/__init__.py5CODE
LOWauthentik/lib/tracing/__init__.py8CODE
LOWauthentik/lib/tracing/__init__.py10CODE
LOWauthentik/lib/tracing/__init__.py11CODE
LOWauthentik/lib/sync/outgoing/base.py28CODE
LOWauthentik/lib/sync/outgoing/base.py30CODE
LOWlifecycle/gunicorn.conf.py28CODE
Verbosity Indicators8 hits · 18 pts
SeverityFileLineSnippetContext
LOW⚡…ions/wizard/steps/ak-application-wizard-submit-step.ts118 // Step 1: Import SAML metadata to create the providerCOMMENT
LOW⚡…ions/wizard/steps/ak-application-wizard-submit-step.ts126 // Step 2: Create the application linked to the providerCOMMENT
LOW⚡…ions/wizard/steps/ak-application-wizard-submit-step.ts134 // Step 3: Create policy bindingsCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py49# Step 1: Client connects to this websocket endpointCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py50# Step 2: We prepare all the connection args for GuacCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py51# Step 3: Send a websocket message to a single outpost that has this provider assignedCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py54# Step 4: Outpost creates a websocket connection back to authentikCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py56# Step 5: This consumer transfers data between the two channelsCOMMENT
Structural Annotation Overuse8 hits · 18 pts
SeverityFileLineSnippetContext
LOW⚡…ions/wizard/steps/ak-application-wizard-submit-step.ts118 // Step 1: Import SAML metadata to create the providerCOMMENT
LOW⚡…ions/wizard/steps/ak-application-wizard-submit-step.ts126 // Step 2: Create the application linked to the providerCOMMENT
LOW⚡…ions/wizard/steps/ak-application-wizard-submit-step.ts134 // Step 3: Create policy bindingsCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py49# Step 1: Client connects to this websocket endpointCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py50# Step 2: We prepare all the connection args for GuacCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py51# Step 3: Send a websocket message to a single outpost that has this provider assignedCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py54# Step 4: Outpost creates a websocket connection back to authentikCOMMENT
LOW⚡authentik/providers/rac/consumer_client.py56# Step 5: This consumer transfers data between the two channelsCOMMENT
Modern Structural Boilerplate15 hits · 15 pts
SeverityFileLineSnippetContext
LOWauthentik/enterprise/lifecycle/signals.py9__all__ = [CODE
LOWauthentik/enterprise/lifecycle/tasks.py17__all__ = [CODE
LOWauthentik/enterprise/lifecycle/models.py29__all__ = [CODE
LOWauthentik/stages/authenticator_webauthn/models.py183 def set_sign_count(self, sign_count: int) -> None:CODE
LOWauthentik/stages/authenticator/models.py398 def set_throttle_factor(self, throttle_factor: float) -> None:CODE
LOWauthentik/root/settings.py540def _update_settings(app_path: str) -> None:CODE
LOWauthentik/lib/tracing/common.py18 def set_data(self, key: str, value: Any) -> None:CODE
LOWauthentik/lib/tracing/common.py27 def set_data(self, key: str, value: Any) -> None:CODE
LOWauthentik/lib/tracing/common.py47 def set_tag(self, key: str, value: Any) -> None:CODE
LOWauthentik/lib/tracing/sentry.py112 def set_tag(self, key: str, value: Any) -> None:CODE
LOWauthentik/lib/tracing/otel.py49 def set_data(self, key: str, value: Any) -> None:CODE
LOWauthentik/lib/tracing/otel.py140 def set_tag(self, key: str, value: Any) -> None:CODE
LOWauthentik/lib/tests/test_config.py633 def _set_main_postgres(self, config: ConfigLoader) -> None:CODE
LOWauthentik/lib/sync/outgoing/base.py125 def update_group(self, obj: TModel, action: Direction, users_set: set[int]) -> None:CODE
LOWpackages/ak-guardian/guardian/utils.py24logger = logging.getLogger(__name__)CODE
Docstring Block Structure3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHauthentik/admin/files/validation.py29Sanitize file path. Args: file_path: The file path to sanitize Returns: Sanitized file path STRING
HIGHauthentik/lib/utils/email.py27Normalize email address parameter to list of (name, email) tuples. Args: addr: Email address(es). Can be: STRING
HIGHpackages/ak-guardian/guardian/utils.py115Get a tuple with the identity of the given input. Returns: (user_obj, None, None) or (None, groupSTRING
Cross-Language Confusion2 hits · 10 pts
SeverityFileLineSnippetContext
HIGHauthentik/api/ordering.py16 return {f.name for f in queryset.model._meta.get_fields() if hasattr(f, "null") and f.null}CODE
HIGHauthentik/api/search/fields.py64 ck.key_path_array || jsonb_object_keys(ck.value),CODE
AI Slop Vocabulary4 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUMauthentik/enterprise/agents/api.py136 # Issue an API token so a harness can authenticate as the agent (Bearer auth).COMMENT
LOWauthentik/enterprise/audit/middleware.py148 # If we're clearing we just set the "flag" to TrueCOMMENT
LOWauthentik/stages/authenticator_validate/stage.py177 # hence it doesn't have a PK. In that case we just return an empty list ofCOMMENT
MEDIUMauthentik/lib/expression/evaluator.py368 # So, this is a bit questionable. Essentially, we are edit the stacktraceCOMMENT
AI Response Leakage1 hit · 8 pts
SeverityFileLineSnippetContext
HIGHauthentik/sources/scim/tests/test_patch.py1197 # Based on the code, after processing a filter, the method doesn't continueCOMMENT
AI Structural Patterns4 hits · 4 pts
SeverityFileLineSnippetContext
LOWauthentik/enterprise/endpoints/connectors/agent/http.py34CODE
LOWauthentik/providers/oauth2/tests/test_dpop.py36CODE
LOWauthentik/providers/oauth2/views/userinfo.py118CODE
LOWauthentik/sources/ldap/sync/base.py87CODE
Example Usage Blocks2 hits · 3 pts
SeverityFileLineSnippetContext
LOW…s/20240625-add-htmlelementtagnamemaps-to-everything.py14# Usage:COMMENT
LOWscripts/compose.tracing.yml3## Usage:COMMENT
Modern AI Meta-Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMwebsite/specs/2026-06-24-llms-txt-plugin-plan.md1161### Task 9: Plugin orchestration (`postBuild`) + group assignmentCOMMENT
Decorative Section Separators2 hits · 2 pts
SeverityFileLineSnippetContext
MEDIUM…go-channels-postgres/django_channels_postgres/layer.py299 # ==============================================================STRING
MEDIUM…go-channels-postgres/django_channels_postgres/layer.py301 # ==============================================================STRING