Proc macros (design-doc §6). Two macros only, per the governing principle — a macro is justified only where Python used runtime dynamism Rust lacks:
#[rustdv::test](§6.1): registers the annotatedasync fnin the link-time test registry (theinventory/linkmetechnique, hand rolled for ELF:#[link_section]+__start_/__stop_symbols).#[derive(Component)](§6.3): generates theComponentNodetraversal over#[component]fields (T,Option<T>,Vec<T>).
Implementation note (STATUS.md): the zero-dependency constraint
rules out syn/quote, so parsing walks raw token trees and code
generation goes through string formatting + .parse(). Supported
grammar is deliberately narrow (plain fns, non-generic structs with
named fields); unsupported shapes produce compile errors.