docs(buglog): P0 defects fixed (bug-1936..bug-1955; 1936 and 1955 partial), bug-1956 cannot-reproduce

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Rongsong Shen 2026-10-10 09:15:15 +00:00
parent d3da314041
commit e5a0e42b66
Signed by untrusted user: rshen
GPG key ID: 80533536B0EB651C
22 changed files with 353 additions and 266 deletions

View file

@ -1,8 +1,8 @@
---
id: "bug-1956"
status: "investigating"
status: "cannot-reproduce"
status_updated: "2026-10-10"
status_note: "suspected: confirm whether a job without launch type decodes to NULL at the worker"
status_note: "no NULL path from the wire; the explicit NULL branch in job_start_local_task is unreachable through decoding"
component: "worker"
severity: "crash"
timestamp: "2026-10-10T08:46:13Z"
@ -11,6 +11,7 @@ occurrences: 1
files: ["src/worker/src/controller_connector.c"]
tags: ["worker", "crash", "launch-type"]
related: []
repro_attempts: "decoder analysis 2026-10-10: empty launchType decodes to \"\" (capn_val0 default + strdup), never NULL"
---
# bug-1956: xcecd compares a NULL launch_type with strcmp when a job has no launch type (possible crash)
@ -39,6 +40,9 @@ dereference.
**Impact:** possible worker crash at job start for jobs without a launch
type.
**Found by:** review of the bug-1940/1942 fixes, 2026-10-10.
UPDATE (2026-10-10): Not confirmed: the generated decoder reads launchType with capn_get_text(..., capn_val0) whose default is {0,"",0} and then STRING_DUPs (strdup) it (src/xce.build/lib/controller.capnp.c:6398), so a job start without a launch type reaches the worker as "" (non-NULL); strcmp at controller_connector.c:753/994 is safe. job_start_local_task's explicit NULL assignment (:985) is only reachable if start_info->launch_type is NULL, which decoding never produces.
## Environment
- OS: no /etc/os-release; Docker container; NixOS kernel; kernel Linux 6.18.33 x86_64
- libc: glibc 2.42-47 (interpreter /nix/store/wb6rhpznjfczwlwx23zmdrrw74bayxw4-glibc-2.42-47/lib/ld-linux-x86-64.so.2)
@ -54,6 +58,7 @@ type.
2. Check whether `startinfo->launch_type` is NULL at `:994`.
- Frequency: deterministic by code reading (not yet run)
- Evidence: the code quoted in Description; no logs kept.
## Root cause
TODO: required for fixed/partial