{
  "version": 1,
  "generated_at": "2026-04-24T18:20:36",
  "project_name": "InsuRo",
  "project_path": "/home/jay/projects/InsuRo",
  "depth": 2,
  "include_tests": false,
  "files": {
    "supabase/functions/_shared/ai-provider.ts": {
      "hash": "accac957568b4ae8d8014a4e2971df53c4d8153de6b053ba1266780b394ed964",
      "section": "types",
      "data": {
        "types": [
          "AIProvider",
          "AICallOptions",
          "AICallResult"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/lib/recruitingFunnel.ts": {
      "hash": "07d22ea58a49ed78dd04c3911810831bcd1a504793ea29a27145edee197f17e6",
      "section": "types",
      "data": {
        "types": [
          "FunnelStep"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/data/generateOptions.ts": {
      "hash": "3b38d03c83ed1c0d26624f7ab2878c5a4b6d0fc7af1bcc84fd7240e5ceef85e6",
      "section": "types",
      "data": {
        "types": [
          "SelectOption",
          "ModelTier",
          "AiModelOption",
          "GenerateSettings"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/data/insurance-companies.ts": {
      "hash": "5fe67df4a8a09e952250baa00e3f85fa146fa732dad4225c2d5df4e205ad4b33",
      "section": "types",
      "data": {
        "types": [
          "Category",
          "InsuranceCompany"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/use-remaining-seats.ts": {
      "hash": "70f5c52f04e19be9ccd67f341f8c7126e5cf9fbf093216c7b27069d1cbf5936f",
      "section": "types",
      "data": {
        "types": [
          "RemainingSeatsData"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/use-preview-mode.ts": {
      "hash": "9e5d7767935b3c1219b69068ff684454c8111f7bd773d58d7167f6c997f33df6",
      "section": "types",
      "data": {
        "types": [
          "PreviewModeConfig"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/use-wiki-rankings.ts": {
      "hash": "2c5e8f0ec8d6f9cf578c0a9932fab5d02af18fc96d0dbce34f1dc2dbfc5808ad",
      "section": "types",
      "data": {
        "types": [
          "WikiRankingEntry",
          "WikiRankingsData"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/usePlanFeatures.ts": {
      "hash": "cc7ef1aedf90044ad0a4ed7cb604a2fd0ace7e426acc6fa102f4884af3c7877b",
      "section": "types",
      "data": {
        "types": [
          "PlanFeaturesInfo"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/use-fcpa-config.ts": {
      "hash": "1f406826a84d4a5a4fc0eadaedd718b04120f188a373829d038a0b91ce3e6e21",
      "section": "types",
      "data": {
        "types": [
          "FcpaChecklistItem",
          "FcpaConfig"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/use-setting-presets.ts": {
      "hash": "d36aa2ca125630d196613928cc2bb0ded8abc14f5fc8a655f37096da821321ca",
      "section": "types",
      "data": {
        "types": [
          "SettingPreset"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/useBehaviorCta.ts": {
      "hash": "eecb5ef988b25d141f1dea636c4f631d11d3d2df3e6553486c302316d0e664ed",
      "section": "types",
      "data": {
        "types": [
          "BehaviorCtaState"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/use-user-tokens.ts": {
      "hash": "71938da2c38d2a93a0c3f0a4dbfcc0e22323a1e708d6ce188ca8c8568245f340",
      "section": "types",
      "data": {
        "types": [
          "UserTokenInfo"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/use-pricing-data.ts": {
      "hash": "997ef74a0e44c60128ac19f34c422283eb3020c110012c0cb0880bfa9537fd3d",
      "section": "types",
      "data": {
        "types": [
          "PricingPlan",
          "FeatureDefinition",
          "TokenConfig",
          "PlanAIModel",
          "PricingData"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/use-wiki-performance.ts": {
      "hash": "0afd9483f4811713cf18a96cf214c5db6cf3bd844eb7e7c00eb83f230864c437",
      "section": "types",
      "data": {
        "types": [
          "WikiPerformanceData"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/use-user-plan.ts": {
      "hash": "3ea2c9ed4ced05db285e0fedd913c8d05e919c153953bd1e9af5968204743dda",
      "section": "types",
      "data": {
        "types": [
          "PlanTier",
          "UserPlanInfo"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/hooks/useAnalytics.ts": {
      "hash": "648212342e47a28efccc7f0cf8a734c957477d5e7c0b117ecb9571fbe0d18cc1",
      "section": "types",
      "data": {
        "types": [
          "AnalyticsEvent"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/integrations/supabase/types.ts": {
      "hash": "94b8d6fc513f13cfcdfc9b816d8f973ef2b2c4556ee89cfbe775e3e88c395545",
      "section": "types",
      "data": {
        "types": [
          "Json",
          "Database",
          "Tables",
          "TablesInsert",
          "TablesUpdate",
          "Enums",
          "CompositeTypes"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/config/routes.ts": {
      "hash": "5fbc588d0d7f43cae38fefbd8d5dd0648e371a8f35b257ae0888630869bb6cce",
      "section": "types",
      "data": {
        "types": [
          "RouteConfig",
          "MenuSection",
          "SidebarOnlyItem"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/config/cta-config.ts": {
      "hash": "875bc9b48f0dba4f7f98c5b82d90005a4cefb84e0c59dbc2fb9767696fda0f5c",
      "section": "types",
      "data": {
        "types": [
          "CtaTextEntry"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/config/planFeatureMap.ts": {
      "hash": "1136921e9872304a111a904f42125ebae14c0cb66fe6eed934050e538fd634ff",
      "section": "types",
      "data": {
        "types": [
          "FeatureConfig"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/image-generator/types.ts": {
      "hash": "3b7d39ac0bfa0dfa0d124d000ce3096eee2d6cb5130eed362590ccf1ab1410fa",
      "section": "types",
      "data": {
        "types": [
          "RatioOption",
          "ConceptOption",
          "LayoutOption",
          "TextDensityOption",
          "AlignmentOption",
          "BackgroundPatternOption",
          "ImagePurposeOption",
          "SlideContent",
          "FontSizeOption",
          "ImageGenSettings"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/navigation/navigationConfig.ts": {
      "hash": "37b8ff990a91358fe6bf861469b0684f4b25723853e0687d28289ba45c67e54e",
      "section": "types",
      "data": {
        "types": [
          "DomainTabId",
          "SubMenuItem",
          "DomainTab",
          "AdminMenuItem"
        ]
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/ActivityTimelineTab.tsx": {
      "hash": "ac2aa583a96d0c5d7f26627e03ed5b5f24b46a8756c1176fdc64ac469851a0cd",
      "section": "components",
      "data": {
        "name": "ActivityTimelineTab"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/AIUsageTab.tsx": {
      "hash": "303bfeba6f2ffeba231a39777cb94f84f538f0433e3f91542f37d7345ea3e67e",
      "section": "components",
      "data": {
        "name": "AIUsageTab"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/AppSidebar.tsx": {
      "hash": "f060250fe76bd3826cdc2a3e492549b36aa3b5c145552ec6a8a255664334a5c9",
      "section": "components",
      "data": {
        "name": "AppSidebar"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/AudioRecorder.tsx": {
      "hash": "bbe04dd3d28201f029f41628d09dc2bcc054bacb9064f9a23748b745f8096a1c",
      "section": "components",
      "data": {
        "name": "AudioRecorder"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/AuthForm.tsx": {
      "hash": "a0e1e7e1ff97557b5244dd3448e96662f9bc6ff5fbd4fb83085b0c00d1eb42ce",
      "section": "components",
      "data": {
        "name": "AuthForm"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/AuthGuard.tsx": {
      "hash": "a59d27edea28b904819cb6fbb300f1a647b8b4d7833288d27055ee86c0b6d427",
      "section": "components",
      "data": {
        "name": "AuthGuard"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/AutomationStepper.tsx": {
      "hash": "4dbb97cf2d5b3c542d722b0657046b4efaf7f84894be2150f9eca8770aa38374",
      "section": "components",
      "data": {
        "name": "AutomationStepper"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/CallLogTab.tsx": {
      "hash": "af9ab9fc8ffab93690ea9fac14681055999c0877012d6b6546a8b3eaac0ba7be",
      "section": "components",
      "data": {
        "name": "CallLogTab"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/ChatNotificationListener.tsx": {
      "hash": "1c9122892ae03f5801be0579971e9c26c9c146e718155b9b1278836863563101",
      "section": "components",
      "data": {
        "name": "ChatNotificationListener"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/CommunityBoard.tsx": {
      "hash": "6a48fb78f1bfa9dde08ce0d3710bdedd27db370694c746af8f480b9b267d36d3",
      "section": "components",
      "data": {
        "name": "CommunityBoard"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/ComparisonSection.tsx": {
      "hash": "497d155d6a9150745d201671213f0ef91b9d76c6999c3e3a407996390b5453e6",
      "section": "components",
      "data": {
        "name": "ComparisonSection"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/ConsentTab.tsx": {
      "hash": "6799db1b4b96c4d3efeb371d6711cbc15e4ccd30274944f12467606164fec4b2",
      "section": "components",
      "data": {
        "name": "ConsentTab"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/ConsultationEval.tsx": {
      "hash": "74d2d0fa7265db26812122e1ff706536f5e3bd14501e1dfbfb56d16a9112a1a5",
      "section": "components",
      "data": {
        "name": "ConsultationEval"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/ContentCalendarTab.tsx": {
      "hash": "17daaeb57ae3945eb83087d3bc1749f522439d865b2f0688c33104081d3dfeac",
      "section": "components",
      "data": {
        "name": "ContentCalendarTab"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/ContentHistoryTab.tsx": {
      "hash": "ea1a186622b888eca5d185c4f5d7eaa80904b885260b92bffa751961f7a28964",
      "section": "components",
      "data": {
        "name": "ContentHistoryTab"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/navigation/ContextSubMenu.tsx": {
      "hash": "4095c48eba84f978d3d0f5f21448e3375493ddc468dd8bbdde8339e53d749c1e",
      "section": "components",
      "data": {
        "name": "ContextSubMenu"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/CopilotPanel.tsx": {
      "hash": "f3b6468bf5041632260f47addb51a88b5f2a71e5c43c254b8dd7f5385f04a335",
      "section": "components",
      "data": {
        "name": "CopilotPanel"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/CustomerExport.tsx": {
      "hash": "08ccaea58cdd5b1a9d89821a842a7b5c719f40e8c1c0ee73287835e40552054b",
      "section": "components",
      "data": {
        "name": "CustomerExport"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/CustomerImport.tsx": {
      "hash": "5ffb3cfc430c8058a1e793d481b837b8fd7a47874bea365248af9a404e9cc056",
      "section": "components",
      "data": {
        "name": "CustomerImport"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/DashboardLayout.tsx": {
      "hash": "97bd86c71a261833f4e679262cdec23207ec9bc268147c52b64dcc5de33ae404",
      "section": "components",
      "data": {
        "name": "DashboardLayout"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/DifferentiationSection.tsx": {
      "hash": "7492abb75c73087bbeeba8f7dee547cf4334786961ad14a5682686a730ea037d",
      "section": "components",
      "data": {
        "name": "DifferentiationSection"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/FeatureGate.tsx": {
      "hash": "9eb66903835dfee779718fef2b5af18480f29780a64d92448169f76670007a3c",
      "section": "components",
      "data": {
        "name": "FeatureGate"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/FloatingGuide.tsx": {
      "hash": "6570eb6069f4f2c5cbe1e5c7ba78191f5d6af38a1483bac455f715e5ad2b4dab",
      "section": "components",
      "data": {
        "name": "FloatingGuide"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/GenerateSettingsPanel.tsx": {
      "hash": "7b9cf0ceb67abe980e6a5650c6ee1c0b99b09f237f2ee164242a9dc6da63fb0c",
      "section": "components",
      "data": {
        "name": "GenerateSettingsPanel"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/ImageGeneratorPanel.tsx": {
      "hash": "d72ac42bb4b000e51ea0710d6a30da68ef82dedf03866a28891bbdcd837b17fe",
      "section": "components",
      "data": {
        "name": "ImageGeneratorPanel"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/image-generator/ImageResults.tsx": {
      "hash": "17fc3ebe62dd7b36f1776acfdb267b594e70a847f33c05085e1cda36c816f892",
      "section": "components",
      "data": {
        "name": "ImageResults"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/KakaoAnalysis.tsx": {
      "hash": "618798b4db815f81f74fb7716abf2a783c957d37eaf9531e79eb3c30d863f957",
      "section": "components",
      "data": {
        "name": "KakaoAnalysis"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/image-generator/LayoutPreview.tsx": {
      "hash": "378ab4d509afe3eba557e566a6115bfc1d4532376b910a7388296016833b3810",
      "section": "components",
      "data": {
        "name": "LayoutPreview"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/LockedFeatureOverlay.tsx": {
      "hash": "922932a8db38f04e773b9445183443d4dea58a0ce0eab3e47f7deb6224003147",
      "section": "components",
      "data": {
        "name": "LockedFeatureOverlay"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/navigation/MobileBottomNav.tsx": {
      "hash": "291a7edcebcdd0b0f6ae8b2296bc9f481c6cce8e47c54a99ac51cf364acb1d15",
      "section": "components",
      "data": {
        "name": "MobileBottomNav"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/NavLink.tsx": {
      "hash": "c09f73102288d8a89e5e7b728715ba0697783c43b687e20dedce3536aa7049df",
      "section": "components",
      "data": {
        "name": "NavLink"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/ui/optimized-image.tsx": {
      "hash": "77345d8e8c968f421e417e47a434c6acb474c252a45972c76e6d07063fe213e1",
      "section": "components",
      "data": {
        "name": "OptimizedImage"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/image-generator/OptionSelector.tsx": {
      "hash": "9d1931a238d0eb1a8a69f4414283d20f540ea86126a79346d2ff059b2f14c693",
      "section": "components",
      "data": {
        "name": "OptionSelector"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/PageViewTracker.tsx": {
      "hash": "c222177fca0cc0ccf84e5d796fccc4b157c38879756e2be4d4f8f8c5a59586f7",
      "section": "components",
      "data": {
        "name": "PageViewTracker"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/ParticleBackground.tsx": {
      "hash": "7c598b5074b0b9807322972eb9e01c93f89eb3b85ae8bf974f7201a8d2caee90",
      "section": "components",
      "data": {
        "name": "ParticleBackground"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/PlanGuard.tsx": {
      "hash": "d71fadf2363674fa991ee02b7e6f9e769ed631e4b89fa4e0a00a2f3a6560dfba",
      "section": "components",
      "data": {
        "name": "PlanGuard"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/PlanUpgradeDialog.tsx": {
      "hash": "c64961d419e516a0aa527b58a283f2efe7d1e56f49de3a080426a06fbd18bb8b",
      "section": "components",
      "data": {
        "name": "PlanUpgradeDialog"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/PostHogProvider.tsx": {
      "hash": "cc5f1a4ad3b6329d87898bef44d38a99f08b879b59bcf7368581df0fe986267c",
      "section": "components",
      "data": {
        "name": "PostHogProvider"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/navigation/PremiumCtaCard.tsx": {
      "hash": "69c7ed65380fcc1f7ab3c42299cdd6cfd9e6cb43af65254d8192c70d056564a7",
      "section": "components",
      "data": {
        "name": "PremiumCtaCard"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/PreviewGuard.tsx": {
      "hash": "a637fd84f3c2fdd56903101eaffd2a90738f966440b7ea2777c23e17948a0d65",
      "section": "components",
      "data": {
        "name": "PreviewGuard"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/PushNotificationToggle.tsx": {
      "hash": "68a4661e90044d1c97d7905da58a985fcf2ae986dc180fd78f89bca1cf5ced2e",
      "section": "components",
      "data": {
        "name": "PushNotificationToggle"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/PwaInstallPrompt.tsx": {
      "hash": "185dc736eb906fe0396ef428bff59d464ef880e4e5d196401b54956ce29ff4d4",
      "section": "components",
      "data": {
        "name": "PwaInstallPrompt"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/image-generator/RegenerateFeedbackModal.tsx": {
      "hash": "6a89cc40db99ed74b0f62b7d42dd27a5f709b131563cd0bc4c7afbfeea53b884",
      "section": "components",
      "data": {
        "name": "RegenerateFeedbackModal"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/calculators/SavingsCalculator.tsx": {
      "hash": "7c79d04d209ebd54210b948aafef28664c85286fb25b3a99215c961a4b6e4c91",
      "section": "components",
      "data": {
        "name": "SavingsCalculator"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/image-generator/SlideEditor.tsx": {
      "hash": "02400c5ac4d73fd70436eeeaca5cb706ca5382108986b1955c95055a1b9099f6",
      "section": "components",
      "data": {
        "name": "SlideEditor"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/crm/SummaryTab.tsx": {
      "hash": "f3b2b5549897241290fbee1a249046e22ab6d7f4d68fe0917190d98610e511fc",
      "section": "components",
      "data": {
        "name": "SummaryTab"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/TokenBalance.tsx": {
      "hash": "1367ef5227d93df3790400fab347c0efa36415f04ed637ff03a0512f25afd39d",
      "section": "components",
      "data": {
        "name": "TokenBalance"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/TokenUsageHistory.tsx": {
      "hash": "e06c8a8f038f246568860adef9c15312ea634456f403f4cc1b02a498871507bc",
      "section": "components",
      "data": {
        "name": "TokenUsageHistory"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/navigation/TopNavBar.tsx": {
      "hash": "9e93a789757b402cbf0ad1b22ab0fe611e757b31f712b9d64d3d2d246c7b6ee9",
      "section": "components",
      "data": {
        "name": "TopNavBar"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/UpgradeModal.tsx": {
      "hash": "3de8c4aeba6ec78965c5494fcaeca0c375f96ed746e3d52efb0f4607c1cc922b",
      "section": "components",
      "data": {
        "name": "UpgradeModal"
      },
      "updated_at": "2026-04-24T18:20:36"
    },
    "src/components/wiki/WikiRankingSection.tsx": {
      "hash": "a9846a9a403d14ab289cb977f38fd083640688fff11dd5710b0cd3b856b29a7b",
      "section": "components",
      "data": {
        "name": "WikiRankingSection"
      },
      "updated_at": "2026-04-24T18:20:36"
    }
  },
  "tree_lines": [
    "InsuRo/",
    "├── config/",
    "│   ├── fixed_keywords.txt",
    "│   ├── keyword_config.yaml",
    "│   ├── negative_words.json",
    "│   └── synonyms.json",
    "├── docs/",
    "│   ├── ANTHROPIC_KEY_SETUP.md",
    "│   ├── api-reference.md",
    "│   ├── components.md",
    "│   ├── d4-production-checklist.md",
    "│   ├── db-schema.md",
    "│   ├── feature-flags-experiment-guide.md",
    "│   ├── pii-analytics-guidelines.md",
    "│   └── posthog-kpi-dashboard-guide.md",
    "├── public/",
    "│   ├── apple-touch-icon.png",
    "│   ├── design-philosophy.md",
    "│   ├── favicon-16.png",
    "│   ├── favicon-32.png",
    "│   ├── favicon-64.png",
    "│   ├── favicon.ico",
    "│   ├── insuro-logo-new.jpg",
    "│   ├── offline.html",
    "│   ├── placeholder.svg",
    "│   ├── pwa-192.png",
    "│   ├── pwa-512.png",
    "│   ├── robots.txt",
    "│   └── sw-push.js",
    "├── scripts/",
    "│   ├── convert-to-webp.sh",
    "│   ├── generate_favicons.py",
    "│   └── run_migrations.py",
    "├── server/",
    "│   ├── collectors/",
    "│   ├── migrations/",
    "│   ├── schemas/",
    "│   ├── scripts/",
    "│   ├── systemd/",
    "│   ├── tests/",
    "│   ├── utils/",
    "│   ├── .env.example",
    "│   ├── ai_parser.py",
    "│   ├── analytics.py",
    "│   ├── anu_provider.py",
    "│   ├── crypto.py",
    "│   ├── gdrive.py",
    "│   ├── gdrive_sync.py",
    "│   ├── ingest_fcpa.py",
    "│   ├── main.py",
    "│   ├── pipeline.py",
    "│   ├── pyproject.toml",
    "│   ├── pyrightconfig.json",
    "│   ├── requirements.txt",
    "│   ├── run.sh",
    "│   └── trend_collector.py",
    "├── src/",
    "│   ├── assets/",
    "│   ├── components/",
    "│   ├── config/",
    "│   ├── data/",
    "│   ├── hooks/",
    "│   ├── integrations/",
    "│   ├── lib/",
    "│   ├── pages/",
    "│   ├── test/",
    "│   ├── App.css",
    "│   ├── App.tsx",
    "│   ├── index.css",
    "│   ├── main.tsx",
    "│   └── vite-env.d.ts",
    "├── supabase/",
    "│   ├── functions/",
    "│   ├── migrations/",
    "│   ├── combined-migration.sql",
    "│   └── config.toml",
    "├── tests/",
    "│   ├── cta-exposure-policy.test.ts",
    "│   ├── plan-feature-matrix.test.ts",
    "│   ├── smoke-routes.test.tsx",
    "│   ├── test_task542_1.py",
    "│   └── useOnboardingRedirect.test.ts",
    "├── .env.example",
    "├── .env.production",
    "├── .gitignore",
    "├── capacitor.config.json",
    "├── components.json",
    "├── db-changes-task-2118.md",
    "├── eslint.config.js",
    "├── index.html",
    "├── package-lock.json",
    "├── package.json",
    "├── postcss.config.js",
    "├── README.md",
    "├── tailwind.config.ts",
    "├── tsconfig.app.json",
    "├── tsconfig.json",
    "├── tsconfig.node.json",
    "├── vite.config.ts",
    "├── vite.log",
    "└── vitest.config.ts"
  ],
  "config": {
    "packages": [
      {
        "file": "package.json",
        "name": "vite_react_shadcn_ts",
        "version": "0.0.0",
        "dependencies": [
          "@capacitor/cli",
          "@dnd-kit/core",
          "@dnd-kit/sortable",
          "@dnd-kit/utilities",
          "@hookform/resolvers",
          "@radix-ui/react-accordion",
          "@radix-ui/react-alert-dialog",
          "@radix-ui/react-aspect-ratio",
          "@radix-ui/react-avatar",
          "@radix-ui/react-checkbox",
          "@radix-ui/react-collapsible",
          "@radix-ui/react-context-menu",
          "@radix-ui/react-dialog",
          "@radix-ui/react-dropdown-menu",
          "@radix-ui/react-hover-card",
          "@radix-ui/react-label",
          "@radix-ui/react-menubar",
          "@radix-ui/react-navigation-menu",
          "@radix-ui/react-popover",
          "@radix-ui/react-progress",
          "@radix-ui/react-radio-group",
          "@radix-ui/react-scroll-area",
          "@radix-ui/react-select",
          "@radix-ui/react-separator",
          "@radix-ui/react-slider",
          "@radix-ui/react-slot",
          "@radix-ui/react-switch",
          "@radix-ui/react-tabs",
          "@radix-ui/react-toast",
          "@radix-ui/react-toggle",
          "@radix-ui/react-toggle-group",
          "@radix-ui/react-tooltip",
          "@supabase/supabase-js",
          "@tanstack/react-query",
          "class-variance-authority",
          "clsx",
          "cmdk",
          "date-fns",
          "embla-carousel-react",
          "framer-motion",
          "input-otp",
          "lucide-react",
          "next-themes",
          "posthog-js",
          "react",
          "react-day-picker",
          "react-dom",
          "react-hook-form",
          "react-markdown",
          "react-resizable-panels",
          "react-router-dom",
          "recharts",
          "rehype-raw",
          "remark-gfm",
          "sonner",
          "tailwind-merge",
          "tailwindcss-animate",
          "vaul",
          "vite-plugin-pwa",
          "web-push",
          "zod"
        ],
        "devDependencies": [
          "@eslint/js",
          "@tailwindcss/typography",
          "@testing-library/jest-dom",
          "@testing-library/react",
          "@testing-library/user-event",
          "@types/node",
          "@types/react",
          "@types/react-dom",
          "@vitejs/plugin-react-swc",
          "autoprefixer",
          "eslint",
          "eslint-plugin-react-hooks",
          "eslint-plugin-react-refresh",
          "globals",
          "jsdom",
          "postcss",
          "tailwindcss",
          "typescript",
          "typescript-eslint",
          "vite",
          "vitest"
        ],
        "scripts": [
          "dev",
          "build",
          "build:dev",
          "lint",
          "preview",
          "test",
          "test:watch"
        ]
      }
    ],
    "tsconfig": [
      {
        "file": "tsconfig.json",
        "compilerOptions": {},
        "paths": {
          "@/*": [
            "./src/*"
          ]
        }
      }
    ]
  },
  "recent_files": [
    {
      "file": "server/tests/test_e2e_flows.py",
      "date": "2026-04-24"
    },
    {
      "file": "server/main.py",
      "date": "2026-04-24"
    },
    {
      "file": "server/requirements.txt",
      "date": "2026-04-24"
    },
    {
      "file": "public/insuro-logo-new.jpg",
      "date": "2026-04-24"
    },
    {
      "file": "server/tests/test_google_trends.py",
      "date": "2026-04-24"
    },
    {
      "file": "src/hooks/use-feature-access.ts",
      "date": "2026-04-23"
    },
    {
      "file": "src/components/FeatureGate.tsx",
      "date": "2026-04-23"
    },
    {
      "file": "src/pages/KeywordAnalysis.tsx",
      "date": "2026-04-23"
    },
    {
      "file": "server/collectors/base.py",
      "date": "2026-04-23"
    },
    {
      "file": "server/tests/test_naver_collector.py",
      "date": "2026-04-23"
    },
    {
      "file": "server/tests/test_normalizer_filter.py",
      "date": "2026-04-23"
    },
    {
      "file": "server/tests/test_scoring.py",
      "date": "2026-04-23"
    },
    {
      "file": "server/collectors/fixed.py",
      "date": "2026-04-23"
    },
    {
      "file": "server/collectors/naver.py",
      "date": "2026-04-23"
    },
    {
      "file": "server/collectors/__init__.py",
      "date": "2026-04-23"
    },
    {
      "file": "config/fixed_keywords.txt",
      "date": "2026-04-23"
    },
    {
      "file": "config/keyword_config.yaml",
      "date": "2026-04-23"
    },
    {
      "file": "config/negative_words.json",
      "date": "2026-04-23"
    },
    {
      "file": "config/synonyms.json",
      "date": "2026-04-23"
    },
    {
      "file": "server/migrations/003_keyword_hybrid.sql",
      "date": "2026-04-23"
    }
  ]
}