Operations

Production Checklist

What to confirm before putting City into production.

Before launch, confirm at least the following:

Security

  • Administrator IDs, passwords, and session tokens exist only in trusted environments.
  • Clients only receive user_token, not provider keys.
  • DOWNCITY_FEDERATION_TOKEN_SIGNING_KEY is configured in City.
  • Admin env endpoints only accept trusted requests.

Stability

  • Every service that should be exposed has been registered through base.use(service).
  • AI models have been registered through AIChannel.model() + AIService.use() and include the required capabilities.
  • Critical provider env values have been configured.
  • The city table uses an explicit database URL.
  • before hooks block over-quota users.
  • after hooks record usage and error clues.

Multi-city setup

  • bureau_id clearly separates cities.
  • Usage records include bureau_id, user_id, and model.
  • Different cities have default quota strategies.

Rollback

  • Provider keys can be rotated quickly.
  • Model definitions can be paused or replaced quickly through code deployment.
  • Service errors are captured by onError or your logging system.