Milestone: v1.3.0 (attach once the milestone exists). Blocking precondition for the rest of the v1.3.0 milestone. Part of the v1.1 roadmap: docs/roadmap-v1.1.md.
The premortem's adversarial counter-check found that data-raw/dictionary.csv is not a free file: washr generates and regenerates it in the 5-column format, and renders the README dictionary table from those columns. Any schema extension pkgreview mandates would be silently clobbered the next time a contributor reruns the washr dictionary tooling, turning the extension into per-review manual surgery. No dictionary schema work proceeds without this spike.
Correction from the 2026-07-12 cross-repo coherence review: washr::update_dictionary() does not exist yet. It is openwashdata/washr#13, scheduled in washr's v1.2.0 backlog with "extra user columns survive the round-trip" now an acceptance criterion there. This spike therefore has two parts with different preconditions.
Tasks
Outcome
A documented round-trip result. Pass: extensions (#38, #39) may proceed. Fail with no washr fix committed to a milestone: the v1.3.0 schema extension issue is closed as not planned.
Milestone: v1.3.0 (attach once the milestone exists). Blocking precondition for the rest of the v1.3.0 milestone. Part of the v1.1 roadmap: docs/roadmap-v1.1.md.
The premortem's adversarial counter-check found that
data-raw/dictionary.csvis not a free file: washr generates and regenerates it in the 5-column format, and renders the README dictionary table from those columns. Any schema extension pkgreview mandates would be silently clobbered the next time a contributor reruns the washr dictionary tooling, turning the extension into per-review manual surgery. No dictionary schema work proceeds without this spike.Correction from the 2026-07-12 cross-repo coherence review:
washr::update_dictionary()does not exist yet. It is openwashdata/washr#13, scheduled in washr's v1.2.0 backlog with "extra user columns survive the round-trip" now an acceptance criterion there. This spike therefore has two parts with different preconditions.Tasks
unit,allowed_values) todictionary.csv, rerun the dictionary tooling that exists (washr::setup_dictionary()/washr:::fill_dictionary()), and diff. Document exactly what survives, what is dropped, and what is misaligned.update_dictionary()once it ships; its acceptance criterion should make this pass by construction. If washr#13 has not shipped when v1.3.0 starts, evaluate Part 1's result alone.Outcome
A documented round-trip result. Pass: extensions (#38, #39) may proceed. Fail with no washr fix committed to a milestone: the v1.3.0 schema extension issue is closed as not planned.