RunAwareCollectorStrategy

A CollectorStrategy that also wants the full CollectorRunContext (run id, dry-run flag, clock), not just the bare context id — so it can tag whatever it writes (e.g. trace rows) with the run that produced them.

Extends rather than replaces CollectorStrategy so a runner that only knows the plain SAM still works: the bridge below satisfies it by building an ephemeral, blank-runId context. That path is for callers driving the strategy without a real run behind it — anything written under a blank runId isn't queryable anywhere, so implementations should treat a blank runId as "don't persist a trace, just compute the marks."

Inheritors

Functions

Link copied to clipboard
open override fun mark(candidates: List<Proposition>, repository: PropositionRepository, contextId: <Error class: unknown class>): List<PropositionMark>

Legacy SAM bridge: driven without a run context => ephemeral (blank) runId, no trace persistence.

abstract override fun mark(candidates: List<Proposition>, repository: PropositionRepository, ctx: CollectorRunContext): List<PropositionMark>

Same contract as CollectorStrategy.mark, but with the full run context available.