Files
recordingtest/src/Recordingtest.Normalizer/profiles/engine-state.yaml
minsung 190cc6e596 feat: engine-state normalizer profile + sort_array_elements rule (#10)
- Rules.SortArrayElements: sort JSON arrays lexicographically (post-mask_guids order-independence)
- Normalizer output: UnsafeRelaxedJsonEscaping to preserve <GUID>/<TS>/<VOLATILE> tokens
- profiles/engine-state.yaml: normalize_paths + mask_guids + sort_array_elements + round_floats(2dp) + sort_json_keys
- RunnerOptions.SidecarProfile: default "engine-state", overridable via --sidecar-profile
- TestRunner.CaptureAndDiffSidecar: uses SidecarProfile instead of main Profile
- 4 new normalizer tests (136 total)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 16:28:57 +09:00

17 lines
599 B
YAML

name: engine-state
# Sidecar JSON profile: {"scene":{...}, "camera":{...}, "selection":{...}}
#
# Rules applied in order:
# 1. normalize_paths — mask document_path (user/temp dirs)
# 2. mask_guids — selected_ids GUIDs → <GUID> (order becomes irrelevant)
# 3. sort_array_elements — sort selected_ids after masking
# 4. round_floats — camera eye/target/up coords with 2 decimal places
# 5. sort_json_keys — deterministic key order for clean diff
float_decimals: 2
rules:
- normalize_paths
- mask_guids
- sort_array_elements
- round_floats
- sort_json_keys