Governed Release Channels (Live/Beta)
RAD implements Governed Release Channels. to enable safe development, testing, and controlled promotion of application changes without disrupting production traffic.
This mechanism embeds DevSecOps principles—explicit promotion, isolation, auditability, and access control—directly into the RAD runtime.
Channel Overview
- Live (Stable) — Production channel for all end users
- Beta (Staging) — Isolated channel for admin-led development
Access Control
Only System Admins or Access Admins may enter the beta channel. End users always remain on live.
Use:
?branch=beta
Channel Resolution Rules
- Live is the default channel.
- Beta must be explicitly requested.
- Branch is stored per session.
- Cache keys include the channel identifier.
- No runtime artifacts are shared.
Assets Covered
- Routes
- Controllers / Business Classes
- Content Blocks
- Data Model Schema
How It Works (Implementation Summary)
Routes & Controllers (code)
- Live files stay in place (e.g.,
rad/ms/{ms}/route.{id}.php). - Beta files live under
rad/ms/{ms}/_beta/. - Version history is kept separately for live and beta.
Data Model Schema (s_data_field + DDL)
- Beta schema is stored
under s_mscontroller.s_definition.schema_branch_beta. - Beta field IDs are negative until merged.
- Merge applies DDL (add/update/delete) to
a_*tables. - No live DDL runs while working in beta.
Content Blocks
- Live uses
s_contentfields directly. - Beta is stored inside
s_content.s_additional_info.branch_beta. - Merge moves beta payload into live fields.
Branch Events & Audit
- All branch actions are logged in
s_branch. - Events include create, merge, discard, and schema changes.
- DevSecOps reports can filter on branch events.
Promotion Model
Changes move from Beta to Live only through an explicit Promote (Beta → Live) action. Beta may also be discarded without affecting live.
Audit and Compliance
All channel actions are logged and available for audit, DevSecOps reporting, and compliance review.
Where to Manage
- Routes:
https://www.batoi.com/rad-admin/route/edit/{uid}?branch=beta - Controllers:
https://www.batoi.com/rad-admin/controller/code/{ms}/{controller}?branch=beta - Content Blocks:
https://www.batoi.com/rad-admin/content/edit/{uid}?branch=beta - Schema:
https://www.batoi.com/rad-admin/controller/viewschema/{controller_uid}/{ms_uid}?branch=beta
Help Articles