• v0.6.0 6c5f95ad26

    feat(sources)!: split source contracts into PollSource/StreamSource and add mode-aware source config

    ejr released this 2026-03-16 00:19:19 +00:00 | 10 commits to main since this release

    • Introduce explicit source interfaces: sources.PollSource and sources.StreamSource, with shared sources.Input (Name() only).
    • Remove mandatory Kind() from the base source contract to support sources that emit multiple kinds.
    • Add config.SourceMode (poll, stream, or omitted/auto) and SourceConfig.Kinds (plural expected kinds), while keeping legacy SourceConfig.Kind for compatibility.
    • Enforce mode semantics in config validation (poll requires every, stream forbids every) and detect mode/driver mismatches in sources.Registry.
    • Update docs and tests for the new source model and config behavior.
    Downloads