# M03-L02 — Interview

**Q1. What problem does Transaction lifecycle solve?**  
A: Broadcast does not mean confirmed. Explain the trust boundary and show one concrete failure of the naive approach.

**Q2. How would you implement and verify it?**  
A: Poll transaction hash and receipt; prove it with tests where pending, included and failed differentiated.

**Q3. What breaks under retries or concurrent execution?**  
A: Analyze duplicate requests, ordering, idempotency and whether state is on-chain or off-chain. State which cases are applicable.

**Q4. What would change in production?**  
A: Add security review, finality/reorg handling, key management, monitoring, explicit RPC failure semantics, and deployment controls as applicable.

**Follow-up:** Draw the state machine, identify one invariant, and defend a trade-off.
