Architectural Decision Records
Auto-generated ADR summary. Do not edit manually.
Regenerate with:
cargo make generate-adr-summary
This page summarizes the Architectural Decision Records (ADRs) from the Tasker project. Each ADR documents a significant design decision, its context, and consequences.
| # | Title | Status | Summary |
|---|---|---|---|
| 1 | Actor-Based Orchestration Architecture | Accepted | The decision was made to switch from a command pattern with direct service delegation to a lightweight actor-based architecture due to testing complexity and unclear boundaries between components. … |
| 2 | Bounded MPSC Channel Migration | Accepted | The decision was made to migrate the tasker-core system from its current inconsistent and risky usage of Multi-Producer Single-Consumer (MPSC) channels to a uniform implementation that uses only bo… |
| 3 | Processor UUID Ownership Removal | Accepted | The architectural decision was made to remove processor UUID ownership enforcement in the state transitions of orchestrators, as it prevented new orchestrators from taking over tasks when an old on… |
| 4 | Backoff Logic Consolidation | Accepted | To address multiple conflicting implementations of exponential backoff logic in the tasker-core system, which caused significant issues, we decided to consolidate the backoff logic into a single, u… |
| 5 | Worker Dual-Channel Event System | Accepted | The architectural decision was made to replace the original blocking .call() pattern in Rust workers with a dual-channel command pattern to enable true concurrency and prevent race conditions, en… |
| 6 | Worker Actor-Service Decomposition | Accepted | The decision was made to decompose the monolithic WorkerProcessor in the tasker-worker crate into an actor-based design due to its difficulty in testing and inconsistency with existing architectu… |
| 7 | FFI Over WASM for Language Workers | Accepted | The team decided to proceed with FFI for the TypeScript worker implementation, matching the successful Ruby and Python worker approaches, due to its pattern consistency and production readiness. WA… |
| 8 | Handler Composition Pattern | u | The architectural decision was made to migrate all handler patterns in the system to use composition via mixins, aligning with the Batchable handlers’ implementation, to adhere to the principle of … |
Summaries generated with Ollama (
qwen2.5:14b). SetSKIP_LLM=truefor deterministic summaries.
Generated by generate-adr-summary.sh from tasker-core ADR files