StatesCurrent is stored as states_saved.yaml, and StatesDesired is stored as states_desired.yaml.
It is a surprise / hard to discover when one wants to read the previously stored StatesCurrent, and has to remember to use StatesSavedReadCmd instead of StatesCurrent..Cmd.
It is additional effort when one has StatesCurrent, and needs to pass in StatesSaved to EnsureCmd -- they have to map the data type (related: #59).
"desired" doesn't capture the meaning that that is the state when the automation ensures.
To address these:
[x] "desired" should be renamed to "goal".
[x] StatesDesired*Cmd renamed to StatesGoal*Cmd
[x] states_desired.yaml renamed to states_goal.yaml
[x] Update docs.
Name bikeshedding:
leave as is
built / created (some things aren't built / created, and a bit obscure)
complete / finished this? (may confuse user that it is "done")
done (overloaded / hard to search / confusing)
formed (overloaded term)
forged (obscure)
goal this? (semantic overlap with "target"?)
manufactured (too long)
[x] Rename StatesSaved* to StatesCurrentStored.
[x] Add StatesGoalStored* to distinguish between StatesGoal and what was saved.
[x] Make sure it is easy to go from States*Stored to States*.
Out of scope:
Rename DiffCmd to StatesDiffCmd (?) -- what about diffing parameters or specs.
Store state for each item, even if it was not discovered.
Current states.
Goal states.
State diffs.
Fixes the ordering in stored files.
StatesDiffCmd API to make it obvious whether we are diffing:
In
0.0.10
and earlier:StatesCurrent
is stored asstates_saved.yaml
, andStatesDesired
is stored asstates_desired.yaml
.StatesCurrent
, and has to remember to useStatesSavedReadCmd
instead ofStatesCurrent..Cmd
.StatesCurrent
, and needs to pass inStatesSaved
toEnsureCmd
-- they have to map the data type (related: #59).To address these:
[x] "desired" should be renamed to "goal".
StatesDesired*Cmd
renamed toStatesGoal*Cmd
states_desired.yaml
renamed tostates_goal.yaml
Name bikeshedding:
[x] Rename
StatesSaved*
toStatesCurrentStored
.[x] Add
StatesGoalStored*
to distinguish betweenStatesGoal
and what was saved.[x] Make sure it is easy to go from
States*Stored
toStates*
.Out of scope:
Rename
DiffCmd
toStatesDiffCmd
(?) -- what about diffing parameters or specs.Store state for each item, even if it was not discovered.
Fixes the ordering in stored files.
StatesDiffCmd
API to make it obvious whether we are diffing:Single profile, single flow:
Multi profile, single flow:
Arbitrary two states.