drift fix: validatord in start_go_stack + parity refresh
Two anchor-vs-reality drifts found during /read-mem audit: 1. start_go_stack.sh never started validatord :3221, even though it shipped 2026-05-02 (f9e7241) and STATE_OF_PLAY claims it as part of the persistent stack. Cold-boot quietly omitted it, leaving /v1/iterate unreachable on the persistent gateway. Fix: factored chatd's conditional-start block into a start_shared helper, called for both chatd :3220 and validatord :3221. Same shared-with-smokes posture as chatd (no S3 / JSONL-only state, no temp-toml override needed). 2. STATE_OF_PLAY header claimed 3 parity probes / 32 assertions. Reality is 6 probes / 38 assertions since subject_audit landed in262a77a(2026-05-03). Header refreshed; cross-references the three runtime-divergence classes documented at lakehouse/STATE_OF_PLAY.md lines 36-39. Parity reports regenerated as verification artifact (all 6 still green: 8+12+2+4+1+6). Same pattern asc0a55b1. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -135,32 +135,47 @@ start observerd 4219
|
||||
start matrixd 4218
|
||||
start gateway 4110
|
||||
|
||||
# chatd is started independently — its provider key files come from
|
||||
# /etc/lakehouse/{ollama_cloud,openrouter,opencode,kimi}.env; if
|
||||
# chatd is already up (long-running from a prior session) we don't
|
||||
# touch it. chatd uses no S3, so no temp-toml override needed.
|
||||
if ! curl -sSf -m 1 http://127.0.0.1:3220/health >/dev/null 2>&1; then
|
||||
echo "[gostack] chatd :3220 not up; starting"
|
||||
nohup ./bin/chatd -config lakehouse.toml > /tmp/gostack-logs/chatd.log 2>&1 & disown
|
||||
# chatd + validatord are started independently — both sit OUTSIDE
|
||||
# the persistent :4xxx range and are SHARED with smoke harnesses
|
||||
# (no bucket / port conflict because chatd has no S3 state and
|
||||
# validatord's state is JSONL files, not MinIO). Provider key files
|
||||
# come from /etc/lakehouse/{ollama_cloud,openrouter,opencode,kimi}.env.
|
||||
# If either is already up (long-running from a prior session) we
|
||||
# don't touch it. The matching smokes (chatd_smoke / validatord_smoke)
|
||||
# do `pkill -f "bin/<name>$"` on teardown — re-running this script
|
||||
# brings them back. No temp-toml override needed for either.
|
||||
start_shared() {
|
||||
local bin="$1"
|
||||
local port="$2"
|
||||
if curl -sSf -m 1 "http://127.0.0.1:$port/health" >/dev/null 2>&1; then
|
||||
echo " $bin :$port already up (skipping)"
|
||||
return 0
|
||||
fi
|
||||
echo "[gostack] $bin :$port not up; starting"
|
||||
nohup ./bin/"$bin" -config lakehouse.toml > "/tmp/gostack-logs/$bin.log" 2>&1 & disown
|
||||
for _ in $(seq 1 50); do
|
||||
if curl -sSf -m 1 "http://127.0.0.1:3220/health" >/dev/null 2>&1; then
|
||||
echo " chatd :3220 up"
|
||||
break
|
||||
if curl -sSf -m 1 "http://127.0.0.1:$port/health" >/dev/null 2>&1; then
|
||||
echo " $bin :$port up"
|
||||
return 0
|
||||
fi
|
||||
sleep 0.1
|
||||
done
|
||||
else
|
||||
echo " chatd :3220 already up (skipping)"
|
||||
fi
|
||||
echo " $bin :$port FAILED — log tail:"
|
||||
tail -20 "/tmp/gostack-logs/$bin.log"
|
||||
return 1
|
||||
}
|
||||
|
||||
start_shared chatd 3220
|
||||
start_shared validatord 3221
|
||||
|
||||
echo
|
||||
echo "[gostack] ready · sweep:"
|
||||
for p in 4110 4211 4212 4213 4214 4215 4216 4217 4218 4219 3220; do
|
||||
for p in 4110 4211 4212 4213 4214 4215 4216 4217 4218 4219 3220 3221; do
|
||||
curl -sSf -m 1 "http://127.0.0.1:$p/health" 2>/dev/null | head -c 80
|
||||
echo
|
||||
done
|
||||
echo
|
||||
echo "[gostack] persistent stack: ports :4110+:4211-:4219 · bucket=$PERSISTENT_BUCKET"
|
||||
echo "[gostack] smoke harnesses: ports :3110+:3211-:3219 · bucket=lakehouse-go-primary"
|
||||
echo "[gostack] shared: chatd at :3220 (read-mostly LLM dispatch)"
|
||||
echo "[gostack] shared: chatd :3220 + validatord :3221 (no S3 / JSONL-only state)"
|
||||
echo "[gostack] tear down via: pkill -f 'bin/persistent-'"
|
||||
|
||||
Reference in New Issue
Block a user