Skip to content

Glossary

Terms and acronyms that the Concourse documentation uses

Each entry gives the general meaning, then what the term means in Concourse. A context's CONTEXT.md file owns the domain words of that context. Start from CONTEXT-MAP.md for those.

Term index

Affected task · CI · DDL · DML · Drizzle Kit · Fixture · Generation receipt · Local generation run · Migration ledger · MySQL grant · QA · Registry · Schema snapshot · SHA-256 · Static IP · TLS · TTY · VPN

CI

Continuous integration (CI) builds and tests a change before it merges.

In Concourse: Pull requests use the affected-task graph. Markdown-only changes run the matching documentation app, root tests (including the documentation contract), and format checks. CI runs turbo run --affected with task-level inputs. One job runs the checks, the unit and database tests, and the builds, one phase after the other, beside the E2E job. Shared safety inputs select tasks across the repository. Pushes to main and manual dispatches omit --affected and run the complete suite. Only pull requests into main that are ready for review run CI on GitHub; draft and stacked pull requests use pnpm ci:local. Unaffected jobs report success without running tasks. verify requires every job to succeed.

Affected task

An affected task is a Turborepo task whose package inputs or dependencies changed between two Git commits.

In Concourse: Turbo selects and runs tasks directly with --affected and affectedUsingTaskInputs. No custom classifier sits between selection and execution. Its local and Vercel Remote Cache avoid repeated work. Documentation apps declare their external source trees as task inputs, so content changes also invalidate cached builds.

DDL

Data definition language (DDL) defines database objects such as tables, views, triggers, routines, and events.

In Concourse: A schema snapshot commits the complete Production DDL on purpose, so that reviewers can read it.

DML

Data manipulation language (DML) reads or changes rows with statements such as SELECT, INSERT, UPDATE, and DELETE.

In Concourse: The shared Rackspace account has DML privileges. Generic generation, inspection, verification, and runtime code issues only SHOW and SELECT. Reviewed database-specific Services can change application data through typed RSDB entry points.

Drizzle Kit

Drizzle Kit reads an existing database and generates Drizzle schema files.

In Concourse: Drizzle Kit runs only in the local generation command on an operator laptop. It is not in the deployed runtime graph.

Fixture

A fixture is a known set of rows that an environment starts from. A test or a review then begins from the same state every time.

In Concourse: pnpm db:seed writes the seed organization. The acceptance suite and every preview database start from those rows.

Generation receipt

A generation receipt is the committed record of a generated directory: its file hashes, safe counts, tool versions, and the time at which the generated content last changed.

In Concourse: The receipt is not signed. It proves that the committed bytes are consistent. Git review provides the authorship and approval evidence.

Local generation run

A local generation run is one interactive transaction. It reads one selected Production database twice, makes sure that the output is stable, and proposes one complete generated directory.

In Concourse: The run requires the approved VPN and a protected configuration file outside the repository.

Migration ledger

A migration ledger is the table that a migration tool keeps inside a database. It records which migrations that database has applied.

In Concourse: Drizzle writes __drizzle_migrations. Before it applies anything, Drizzle reads this table. It applies each committed migration whose name the table does not list. It ignores ledger rows that have no committed migration. After the migration, the production migration workflow and the readiness check make sure only that the database answers and that this table exists. They do not compare its rows with the committed migrations.

MySQL grant

A MySQL grant gives an account a named privilege on a server, a database, or an object.

In Concourse: One shared account has the exact accepted global profile. The Rackspace security page lists it.

QA

Quality assurance (QA) is a non-production environment for tests of live integration behavior.

In Concourse: QA and Production share one Rackspace MySQL instance and the same schemas. Each mi_ database has a QA copy with a _qa suffix, such as mi_property_value_qa. The other databases, such as tredis_global_dynamic, have no QA copy. QA uses the Production copy of those databases, so a QA deployment reads and changes Production TREDIS accounts. RACKSPACE_ENVIRONMENT=qa selects the QA copies. The Concourse Preview checks only the fixed mi_property_value_qa database. It does not generate or verify a committed schema.

Registry

The registry is the generated list of supported Rackspace database names and their committed schema modules, in binary name order.

In Concourse: packages/rsdb/lib/runtime/registry.generated.ts is the registry. Runtime code accepts only an exact registered name. Production verification always checks the complete merged registry.

Schema snapshot

A schema snapshot is the set of deterministic generated files and the complete DDL that represent one database schema at one point in time.

In Concourse: Each registered database has one snapshot below packages/rsdb/generated/<database>/. An operator generates it locally from Production and commits it through a normal pull request.

SHA-256

Secure Hash Algorithm 256-bit (SHA-256) produces a fixed-size digest that changes when any byte changes.

In Concourse: A generation receipt uses SHA-256 for the DDL targets, the manifest, and each generated file.

Static IP

A Static IP is a fixed outbound address for the network traffic of a Vercel project.

In Concourse: The Rackspace firewall permits MySQL access from the two approved iad1 addresses and from the approved operator VPN.

TLS

Transport Layer Security (TLS) protects network traffic against a reader or a modifier in transit.

In Concourse: The reviewed Rackspace service uses unencrypted MySQL transport. Network allowlists reduce this risk. They do not remove it.

TTY

A terminal device (TTY) provides an interactive input and output session.

In Concourse: Local generation requires a TTY, because the operator must confirm the VPN, the databases, and the installation. The command never accepts an unattended run.

VPN

A virtual private network (VPN) creates a protected network path.

In Concourse: An operator connects through the approved VPN before a local Production schema generation.