Helper service for emitting signal info notifications.
Handles validation (memoized per context) and emission of signal.info events
via signalNotifySubject. Used internally by the framework action pipeline —
end users interact with this via commitSignalNotify() in onActivePing callbacks.
constructor();
loggerService: any
strategySchemaService: any
riskValidationService: any
strategyValidationService: any
exchangeValidationService: any
frameValidationService: any
actionValidationService: any
strategyCoreService: any
timeMetaService: any
validate: ((context: { strategyName: string; exchangeName: string; frameName: string; }) => Promise<void>) & IClearableMemoize<string> & IControlMemoize<string, Promise<void>>
Validates strategy, exchange, frame, risk, and action schemas for the given context.
Memoized per unique "strategyName:exchangeName[:frameName]" key — subsequent calls
with the same context are no-ops, so validation runs at most once per context.
commitSignalNotify: (payload: Partial<SignalNotificationPayload>, symbol: string, currentPrice: number, context: { strategyName: string; exchangeName: string; frameName: string; }, backtest: boolean) => Promise<...>
Emits a signal.info notification for the currently active pending signal.
Validates all schemas (via memoized validate), resolves the pending signal
for the given symbol, then emits a SignalInfoContract via signalNotifySubject,
which is routed to all registered listenSignalNotify callbacks and persisted
by NotificationAdapter.