Documentation

Search Composal documentation

Search public documentation, commands, and release notes.

Browse documentation

CI

CI overview

Set up continuous integration, inspect runs, and configure faster validation on Composal.

On this page

Run checks for your Changes, inspect their logs, and validate the candidate that will land. Composal reads GitHub Actions-style YAML from .vex/workflows and reports results alongside your Changes.

Start with one workflow

  1. Follow Configure workflows to add a workflow with a test command that already passes locally.
  2. Submit the Change. Open its checks or your repository’s Actions page to follow the run and inspect job logs.
  3. Fix any failing checks, then land through the merge queue. Keep push-only deployment jobs separate from tests.
  4. Once your baseline works, choose the optimization that matches your bottleneck below.

Configure and operate CI

TaskGuide
Write YAML, choose triggers, and connect GitHub checksConfigure workflows
Understand system runners and adjust candidate concurrencyRunners and concurrency
Run only workflows affected by a monorepo changeSelective CI
Reuse dependencies and compiler outputsCaching
Land stacks, prioritize work, and reuse queue tests on trunkMerge queue CI
Investigate failures, waiting time, and performanceInspect and troubleshoot

Choose what to optimize

  • Unrelated workflows run: configure path filters or a monorepo suite manifest. Selection operates on whole workflows, not individual test cases.
  • Dependency setup or compilation is slow: measure a cache against a run without it. A cache hit does not mean tests passed.
  • Candidates wait while runners have capacity: adjust candidate concurrency and compare queue wait with runner use.
  • Tests repeat after landing: eligible queue-to-trunk result reuse can reuse the exact published candidate’s passing results. Push-only deployment jobs still run.

Check feature availability

Workflow execution is the starting point. Selective candidate CI, generated-file reconciliation, adjacent batching, published-target archive reuse, and queue-to-trunk test reuse have separate rollout controls. Adding YAML or a manifest does not enable a preview. Each guide explains its supported repository scope and administrator requirements.

Continue with Configure workflows.