feat: allow campaign tests to the allow-listed own addresses (v0.3.2) #17

Merged
jlxq0 merged 2 commits from feat/test-send-allowlist into master 2026-10-30 12:33:48 +00:00
Owner

Julian decided on 30 Oct 2026 that a test send to his own addresses must always work, from scheduled jobs and one-off sessions, without approval. Sends, schedules, status changes and subscriber removal stay as they are.

  • test_campaign sends only when every recipient is on LISTMONK_MCP_TEST_RECIPIENTS (comma-separated, compared case-insensitively; the normalised addresses are what reaches Listmonk). One recipient off the list refuses the whole test, without echoing an address. Empty or unset keeps every test refused.
  • Every other email path stays refused, with or without the list (tested).
  • Metrics: send-gate outcome allowed added.
  • Version 0.3.2 in pyproject, uv.lock, server, Dockerfile and README.

Carried patch (fleet policy), not for upstream.

After merge: tag v0.3.2 on the merge commit; then the platform repo sets LISTMONK_MCP_TEST_RECIPIENTS and the new image digest.

🤖 Generated with Claude Code

https://claude.ai/code/session_01E2xQRZ4ZSWoBgs1TvyWXFY

Julian decided on 30 Oct 2026 that a test send to his own addresses must always work, from scheduled jobs and one-off sessions, without approval. Sends, schedules, status changes and subscriber removal stay as they are. - `test_campaign` sends only when every recipient is on `LISTMONK_MCP_TEST_RECIPIENTS` (comma-separated, compared case-insensitively; the normalised addresses are what reaches Listmonk). One recipient off the list refuses the whole test, without echoing an address. Empty or unset keeps every test refused. - Every other email path stays refused, with or without the list (tested). - Metrics: send-gate outcome `allowed` added. - Version 0.3.2 in pyproject, uv.lock, server, Dockerfile and README. **Carried patch** (fleet policy), not for upstream. **After merge:** tag `v0.3.2` on the merge commit; then the platform repo sets `LISTMONK_MCP_TEST_RECIPIENTS` and the new image digest. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01E2xQRZ4ZSWoBgs1TvyWXFY
feat: allow campaign tests to the allow-listed own addresses (v0.3.2)
Some checks failed
CI / python (pull_request) Failing after 41s
CI / docker (pull_request) Has been skipped
bf28321ec6
Julian, 30 Oct 2026: a test send to his own addresses must always work,
from scheduled jobs and one-off sessions, without a human approval.
test_campaign now sends when every recipient is on
LISTMONK_MCP_TEST_RECIPIENTS (case-insensitive; the normalised addresses
reach Listmonk) and refuses the whole test otherwise, without echoing an
address. Empty keeps it refused. Every other sending path stays refused.

Carried patch: fleet policy, not for upstream.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E2xQRZ4ZSWoBgs1TvyWXFY
test: buildcache guard samples the v0.3.2 tag
All checks were successful
CI / python (pull_request) Successful in 42s
CI / docker (pull_request) Successful in 50s
22410a9b4b
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E2xQRZ4ZSWoBgs1TvyWXFY
jlxq0 merged commit 25df118847 into master 2026-10-30 12:33:48 +00:00
jlxq0 deleted branch feat/test-send-allowlist 2026-10-30 12:33:48 +00:00
Sign in to join this conversation.
No description provided.