Glossary

The vocabulary used across Koolbase, in one place. Terms link to the page that covers them in depth.

Platform

Project
The top-level isolation boundary. Your database, functions, storage, secrets, OAuth, and SMS configuration are all scoped to a single project, and app_id in the API is your project ID. Separate stages like dev and prod are modeled as separate projects. See Projects & Environments.
Environment
A scope within a project for feature flags, remote config, and version policy — those three are environment-scoped, while everything else is project-scoped. See Projects & Environments.
Public key
Your environment's publishable key (pk_live_…), sent as the x-api-key header to authenticate SDK requests from the app.

Code Push

Code Push
Delivering versioned updates to a live app over the air with no App Store or Play Store release. Two tiers: Runtime Bundles (config, flags, directives, assets — via Koolbase.codePush) and VM Patches (real compiled-Dart fixes, Android and iOS — applied automatically by the SDK). See the Code Push guide and API reference.
Runtime bundle
The unit Code Push delivers: a versioned, signed package of config overrides, feature-flag overrides, directives, and assets. Often shortened to "bundle."
Channel
An independent release track, such as stable or beta. Bundle versions are sequential per app + platform + channel — stable v3 and beta v3 are separate sequences.
Draft
A newly created bundle that is not yet live. Only drafts accept artifact uploads and checksum updates, and only a draft can be published.
Published
The single live bundle for a given app + platform + channel. Publishing a new bundle automatically recalls the previously published one.
Recalled
A bundle that was published and has since been withdrawn. Devices still on it roll back on their next check.
Active bundle
The published bundle a device has downloaded and currently has loaded. Published is the server-side status; active is the device-side state — a bundle is published once, but becomes active on each device only after it downloads and applies the bundle, on the next cold launch.
Rollout
The percentage of eligible devices that receive a published bundle, chosen deterministically from the device_id. A given device consistently falls in or out of a bundle's rollout.
Rollback
The revert a device performs when its current bundle has been recalled: on its next check it receives a rollback response and restores the previous version, or falls back to the app's built-in defaults if none exists.
Mandatory
A bundle flagged as a forced update. The SDK applies it before the app proceeds, rather than staging it in the background for the next launch.
Directive
A fire-once command carried in a bundle — for example force_logout_all — handled by a handler your app registers with Koolbase.codePush.onDirective().
VM Patch
The second Code Push tier: an over-the-air update to your app's actual Dart code, for builds compiled with the Koolbase engine. Signed, verified against the exact binary it targets, and applied on the next cold launch — on iOS before the app's first frame. See How It Works.
Release (VM Patches)
A registered app binary that patches target — created by koolbase build / patch push. Each release is identified by its build_id (or store version), and its patches form a sequential line.
build_id
A content fingerprint of a specific compiled binary. Devices report it at check-in and patches are pinned to it, so a patch can only ever apply to the exact build it was made for — a rebuilt or store-updated app automatically rejects older patches.
Quarantine
What happens to a patch that fails verification or crashes the app on boot: it is set aside automatically and the app runs its built-in (or last good) code. Rejections are silent to the user — the app simply works.
Crash-revert
The automatic safety net for patched boots: if the app fails to start after applying a patch, the next launch detects it, quarantines the patch, and boots the previous working state.