Department of Vibe Code Assessment

Report Card

Student: langflow-ai/openragTerm: April 6, 2026
Grade
0
Needs Work

Grades by Subject

Subject
Grade
Score
Issues
Security
A
100
Dependencies
A
100
Documentation
A
100
Test Coverage
B
88
1
Code Structure
F
0
74
Error Handling
F
42
11
Share on X

Teacher's Comments

Langflow-ai/openrag, I’ve seen sprawling codebases before, but your collection of giant files and deep nesting reads like a "how not to" textbook. Eleven error handling issues and 74 code structure problems scream that the homework was done in a caffeine-fueled hurry—or maybe not at all. You did show up with tests and documentation that actually work, so points for that; now let's see if you can spread the effort around. Next time, bring your code to class in manageable chunks instead of these epic sagas.

Error Handling:Eleven issues piling up—did exception handling retire early or just skip class entirely?
Code Structure:Seventy-four problems with zero points? It’s like you handed in a 597-piece puzzle with the wrong picture on the box.
Test Coverage:Well, someone actually wrote tests and covered the essentials—didn’t expect to see a B here.
Security:Perfect score. You locked the doors even if the windows are shattered.
Dependencies:Clean as a whistle, no baggage—nice job not inviting trouble here.
Documentation:Crisp and complete; someone read the syllabus and took notes after all.

Areas for Improvement

(86)
high

Very low test-to-source ratio (5.5%) — tests are 4391 LOC vs 80361 LOC source

39 test files, 394 source files, ratio: 5.5%
Test coverage is very thin (5.5% test-to-source ratio). Add tests for the most critical paths first.
high·flows/components/opensearch_multimodal.py

Large file (1422 code lines, 2021 total) — this is a real problem

