diff --git a/scripts/s/b b/scripts/s/b index f3eba75..5a8624d 100755 --- a/scripts/s/b +++ b/scripts/s/b @@ -89,6 +89,11 @@ backend=${backend}" model=${model}" printf '%s\n' "$kv" > "$MOUNT/s/new" || die "failed to create session" + # Poll until the session directory is visible (FUSE entry cache may lag). + local deadline=$(( $(date +%s) + 5 )) + until [ -d "$B" ] || [ "$(date +%s)" -ge "$deadline" ]; do sleep 0.05; done + [ -d "$B" ] || die "timeout waiting for session $id" + printf '%s\n' "$prompt" > "$B/prompt" || die "failed to submit prompt" if [ "$bg" -eq 1 ]; then