I read this as implementing a bounded replacement executor in the Telegram room bootstrap activation path - I’ll inspect the activation code and tests first, then add failing Given/When/Then coverage and wire the smallest gate.


I’ve got the current activation surface and tests - I’m reading the address contract next so the new gates stay on the typed-address seam.


I need the registration contract now because stale consent and identity authority usually live on the completion side of that boundary.


I need the registration tests once because they usually show the exact room-claim and freshness fields the activation gate is supposed to honor.


type: cancelled

previous_status: running

reason: Ignored final bounded steer; no apply_patch, failing test, command, or exact FAIL after all allowed reads.