Skip to content

Split PriceGatherer and StrategyEvaluator into message-driven workers #13

Description

@carndog

Outcome

Run price collection and strategy evaluation as independently testable message-driven workers while preserving the exact monitoring-rule revision used for every decision.

Acceptance criteria

  • PriceGatherer publishes PriceObservedV1 after a successful observation write
  • StrategyEvaluator resolves the monitoring-rule revision effective at the observation's UTC timestamp
  • StrategyEvaluator does not silently substitute a newer current revision when processing a delayed message
  • StrategyEvaluator publishes TradeSignalV1 only when warranted
  • TradeSignalV1 references the exact immutable monitoring-rule revision used
  • Both consumers are idempotent for duplicate delivery
  • Correlation and causation identifiers are preserved
  • Poison messages are dead-lettered with actionable diagnostics
  • End-to-end tests cover delayed processing across a rule activation, retry and duplicate delivery
  • Shared domain logic remains independent of Azure Functions and Service Bus
  • No RiskGate or broker call is bypassed

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Projects

Relationships

None yet

Development

No branches or pull requests

Issue actions