Description
Define the core/runtime boundary so the core can make decisions without doing I/O.
Proposal
- Add
Input, Action, HandleResult
- Implement
FederCore::handle(input) -> HandleResult
- Inject nondeterminism via inputs/config (ids/timestamps)
Done when
- Core returns action lists for inputs
- Core performs no real I/O
Out of scope
- tokio/reqwest/hyper/axum
- filesystem/db access
SystemTime::now() inside core
Description
Define the core/runtime boundary so the core can make decisions without doing I/O.
Proposal
Input,Action,HandleResultFederCore::handle(input) -> HandleResultDone when
Out of scope
SystemTime::now()inside core