Opus finding
Concurrency group based on `inputs.message != ''` is evaluated after template expansion; empty messages still take the poll group
- .github/workflows/messages.yml:31-33
For workflow_dispatch invocations triggered by the poll job (`gh workflow run -f message="$TEXT"`), if a message expands to the empty string (e.g., Telegram message with only whitespace surviving `jq -r`), the dispatched run will fall into the `aeon-messages-poll` concurrency group along with scheduled polls. Combined with `cancel-in-progress: false`, this means an empty-but-non-skipped dispatch could serialize behind a poll. The `run` job's own `if` further requires `inputs.message != ''`, so the run will no-op, but it still consumes the poll concurrency slot and may block the next scheduled poll. Minor reliability/maintainability concern.
Recommendation
Pre-filter empty TEXT in the poll job (already does `[ -n "$TEXT" ]` checks per source, but trim whitespace), or fold empty-message dispatch detection into the concurrency expression more robustly.