A cache consumer must present its login; the two-node bed runs green again #49

Merged
jschoubben merged 5 commits from multiple-fixes into main 2026-09-22 11:53:15 +00:00
Showing only changes of commit 3f71b91fb8 - Show all commits
@@ -150,12 +150,13 @@ async function settled(node: string, withinMs = 1_200_000): Promise<void> {
last = said;
await new Promise((r) => setTimeout(r, 5000));
}
// Timed out — capture what the node is actually doing so the failure is diagnosable.
const ps = (await on(NODE, `docker ps -a --format '{{.Names}}\t{{.Status}}'`)).out;
const hostLog = (await on(NODE, `tail -80 /var/log/mesh-host.log`)).out;
// Timed out — capture what the node that did not answer is doing, so the failure is diagnosable.
// Its own machine, not the second node's: the anchor timing out used to print the laptop's log.
const ps = (await on(node, `docker ps -a --format '{{.Names}}\t{{.Status}}'`)).out;
const hostLog = (await on(node, `tail -80 /var/log/mesh-host.log`)).out;
throw new Error(
`${node} never caught up within ${Math.round(withinMs / 1000)}s.\nLast status:\n${last}\n` +
`--- ${NODE} docker ps -a ---\n${ps}\n--- ${NODE} mesh-host.log tail ---\n${hostLog}`);
`--- ${node} docker ps -a ---\n${ps}\n--- ${node} mesh-host.log tail ---\n${hostLog}`);
}
before(async () => {