Files
2026-05-27 23:29:53 +01:00

655 lines
26 KiB
Markdown

# Review: Old Network Planning Documents — Complete Findings
**Date**: 2026-04-29
**Source**: `docs/old-network-planning/` (63 documents, ~776KB, ~19,820 lines)
**Scope**: All ideas not yet captured in current OpenSpec proposals
**Status**: ✅ All documents read — no revisiting needed
---
## 🔴 CRITICAL GAP: Intra-Mesh Relay (Not Cross-Mesh)
**Old docs**: `RELAY_SECURITY_IMPLEMENTATION_PLAN.md`, `PHASE_2_5.md`
The old docs had a **full relay module** for when two peers **within the same mesh** cannot connect directly (symmetric NAT, firewall, etc.). This is different from our `network-plugin-relay` (cross-mesh routing). We need **both**:
| Relay Type | Scope | Use Case |
|---|---|---|
| **Intra-mesh relay** | Same mesh, peer → peer via intermediate | Peer A can't reach Peer B directly; routes through Peer C |
| **Cross-mesh relay** | Mesh A → Mesh B via Tier 0 hosts | Message from Mesh 1 to Mesh 2 |
**Old relay components to port**:
- `RelayConnection` — connection through an intermediate node
- `RelayMessageEnvelope` — wraps original message with relay path + hop count
- `RelayConnectionManager` — tracks active relay paths, routes messages
- `RelaySelector` — selects optimal relay node (latency, reliability, tier)
- `RelayDiscovery` — discovers potential relay nodes
- `RelayPerformanceMonitor` — tracks relay path quality
- **Relay strategies**: `LowestLatency`, `HighestReliability`, `FewestHops`, `TierOptimized`, `LoadBalanced`
- `RelaySecurityManager` — authenticates relay nodes, validates relay message integrity
- **Loop prevention** via hop count + visited-node tracking
- **Multi-hop relay** support if needed
**Required new package**: `network-plugin-intra-relay`
---
## 🔴 CRITICAL GAP: Middleware Pipeline
**Old docs**: `PHASE_9.md`, `PLAN_ENHANCED.md`
The old docs had a **middleware system** that intercepts and modifies messages as they flow through the network. This is completely missing from our proposals.
**Core middleware from old docs**:
- **Logging Middleware** — record message details with configurable body inclusion
- **Validation Middleware** — schema-based message validation (strict/lenient modes)
- **Transformation Middleware** — modify message structure per type
- **Metrics Middleware** — collect performance data per message (size, timing)
- **Throttling Middleware** — rate limiting with burst support, type-specific limits
- **Security Middleware** — automatic encryption/signing per policy
- **Internationalization Middleware** — locale-aware message handling
**Features**:
- Priority-based ordering (Critical 0-99, High 100-199, Normal 200-299, Low 300-399, Background 400+)
- Direction handling (incoming vs outgoing)
- Runtime add/remove/enable/disable without removal
- Chain interruption (middleware returns `null` → message dropped)
- Error policies: `continue`, `stop`, `retry`
- Conditional execution based on message type/source/destination
- Bypass mechanisms for critical paths
**Required new package**: `network-plugin-middleware`
---
## 🟠 MAJOR GAP: State Synchronization with Conflict Resolution
**Old docs**: `PHASE_7.md`, `PLAN_ENHANCED_PHASE_7.md`
The old docs had a sophisticated **StateManager** for synchronizing state across the mesh:
- **State history tracking** — versioned history of changes with sequence numbers
- **Delta compression** — only send changed properties (uses `@suaveplan/bitpacker`)
- **Path-specific resolution** — different strategies per data path (e.g., `game/positions` vs `game/inventory`)
- **Reconciliation strategies**:
- `latest-wins` (timestamp-based)
- `remote-wins`
- `local-wins`
- `deep-merge` (combine non-conflicting properties)
- `custom` (application-provided merge function)
- **BitPackerCompressor** — schema-based binary compression for state objects
- **StateReconciler** — deterministic conflict resolution with granular conflict reporting
- **Bloom filters** for efficient state comparison (from ADAPT_3.md)
- **Resource profiles**: Edge Device, Mobile, Desktop/Server, Cloud Node — adaptive compression, history retention, sync frequency
- **Internationalization-aware state handling** — locale-aware string comparison, number formatting, date handling
**Required new package**: `network-plugin-state`
---
## 🟠 MAJOR GAP: Network Simulation Framework
**Old docs**: `PHASE_8.md`, `PHASE_10.md`, `MODULAR_IMPLEMENTATION_PHASE_8.md`
The old docs had a **comprehensive simulation framework** for testing:
- **Virtual node factories** — create simulated nodes with same core logic as real nodes
- **NetworkSimulator** — deterministic simulation with seed support, time acceleration/deceleration
- **ScenarioRunner** — declarative scenario definitions with checkpointing
- **Predefined scenarios**:
- Server Failure — disconnect server, verify client-side takeover
- Network Partition — split and heal, verify reconciliation
- Client Surge — rapid client growth, verify promotion
- Cascading Failure — multiple sequential failures, verify circuit breaker
- **Network condition simulation**: latency models (constant/random/geographic), packet loss patterns (random/burst), bandwidth limits, jitter, connection disruptions
- **Chaos testing** — probabilistic failures, targeted component failures
- **Partition/heal APIs** — `createNetworkPartition()`, `healNetworkPartition()`
- **Metric collection** during simulation for analysis
**Required new package**: `network-plugin-simulation` (dev-only dependency)
---
## 🟠 MAJOR GAP: Monitoring and Metrics System
**Old docs**: `PHASE_8.md`, `MODULAR_IMPLEMENTATION_PHASE_8.md`
The old docs had a **NetworkMonitor** for production observability:
- **Metric types**: Counter, Gauge, Histogram, Summary
- **Metric categories**:
- Node metrics (CPU, memory, queue size, plugin count, error rate)
- Connection metrics (latency, packet loss, bandwidth, stability)
- Message metrics (throughput, size distribution, processing time, routing efficiency)
- Hierarchy metrics (level distribution, parent-child ratios, promotion/demotion rates)
- **Statistical analysis** — derived metrics, trends, anomaly detection
- **Alerting** — threshold-based notifications
- **Historical data** — configurable retention policies
- **Adaptive sampling** — reduce overhead under high volume
- **Push and pull collection** modes
- **Visualization preparation** — format data for external tools
Plus **NetworkTracer** for distributed tracing:
- OpenTelemetry/OpenTracing compatible API
- Trace ID + span management across mesh hops
- Context propagation through messages
- Sampling strategies (probabilistic, rate-limited, error-based, priority)
- Trace exporters for various backends
- Clock skew handling
**Required new package**: `network-plugin-monitor` (or integrate with existing `@suaveplan/opentelemetry`)
---
## 🟠 MAJOR GAP: Serialization Strategy Framework
**Old docs**: `PHASE_9.md`, `MODULAR_IMPLEMENTATION_PHASE_9.md`
The old docs had multiple serialization strategies with a factory pattern:
- **JSON Serializer** — human-readable, circular reference handling
- **Binary Serializer** — compact, optional compression, schema support
- **MessagePack Serializer** — compact binary with extensions
- **Protocol Buffers Serializer** — schema-based with versioning
- **SerializerFactory** — selects serializer by content type, with fallback
- **Version-aware serialization** — handle format evolution
- **Streaming serialization** for large messages
- **Chunking** for very large messages
Our current proposals assume JSON only. Binary serialization is critical for game state and large payloads.
**Integration point**: Add to `network-plugin-protocol` or `network-core`.
---
## 🟠 MAJOR GAP: Plugin Security Verifier
**Old docs**: `RELAY_SECURITY_IMPLEMENTATION_PLAN.md` §3.2, `MODULAR_IMPLEMENTATION_PHASE_6.md`
The old docs had a **`PluginSecurityVerifier`** / `SecurityVerifier` that:
- Validates plugin integrity before registration (code signing)
- Verifies plugin permissions against declared capabilities
- Protects against malicious plugins
- Monitors plugin activity at runtime
- Enforces plugin security policies
- Creates sandboxed plugin execution contexts
- Capability-based access control (not just "plugin can do anything")
This is important because our architecture is plugin-based — a compromised plugin could hijack the entire mesh.
**Old plugin lifecycle states**: REGISTERED → INITIALIZING → ACTIVE → INACTIVE → ERROR → UNREGISTERED
**Integration point**: Add to `network-plugin-crypto-messages` or create `network-plugin-plugin-security`.
---
## 🟠 MAJOR GAP: Connection Recovery with Session Persistence
**Old docs**: `PHASE_2_5.md`, `SERVER_FAILOVER.md`, `ADAPT_3.md`
The old docs emphasized **session persistence during temporary disconnections**:
- Connection state buffered during temporary drops
- Automatic reconnection with exponential backoff
- Pre-emptive switching based on quality trends (switch BEFORE failure)
- Session continuity maintained across reconnections
- Prioritized recovery for critical connections
- Rapid cold start after connection recovery
Our failover plugin handles host death but not graceful connection recovery.
**Integration point**: Add to `network-plugin-failover` or `network-plugin-transport-manager`.
---
## 🟡 MEDIUM GAP: Network Simulation Framework (continued)
Already covered above under "MAJOR GAP: Network Simulation Framework".
---
## 🟡 MEDIUM GAP: Resource-Constrained Adaptation
**Old docs**: `ADAPT_3.md`, `PHASE_5.md`, `PLAN_ENHANCED_PHASE_5.md`, `MODULAR_IMPLEMENTATION_PHASE_5.md`
The old docs mentioned **adaptive behavior based on device capabilities**:
- **Device profiles**: CONSTRAINED, STANDARD, POWERFUL, SERVER
- Hosts must operate within device capability constraints
- Load balancing across hosts at the same level
- Adaptive tier depth based on network size (logarithmic scaling)
- Memory usage optimization for constrained devices
- Message pooling to reduce allocations
- Zero-copy passing where possible
- Adaptive batch sizing based on resources
- Adaptive compression level (CPU vs bandwidth trade-off)
- **ResourceBalancer** component — monitors utilization, detects imbalances, recommends promotions/demotions
- **TierOptimizer** — calculates optimal tier counts, recommends structure changes
This means the tier depth, batching interval, and replication factor should adjust based on peer capabilities (RAM, CPU, battery).
**Integration point**: Add capability scoring to `network-plugin-topology`.
---
## 🟡 MEDIUM GAP: Pre-Emptive Transport Switching
**Old docs**: `PHASE_2_5.md`, `ADAPT_3.md`
The old docs had **pre-emptive switching** — switch transports based on quality trends BEFORE complete failure:
- Connection quality monitoring for predictive switching
- Latency trending (increasing → prepare to switch)
- Packet loss trending (increasing → prepare to switch)
- Bandwidth degradation detection
- Performance-based fallback criteria
- Predictive fallback based on historical data
Our transport-manager only switches after degradation threshold. Pre-emptive switching would be smoother.
**Integration point**: Add to `network-plugin-transport-manager`.
---
## 🟡 MEDIUM GAP: Tier-Specific Security Policies
**Old docs**: `RELAY_SECURITY_IMPLEMENTATION_PLAN.md`
The old docs had **different security rules per tier**:
- Tier 0 (host) has full authority
- Tier 1 (sub-host) has relay authority but not voting override
- Tier 2 (leaf) has read-only for sensitive operations
- Cross-tier operations require credential delegation
- Geographic-aware security policies
Our crypto-messages plugin signs everything uniformly. Tier-specific policies would add defense in depth.
**Integration point**: Add to `network-plugin-crypto-messages`.
---
## 🟡 MEDIUM GAP: Tier Partition Handler
**Old docs**: `MODULAR_IMPLEMENTATION_PHASE_5.md`, `TIER_PARTITION_HANDLER_TEST_FIX_PLAN.md`
The old docs had a dedicated **TierPartitionHandler** for network partitions:
- **Connectivity map building** — graph of node connections, connected components analysis
- **Multi-factor detection** — heartbeat monitoring, path verification, consensus-based detection
- **Partition information tracking** — size, composition, resource distribution, hierarchy status
- **Autonomous operation** — partitions function independently with local hierarchies
- **Partition prioritization** — determine authoritative partition (size-based, performance-based, age-based, hybrid)
- **Controlled reconnection** — gradual reestablishment, prioritized sequence
- **State reconciliation** — merge diverged states with conflict resolution
- **Verification procedures** — ensure consistent recovery
**Integration point**: Add to `network-plugin-topology` or `network-plugin-failover`.
---
## 🟡 MEDIUM GAP: Geographic-Aware Routing and Tiering
**Old docs**: `PLAN_ENHANCED_PHASE_5.md`, `ADAPT_4.md`
The old docs had **geographic optimization**:
- Regional clustering when possible
- Latency minimization between tiers
- Geographic distribution considerations in host selection
- Geographic-aware relay selection
- **Geo optimization config**: `maxRegionalLatency`, `prioritizeRegionalConnections`
This is important for real-world deployments where physical distance matters.
**Integration point**: Add to `network-plugin-topology` and `network-plugin-intra-relay`.
---
## 🟡 MEDIUM GAP: Network Timestamp Utilities
**Old docs**: `ADAPT_4.md`
The old docs had a **`NetworkTimestamp`** class for cross-node time handling:
- Formats: ISO8601, unix, custom
- Timezone support with adjustment
- Precision levels: millisecond, microsecond, nanosecond
- Comparison methods (`isAfter`, `isBefore`)
- Standardized internal format with timezone metadata
Critical for reconciliation, logging, and ordering across nodes with different clocks.
**Integration point**: Add to `network-core` types.
---
## 🟡 MEDIUM GAP: API Versioning Infrastructure
**Old docs**: `ADAPT_2.md`, `PHASE_0_IMPLEMENTATION_PLAN.md`
The old docs had **API versioning** from the start:
- `VersionInfo` class with semantic versioning
- `isCompatibleWith()` — same major, minor >= required
- `VersionManager` with migration paths between versions
- Stability classifications: experimental, stable, deprecated
- Version-aware serialization
- Version-aware middleware
This ensures mesh nodes with different library versions can interoperate.
**Integration point**: Add to `network-core`.
---
## 🟡 MEDIUM GAP: Plugin Development Kit (PDK)
**Old docs**: `PHASE_2.md`, `MODULAR_IMPLEMENTATION.md`, `PHASE_2_IMPLEMENTATION_PLAN.md`
The old docs had a **Transport Plugin Development Kit**:
- `BaseTransportPlugin` abstract class
- `TransportTester` with conformance tests (`testBasicFunctionality`, `testReliability`)
- Transport capability discovery (`supportsDirect`, `supportsRelay`, `supportsBroadcast`, `maxMessageSize`, `reliabilityLevel`)
- Plugin template generator
- Plugin testing utilities
- Plugin debugging tools
- Plugin performance analysis utilities
- Plugin documentation generator
This makes it easy for third parties to create transport plugins.
**Integration point**: Add PDK to `network-core` or as a separate dev package.
---
## 🟡 MEDIUM GAP: Message Priority Queue and Batching
**Old docs**: `PHASE_3.md`, `DESCRIPTION.md`
The old docs had a **PriorityMessageQueue** and **MessageBatcher**:
- Multiple internal queues, one per priority level
- FIFO within same priority
- Processing loop always takes from highest priority non-empty queue
- Batching: group by type/recipient, flush on size/time/priority triggers
- Adaptive batch sizing based on network conditions
- **CRITICAL messages bypass queues entirely**
- **Fairness guarantees** for low-priority messages (prevent starvation)
- Backpressure detection — slow down when downstream overwhelmed
**Integration point**: Add to `network-plugin-protocol`.
---
## 🟡 MEDIUM GAP: Message TTL and Loop Detection
**Old docs**: `PHASE_3.md`
The old docs had message lifecycle controls:
- **Time-to-live (TTL)** — max hops before message expires
- **Expired message dropping** with notifications
- **Loop detection** — track message path history
- **Maximum hop counts** enforced
- **Duplicate detection** for broadcast messages
Prevents messages from circulating indefinitely in the mesh.
**Integration point**: Add to `network-plugin-protocol`.
---
## 🟡 MEDIUM GAP: Route Caching
**Old docs**: `PHASE_3.md`
The old docs had **route caching**:
- Cache frequently used routing paths
- Eager path calculation for known recipients
- Invalidation on topology changes
- Adaptive cache size based on memory availability
Reduces routing overhead for repeated destinations.
**Integration point**: Add to `network-plugin-protocol` or `network-core`.
---
## 🟡 MEDIUM GAP: Network Visualizer and Dev Tools
**Old docs**: `ADAPT_5.md`, `PHASE_8.md`
The old docs had **developer tooling**:
- **Network Visualizer** — real-time hierarchy visualization, message flow tracking, performance heat maps, export to PNG/SVG
- **State Inspector** — interactive state browser, historical viewing, diff visualization
- **Simulation Configuration Tool** — scenario builder, network condition editor, recording/playback
- **Performance Profiling Tools** — regression detection, optimization suggestions
These are DX features but important for adoption.
**Required new package**: `network-plugin-devtools` (dev-only)
---
## 🟡 MEDIUM GAP: Framework Integrations
**Old docs**: `ADAPT_5.md`
The old docs planned framework integrations:
- **React**: `useNetworkNode()`, `useNetworkState()`, `useNetworkEvent()`, `<NetworkProvider>`, `<NetworkStatus>`
- **Vue**: composables, components, Vuex/Pinia sync
- **Angular**: services, directives, RxJS integration
- **Node.js**: Express/Fastify/Koa integration, server clustering, persistent storage adapters
- **Electron** and **React Native** integrations
**Required new packages** (future): `network-react`, `network-vue`, `network-angular`, `network-node`
---
## 🟡 MEDIUM GAP: Internationalization (i18n) Support
**Old docs**: `ADAPT_4.md`, `PLAN_ENHANCED_PHASE_7.md`
The old docs had comprehensive i18n:
- **Timestamp handling** — timezone-aware, multiple formats, precision levels
- **Message localization** — locale metadata, encoding conversion, RTL support
- **Internationalized logging** — localized log messages, locale-aware formatting
- **Locale-aware state** — string comparison, number formatting, date handling, measurement units
- **Multilingual content** in state — translation management, language fallbacks
- **Cultural awareness** — sorting order, name/address formats, calendar systems
**Integration point**: Add i18n utilities to `network-core` (lightweight, optional).
---
## 🟢 MINOR GAP: Circuit Breaker for Reorganization
**Old docs**: `PHASE_5.md`
The old docs had a **circuit breaker** to pause reorganizations during cascading failures:
- Time-based: suspend for a period
- Count-based: limit reorganizations in a time window
- Impact-based: evaluate disruption before proceeding
- Hierarchical: prioritize higher-level stability
Prevents thrashing when multiple nodes fail in sequence.
**Integration point**: Add to `network-plugin-topology`.
---
## 🟢 MINOR GAP: Hysteresis in Promotion/Demotion
**Old docs**: `PHASE_5.md`, `PLAN_ENHANCED_PHASE_5.md`
The old docs had **hysteresis** to prevent oscillation:
- Cooldown periods after level changes (`levelChangeCooldown: 60000`)
- Minimum stability periods before promotion (`promotionStabilityPeriod: 300000`)
- Dampening factors for rapid changes
- Historical stability tracking
**Integration point**: Add to `network-plugin-topology`.
---
## 🟢 MINOR GAP: Empty Tier Handling
**Old docs**: `PHASE_5.md`
The old docs had explicit **empty tier handling**:
- Detection: monitor node counts per tier
- Removal: remove empty tiers, reconnect adjacent levels
- Renumbering: update level numbers for affected nodes
- Configuration adjustment: update level configs
Example: `L0 → L1 → L2 → L3 → L4` → L2 empty → `L0 → L1 → L2* → L3*` (renumbered)
**Integration point**: Add to `network-plugin-topology`.
---
## 🟢 MINOR GAP: 4 Hosting Configurations
**Old doc**: `SERVER_FAILOVER.md`, `PLAN.md`
The old docs defined 4 hosting models:
1. **Pure Client-Side** — no server at all
2. **Server-Based** — server is top-level host
3. **Server-to-Client Failover** — server starts as host, fails over to clients
4. **Client-with-Server-Backup** — client hosts, server provides backup
Our `network-plugin-server-bridge` implicitly assumes model #3. We should make the hosting model configurable.
**Integration point**: Add `hostingModel` config to `network-plugin-server-bridge`.
---
## 🟢 MINOR GAP: Network Tracing / Distributed Tracing
**Old doc**: `PHASE_8.md`
The old docs had a `NetworkTracer` for:
- Trace recording across hops
- Span management for operations that cross multiple nodes
- This maps directly to OpenTelemetry but wasn't explicitly mentioned
**Integration point**: Already covered by `@suaveplan/opentelemetry` dependency; just ensure spans propagate across mesh hops.
---
## 🟢 MINOR GAP: Standardized Event Constants
**Old doc**: `PHASE_0_IMPLEMENTATION_PLAN.md`
The old docs had **standardized event names**:
- Node lifecycle: `node:created`, `node:connected`, `node:disconnected`, `node:updated`, `node:removed`
- Message: `message:sent`, `message:received`, `message:routed`, `message:dropped`
- Hierarchy: `hierarchy:changed`, `hierarchy:parent-changed`, `hierarchy:child-added`, `hierarchy:child-removed`, `hierarchy:sibling-added`, `hierarchy:sibling-removed`, `hierarchy:level-changed`
- Plugin: `plugin:registered`, `plugin:unregistered`
- System: `system:error`, `system:warning`, `system:info`
**Integration point**: Add to `network-core` event system.
---
## 🟢 MINOR GAP: Test Infrastructure Patterns
**Old docs**: `test-isolation-fix-plan.md`, `test-isolation-implementation-guide.md`, `test-failures-analysis.md`
The old docs had established **testing patterns**:
- `TimerController` for deterministic time in tests (isolated instances, not singleton)
- Static registry cleanup (`MemoryTransport.resetRegistry()`)
- `TransportTester` conformance testing for transport plugins
- Test harness for creating standard topologies
- Assertion helpers for node relationships, message validation, event emission
These patterns should be carried forward into our test infrastructure.
**Integration point**: Document in `network-core` testing guide; implement in test utilities.
---
## 🟢 MINOR GAP: Voting System Details
**Old docs**: `PHASE_4.md`, `PHASE_5.md`
The old docs had a **VotingManager** and **VoteSession**:
- Vote initiation with configurable topics (host selection, config changes)
- Configurable voting periods and participation thresholds
- Result determination with configurable consensus requirements
- VoteSession lifecycle: creation → voting → tallying → result publication
- Vote validation against session rules
- Tamper-proof tallying
- Secure voting verification
- Vote history tracking
Our governance plugin should incorporate these details.
**Integration point**: Add to `network-plugin-governance`.
---
## 🟢 MINOR GAP: PingManager and HostSelector
**Old docs**: `PHASE_4.md`
The old docs had:
- **PingManager** — active latency measurement, jitter calculation, packet loss detection, reliability scoring, historical tracking
- **HostSelector** — trust-based scoring from historical performance, multi-factor weighted evaluation, consensus validation, stability thresholds
- **HostHistory** — track successful/unsuccessful hosting sessions to improve future selections
These are important for quality-based host election.
**Integration point**: Add to `network-plugin-topology` or `network-plugin-governance`.
---
## Summary of New Packages Needed
| Priority | Package | Source Document | Gap |
|---|---|---|---|
| 🔴 P0 | `network-plugin-intra-relay` | `RELAY_SECURITY_IMPLEMENTATION_PLAN.md` | Peers that can't connect directly within same mesh |
| 🔴 P0 | `network-plugin-middleware` | `PHASE_9.md` | Message interception/modification pipeline |
| 🟠 P1 | `network-plugin-state` | `PHASE_7.md` | State sync with conflict resolution strategies |
| 🟠 P1 | `network-plugin-simulation` | `PHASE_8.md`, `PHASE_10.md` | Virtual nodes, chaos testing, scenario runners |
| 🟠 P1 | `network-plugin-monitor` | `PHASE_8.md` | Metrics collection, alerting, distributed tracing |
| 🟡 P2 | — (add to transport-manager) | `PHASE_2_5.md`, `ADAPT_3.md` | Pre-emptive switching, session persistence |
| 🟡 P2 | — (add to protocol) | `PHASE_3.md`, `DESCRIPTION.md` | Priority queue, adaptive batching, TTL, loop detection, route caching |
| 🟡 P2 | — (add to crypto-messages) | `RELAY_SECURITY.md` | Tier-specific security policies, plugin verifier |
| 🟡 P2 | — (add to topology) | `ADAPT_3.md`, `PHASE_5.md` | Resource-constrained adaptation, circuit breaker, hysteresis, empty tier handling |
| 🟡 P2 | — (add to core) | `ADAPT_2.md`, `ADAPT_4.md` | API versioning, network timestamps, event constants, serialization framework |
| 🟢 P3 | `network-plugin-devtools` | `ADAPT_5.md`, `PHASE_8.md` | Network visualizer, state inspector, sim config tool |
| 🟢 P3 | — (add to server-bridge) | `SERVER_FAILOVER.md` | Configurable hosting model |
| 🟢 P3 | — (future) | `ADAPT_5.md` | React/Vue/Angular/Node.js framework integrations |
---
## Next Steps
1. **Create `network-plugin-intra-relay` proposal** — highest priority; enables NAT traversal fallback
2. **Create `network-plugin-middleware` proposal** — enables logging, validation, transformation, throttling
3. **Create `network-plugin-state` proposal** — enables game state synchronization with conflict resolution
4. **Create `network-plugin-simulation` proposal** — enables chaos testing and scenario validation
5. **Create `network-plugin-monitor` proposal** — enables production observability
6. **Enhance existing proposals** with batching, pre-emptive switching, tier-specific security, resource adaptation, serialization framework, API versioning, event constants