feat(notifications): wire on_ai_processed / on_task_failed trigger events

Analysed against 360612e56 files changedby 1012839419a-alt
Open PR on GitHub

Change-risk score

9.0out of 10Elevated
Repository health
5.1to5.6base against this head

This change sits in the top third of this repository's own risk distribution, the band worth reviewing closely. It is riskier than 69% of this repository's own commits.

The largest health movement is in notifier_dispatch.py, down 0.2. 1 contract changed, called by 4 symbols in files this PR does not touch.

Files changed
6
in this diff
Contracts changed
1
removed or signature
Outside callers
4
not in this diff
Findings added
2
2 resolved

Blast radius on the repo map

Every file in the repository, grouped into its own directories and sized by lines. The ones this PR changes are lit, and everything that imports them is marked.

backendchromecompatdocsfrontendiiiopenspecscriptstestsapibrowser_act_packsschemasservicesskillsworkflowdify_gra…appcomponentslibchangesintegrationunitecommercelead-generationsocial-listeningintellige…(app)flowrecordsuiunlumen-uiflowworkflowapichannelscontrolpipeline
changed, health fellchanged, health rosechanged, health heldimports a changed fileuntouchedchanged by this PR

Drawing 1,488 of 1,631 files at a readable size, grouped by directory and sized by lines of code. 6 changed here reach 7 more by import. 143 are too small to see at this width, which is what the frame below is for.

Inside backend

agent_runtimesapibrowser_act_packschannelscontrolimage_st…llmmigratio…plan_irpluginsschemassecurityservicesskillsworkflowv1ecommercelead-generat…social-listeningversionsintelligencebrows…cr…opencli_…skil…agen…in…jo…__i…im…inte…cu…pi…exe…val…capa…cont…op…workf…url…image_s…op…plugin…prov…reco…cor…loo…tr…tasks…capabili…compiler…data_ope…dataflow…demand_a…dify_im…ex…fl…hda_tem…htt…int…joy…kat…las…nat…native_intell…nati…no…open…opencli_hd…patcher.pyresea…research_o…runti…runtime_regis…situa…swarm…tool_…trigg…tur…turb…tur…work…brow…cha…co…dashbo…image_st…nodes.…oper…ope…pr…pro…studi…st…ta…work…od…co…report…simula…SK…SK…SK…

630 files, 3 changed by this PR and 7 that import one. This PR changes 6 files in total, spread across more than one top-level directory. Click any directory above to frame it instead.

Changed

Contracts this PR changes

Only symbols that were removed or had their signature changed. An added symbol has no prior callers, and a body-only change leaves the caller's contract intact, so neither is a finding.

dispatch_notificationssignature changedbackend/pipeline/notifier_dispatch.py:91

4 callers outside this PR, 3 inside it.

tests/unit/pipeline/test_notifier_dispatch_errors.py::test_dispatch_aggregate_counts_partial_failuretests/unit/pipeline/test_notifier_dispatch_errors.py::test_dispatch_notifier_send_exception_loggedtests/unit/pipeline/test_notifier_dispatch_errors.py::test_dispatch_pending_rows_committed_before_sends_starttests/unit/pipeline/test_notifier_dispatch_errors.py::test_dispatch_unknown_notifier_type_skipped

What this PR added, and what it took away

Introduced findings are the ones inside the lines this PR added, not the file's existing ones. The resolved column is the only place in the product that lists them.

Introduced (2)
  • lowprimitive obsession
    backend/pipeline/notifier_dispatch.py:91

    dispatch_notifications takes 5 parameters

  • lowerror handling
    backend/pipeline/pipeline.py:142

    broad `except Exception` catches unrelated errors and can hide bugs

Resolved (2)
  • function hotspot
    backend/pipeline/notifier_dispatch.py
  • function hotspot
    backend/pipeline/pipeline.py

Who else knows this code

The primary author of each changed file by share of its recent commits, mined from git history. Advisory: it says who has context, not who must review.

  • backend/pipeline/pipeline.pyCurry 65% of 18 commits
  • tests/unit/pipeline/test_pipeline_errors.pyxujinghua 51% of 3 commits
  • tests/unit/pipeline/test_notifier_dispatch.pyxujinghua 70% of 2 commits
  • backend/schemas/notification.pyxujinghua 54% of 4 commits
  • backend/pipeline/notifier_dispatch.pyCurry 81% of 4 commits

Tests that cover this change

Test files that import a file this PR changes. Not a coverage measurement: it is the import graph, so it says which tests are worth running, not which lines they reach.

  • tests/unit/pipeline/test_legacy_db_sink.py
  • tests/unit/pipeline/test_pipeline.py
  • tests/unit/pipeline/test_pipeline_affinity.py
  • tests/unit/pipeline/test_notifier_dispatch_errors.py

4 changed files have no test importing them.

Get this on your own pull requests

This page came from an index of 2233admin/opencli-Razormind. No model calls, no configuration, and it refreshes on every push. Install the bot and every pull request gets one of these.

feat(notifications): wire on_ai_processed / on_task_failed trigger events · 2233admin/opencli-Razormind #67 · Repowise