Table of Contents

Interface IEventEnvelope

Namespace
Virtufin.Core.Events
Assembly
Virtufin.Core.dll

The transport envelope carried alongside every event. Combines the routing context (ScenarioId, Lane triplet), the clock interpretation (ClockType, EventTime), audit/processing metadata (WallTime, CorrelationId, RunId), and a human-readable ScenarioName.

public interface IEventEnvelope : IEquatable<IEventEnvelope>
Inherited Members
Extension Methods

Remarks

EventTime lives in the business domain clock (wall time for act scenarios, synthetic time for hyp); WallTime is always real wall-clock time used only for audit and latency tracking.

Properties

ClockType

Clock interpretation for EventTime.

ClockType ClockType { get; }

Property Value

ClockType

CorrelationId

UUID tying the event back to its originating action.

Guid CorrelationId { get; }

Property Value

Guid

EventTime

Time at which the business-domain fact occurred.

DateTimeOffset EventTime { get; }

Property Value

DateTimeOffset

MarketLane

Market component lane (act or hyp).

Lane MarketLane { get; }

Property Value

Lane

MarketSelector

Market selector; null when MarketLane is act.

string? MarketSelector { get; }

Property Value

string

PortfolioLane

Portfolio lane (act or hyp); absent on market events.

Lane? PortfolioLane { get; }

Property Value

Lane?

RunId

UUID disambiguating concurrent runs of the same scenario.

Guid RunId { get; }

Property Value

Guid

ScenarioId

Opaque scenario id; absent on market events.

string? ScenarioId { get; }

Property Value

string

ScenarioName

Human-readable scenario name (e.g. BACKTEST_BTC_2021); absent on market events.

string? ScenarioName { get; }

Property Value

string

StrategyLane

Strategy lane (act or hyp); absent on market events.

Lane? StrategyLane { get; }

Property Value

Lane?

WallTime

Real wall-clock time the event was processed/observed.

DateTimeOffset WallTime { get; }

Property Value

DateTimeOffset