Skip to content

Open decisions

The owner, and whoever advises them. Each item here blocks or shapes work on the roadmap.

  • Ten decisions are open. Three block the next event of any size: the fallback provider, a dedicated server, and the likeness mode.
  • One needs a lawyer, not an engineer: where personal data may be stored.
  • Two shape the business: how to sell to several agencies, and how the next product joins the requests group.
  • Each entry names a recommended option. A recommendation is the documentation’s reading of the evidence, not a decision.
  • Question: consistency (anchor), classic or hybrid — see ADR-008.
  • Options: keep consistency as default and offer the others per event · make hybrid the default · remove the modes that lose.
  • What is missing: a side-by-side live run on a varied set of faces (long hair, glasses, beard, dark and very light skin) with a named budget.
  • Recommended: run that comparison once, pick one default, keep one alternative behind the flag, delete the third path.
  • Decides: owner, with the client’s feedback on likeness.
  • Question: obtain and verify the second provider’s key, or accept a single provider.
  • Options: configure and test the second provider · use a second project of the same provider as a partial fallback (covers quota and billing, not outages) · accept the risk for small events.
  • Recommended: configure the second provider and run one live pack through it before the next event.
  • Decides: owner (account verification and budget).
  • Question: keep sharing the droplet or move the product to its own.
  • Recommended: move before any event larger than the pilot. The deploy scripts support a fresh server.
  • Decides: owner (recurring cost).
  • Question: does the localisation requirement for citizens of Uzbekistan apply to guest data and lead data as processed here, and what satisfies it.
  • Options, if it applies: host the database in the country · keep contact data on an in-country server and post masked cards to the group (LEADS_CARD_PII=0 already exists) · register the database as required.
  • Recommended: get a written legal opinion; until then switch on masked cards if the sales team can work with them.
  • Decides: a lawyer and the owner.
  • Question: where database copies go and what watches /health from outside.
  • Recommended: copy the daily backup to object storage in the same legal jurisdiction as decision 4 allows; add an external check on /health with alerts to a second channel.
  • Decides: engineer; owner for cost.
  • Question: translate to Uzbek and English now, or per event.
  • Options: one language per installation chosen by setting · language chosen by the guest (from the Telegram client language and a switch on the kiosk).
  • Recommended: language per installation first; it is a small change and matches how events are sold.
  • Decides: owner, by the next client’s audience.
  • Question: one installation per tenant, or true multi-tenancy — see Multi-tenant and white label.
  • Recommended: installation per tenant, after moving the brand layer out of the code.
  • Decides: owner.

8. How the next product joins the requests group

Section titled “8. How the next product joins the requests group”
  • Question: copy the leads module into each product, or extract one shared leads service — see Playbook: new product.
  • Also open: the second product’s form asks for a role and a free-form contact, while the leads server requires a Telegram username and a phone. Either the form changes or the validator becomes per-product.
  • Recommended: copy for the second product; extract when the third arrives.
  • Decides: owner and the developer of the second product.
  • Question: is “one pack per account” per installation forever, or per event.
  • Recommended: per event, once sessions and jobs carry an event identifier; until then reset between events.
  • Decides: owner.
  • Question: accept the current mobile LCP of about 3.5 s, or invest in reducing first-screen JavaScript.
  • Recommended: accept until paid traffic is bought; then set a budget in the audit script so it cannot regress.
  • Decides: owner.

See Decisions (ADR). When an item above is decided, write a new record there and remove it from this page.


Last verified: 2026-11-13 against ai-sticker-pack@b715418 and ai-stickers-landing@e350ff5.