Repository Analysis

wealthfolio/wealthfolio

A beautiful, private, local-first personal finance tracker. Investments, net worth, spending, and simulations.

4.4 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of wealthfolio/wealthfolio, a Rust project with 8,243 GitHub stars. SynthScan v2.0 examined 629,494 lines of code across 1899 source files, recording 1359 pattern matches distributed across 11 syntactic categories. The overall adjusted score of 4.4 places this repository in the Likely human-written 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).

4.4
Adjusted Score
4.4
Raw Score
100%
Time Factor
2026-07-13
Last Push
8.2K
Stars
Rust
Language
629.5K
Lines of Code
1.9K
Files
1.4K
Pattern Hits
2026-07-14
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.

No multi-scan history yet — run the scanner again to build trend data.

Severity Breakdown

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.

CRITICAL 0HIGH 5MEDIUM 660LOW 694

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 1359 distinct pattern matches across 11 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.

Decorative Section Separators647 hits · 1974 pts
SeverityFileLineSnippetContext
MEDIUMcompose.yml24 # ── Authentication ────────────────────────────────────────────────COMMENT
MEDIUMcompose.yml43 # ── OIDC / SSO (optional) ─────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs9// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs11// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs31// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs33// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs202// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs204// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs327// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs329// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs415// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs417// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs500// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/types.rs502// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs550 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs552 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs651 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs653 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs761 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs763 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs1211 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs1213 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs1320 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/client.rs1322 // ─────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs19// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs21// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs32// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs34// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs129// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs131// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs160 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs162 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs442 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs444 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs547 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMcrates/device-sync/src/enroll_service.rs549 // ═══════════════════════════════════════════════════════════════════════════COMMENT
MEDIUMcrates/device-sync/src/engine/runtime.rs13// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/engine/runtime.rs15// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/engine/runtime.rs53// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/device-sync/src/engine/runtime.rs176 // ─── Pairing flow store ──────────────────────────────────────────────COMMENT
MEDIUMcrates/market-data/src/provider/metal_price_api/mod.rs467 // ── Integration tests (require METAL_PRICE_API_KEY env var) ──────COMMENT
MEDIUMcrates/market-data/src/resolver/mod.rs11//! ┌─────────────────────────────────────────────────────────────────────────────┐COMMENT
MEDIUMcrates/market-data/src/resolver/mod.rs14//! │ ┌────────────────────────────────────────────────────────────────────────┐ │COMMENT
MEDIUMcrates/market-data/src/resolver/mod.rs18//! │ └────────────────────────────────────────────────────────────────────────┘ │COMMENT
MEDIUMcrates/market-data/src/resolver/mod.rs21//! │ ┌────────────────────────────────────────────────────────────────────────┐ │COMMENT
MEDIUMcrates/market-data/src/resolver/mod.rs25//! │ └────────────────────────────────────────────────────────────────────────┘ │COMMENT
MEDIUMcrates/market-data/src/resolver/mod.rs26//! └─────────────────────────────────────────────────────────────────────────────┘COMMENT
MEDIUMcrates/market-data/src/resolver/exchange_registry.rs11// ── JSON schema ──────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/market-data/src/resolver/exchange_registry.rs54// ── Public API type for frontend consumption ─────────────────────────────────COMMENT
MEDIUMcrates/market-data/src/resolver/exchange_registry.rs84// ── Registry with pre-built indexes ──────────────────────────────────────────COMMENT
MEDIUMcrates/agent-tools/src/tools/activity_import.rs80 // ── Resolved asset identity (populated during validation) ──────────────COMMENT
MEDIUMcrates/agent-tools/src/tools/activity_import.rs91 // ── Duplicate / validation ─────────────────────────────────────────────COMMENT
MEDIUMcrates/agent-tools/src/tools/activity_import.rs233// ── get_import_mapping ──────────────────────────────────────────────────COMMENT
MEDIUMcrates/agent-tools/src/tools/activity_import.rs305// ── prepare_activity_import ─────────────────────────────────────────────COMMENT
MEDIUMcrates/agent-tools/src/tools/activity_import.rs375// ── commit_activity_import ──────────────────────────────────────────────COMMENT
MEDIUMcrates/core/src/goals/goals_service.rs27// ─── Shared helpers ──────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/core/src/quotes/client.rs9//! ┌─────────────────────────────────────────────────────────────────────┐COMMENT
MEDIUMcrates/core/src/quotes/client.rs12//! │ Asset ─────────────────────────────────────────────▶ core::Quote │COMMENT
MEDIUMcrates/core/src/quotes/client.rs16//! │ ┌─────────────────────────────────────────────────────────────┐ │COMMENT
MEDIUMcrates/core/src/quotes/client.rs21//! │ │ convert ◀──────┘ │ │COMMENT
587 more matches not shown…
Over-Commented Block338 hits · 336 pts
SeverityFileLineSnippetContext
LOWplaywright.config.ts41 },COMMENT
LOWplaywright.config.ts61 // },COMMENT
LOWcompose.yml21 # Required — generate with: openssl rand -base64 32COMMENT
LOWcompose.yml41 # WF_AUTH_REQUIRED: "true"COMMENT
LOWcrates/device-sync/src/types.rs161 pub user_id: String,COMMENT
LOWcrates/device-sync/src/types.rs181 pub app_version: Option<String>,COMMENT
LOWcrates/device-sync/src/types.rs201COMMENT
LOWcrates/device-sync/src/types.rs281COMMENT
LOWcrates/device-sync/src/types.rs341/// Response from creating a pairing session.COMMENT
LOWcrates/device-sync/src/types.rs381 #[serde(alias = "claimer_device_id")]COMMENT
LOWcrates/device-sync/src/types.rs401 pub signature: String,COMMENT
LOWcrates/device-sync/src/types.rs421#[derive(Debug, Clone, Serialize, Deserialize)]COMMENT
LOWcrates/device-sync/src/types.rs441 pub e2ee_key_version: i32,COMMENT
LOWcrates/device-sync/src/types.rs461 /// Message timestampCOMMENT
LOWcrates/device-sync/src/types.rs481 /// Optional HMAC proof that device successfully decrypted the RK bundleCOMMENT
LOWcrates/device-sync/src/lib.rs1//! Wealthfolio Device Sync - Cloud-based device synchronization for Wealthfolio.COMMENT
LOWcrates/device-sync/src/lib.rs21//! ).await?;COMMENT
LOWcrates/market-data/src/lib.rs1//! Wealthfolio Market Data CrateCOMMENT
LOWcrates/market-data/src/lib.rs21//! vCOMMENT
LOWcrates/market-data/src/lib.rs41//!COMMENT
LOWcrates/market-data/src/provider/mod.rs1//! Market data provider abstractions and implementations.COMMENT
LOWcrates/market-data/src/provider/traits.rs21///COMMENT
LOWcrates/market-data/src/provider/traits.rs41/// supports_historical: true,COMMENT
LOWcrates/market-data/src/provider/traits.rs61 /// Provider priority for ordering.COMMENT
LOWcrates/market-data/src/provider/traits.rs81COMMENT
LOWcrates/market-data/src/provider/traits.rs101 ///COMMENT
LOWcrates/market-data/src/provider/traits.rs121 /// # ArgumentsCOMMENT
LOWcrates/market-data/src/provider/traits.rs141 /// * `symbol` - The symbol to fetch profile forCOMMENT
LOWcrates/market-data/src/provider/capabilities.rs1//! Provider capabilities and rate limiting configuration.COMMENT
LOWcrates/market-data/src/provider/metal_price_api/mod.rs1//! Metal Price API provider for precious metals market data.COMMENT
LOWcrates/market-data/src/provider/metal_price_api/mod.rs41struct MetalPriceResponse {COMMENT
LOWcrates/market-data/src/provider/metal_price_api/mod.rs61 #[serde(default)]COMMENT
LOWcrates/market-data/src/provider/finnhub/mod.rs61 /// High pricesCOMMENT
LOWcrates/market-data/src/provider/finnhub/mod.rs81 /// Search resultsCOMMENT
LOWcrates/market-data/src/provider/alpha_vantage/mod.rs101struct CryptoDailyResponse {COMMENT
LOWcrates/market-data/src/provider/alpha_vantage/mod.rs261 #[allow(dead_code)]COMMENT
LOWcrates/market-data/src/provider/alpha_vantage/mod.rs301COMMENT
LOWcrates/market-data/src/provider/marketdata_app/mod.rs1//! MarketData.app provider implementation.COMMENT
LOWcrates/market-data/src/provider/marketdata_app/mod.rs41 /// Open pricesCOMMENT
LOWcrates/market-data/src/provider/marketdata_app/mod.rs61/// Response from the prices endpoint for latest quote.COMMENT
LOWcrates/market-data/src/provider/us_treasury_calc/mod.rs1//! US Treasury calculated-price provider.COMMENT
LOWcrates/market-data/src/models/coverage.rs1//! Provider market coverage restrictions.COMMENT
LOWcrates/market-data/src/models/profile.rs1use serde::{Deserialize, Serialize};COMMENT
LOWcrates/market-data/src/models/mod.rs1//! Market data modelsCOMMENT
LOWcrates/market-data/src/models/provider_params.rs61 #[serde(flatten)]COMMENT
LOWcrates/market-data/src/registry/validator.rs1//! Quote data validation.COMMENT
LOWcrates/market-data/src/registry/provider_registry.rs41 /// Create a new provider registry.COMMENT
LOWcrates/market-data/src/registry/circuit_breaker.rs1//! Per-provider circuit breaker for fault tolerance.COMMENT
LOWcrates/market-data/src/errors/mod.rs1//! Error types and retry classification for the market data crate.COMMENT
LOWcrates/market-data/src/errors/mod.rs21 #[error("Symbol not found: {0}")]COMMENT
LOWcrates/market-data/src/errors/mod.rs61 /// The provider doesn't know how to handle this instrument.COMMENT
LOWcrates/market-data/src/errors/mod.rs81 /// Description of the validation failureCOMMENT
LOWcrates/market-data/src/errors/mod.rs101 /// The provider that doesn't support itCOMMENT
LOWcrates/market-data/src/errors/mod.rs121 ///COMMENT
LOWcrates/market-data/src/errors/retry.rs1/// Classification for retry policy.COMMENT
LOWcrates/market-data/src/errors/retry.rs21 /// Used for transient errors like rate limiting (429) or timeout.COMMENT
LOWcrates/market-data/src/resolver/asset_resolver.rs1//! Asset resolver - resolves from Asset.provider_overrides.COMMENT
LOWcrates/market-data/src/resolver/chain.rs1//! Resolver chain - composite resolver that tries resolvers in order.COMMENT
LOWcrates/market-data/src/resolver/chain.rs21/// A resolver returning `None` means it cannot handle the request,COMMENT
LOWcrates/market-data/src/resolver/mod.rs1//! Symbol resolution for market data providers.COMMENT
278 more matches not shown…
Hyper-Verbose Identifiers292 hits · 300 pts
SeverityFileLineSnippetContext
LOWdocs/features/allocations/sota-target-model-spec.md1004export async function getAllocationAdvisorState(CODE
LOWdocs/features/allocations/sota-target-model-spec.md1010export async function calculateRebalanceScenarios(CODE
LOWpackages/ui/src/components/ui/chart.tsx303function getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) {CODE
LOWpackages/ui/src/components/ui/empty-placeholder.tsx60EmptyPlaceholder.Description = function EmptyPlaceholderDescription({CODE
LOW…i/src/components/data-grid/data-grid-cell-variants.tsx1436function formatDateInputForDisplay(date: Date | string | undefined): string {CODE
LOWpackages/addon-sdk/README.md253function InvestmentFeesTrackerAddon({ ctx }: { ctx: AddonContext }) {CODE
LOWpackages/addon-sdk/src/permissions.ts265export function getPermissionCategoriesByRisk(CODE
LOWpackages/addon-sdk/src/permissions.ts306export function getUndeclaredDetectedFunctions(permission: Permission): string[] {CODE
LOWpackages/addon-sdk/src/permissions.ts315export function hasUndeclaredDetectedFunctions(permission: Permission): boolean {CODE
LOWe2e/helpers.ts70async function canSkipLoginAndOnboardingUi(page: Page) {CODE
LOWe2e/helpers.ts114async function waitForLoginOnboardingOrApp(page: Page, timeout: number) {CODE
LOWe2e/helpers.ts404export async function completeOnboardingIfNeeded(page: Page) {CODE
LOWe2e/02-activities.spec.ts304 async function fillInternalTransferCashAmount(value: number) {CODE
LOWe2e/04-csv-import.spec.ts35async function proceedThroughImportWizard(page: Page, csvPath: string, accountName: string) {CODE
LOWe2e/10-symbol-mapping-validation.spec.ts172 async function setOpenSheetToManualPricing() {CODE
LOWe2e/12-asset-backed-income-subtypes.spec.ts214 async function expectHoldingVisibleInAccount(symbol: string, quantity: number) {CODE
LOWe2e/15-csv-import-currency-resolution.spec.ts30async function searchImportedKwebActivity(page: Page) {CODE
LOWe2e/14-stock-short-workflow.spec.ts186async function assertBuyFormDoesNotOfferBuyShort(page: Page) {CODE
LOWapps/frontend/src/addons/activation-coordinator.ts70export function getPublishedActivationEpoch(): number {CODE
LOWapps/frontend/src/addons/activation-coordinator.ts74export function subscribeToActivationEpoch(listener: () => void): () => void {CODE
LOWapps/frontend/src/addons/contribution-registry.ts50function normalizeContributedRoutePath(path: unknown): string | null {CODE
LOWapps/frontend/src/addons/addons-runtime-context.ts140export function setAddonNavigationHandler(navigate: (route: string) => void) {CODE
LOWapps/frontend/src/addons/addons-runtime-context.ts144export function clearAddonNavigationHandler(navigate: (route: string) => void) {CODE
LOWapps/frontend/src/addons/addons-runtime-context.ts206function getOwnedAddonRouteNamespaces(addonId: string) {CODE
LOWapps/frontend/src/addons/addons-runtime-context.ts220function getRequestedRouteNamespace(path: string) {CODE
LOWapps/frontend/src/addons/addons-runtime-context.ts225function isAddonRouteNamespaceAllowed(addonId: string, path: string) {CODE
LOWapps/frontend/src/addons/addons-runtime-context.ts260function hasRegisteredAddonNavPrefix(addonId: string, path: string) {CODE
LOWapps/frontend/src/addons/addons-runtime-context.ts398export function subscribeToNavigationUpdates(callback: () => void) {CODE
LOWapps/frontend/src/addons/addons-runtime-context.ts407export function triggerAllDisableCallbacks() {CODE
LOWapps/frontend/src/addons/addons-core.ts76function validateAddonCompatibility(manifest: AddonManifest): boolean {CODE
LOWapps/frontend/src/addons/iframe/addon-sandbox-theme.ts14export function collectAddonThemeSnapshot(): AddonThemeSnapshot {CODE
LOWapps/frontend/src/addons/iframe/addon-sandbox-entry.tsx174function createAddonModuleRegistry(code: string, files: SandboxAddonFile[] = []) {CODE
LOW…ontend/src/addons/iframe/addon-module-rewriter.test.ts13function shouldRewriteStaticSpecifier(specifier: string) {CODE
LOWapps/frontend/src/addons/iframe/addon-iframe-manager.ts104function createAddonLoadCancelledError(addonId: string, reason = "was unloaded before it loaded") {CODE
LOWapps/frontend/src/addons/iframe/addon-iframe-manager.ts182function notifyPermissionDenialOnce(addonId: string, method: string | undefined, error: unknown) {CODE
LOWapps/frontend/src/addons/iframe/addon-iframe-manager.ts246function notifyClassifiedAddonErrorOnce(addonId: string, rawMessage: string | undefined) {CODE
LOWapps/frontend/src/addons/iframe/host-dependencies.ts76export function isHostDependencySpecifier(specifier: string) {CODE
LOWapps/frontend/src/addons/iframe/host-dependencies.ts80export function createHostDependencyModuleUrl(specifier: string, objectUrls: Map<string, string>) {CODE
LOW…t-planner/components/retirement-dashboard-skeleton.tsx3export function RetirementDashboardSkeleton() {CODE
LOW…ement-planner/components/retirement-coverage-chart.tsx33function CoverageProjectionTooltip({CODE
LOW…retirement-planner/components/sidebar-configurator.tsx167function highContributionGrowthWarning(value: number, t: TFunction) {CODE
LOW…/features/goals/retirement-planner/lib/plan-adapter.ts8export function inferBirthYearMonthFromAge(age: number, asOf = new Date()) {CODE
LOW…/features/goals/retirement-planner/lib/plan-adapter.ts60export function normalizeDashboardRetirementPlan(plan: RetirementPlan): RetirementPlan {CODE
LOW…eatures/goals/retirement-planner/lib/dashboard-math.ts25export function projectedAnnualExpenseNominalAtAge(plan: RetirementPlan, age: number) {CODE
LOW…eatures/goals/retirement-planner/lib/dashboard-math.ts64export function projectedAnnualIncomeNominalAtAge(CODE
LOW…eatures/goals/retirement-planner/lib/dashboard-math.ts95export function incomeStreamMonthlyAmount(plan: RetirementPlan, stream: RetirementIncomeStream) {CODE
LOW…eatures/goals/retirement-planner/lib/dashboard-math.ts152export function resolveCoverageAnnualNominalValues({CODE
LOW…eatures/goals/retirement-planner/lib/dashboard-math.ts257export function deriveRetirementReadiness({CODE
LOW…ures/goals/retirement-planner/pages/dashboard-page.tsx85function RetirementAnalysisPendingColumn({ error }: { error: Error | null }) {CODE
LOW…tures/goals/retirement-planner/pages/risk-lab-page.tsx909function MonteCarloDistributionSection({CODE
LOW…lio-connect/providers/wealthfolio-connect-provider.tsx203function EnabledWealthfolioConnectProvider({ children }: { children: ReactNode }) {CODE
LOW…lio-connect/providers/wealthfolio-connect-provider.tsx858export function WealthfolioConnectProvider({ children }: { children: ReactNode }) {CODE
LOW…ealthfolio-connect/hooks/use-aggregated-sync-status.ts11function determineAggregatedStatus(CODE
LOW…/src/features/wealthfolio-connect/lib/auth-callback.ts15function isConfiguredHostedCallbackUrl(url: URL, hostedCallbackUrl: string | null): boolean {CODE
LOW…atures/wealthfolio-connect/lib/broker-sync-messages.ts21export function getBrokerSyncIssueMessage(CODE
LOW…/features/wealthfolio-connect/lib/import-run-review.ts1export function hasReviewableActivityWarnings(warnings: number | null | undefined): boolean {CODE
LOW…rc/features/wealthfolio-connect/pages/connect-page.tsx719function BrokerSyncAttentionSection({CODE
LOW…/features/spending/components/spending-tab-content.tsx135function isSpendingDashboardPeriod(CODE
LOW…/features/spending/components/spending-tab-content.tsx141function normalizeSpendingDashboardPeriod(CODE
LOW…/features/spending/components/spending-tab-content.tsx187function insightPeriodForDashboardInterval(code: SpendingDashboardPeriod): ReportsPeriod {CODE
232 more matches not shown…
Verbosity Indicators22 hits · 38 pts
SeverityFileLineSnippetContext
LOWcrates/market-data/src/provider/yahoo/mod.rs171 // Step 1: Get cookie from fc.yahoo.comCOMMENT
LOWcrates/market-data/src/provider/yahoo/mod.rs191 // Step 2: Get crumb using cookieCOMMENT
LOWcrates/core/src/utils/isin.rs148 // Step 1: Convert characters to digit stringCOMMENT
LOWcrates/core/src/utils/isin.rs160 // Step 2: Apply Luhn algorithmCOMMENT
LOW…re/src/portfolio/snapshot/holdings_calculator_tests.rs5709 // Step 1: Deposit 10,000 EURCOMMENT
LOW…re/src/portfolio/snapshot/holdings_calculator_tests.rs5725 // Step 2: Buy 10 AAPL @ $100 + $5 fee, fx_rate = 0.93COMMENT
LOW…re/src/portfolio/snapshot/holdings_calculator_tests.rs5743 // Step 3: Sell all 10 AAPL @ $100 + $5 fee, fx_rate = 0.95COMMENT
LOW…es/storage-sqlite/src/assets/alternative_repository.rs57 // Step 1: Find and unlink any liabilities that reference this assetCOMMENT
LOW…es/storage-sqlite/src/assets/alternative_repository.rs92 // Step 2: Delete all quotes for this asset with source = 'MANUAL'COMMENT
LOW…es/storage-sqlite/src/assets/alternative_repository.rs101 // Step 3: Delete the asset recordCOMMENT
LOWcrates/connect/src/broker/orchestrator.rs179 // Step 1: Sync connections (platforms)COMMENT
LOWcrates/connect/src/broker/orchestrator.rs196 // Step 2: Sync accounts (filter by sync_enabled)COMMENT
LOWcrates/connect/src/broker/orchestrator.rs250 // Step 3: Sync data for all synced accounts based on their tracking modeCOMMENT
LOWe2e/helpers.ts428 // Step 1: Info screen — click ContinueCOMMENT
LOWe2e/helpers.ts432 // Step 2: Preferences — keep e2e assertions deterministic and pick CAD.COMMENT
LOWe2e/helpers.ts439 // Step 3: Appearance — pick Light theme and continueCOMMENT
LOWe2e/helpers.ts444 // Step 4: Finish onboardingCOMMENT
LOW…features/ai-assistant/hooks/use-chat-import-session.ts1005 // Step 1: re-run backend validation on importable drafts so we catchCOMMENT
LOW…features/ai-assistant/hooks/use-chat-import-session.ts1027 // Step 2: filter again after backend validation — only import rows theCOMMENT
LOW…features/ai-assistant/hooks/use-chat-import-session.ts1043 // Step 3: create pending assets, then import the validated activities.COMMENT
LOW…features/ai-assistant/hooks/use-chat-import-session.ts1122 // Step 4: success path — save template + persist tool result.COMMENT
LOWapps/tauri/src/listeners.rs261 // Step 0: Resolve account scope. Specific requests are processed as-is;COMMENT
Structural Annotation Overuse22 hits · 38 pts
SeverityFileLineSnippetContext
LOWcrates/market-data/src/provider/yahoo/mod.rs171 // Step 1: Get cookie from fc.yahoo.comCOMMENT
LOWcrates/market-data/src/provider/yahoo/mod.rs191 // Step 2: Get crumb using cookieCOMMENT
LOWcrates/core/src/utils/isin.rs148 // Step 1: Convert characters to digit stringCOMMENT
LOWcrates/core/src/utils/isin.rs160 // Step 2: Apply Luhn algorithmCOMMENT
LOW…re/src/portfolio/snapshot/holdings_calculator_tests.rs5709 // Step 1: Deposit 10,000 EURCOMMENT
LOW…re/src/portfolio/snapshot/holdings_calculator_tests.rs5725 // Step 2: Buy 10 AAPL @ $100 + $5 fee, fx_rate = 0.93COMMENT
LOW…re/src/portfolio/snapshot/holdings_calculator_tests.rs5743 // Step 3: Sell all 10 AAPL @ $100 + $5 fee, fx_rate = 0.95COMMENT
LOW…es/storage-sqlite/src/assets/alternative_repository.rs57 // Step 1: Find and unlink any liabilities that reference this assetCOMMENT
LOW…es/storage-sqlite/src/assets/alternative_repository.rs92 // Step 2: Delete all quotes for this asset with source = 'MANUAL'COMMENT
LOW…es/storage-sqlite/src/assets/alternative_repository.rs101 // Step 3: Delete the asset recordCOMMENT
LOWcrates/connect/src/broker/orchestrator.rs179 // Step 1: Sync connections (platforms)COMMENT
LOWcrates/connect/src/broker/orchestrator.rs196 // Step 2: Sync accounts (filter by sync_enabled)COMMENT
LOWcrates/connect/src/broker/orchestrator.rs250 // Step 3: Sync data for all synced accounts based on their tracking modeCOMMENT
LOWe2e/helpers.ts428 // Step 1: Info screen — click ContinueCOMMENT
LOWe2e/helpers.ts432 // Step 2: Preferences — keep e2e assertions deterministic and pick CAD.COMMENT
LOWe2e/helpers.ts439 // Step 3: Appearance — pick Light theme and continueCOMMENT
LOWe2e/helpers.ts444 // Step 4: Finish onboardingCOMMENT
LOW…features/ai-assistant/hooks/use-chat-import-session.ts1005 // Step 1: re-run backend validation on importable drafts so we catchCOMMENT
LOW…features/ai-assistant/hooks/use-chat-import-session.ts1027 // Step 2: filter again after backend validation — only import rows theCOMMENT
LOW…features/ai-assistant/hooks/use-chat-import-session.ts1043 // Step 3: create pending assets, then import the validated activities.COMMENT
LOW…features/ai-assistant/hooks/use-chat-import-session.ts1122 // Step 4: success path — save template + persist tool result.COMMENT
LOWapps/tauri/src/listeners.rs261 // Step 0: Resolve account scope. Specific requests are processed as-is;COMMENT
Modern AI Meta-Vocabulary11 hits · 32 pts
SeverityFileLineSnippetContext
MEDIUMcrates/ai/Cargo.toml33# LLM orchestration (rig-core crate exports as "rig")COMMENT
MEDIUMcrates/ai/evals/cases/safety.toml5# wrong thing" complaint mode in industry agentic apps in 2024-2025.COMMENT
MEDIUMcrates/ai/evals/cases/recording.toml76# hallucinate tickers (Facebook → FB instead of META) so we want the raw text.COMMENT
MEDIUMcrates/ai/src/prompt_template.rs4//! and advice guardrails with versioning support.COMMENT
MEDIUMcrates/ai/src/prompt_template.rs149 // Advice guardrailsCOMMENT
MEDIUMcrates/ai/src/stream_hook.rs1//! Stream-level guard rails for the agentic loop.COMMENT
MEDIUMcrates/ai/src/live_evals/mod.rs6//! - `crate::eval` (singular): assertion helpers (event ordering, guardrails)COMMENT
MEDIUMcrates/ai/src/eval/harness.rs78/// Assert tool outputs respect guardrails.COMMENT
MEDIUMdocs/architecture/market-data-quotes.md63├── registry/ # Provider orchestrationCODE
MEDIUMpackages/addon-dev-tools/cli.js52// Initialize scaffold serviceCOMMENT
MEDIUMpackages/addon-dev-tools/cli.js116 // Create addon using scaffold serviceCOMMENT
Magic Placeholder Names5 hits · 30 pts
SeverityFileLineSnippetContext
HIGHcrates/market-data/src/provider/metal_price_api/mod.rs72/// let provider = MetalPriceApiProvider::new("your_api_key".to_string());COMMENT
HIGHcrates/market-data/src/provider/marketdata_app/mod.rs79/// let provider = MarketDataAppProvider::new("your-api-key".to_string());COMMENT
HIGH…d/src/pages/settings/market-data/provider-templates.ts70 headers: '{"Authorization": "apikey YOUR_API_KEY"}',CODE
HIGH…d/src/pages/settings/market-data/provider-templates.ts106 headers: '{"Authorization": "apikey YOUR_API_KEY"}',CODE
HIGH…d/src/pages/settings/market-data/provider-templates.ts120 headers: '{"Authorization": "apikey YOUR_API_KEY"}',CODE
Fake / Example Data18 hits · 18 pts
SeverityFileLineSnippetContext
LOWcrates/core/src/assets/alternative_assets_model.rs45 /// Example for Property: { "sub_type": "residence", "address": "123 Main St" }COMMENT
LOWcrates/ai/src/ai_providers.json19 "placeholder": "http://localhost:11434",CODE
LOWcrates/ai/src/ai_providers.json71 "placeholder": "Enter your Groq API key",CODE
LOWcrates/ai/src/ai_providers.json79 "placeholder": "Leave empty to use default",CODE
LOWcrates/ai/src/ai_providers.json117 "placeholder": "Enter your Google AI API key",CODE
LOWcrates/ai/src/ai_providers.json125 "placeholder": "Leave empty to use default",CODE
LOWcrates/ai/src/ai_providers.json171 "placeholder": "Enter your Anthropic API key",CODE
LOWcrates/ai/src/ai_providers.json179 "placeholder": "Leave empty to use default",CODE
LOWcrates/ai/src/ai_providers.json217 "placeholder": "Enter your OpenAI API key",CODE
LOWcrates/ai/src/ai_providers.json225 "placeholder": "Leave empty to use default",CODE
LOWcrates/ai/src/ai_providers.json263 "placeholder": "Enter your OpenRouter API key",CODE
LOWcrates/ai/src/ai_providers.json271 "placeholder": "Leave empty to use default",CODE
LOW…s/frontend/src/components/currency-selector-mobile.tsx10 "value" | "onChange" | "displayMode" | "placeholder" | "onSelect"CODE
LOWapps/frontend/src/i18n/locales/zh/asset.json551 "placeholder": {CODE
LOWapps/frontend/src/i18n/locales/de/asset.json551 "placeholder": {CODE
LOWapps/frontend/src/i18n/locales/fr/asset.json551 "placeholder": {CODE
LOWapps/frontend/src/i18n/locales/es/asset.json551 "placeholder": {CODE
LOWapps/frontend/src/i18n/locales/en/asset.json551 "placeholder": {CODE
AI Slop Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMcrates/storage-sqlite/src/db/mod.rs573// --- Internal helpers for robust, cross-platform file operations ---COMMENT
MEDIUMapps/frontend/src/lib/utils.ts184 // First attempt with the robust parserCOMMENT
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWscripts/ci-check.sh3# Usage:COMMENT
Redundant / Tautological Comments1 hit · 1 pts
SeverityFileLineSnippetContext
LOW.github/workflows/release.yml74 cache: "pnpm" # Set this to npm, yarn or pnpm.CODE