Remote config & flags
A step of the Cloud application tree on Gradus, in the Build & ship area: Config, lint, releases, IaC.
Change behaviour without a deploy: one typed list of flags in code with safe defaults, values held in the cloud's config service and a removal date on each.
Usually comes after: Product analytics.
Leads to: Pick the next feature.
Prompt for your AI assistant
Read the cloud provider decision record in docs/decisions and the config module. Recommend where runtime values live: Firebase Remote Config on Google Cloud, AWS AppConfig on AWS or a table in this product's database if that is simpler here. Stop for my pick and write the next docs/decisions record. Add one typed registry in code that lists every flag with its default, an owner and a removal date. Read values on the server, cached and with a timeout, so the product keeps working on the defaults when the service cannot be reached. Support on or off for everyone, for one user or for a list of users, and no percentages: at this traffic a percentage tells us nothing. Send the browser only the flags it needs and never a secret. Add a CI check that fails on a flag past its removal date. Then prove it: turn off one small real thing without a deploy, watch it stop, turn it back on and write in docs/ how long a change took to reach the product.This is https://gradus.kazet.blog/tree/cloud-application/step/remote-config as plain HTML. In a browser the page also lets you mark the step forged and copy a message for your AI assistant.