Explain defaults restored during final decoding

This commit is contained in:
2026-09-06 19:07:03 -05:00
parent f7ca150a7f
commit 831c83a0b5
6 changed files with 78 additions and 4 deletions

View File

@@ -104,6 +104,12 @@ Keep final projection, secret lookup, and validation ordering consistent.
## 4. P2 — Reconcile history replay with final-only default application
Status: complete. Explanation now records an explicit canonical decoding transition
when replay differs from final typed input, preserving decoded origins and showing
default restoration. Null/scalar-to-map profile and CLI regressions pass at parent
and descendant paths. Full tests pass with the issue-8 TMPDIR workaround; vet,
build and whitespace checks pass.
Evidence: [explain.go](../../explain.go), `Explain` initializes replay from defaults
and merges each input into it. Actual decoding applies defaults to the final
composed/overlaid input, so intermediate replacements are not lasting default resets.