Compare commits

...

2 Commits

Author SHA1 Message Date
Michal
21aadf6d82 fix(deploy): stop running the smoke suite twice and crying wolf
Some checks failed
CI/CD / lint (pull_request) Successful in 1m14s
CI/CD / test (pull_request) Successful in 1m25s
CI/CD / typecheck (pull_request) Successful in 3m5s
CI/CD / smoke (pull_request) Failing after 1m57s
CI/CD / build (pull_request) Successful in 5m9s
CI/CD / publish (pull_request) Has been skipped
Step 7 called release.sh — which restarts mcplocal and runs the smoke suite
against the binary it just installed — and then restarted mcplocal and ran the
whole suite again. Two full suites inside a minute trips mcpd's rate limiter,
so the second run came back with six 429s and printed

    SMOKE TESTS FAILED — system may be unhealthy. Consider rollback

over a deploy that was fine. Seen for real on 35d506d: the first suite was
162/162 green, the second failed only on `mcpd returned 429: Rate limit
exceeded`, and a clean re-run afterwards was 162/162 again.

A deploy script that recommends rolling back a healthy release is worse than
one that says nothing. One run, one verdict — release.sh's exit status.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JNXFvxanvM6uiFcb4Mp3xU
2026-08-14 23:45:16 +01:00
35d506df77 merge: paginated-result contract usable by any MCP client (#111)
Some checks failed
CI/CD / lint (push) Successful in 1m16s
CI/CD / test (push) Successful in 1m29s
CI/CD / typecheck (push) Successful in 3m4s
CI/CD / smoke (push) Failing after 1m58s
CI/CD / build (push) Successful in 2m18s
CI/CD / publish (push) Has been skipped
2026-08-14 22:28:00 +00:00

View File

@@ -187,14 +187,16 @@ trap - ERR
# ── 7. RPM + smoke ── # ── 7. RPM + smoke ──
say "7/7 Build/install CLI RPM + smoke tests" say "7/7 Build/install CLI RPM + smoke tests"
bash scripts/release.sh # release.sh already restarts mcplocal and runs the smoke suite against the
systemctl --user restart mcplocal && sleep 2 # binary it just installed. This step used to restart and re-run it a second
if pnpm test:smoke > /tmp/deploy-smoke.log 2>&1; then # time, which put two full suites inside a minute and tripped mcpd's rate
grep -E "Tests |passed" /tmp/deploy-smoke.log | tail -2 # limiter: the second run failed with 429s and printed a false
# "SMOKE TESTS FAILED — consider rollback" over a perfectly healthy deploy.
# One run, one verdict.
if bash scripts/release.sh; then
say "Deploy complete — $TAG live. Rollback tag: $ROLLBACK_TAG" say "Deploy complete — $TAG live. Rollback tag: $ROLLBACK_TAG"
else else
tail -40 /tmp/deploy-smoke.log warn "RELEASE OR SMOKE TESTS FAILED — system may be unhealthy. Consider rollback:"
warn "SMOKE TESTS FAILED — system may be unhealthy. Consider rollback:"
rollback_recipe rollback_recipe
exit 1 exit 1
fi fi