Skip to content

Change Log

The change log is where platform updates land: new capabilities, new documentation, and changes to the paved path. Each update is its own dated page, newest first, so you can skim what has changed since you last looked or link a team to a specific announcement.

Entries are announcements, not reference material — each one links to the docs that carry the durable detail.

Cross-team alignment decisions are part of the feed too: when teams agree on a commitment, a contract, or a boundary, the agreement ships as an entry badged Decision, carrying a status, a DRI, and the stakeholders who were present — a system of record for what was agreed, by whom. The full decision log collects them in one place.

Posting an update? From doc-site/, run hugo new content changelog/YYYY-MM-DD-your-slug.md to scaffold an entry from the announcement template (or copy the frontmatter of any recent entry) — it carries the title, description, author attribution, tags, and the optional decision block, ready to fill in.

Caproni is now the strategic development platform StrategyDevelopment
Going forward, Caproni will replace the GitLab Development Kit everywhere across GitLab. Action is required by teams that still use GDK, especially to develop GitLab services.
The feature-flags service is ready for production use Feature-FlagsDeployment
Feature flags for services outside the monolith are now available to all of GitLab engineering — define a flag in git, evaluate it with the LabKit client, and de-risk your next rollout.
Theseus and Cells: separation of concerns DocsStrategyCells
A new strategy page draws the line between the developer platform and the infrastructure architecture — what each owns, and the contract between them.
Feature flag strategy and how-to guide DocsFeature-Flags
The feature flag strategy page is fully fleshed out, and a new how-to guide walks the full flag lifecycle for services on the platform.
Fairway v3.0.0: charts validate their own values DeploymentConfiguration
Every generated chart now ships a values.schema.json, so Helm rejects typo'd keys and out-of-range values before they reach a cluster — a breaking change worth reading before you regenerate.