You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
947 B
23 lines
947 B
# ADR 0002: Keep Twisted Initially
|
|
|
|
## Status
|
|
Proposed
|
|
|
|
## Context
|
|
Twisted currently provides UDP transport, timers, and a single-threaded reactor boundary. Packet behaviour is subtle and production-proven.
|
|
|
|
## Decision
|
|
Keep Twisted initially as a transport safety boundary; consider replacement only after it is a thin shell.
|
|
|
|
## Rationale
|
|
Replacing the event loop and state model at the same time creates avoidable risk. Extracting the routing/subscription core first gives deterministic test coverage and clearer future migration options.
|
|
|
|
## Consequences
|
|
FreeDMR 2 starts with evolutionary architecture work, not an event-loop rewrite. Twisted callbacks must remain non-blocking.
|
|
|
|
## Compatibility
|
|
Current deployment and transport behaviour can remain familiar while the core model is extracted.
|
|
|
|
## Testing Requirements
|
|
Deterministic core tests and UDP black-box tests must cover behaviour before any later Twisted replacement is considered.
|