Interface IFrameProber

Namespace
Kuestenlogik.Bowire.Semantics.Detectors
Assembly
Kuestenlogik.Bowire.dll

The "learn-as-new-types-arrive" hook that connects the SSE / invoke stream to the auto-detector layer. Wire the prober into the frame pipeline; it decides whether the current DetectionContext triple is novel and, if so, runs every registered IBowireFieldDetector once against the frame and writes the proposals to the Auto layer.

public interface IFrameProber

Remarks

Step 7 of the ADR's "Lifecycle of a binding" is the key correctness property: already-classified (service, method, message-type) triples are NOT re-evaluated. The prober's internal triple-set guarantees that — a single TryAdd(TKey, TValue) lookup is the entire hot-path cost for an already-known triple.

Implementations MUST be thread-safe. Two concurrent SSE streams (each running their own server-streaming dispatch) may invoke ObserveFrame(in DetectionContext) simultaneously, including against the same triple.

Methods

ObserveFrame(in DetectionContext)

Inspect a single frame in the context of its (service, method, message-type) triple. Cheap-no-op for already-probed triples; runs every detector once and writes the proposals into the auto layer for novel triples.

void ObserveFrame(in DetectionContext ctx)

Parameters

ctx DetectionContext