[DEV-1656] Support V2 projection engine on create#43
Conversation
Review Summary by QodoSupport V2 projection engine on create
WalkthroughsDescription• Add EngineVersion option to CreateProjectionOptions for V2 engine selection • Validate that V2 engine rejects TrackEmittedStreams option • Update protobuf definitions to include engine_version field • Add tests for V2 engine creation and validation Diagramflowchart LR
A["CreateProjectionOptions"] -->|"adds EngineVersion field"| B["ProjectionEngineVersion enum"]
B -->|"V1, V2, Unspecified"| C["Create method validation"]
C -->|"rejects V2 + TrackEmittedStreams"| D["Error handling"]
C -->|"passes to gRPC"| E["Protobuf CreateReq_Options"]
E -->|"includes engine_version"| F["Server processing"]
File Changes1. kurrentdb/projection_options.go
|
Code Review by Qodo
1.
|
Adds an
EngineVersionoption toCreateProjectionOptionsso callers can select the V2 projection engine when creating a projection. Defaults to V1 when unset.Selecting V2 together with
TrackEmittedStreamsis rejected up front, since V2 does not support emitted-stream tracking.Linear: DEV-1656