Library Integrators#

This route is for developers integrating SMonitor into their own host library. It is designed for fast, low-risk adoption in real codebases.

Outcome#

By the end of this route you should have:

  • _smonitor.py in mylib/,

  • catalog and metadata under mylib/_private/smonitor/,

  • @signal instrumentation on relevant API boundaries,

  • release checks for diagnostics quality.

What SMonitor gives you immediately#

  • clear user-facing warnings/errors with actionable hints,

  • optional rich visual output (theme="rich"),

  • policy-based routing/filtering to reduce noise,

  • lightweight profiling and timeline export,

  • local diagnostic bundles for reproducible support,

  • strict validation modes for QA (strict_signals, strict_schema).

Adoption strategy#

Start small:

  • integrate one warning family,

  • add one instrumented API boundary,

  • validate with strict QA profile,

  • expand by subsystem.

This keeps migration risk low while delivering immediate user-facing improvements.

Important path convention#

When this route says “package root”, it means the root of your Python package, not the repository root.

If your package is mylib, use:

  • mylib/_smonitor.py

  • mylib/_private/smonitor/...

Canonical contract#