Initial Commit

This commit is contained in:
2026-05-27 23:47:53 +01:00
parent fbc70f96e6
commit 9b28db724f
18103 changed files with 1600554 additions and 0 deletions

View File

@@ -0,0 +1,60 @@
# @suaveplan/network-plugin-transport-manager - Multi-transport orchestration for the Suaveplan mesh: pool, capability negotiation, priority routing, round-robin balancing, health monitoring, pre-emptive switching, session persistence, battery + bandwidth conservation
## Summary
Multi-transport orchestration for the Suaveplan mesh. Maintains a pool of registered transports per peer, negotiates capability bitmaps during handshake, routes outbound messages by 5-tier priority (CRITICAL/HIGH/NORMAL/LOW/BULK), distributes NORMAL/BULK traffic across all healthy transports via round-robin, monitors per-transport health (RTT/loss/stability) and auto-pauses degraded paths, pre-emptively switches transports when quality trends predict failure with smooth handoff, persists session state across temporary drops with prioritized recovery, and conserves power and bandwidth via `BatteryAwareScheduler` and `BandwidthConservator`.
<!-- begin:auto-docs -->
## Documentation tree
- [analyzer](./src/analyzer/quality-trend-analyzer.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [quality-trend-analyzer](./src/analyzer/quality-trend-analyzer.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [round-robin-balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [health](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [transport-health-monitor](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [capability-negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [persistence](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [session-persistence-buffer](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [transport-manager-plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [transport-pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [priority](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [priority-router](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_ <!-- end:auto-docs -->
- [connection-recovery-manager](./src/recovery/connection-recovery-manager.md) — Generates exponential-backoff delays with bounded full-jitter so the manager can pace reconnection attempts without thu…
- [session-continuity-guard](./src/recovery/session-continuity-guard.md) — Owns the session-state machine around the persistence buffer so callers cannot bypass the documented sequence: a sessio…
- [bandwidth-conservator](./src/scheduler/bandwidth-conservator.md) — Implements `NET-124`: when the manager is told it has a constrained bandwidth budget, this module reports the recommend…
- [battery-aware-scheduler](./src/scheduler/battery-aware-scheduler.md) — Reduces keepalive frequency and prefers low-power transports when the host device is running on battery. Implements `NE…
- [preemptive-selector](./src/selector/preemptive-selector.md) — Decides whether to swap a still-functioning transport for a healthier alternative *before* the current one drops to bel…
- [transport-selector](./src/selector/transport-selector.md) — Translates a `(priority, commonCapabilities)` ask into a concrete, ordered list of transports drawn from the live pool.…
- [error-codes](./src/error-codes.md) — Frozen registry of every error code raised by the transport-manager package. Codes are namespaced under `NET_TM` and re…
<!-- end:auto-docs --> - [quality-trend-analyzer](./src/analyzer/quality-trend-analyzer.md) — <!-- begin:auto-docs --> _(no submodules)_- [balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_- [round-robin-balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_- [health](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_- [transport-health-monitor](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_- [negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_- [capability-negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_- [persistence](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_- [session-persistence-buffer](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_- [plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_- [transport-manager-plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_- [pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_- [transport-pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_- [priority](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_- [priority-router](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_- [connection-recovery-manager](./src/recovery/connection-recovery-manager.md) — Generates exponential-backoff delays with bounded full-jitter so the manager can pace reconnection attempts without thu…
- [session-continuity-guard](./src/recovery/session-continuity-guard.md) — Owns the session-state machine around the persistence buffer so callers cannot bypass the documented sequence: a sessio…
- [bandwidth-conservator](./src/scheduler/bandwidth-conservator.md) — Implements `NET-124`: when the manager is told it has a constrained bandwidth budget, this module reports the recommend…
- [battery-aware-scheduler](./src/scheduler/battery-aware-scheduler.md) — Reduces keepalive frequency and prefers low-power transports when the host device is running on battery. Implements `NE…
- [preemptive-selector](./src/selector/preemptive-selector.md) — Decides whether to swap a still-functioning transport for a healthier alternative _before_ the current one drops to bel…
- [transport-selector](./src/selector/transport-selector.md) — Translates a `(priority, commonCapabilities)` ask into a concrete, ordered list of transports drawn from the live pool.…
- [error-codes](./src/error-codes.md) — Frozen registry of every error code raised by the transport-manager package. Codes are namespaced under `NET_TM` and re…
- [quality-trend-analyzer](./src/analyzer/quality-trend-analyzer.md) — <!-- begin:auto-docs --> _(no submodules)_- [balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_- [round-robin-balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_- [health](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_- [transport-health-monitor](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_- [negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_- [capability-negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_- [persistence](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_- [session-persistence-buffer](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_- [plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_- [transport-manager-plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_- [pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_- [transport-pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_- [priority](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_- [priority-router](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_- [connection-recovery-manager](./src/recovery/connection-recovery-manager.md) — Generates exponential-backoff delays with bounded full-jitter so the manager can pace reconnection attempts without thu…
- [session-continuity-guard](./src/recovery/session-continuity-guard.md) — Owns the session-state machine around the persistence buffer so callers cannot bypass the documented sequence: a sessio…
- [bandwidth-conservator](./src/scheduler/bandwidth-conservator.md) — Implements `NET-124`: when the manager is told it has a constrained bandwidth budget, this module reports the recommend…
- [battery-aware-scheduler](./src/scheduler/battery-aware-scheduler.md) — Reduces keepalive frequency and prefers low-power transports when the host device is running on battery. Implements `NE…
- [preemptive-selector](./src/selector/preemptive-selector.md) — Decides whether to swap a still-functioning transport for a healthier alternative _before_ the current one drops to bel…
- [transport-selector](./src/selector/transport-selector.md) — Translates a `(priority, commonCapabilities)` ask into a concrete, ordered list of transports drawn from the live pool.…
- [error-codes](./src/error-codes.md) — Frozen registry of every error code raised by the transport-manager package. Codes are namespaced under `NET_TM` and re…
- [quality-trend-analyzer](./src/analyzer/quality-trend-analyzer.md) — <!-- begin:auto-docs --> _(no submodules)_- [balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_- [round-robin-balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_- [health](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_- [transport-health-monitor](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_- [negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_- [capability-negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_- [persistence](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_- [session-persistence-buffer](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_- [plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_- [transport-manager-plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_- [pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_- [transport-pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_- [priority](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_- [priority-router](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_- [connection-recovery-manager](./src/recovery/connection-recovery-manager.md) — Generates exponential-backoff delays with bounded full-jitter so the manager can pace reconnection attempts without thu…
- [session-continuity-guard](./src/recovery/session-continuity-guard.md) — Owns the session-state machine around the persistence buffer so callers cannot bypass the documented sequence: a sessio…
- [bandwidth-conservator](./src/scheduler/bandwidth-conservator.md) — Implements `NET-124`: when the manager is told it has a constrained bandwidth budget, this module reports the recommend…
- [battery-aware-scheduler](./src/scheduler/battery-aware-scheduler.md) — Reduces keepalive frequency and prefers low-power transports when the host device is running on battery. Implements `NE…
- [preemptive-selector](./src/selector/preemptive-selector.md) — Decides whether to swap a still-functioning transport for a healthier alternative _before_ the current one drops to bel…
- [transport-selector](./src/selector/transport-selector.md) — Translates a `(priority, commonCapabilities)` ask into a concrete, ordered list of transports drawn from the live pool.…
- [error-codes](./src/error-codes.md) — Frozen registry of every error code raised by the transport-manager package. Codes are namespaced under `NET_TM` and re…
- [quality-trend-analyzer](./src/analyzer/quality-trend-analyzer.md) — <!-- begin:auto-docs --> _(no submodules)_- [balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_ - [round-robin-balancer](./src/balancer/round-robin-balancer.md) — <!-- begin:auto-docs --> _(no submodules)_- [health](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_ - [transport-health-monitor](./src/health/transport-health-monitor.md) — <!-- begin:auto-docs --> _(no submodules)_- [negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_ - [capability-negotiator](./src/negotiator/capability-negotiator.md) — <!-- begin:auto-docs --> _(no submodules)_- [persistence](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_ - [session-persistence-buffer](./src/persistence/session-persistence-buffer.md) — <!-- begin:auto-docs --> _(no submodules)_- [plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_ - [transport-manager-plugin](./src/plugin/transport-manager-plugin.md) — <!-- begin:auto-docs --> _(no submodules)_- [pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_ - [transport-pool](./src/pool/transport-pool.md) — <!-- begin:auto-docs --> _(no submodules)_- [priority](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_ - [priority-router](./src/priority/priority-router.md) — <!-- begin:auto-docs --> _(no submodules)_- [connection-recovery-manager](./src/recovery/connection-recovery-manager.md) — Generates exponential-backoff delays with bounded full-jitter so the manager can pace reconnection attempts without thu…
- [session-continuity-guard](./src/recovery/session-continuity-guard.md) — Owns the session-state machine around the persistence buffer so callers cannot bypass the documented sequence: a sessio…
- [bandwidth-conservator](./src/scheduler/bandwidth-conservator.md) — Implements `NET-124`: when the manager is told it has a constrained bandwidth budget, this module reports the recommend…
- [battery-aware-scheduler](./src/scheduler/battery-aware-scheduler.md) — Reduces keepalive frequency and prefers low-power transports when the host device is running on battery. Implements `NE…
- [preemptive-selector](./src/selector/preemptive-selector.md) — Decides whether to swap a still-functioning transport for a healthier alternative _before_ the current one drops to bel…
- [transport-selector](./src/selector/transport-selector.md) — Translates a `(priority, commonCapabilities)` ask into a concrete, ordered list of transports drawn from the live pool.…
- [error-codes](./src/error-codes.md) — Frozen registry of every error code raised by the transport-manager package. Codes are namespaced under `NET_TM` and re…