Match integration depth to your existing LLM wrapper or observability stack.
Avoid double-counting: never patch and wrap the same call path. Check patch_status in health output.
Pick patch vs wrap vs manual log_event based on your stack.
Full harness with request-scoped options.
Partial harness at your wrapper boundary.