using System.Linq.Expressions;
using IBKRTrader.Core.Persistence.Entities;
namespace IBKRTrader.Core.Persistence;
///
/// Entscheidungsjournal (core_decision_journal). darf den Trading-Pfad NIEMALS
/// brechen – Implementierungen fangen Persistenzfehler ab (Log statt Exception).
///
public interface IDecisionJournal
{
void Write(CoreDecisionRecord record);
List Query(Expression> predicate, int limit = 1000);
}
/// Order-Lifecycle-Log (core_order_events). Gleiche Robustheits-Garantie wie das Journal.
public interface IOrderEventLog
{
void Write(CoreOrderEvent record);
List Query(Expression> predicate, int limit = 1000);
}