- 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>
17 lines
599 B
YAML
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
|