Skip to content

entcollect: add core interfaces, types, and ID set#1

Merged
efd6 merged 1 commit intodevfrom
store
Apr 2, 2026
Merged

entcollect: add core interfaces, types, and ID set#1
efd6 merged 1 commit intodevfrom
store

Conversation

@efd6
Copy link
Copy Markdown
Collaborator

@efd6 efd6 commented Apr 1, 2026

Define the shared library's foundational types:

  • Store: key-value interface for persistent provider state
  • Buffer: in-memory write buffer over Store with read-your-writes semantics, committed after ACK
  • Publisher: function type for emitting Document events
  • Document: single discriminated struct (EntityKind x Action) with ECS-compatible fields
  • Provider: interface with FullSync and IncrementalSync operations
  • idset: sharded string-ID set backed by Store for deletion detection

ref elastic/beats#49159

Define the shared library's foundational types:

- Store: key-value interface for persistent provider state
- Buffer: in-memory write buffer over Store with read-your-writes
  semantics, committed after ACK
- Publisher: function type for emitting Document events
- Document: single discriminated struct (EntityKind x Action) with
  ECS-compatible fields
- Provider: interface with FullSync and IncrementalSync operations
- idset: sharded string-ID set backed by Store for deletion detection
@efd6 efd6 requested review from a team and andrewkroh April 1, 2026 01:49
@efd6 efd6 self-assigned this Apr 1, 2026
@efd6 efd6 merged commit b6717b7 into dev Apr 2, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants