1.9 KiB
1.9 KiB
Generic runtime event mixing refactoring
This patch removes tachograph-specific source roles and representations from the common runtime mixing contracts.
Main changes
RuntimeEventMixingRulenow uses genericRuntimeEventSelectorobjects, generic pair constraints, compatibility-policy ids, and fusion-policy ids.RuntimeEventDescriptorandRuntimeEventSourceProfileexpose opaque classification values instead ofRuntimeTachographEvidenceSourceRoleandRuntimeTachographRepresentationfields.RuntimeEventDescriptorFactoryconsumes pluggableRuntimeEventSemanticsadapters.RuntimeEventMixingRuleRegistryaggregates pluggableRuntimeEventMixingRuleProviderimplementations.- Compatibility and primary-event enrichment are delegated to policy registries.
- Tachograph-specific country/region/coordinate normalization and vehicle/VIN enrichment were moved out of common classes.
- Common diagnostics now expose classification-count maps instead of tachograph-specific scalar fields.
eventMixingMode=FULLis the generic default. The tachograph provider still acceptsTACHOGRAPH_SAME_SOURCEfor request compatibility.
Tachograph behavior retained
The tachograph provider still implements:
- database/file-session same-role duplicate suppression;
- driver-card/vehicle-unit activity mixing;
- driver-card/vehicle-unit support-event mixing;
- semantic place lifecycle normalization;
- tachograph nation and region normalization;
- coordinate tolerance checks;
- vehicle/VIN enrichment of the retained primary event.
Validation
- The complete modified mixing package was compiled with Java 21 using local stubs for external Spring/Jackson/validation APIs.
- A Java runtime harness confirmed that duplicate DB/file-session driver-card activity events are reduced to one event and that generic classification diagnostics are populated.
- Maven is not installed in the execution environment, so the complete project test suite was not run.