1422 code lines (of 2021 total), threshold is 400
flows/components/opensearch_multimodal.py has 1422 lines of code (2021 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·frontend/app/chat/page.tsx

Large file (1049 code lines, 1253 total) — this is a real problem

1049 code lines (of 1253 total), threshold is 400
frontend/app/chat/page.tsx has 1049 lines of code (1253 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·frontend/app/knowledge/page.tsx

Large file (794 code lines, 852 total) — this is a real problem

794 code lines (of 852 total), threshold is 400
frontend/app/knowledge/page.tsx has 794 lines of code (852 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·frontend/app/settings/page.tsx

Large file (1217 code lines, 1368 total) — this is a real problem

1217 code lines (of 1368 total), threshold is 400
frontend/app/settings/page.tsx has 1217 lines of code (1368 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·frontend/components/knowledge-dropdown.tsx

Deep nesting detected (10 levels) — refactor this

Max nesting depth: 10
frontend/components/knowledge-dropdown.tsx has 10 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
high·frontend/hooks/useChatStreaming.ts

Deep nesting detected (14 levels) — refactor this

Max nesting depth: 14
frontend/hooks/useChatStreaming.ts has 14 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
high·src/api/settings.py

Large file (1505 code lines, 1929 total) — this is a real problem

1505 code lines (of 1929 total), threshold is 400
src/api/settings.py has 1505 lines of code (1929 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·src/api/settings.py

Deep nesting detected (8 levels) — refactor this

Max nesting depth: 8
src/api/settings.py has 8 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
high·src/connectors/google_drive/connector.py

Large file (821 code lines, 1229 total) — this is a real problem

821 code lines (of 1229 total), threshold is 400
src/connectors/google_drive/connector.py has 821 lines of code (1229 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·src/main.py

Large file (1756 code lines, 2152 total) — this is a real problem

1756 code lines (of 2152 total), threshold is 400
src/main.py has 1756 lines of code (2152 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·src/services/flows_service.py

Large file (884 code lines, 1270 total) — this is a real problem

884 code lines (of 1270 total), threshold is 400
src/services/flows_service.py has 884 lines of code (1270 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·src/tui/managers/container_manager.py

Large file (1130 code lines, 1623 total) — this is a real problem

1130 code lines (of 1623 total), threshold is 400
src/tui/managers/container_manager.py has 1130 lines of code (1623 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·src/tui/managers/container_manager.py

Deep nesting detected (9 levels) — refactor this

Max nesting depth: 9
src/tui/managers/container_manager.py has 9 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
high·src/tui/screens/monitor.py

Large file (858 code lines, 1175 total) — this is a real problem

858 code lines (of 1175 total), threshold is 400
src/tui/screens/monitor.py has 858 lines of code (1175 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
high·src/utils/container_utils.py

Deep nesting detected (9 levels) — refactor this

Max nesting depth: 9
src/utils/container_utils.py has 9 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·frontend/app/chat/page.tsx

High console.log density (23 instances) — likely debug code left in production

23 console.log calls in 1253 lines
In frontend/app/chat/page.tsx, there are 23 console.log statements. Replace with a proper logging library or remove debug logs before shipping.
medium·frontend/components/cloud-picker/onedrive-v8-handler.ts

High console.log density (12 instances) — likely debug code left in production

12 console.log calls in 475 lines
In frontend/components/cloud-picker/onedrive-v8-handler.ts, there are 12 console.log statements. Replace with a proper logging library or remove debug logs before shipping.
medium·frontend/components/cloud-picker/provider-handlers.ts

High console.log density (9 instances) — likely debug code left in production

9 console.log calls in 317 lines
In frontend/components/cloud-picker/provider-handlers.ts, there are 9 console.log statements. Replace with a proper logging library or remove debug logs before shipping.
medium·frontend/components/cloud-picker/sharepoint-v8-handler.ts

High console.log density (45 instances) — likely debug code left in production

45 console.log calls in 637 lines
In frontend/components/cloud-picker/sharepoint-v8-handler.ts, there are 45 console.log statements. Replace with a proper logging library or remove debug logs before shipping.
medium·frontend/components/cloud-picker/unified-cloud-picker.tsx

High console.log density (8 instances) — likely debug code left in production

8 console.log calls in 223 lines
In frontend/components/cloud-picker/unified-cloud-picker.tsx, there are 8 console.log statements. Replace with a proper logging library or remove debug logs before shipping.
medium·frontend/components/knowledge-dropdown.tsx

High console.log density (5 instances) — likely debug code left in production

5 console.log calls in 833 lines
In frontend/components/knowledge-dropdown.tsx, there are 5 console.log statements. Replace with a proper logging library or remove debug logs before shipping.
medium·frontend/contexts/auth-context.tsx

High console.log density (15 instances) — likely debug code left in production

15 console.log calls in 245 lines
In frontend/contexts/auth-context.tsx, there are 15 console.log statements. Replace with a proper logging library or remove debug logs before shipping.
medium·frontend/contexts/chat-context.tsx

High console.log density (11 instances) — likely debug code left in production

11 console.log calls in 488 lines
In frontend/contexts/chat-context.tsx, there are 11 console.log statements. Replace with a proper logging library or remove debug logs before shipping.
medium·frontend/hooks/useChatStreaming.ts

High console.log density (5 instances) — likely debug code left in production

5 console.log calls in 715 lines
In frontend/hooks/useChatStreaming.ts, there are 5 console.log statements. Replace with a proper logging library or remove debug logs before shipping.
medium·flows/components/opensearch_multimodal.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
flows/components/opensearch_multimodal.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·frontend/app/chat/_components/chat-input.tsx

Large file (582 code lines, 657 total) — should probably split this

582 code lines (of 657 total), threshold is 400
frontend/app/chat/_components/chat-input.tsx has 582 lines of code (657 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·frontend/app/chat/page.tsx

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
frontend/app/chat/page.tsx has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·frontend/app/onboarding/_components/onboarding-card.tsx

Large file (626 code lines, 725 total) — should probably split this

626 code lines (of 725 total), threshold is 400
frontend/app/onboarding/_components/onboarding-card.tsx has 626 lines of code (725 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·frontend/app/upload/[provider]/page.tsx

Large file (599 code lines, 657 total) — should probably split this

599 code lines (of 657 total), threshold is 400
frontend/app/upload/[provider]/page.tsx has 599 lines of code (657 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·frontend/components/cloud-picker/provider-handlers.ts

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
frontend/components/cloud-picker/provider-handlers.ts has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·frontend/components/cloud-picker/sharepoint-v8-handler.ts

Large file (503 code lines, 637 total) — should probably split this

503 code lines (of 637 total), threshold is 400
frontend/components/cloud-picker/sharepoint-v8-handler.ts has 503 lines of code (637 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·frontend/components/knowledge-dropdown.tsx

Large file (724 code lines, 833 total) — should probably split this

724 code lines (of 833 total), threshold is 400
frontend/components/knowledge-dropdown.tsx has 724 lines of code (833 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·frontend/components/navigation.tsx

Large file (546 code lines, 611 total) — should probably split this

546 code lines (of 611 total), threshold is 400
frontend/components/navigation.tsx has 546 lines of code (611 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·frontend/components/task-notification-menu.tsx

Large file (541 code lines, 582 total) — should probably split this

541 code lines (of 582 total), threshold is 400
frontend/components/task-notification-menu.tsx has 541 lines of code (582 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·frontend/hooks/useChatStreaming.ts

Large file (603 code lines, 715 total) — should probably split this

603 code lines (of 715 total), threshold is 400
frontend/hooks/useChatStreaming.ts has 603 lines of code (715 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/agent.py

Large file (671 code lines, 898 total) — should probably split this

671 code lines (of 898 total), threshold is 400
src/agent.py has 671 lines of code (898 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/api/connectors.py

Large file (732 code lines, 917 total) — should probably split this

732 code lines (of 917 total), threshold is 400
src/api/connectors.py has 732 lines of code (917 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/api/connectors.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
src/api/connectors.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/api/provider_validation.py

Large file (608 code lines, 808 total) — should probably split this

608 code lines (of 808 total), threshold is 400
src/api/provider_validation.py has 608 lines of code (808 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/api/provider_validation.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
src/api/provider_validation.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/config/config_manager.py

Deep nesting detected (7 levels) — getting hard to follow

Max nesting depth: 7
src/config/config_manager.py has 7 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/config/settings.py

Large file (656 code lines, 917 total) — should probably split this

656 code lines (of 917 total), threshold is 400
src/config/settings.py has 656 lines of code (917 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/connectors/connection_manager.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
src/connectors/connection_manager.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/connectors/ibm_cos/connector.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
src/connectors/ibm_cos/connector.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/connectors/onedrive/connector.py

Large file (665 code lines, 925 total) — should probably split this

665 code lines (of 925 total), threshold is 400
src/connectors/onedrive/connector.py has 665 lines of code (925 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/connectors/onedrive/connector.py

Deep nesting detected (7 levels) — getting hard to follow

Max nesting depth: 7
src/connectors/onedrive/connector.py has 7 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/connectors/sharepoint/connector.py

Large file (604 code lines, 857 total) — should probably split this

604 code lines (of 857 total), threshold is 400
src/connectors/sharepoint/connector.py has 604 lines of code (857 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/connectors/sharepoint/connector.py

Deep nesting detected (7 levels) — getting hard to follow

Max nesting depth: 7
src/connectors/sharepoint/connector.py has 7 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/models/processors.py

Large file (628 code lines, 851 total) — should probably split this

628 code lines (of 851 total), threshold is 400
src/models/processors.py has 628 lines of code (851 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/services/chat_service.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
src/services/chat_service.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/services/flows_service.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
src/services/flows_service.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/services/langflow_file_service.py

Large file (511 code lines, 619 total) — should probably split this

511 code lines (of 619 total), threshold is 400
src/services/langflow_file_service.py has 511 lines of code (619 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/services/langflow_file_service.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
src/services/langflow_file_service.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/services/langflow_history_service.py

Deep nesting detected (7 levels) — getting hard to follow

Max nesting depth: 7
src/services/langflow_history_service.py has 7 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/services/search_service.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
src/services/search_service.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/services/task_service.py

Large file (576 code lines, 792 total) — should probably split this

576 code lines (of 792 total), threshold is 400
src/services/task_service.py has 576 lines of code (792 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/tui/main.py

Large file (606 code lines, 896 total) — should probably split this

606 code lines (of 896 total), threshold is 400
src/tui/main.py has 606 lines of code (896 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/tui/main.py

Deep nesting detected (7 levels) — getting hard to follow

Max nesting depth: 7
src/tui/main.py has 7 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/tui/managers/env_manager.py

Large file (629 code lines, 836 total) — should probably split this

629 code lines (of 836 total), threshold is 400
src/tui/managers/env_manager.py has 629 lines of code (836 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/tui/screens/config.py

Large file (611 code lines, 802 total) — should probably split this

611 code lines (of 802 total), threshold is 400
src/tui/screens/config.py has 611 lines of code (802 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/tui/screens/diagnostics.py

Deep nesting detected (7 levels) — getting hard to follow

Max nesting depth: 7
src/tui/screens/diagnostics.py has 7 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/tui/screens/welcome.py

Deep nesting detected (7 levels) — getting hard to follow

Max nesting depth: 7
src/tui/screens/welcome.py has 7 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
medium·src/tui/utils/startup_checks.py

Large file (503 code lines, 687 total) — should probably split this

503 code lines (of 687 total), threshold is 400
src/tui/utils/startup_checks.py has 503 lines of code (687 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
medium·src/tui/utils/version_check.py

Deep nesting detected (6 levels) — getting hard to follow

Max nesting depth: 6
src/tui/utils/version_check.py has 6 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
low·frontend/components/cloud-picker/provider-handlers.ts:136

Catch block logs warning without re-throwing — may be intentional graceful degradation

catch (error) {
                  console.warn("Failed to fetch file details:", error);
            
In frontend/components/cloud-picker/provider-handlers.ts at line 136, the catch block only console.logs the error. Add proper error handling — return an error response, show a user-facing message, or re-throw.
low·frontend/hooks/useChatStreaming.ts:571

Catch block logs warning without re-throwing — may be intentional graceful degradation

catch (parseError) {
                console.warn("Failed to parse chunk:", line, parseError);
     
In frontend/hooks/useChatStreaming.ts at line 571, the catch block only console.logs the error. Add proper error handling — return an error response, show a user-facing message, or re-throw.
low·frontend/components/knowledge-filter-panel.tsx

Large file (482 code lines, 526 total) — barely over threshold

482 code lines (of 526 total), threshold is 400
frontend/components/knowledge-filter-panel.tsx has 482 lines of code (526 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
low·frontend/contexts/task-context.tsx

Large file (417 code lines, 503 total) — barely over threshold

417 code lines (of 503 total), threshold is 400
frontend/contexts/task-context.tsx has 417 lines of code (503 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
low·src/connectors/connection_manager.py

Large file (488 code lines, 666 total) — barely over threshold

488 code lines (of 666 total), threshold is 400
src/connectors/connection_manager.py has 488 lines of code (666 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
low·src/connectors/google_drive/connector.py

Deep nesting detected (5 levels) — common in real code

Max nesting depth: 5
src/connectors/google_drive/connector.py has 5 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
low·src/connectors/onedrive/oauth.py

Deep nesting detected (5 levels) — common in real code

Max nesting depth: 5
src/connectors/onedrive/oauth.py has 5 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
low·src/services/auth_service.py

Large file (459 code lines, 601 total) — barely over threshold

459 code lines (of 601 total), threshold is 400
src/services/auth_service.py has 459 lines of code (601 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
low·src/services/auth_service.py

Deep nesting detected (5 levels) — common in real code

Max nesting depth: 5
src/services/auth_service.py has 5 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
low·src/services/chat_service.py

Large file (498 code lines, 654 total) — barely over threshold

498 code lines (of 654 total), threshold is 400
src/services/chat_service.py has 498 lines of code (654 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
low·src/services/search_service.py

Large file (452 code lines, 591 total) — barely over threshold

452 code lines (of 591 total), threshold is 400
src/services/search_service.py has 452 lines of code (591 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
low·src/tui/managers/docling_manager.py

Large file (438 code lines, 629 total) — barely over threshold

438 code lines (of 629 total), threshold is 400
src/tui/managers/docling_manager.py has 438 lines of code (629 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
low·src/tui/managers/docling_manager.py

Deep nesting detected (5 levels) — common in real code

Max nesting depth: 5
src/tui/managers/docling_manager.py has 5 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
low·src/tui/managers/env_manager.py

Deep nesting detected (5 levels) — common in real code

Max nesting depth: 5
src/tui/managers/env_manager.py has 5 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
low·src/tui/screens/config.py

Deep nesting detected (5 levels) — common in real code

Max nesting depth: 5
src/tui/screens/config.py has 5 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
low·src/tui/screens/diagnostics.py

Large file (453 code lines, 596 total) — barely over threshold

453 code lines (of 596 total), threshold is 400
src/tui/screens/diagnostics.py has 453 lines of code (596 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
low·src/tui/screens/monitor.py

Deep nesting detected (5 levels) — common in real code

Max nesting depth: 5
src/tui/screens/monitor.py has 5 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
low·src/tui/screens/welcome.py

Large file (426 code lines, 648 total) — barely over threshold

426 code lines (of 648 total), threshold is 400
src/tui/screens/welcome.py has 426 lines of code (648 total). Break it into smaller, focused modules. Each file should have one clear responsibility.
low·src/utils/version_utils.py

Deep nesting detected (5 levels) — common in real code

Max nesting depth: 5
src/utils/version_utils.py has 5 levels of nesting. Use early returns, extract helper functions, or restructure conditionals to flatten the code.
low

Multiple files with similar names and content: src/connectors/aws_s3/connector.py, src/connectors/google_drive/connector.py, src/connectors/ibm_cos/connector.py

5 files with base name 'connector' share similar code
There are 5 files that look like copies of each other. Consolidate them or extract shared logic.
low

Multiple files with similar names and content: src/connectors/google_drive/oauth.py, src/connectors/onedrive/oauth.py, src/connectors/sharepoint/oauth.py

3 files with base name 'oauth' share similar code
There are 3 files that look like copies of each other. Consolidate them or extract shared logic.

Progress Report

3 runs on record for this student

Run 3 of 3

+2 points since last run

Overall61
Code Structure0
Error Handling42+8
Test Coverage88
Security100
Dependencies100
Documentation100
60 fixed35 still outstanding51 new

Fixed since last run

Catch block only logs error without handling itfrontend/components/cloud-picker/provider-handlers.ts
High console.log density (7 instances) — likely debug code left in productionfrontend/components/knowledge-dropdown.tsx
High console.log density (8 instances) — likely debug code left in productionfrontend/contexts/auth-context.tsx
Catch block only logs error without handling itfrontend/hooks/useChatStreaming.ts
Very low test-to-source ratio (4.1%) — tests are 2977 LOC vs 72751 LOC source
Large file (1962 lines) — this is a real problemflows/components/opensearch_multimodal.py
Large file (620 lines) — should probably split thisfrontend/app/chat/_components/chat-input.tsx
Large file (1240 lines) — this is a real problemfrontend/app/chat/page.tsx
Large file (451 lines) — barely over thresholdfrontend/app/knowledge/chunks/page.tsx
Large file (668 lines) — should probably split thisfrontend/app/knowledge/page.tsx

+50 more fixed

New issues since last run

Catch block logs warning without re-throwing — may be intentional graceful degradationfrontend/components/cloud-picker/provider-handlers.tsError Handling
High console.log density (5 instances) — likely debug code left in productionfrontend/components/knowledge-dropdown.tsxError Handling
High console.log density (15 instances) — likely debug code left in productionfrontend/contexts/auth-context.tsxError Handling
Catch block logs warning without re-throwing — may be intentional graceful degradationfrontend/hooks/useChatStreaming.tsError Handling
Very low test-to-source ratio (5.5%) — tests are 4391 LOC vs 80361 LOC sourceTest Coverage
Large file (1422 code lines, 2021 total) — this is a real problemflows/components/opensearch_multimodal.pyCode Structure
Large file (582 code lines, 657 total) — should probably split thisfrontend/app/chat/_components/chat-input.tsxCode Structure
Large file (1049 code lines, 1253 total) — this is a real problemfrontend/app/chat/page.tsxCode Structure
Large file (794 code lines, 852 total) — this is a real problemfrontend/app/knowledge/page.tsxCode Structure
Large file (626 code lines, 725 total) — should probably split thisfrontend/app/onboarding/_components/onboarding-card.tsxCode Structure

+41 more new issues