ONE Utilities — Printer Connector Foundation v0.1 (engineering)
SNMPv3 Printer-MIB and IPP data-normalization reference.

The provided module is intentionally OFFLINE. It accepts already decoded
response objects and applies strict schema, status, error and toner/ink
level validation. There are no network sockets, active scans, polling
tasks, credentials, or any printer-control operations.

Supported offline normalization:
 - Printer-MIB reported device state, page counts, known issue labels,
   and consumable level/max values.
 - IPP printer-state (3 idle, 4 processing, 5 stopped), a constrained
   set of printer-state-reasons, vendor-provided supply-level pairs, and
   job counts.
 - Printer-MIB unknown levels -1, -2 and -3 map to unavailable, NEVER 0.
 - Missing or invalid maxima map to unavailable rather than percentages.
 - Bad/duplicate supplies and unexpected schemas are rejected.

Still needed before live use:
 - Tenant-scoped administrator enrollment and per-device authorization
   (the ONE Accounts signed-agent pairing backend is already available).
 - A separately authorized LOCAL Windows/Linux collector using SNMPv3
   authPriv or TLS-protected IPP and configured, fixed private-IP targets.
 - Secure device credential storage (never in the public website or this zip).
 - Trustworthy TLS server identity validation, timeout and egress controls,
   no arbitrary DNS/URL fetch, bounded polling cadence, and audit logging.
 - Manufacturer-specific support, actual toner validation and error taxonomy.
 - Physical printer and switch acceptance, signing, packaging, security review.
 - An authorized, signed extension to the telemetry envelope for supply
   readings, with freshness and anti-replay policies. The current signed
   schema does not accept toner and MUST NOT be spoofed to contain levels.
 - Alert delivery via authorized notification service; not enabled today.

This module does not prove printer compatibility, real-time supply
collection or automatic monitoring. It cannot be used to print, change
settings, reboot devices, perform discovery, or trigger network floods.

Local QA:
 python -m unittest -q test_printer_adapters
