Skip to content

revert: remove all Sentry error suppression from PRs #2813 #2850 #2899 #2906 #2915 #2923 #2924 #2928 #2930 #2934 #2937 #2939#2958

Closed
graycyrus wants to merge 1 commit into
tinyhumansai:mainfrom
graycyrus:revert/sentry-suppressions
Closed

revert: remove all Sentry error suppression from PRs #2813 #2850 #2899 #2906 #2915 #2923 #2924 #2928 #2930 #2934 #2937 #2939#2958
graycyrus wants to merge 1 commit into
tinyhumansai:mainfrom
graycyrus:revert/sentry-suppressions

Conversation

@graycyrus
Copy link
Copy Markdown
Contributor

@graycyrus graycyrus commented May 29, 2026

Summary

Removes all Sentry error suppression code added by the following PRs, restoring original error reporting behavior so errors properly fire Sentry events again:

These PRs suppressed/demoted errors instead of fixing root causes. Errors will now properly fire Sentry events again so they can be tracked and fixed with proper root-cause solutions.

Test plan

  • cargo check passes (verified locally — only pre-existing warnings, no errors)
  • Errors from the above categories now surface in Sentry for proper root-cause investigation

Summary by CodeRabbit

  • Bug Fixes

    • Refined error classification and reporting logic for improved observability.
    • Adjusted provider error handling to report failures more consistently.
    • Updated error message filtering to more accurately categorize and surface error events.
  • Refactor

    • Streamlined internal error classification patterns and removed redundant suppression layers.

Review Change Stack

…tinyhumansai#2850 tinyhumansai#2899 tinyhumansai#2906 tinyhumansai#2915 tinyhumansai#2923 tinyhumansai#2924 tinyhumansai#2928 tinyhumansai#2930 tinyhumansai#2934 tinyhumansai#2937 tinyhumansai#2939

These PRs suppressed/demoted errors instead of fixing root causes.
Errors will now properly fire Sentry events again so they can be
tracked and fixed with proper root-cause solutions.
@graycyrus graycyrus requested a review from a team May 29, 2026 16:36
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 29, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 099f77cd-bee7-4077-8808-a0354c203cae

📥 Commits

Reviewing files that changed from the base of the PR and between b7110d0 and 34ed335.

📒 Files selected for processing (8)
  • src/core/observability.rs
  • src/main.rs
  • src/openhuman/inference/ops.rs
  • src/openhuman/inference/ops_tests.rs
  • src/openhuman/inference/provider/config_rejection.rs
  • src/openhuman/inference/provider/ops.rs
  • src/openhuman/memory_store/factories.rs
  • src/openhuman/subconscious/store.rs

📝 Walkthrough

Walkthrough

This PR systematically removes error suppression and demotion filters across the observability, Sentry, and provider/inference layers. Changes narrow classification logic for expected errors, remove tagless/defense-in-depth suppression filters, eliminate conditional error demotions, and allow previously filtered errors to surface in Sentry reporting.

Changes

Error reporting classification and suppression removal

Layer / File(s) Summary
Core expected-error-kind enum and matching logic tightening
src/core/observability.rs
Removes the MemoryStorePiiRejection expected-kind variant and its classification/reporting paths; narrows ApiKeyMissing detection by removing backend env-var phrase matching; updates classification boundaries. Unit tests for PII rejection and API-key env-var matching are removed and replaced with negative assertions.
Session-expired and provider user-state classification narrowing
src/core/observability.rs
Removes billing 401 backend rejected session token from session-expired classification; tightens [composio-direct] HTTP 403 demotion to HTTP 401 only. Tests validating composio 403 demotion and billing 401→session-expired classification are removed.
Budget event filtering logic rewrite
src/core/observability.rs
Rewrites is_budget_event to require both failure == "non_2xx" and status == "400" tags, removing the previous tagless "Insufficient budget" phrase-based suppression tier. Tests validating tagless suppression and exception-path drops are removed.
Sentry before_send defense-in-depth filter removal
src/main.rs
Removes two before_send suppression blocks that previously dropped embeddings HTTP 401 "api-key" events and upstream rate-limit detection, allowing those events to pass through to Sentry.
Inference expected-failure classification removal
src/openhuman/inference/ops.rs, src/openhuman/inference/ops_tests.rs
Removes the is_expected_chat_failure ops-layer classifier; simplifies inference_test_provider_model error handling to log all failures uniformly as errors instead of conditionally demoting expected failures to warnings. Entire test suite for expected-failure matchers is removed.
Provider config rejection phrase matching tightening
src/openhuman/inference/provider/config_rejection.rs
Removes tool-calling/tool-parameter "does not support tools" phrase family from is_provider_config_rejection_message; keeps and expands user-state matchers for model-field errors, thinking-mode rejection, and Ollama subscription gating. Tool-unsupported test coverage is removed.
Provider /models 404 handling and api_error Sentry reporting changes
src/openhuman/inference/provider/ops.rs
Removes the /models HTTP 404 special-case that returned empty list with unsupported=true; changes api_error non-2xx Sentry reporting to unconditionally report with tags instead of suppressing when rate-limit phrases are detected in non-429 responses. Tests for 404 and rate-limit suppression are removed.
Supporting documentation and minor updates
src/openhuman/memory_store/factories.rs, src/openhuman/subconscious/store.rs
Updates Ollama health-gate error reporting documentation; removes associated classification test; removes with_connection doc comment describing init-failure suppression; updates error context message for directory creation from generic to "failed to create subconscious dir".

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~75 minutes

Possibly related PRs

  • tinyhumansai/openhuman#2850: This PR directly reverses the addition of ExpectedErrorKind::MemoryStorePiiRejection and its suppression behavior by removing the entire classification path.
  • tinyhumansai/openhuman#2928: Both PRs directly modify src/openhuman/inference/ops.rs to change how inference errors are classified and logged by removing the "expected chat failure" demotion.
  • tinyhumansai/openhuman#2939: Both PRs modify the same /models HTTP 404 handling in list_configured_models_from_config (this PR removes the special-case empty-list behavior).

Suggested labels

rust-core, sentry-traced-bug, working, bug

Suggested reviewers

  • oxoxDev
  • M3gA-Mind

Poem

🐰 A rabbit hops through observability's brush,
Sweeping away the filters and suppression rush—
Expected kinds shrink, and errors now rise,
More truths reach Sentry beneath the code skies!
No more silent demotions in darkness to hide,
Just clear error signals flowing free and wide. ✨


Comment @coderabbitai help to get the list of available commands and usage tips.

@graycyrus
Copy link
Copy Markdown
Contributor Author

Closing — this was created by a stale agent on the wrong branch. The correct revert PR will come from the worktree.

@graycyrus graycyrus closed this May 29, 2026
@coderabbitai coderabbitai Bot added rust-core Core Rust runtime in src/: CLI, core_server, shared infrastructure. sentry-traced-bug Bug identified via Sentry triage working A PR that is being worked on by the team. bug labels May 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug rust-core Core Rust runtime in src/: CLI, core_server, shared infrastructure. sentry-traced-bug Bug identified via Sentry triage working A PR that is being worked on by the team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant