Drupal 11.4.12-CE-ubuntu24.04-r1 build trail
How ReadyStack built readystack/drupal:11.4.12-CE-ubuntu24.04-r1 and its build kit, copied record by record: why the release exists, every chain, drive and stage it went through, the model work, the review rounds, the defects, the checks that verified it and when it was published. Each line names the record it comes from in brackets; a record that does not exist for this release says so.
This trail
As JSON- Image
readystack/drupal:11.4.12-CE-ubuntu24.04-r1 - Index digestsha256:6ff7c13f49236c29c4f8702b4a61160b6b515c1e74b2c8a47c52ad7293d3d4e2
- linux/amd64 digestsha256:6e179fe7af9772742009fc17b07d9fa6964053a52717b3ab8257689f149edaa8
- Archive
ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.tar.gz - Archive SHA-256 now35b08ca095dc3a8ddf19f0110f5698f104fd7e6c1d64145578596215964702eb
- Pins record
docs/PINS.md,docs/provenance/PINS.jsonin the archive (since generated) - Generated2026-11-11T22:45:19Z by KitForge release/build_trail.py
- Sections9 sections, 8 fully recorded; 1 item not recorded
Signed with the release key The trail's signature is a Sigstore bundle beside it. Check it is ours before you rely on it:
cosign verify-blob --key https://readystack.dev/keys/cosign.pub \ --bundle ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.trail.json.sigstore ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.trail.json
IdentityWhy this release existsThe path through the harnessModel work per stageReviewDefectsVerificationPublicationPackages and CPU level
Identity
Fully recorded- ProductDrupal (drupal) [MANIFEST.json]
- Release tag11.4.12-CE-ubuntu24.04-r1 [MANIFEST.json]
- Imagereadystack/drupal:11.4.12-CE-ubuntu24.04-r1 [MANIFEST.json]
- Image index digestsha256:6ff7c13f49236c29c4f8702b4a61160b6b515c1e74b2c8a47c52ad7293d3d4e2 [docs/provenance/LOCKED_DIGEST.txt]
- linux/amd64 image digestsha256:6e179fe7af9772742009fc17b07d9fa6964053a52717b3ab8257689f149edaa8 [ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.rebuild.json, subject.image_manifest_digest]
- ArchiveReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.tar.gz (bytes 202046032) [MANIFEST.json]
- Archive sha256 at publish35b08ca095dc3a8ddf19f0110f5698f104fd7e6c1d64145578596215964702eb [MANIFEST.json, tarball_sha256]
- Archive records agreeyes [MANIFEST.json, PUBLISH_MANIFEST.json and .cutover.json name the same sha256]
- Repack historynone: the archive is as first published [MANIFEST.json, repack_history]
- Upstream repositoryhttps://github.com/drupal/recommended-project [docs/provenance/SOURCE_TREE_HASH.json]
- Upstream ref11.4.12 [docs/provenance/SOURCE_TREE_HASH.json]
- Upstream commit87ad3768f06a35bf27920d4bef277e2e3003f2d4 [docs/provenance/SOURCE_TREE_HASH.json]
- Source tree hashe44288fed4cc8f7380266fa9f98c765a4dba7a944569bb7116f16c55cafb83bb (files 3) [docs/provenance/SOURCE_TREE_HASH.json, tree_listing_sha256 (sha256 of the sorted file listing)]
- Kit tree hashsha256:da1e1405cc3ce58ede575f0052d0f41a8d853bd2524b2f80c8a07a0f8610e146 [ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.rebuild.json, inputs.tree_hash]
- SOURCE_DATE_EPOCH1794391168 (utc 2026-11-11T09:59:28Z) [ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.rebuild.json, inputs.source_date_epoch]
- Base images
- ref ubuntu:24.04@sha256:fe81560990fae86dc4743202b2cb4d3df98d0bcf949173cecef15ce1127ef852 · platform digest sha256:78d4744ead1f5b19b04d0df558ab182a5300903900755e515b2ca4d10eb2044d
- BuildKitmoby/buildkit:v0.31.2 (image digest sha256:e0e67ea9c4bb07bdef683e29f70f3b623d1eb9c82274a9ec04e6bb0511449fb0) [ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.rebuild.json, engine]
- Engine commit(s)
- commit fb3c8c212feaeb8607d5b295a821989cf0ab3e1e · dirty yes · first drive 4303
- commit 08040de9cc25311cfbe28aaa295df2520044e9e2 · dirty yes · first drive 4315
Why this release exists
Fully recorded- Chain977 (created 2026-11-11T21:13:49Z · trigger customer_request · upstream version 11.4.12) [chains, chains #977]
- Requestbuild request #673 (rebuild) (requested at 2026-11-11T09:59:32Z · requested by kitforge-agent · version 11.4.12) [build_requests, build_requests #673]
- Reasonretarget to 11.4.12: a newer upstream release (rule 1) [build_requests, build_requests #673 request_reason]
- Supersedesreadystack/drupal:11.4.11-CE-ubuntu24.04-r3 (chain 888) [chains, chains #888]
The path through the harness
Fully recorded1 chain · 2 drives · 18 stages · 1 rewind
Chain 977 release · ready_to_ship
Created 2026-11-11T21:13:49Z, upstream 11.4.12, build request 673 [chains, chains #977]
| Drive | Started | Minutes | Build host | How it stopped |
|---|---|---|---|---|
| 4303 | 2026-11-11T21:14:12Z | 19.4 | build host 3 withhold-publish | ready_to_ship at package_archive; 19 ticks [drive_runs, drive_runs #4303] |
| 4315 | 2026-11-11T22:36:36Z | — | build host 3 publish-held | not recorded [drive_runs, drive_runs #4315] |
Stages, in order
| Stage | First start | Passed | Attempts | Gate checks passed | Artifacts (SHA-256) |
|---|---|---|---|---|---|
intake |
2026-11-11T21:14:22Z | 2026-11-11T21:14:23Z | 1 | 4
|
order_json decdc052dec8… |
acquire |
2026-11-11T21:14:27Z | 2026-11-11T21:14:28Z | 1 | 12
|
source_tree 8ae8cfc85e56…license_file 87d7c32e09f9…custody_inputs ede1c9750b2a…source_tree_hash 56a0cdb65464…source_file_manifest 7b454c25b997… |
plan |
2026-11-11T21:15:05Z | 2026-11-11T21:15:06Z | 1 | 10
|
recon_report ad8c3b20f654…input_pin_plan cbceed2a8e4b…toolchain_lock dd2305283e0b… |
assemble_kit |
2026-11-11T21:18:53Z | 2026-11-11T21:18:54Z | 1 | 27
|
dockerfile 73c282a36d7f…build_recipe a46c1cfcb7af…system_pinning 8ac48ab14748…build_offline_sh 6633aa31b6b4…generate_sbom_sh ce0f1e6f1e70…first_boot_health cd0fc6ff68a2…verify_offline_sh 3e8184ea230c…base_image_digests 0633357c2a2e…dockerfile_offline 73c282a36d7f…first_build_digest af8b429457a9… |
remediate |
2026-11-11T21:19:28Z | 2026-11-11T21:19:29Z | 1 | 8
|
vendored_apt e3b0c44298fc…remediation_log 46c25b426bc8…security_report c9b995f5c1c0… |
build_kit |
2026-11-11T21:24:33Z | 2026-11-11T21:24:34Z | 1 | 9
|
cosign_stamp 3a6b53dc2627…locked_digest b9ded10212e2…freeze_manifest 927ce9d77fa1…offline_rebuild_transcript c78e06c1bf73… |
verdict |
2026-11-11T21:25:41Z | 2026-11-11T21:25:42Z | 1 | 8
|
scout_verdict 9cf4a853315d… |
publish_image |
2026-11-11T21:26:26Z | 2026-11-11T21:26:27Z | 1 | 7
|
hub_readme eb2c1307948a…promotion_record b3b84532e32b… |
boot_instance |
2026-11-11T21:26:39Z | 2026-11-11T21:26:42Z | 2 | 3
|
instance_handle ef41b25556ac… |
sbom |
2026-11-11T21:26:58Z | 2026-11-11T21:26:59Z | 1 | 5
|
sbom_md 9b4d4368bf7b…sbom_json e3d7fc709865… |
schema_discovery |
2026-11-11T21:27:02Z | 2026-11-11T21:27:02Z | 1 | 7
|
schema_hash 9b29910985ea…dependency_tree d01b24581949…table_classification 41787065d263… |
admin_handbook |
2026-11-11T21:27:13Z | 2026-11-11T21:27:14Z | 1 | 7
|
api_map 865191274d3a…admin_handbook 6c0794dc6870… |
db_handbook |
2026-11-11T21:27:26Z | 2026-11-11T21:27:27Z | 1 | 8
|
db_handbook 1cd121603184…seed_isolation 1d7a0f92fa1d… |
seed_data |
2026-11-11T21:27:36Z | 2026-11-11T21:27:37Z | 1 | 6
|
seed_data_sql e356ef7f6704…seed_cases_json 20a542f0eb11… |
seed_validate |
2026-11-11T21:27:39Z | 2026-11-11T21:27:40Z | 1 | 3
|
seed_data_contract de28244174c6… |
usecase_validate |
2026-11-11T21:28:04Z | 2026-11-11T21:28:05Z | 1 | 10
|
failed_tests 685f14e2ef9b…passed_tests 2f4339864ab8…test_results 31bc9497a5a2…usecase_contract c13a3681a24a… |
finalize_docs |
2026-11-11T21:28:11Z | 2026-11-11T21:28:12Z | 1 | 9
|
defects_json e952574ac4e7…release_notes 9b688f6ab58e…api_integration_guide 2e37d488aefa… |
package_archive invalidated 2026-11-11T22:35:40Z |
2026-11-11T21:33:32Z | 2026-11-11T21:33:34Z | 1 | 35 (final gate PASS)
|
sale_tar 2b6c83157e89…checksums 9bff24871c68…verify_md a7dfe5a73cd5…rebuild_md 3a3d3fb08f48…manifest_txt d574d15e4ec2…actions_jsonl 617c8e277f3c…provenance_md ecade3dcd98d…assetchain_log_md e9eccaec0c0f…assetchain_log_json 52269d4250ee… |
[stage_runs]
Rewinds
- 2026-11-11T22:35:40Z:
package_archivetopackage_archiveon docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #32169]
Model work per stage
Fully recordedRole: writer model. Calls up to 2026-11-11T21:33:34Z.
5 calls over 3 stages
| Stage | Calls | Refused | Errors | Max attempt | Forced commits | Real tokens | Lesson rules shown |
|---|---|---|---|---|---|---|---|
plan | 2 | 0 | 0 | 1 | 0 | 8261 | — |
remediate | 2 | 0 | 0 | 1 | 0 | 10934 | L-A08, L-038, L-036, L-034, L-032 |
usecase_validate | 1 | 0 | 0 | 1 | 0 | 1859 | — |
[micro_step_runs] [lesson_recalls]
Review
Fully recordedRole: review model.
1 round, 1 counted, $0.26 recorded cost
| Round | Started | Critical | Major | Minor | Verdict | Cost | Cap in force | Archive reviewed |
|---|---|---|---|---|---|---|---|---|
| 1 | 2026-11-11T21:34:04Z | 0 | 0 | 0 | clean to publish [held_rounds, held_rounds #1757] | $0.26 | 3 rounds, $40.00 | 2b6c83157e89… |
Defects
Fully recorded- Ledger entries0 [defects, defects where product_slug=drupal and this tag or chain]
- Disclosed in the archive0 [docs/defects/defects.json, entries]
0 ledger entries.
Verification
1 item not recorded- Reproduced before publishingyes (rebuilt digest sha256:6e179fe7af9772742009fc17b07d9fa6964053a52717b3ab8257689f149edaa8 · published digest sha256:6e179fe7af9772742009fc17b07d9fa6964053a52717b3ab8257689f149edaa8 · digest match yes · builder moby/buildkit:v0.31.2 · build seconds 115) [docs/provenance/REPRO_VERIFICATION.json, verified]
- Final contract gate (G8)PASS (checks artifact_coverage, assetchain_coverage, cosign, cpu_baseline, offline_rebuild, rebuild_manifest, scan_grade, scout_grade_a, script_copies, tag_base_os, thread_exit, trademark_shipped, unpack_files, vex_shipped) [g8_result.json, result]
- Grade at releaseA (percent 94 · docker grade B · docker percent 83 · tool docker scout policy 1.26.0 · config docker-default · org vex no · at 2026-11-11T22:37:06Z · failing Docker Scout counts 143 packages with copyleft licences (GPL, LGPL, MPL), 138 of them operating-system packages (it counts only packages whose licence it can read; the SBOM lists every component). · corrections No outdated base images) [SCOUT_EVIDENCE.json, docker_scout_policy.corrected]
- Image signatureverified on the index and the linux/amd64 manifest (key fingerprint 04daa92344a52dbc · at 2026-11-11T22:36:46Z) [docs/provenance/IMAGE_EVIDENCE.json, signed]
- Image signature transparency-log entries
- log index 3818110381 · transparency-log entry
- log index 3818111849 · transparency-log entry
- rebuild.json signatureSigstore bundle, release key (key fingerprint 04daa92344a52dbc · log index 3819200785 · transparency-log entry · integrated 2026-11-11T22:44:07Z) [ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.rebuild.json.sigstore, verificationMaterial.tlogEntries[0]]
- Signed attestations
- kind provenance · digest sha256:6ff7c13f49236c29c4f8702b4a61160b6b515c1e74b2c8a47c52ad7293d3d4e2 · state attached · log index 3819203214 · transparency-log entry
- kind sbom · digest sha256:6ff7c13f49236c29c4f8702b4a61160b6b515c1e74b2c8a47c52ad7293d3d4e2 · state attached · log index 3819205383 · transparency-log entry
- kind vsa · digest sha256:6ff7c13f49236c29c4f8702b4a61160b6b515c1e74b2c8a47c52ad7293d3d4e2 · state attached · log index 3819207741 · transparency-log entry
- kind provenance · digest sha256:6e179fe7af9772742009fc17b07d9fa6964053a52717b3ab8257689f149edaa8 · state attached · log index 3819209523 · transparency-log entry
- kind sbom · digest sha256:6e179fe7af9772742009fc17b07d9fa6964053a52717b3ab8257689f149edaa8 · state attached · log index 3819210327 · transparency-log entry
- kind vsa · digest sha256:6e179fe7af9772742009fc17b07d9fa6964053a52717b3ab8257689f149edaa8 · state attached · log index 3819212155 · transparency-log entry
- Pins recorddocs/PINS.md and docs/provenance/PINS.json in the archive (https://readystack.dev/products/drupal/recipe) [docs/provenance/PINS.json]
Offline clean-room rebuilds
- 2026-11-11T21:34:07Z on build host 3 (Docker-in-Docker daemon with --network none): bit for bit yes, digest match yes, customer verify yes
rebuilt sha256:6e179fe7af9772742009fc17b07d9fa6964053a52717b3ab8257689f149edaa8 [clean-room rebuild ledger, runs[758]]
- Not recorded: the policy tool's --result-file itself (its per-policy results are copied into SCOUT_EVIDENCE.json and the archive's IMAGE_EVIDENCE.json; the file is not kept)
Publication
Fully recorded 1 pending at generation- Image pushed (internal tag), publish_image passed2026-11-11T21:26:27Z [stage_runs, stage_runs chain 977 stage publish_image]
- Archive manifests written2026-11-11T22:38:40Z [PUBLISH_MANIFEST.json, published_at]
- Pending at generation: the archive cut-over on prodasset, the release tag's promotion and the site event (this trail was generated after G8 and before them; they are appended as a 'publication' event in History)
Packages and CPU level
Fully recorded- x86-64 level the image needsv1 (used v4 · baseline v2 · elf files 1023 · probed 2026-11-11T21:22:22Z · source build_kit) [release_images, isa_level_hard]
History
2 events- 2026-11-11T22:45:19Z generated: by KitForge release/build_trail.py · generator commit 08040de9cc25311cfbe28aaa295df2520044e9e2
- 2026-11-11T22:46:41Z publication: promoted at 2026-11-11T22:45:47Z · promoted digest sha256:6ff7c13f49236c29c4f8702b4a61160b6b515c1e74b2c8a47c52ad7293d3d4e2 · promotion method imagetools_create_retag_by_digest_no_rebuild · site event 481 · checklist status complete · checklist at 2026-11-11T22:46:41Z · record workspace: deliverables/provenance/PROMOTION_RECORD.json, RELEASE_CHECKLIST.json
Records
25 records| Record | Where it is | Rows |
|---|---|---|
docs/defects/defects.json | inside the archive (ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.tar.gz) | — |
docs/provenance/IMAGE_EVIDENCE.json | inside the archive (ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.tar.gz) | — |
docs/provenance/LOCKED_DIGEST.txt | inside the archive (ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.tar.gz) | — |
docs/provenance/PINS.json | inside the archive (ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.tar.gz) | — |
docs/provenance/REPRO_VERIFICATION.json | inside the archive (ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.tar.gz) | — |
docs/provenance/SOURCE_TREE_HASH.json | inside the archive (ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.tar.gz) | — |
MANIFEST.json | beside the archive (prodasset /data/production/drupal/11.4.12-CE-ubuntu24.04-r1/), as staged for publishing | — |
PUBLISH_MANIFEST.json | beside the archive (prodasset /data/production/drupal/11.4.12-CE-ubuntu24.04-r1/), as staged for publishing | — |
ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.rebuild.json | beside the archive (prodasset /data/production/drupal/11.4.12-CE-ubuntu24.04-r1/), as staged for publishing | — |
ReadyStack-drupal-11.4.12-CE-ubuntu24.04-r1.rebuild.json.sigstore | beside the archive (prodasset /data/production/drupal/11.4.12-CE-ubuntu24.04-r1/), as staged for publishing | — |
SCOUT_EVIDENCE.json | beside the archive (prodasset /data/production/drupal/11.4.12-CE-ubuntu24.04-r1/), as staged for publishing | — |
clean-room rebuild ledger | the clean-room rebuild ledger (runstate/audit-2026-09/bit4bit.json, not published) | — |
build_requests | sadb, ReadyStack's engine database (not published) | 673 |
chains | sadb, ReadyStack's engine database (not published) | 977 |
defects | sadb, ReadyStack's engine database (not published) | drupal 11.4.12-CE-ubuntu24.04-r1 |
drive_runs | sadb, ReadyStack's engine database (not published) | chain 977 |
held_rounds | sadb, ReadyStack's engine database (not published) | chain 977 |
lesson_recalls | sadb, ReadyStack's engine database (not published) | chain 977 |
micro_step_runs | sadb, ReadyStack's engine database (not published) | chain 977 |
release_images | sadb, ReadyStack's engine database (not published) | drupal 11.4.12-CE-ubuntu24.04-r1 |
stage_events | sadb, ReadyStack's engine database (not published) | chain 977 |
stage_runs | sadb, ReadyStack's engine database (not published) | chain 977 |
attestations.json | the chain's workspace on the controller (not published) | — |
deliverables/provenance/PROMOTION_RECORD.json | the chain's workspace on the controller (not published) | — |
g8_result.json | the chain's workspace on the controller (not published) | — |