| 1 | package updatewords |
| 2 | |
| 3 | // Plan 3's member-facing strings: the console's update settings doors, the |
| 4 | // install request and the app policy. Paul approved every one on 2026-10-11, |
| 5 | // and docs/superpowers/plans/2026-10-07-instance-settings-3-copy.json pins |
| 6 | // them. Do not edit a text here without a new copy review. |
| 7 | func init() { |
| 8 | add( |
| 9 | Draft{ID: "settings.console.bad-updates", Text: "updates must be auto or manual", |
| 10 | Context: "Returned by carlos instances set and the console when updates is anything else."}, |
| 11 | Draft{ID: "settings.console.bad-major", Text: "major must be a whole number, 0 or more, or empty to clear it", |
| 12 | Context: "Returned when the major hold is not a number."}, |
| 13 | Draft{ID: "settings.console.bad-pin", Text: "%s is not a build version", |
| 14 | Context: "Returned when the pin is not a build version: not text, or text no build could be named. %s is the value sent, printable characters only, or the word that when none are left."}, |
| 15 | Draft{ID: "settings.console.major-off-stable", Text: "a major hold applies only to instances on the stable channel. %s is on %s", |
| 16 | Context: "Returned when major is set on an instance that follows another channel. Host, channel."}, |
| 17 | Draft{ID: "settings.console.pin-unpromoted", Text: "%s cannot be pinned: it has no promotion record. Pick a newer build, or ask an operator to authorize this one", |
| 18 | Context: "Returned when the pin names a build that was never promoted, or was promoted before records existed. %s is the version. Only an operator can run carlos releases authorize."}, |
| 19 | Draft{ID: "settings.console.pin-check-failed", Text: "could not check the promotion record of %s. Try again", |
| 20 | Context: "Returned when the console could not read or verify the promotion record of the build being pinned. %s is the version."}, |
| 21 | Draft{ID: "settings.console.not-enforced", Text: "pin, manual and major can be turned on once every box runs a release that applies them. %d boxes are not ready yet", |
| 22 | Context: "Returned when someone turns on pin, manual or major before every box is upgraded. %d is how many boxes are still on an older release. Clearing these settings is always allowed."}, |
| 23 | Draft{ID: "settings.console.enforcement-unknown", Text: "could not check whether every box applies update settings, so pin, manual and major stay off for now. Try again", |
| 24 | Context: "Returned when someone turns on pin, manual or major and the console could not read which release each box runs. Clearing these settings is always allowed."}, |
| 25 | Draft{ID: "settings.console.named-unit", Text: "%s is run by its own systemd unit, so it always takes its channel's builds. Update settings do not apply to it", |
| 26 | Context: "Returned for an instance whose process the platform does not start, such as a console. %s is the host."}, |
| 27 | Draft{ID: "settings.console.not-instance", Text: "update settings apply to instances. %s is a %s route", |
| 28 | Context: "Returned for a static site or a service route. Host, kind."}, |
| 29 | Draft{ID: "settings.console.channel-elsewhere", Text: "change the channel with carlos instances set --channel, which applies the app's pipeline rules", |
| 30 | Context: "Returned when a request to the settings door names channel. The channel has its own door with passkey and approval rules."}, |
| 31 | Draft{ID: "settings.console.app-keeps", Text: "%s is kept by the app for itself. Ask someone who can change the app's settings", |
| 32 | Context: "Returned, once instances can act for themselves, when an instance tries to change a setting the app's policy keeps. %s is the setting. Not reachable until instance credentials ship."}, |
| 33 | Draft{ID: "settings.console.pinned", Text: "%s is pinned to %s, so Update now would not move it. Clear the pin first", |
| 34 | Context: "Returned by carlos instances update and the Update now button on a pinned instance. Host, pinned version."}, |
| 35 | Draft{ID: "settings.console.fast-track-owner", Text: "only an account owner can skip the safety delay", |
| 36 | Context: "Returned when someone who is not an account owner asks Update now to skip the bake window."}, |
| 37 | Draft{ID: "settings.console.changed", Text: "this instance changed while the request was in flight. Try again", |
| 38 | Context: "Returned when two people changed the same instance at once and this request lost."}, |
| 39 | Draft{ID: "settings.console.store-failed", Text: "could not save the update settings. Try again", |
| 40 | Context: "Returned when the console could not write the record."}, |
| 41 | Draft{ID: "settings.console.read-failed", Text: "could not read this instance. Try again", |
| 42 | Context: "Returned by the update settings doors when the console could not read the instance's record."}, |
| 43 | Draft{ID: "settings.console.policy-read-failed", Text: "could not read the app's update policy. Try again", |
| 44 | Context: "Returned by the update settings doors when the console could not read the app's instances manifest, which holds its update policy."}, |
| 45 | Draft{ID: "settings.console.no-manifest", Text: "this app does not create instances yet. Run carlos instances enable first", |
| 46 | Context: "Returned by carlos apps set's update flags for an app with no instance provisioning."}, |
| 47 | Draft{ID: "settings.console.unknown-policy-key", Text: "%s is not an app update setting. The app sets instance_control, default_updates, default_channel and default_major; there is no default pin", |
| 48 | Context: "Returned by the app policy door for any other key, for example a default pin. %s is the key."}, |
| 49 | Draft{ID: "settings.console.bad-control", Text: "instance_control may name updates, channel, major and pin, each once", |
| 50 | Context: "Returned by carlos apps set --instance-control for anything else."}, |
| 51 | Draft{ID: "settings.console.audit-set", Text: "changed the update settings of %s: %s", |
| 52 | Context: "Activity line after a settings change. Host, then what changed, for example updates manual, pin cleared."}, |
| 53 | Draft{ID: "settings.console.audit-install", Text: "asked %s to update now (request %d)", |
| 54 | Context: "Activity line after Update now. Host, request number."}, |
| 55 | Draft{ID: "settings.console.audit-policy", Text: "changed the instance update policy of %s: %s", |
| 56 | Context: "Activity line after an app policy change. App, then what changed."}, |
| 57 | ) |
| 58 | } |
| 59 | |