From 5e34f1f57132c14ff6ff08795927d4a9ed00934d Mon Sep 17 00:00:00 2001 From: Rongsong Shen Date: Sun, 23 Aug 2026 04:50:57 +0000 Subject: [PATCH] chore(wolf): checkpoint buglog.json (1008 bugs) --- .wolf/buglog.json | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/.wolf/buglog.json b/.wolf/buglog.json index 4878c683..997ce213 100644 --- a/.wolf/buglog.json +++ b/.wolf/buglog.json @@ -18300,6 +18300,28 @@ "related_bugs": [], "occurrences": 1, "last_seen": "2026-08-23T05:20:00Z" + }, + { + "id": "bug-1627", + "timestamp": "2026-08-23T05:35:00Z", + "error_message": "None yet observed at runtime -- found via code trace during round 3/4 of /kiro-validate-design review of scheduler-dispatch-commit.", + "file": "src/controller/job.c", + "root_cause": "dispatch_a_job_() (job.c:831-963) calls reference(j) at line 854 after successfully looking up the job. On FOUR of its failure/return paths it never calls a matching dereference(j): workermgr key_find() failing (rc<0, line 888-890), the worker not being found (w==NULL, line 892-894), the worker not being in a ready state (E_XCE_BAD_WORKER, line 897-909), and xce_startjob_req() itself failing (rc<0, line 956-960 -- found in a later review pass than the first three). (Contrast: the nc<=0 path at line 869-873 and the get_queue_exec() failure path at line 917-925 both correctly dereference(j) before returning.) Each occurrence permanently leaks one reference on the job object. Separately and NOT included in this bug (flagged as a distinct open question, not a confirmed defect): the function also never calls dereference(j) on its normal SUCCESS return path -- this may be an intentional reference hand-off to the job entering its dispatched/running lifetime rather than a bug, and needs its own investigation rather than being folded in here.", + "fix": "NOT YET FIXED -- found while designing scheduler-dispatch-commit (.kiro/specs/scheduler-dispatch-commit/), which already restructures exactly these four failure points (to add RTTI_LOCK_WRITE-protected dispatch-failure classification/resolution per that spec Requirement 4, including a new XCE_DISPATCH_FAIL_SITE_RPC_FAILURE classification site for the fourth). design.md now explicitly includes the missing dereference(j) at all four sites as part of that restructuring, closing this leak as a side effect rather than a separate patch.", + "tags": [ + "controller", + "reference-counting", + "memory-leak", + "refcount", + "dispatch_a_job_", + "pre-existing", + "unfixed" + ], + "related_bugs": [ + "bug-1626" + ], + "occurrences": 2, + "last_seen": "2026-08-23T05:50:00Z" } ] } \ No newline at end of file