fix(acme): Fix port 80 ACME management and challenge route concurrency issues by deduplicating port listeners, preserving challenge route state across certificate manager recreations, and adding mutex locks to route updates.

This commit is contained in:
2025-05-19 03:40:58 +00:00
parent 0bd35c4fb3
commit 3fcdce611c
13 changed files with 1494 additions and 351 deletions

View File

@@ -1,5 +1,14 @@
# Changelog
## 2025-05-19 - 19.2.5 - fix(acme)
Fix port 80 ACME management and challenge route concurrency issues by deduplicating port listeners, preserving challenge route state across certificate manager recreations, and adding mutex locks to route updates.
- Updated docs/port80-acme-management.md with detailed troubleshooting and best practices for shared port handling.
- Enhanced SmartCertManager and AcmeStateManager to preserve challenge route state and globally track ACME port allocations.
- Added mutex locks in updateRoutes to prevent race conditions and duplicate challenge route creation.
- Improved cleanup verification to ensure challenge routes are correctly removed and ports released.
- Introduced additional tests for ACME configuration, race conditions, and state preservation.
## 2025-05-19 - 19.2.4 - fix(acme)
Refactor ACME challenge route lifecycle to prevent port 80 EADDRINUSE errors