Apache Kafka 4.4.0-CE-ubuntu24.04-r3 build trail
How ReadyStack built readystack/kafka:4.4.0-CE-ubuntu24.04-r3 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/kafka:4.4.0-CE-ubuntu24.04-r3 - Index digestsha256:f88e711b4a44b69eba2a0bb3feef0c55472963ffcd7d7d896eaadbe6eda0b2d4
- linux/amd64 digestsha256:d40942c179cba3fe7a1dc963ebfd7da620b67bd98cf4c72177646c39dbedcf60
- Archive
ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.tar.gz - Archive SHA-256 nowbf19724605139d8768ba41366d96643aa0adb980ab667adfe3d2eac71cc945d8
- Pins record
docs/PINS.md,docs/provenance/PINS.jsonin the archive (since generated) - Generated2026-11-08T17:53:12Z by KitForge release/build_trail.py
- Sections9 sections, 7 fully recorded; 2 items 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-kafka-4.4.0-CE-ubuntu24.04-r3.trail.json.sigstore ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.trail.json
IdentityWhy this release existsThe path through the harnessModel work per stageReviewDefectsVerificationPublicationPackages and CPU level
Identity
Fully recorded- ProductApache Kafka (kafka) [MANIFEST.json]
- Release tag4.4.0-CE-ubuntu24.04-r3 [MANIFEST.json]
- Imagereadystack/kafka:4.4.0-CE-ubuntu24.04-r3 [MANIFEST.json]
- Image index digestsha256:f88e711b4a44b69eba2a0bb3feef0c55472963ffcd7d7d896eaadbe6eda0b2d4 [docs/provenance/LOCKED_DIGEST.txt]
- linux/amd64 image digestsha256:d40942c179cba3fe7a1dc963ebfd7da620b67bd98cf4c72177646c39dbedcf60 [ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.rebuild.json, subject.image_manifest_digest]
- ArchiveReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.tar.gz (bytes 978576005) [MANIFEST.json]
- Archive sha256 at publishbf19724605139d8768ba41366d96643aa0adb980ab667adfe3d2eac71cc945d8 [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/apache/kafka [docs/provenance/SOURCE_TREE_HASH.json]
- Upstream ref4.4.0-rc4 [docs/provenance/SOURCE_TREE_HASH.json]
- Upstream commit1156b2752aaa28eafc0b4c4d387e63356793268d [docs/provenance/SOURCE_TREE_HASH.json]
- Source tree hashb5da1e956699ffe902548159723a07726c779eccb63a74c376091efa1d0a83e7 (files 7521) [docs/provenance/SOURCE_TREE_HASH.json, tree_listing_sha256 (sha256 of the sorted file listing)]
- Kit tree hashsha256:46a4f83d0bcff9a266918e4fe838b9ea3a7a235f67267346d3ae45f80edad242 [ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.rebuild.json, inputs.tree_hash]
- SOURCE_DATE_EPOCH1791303144 (utc 2026-10-06T16:12:24Z) [ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.rebuild.json, inputs.source_date_epoch]
- Base images
- ref eclipse-temurin:25-jdk-noble@sha256:589ff4cc3f71aab462e7048a47a0d10edf57fbccde3fceea2281e610bf5880b4 · platform digest sha256:51ae87bbb1949c1afdff51f6a3e6c5f283d84a4bd68512c9657fdc6605026a49
- ref eclipse-temurin:25-jre-noble@sha256:2ef7a81085e0502d7d4ff7e7c0257b6d4f46433f8ea6021180aa3c8a2b9ca3ec · platform digest sha256:41a70a160a5a157126929c1901e8dcf17ea4fd88eca1e7b9abf3cb1bb04df6c2
- BuildKitmoby/buildkit:v0.31.2 (image digest sha256:e0e67ea9c4bb07bdef683e29f70f3b623d1eb9c82274a9ec04e6bb0511449fb0) [ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.rebuild.json, engine]
- Engine commit(s)
- commit ff3112bd2cb03ee39fd394ed644a9522854803de · dirty yes · first drive 3486
- commit 21a662bdd6974e1e462fe91e1415f9f9d120bf2d · dirty yes · first drive 3532
- commit 84cdb58a2214910621bb9bf44c715ab9a064b838 · dirty yes · first drive 3805
- commit 3179e9e9e7ff3f9414b596de6e552d260c583056 · dirty yes · first drive 3847
Why this release exists
Fully recorded- Chain727 (created 2026-10-27T21:01:52Z · trigger customer_request · upstream version 4.4.0) [chains, chains #727]
- Requestbuild request #424 (rebuild) (requested at 2026-10-27T20:16:34Z · requested by kitforge-agent · version 4.4.0) [build_requests, build_requests #424]
- Reasonrevision 4.4.0-CE-ubuntu24.04-r3: same upstream version rebuilt (retarget.py --rev-bump) [build_requests, build_requests #424 request_reason]
- Supersedesreadystack/kafka:4.4.0-CE-ubuntu24.04-r2 (chain 683) [chains, chains #683]
The path through the harness
Fully recorded1 chain · 5 drives · 18 stages · 4 rewinds
Chain 727 release · ready_to_ship
Created 2026-10-27T21:01:52Z, upstream 4.4.0, build request 424 [chains, chains #727]
| Drive | Started | Minutes | Build host | How it stopped |
|---|---|---|---|---|
| 450 | 2026-10-27T21:02:25Z | 23.6 | build host 2 withhold-publish | stage_failed at verdict [drive_runs, drive_runs #450] rebuilt from a build line's log |
| 3486 | 2026-11-03T08:11:34Z | 23.5 | build host 2 withhold-publish | stage_failed at verdict; first failed check scout_verdict:release_check_passed; 4 ticks [drive_runs, drive_runs #3486] |
| 3532 | 2026-11-07T01:41:02Z | 40.1 | build host 2 withhold-publish | ready_to_ship at package_archive; 16 ticks [drive_runs, drive_runs #3532] |
| 3805 | 2026-11-08T13:07:19Z | 7.2 | build host 2 withhold-publish | ready_to_ship at package_archive; 2 ticks [drive_runs, drive_runs #3805] |
| 3847 | 2026-11-08T17:45:13Z | — | build host 2 publish-held | not recorded [drive_runs, drive_runs #3847] |
Stages, in order
| Stage | First start | Passed | Attempts | Gate checks passed | Artifacts (SHA-256) |
|---|---|---|---|---|---|
intake |
2026-10-27T21:02:32Z | 2026-10-27T21:02:33Z | 1 | 4
|
— |
acquire |
2026-10-27T21:02:43Z | 2026-10-27T21:02:43Z | 1 | 12
|
— |
plan |
2026-10-27T21:03:15Z | 2026-10-27T21:03:16Z | 1 | 10
|
— |
assemble_kit |
2026-10-27T21:14:33Z | 2026-11-07T01:52:50Z | 3 | 27
|
dockerfile b685b468d848…build_recipe 60a4ae5f6efe…system_pinning 23adcc4de329…build_offline_sh 6633aa31b6b4…generate_sbom_sh ce0f1e6f1e70…first_boot_health cdd32ad918df…verify_offline_sh 3e8184ea230c…base_image_digests 181de58ed499…dockerfile_offline b685b468d848…first_build_digest 6178d347c488… |
remediate |
2026-10-27T21:15:17Z | 2026-11-07T01:52:55Z | 3 | 8
|
vendored_apt e3b0c44298fc…remediation_log 8c17b7a3cb1c…security_report a73421ae16ec… |
build_kit |
2026-10-27T21:24:12Z | 2026-11-07T02:02:41Z | 3 | 9
|
cosign_stamp ad9a8181a080…locked_digest 04fd20b29f15…freeze_manifest eed611c348e1…offline_rebuild_transcript bd59c3043b0c… |
verdict |
2026-10-27T21:26:00Z | 2026-11-07T02:04:05Z | 3 | 8
|
scout_verdict 95e9ac78db41… |
publish_image |
2026-11-07T02:04:57Z | 2026-11-07T02:04:58Z | 1 | 7
|
hub_readme 6992218cce0d…promotion_record 993fdf20c330… |
boot_instance |
2026-11-07T02:05:11Z | 2026-11-07T02:05:15Z | 2 | 3
|
instance_handle 90684ac2ae85… |
sbom |
2026-11-07T02:05:34Z | 2026-11-07T02:05:35Z | 1 | 5
|
sbom_md 9623b1d15e81…sbom_json fb6d759145aa… |
schema_discovery |
2026-11-07T02:05:37Z | 2026-11-07T02:05:38Z | 1 | 7
|
schema_hash 6aa29381920b…dependency_tree c1d0ae500ee9…table_classification 4fe048881f6f… |
admin_handbook |
2026-11-07T02:06:10Z | 2026-11-07T02:06:10Z | 1 | 7
|
api_map d40df8495977…admin_handbook 8d889edd71ff… |
db_handbook |
2026-11-07T02:06:43Z | 2026-11-07T02:06:43Z | 1 | 8
|
db_handbook 19d33d370c90…seed_isolation 1e130c1757ce… |
seed_data |
2026-11-07T02:07:18Z | 2026-11-07T02:07:19Z | 1 | 6
|
seed_data_sql 952f22ca2eb5…seed_cases_json 1558d28c1d5d… |
seed_validate |
2026-11-07T02:07:22Z | 2026-11-07T02:07:22Z | 1 | 3
|
seed_data_contract 60f91a8273cb… |
usecase_validate |
2026-11-07T02:08:58Z | 2026-11-07T02:08:59Z | 1 | 10
|
failed_tests b2247b16f5f7…passed_tests 06cf3c640df4…test_results d4bd52a497fd…usecase_contract aa7feee737df… |
finalize_docs |
2026-11-07T02:09:15Z | 2026-11-07T02:09:16Z | 1 | 9
|
defects_json fa04adfac2be…release_notes c443ad548625…api_integration_guide 5cd3922b14a9… |
package_archive invalidated 2026-11-08T17:44:38Z |
2026-11-07T02:21:06Z | 2026-11-08T13:14:29Z | 2 | 34 (final gate PASS)
|
sale_tar c3b8a90b350b…checksums 62d67d93d16d…verify_md f3be4a3d90b8…rebuild_md 306e173b92a8…manifest_txt cee0764b8a45…actions_jsonl a0f1cc9d7c87…provenance_md 25bba46f9492…assetchain_log_md e9eccaec0c0f…assetchain_log_json 815c4f8af942… |
[stage_runs]
Rewinds
- 2026-11-03T08:11:41Z:
verdicttoassemble_kiton strategy_changed (runtime base eclipse-temurin:25-jre-noble moved (sha256:ce8543ddd307… -> sha256:2ef7a81085e0…) (8a31ce21fc0b -> 8a31ce21fc0b)) [stage_events, stage_events #22403] - 2026-11-07T01:41:06Z:
verdicttoassemble_kiton strategy_changed (strategy changed (8a31ce21fc0b -> 9c1d61f3dee0)) [stage_events, stage_events #23029] - 2026-11-08T07:17:11Z:
package_archivetopackage_archiveon docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #25387] - 2026-11-08T17:44:38Z:
package_archivetopackage_archiveon docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #26936]
Model work per stage
1 item not recordedRole: writer model. Calls up to 2026-11-08T13:14:29Z.
5 calls over 3 stages
| Stage | Calls | Refused | Errors | Max attempt | Forced commits | Real tokens | Lesson rules shown |
|---|---|---|---|---|---|---|---|
plan | 2 | 0 | 0 | 1 | not recorded | not recorded | — |
remediate | 2 | 0 | 0 | 1 | not recorded | not recorded | — |
finalize_docs | 1 | 0 | 0 | 1 | 0 | 6494 | — |
[micro_step_runs]
- Not recorded: the lesson rules shown to the writer model (lesson_recalls holds no rows for this chain: its recorder was silent from 2026-06-06 to 2026-11-02)
Review
Fully recordedRole: review model.
2 rounds, 2 counted, $1.10 recorded cost
| Round | Started | Critical | Major | Minor | Verdict | Cost | Cap in force | Archive reviewed |
|---|---|---|---|---|---|---|---|---|
| 1 | 2026-11-07T02:21:58Z | 0 | 8 | 1 | blocked to blocked [held_rounds, held_rounds #1417] | $0.64 | 3 rounds, $40.00 | 76ec44c421c7… |
| 2 | 2026-11-08T13:14:52Z | 0 | 0 | 0 | clean to publish [held_rounds, held_rounds #1512] | $0.47 | 3 rounds, $40.00 | c3b8a90b350b… |
Defects
Fully recorded- Ledger entries7 [defects, defects where product_slug=kafka and this tag or chain]
- Disclosed in the archive7 [docs/defects/defects.json, entries]
7 ledger entries: by severity high 6, low 1; by status open 1, fixed-before-release 6.
| Defect | Severity | Status | Found by | Fixed in |
|---|---|---|---|---|
RSD-kafka-7400568400Unauthenticated access by default [defects, defects #157961] | high | open | build strategy record | — |
RSD-kafka-4958c65db7API guide: Stale JDK version from the superseded build; this image sets JAVA_VERSION=jdk-25.0.5+8, and the guides contradict each other. [defects, defects #158021] | high | fixed-before-release | held review (review model) | — |
RSD-kafka-34ec494ff5Admin handbook: Stale JDK version from the superseded build; this image sets JAVA_VERSION=jdk-25.0.5+8, and the guides contradict each other. [defects, defects #158022] | high | fixed-before-release | held review (review model) | — |
RSD-kafka-e9306bd7aaDatabase handbook: Stale JDK version from the superseded build; this image sets JAVA_VERSION=jdk-25.0.5+8, and the guides contradict each other. [defects, defects #158023] | high | fixed-before-release | held review (review model) | — |
RSD-kafka-0f58f7421bAPI guide: The Configuration Reference names the superseded release r2 as the image the reader runs. [defects, defects #158024] | high | fixed-before-release | held review (review model) | — |
RSD-kafka-a3e15dfdf4Admin handbook: The section says upstream 'keeps data' in /etc/kafka/secrets and /mnt/shared/config and that they have 'no counterpart in this image', and tells the reader to move their contents with 'the product's… [defects, defects #158025] | high | fixed-before-release | held review (review model) | — |
RSD-kafka-dbd6797a6fAdmin handbook: Table row reads as if this image has no counterpart for the secrets/config directories; they exist (owner 1000) and are used throughout the handbook. [defects, defects #158026] | low | fixed-before-release | held review (review model) | — |
Verification
1 item not recorded- Reproduced before publishingyes (rebuilt digest sha256:d40942c179cba3fe7a1dc963ebfd7da620b67bd98cf4c72177646c39dbedcf60 · published digest sha256:d40942c179cba3fe7a1dc963ebfd7da620b67bd98cf4c72177646c39dbedcf60 · digest match yes · builder moby/buildkit:v0.31.2 · build seconds 272) [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, trademark_shipped, 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-08T17:45:37Z · failing Docker Scout counts 91 packages with copyleft licences (GPL, LGPL, MPL), all 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-08T17:45:24Z) [docs/provenance/IMAGE_EVIDENCE.json, signed]
- Image signature transparency-log entries
- log index 3727689993 · transparency-log entry
- log index 3727690215 · transparency-log entry
- rebuild.json signatureSigstore bundle, release key (key fingerprint 04daa92344a52dbc · log index 3758404356 · transparency-log entry · integrated 2026-11-08T17:51:35Z) [ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.rebuild.json.sigstore, verificationMaterial.tlogEntries[0]]
- Signed attestations
- kind provenance · digest sha256:f88e711b4a44b69eba2a0bb3feef0c55472963ffcd7d7d896eaadbe6eda0b2d4 · state attached · log index 3758407706 · transparency-log entry
- kind sbom · digest sha256:f88e711b4a44b69eba2a0bb3feef0c55472963ffcd7d7d896eaadbe6eda0b2d4 · state attached · log index 3758408942 · transparency-log entry
- kind vsa · digest sha256:f88e711b4a44b69eba2a0bb3feef0c55472963ffcd7d7d896eaadbe6eda0b2d4 · state attached · log index 3758409907 · transparency-log entry
- kind provenance · digest sha256:d40942c179cba3fe7a1dc963ebfd7da620b67bd98cf4c72177646c39dbedcf60 · state attached · log index 3758410580 · transparency-log entry
- kind sbom · digest sha256:d40942c179cba3fe7a1dc963ebfd7da620b67bd98cf4c72177646c39dbedcf60 · state attached · log index 3758411686 · transparency-log entry
- kind vsa · digest sha256:d40942c179cba3fe7a1dc963ebfd7da620b67bd98cf4c72177646c39dbedcf60 · state attached · log index 3758412624 · transparency-log entry
- Pins recorddocs/PINS.md and docs/provenance/PINS.json in the archive (https://readystack.dev/products/kafka/recipe) [docs/provenance/PINS.json]
Offline clean-room rebuilds
- 2026-11-07T02:22:05Z on build host 2 (Docker-in-Docker daemon with --network none): bit for bit yes, digest match yes, customer verify yes
rebuilt sha256:d40942c179cba3fe7a1dc963ebfd7da620b67bd98cf4c72177646c39dbedcf60 [clean-room rebuild ledger, runs[594]]
- 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-07T02:04:58Z [stage_runs, stage_runs chain 727 stage publish_image]
- Archive manifests written2026-11-08T17:48:38Z [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 792 · probed 2026-11-07T01:57:54Z · source build_kit) [release_images, isa_level_hard]
History
2 events- 2026-11-08T17:53:12Z generated: by KitForge release/build_trail.py · generator commit 7c6b61ce76feba4df822395cea465de0973154b4
- 2026-11-08T17:55:01Z publication: promoted at 2026-11-08T17:53:49Z · promoted digest sha256:f88e711b4a44b69eba2a0bb3feef0c55472963ffcd7d7d896eaadbe6eda0b2d4 · promotion method imagetools_create_retag_by_digest_no_rebuild · site event 382 · checklist status complete · checklist at 2026-11-08T17:55:01Z · record workspace: deliverables/provenance/PROMOTION_RECORD.json, RELEASE_CHECKLIST.json
Records
24 records| Record | Where it is | Rows |
|---|---|---|
docs/defects/defects.json | inside the archive (ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.tar.gz) | — |
docs/provenance/IMAGE_EVIDENCE.json | inside the archive (ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.tar.gz) | — |
docs/provenance/LOCKED_DIGEST.txt | inside the archive (ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.tar.gz) | — |
docs/provenance/PINS.json | inside the archive (ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.tar.gz) | — |
docs/provenance/REPRO_VERIFICATION.json | inside the archive (ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.tar.gz) | — |
docs/provenance/SOURCE_TREE_HASH.json | inside the archive (ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.tar.gz) | — |
MANIFEST.json | beside the archive (prodasset /data/production/kafka/4.4.0-CE-ubuntu24.04-r3/), as staged for publishing | — |
PUBLISH_MANIFEST.json | beside the archive (prodasset /data/production/kafka/4.4.0-CE-ubuntu24.04-r3/), as staged for publishing | — |
ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.rebuild.json | beside the archive (prodasset /data/production/kafka/4.4.0-CE-ubuntu24.04-r3/), as staged for publishing | — |
ReadyStack-kafka-4.4.0-CE-ubuntu24.04-r3.rebuild.json.sigstore | beside the archive (prodasset /data/production/kafka/4.4.0-CE-ubuntu24.04-r3/), as staged for publishing | — |
SCOUT_EVIDENCE.json | beside the archive (prodasset /data/production/kafka/4.4.0-CE-ubuntu24.04-r3/), 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) | 424 |
chains | sadb, ReadyStack's engine database (not published) | 727 |
defects | sadb, ReadyStack's engine database (not published) | kafka 4.4.0-CE-ubuntu24.04-r3 |
drive_runs | sadb, ReadyStack's engine database (not published) | chain 727 |
held_rounds | sadb, ReadyStack's engine database (not published) | chain 727 |
micro_step_runs | sadb, ReadyStack's engine database (not published) | chain 727 |
release_images | sadb, ReadyStack's engine database (not published) | kafka 4.4.0-CE-ubuntu24.04-r3 |
stage_events | sadb, ReadyStack's engine database (not published) | chain 727 |
stage_runs | sadb, ReadyStack's engine database (not published) | chain 727 |
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) | — |