Commit 8263cbc
fix(ego-lint): narrow R-LIFE-25 auto-cleanup to D-Bus-specific disconnectSignal (#65)
## Summary
- R-LIFE-25 produced 0 lint hits because the auto-cleanup suppression
matched GObject signal mechanisms (`connectObject`, `disconnectObject`,
`SignalTracker`, `connectSmart`) which are irrelevant for D-Bus proxy
signals
- Every real-world extension using `connectObject` for widget/settings
signals had all `connectSignal` leak warnings suppressed
- Fix narrows auto-cleanup detection to only recognize
`disconnectSignal()` — the only valid D-Bus signal cleanup mechanism
- Adds `dbus-signal-mixed-cleanup@test` fixture testing the exact
false-negative scenario
- Updates `dbus-signal-auto-cleanup@test` fixture to use
`disconnectSignal` instead of `connectObject`
Closes #63
## Test plan
- [x] `dbus-signal-leak@test` → FAIL (bare connectSignal, no cleanup)
- [x] `dbus-signal-auto-cleanup@test` → PASS (has `disconnectSignal`)
- [x] `dbus-signal-mixed-cleanup@test` → FAIL (GObject cleanup doesn't
count for D-Bus)
- [x] Full test suite: 601 passed, 0 failed
🤖 Generated with [Claude Code](https://claude.com/claude-code)
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>1 parent 99c89c0 commit 8263cbc
File tree
7 files changed
+51
-16
lines changed- skills/ego-lint
- references
- scripts
- tests
- assertions
- fixtures
- dbus-signal-auto-cleanup@test
- dbus-signal-mixed-cleanup@test
7 files changed
+51
-16
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2070 | 2070 | | |
2071 | 2071 | | |
2072 | 2072 | | |
2073 | | - | |
| 2073 | + | |
2074 | 2074 | | |
2075 | | - | |
| 2075 | + | |
2076 | 2076 | | |
2077 | 2077 | | |
2078 | | - | |
| 2078 | + | |
2079 | 2079 | | |
2080 | 2080 | | |
2081 | 2081 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1286 | 1286 | | |
1287 | 1287 | | |
1288 | 1288 | | |
1289 | | - | |
| 1289 | + | |
1290 | 1290 | | |
1291 | 1291 | | |
1292 | 1292 | | |
1293 | 1293 | | |
1294 | 1294 | | |
1295 | | - | |
1296 | | - | |
1297 | | - | |
1298 | | - | |
1299 | | - | |
| 1295 | + | |
| 1296 | + | |
| 1297 | + | |
| 1298 | + | |
1300 | 1299 | | |
1301 | 1300 | | |
1302 | 1301 | | |
| |||
1325 | 1324 | | |
1326 | 1325 | | |
1327 | 1326 | | |
1328 | | - | |
| 1327 | + | |
1329 | 1328 | | |
1330 | 1329 | | |
1331 | 1330 | | |
1332 | 1331 | | |
1333 | 1332 | | |
1334 | | - | |
| 1333 | + | |
1335 | 1334 | | |
1336 | 1335 | | |
1337 | | - | |
| 1336 | + | |
1338 | 1337 | | |
1339 | 1338 | | |
1340 | 1339 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
13 | | - | |
| 12 | + | |
14 | 13 | | |
15 | 14 | | |
16 | 15 | | |
17 | 16 | | |
18 | 17 | | |
19 | | - | |
| 18 | + | |
20 | 19 | | |
21 | | - | |
22 | 20 | | |
23 | 21 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
Lines changed: 23 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
Lines changed: 7 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
0 commit comments