Procedural macros for the obs SDK.
Phase-1 surface (impl-plan task 1.9):
- [
Event] (#[derive(Event)]) — emitsEventSchemaimpl,EventSchemaErasedimpl,linkme::distributed_sliceregistration, typed builder, and the const-eval lint block (L001/L002/L003/L011). - [
emit] — terseobs::emit!(MyEvent { … })shorthand. - [
scope] — placeholder (full impl in Phase 3 task 3.3).
See spec 12 § 1.2 (Rust-first authoring) and spec 13 § 2 (obs::scope!).