Background
The query path (V3QueryService, ActionbaseQueryExecutor, LabelProvider, CompatKt) directly depends on 36 V2 types. The mutation path was already decoupled in #201 using the MutationEngine interface + V2BackedEngine pattern. Apply the same pattern to queries.
Task
Done When
boundary-check: 0 V2 edges for ActionbaseQueryExecutor, LabelProvider (deleted), CompatKt (deleted)
- All V2 types confined to
V2Backed* classes
- All existing tests pass
Notes
- V2 types in
ActionbaseQuery itself (DataType, StatKey, WherePredicate) are out of scope — separate issue
- Related:
Background
The query path (
V3QueryService,ActionbaseQueryExecutor,LabelProvider,CompatKt) directly depends on 36 V2 types. The mutation path was already decoupled in #201 using theMutationEngineinterface +V2BackedEnginepattern. Apply the same pattern to queries.Task
Done When
boundary-check: 0 V2 edges forActionbaseQueryExecutor,LabelProvider(deleted),CompatKt(deleted)V2Backed*classesNotes
ActionbaseQueryitself (DataType,StatKey,WherePredicate) are out of scope — separate issue