Fix P2P Connectivity Regression + Dynamic Versioning System #12
Reference in New Issue
Block a user
No description provided.
Delete Branch "feature/phase-4-real-providers"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
✅ P2P Connectivity Restored: Fixed regression that broke P2P mesh networking in Task Execution Engine implementation
✅ Dynamic Versioning: Replaced hardcoded "0.1.0-dev" with build-time injection showing commit hash and build date
✅ Container Compatibility: Added Ubuntu-based Dockerfile for reliable glibc execution across Docker Swarm nodes
Root Cause Analysis
The P2P connectivity regression was caused by mDNS discovery being conditionally disabled during Task Execution Engine implementation. The working baseline (
eb2e05f) always enabled mDNS discovery, but the new code made it conditional oncfg.V2.DHT.MDNSEnabled.Key Technical Fixes
P2P Connectivity
internal/runtime/shared.go:251-256Dynamic Versioning
cmd/agent/main.go,internal/runtime/shared.go,Makefile-X main.version=$(VERSION)CHORUS-agent 0.5.5 (build: 9dbd361, 2025-09-26_05:55:55)Container Base Image
Dockerfile.ubuntu(new)Verification Results
🎯 Deployed to Production: 9/9 Docker Swarm replicas running successfully
📊 P2P Metrics:
<peer.ID 12*5hsnq6>elected)📝 Logs Showing Success:
Task Execution Engine Preservation
✅ All Phase 4 functionality preserved:
Deployment Strategy
anthonyrawlins/chorus:latest(Ubuntu-based)Test Plan
This PR successfully fixes the P2P connectivity regression while preserving all Task Execution Engine functionality and implementing a robust dynamic versioning system for future debugging.
🤖 Generated with Claude Code