Publishing & Versions
Corral uses a test-then-publish model. You configure and iterate in a test environment, then publish a version to make it live.
How Publishing Works
Test Environment
Every configuration change — intelligence settings, MCP connections, OpenAPI integrations — takes effect immediately in the Build & Test tab. This is your development sandbox. Users don’t see test changes.
Publishing a Version
When you’re ready to go live:
- Navigate to the app in the admin console
- Go to the Versions tab
- Click publish and provide a version string
What Happens on Publish
Publishing triggers a coordinated snapshot:
- Validation: The system checks prerequisites — intelligence must be configured, at least one channel must be active
- Snapshot: The current test configuration is frozen and copied to a published configuration, linked to the new version
- Activation: The published version becomes the live configuration for all production channels (Hub, Teams, widget, API)
Each version is a complete snapshot of the app’s configuration at that point in time.
Permissions
Publishing requires ReadAndPublish permission on the app. See Permissions & Access Control → for the full permission model.
Version History
Every published version is recorded and browsable in the Versions tab, ordered by creation date. This gives you a history of how the app’s configuration has evolved.
This section is a work in progress.
What Gets Versioned
Each publish snapshots:
| Component | What’s Captured |
|---|---|
| Intelligence configuration | Model, system prompt, intelligence type settings |
| MCP connections | Server URLs, auth, enabled tools |
| OpenAPI connections | Spec URLs, enabled operations |
| Channel configuration | Teams, widget, DirectLine settings |
Publishing Prerequisites
Before you can publish, the system validates:
- Intelligence configured — the app must have an intelligence type, model, and system prompt set
- Channel active — at least one channel must be enabled (DirectLine is always present, so this is effectively always met)
If prerequisites aren’t met, publishing is blocked with an explanation of what’s missing.