a stored value under a key upstream removed has nowhere to go #1505
Labels
No labels
ambition
application-offering
ambition
configure-applications
ambition
front-end
ambition/install-applications
ambition
security
ambition
switch-host
ambition
update-applications
ambition
user-management
blocked
component
api-service
component
fediversity-panel
component
nixops4
documentation
points
0
points
0.5
points
1
points
13
points
2
points
21
points
3
points
34
points
5
points
55
points
8
points
infinite
productisation
project-management
question
role
application-developer
role
application-operator
role
hosting-provider
role
maintainer
security
technical debt
testing
type
bug
type
deliverable
type
key-result
type
objective
type
task
type
unclear
type
user-story
user experience
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
#629 schema updates automated
fediversity/fediversity
Reference
fediversity/fediversity#1505
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Follow-up split out of the work on #629.
A rename is a move:
{ from, to }, andmigrate_valuedeep-moves the stored value before validation. A removal is not. When a pinned upstream schema drops a key an application offers, the selection check incore/lib/option-selection.nixfails the build with the name that is gone, and the answer is to delete that key from the applicationsoperatorSettings-- there is noto` to carry a value to.What then happens to an operator who already stored something under it: the value survives in
Deployment.value/deployment.config, migration leaves it alone (correctly -- no entry names it), and validation rejects the whole configuration asinvalid_configuration, becausenarrowseals every object it emits withadditionalProperties: false. The message names a stray property, not the fact that upstream removed the setting.Options, none chosen:
unmigratedreports a skipped rename;The boundary is documented as it stands in
api/specification.md(Migration semantics) andcore/docs/md/operator-config.md.