modelJobToSubmit built the C job_startinfo_t without setting execuser, so the controller forwarded a NULL execuser in the startjob request and the worker ran every job as "nobody". Now the submit carries the resolved exec user: an explicit exec_user wins, otherwise the job runs as the submitting user. - add resolveExecUser() (plain-Go, unit-testable) + TestResolveExecUser - set si.execuser in modelJobToSubmit, free it in freeJobSubmit Note: deploying this exposed an ASAN heap-use-after-free in the apiserver's submit/notification path (strncpy reading freed memory); the fix is committed but needs the memory-lifecycle investigation before it can ship safely. Co-Authored-By: Claude <noreply@anthropic.com>
84 lines
No EOL
1.9 KiB
JSON
84 lines
No EOL
1.9 KiB
JSON
{
|
|
"session_id": "session-2026-08-03-0843",
|
|
"started": "2026-08-03T08:43:53.877Z",
|
|
"files_read": {
|
|
"/home/lchen/code/xce/.mcp.json": {
|
|
"count": 1,
|
|
"tokens": 7,
|
|
"first_read": "2026-08-03T08:44:41.511Z"
|
|
},
|
|
"/home/lchen/code/xce/src/configs/hosts.yaml": {
|
|
"count": 1,
|
|
"tokens": 248,
|
|
"first_read": "2026-08-03T08:44:41.714Z"
|
|
}
|
|
},
|
|
"files_written": [
|
|
{
|
|
"file": "/tmp/frpcdbg_mon.sh",
|
|
"action": "create",
|
|
"tokens": 268,
|
|
"at": "2026-08-04T01:37:20.418Z"
|
|
},
|
|
{
|
|
"file": "/tmp/frpc_prod.toml",
|
|
"action": "create",
|
|
"tokens": 100,
|
|
"at": "2026-08-04T02:10:17.877Z"
|
|
},
|
|
{
|
|
"file": "/tmp/frpc_mon.sh",
|
|
"action": "create",
|
|
"tokens": 291,
|
|
"at": "2026-08-04T02:10:21.788Z"
|
|
},
|
|
{
|
|
"file": "/tmp/frpc_prod.toml",
|
|
"action": "create",
|
|
"tokens": 101,
|
|
"at": "2026-08-04T02:10:59.756Z"
|
|
},
|
|
{
|
|
"file": "/tmp/frpc_mon.sh",
|
|
"action": "create",
|
|
"tokens": 292,
|
|
"at": "2026-08-04T02:11:01.550Z"
|
|
},
|
|
{
|
|
"file": "/tmp/frpc_mon.sh",
|
|
"action": "edit",
|
|
"tokens": 5,
|
|
"at": "2026-08-04T02:11:33.854Z"
|
|
},
|
|
{
|
|
"file": "/tmp/frpc_mon.sh",
|
|
"action": "edit",
|
|
"tokens": 22,
|
|
"at": "2026-08-04T02:16:46.011Z"
|
|
},
|
|
{
|
|
"file": "/tmp/frpc_watchdog.sh",
|
|
"action": "create",
|
|
"tokens": 523,
|
|
"at": "2026-08-04T02:52:22.852Z"
|
|
},
|
|
{
|
|
"file": "/tmp/frpc-watchdog.sh",
|
|
"action": "create",
|
|
"tokens": 362,
|
|
"at": "2026-08-04T05:49:57.595Z"
|
|
}
|
|
],
|
|
"edit_counts": {
|
|
"../../../../tmp/frpcdbg_mon.sh": 1,
|
|
"../../../../tmp/frpc_prod.toml": 2,
|
|
"../../../../tmp/frpc_mon.sh": 4,
|
|
"../../../../tmp/frpc_watchdog.sh": 1,
|
|
"../../../../tmp/frpc-watchdog.sh": 1
|
|
},
|
|
"anatomy_hits": 2,
|
|
"anatomy_misses": 0,
|
|
"repeated_reads_warned": 0,
|
|
"cerebrum_warnings": 0,
|
|
"stop_count": 14
|
|
} |