0d8ec1e8e7
handleCreateCard only published board.invalidated, which is not in the module event filter, so the dispatcher dropped it and jiraHandler.create never ran. Newly created cards therefore never produced a Jira issue, unlike moves (card.moved) and chat (message.created) which already synced. Emit card.created after assignee/tags are applied so the synced issue carries them. board.invalidated is kept for the SPA refetch path. No loop risk (card.created fires only from the HTTP handler) and no double-create (board.invalidated stays out of the filter).