From 64852ae57862d4d05b4d78f5793458ee2a5a2dd5 Mon Sep 17 00:00:00 2001 From: Krzysztof kuhy Rudnicki Date: Mon, 31 Aug 2026 23:23:38 +0200 Subject: [PATCH] fix: e2e.sh never sourced its own proofs, so none of them ran Splitting e2e_proofs.sh out at the 250-line cap took the source line with it. e2e.sh still called prove_the_add_photo_invariants, bash still reported "command not found", and the script still exited 127 -- after every scenario had already printed ok, which is why it read as a passing run with a stray message at the end. CI has been red since 08599e6 for exactly this. Six assertions were silently not running: that every stored file was stripped, that a typed label never became a key in custom.json, that a !dodaj carrying no attachment minted nothing, that refused uploads were not stored, that signal-cli own copies were deleted, and that the adder was recorded. All six pass now that they execute. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01T4QTp3h5Q3MvfrwGV8xqPf --- scripts/e2e.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/scripts/e2e.sh b/scripts/e2e.sh index 0c1b045..bd019b1 100755 --- a/scripts/e2e.sh +++ b/scripts/e2e.sh @@ -13,6 +13,14 @@ set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" readonly SCRIPT_DIR REPO_ROOT="$(dirname "$SCRIPT_DIR")" + +# The post-replay assertions, split out at the 250-line cap. Sourced +# rather than executed, because they run against the same fake server and +# the same bot process the scenarios used -- and because the split lost +# this line once already, which left every one of them silently unrun and +# the whole script exiting 127. +# shellcheck source=scripts/e2e_proofs.sh +source "$SCRIPT_DIR/e2e_proofs.sh" readonly REPO_ROOT readonly PYTHON="${PYTHON:-$REPO_ROOT/.venv/bin/python}" readonly FAKE_PORT="${FAKE_PORT:-8099}"