chore(wolf): checkpoint buglog.json (1023 bugs)

This commit is contained in:
Rongsong Shen 2026-08-25 04:43:10 +00:00
parent 0dccb3a9be
commit 64fb19183a
No known key found for this signature in database
GPG key ID: 5BCDAAE0123E9FE2

View file

@ -18652,6 +18652,27 @@
],
"occurrences": 1,
"last_seen": "2026-08-24T21:30:00Z"
},
{
"id": "bug-1682",
"timestamp": "2026-08-24T21:40:00Z",
"error_message": "Found while fixing bug-1681 (source read of plugin_end_session(), src/scheduler/src/plugin.c): the per-plugin iteration guard checks the WRONG field. plugin_end_session()'s loop tests `if (plugin->begin_session_fn != NULL) { plugin->end_session_fn(plugin); }` -- guards on begin_session_fn but calls end_session_fn. Pre-existing, not introduced by bug-1681's fix (untouched by that diff). Previously documented (not fixed) in testsuite/test_driver_session_ordering.c's own file header comment as a known 'CONCERN surfaced during this test's construction' -- flagged there for the reviewer, deliberately left unfixed as out of that task's scope. Confirmed still present in current code.",
"file": "src/scheduler/src/plugin.c",
"root_cause": "Copy-paste from plugin_begin_session()'s loop body (which correctly guards on begin_session_fn before calling it) without updating the guard field for the end_session variant.",
"fix": "Not yet fixed -- deliberately left alone during bug-1681 (scope: driver-equivalence call-site parity only, not adjacent defects in the function bodies touched). Impact: a plugin registering ONLY end_session_fn (no begin_session_fn) would silently never have its end_session_fn invoked; a plugin registering ONLY begin_session_fn (no end_session_fn) would crash via a NULL function-pointer call the first time a round ends. Currently inert in production -- the only plugin that sets either field (legacy `fcfs`, end_session_fn only, plugins/fcfs.c:352) is unreachable in sim mode, and in normal mode `fcfs` is not the registered default (builtin_fcfs is, and it leaves both fields NULL) -- but `fcfs` IS still registered alongside builtin_fcfs (scheduler.c:466-473) and reachable if `job_pick_plugin` is ever configured to it, or if a future plugin registers begin_session_fn without end_session_fn. Fix: change the guard to check the field actually being called (`plugin->end_session_fn != NULL`).",
"tags": [
"scheduler",
"plugin",
"session-hooks",
"guard-bug",
"latent",
"scheduler-driver-equivalence"
],
"related_bugs": [
"bug-1681"
],
"occurrences": 1,
"last_seen": "2026-08-24T21:40:00Z"
}
]
}