Polar — A billing platform for the intelligence era
This report presents the forensic synthetic code analysis of polarsource/polar, a Python project with 10,055 GitHub stars. SynthScan v2.0 examined 718,444 lines of code across 3723 source files, recording 6706 pattern matches distributed across 22 syntactic categories. The overall adjusted score of 11.0 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 6706 distinct pattern matches across 22 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | clients/packages/ui/src/components/ui/chart.tsx | 325 | function getPayloadConfigFromPayload( | CODE |
| LOW | clients/apps/app/auth/refresher.ts | 66 | function oauthTokenEndpointErrorCode(error: unknown): string | undefined { | CODE |
| LOW | clients/apps/app/auth/refresher.ts | 78 | function shouldClearSessionAfterTokenRefreshFailure(error: unknown): boolean { | CODE |
| LOW | clients/apps/app/providers/NotificationsProvider.tsx | 24 | async function registerForPushNotificationsAsync() { | CODE |
| LOW | clients/apps/app/providers/OrganizationProvider.tsx | 31 | export function PolarOrganizationProvider({ children }: PropsWithChildren) { | CODE |
| LOW | …/[organization]/portal/CustomerPortalLayoutWrapper.tsx | 18 | export function CustomerPortalLayoutWrapper({ | CODE |
| LOW | clients/apps/web/src/utils/order.ts | 40 | export function isOrderInDunningLifecycle( | CODE |
| LOW | clients/apps/web/src/utils/i18n/index.ts | 8 | export function parseAcceptLanguageHeader( | CODE |
| LOW⚡ | clients/apps/web/src/utils/i18n/index.ts | 39 | function getLocaleFromAcceptLanguageHeader( | CODE |
| LOW⚡ | clients/apps/web/src/utils/i18n/index.ts | 45 | function getPrimaryLanguageForLocale(locale: string): string { | CODE |
| LOW⚡ | clients/apps/web/src/utils/i18n/index.ts | 49 | export function findMatchingLocaleInAcceptLanguageHeader( | CODE |
| LOW | …/components/Metrics/CancellationsDistributionChart.tsx | 30 | export default function CancellationsDistributionChart({ | CODE |
| LOW | …b/src/components/Metrics/CancellationsStackedChart.tsx | 57 | export default function CancellationsStackedChart({ | CODE |
| LOW | …nents/Metrics/dashboards/DashboardDetailClientPage.tsx | 32 | export default function DashboardDetailClientPage({ | CODE |
| LOW | …src/components/Settings/OrganizationDeleteSettings.tsx | 19 | export default function OrganizationDeleteSettings({ | CODE |
| LOW | …src/components/Settings/BackupCodesRegenerateModal.tsx | 11 | export default function BackupCodesRegenerateModal({ | CODE |
| LOW | clients/apps/web/src/components/Benefit/utils.tsx | 99 | export function isBenefitVisibilityConfigurable( | CODE |
| LOW | clients/apps/web/src/hooks/queries/customerPortal.ts | 8 | export function useCustomerPortalCustomer(options?: { | CODE |
| LOW | server/polar/config.py | 30 | def _validate_email_renderer_binary_path(value: Path) -> Path: | CODE |
| LOW | server/polar/config.py | 634 | def is_read_replica_configured(self) -> bool: | STRING |
| LOW | server/polar/config.py | 696 | def stripe_descriptor_suffix_max_length(self) -> int: | STRING |
| LOW | server/polar/config.py | 708 | def get_pydantic_gateway_model( | STRING |
| LOW | server/polar/exception_handlers.py | 26 | async def request_validation_exception_handler( | CODE |
| LOW | server/polar/exception_handlers.py | 36 | async def polar_redirection_exception_handler( | CODE |
| LOW | server/polar/exception_handlers.py | 50 | async def polar_not_modified_handler(request: Request, exc: Exception) -> Response: | CODE |
| LOW | server/polar/operational_errors.py | 21 | def _sql_timeout_error_matcher(exc: BaseException) -> bool: | CODE |
| LOW | server/polar/operational_errors.py | 37 | def _sql_lock_not_available_error_matcher(exc: BaseException) -> bool: | CODE |
| LOW | server/polar/operational_errors.py | 51 | def _sql_deadlock_error_matcher(exc: BaseException) -> bool: | CODE |
| LOW⚡ | server/polar/operational_errors.py | 62 | def _timeout_lock_error_matcher(exc: BaseException) -> bool: | CODE |
| LOW⚡ | server/polar/operational_errors.py | 66 | def _external_event_already_handled_error_matcher(exc: BaseException) -> bool: | CODE |
| LOW⚡ | server/polar/operational_errors.py | 73 | def _tinybird_operational_error_matcher(exc: BaseException) -> bool: | CODE |
| LOW⚡ | server/polar/operational_errors.py | 80 | def _polar_self_client_operational_error_matcher(exc: BaseException) -> bool: | CODE |
| LOW⚡ | server/polar/operational_errors.py | 87 | def _email_sender_operational_error_matcher(exc: BaseException) -> bool: | CODE |
| LOW | server/polar/app.py | 110 | def generate_unique_openapi_id(route: APIRoute) -> str: | CODE |
| LOW | server/polar/organization/service.py | 155 | def _is_hosted_website_domain(website_domain: str) -> bool: | CODE |
| LOW | server/polar/organization/service.py | 162 | def _email_domain_matches_website(email_domain: str, website_domain: str) -> bool: | CODE |
| LOW | server/polar/organization/service.py | 423 | async def _validate_currency_change( | CODE |
| LOW | server/polar/organization/service.py | 916 | async def _sync_polar_self_customer_owner( | CODE |
| LOW | server/polar/organization/service.py | 1032 | def _enqueue_cancel_pending_payouts(self, organization: Organization) -> None: | CODE |
| LOW | server/polar/organization/service.py | 1052 | async def confirm_organization_reviewed( | CODE |
| LOW | server/polar/organization/service.py | 1306 | async def handle_ongoing_review_verdict( | CODE |
| LOW | server/polar/organization/service.py | 1410 | async def unsnooze_expired_organizations( | CODE |
| LOW | server/polar/organization/service.py | 1430 | async def offboard_expired_organizations( | CODE |
| LOW | server/polar/organization/service.py | 1456 | async def cancel_expired_organizations_subscriptions( | CODE |
| LOW | server/polar/organization/service.py | 1475 | async def set_organization_offboarded( | CODE |
| LOW | server/polar/organization/service.py | 1494 | def _transition_to_offboarded( | CODE |
| LOW | server/polar/organization/service.py | 1511 | async def set_organization_under_review( | CODE |
| LOW | server/polar/organization/service.py | 1535 | async def set_organization_offboarding( | CODE |
| LOW | server/polar/organization/service.py | 1751 | def _build_identity_verification_check( | CODE |
| LOW | server/polar/organization/service.py | 1791 | def _build_product_description_check( | CODE |
| LOW | server/polar/organization/service.py | 1809 | def _build_payout_account_check( | CODE |
| LOW | server/polar/organization/service.py | 1837 | async def _build_product_configuration_check( | CODE |
| LOW | server/polar/organization/service.py | 1849 | async def _build_setup_readiness_check( | CODE |
| LOW | server/polar/organization/service.py | 2118 | async def mark_ai_onboarding_complete( | CODE |
| LOW | server/polar/organization/tasks.py | 82 | async def organization_unsnooze_expired() -> None: | CODE |
| LOW | server/polar/organization/tasks.py | 94 | async def organization_offboard_expired() -> None: | CODE |
| LOW | server/polar/organization/tasks.py | 106 | async def organization_cancel_expired_subscriptions() -> None: | CODE |
| LOW | server/polar/organization/tasks.py | 142 | def _check_threshold_debounce_key(account_id: uuid.UUID) -> str: | CODE |
| LOW | server/polar/organization/tasks.py | 151 | async def organization_check_threshold(account_id: uuid.UUID) -> None: | CODE |
| LOW | server/polar/organization/tasks.py | 176 | async def organization_under_review(organization_id: uuid.UUID) -> None: | CODE |
| 4389 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | terraform/test/network.tf | 1 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/network.tf | 3 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/aws.tf | 103 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/aws.tf | 105 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/aws.tf | 127 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/aws.tf | 129 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/aws.tf | 183 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/aws.tf | 185 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 2 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 4 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 18 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 20 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 32 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 34 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/test/render.tf | 76 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/test/render.tf | 78 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/test/render.tf | 84 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/test/render.tf | 86 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 303 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 305 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 354 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/render.tf | 356 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/vercel.tf | 1 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/test/vercel.tf | 3 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/network.tf | 1 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/network.tf | 3 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/aws.tf | 108 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/aws.tf | 110 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/aws.tf | 129 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/aws.tf | 131 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/aws.tf | 181 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/aws.tf | 183 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/variables.tf | 1 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/variables.tf | 3 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/sandbox/render.tf | 2 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/sandbox/render.tf | 4 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/sandbox/render.tf | 13 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/sandbox/render.tf | 15 | # ============================================================================ | COMMENT |
| MEDIUM | terraform/sandbox/render.tf | 30 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/render.tf | 32 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/render.tf | 47 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/render.tf | 49 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/sandbox/render.tf | 77 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/sandbox/render.tf | 79 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/sandbox/render.tf | 85 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | terraform/sandbox/render.tf | 87 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/render.tf | 322 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/render.tf | 324 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/render.tf | 371 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/render.tf | 373 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/vercel.tf | 1 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/sandbox/vercel.tf | 3 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/production/network.tf | 1 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/production/network.tf | 3 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/production/aws.tf | 98 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/production/aws.tf | 100 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/production/aws.tf | 119 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/production/aws.tf | 121 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/production/aws.tf | 171 | # ============================================================================= | COMMENT |
| MEDIUM | terraform/production/aws.tf | 173 | # ============================================================================= | COMMENT |
| 199 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server/polar/tasks.py | 1 | CODE | |
| LOW | server/polar/tasks.py | 2 | CODE | |
| LOW | server/polar/tasks.py | 3 | CODE | |
| LOW | server/polar/tasks.py | 4 | CODE | |
| LOW | server/polar/tasks.py | 5 | CODE | |
| LOW | server/polar/tasks.py | 6 | CODE | |
| LOW | server/polar/tasks.py | 7 | CODE | |
| LOW | server/polar/tasks.py | 8 | CODE | |
| LOW | server/polar/tasks.py | 9 | CODE | |
| LOW | server/polar/tasks.py | 10 | CODE | |
| LOW | server/polar/tasks.py | 11 | CODE | |
| LOW | server/polar/tasks.py | 12 | CODE | |
| LOW | server/polar/tasks.py | 13 | CODE | |
| LOW | server/polar/tasks.py | 14 | CODE | |
| LOW | server/polar/tasks.py | 15 | CODE | |
| LOW | server/polar/tasks.py | 16 | CODE | |
| LOW | server/polar/tasks.py | 17 | CODE | |
| LOW | server/polar/tasks.py | 18 | CODE | |
| LOW | server/polar/tasks.py | 19 | CODE | |
| LOW | server/polar/tasks.py | 20 | CODE | |
| LOW | server/polar/tasks.py | 21 | CODE | |
| LOW | server/polar/tasks.py | 22 | CODE | |
| LOW | server/polar/tasks.py | 23 | CODE | |
| LOW | server/polar/tasks.py | 24 | CODE | |
| LOW | server/polar/tasks.py | 25 | CODE | |
| LOW | server/polar/tasks.py | 26 | CODE | |
| LOW | server/polar/tasks.py | 27 | CODE | |
| LOW | server/polar/tasks.py | 28 | CODE | |
| LOW | server/polar/tasks.py | 29 | CODE | |
| LOW | server/polar/tasks.py | 30 | CODE | |
| LOW | server/polar/tasks.py | 31 | CODE | |
| LOW | server/polar/tasks.py | 32 | CODE | |
| LOW | server/polar/tasks.py | 33 | CODE | |
| LOW | server/polar/tasks.py | 34 | CODE | |
| LOW | server/polar/tasks.py | 35 | CODE | |
| LOW | server/polar/tasks.py | 36 | CODE | |
| LOW | server/polar/tasks.py | 37 | CODE | |
| LOW | server/polar/tasks.py | 38 | CODE | |
| LOW | server/polar/tasks.py | 39 | CODE | |
| LOW | server/polar/tasks.py | 40 | CODE | |
| LOW | server/polar/tasks.py | 41 | CODE | |
| LOW | server/polar/logfire.py | 23 | CODE | |
| LOW | server/polar/logfire.py | 24 | CODE | |
| LOW | server/polar/logfire.py | 24 | CODE | |
| LOW | server/polar/logfire.py | 25 | CODE | |
| LOW | server/polar/logfire.py | 26 | CODE | |
| LOW | server/polar/posthog.py | 1 | CODE | |
| LOW | server/polar/postgres.py | 8 | CODE | |
| LOW | server/polar/app.py | 9 | CODE | |
| LOW | server/polar/organization/service.py | 37 | CODE | |
| LOW | server/polar/event_type/__init__.py | 1 | CODE | |
| LOW | server/polar/order/repository.py | 46 | CODE | |
| LOW | server/polar/metrics/metrics.py | 8 | CODE | |
| LOW | server/polar/metrics/queries.py | 46 | CODE | |
| LOW | server/polar/custom_field/attachment.py | 14 | CODE | |
| LOW | server/polar/custom_field/data.py | 14 | CODE | |
| LOW | server/polar/custom_field/data.py | 14 | CODE | |
| LOW | server/polar/custom_field/data.py | 16 | CODE | |
| LOW | server/polar/account_credit/__init__.py | 1 | CODE | |
| LOW | server/polar/checkout_link/repository.py | 26 | CODE | |
| 615 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | terraform/.terraform.lock.hcl | 1 | # This file is maintained automatically by "terraform init". | COMMENT |
| MEDIUM | server/polar/transaction/service/dispute.py | 107 | # Create the dispute, i.e. the transaction withdrawing the amount | COMMENT |
| MEDIUM | …rver/polar/customer_portal/endpoints/oauth_accounts.py | 216 | # Create a session only after the OAuth provider has confirmed the code. | COMMENT |
| MEDIUM | …ver/polar/backoffice/organizations_v2/orders_import.py | 341 | # Create a grant manually to force properties | COMMENT |
| MEDIUM | server/polar/backoffice/organizations_v2/analytics.py | 183 | # Create a copy to avoid mutating the original list | COMMENT |
| MEDIUM | server/polar/backoffice/organizations_v2/endpoints.py | 4228 | # Create the credit | COMMENT |
| MEDIUM | server/polar/payout/service.py | 700 | # Create a new payout attempt | COMMENT |
| MEDIUM⚡ | server/tests/organization/test_service.py | 1626 | # Create a review record | COMMENT |
| MEDIUM | server/tests/organization/test_endpoints.py | 1047 | # Create a customer and order for this organization | COMMENT |
| MEDIUM | server/tests/organization/test_endpoints.py | 1080 | # Create a customer and active subscription for this organization | COMMENT |
| MEDIUM | server/tests/organization/test_backfill_members.py | 508 | # Create a benefit grant without member_id (legacy) | COMMENT |
| MEDIUM | server/tests/organization/test_backfill_members.py | 631 | # Create a grant that already has member_id set | COMMENT |
| MEDIUM | server/tests/organization/test_backfill_members.py | 771 | # Create a grant under the old seat-holder customer | COMMENT |
| MEDIUM | server/tests/organization/test_backfill_members.py | 851 | # Create a grant and license key under the old seat-holder customer | COMMENT |
| MEDIUM | …er/tests/organization/test_backfill_benefit_records.py | 648 | # Create a second customer+member for a different grant | COMMENT |
| MEDIUM | server/tests/order/test_service.py | 2857 | # Create a pending order with tax calculation processor ID | COMMENT |
| MEDIUM | server/tests/order/test_service.py | 2872 | # Create a payment | COMMENT |
| MEDIUM | server/tests/order/test_service.py | 2904 | # Create a customer with a billing address so that _calculate_tax | COMMENT |
| MEDIUM | server/tests/order/test_service.py | 3572 | # Create a failed payment with a non-recoverable decline reason | COMMENT |
| MEDIUM | server/tests/order/test_service.py | 5369 | # Create a subscription | COMMENT |
| MEDIUM | server/tests/transaction/service/test_transaction.py | 204 | # Create an old balance transaction (8 days ago - should be available) | COMMENT |
| MEDIUM | server/tests/transaction/service/test_transaction.py | 216 | # Create a recent balance transaction (2 days ago - should NOT be available) | COMMENT |
| MEDIUM | server/tests/transaction/service/test_transaction.py | 227 | # Create a payout transaction (2 days ago - should ALWAYS be available) | COMMENT |
| MEDIUM | server/tests/transaction/service/test_transaction.py | 238 | # Create a payout fee (2 days ago - should ALWAYS be available) | COMMENT |
| MEDIUM | server/tests/transaction/service/test_refund.py | 479 | # Create a charge and order | COMMENT |
| MEDIUM | server/tests/transaction/service/test_refund.py | 490 | # Create the payment transaction | COMMENT |
| MEDIUM | server/tests/transaction/service/test_refund.py | 639 | # Create a charge and order | COMMENT |
| MEDIUM | server/tests/transaction/service/test_refund.py | 650 | # Create the payment transaction | COMMENT |
| MEDIUM | server/tests/customer_email_update/test_service.py | 99 | # Create an existing pending verification | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 24 | # Create a checkout | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 27 | # Create a charge with checkout_id in metadata | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 67 | # Create an order | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 74 | # Create a charge with invoice | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 108 | # Create a checkout | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 114 | # Create an order from the checkout | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 122 | # Create a charge with checkout_id in metadata | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 310 | # Create a checkout | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 313 | # Create a payment intent with last_payment_error | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 359 | # Create an order | COMMENT |
| MEDIUM⚡ | server/tests/payment/test_service.py | 366 | # Create a payment intent with last_payment_error | COMMENT |
| MEDIUM | server/tests/payment/test_service.py | 161 | # Create a charge with wallet_id in metadata | COMMENT |
| MEDIUM | server/tests/payment/test_service.py | 200 | # Create a checkout | COMMENT |
| MEDIUM | server/tests/payment/test_service.py | 206 | # Create a charge with checkout_id in metadata | COMMENT |
| MEDIUM | server/tests/payment/test_service.py | 412 | # Create an order | COMMENT |
| MEDIUM | server/tests/payment/test_service.py | 491 | # Create an order | COMMENT |
| MEDIUM | server/tests/payment/test_service.py | 498 | # Create a payment intent with last_payment_error | COMMENT |
| MEDIUM | server/tests/member/test_service.py | 142 | # Create a member | COMMENT |
| MEDIUM | server/tests/member/test_service.py | 464 | # Create the first member (owner) | COMMENT |
| MEDIUM | server/tests/member/test_service.py | 511 | # Create the first member (owner) | COMMENT |
| MEDIUM⚡ | server/tests/member/test_endpoints.py | 200 | # Create a customer for a different organization that the user doesn't have access to | COMMENT |
| MEDIUM⚡ | server/tests/member/test_endpoints.py | 209 | # Create a member | COMMENT |
| MEDIUM | server/tests/member/test_endpoints.py | 156 | # Create a customer | COMMENT |
| MEDIUM | server/tests/member/test_endpoints.py | 1319 | # Create a customer and member | COMMENT |
| MEDIUM | server/tests/member/test_endpoints.py | 1368 | # Create a member for a different organization | COMMENT |
| MEDIUM | server/tests/customer_portal/endpoints/test_customer.py | 87 | # Create a payment method with no subscriptions | COMMENT |
| MEDIUM | server/tests/customer_portal/endpoints/test_customer.py | 113 | # Create an active subscription using the first payment method | COMMENT |
| MEDIUM⚡ | server/tests/customer_portal/endpoints/test_customer.py | 145 | # Create a payment method | COMMENT |
| MEDIUM⚡ | server/tests/customer_portal/endpoints/test_customer.py | 148 | # Create an active subscription using this payment method | COMMENT |
| MEDIUM⚡ | server/tests/customer_portal/endpoints/test_customer.py | 181 | # Create a payment method | COMMENT |
| MEDIUM⚡ | server/tests/customer_portal/endpoints/test_customer.py | 184 | # Create a canceled subscription using this payment method | COMMENT |
| 97 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | server/polar/member/service.py | 155 | Soft delete a member. Any active seats assigned to this member will be automatically revoked b | STRING |
| HIGH | server/polar/member/service.py | 577 | Create a new member for a customer. The customer is resolved by either its internal ID (`customer_id`) | STRING |
| HIGH | server/polar/kit/http.py | 72 | Validate that the URL is crawlable (not private/reserved). Args: url: The URL to validate. Return | STRING |
| HIGH | server/polar/tax/tax_id.py | 457 | Validate a tax ID for a given country. Args: number: The tax ID to validate. country: The coun | STRING |
| HIGH | server/polar/tax/tax_id.py | 485 | Convert a tax ID to the format expected by Stripe. Args: value: A tuple containing the tax ID and the | STRING |
| HIGH | server/polar/tax/calculation/__init__.py | 79 | Calculate tax for the given parameters. Tries to calculate tax using the configured tax processors in order. If | STRING |
| HIGH | server/polar/backoffice/forms.py | 63 | Render the form field as HTML. Args: id: The HTML id and name attribute for the field. | STRING |
| HIGH | server/polar/backoffice/components/_description_list.py | 98 | Extract the raw attribute value from the data object. Args: item: The data object to extract from. | STRING |
| HIGH | server/polar/backoffice/components/_description_list.py | 112 | Get the formatted string value for display. This method can be overridden in subclasses to provide custom forma | STRING |
| HIGH | server/polar/backoffice/components/_description_list.py | 146 | Get the formatted datetime string for display. Args: item: The data object to extract the datetime | STRING |
| HIGH | server/polar/backoffice/components/_datatable.py | 213 | Extract the raw attribute value from the model item. Args: item: The model item to extract from. | STRING |
| HIGH | server/polar/backoffice/components/_datatable.py | 227 | Get the formatted string value for display. This method can be overridden in subclasses to provide custom forma | STRING |
| HIGH | server/polar/backoffice/components/_datatable.py | 262 | Get the formatted datetime string for display. Args: item: The model item to extract the datetime f | STRING |
| HIGH | server/polar/product/price_set.py | 46 | Create a PriceSet from a product's prices filtered by currency. Args: product: The product containi | STRING |
| HIGH | server/polar/product/price_set.py | 63 | Create a PriceSet from a sequence of prices filtered by currency. Iterates through the provided currencies in o | STRING |
| HIGH | server/polar/benefit/strategies/base/service.py | 103 | Executes the logic to grant a benefit to a customer. Args: benefit: The Benefit to grant. | STRING |
| HIGH | server/polar/benefit/strategies/base/service.py | 141 | Executes the logic when a subscription is renewed for a new cycle for a granted benefit. Args: | STRING |
| HIGH | server/polar/benefit/strategies/base/service.py | 173 | Executes the logic to revoke a benefit from a customer. Args: benefit: The Benefit to revo | STRING |
| HIGH | server/polar/benefit/strategies/base/service.py | 217 | Validates the benefit properties before creation. Useful if we need to call external logic to make sur | STRING |
| HIGH | sdk/python/polar/v2026_04/files.py | 83 | List files. **Scopes**: `files:read` `files:write` Args: organization_id: Filter | STRING |
| HIGH | sdk/python/polar/v2026_04/files.py | 336 | List files. **Scopes**: `files:read` `files:write` Args: organization_id: Filter | STRING |
| HIGH | sdk/python/polar/v2026_04/payments.py | 96 | List payments. **Scopes**: `payments:read` Args: organization_id: Filter by organ | STRING |
| HIGH | sdk/python/polar/v2026_04/payments.py | 250 | List payments. **Scopes**: `payments:read` Args: organization_id: Filter by organ | STRING |
| HIGH | sdk/python/polar/v2026_04/checkouts.py | 105 | List checkout sessions. **Scopes**: `checkouts:read` `checkouts:write` Args: orga | STRING |
| HIGH | sdk/python/polar/v2026_04/checkouts.py | 439 | List checkout sessions. **Scopes**: `checkouts:read` `checkouts:write` Args: orga | STRING |
| HIGH | sdk/python/polar/v2026_04/meters.py | 92 | List meters. **Scopes**: `meters:read` `meters:write` Args: organization_id: Filt | STRING |
| HIGH | sdk/python/polar/v2026_04/meters.py | 356 | List meters. **Scopes**: `meters:read` `meters:write` Args: organization_id: Filt | STRING |
| HIGH | sdk/python/polar/v2026_04/disputes.py | 81 | List disputes. **Scopes**: `disputes:read` `disputes:write` Args: organization_id | STRING |
| HIGH | sdk/python/polar/v2026_04/disputes.py | 250 | List disputes. **Scopes**: `disputes:read` `disputes:write` Args: organization_id | STRING |
| HIGH | sdk/python/polar/v2026_04/members.py | 78 | List members with optional customer ID filter. **Scopes**: `members:read` `members:write` Arg | STRING |
| HIGH | sdk/python/polar/v2026_04/members.py | 174 | List members with optional customer ID filter. **Scopes**: `members:read` `members:write` Arg | STRING |
| HIGH | sdk/python/polar/v2026_04/license_keys.py | 95 | Get license keys connected to the given organization & filters. **Scopes**: `license_keys:read` `licen | STRING |
| HIGH | sdk/python/polar/v2026_04/license_keys.py | 406 | Get license keys connected to the given organization & filters. **Scopes**: `license_keys:read` `licen | STRING |
| HIGH | sdk/python/polar/v2026_04/customer_meters.py | 83 | List customer meters. **Scopes**: `customer_meters:read` Args: organization_id: F | STRING |
| HIGH | sdk/python/polar/v2026_04/customer_meters.py | 219 | List customer meters. **Scopes**: `customer_meters:read` Args: organization_id: F | STRING |
| HIGH | sdk/python/polar/v2026_04/checkout_links.py | 86 | List checkout links. **Scopes**: `checkout_links:read` `checkout_links:write` Args: | STRING |
| HIGH | sdk/python/polar/v2026_04/checkout_links.py | 330 | List checkout links. **Scopes**: `checkout_links:read` `checkout_links:write` Args: | STRING |
| HIGH | sdk/python/polar/v2026_04/events.py | 179 | List event names. **Scopes**: `events:read` `events:write` Args: organization_id: | STRING |
| HIGH | sdk/python/polar/v2026_04/events.py | 434 | List event names. **Scopes**: `events:read` `events:write` Args: organization_id: | STRING |
| HIGH | sdk/python/polar/v2026_04/refunds.py | 98 | List refunds. **Scopes**: `refunds:read` `refunds:write` Args: id: Filter by refu | STRING |
| HIGH | sdk/python/polar/v2026_04/refunds.py | 251 | List refunds. **Scopes**: `refunds:read` `refunds:write` Args: id: Filter by refu | STRING |
| HIGH | sdk/python/polar/v2026_04/subscriptions.py | 142 | List subscriptions. **Scopes**: `subscriptions:read` `subscriptions:write` Args: | STRING |
| HIGH | sdk/python/polar/v2026_04/subscriptions.py | 548 | List subscriptions. **Scopes**: `subscriptions:read` `subscriptions:write` Args: | STRING |
| HIGH | sdk/python/polar/v2026_04/discounts.py | 85 | List discounts. **Scopes**: `discounts:read` `discounts:write` Args: organization | STRING |
| HIGH | sdk/python/polar/v2026_04/discounts.py | 323 | List discounts. **Scopes**: `discounts:read` `discounts:write` Args: organization | STRING |
| HIGH | sdk/python/polar/v2026_04/products.py | 108 | List products. **Scopes**: `products:read` `products:write` Args: id: Filter by p | STRING |
| HIGH | sdk/python/polar/v2026_04/products.py | 389 | List products. **Scopes**: `products:read` `products:write` Args: id: Filter by p | STRING |
| HIGH | sdk/python/polar/v2026_04/orders.py | 126 | List orders. **Scopes**: `orders:read` Args: organization_id: Filter by organizat | STRING |
| HIGH | sdk/python/polar/v2026_04/orders.py | 557 | List orders. **Scopes**: `orders:read` Args: organization_id: Filter by organizat | STRING |
| HIGH | sdk/python/polar/v2026_04/organizations.py | 78 | List organizations. **Scopes**: `organizations:read` `organizations:write` Args: | STRING |
| HIGH | sdk/python/polar/v2026_04/organizations.py | 270 | List organizations. **Scopes**: `organizations:read` `organizations:write` Args: | STRING |
| HIGH | sdk/python/polar/v2026_04/benefits.py | 119 | List benefits. **Scopes**: `benefits:read` `benefits:write` Args: organization_id | STRING |
| HIGH | sdk/python/polar/v2026_04/benefits.py | 470 | List the individual grants for a benefit. It's especially useful to check if a user has been granted a | STRING |
| HIGH | sdk/python/polar/v2026_04/benefits.py | 581 | List benefits. **Scopes**: `benefits:read` `benefits:write` Args: organization_id | STRING |
| HIGH | sdk/python/polar/v2026_04/benefits.py | 933 | List the individual grants for a benefit. It's especially useful to check if a user has been granted a | STRING |
| HIGH | sdk/python/polar/v2026_04/custom_fields.py | 97 | List custom fields. **Scopes**: `custom_fields:read` `custom_fields:write` Args: | STRING |
| HIGH | sdk/python/polar/v2026_04/custom_fields.py | 394 | List custom fields. **Scopes**: `custom_fields:read` `custom_fields:write` Args: | STRING |
| HIGH | sdk/python/polar/v2026_04/webhooks.py | 77 | List webhook endpoints. **Scopes**: `webhooks:read` `webhooks:write` Args: organi | STRING |
| HIGH | sdk/python/polar/v2026_04/webhooks.py | 357 | List webhook deliveries. Deliveries are all the attempts to deliver a webhook event to an endpoint. | STRING |
| HIGH | sdk/python/polar/v2026_04/webhooks.py | 483 | List webhook endpoints. **Scopes**: `webhooks:read` `webhooks:write` Args: organi | STRING |
| 33 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | server/polar/customer_portal/schemas/subscription.py | 0 | cancel an active subscription once the current period ends. or uncancel a subscription currently set to be revoked at pe | STRING |
| HIGH | server/polar/subscription/schemas.py | 0 | cancel an active subscription once the current period ends. or uncancel a subscription currently set to be revoked at pe | STRING |
| HIGH | sdk/python/polar/v2026_04/inputs.py | 0 | cancel an active subscription once the current period ends. or uncancel a subscription currently set to be revoked at pe | STRING |
| HIGH | server/polar/customer_portal/schemas/subscription.py | 0 | pause an active subscription at the end of the current period. or cancel a scheduled pause on a subscription set to be p | STRING |
| HIGH | server/polar/subscription/schemas.py | 0 | pause an active subscription at the end of the current period. or cancel a scheduled pause on a subscription set to be p | STRING |
| HIGH | sdk/python/polar/v2026_04/inputs.py | 0 | pause an active subscription at the end of the current period. or cancel a scheduled pause on a subscription set to be p | STRING |
| HIGH | server/polar/product/schemas.py | 0 | list of pricing tiers for seat-based pricing. the minimum and maximum seat limits are derived from the tiers: - minimum_ | STRING |
| HIGH | sdk/python/polar/v2026_04/inputs.py | 0 | list of pricing tiers for seat-based pricing. the minimum and maximum seat limits are derived from the tiers: - minimum_ | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 0 | list of pricing tiers for seat-based pricing. the minimum and maximum seat limits are derived from the tiers: - minimum_ | STRING |
| HIGH | server/polar/checkout/schemas.py | 0 | schema for a fixed amount discount that is applied once or forever. | STRING |
| HIGH | server/polar/discount/schemas.py | 0 | schema for a fixed amount discount that is applied once or forever. | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 0 | schema for a fixed amount discount that is applied once or forever. | STRING |
| HIGH | server/polar/checkout/schemas.py | 0 | schema for a fixed amount discount that is applied on every invoice for a certain number of months. | STRING |
| HIGH | server/polar/discount/schemas.py | 0 | schema for a fixed amount discount that is applied on every invoice for a certain number of months. | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 0 | schema for a fixed amount discount that is applied on every invoice for a certain number of months. | STRING |
| HIGH | server/polar/checkout/schemas.py | 0 | schema for a percentage discount that is applied once or forever. | STRING |
| HIGH | server/polar/discount/schemas.py | 0 | schema for a percentage discount that is applied once or forever. | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 0 | schema for a percentage discount that is applied once or forever. | STRING |
| HIGH | server/polar/checkout/schemas.py | 0 | schema for a percentage discount that is applied on every invoice for a certain number of months. | STRING |
| HIGH | server/polar/discount/schemas.py | 0 | schema for a percentage discount that is applied on every invoice for a certain number of months. | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 0 | schema for a percentage discount that is applied on every invoice for a certain number of months. | STRING |
| HIGH | server/polar/subscription/schemas.py | 0 | current consumption and spending for a subscription meter. | STRING |
| HIGH | server/polar/customer/schemas/state.py | 0 | current consumption and spending for a subscription meter. | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 0 | current consumption and spending for a subscription meter. | STRING |
| HIGH | server/tests/customer_portal/service/test_order.py | 0 | test that % in query is treated as literal, not wildcard. | STRING |
| HIGH | …r/tests/customer_portal/service/test_customer_meter.py | 0 | test that % in query is treated as literal, not wildcard. | STRING |
| HIGH | …ver/tests/customer_portal/service/test_subscription.py | 0 | test that % in query is treated as literal, not wildcard. | STRING |
| HIGH | server/tests/customer_portal/service/test_order.py | 0 | test that _ in query is treated as literal, not single-char wildcard. | STRING |
| HIGH | …r/tests/customer_portal/service/test_customer_meter.py | 0 | test that _ in query is treated as literal, not single-char wildcard. | STRING |
| HIGH | …ver/tests/customer_portal/service/test_subscription.py | 0 | test that _ in query is treated as literal, not single-char wildcard. | STRING |
| HIGH | sdk/python/polar/v2026_04/files.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/checkouts.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/meters.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/checkout_links.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/discounts.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/products.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/benefits.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/custom_fields.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/webhooks.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/customers/__init__.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/customer_portal/customers.py | 0 | request an email change for the authenticated customer. args: **kwargs: request body parameters raises: httpvalidationer | STRING |
| HIGH | sdk/python/polar/v2026_04/payments.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/meters.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/disputes.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/customer_meters.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/events.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/subscriptions.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/discounts.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/products.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/orders.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/organizations.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/benefits.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/customers/__init__.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/customer_portal/wallets.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | …thon/polar/v2026_04/customer_portal/customer_meters.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | …python/polar/v2026_04/customer_portal/subscriptions.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/customer_portal/orders.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | …ython/polar/v2026_04/customer_portal/benefit_grants.py | 0 | get a subscription for the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: id: | STRING |
| HIGH | sdk/python/polar/v2026_04/organizations.py | 0 | list meters of the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: meter_id: fi | STRING |
| HIGH | sdk/python/polar/v2026_04/customer_portal/wallets.py | 0 | list meters of the authenticated customer. **scopes**: `customer_portal:read` `customer_portal:write` args: meter_id: fi | STRING |
| 1 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server/polar/middlewares.py | 22 | CODE | |
| LOW | server/polar/organization/service.py | 1849 | CODE | |
| LOW | server/polar/organization/tasks.py | 354 | CODE | |
| LOW | server/polar/organization/tasks.py | 549 | CODE | |
| LOW | server/polar/organization/tasks.py | 908 | CODE | |
| LOW | server/polar/organization/tasks.py | 1036 | CODE | |
| LOW | server/polar/organization/resolver.py | 24 | CODE | |
| LOW | server/polar/webhook/service.py | 230 | CODE | |
| LOW | server/polar/event_type/service.py | 42 | CODE | |
| LOW | server/polar/order/service.py | 1625 | CODE | |
| LOW | server/polar/order/service.py | 1825 | CODE | |
| LOW | server/polar/order/repository.py | 397 | CODE | |
| LOW | server/polar/metrics/service.py | 59 | CODE | |
| LOW | server/polar/metrics/service.py | 81 | CODE | |
| LOW | server/polar/metrics/service.py | 553 | CODE | |
| LOW | server/polar/metrics/queries_tinybird.py | 55 | CODE | |
| LOW | server/polar/metrics/queries_tinybird.py | 117 | CODE | |
| LOW | server/polar/transaction/service/dispute.py | 61 | CODE | |
| LOW | server/polar/transaction/service/refund.py | 61 | CODE | |
| LOW | server/polar/transaction/service/refund.py | 181 | CODE | |
| LOW | server/polar/eventstream/endpoints.py | 26 | CODE | |
| LOW | server/polar/eventstream/endpoints.py | 57 | CODE | |
| LOW | server/polar/custom_field/service.py | 41 | CODE | |
| LOW | server/polar/checkout_link/service.py | 50 | CODE | |
| LOW | server/polar/merchant_migration/precheck.py | 619 | CODE | |
| LOW | server/polar/merchant_migration/precheck.py | 93 | CODE | |
| LOW | server/polar/oauth2/userinfo.py | 10 | CODE | |
| LOW | server/polar/organization_access_token/service.py | 47 | CODE | |
| LOW | …rver/polar/customer_portal/endpoints/oauth_accounts.py | 117 | CODE | |
| LOW | server/polar/customer_portal/service/subscription.py | 67 | CODE | |
| LOW | server/polar/customer_portal/service/order.py | 66 | CODE | |
| LOW | server/polar/customer_portal/service/benefit_grant.py | 45 | CODE | |
| LOW | server/polar/customer_portal/service/benefit_grant.py | 154 | CODE | |
| LOW | server/polar/kit/pagination.py | 151 | CODE | |
| LOW | server/polar/kit/pagination.py | 197 | CODE | |
| LOW | server/polar/tax/repository.py | 33 | CODE | |
| LOW | server/polar/user/service.py | 257 | CODE | |
| LOW | server/polar/models/refund.py | 111 | CODE | |
| LOW | server/polar/backoffice/forms.py | 598 | CODE | |
| LOW | server/polar/backoffice/static_urls.py | 6 | CODE | |
| LOW | server/polar/backoffice/customers/endpoints.py | 61 | CODE | |
| LOW | server/polar/backoffice/customers/endpoints.py | 128 | CODE | |
| LOW | server/polar/backoffice/customers/endpoints.py | 509 | CODE | |
| LOW | server/polar/backoffice/customers/endpoints.py | 642 | CODE | |
| LOW | server/polar/backoffice/customers/endpoints.py | 697 | CODE | |
| LOW | server/polar/backoffice/customers/endpoints.py | 749 | CODE | |
| LOW | server/polar/backoffice/customers/endpoints.py | 817 | CODE | |
| LOW | server/polar/backoffice/customers/endpoints.py | 887 | CODE | |
| LOW | server/polar/backoffice/tasks/forms.py | 40 | CODE | |
| LOW | server/polar/backoffice/tasks/forms.py | 69 | CODE | |
| LOW | server/polar/backoffice/tasks/endpoints.py | 29 | CODE | |
| LOW | server/polar/backoffice/tasks/endpoints.py | 90 | CODE | |
| LOW | server/polar/backoffice/products/endpoints.py | 30 | CODE | |
| LOW | server/polar/backoffice/products/endpoints.py | 75 | CODE | |
| LOW | server/polar/backoffice/products/endpoints.py | 157 | CODE | |
| LOW | server/polar/backoffice/payout_accounts/endpoints.py | 54 | CODE | |
| LOW | server/polar/backoffice/payout_accounts/endpoints.py | 149 | CODE | |
| LOW | server/polar/backoffice/external_events/endpoints.py | 39 | CODE | |
| LOW | server/polar/backoffice/external_events/endpoints.py | 147 | CODE | |
| LOW | server/polar/backoffice/external_events/endpoints.py | 187 | CODE | |
| 230 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server/polar/tasks.py | 43 | __all__ = [ | CODE |
| LOW | server/polar/openapi.py | 98 | def set_openapi_generator(app: FastAPI) -> None: | CODE |
| LOW | server/polar/openapi.py | 127 | __all__ = [ | CODE |
| LOW | server/polar/logfire.py | 231 | __all__ = [ | CODE |
| LOW | server/polar/redis.py | 39 | __all__ = [ | CODE |
| LOW | server/polar/routing.py | 29 | __all__ = ["APIRouter"] | CODE |
| LOW | server/polar/postgres.py | 109 | __all__ = [ | CODE |
| LOW | server/polar/rate_limit.py | 280 | __all__ = [ | CODE |
| LOW | server/polar/sentry.py | 81 | def set_sentry_user(auth_subject: AuthSubject[Subject]) -> None: | CODE |
| LOW | server/polar/event_type/__init__.py | 3 | __all__ = ["EventTypeRepository"] | CODE |
| LOW | server/polar/order/tasks.py | 178 | async def update_product_benefits_grants(product_id: uuid.UUID) -> None: | CODE |
| LOW | server/polar/metrics/metrics.py | 1006 | __all__ = [ | CODE |
| LOW | server/polar/metrics/cache.py | 89 | async def set_cached_metrics(redis: Redis, key: str, response: MetricsResponse) -> None: | CODE |
| LOW | server/polar/transaction/fees/stripe/__init__.py | 75 | __all__ = ["get_reverse_stripe_payout_fees", "get_stripe_account_fee", "round_stripe"] | CODE |
| LOW | server/polar/account_credit/__init__.py | 3 | __all__ = ["account_credit_service"] | CODE |
| LOW | server/polar/merchant_migration/adapters/__init__.py | 4 | __all__ = ["SourceAdapter", "StripeAdapter"] | CODE |
| LOW | server/polar/auth/models.py | 147 | __all__ = [ | CODE |
| LOW | server/polar/auth/exception_handlers.py | 17 | __all__ = ["PolarAuthRedirectionError", "auth_redirection_error_exception_handler"] | CODE |
| LOW | server/polar/auth/routing.py | 88 | __all__ = ["DocumentedAuthSubjectAPIRoute"] | CODE |
| LOW | server/polar/member/__init__.py | 3 | __all__ = ["Member", "MemberCreate", "MemberOwnerCreate"] | CODE |
| LOW | server/polar/oauth2/exception_handlers.py | 15 | __all__ = ["OAuth2Error", "oauth2_error_exception_handler"] | CODE |
| LOW | server/polar/oauth2/userinfo.py | 35 | __all__ = ["UserInfo", "generate_user_info"] | CODE |
| LOW | server/polar/oauth2/exceptions.py | 45 | __all__ = ["InsufficientScopeError", "InvalidTokenError"] | CODE |
| LOW | server/polar/oauth2/grants/__init__.py | 31 | __all__ = ["AuthorizationCodeGrant", "CodeChallenge", "register_grants"] | CODE |
| LOW | server/polar/kit/cors.py | 78 | __all__ = ["CORSConfig", "CORSMatcherMiddleware", "Scope"] | CODE |
| LOW | server/polar/kit/routing.py | 206 | __all__ = [ | CODE |
| LOW | server/polar/kit/email.py | 48 | __all__ = ["EmailNotValidError", "EmailStrDNS", "unalias_email", "validate_email"] | CODE |
| LOW | server/polar/kit/repository/__init__.py | 11 | __all__ = [ | CODE |
| LOW | server/polar/kit/extensions/sqlalchemy/__init__.py | 4 | __all__ = ["IntEnum", "StringEnum", "sql"] | CODE |
| LOW | server/polar/kit/extensions/sqlalchemy/sql.py | 8 | __all__ = [ | CODE |
| LOW | server/polar/kit/db/postgres.py | 127 | __all__ = [ | CODE |
| LOW | server/polar/kit/db/models/__init__.py | 3 | __all__ = ["IDModel", "Model", "RateLimitGroupMixin", "RecordModel", "TimestampedModel"] | CODE |
| LOW | server/polar/kit/db/models/base.py | 54 | def set_modified_at(self) -> None: | CODE |
| LOW | server/polar/kit/db/models/base.py | 57 | def set_deleted_at(self) -> None: | CODE |
| LOW | server/polar/tax/tax_id.py | 526 | __all__ = [ | CODE |
| LOW | server/polar/tax/calculation/__init__.py | 208 | __all__ = [ | CODE |
| LOW | server/polar/models/user.py | 163 | async def set_tokens(self, *, access_token: str, refresh_token: str | None) -> None: | CODE |
| LOW | server/polar/models/product_price.py | 438 | def set_identity(instance: ProductPrice, *arg: Any, **kw: Any) -> None: | CODE |
| LOW | server/polar/models/subscription.py | 524 | def update_net_amount_from(self, charge: "Order | Checkout") -> None: | CODE |
| LOW | server/polar/models/subscription.py | 543 | def update_meters(self, prices: Sequence["SubscriptionProductPrice"]) -> None: | CODE |
| LOW | server/polar/models/organization.py | 745 | def set_status(self, status: OrganizationStatus) -> None: | CODE |
| LOW | server/polar/models/order.py | 368 | def update_refunds(self, refunded_amount: int, refunded_tax_amount: int) -> None: | CODE |
| LOW | server/polar/models/__init__.py | 121 | __all__ = [ | CODE |
| LOW | server/polar/models/oauth2_client.py | 127 | async def set_client_secret(self, client_secret: str) -> None: | CODE |
| LOW | server/polar/models/oauth2_client.py | 151 | def set_client_secret_sync(self, client_secret: str) -> None: | CODE |
| LOW⚡ | server/polar/models/benefit_grant.py | 205 | def set_granted(self) -> None: | CODE |
| LOW⚡ | server/polar/models/benefit_grant.py | 210 | def set_revoked(self) -> None: | CODE |
| LOW⚡ | server/polar/models/benefit_grant.py | 215 | def set_grant_failed(self, error: Exception) -> None: | CODE |
| LOW | server/polar/backoffice/__init__.py | 78 | __all__ = ["app"] | CODE |
| LOW | server/polar/backoffice/toast.py | 48 | __all__ = ["add_toast", "render_toasts"] | STRING |
| LOW | server/polar/backoffice/customers/__init__.py | 3 | __all__ = ["router"] | CODE |
| LOW | server/polar/backoffice/organizations_v2/endpoints.py | 4643 | __all__ = ["router"] | CODE |
| LOW | …r/polar/backoffice/organizations_v2/views/list_view.py | 881 | __all__ = ["OrganizationListView"] | CODE |
| LOW | …polar/backoffice/organizations_v2/views/detail_view.py | 916 | __all__ = ["OrganizationDetailView"] | CODE |
| LOW | …ce/organizations_v2/views/sections/overview_section.py | 769 | __all__ = ["OverviewSection"] | CODE |
| LOW | …ice/organizations_v2/views/sections/reviews_section.py | 217 | __all__ = ["ReviewsSection"] | CODE |
| LOW | …ce/organizations_v2/views/sections/settings_section.py | 485 | __all__ = ["SettingsSection"] | CODE |
| LOW | …rganizations_v2/views/sections/support_case_section.py | 777 | __all__ = ["SupportCaseSection"] | CODE |
| LOW | …fice/organizations_v2/views/sections/review_section.py | 293 | __all__ = ["ReviewSection"] | CODE |
| LOW | …ations_v2/views/sections/support_cases_list_section.py | 96 | __all__ = ["SupportCasesListSection"] | CODE |
| 102 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server/polar/middlewares.py | 233 | except Exception as exc: | CODE |
| LOW | server/polar/organization/service.py | 679 | except Exception as e: | CODE |
| LOW | server/polar/organization/schemas.py | 307 | except Exception: | CODE |
| LOW | server/polar/webhook/tasks.py | 290 | except Exception as e: | CODE |
| LOW | server/polar/external_event/service.py | 73 | except Exception: | CODE |
| LOW | server/polar/order/service.py | 367 | except Exception: | CODE |
| LOW | server/polar/order/service.py | 1170 | except Exception: | CODE |
| LOW | server/polar/order/service.py | 2022 | except Exception as exc: | CODE |
| LOW | server/polar/order/service.py | 2190 | except Exception: | CODE |
| LOW | server/polar/order/service.py | 2562 | except Exception as e: | CODE |
| LOW | server/polar/order/service.py | 2775 | except Exception as e: | CODE |
| LOW | server/polar/transaction/service/dispute.py | 275 | except Exception as e: | CODE |
| LOW | server/polar/transaction/service/refund.py | 175 | except Exception as e: | CODE |
| LOW | server/polar/transaction/service/refund.py | 274 | except Exception as e: | CODE |
| LOW | server/polar/auth/routing.py | 26 | except Exception: | CODE |
| LOW | server/polar/kit/currency.py | 148 | except Exception: | CODE |
| LOW | …ver/polar/backoffice/organizations_v2/orders_import.py | 408 | except Exception: | CODE |
| LOW | server/polar/backoffice/organizations_v2/endpoints.py | 366 | except Exception: | CODE |
| LOW | server/polar/backoffice/organizations_v2/endpoints.py | 2561 | except Exception as e: | CODE |
| LOW | server/polar/backoffice/organizations_v2/endpoints.py | 3822 | except Exception as e: | CODE |
| LOW | server/polar/backoffice/organizations_v2/endpoints.py | 3861 | except Exception as e: | CODE |
| LOW | …ice/organizations_v2/views/sections/reviews_section.py | 136 | except Exception: | CODE |
| LOW | server/polar/backoffice/email_logs/endpoints.py | 169 | except Exception: | CODE |
| LOW | server/polar/backoffice/benefits/endpoints.py | 186 | except Exception: | CODE |
| LOW | server/polar/backoffice/orders/endpoints.py | 283 | except Exception: | CODE |
| LOW | server/polar/backoffice/orders/endpoints.py | 293 | except Exception: | CODE |
| LOW | server/polar/backoffice/orders/endpoints.py | 810 | except Exception as e: | CODE |
| LOW | server/polar/backoffice/orders/endpoints.py | 979 | except Exception as e: | CODE |
| LOW | server/polar/observability/s3_span_exporter.py | 90 | except Exception: | CODE |
| LOW | server/polar/observability/memory_profile.py | 148 | except Exception as e: | CODE |
| LOW | server/polar/observability/remote_write.py | 194 | except Exception as e: | CODE |
| LOW | server/polar/observability/remote_write.py | 241 | except Exception as e: | CODE |
| LOW⚡ | server/polar/observability/slo.py | 109 | except Exception: | CODE |
| LOW | server/polar/observability/slo_report/tasks.py | 87 | except Exception as e: | CODE |
| LOW | server/polar/checkout/service.py | 1378 | except Exception as e: | CODE |
| LOW | server/polar/checkout/service.py | 1439 | except Exception as e: | CODE |
| LOW | server/polar/checkout/service.py | 1558 | except Exception as e: | CODE |
| LOW | server/polar/subscription/scheduler.py | 35 | except Exception as e: | CODE |
| LOW | server/polar/integrations/plain/service.py | 185 | except Exception: | STRING |
| LOW | server/polar/integrations/github/service/user.py | 38 | except Exception as e: | CODE |
| LOW | …olar/integrations/github_repository_benefit/service.py | 276 | except Exception as e: | CODE |
| LOW | server/polar/integrations/tinybird/service.py | 686 | except Exception as e: | CODE |
| LOW | server/polar/integrations/tinybird/service.py | 1337 | except Exception as e: | CODE |
| LOW | server/polar/integrations/tinybird/client.py | 87 | except Exception: | CODE |
| LOW | server/polar/integrations/resend/endpoints.py | 48 | except Exception: | CODE |
| LOW | server/polar/receipt/render.py | 67 | except Exception: | CODE |
| MEDIUM | server/polar/receipt/render.py | 59 | def main() -> int: | CODE |
| LOW | server/polar/support_case/pdf.py | 31 | except Exception: | CODE |
| LOW | server/polar/support_case/pdf.py | 40 | except Exception: | CODE |
| LOW | server/polar/organization_review/analyzer.py | 718 | except Exception as e: | CODE |
| LOW | server/polar/organization_review/policy.py | 57 | except Exception: | CODE |
| LOW | server/polar/organization_review/policy.py | 113 | except Exception as e: | CODE |
| LOW | server/polar/organization_review/schemas.py | 220 | except Exception: | CODE |
| LOW | server/polar/organization_review/agent.py | 107 | except Exception as e: | CODE |
| LOW | server/polar/organization_review/agent.py | 254 | except Exception as e: | CODE |
| LOW | server/polar/organization_review/agent.py | 328 | except Exception as e: | CODE |
| LOW | server/polar/organization_review/collectors/feedback.py | 35 | except Exception: | CODE |
| LOW | server/polar/organization_review/collectors/setup.py | 38 | except Exception: | CODE |
| LOW | server/polar/organization_review/collectors/setup.py | 139 | except Exception: | CODE |
| LOW | server/polar/organization_review/collectors/setup.py | 170 | except Exception: | CODE |
| 76 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | clients/apps/orbit/src/app/components/input/page.tsx | 79 | name: 'placeholder', | CODE |
| LOW | clients/apps/orbit/src/app/components/textarea/page.tsx | 75 | name: 'placeholder', | CODE |
| LOW | clients/apps/app/targets/widget/widgets.swift | 16 | return SimpleEntry(date: Date(), configuration: ConfigurationAppIntent(), metricValue: 425, metricValueDouble: n | CODE |
| LOW | clients/apps/app/targets/widget/widgets.swift | 872 | SimpleEntry(date: .now, configuration: config, metricValue: 425, metricValueDouble: nil, organizationName: "Acme Inc | CODE |
| LOW | …rc/components/Settings/OrganizationProfileSettings.tsx | 301 | placeholder="Acme Inc" | CODE |
| LOW | …ients/apps/web/src/components/Landing/CostInsights.tsx | 16 | name: 'Jane Doe', | CODE |
| LOW | …ients/apps/web/src/components/Landing/CostInsights.tsx | 23 | name: 'John Doe', | CODE |
| LOW | clients/apps/web/src/components/Landing/Pipeline.tsx | 181 | name="John Doe" | CODE |
| LOW | server/polar/member/schemas.py | 25 | _name_example = "Jane Doe" | CODE |
| LOW | server/polar/backoffice/organizations_v2/endpoints.py | 1336 | "placeholder": "Why are you denying this organization?", | CODE |
| LOW | server/polar/backoffice/organizations_v2/endpoints.py | 1481 | "placeholder": reason_placeholder, | CODE |
| LOW | server/polar/backoffice/organizations_v2/endpoints.py | 2023 | "placeholder": reason_placeholder, | CODE |
| LOW | …r/polar/backoffice/organizations_v2/views/list_view.py | 481 | "placeholder": ("Search organizations by name or slug..."), | CODE |
| LOW | server/polar/customer/schemas/customer.py | 54 | _name_example = "John Doe" | CODE |
| LOW | server/emails/src/preview.ts | 85 | billing_name: 'John Doe', | CODE |
| LOW | server/emails/src/preview.ts | 87 | line1: '123 Main Street', | CODE |
| LOW | server/emails/src/emails/webhook_endpoint_disabled.tsx | 60 | email: 'admin@example.com', | CODE |
| LOW | server/emails/src/emails/notification_new_sale.tsx | 64 | billing_address_line1: '123 Main St', | CODE |
| LOW | …er/emails/src/emails/notification_new_subscription.tsx | 40 | subscriber_name: 'John Doe', | CODE |
| LOW | server/emails/src/emails/organization_offboarded.tsx | 42 | email: 'admin@example.com', | CODE |
| LOW⚡ | server/tests/organization/test_schemas.py | 82 | "Acme Inc", | CODE |
| LOW | server/tests/order/test_service.py | 2517 | billing_name="John Doe", | CODE |
| LOW | server/tests/order/test_service.py | 2597 | billing_name="John Doe", | CODE |
| LOW | server/tests/order/test_service.py | 2618 | billing_name="John Doe", | CODE |
| LOW | server/tests/order/test_service.py | 2640 | billing_name="John Doe", | CODE |
| LOW | server/tests/order/test_service.py | 2676 | billing_name="John Doe", | CODE |
| LOW | server/tests/order/test_service.py | 2696 | billing_name="John Doe", | CODE |
| LOW | server/tests/order/test_service.py | 2717 | billing_name="John Doe", | CODE |
| LOW | server/tests/order/test_service.py | 2739 | billing_name="John Doe", | CODE |
| LOW | server/tests/order/test_service.py | 2769 | billing_name="John Doe", | CODE |
| LOW | server/tests/order/test_service.py | 2796 | billing_name="John Doe", | CODE |
| LOW⚡ | server/tests/member/test_repository.py | 113 | save_fixture, organization=organization, email="user@example.com" | CODE |
| LOW⚡ | server/tests/member/test_repository.py | 118 | email="user@example.com", | CODE |
| LOW | …sts/customer_portal/endpoints/test_customer_session.py | 91 | save_fixture, organization=organization, email="user@example.com" | CODE |
| LOW | …sts/customer_portal/endpoints/test_customer_session.py | 349 | save_fixture, organization=organization, email="user@example.com" | CODE |
| LOW | …sts/customer_portal/endpoints/test_customer_session.py | 354 | email="user@example.com", | CODE |
| LOW⚡ | …tests/customer_portal/service/test_customer_session.py | 107 | save_fixture, organization=organization, email="user@example.com" | CODE |
| LOW | …tests/customer_portal/service/test_customer_session.py | 202 | save_fixture, organization=organization, email="user@example.com" | CODE |
| LOW | …tests/customer_portal/service/test_customer_session.py | 207 | email="user@example.com", | CODE |
| LOW⚡ | …er/tests/customer_portal/service/test_benefit_grant.py | 553 | properties={"invited_email": "admin@example.com"}, | CODE |
| LOW⚡ | …er/tests/customer_portal/service/test_benefit_grant.py | 559 | "invited_email": "admin@example.com", | CODE |
| LOW⚡ | …er/tests/customer_portal/service/test_benefit_grant.py | 605 | properties={"invited_email": "admin@example.com"}, | CODE |
| LOW⚡ | …er/tests/customer_portal/service/test_benefit_grant.py | 612 | "invited_email": "admin@example.com", | CODE |
| LOW | …er/tests/customer_portal/service/test_benefit_grant.py | 646 | "invited_email": "admin@example.com", | CODE |
| LOW | …er/tests/customer_portal/service/test_benefit_grant.py | 657 | properties={"invited_email": "admin@example.com"}, | CODE |
| LOW | …er/tests/customer_portal/service/test_benefit_grant.py | 664 | "invited_email": "admin@example.com", | CODE |
| LOW⚡ | server/tests/kit/test_anonymization.py | 36 | result = anonymize_email_for_deletion("user@example.com", created_at) | CODE |
| LOW⚡ | server/tests/kit/test_anonymization.py | 42 | email = "user@example.com" | CODE |
| LOW⚡ | server/tests/kit/test_anonymization.py | 52 | email = "user@example.com" | CODE |
| LOW | server/tests/tax/calculation/test_numeral.py | 16 | line1="123 Main St", | CODE |
| LOW | server/tests/tax/calculation/test_stripe.py | 16 | line1="123 Main St", | CODE |
| LOW | server/tests/models/test_oauth_account.py | 16 | account_email="foo@bar.com", | CODE |
| LOW | …s/observability/observability/test_s3_span_exporter.py | 166 | "attributes": {"Email": "test@test.com", "USERNAME": "test"}, | CODE |
| LOW⚡ | server/tests/checkout/test_service.py | 2812 | "customer_name": "John Doe", | CODE |
| LOW⚡ | server/tests/checkout/test_service.py | 2815 | "company": "Acme Inc", | CODE |
| LOW⚡ | server/tests/checkout/test_service.py | 2822 | assert checkout.customer_name == "John Doe" | CODE |
| LOW⚡ | server/tests/checkout/test_service.py | 2824 | assert checkout.custom_field_data == {"company": "Acme Inc"} | CODE |
| LOW⚡ | server/tests/checkout/test_service.py | 5769 | "line1": "123 Main St", | CODE |
| LOW | server/tests/checkout/test_service.py | 4614 | "line1": "123 Main St", | CODE |
| LOW | server/tests/checkout/test_service.py | 5062 | "line1": "123 Main St", | CODE |
| 72 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server/polar/webhook/endpoints.py | 167 | CODE | |
| LOW | server/polar/event_type/service.py | 42 | CODE | |
| LOW | server/polar/event_type/endpoints.py | 25 | CODE | |
| LOW | server/polar/order/service.py | 371 | CODE | |
| LOW | server/polar/order/endpoints.py | 63 | CODE | |
| LOW | server/polar/metrics/endpoints.py | 58 | CODE | |
| LOW | server/polar/metrics/endpoints.py | 153 | CODE | |
| LOW | server/polar/checkout_link/endpoints.py | 160 | CODE | |
| LOW | server/polar/auth/service.py | 64 | CODE | |
| LOW | server/polar/auth/oauth2/router.py | 79 | CODE | |
| LOW | server/polar/auth/sso/endpoints.py | 185 | CODE | |
| LOW | server/polar/payment/service.py | 47 | CODE | |
| LOW | server/polar/payment/endpoints.py | 30 | CODE | |
| LOW | server/polar/customer_portal/endpoints/benefit_grant.py | 56 | CODE | |
| LOW | server/polar/customer_portal/service/benefit_grant.py | 45 | CODE | |
| LOW | server/polar/kit/html.py | 22 | CODE | |
| LOW | server/polar/kit/csv.py | 57 | CODE | |
| LOW | server/polar/kit/db/postgres.py | 47 | CODE | |
| LOW | server/polar/kit/db/postgres.py | 81 | CODE | |
| LOW | server/polar/backoffice/organizations_v2/endpoints.py | 432 | CODE | |
| LOW | …r/polar/backoffice/organizations_v2/views/list_view.py | 341 | CODE | |
| LOW | server/polar/backoffice/support_cases/queries.py | 44 | CODE | |
| LOW | server/polar/product/service.py | 72 | CODE | |
| LOW | server/polar/product/endpoints.py | 53 | CODE | |
| LOW | server/polar/checkout/service.py | 258 | CODE | |
| LOW | server/polar/subscription/service.py | 345 | CODE | |
| LOW | server/polar/subscription/endpoints.py | 63 | CODE | |
| LOW | server/polar/email_update/endpoints.py | 63 | CODE | |
| LOW | server/polar/meter/endpoints.py | 103 | CODE | |
| LOW | server/polar/event/service.py | 84 | CODE | |
| LOW | server/polar/event/service.py | 285 | CODE | |
| LOW | server/polar/event/tinybird_repository.py | 106 | CODE | |
| LOW | server/polar/event/tinybird_repository.py | 222 | CODE | |
| LOW | server/polar/event/tinybird_repository.py | 267 | CODE | |
| LOW | server/polar/event/tinybird_repository.py | 393 | CODE | |
| LOW | server/polar/event/endpoints.py | 71 | CODE | |
| LOW | server/polar/event/endpoints.py | 218 | CODE | |
| LOW | server/polar/event/endpoints.py | 274 | CODE | |
| LOW | server/polar/event/endpoints.py | 326 | CODE | |
| LOW | server/polar/event/endpoints.py | 383 | CODE | |
| LOW | server/polar/refund/service.py | 115 | CODE | |
| LOW | server/polar/refund/endpoints.py | 25 | CODE | |
| LOW | server/polar/benefit/service.py | 36 | CODE | |
| LOW | server/tests/metrics/test_tinybird_metrics.py | 1090 | CODE | |
| LOW | server/tests/transaction/conftest.py | 31 | CODE | |
| LOW | server/tests/merchant_migration/test_precheck.py | 101 | CODE | |
| LOW | server/tests/integrations/polar/test_service.py | 1958 | CODE | |
| LOW | server/tests/scripts/test_reingest_missing_events.py | 24 | CODE | |
| LOW | server/tests/organization_review/test_feedback.py | 111 | CODE | |
| LOW | server/tests/refund/test_service.py | 125 | CODE | |
| LOW | server/scripts/preview.py | 1159 | CODE | |
| LOW | sdk/python/polar/v2026_04/payments.py | 22 | CODE | |
| LOW | sdk/python/polar/v2026_04/payments.py | 82 | CODE | |
| LOW | sdk/python/polar/v2026_04/payments.py | 176 | CODE | |
| LOW | sdk/python/polar/v2026_04/payments.py | 236 | CODE | |
| LOW | sdk/python/polar/v2026_04/checkouts.py | 35 | CODE | |
| LOW | sdk/python/polar/v2026_04/checkouts.py | 92 | CODE | |
| LOW | sdk/python/polar/v2026_04/checkouts.py | 369 | CODE | |
| LOW | sdk/python/polar/v2026_04/checkouts.py | 426 | CODE | |
| LOW | sdk/python/polar/v2026_04/events.py | 31 | CODE | |
| 42 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …s/apps/web/e2e/healing/prompts/e2e-checkout-healing.md | 17 | ### Step 1: Read the failing test | COMMENT |
| LOW | …s/apps/web/e2e/healing/prompts/e2e-checkout-healing.md | 21 | ### Step 2: Reproduce the test manually | COMMENT |
| LOW | …s/apps/web/e2e/healing/prompts/e2e-checkout-healing.md | 37 | ### Step 3: Classify the failure | COMMENT |
| LOW | …s/apps/web/e2e/healing/prompts/e2e-checkout-healing.md | 45 | ### Step 4: Take action based on classification | COMMENT |
| LOW | …s/apps/web/e2e/healing/prompts/e2e-checkout-healing.md | 114 | ### Step 5: Check for suspicious recent PRs | COMMENT |
| LOW | .agents/skills/interview-task/SKILL.md | 19 | ## Step 1: fork the Polar repository to a private GitHub repository dedicated to the candidate | COMMENT |
| LOW⚡ | .agents/skills/interview-task/SKILL.md | 33 | ## Step 2: create a branch for the PR | COMMENT |
| LOW⚡ | .agents/skills/interview-task/SKILL.md | 43 | ## Step 3: make changes to the codebase using LLM agent | COMMENT |
| LOW⚡ | .agents/skills/interview-task/SKILL.md | 47 | ## Step 4: create a pull request | COMMENT |
| LOW⚡ | .agents/skills/interview-task/SKILL.md | 55 | ## Step 5: add a comment to the PR asking the candidate to review it | COMMENT |
| LOW | .agents/skills/handbook-backend-development/SKILL.md | 14 | ## Step 1: Create the file | COMMENT |
| LOW | .agents/skills/handbook-backend-development/SKILL.md | 39 | ## Step 2: Explore and draft the content of the entry | COMMENT |
| LOW | .agents/skills/handbook-backend-development/SKILL.md | 43 | ## Step 3: Ask for feedback | COMMENT |
| LOW | .agents/skills/render-env/SKILL.md | 36 | ## Step 1: Add the tfe_variable to each global/{env}.tf | COMMENT |
| LOW | .agents/skills/render-env/SKILL.md | 54 | ## Step 2: Add the variable {} block to each {env}/variables.tf | COMMENT |
| LOW | .agents/skills/render-env/SKILL.md | 68 | ## Step 3: Format | COMMENT |
| LOW | .agents/skills/render-env/SKILL.md | 78 | ## Step 4: Hand off | COMMENT |
| LOW⚡ | .agents/skills/fix-sentry/SKILL.md | 16 | ## Step 1: Analyze the Sentry issue | COMMENT |
| LOW⚡ | .agents/skills/fix-sentry/SKILL.md | 20 | ## Step 2: correlate with Logfire logs | COMMENT |
| LOW⚡ | .agents/skills/fix-sentry/SKILL.md | 28 | ## Step 3: Search source code | COMMENT |
| LOW⚡ | .agents/skills/fix-sentry/SKILL.md | 32 | ### Step 4: Analyze findings | COMMENT |
| LOW⚡ | .agents/skills/fix-sentry/SKILL.md | 36 | ## Step 5: Implement a fix | COMMENT |
| LOW⚡ | .agents/skills/add-locale/SKILL.md | 19 | ## Step 1: Sync main | COMMENT |
| LOW⚡ | .agents/skills/add-locale/SKILL.md | 28 | ## Step 2: Create the branch | COMMENT |
| LOW⚡ | .agents/skills/add-locale/SKILL.md | 34 | ## Step 3: Register the locale | COMMENT |
| LOW | .agents/skills/add-locale/SKILL.md | 48 | ## Step 4: Generate the translation file | COMMENT |
| LOW | .agents/skills/add-locale/SKILL.md | 62 | ## Step 5: Wire the locale into the i18n entrypoint | COMMENT |
| LOW | .agents/skills/add-locale/SKILL.md | 80 | ## Step 6: Update the public docs | COMMENT |
| LOW | .agents/skills/add-locale/SKILL.md | 94 | ## Step 7: Hand back to the user | COMMENT |
| LOW⚡ | server/polar/integrations/plain/service.py | 1348 | # Step 1: Try read-only lookup by email (handles legacy customers) | COMMENT |
| LOW⚡ | server/polar/integrations/plain/service.py | 1357 | # Step 2: Not found by email - upsert with external_id as identifier | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 939 | # Step 1: Find | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 944 | # Step 2: Restore | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 953 | # Step 3: Verify grant | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 961 | # Step 4: Verify license key | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 968 | # Step 5: Running find again should return nothing | COMMENT |
| LOW⚡ | server/tests/customer_seat/test_service.py | 2757 | # Step 1: Assign a seat to the email (this creates a member) | COMMENT |
| LOW⚡ | server/tests/customer_seat/test_service.py | 2764 | # Step 2: Revoke the seat (this clears member_id, customer_id, email from seat) | COMMENT |
| LOW⚡ | server/tests/customer_seat/test_service.py | 2771 | # Step 3: Soft delete the member | COMMENT |
| LOW | server/tests/customer_seat/test_service.py | 2784 | # Step 4: Try to assign a new seat to the same email | COMMENT |
| LOW | server/scripts/migrate_organizations_members.py | 195 | # Step 1: Enable member_model_enabled | COMMENT |
| LOW | server/scripts/migrate_organizations_members.py | 208 | # Step 2: Run backfill steps directly | COMMENT |
| LOW⚡ | server/scripts/tax_filing_imports.py | 233 | # Step 1: Count rows | COMMENT |
| LOW⚡ | server/scripts/tax_filing_imports.py | 239 | # Step 2: Load CSV | COMMENT |
| LOW⚡ | server/scripts/tax_filing_imports.py | 246 | # Step 3: Process batches | COMMENT |
| LOW⚡ | dev/cli/up_steps/09_configure_integrations.py | 151 | # Step 1: Install Stripe CLI | COMMENT |
| LOW | dev/cli/up_steps/09_configure_integrations.py | 165 | # Step 2: Log in to Stripe | COMMENT |
| LOW | dev/cli/up_steps/09_configure_integrations.py | 185 | # Step 3: Fetch API keys | COMMENT |
| LOW | dev/cli/up_steps/09_configure_integrations.py | 198 | # Step 4: Get webhook secret | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | server/polar/product/schemas.py | 653 | "If null, it defaults to the organization's default tax behavior." | CODE |
| HIGH | server/polar/meter/filter.py | 84 | # Otherwise return false | COMMENT |
| HIGH | server/polar/meter/filter.py | 93 | # Otherwise return false | COMMENT |
| HIGH | server/tests/dispute/test_service.py | 174 | # Stripe drops network_reason_code and evidence_details.due_by when null, | COMMENT |
| HIGH | server/scripts/backfill_customer_name.py | 58 | null, so its orders get a null ``billing_name`` and can never produce an | STRING |
| HIGH | server/scripts/snooze_stale_reviews.py | 144 | ELSE internal_notes || E'\\n\\n' || :note | CODE |
| HIGH | server/scripts/reset_unconfigured_grandfathered_orgs.py | 274 | ELSE internal_notes || E'\\n\\n' || :note | CODE |
| HIGH | server/scripts/backfill_order_billing_name.py | 55 | ``billing_address``) being non-null, so orders snapshotted from a nameless | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 5725 | """The tax behavior of the price. If null, it defaults to the organization's default tax behavior.""" | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 5773 | """The tax behavior of the price. If null, it defaults to the organization's default tax behavior.""" | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 7942 | """The tax behavior of the price. If null, it defaults to the organization's default tax behavior.""" | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 7981 | """The tax behavior of the price. If null, it defaults to the organization's default tax behavior.""" | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 8033 | """The tax behavior of the price. If null, it defaults to the organization's default tax behavior.""" | STRING |
| HIGH | sdk/python/polar/v2026_04/outputs.py | 8074 | """The tax behavior of the price. If null, it defaults to the organization's default tax behavior.""" | STRING |
| HIGH | sdk/generator/typescript/types.py | 27 | return f"({inner} | null)" | CODE |
| HIGH | sdk/generator/generator/release.py | 21 | cmd = "set -o pipefail && uv run -m --directory ../../server scripts.generate_openapi | jq -r" | CODE |
| HIGH | sdk/generator/generator/ir.py | 79 | Produced by the anyOf: [{...}, {type: null}] pattern that is dominant in | STRING |
| HIGH | dev/cli/up_steps/02_setup_node.py | 147 | console.print("Run: [bold]source ~/.nvm/nvm.sh && nvm use[/bold]") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server/polar/organization/tasks.py | 611 | # Check if grant belongs to an old seat-holder customer | COMMENT |
| LOW | server/polar/organization/tasks.py | 785 | # Check if customer has any subscriptions | COMMENT |
| LOW | server/polar/organization/tasks.py | 797 | # Check if customer has any orders | COMMENT |
| LOW | server/polar/organization/endpoints.py | 517 | # Check if user is already member of organization | COMMENT |
| LOW | server/polar/organization/endpoints.py | 594 | # Check if user is the only member | COMMENT |
| LOW | server/polar/webhook/service.py | 397 | # Check if all recent events are failures | COMMENT |
| LOW | server/polar/member/service.py | 798 | # Check if caller has permission to transfer ownership | COMMENT |
| LOW | server/polar/oauth2/authorization_server.py | 90 | # Check if this is a public client (token_endpoint_auth_method = none) | COMMENT |
| LOW | server/polar/oauth2/authorization_server.py | 154 | # Check if this is a public client (token_endpoint_auth_method = none) | COMMENT |
| LOW | server/polar/oauth2/grants/authorization_code.py | 339 | # Check if the sub has granted the requested scope or a subset of it | COMMENT |
| LOW | server/polar/models/subscription.py | 554 | # Check if the meter already exists in the subscription | COMMENT |
| LOW | server/polar/backoffice/users/endpoints.py | 648 | # Check if user can be deleted | COMMENT |
| LOW | server/polar/backoffice/orders/endpoints.py | 776 | # Check if order can be refunded | COMMENT |
| LOW | server/polar/backoffice/orders/endpoints.py | 965 | # Check if order can be voided | COMMENT |
| LOW | server/polar/cli/endpoints.py | 40 | # Check if this is a webhook event | COMMENT |
| LOW | server/polar/observability/utils.py | 15 | # Check if app is excluded (e.g., backoffice) | COMMENT |
| LOW⚡ | server/polar/observability/slo.py | 118 | # Check if p99 exceeds target for any critical endpoint: | STRING |
| LOW | server/polar/billing_entry/service.py | 121 | # Check if this meter uses a non-summable aggregation | COMMENT |
| LOW | server/polar/subscription/service.py | 887 | # Check if discount is still applicable | COMMENT |
| LOW | server/polar/worker/_debounce.py | 71 | # Set TTL to avoid keys being stuck in Redis | COMMENT |
| LOW | server/polar/customer_seat/service.py | 1039 | # Check if seat already assigned to this customer | COMMENT |
| LOW | server/polar/meter/service.py | 230 | # Check if meter is attached to any active ProductPriceMeteredUnit | COMMENT |
| LOW | server/polar/meter/service.py | 254 | # Check if meter is referenced by any active Benefits with meter_credit type | COMMENT |
| LOW | server/polar/refund/service.py | 314 | # Check if there are disputes to link | COMMENT |
| LOW | server/tests/order/test_service.py | 5015 | # Set organization to use customer-based invoice numbering | COMMENT |
| LOW | server/tests/member/test_service.py | 367 | # Set name to None after creation | COMMENT |
| LOW | …sts/customer_portal/endpoints/test_customer_session.py | 393 | # Set name to None | COMMENT |
| LOW | server/scripts/void_eligible_orders.py | 132 | # Check if order is still pending (might have changed since query) | COMMENT |
| LOW | …ver/scripts/transfer_products_between_organizations.py | 140 | # Check if all products belong to the same organization | COMMENT |
| LOW | …ver/scripts/transfer_products_between_organizations.py | 218 | # Check if customer has orders for non-transferring products | COMMENT |
| LOW | …ver/scripts/transfer_products_between_organizations.py | 233 | # Check if customer has subscriptions for non-transferring products | COMMENT |
| LOW | …ver/scripts/transfer_products_between_organizations.py | 352 | # Check if this discount is used by non-transferring products | COMMENT |
| LOW | …ver/scripts/transfer_products_between_organizations.py | 467 | # Check if a customer with the same email already exists in target organization | COMMENT |
| LOW | …ver/scripts/transfer_products_between_organizations.py | 612 | # Check if a customer with the same email already exists in target organization | COMMENT |
| LOW | server/scripts/seeds_load.py | 1238 | # Check if seed data already exists | COMMENT |
| LOW | server/scripts/plain_comm.py | 249 | # Check if not already sent | COMMENT |
| LOW | server/scripts/backfill_missing_balance_order_event.py | 48 | # Check if either event already exists | COMMENT |
| LOW⚡ | docs/update-schema.sh | 8 | # Check if jq is installed | COMMENT |
| LOW⚡ | docs/update-schema.sh | 14 | # Check if there is exactly one positional argument | COMMENT |
| LOW | .github/workflows/link_pr_to_issue.yaml | 44 | # Check if the fix reference already exists in the description | COMMENT |
| LOW | .github/workflows/e2e_flakiness_analysis.yaml | 206 | # Check if Claude created a PR (flaky fix) | COMMENT |
| LOW | dev/docker/scripts/startup.sh | 203 | # Check if any organizations exist to determine if seeds are needed | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | terraform/scripts/plan-diff.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | terraform/modules/s3_buckets/main.tf | 101 | } | COMMENT |
| LOW | clients/examples/checkout-components/next-env.d.ts | 1 | /// <reference types="next" /> | COMMENT |
| LOW | clients/packages/orbit/src/tokens/tokens.stylex.ts | 1 | // ─── Public Token Barrel ────────────────────────────────────────────────────── | COMMENT |
| LOW | clients/packages/orbit/src/tokens/value.stylex.ts | 1 | // ─── Value Tokens (Tier 1 — Primitives) ─────────────────────────────────────── | COMMENT |
| LOW | clients/apps/app/expo-env.d.ts | 1 | /// <reference types="expo/types" /> | COMMENT |
| LOW | …web/src/app/(main)/feedback/question/dashboardPaths.ts | 1 | // Allowed dashboard paths for assistant deep-links. Each entry is appended to | COMMENT |
| LOW | clients/apps/web/src/utils/planSavings.test.ts | 181 | it('returns variable + fixed savings minus monthly plan cost', () => { | COMMENT |
| LOW | infra/preview/setup-vm.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | infra/preview/deploy.sh | 181 | log "Seed data already loaded, skipping" | COMMENT |
| LOW | infra/preview/deploy.sh | 201 | # NEXT_PUBLIC_FRONTEND_BASE_URL=${PREVIEW_URL} | COMMENT |
| LOW | server/alembic.ini | 1 | # A generic, single database configuration. | COMMENT |
| LOW | server/alembic.ini | 21 | # string value is passed to dateutil.tz.gettz() | COMMENT |
| LOW | server/alembic.ini | 41 | # The path separator used here should be the separator specified by "version_path_separator" below. | COMMENT |
| LOW | server/polar/tax/repository.py | 41 | # Only US and Canada are reported at the state level; everywhere else is | COMMENT |
| LOW | server/polar/backoffice/middlewares.py | 61 | COMMENT | |
| LOW | server/polar/backoffice/tasks/endpoints.py | 41 | # if value is not None: | COMMENT |
| LOW | server/polar/customer_meter/service.py | 161 | # ) | COMMENT |
| LOW | server/polar/customer_meter/service.py | 201 | # customer_id=str(customer.id), | COMMENT |
| LOW | server/polar/customer_meter/service.py | 221 | # if old_credit_ids != new_credit_ids: | COMMENT |
| LOW | server/polar/integrations/aws/s3/schemas.py | 141 | # S3 SHA-256 BASE64 validation for multipart upload is special. | COMMENT |
| LOW | server/polar/compass/service.py | 61 | COMMENT | |
| LOW | server/polar/authz/dependencies.py | 201 | ), | COMMENT |
| LOW | server/polar/startup_program/service.py | 101 | return existing | COMMENT |
| LOW | server/polar/invoice/generator.py | 441 | ) -> None: | COMMENT |
| LOW | server/emails/tsconfig.json | 21 | // "jsxFactory": "", /* Specify the JSX factory function used when targeting React J | COMMENT |
| LOW | server/emails/tsconfig.json | 41 | // "rewriteRelativeImportExtensions": true, /* Rewrite '.ts', '.tsx', '.mts', and '.cts' file extensions in | COMMENT |
| LOW | server/emails/tsconfig.json | 61 | // "noEmit": true, /* Disable emitting files from a compilation. */ | COMMENT |
| LOW | server/emails/tsconfig.json | 81 | // "isolatedDeclarations": true, /* Require sufficient annotation on exports so other tools can | COMMENT |
| LOW | server/emails/tsconfig.json | 101 | // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly | COMMENT |
| LOW | server/tests/subscription/test_service_prorations.py | 61 | # not a subscription in Stripe. | COMMENT |
| LOW | server/tests/event/test_service.py | 1981 | # session: AsyncSession, | COMMENT |
| LOW | server/tests/event/test_service.py | 2001 | COMMENT | |
| LOW | server/tests/event/test_service.py | 2021 | # ) | COMMENT |
| LOW | server/scripts/seeds_load.py | 1681 | # { | COMMENT |
| LOW | server/scripts/seeds_load.py | 2181 | COMMENT | |
| LOW | sdk/python/README.md | 1 | # Polar Python SDK | COMMENT |
| LOW | .github/workflows/deploy.yml | 41 | # Why per-env: sandbox can be ahead of production (failed prod deploy | COMMENT |
| LOW | .github/workflows/deploy.yml | 81 | # would silently emit "key=" (empty value) instead of aborting. | COMMENT |
| LOW | .github/workflows/deploy-environment.yml | 101 | "${{ inputs.render-worker-service-ids }}" | COMMENT |
| LOW | .github/workflows/deploy-environment.yml | 161 | env: | COMMENT |
| LOW | dev/cli/cli.py | 1 | #!/usr/bin/env -S uv run -s | COMMENT |
| LOW | dev/cli/commands/snap.py | 81 | # a fixed base (env + server boot, both branches) plus per-URL. ONE shared, | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | server/polar/integrations/plain/service.py | 1348 | # Step 1: Try read-only lookup by email (handles legacy customers) | COMMENT |
| LOW⚡ | server/polar/integrations/plain/service.py | 1357 | # Step 2: Not found by email - upsert with external_id as identifier | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 939 | # Step 1: Find | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 944 | # Step 2: Restore | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 953 | # Step 3: Verify grant | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 961 | # Step 4: Verify license key | COMMENT |
| LOW⚡ | server/tests/scripts/test_restore_oneoff_grants.py | 968 | # Step 5: Running find again should return nothing | COMMENT |
| LOW⚡ | server/tests/customer_seat/test_service.py | 2757 | # Step 1: Assign a seat to the email (this creates a member) | COMMENT |
| LOW⚡ | server/tests/customer_seat/test_service.py | 2764 | # Step 2: Revoke the seat (this clears member_id, customer_id, email from seat) | COMMENT |
| LOW⚡ | server/tests/customer_seat/test_service.py | 2771 | # Step 3: Soft delete the member | COMMENT |
| LOW | server/tests/customer_seat/test_service.py | 2784 | # Step 4: Try to assign a new seat to the same email | COMMENT |
| LOW | server/scripts/migrate_organizations_members.py | 195 | # Step 1: Enable member_model_enabled | COMMENT |
| LOW | server/scripts/migrate_organizations_members.py | 208 | # Step 2: Run backfill steps directly | COMMENT |
| LOW⚡ | server/scripts/tax_filing_imports.py | 233 | # Step 1: Count rows | COMMENT |
| LOW⚡ | server/scripts/tax_filing_imports.py | 239 | # Step 2: Load CSV | COMMENT |
| LOW⚡ | server/scripts/tax_filing_imports.py | 246 | # Step 3: Process batches | COMMENT |
| LOW⚡ | dev/cli/up_steps/09_configure_integrations.py | 151 | # Step 1: Install Stripe CLI | COMMENT |
| LOW | dev/cli/up_steps/09_configure_integrations.py | 165 | # Step 2: Log in to Stripe | COMMENT |
| LOW | dev/cli/up_steps/09_configure_integrations.py | 185 | # Step 3: Fetch API keys | COMMENT |
| LOW | dev/cli/up_steps/09_configure_integrations.py | 198 | # Step 4: Get webhook secret | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | clients/apps/web/src/utils/getResizedImage.ts | 27 | // in an SSR/email environment we do this for simplicity and to leverage caching. | COMMENT |
| MEDIUM | clients/apps/web/src/components/Landing/Logotypes.tsx | 43 | // Duplicate for seamless marquee loop | COMMENT |
| LOW | server/polar/organization/tasks.py | 475 | # else: no customer and no email — just set customer_id below | COMMENT |
| MEDIUM | server/polar/organization_review/analyzer.py | 697 | # A product-change review is a comprehensive re-review of an | COMMENT |
| LOW | server/polar/event/service.py | 1016 | # events whose root_id was just set because an ancestor arrived in | COMMENT |
| MEDIUM | server/tests/metrics/test_tinybird_metrics.py | 1585 | # The harness commits shared seed data once for speed, so it can't use the | COMMENT |
| MEDIUM | server/tests/metrics/test_service.py | 2325 | # The harness commits shared seed data once for speed, so it can't use the | COMMENT |
| MEDIUM | server/tests/payout/test_endpoints.py | 106 | # harness doesn't provide. The authz check raises before the | COMMENT |
| MEDIUM | dev/cli/commands/status.py | 1 | """Show comprehensive environment status.""" | STRING |
| MEDIUM | dev/cli/commands/status.py | 147 | """Show comprehensive environment status.""" | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | server/polar/customer/repository.py | 59 | customer_id = Customer.__table__.c.id.default.arg(None) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | server/polar/worker/_broker.py | 223 | # Group completion callbacks for orchestrating task sequences | COMMENT |
| MEDIUM | server/tests/order/test_service.py | 6098 | # here we only assert finalize's orchestration drives it with a paid | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | server/tests/merchant_migration/test_endpoints.py | 295 | CODE | |
| MEDIUM | server/tests/cli/test_endpoints.py | 183 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | terraform/scripts/plan-diff.sh | 6 | # Usage: | COMMENT |
| LOW | infra/preview/deploy.sh | 6 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server/polar/worker/_runner.py | 154 | async def run_task( | CODE |