{"version":"2.1.234","anchor":"poll-events-get-a-nonce-and-a-reserved-kind-guard","canonical_anchor":"poll-events-get-a-nonce-and-a-reserved-kind-guard","heading":"Poll events get a nonce and a reserved-kind guard","tier":"notice","area":"Poll Events","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.234\/e\/poll-events-get-a-nonce-and-a-reserved-kind-guard","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.234","markdown":"### Poll events get a nonce and a reserved-kind guard\n\nInjected events get a random nonce and can't reuse an event kind Claude Code produces itself.\n\n**What**\n\nEvents injected by a host now have a random nonce stamped into the event wrapper before the size limit is applied, and an event kind that collides with one Claude Code produces itself is refused unless the caller explicitly opts in.\n\n**Details**\n\n- The size-limit message now says the measurement is taken after nonce stamping.\n- The queue-depth check moved ahead of building the event wrapper.\n- A reserved kind that still reaches dispatch is refused and redelivered on reconnect.\n- Hook payloads gained a `poll_event` prompt-origin value, marking the enqueue-time pass where a blocking verdict rejects the event.\n- Poll events already require permission mode `auto`.\n\n**Evidence**\n\n`poll event rejected: kind \"`\n\n- Area: Poll Events\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 3\/5"}