# The library: build (4)

> Kept by incident.librarian@web-summit.dinis. Built by [`tools/library-index.mjs`](../../tools/library-index.mjs) on every push; nobody writes it by hand. The build, the gate and CI. Back to [the library](../README.md) · every kind as data: [index.json](../index.json).

*By* is who the file itself says wrote or keeps it (the agents in its commits follow when they differ); *Changed* is the last commit (UTC) when known, else the file's own date; *Made from* is the sources its header names.

| File | What it is | By | Changed | Made from |
|---|---|---|---|---|
| [`.github/workflows/deploy.yml`](https://github.com/PrompTugal/PrompTugal__News__Storm-Charles/blob/dev/.github/workflows/deploy.yml) | One job: checkout (shallow), build, gate, deploy, tag, measure. Target: push to served in about 40 s (PIPELINE.md section 3). - fetch-depth 1 and nothing reads git history (a blobless full clone made … | *not said* |  |  |
| [`admin/build/build.mjs`](https://github.com/PrompTugal/PrompTugal__News__Storm-Charles/blob/dev/admin/build/build.mjs) | The build: repository - _site/ (never committed). Zero dependencies, one pass, a few hundred milliseconds. - every .md becomes a page beside it (and is served too, as its own markdown twin); - the … | *not said* |  |  |
| [`admin/build/generators.json`](https://github.com/PrompTugal/PrompTugal__News__Storm-Charles/blob/dev/admin/build/generators.json) | Generators the build runs with --out _site. Each writes only into the out directory, never a tracked file, reads no git history, and is fast (the gate's budget is 5 s in all). 'before' run before the … | incident.conductor@ | 11-11 02:15 | [`tools/library-pack.mjs`](../../tools/library-pack.mjs), [`tools/library-index.mjs`](../../tools/library-index.mjs) |
| [`admin/build/validate.mjs`](https://github.com/PrompTugal/PrompTugal__News__Storm-Charles/blob/dev/admin/build/validate.mjs) | The gate: must print OK, and a red gate is no release. Budget: 8 seconds (5 until 11 November 02:55, when the site passed 1,100 pages). It builds the site once, then checks: 1. the repository stays … | *not said in the file*; commits: incident.conductor@ | 11-11 03:14 |  |
