chore(wolf): session trail + xce-test-ha cross-run collision guard

run-ha-soak.sh: scope every pgrep/pkill to this run's --workdir, not just
binary name + --myname. An unscoped pkill -9 -x xce_controller (old
cleanup()) killed every xce_controller on the machine, including a
different concurrently-running soak's live primary — root cause of the
first bug-1436 misdiagnosis (a killed-out-from-under-it primary produced
a genuine, correctly-reported ECONNRESET that looked like a libxce bug).

.wolf/*: anatomy/cerebrum/buglog updated for bug-1435/1436, session and
token-ledger trail.
This commit is contained in:
Rongsong Shen 2026-07-13 07:19:00 +00:00
parent 40c2351578
commit b3219635b5
7 changed files with 2415 additions and 41 deletions

View file

@ -1,7 +1,14 @@
# anatomy.md
> Auto-maintained by OpenWolf. Last scanned: 2026-07-11T13:58:37.442Z
> Files: 637 tracked | Anatomy hits: 0 | Misses: 0
> Auto-maintained by OpenWolf. Last scanned: 2026-07-12T16:47:48.239Z
> Files: 643 tracked | Anatomy hits: 0 | Misses: 0
## ../../../../../../tmp/claude-1000/-home-rshen-projects-xce-worktrees-raft-tla/00c9b3f1-df3c-4ce0-a997-5c6a316be4ec/scratchpad/
- `hammer.sh` — Tight repro loop for bug-1436: hammer verify_no_loss-style REPL sessions (~570 tok)
- `hammer2.sh` — Tight repro loop v2 for bug-1436: hammer verify_no_loss-style REPL sessions (~807 tok)
- `hammer3.sh` — Tight repro loop v3 for bug-1436: test the LARGE-PAYLOAD hypothesis. (~975 tok)
- `run-chaotic-soak.sh` (~61 tok)
## ../../../../../../tmp/claude-1000/-home-rshen-projects-xce-worktrees-raft-tla/5e55cf26-d05d-4a2e-8196-d2c70e0c063c/scratchpad/
@ -247,7 +254,7 @@
## .claude/skills/xce-test-ha/
- `run-ha-soak.sh` — run-ha-soak.sh — driver for /xce-test-ha: deploy a 3-node XCE HA cluster, then (~19673 tok)
- `run-ha-soak.sh` — driver for /xce-test-ha: deploy a 3-node XCE HA cluster, then repeatedly kill/restart/verify. bug-1436 fix (2026-07-12): all pgrep/pkill process-matching scoped to this run's own --workdir via node_pattern()/run_pattern(), so one invocation can never kill a different invocation's cluster (~21600 tok)
- `SKILL.md` — XCE HA Failover Soak Test (~5002 tok)
- `soak-verdict-selftest.sh` — soak-verdict-selftest.sh — deterministic unit test for the verdict parser in (~1857 tok)
- `soak-verdict.sh` — soak-verdict.sh — pure (side-effect-free) verdict helpers for run-ha-soak.sh. (~1383 tok)
@ -943,13 +950,13 @@
## src/controller/
- `CLAUDE.md` — XCE Controller (~3373 tok)
- `cluster.c` — include "config.h" (~18444 tok)
- `cluster.c` — include "config.h" (~18669 tok)
- `commit.c` — Declares is (~12825 tok)
- `config_repl.c` — define _GNU_SOURCE (~30643 tok)
- `config_repl.h` — pragma once (~6155 tok)
- `ha_convergence.c` — Declares char (~5779 tok)
- `ha.c` — define _GNU_SOURCE (~109219 tok)
- `ha.h` — ifndef HA_H (~27080 tok)
- `ha.c` — define _GNU_SOURCE (~110421 tok)
- `ha.h` — ifndef HA_H (~27638 tok)
- `job.c` — include <errno.h> (~18619 tok)
- `join.c` — include "config.h" (~2795 tok)
- `main.c` — include <argp.h> (~3035 tok)
@ -1021,6 +1028,8 @@
## src/lib/
- `client_internal.h` — if !defined(_CLIENT_INTERNAL_H_) (~4475 tok)
- `client.c` — include <errno.h> (~6767 tok)
- `delay.c` — include <errno.h> (~1520 tok)
- `jobj.c` — include <errno.h> (~4867 tok)
- `meson.build` (~1643 tok)