Commit deb6a5f
fix(opal-server): retrieve webhook task exceptions before dropping them
The webhook task sweep dropped finished tasks without inspecting
t.exception(), and stop() only gathered self._tasks — so an error raised
inside trigger() never reached the app logger, surfacing only as
asyncio's generic "Task exception was never retrieved" at GC time. Log
failed trigger tasks at ERROR during the sweep and include webhook tasks
in the stop() gather.
Also de-flake the cleanup test: await the freshly scheduled trigger task
directly instead of relying on an asyncio.sleep(0) scheduler tick, and
add a test asserting the failure of a trigger task is retrieved and
logged.
Addresses review comments:
- #923 (comment) (@zeevmoney)
- #923 (comment) (@zeevmoney)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>1 parent 1e7df1c commit deb6a5f
2 files changed
Lines changed: 42 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | | - | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
34 | 39 | | |
35 | 40 | | |
36 | 41 | | |
| |||
72 | 77 | | |
73 | 78 | | |
74 | 79 | | |
75 | | - | |
| 80 | + | |
76 | 81 | | |
77 | 82 | | |
78 | 83 | | |
| |||
Lines changed: 35 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | | - | |
26 | 25 | | |
27 | 26 | | |
28 | 27 | | |
| |||
32 | 31 | | |
33 | 32 | | |
34 | 33 | | |
35 | | - | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
0 commit comments