Traefik v3.7.17-CE-ubuntu24.04-r2 build trail

How ReadyStack built readystack/traefik:v3.7.17-CE-ubuntu24.04-r2 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
  • Imagereadystack/traefik:v3.7.17-CE-ubuntu24.04-r2
  • Index digestsha256:efc9929af7072f797c261a5b9e6f7c29d4dce6f1fc63008f043497619af85139
  • linux/amd64 digestsha256:9bfea0cda3b4fd214f861329996e9c7207de0cf2ce50e6c2597eea39bc36fc0a
  • ArchiveReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.tar.gz
  • Archive SHA-256 nowda3d162ef128587919a755161570bbf7e957f2341fb19343809d94ca0d7dafd7
  • Pins recorddocs/PINS.md, docs/provenance/PINS.json in the archive (since generated)
  • Generated2026-11-09T18:08:04Z 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-traefik-v3.7.17-CE-ubuntu24.04-r2.trail.json.sigstore ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.trail.json

IdentityWhy this release existsThe path through the harnessModel work per stageReviewDefectsVerificationPublicationPackages and CPU level

Identity

Fully recorded
  • ProductTraefik (traefik) [MANIFEST.json]
  • Release tagv3.7.17-CE-ubuntu24.04-r2 [MANIFEST.json]
  • Imagereadystack/traefik:v3.7.17-CE-ubuntu24.04-r2 [MANIFEST.json]
  • Image index digestsha256:efc9929af7072f797c261a5b9e6f7c29d4dce6f1fc63008f043497619af85139 [docs/provenance/LOCKED_DIGEST.txt]
  • linux/amd64 image digestsha256:9bfea0cda3b4fd214f861329996e9c7207de0cf2ce50e6c2597eea39bc36fc0a [ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.rebuild.json, subject.image_manifest_digest]
  • ArchiveReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.tar.gz (bytes 510217670) [MANIFEST.json]
  • Archive sha256 at publishda3d162ef128587919a755161570bbf7e957f2341fb19343809d94ca0d7dafd7 [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/traefik/traefik [docs/provenance/SOURCE_TREE_HASH.json]
  • Upstream refv3.7.17 [docs/provenance/SOURCE_TREE_HASH.json]
  • Upstream commit04e8ccf84ada1dcb450cec06554fe27812903134 [docs/provenance/SOURCE_TREE_HASH.json]
  • Source tree hash4a6be02887a5ebe3aa661275ca81fe3a8c95f59d42d621b1d1dde84e887dfb49 (files 2324) [docs/provenance/SOURCE_TREE_HASH.json, tree_listing_sha256 (sha256 of the sorted file listing)]
  • Kit tree hashsha256:33a78efd7e086d654826f115072f10d277b80f85386961ab6838c6c14c1a7b68 [ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.rebuild.json, inputs.tree_hash]
  • SOURCE_DATE_EPOCH1793268485 (utc 2026-10-29T10:08:05Z) [ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.rebuild.json, inputs.source_date_epoch]
  • Base images
    • ref golang:1.27.3-bookworm@sha256:972b4110ba0f47539a975c31e52c64765e1ff19f2d74469ae4a595c6676e80a5 · platform digest sha256:fea12ba16096adec0f699ce1c4da2154d320450e56c1f63671f95d2a3551c77b
    • ref ubuntu:24.04@sha256:fe81560990fae86dc4743202b2cb4d3df98d0bcf949173cecef15ce1127ef852 · platform digest sha256:78d4744ead1f5b19b04d0df558ab182a5300903900755e515b2ca4d10eb2044d
    [ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.rebuild.json, bases]
  • BuildKitmoby/buildkit:v0.31.2 (image digest sha256:e0e67ea9c4bb07bdef683e29f70f3b623d1eb9c82274a9ec04e6bb0511449fb0) [ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.rebuild.json, engine]
  • Engine commit(s)
    • commit 60d7a04b778e5437820c2145a8cdf69830b66625 · dirty yes · first drive 3978
    • commit d5dd95cc70cbde883ad7cde173904a80a5a6a342 · dirty yes · first drive 4006
    • commit d731c9e0f6a9f36f56d28d09aead99eb92f2b336 · dirty yes · first drive 4033
    • commit 587a2d871bdeb624259b167291c9f2cf9dd6c1d4 · dirty yes · first drive 4056
    • commit 8a29b1c096d979944dd360a9cfa09fc16fe488b6 · dirty yes · first drive 4061
    • commit 762b14205276731d25047ecbc7e53d9425b5b471 · dirty yes · first drive 4067
    • commit 5163af4d4c1993a6202ab252a3207b9300f6e3e6 · dirty yes · first drive 4076
    • commit 12b2b288aa48f48d3d1572934777edf0602849d6 · dirty yes · first drive 4084
    [drive_runs, engine_sha]

Why this release exists

Fully recorded
  • Chain914 (created 2026-11-09T07:46:48Z · trigger customer_request · upstream version v3.7.17) [chains, chains #914]
  • Requestbuild request #552 (rebuild) (requested at 2026-11-08T04:05:52Z · requested by kitforge-agent · version v3.7.17) [build_requests, build_requests #552]
  • Reasonrevision v3.7.17-CE-ubuntu24.04-r2: same upstream version rebuilt on the chiselled runtime (slim base; retarget.py --rev-bump) [build_requests, build_requests #552 request_reason]
  • Supersedesreadystack/traefik:v3.7.17-CE-ubuntu24.04-r1 (chain 855) [chains, chains #855]

The path through the harness

Fully recorded

1 chain · 8 drives · 18 stages · 6 rewinds

Chain 914 release · ready_to_ship

Created 2026-11-09T07:46:48Z, upstream v3.7.17, build request 552 [chains, chains #914]

DriveStartedMinutesBuild hostHow it stopped
39782026-11-09T07:47:13Z3build host 4 withhold-publish stage_failed at assemble_kit; first failed check exists:first_build_digest; 4 ticks [drive_runs, drive_runs #3978]
40062026-11-09T11:41:03Z113.6build host 4 withhold-publish stage_failed at package_archive; first failed check exists:checksums; 15 ticks [drive_runs, drive_runs #4006]
40332026-11-09T14:09:54Z32.8build host 4 withhold-publish ready_to_ship at package_archive; 16 ticks [drive_runs, drive_runs #4033]
40562026-11-09T15:23:33Z3.8build host 4 withhold-publish ready_to_ship at package_archive; 2 ticks [drive_runs, drive_runs #4056]
40612026-11-09T15:44:16Z3.5build host 4 withhold-publish ready_to_ship at package_archive; 2 ticks [drive_runs, drive_runs #4061]
40672026-11-09T16:06:53Z3.6build host 4 withhold-publish ready_to_ship at package_archive; 2 ticks [drive_runs, drive_runs #4067]
40762026-11-09T16:53:05Z4.1build host 4 withhold-publish ready_to_ship at package_archive; 2 ticks [drive_runs, drive_runs #4076]
40842026-11-09T18:03:09Z—build host 4 publish-held not recorded [drive_runs, drive_runs #4084]

Stages, in order

StageFirst startPassedAttemptsGate checks passedArtifacts (SHA-256)
intake 2026-11-09T07:47:23Z2026-11-09T07:47:24Z1
4
  • exists:order_json
  • order_json:json_parses
  • order_json:no_forbidden_placeholders
  • produces_paths_exist
order_json 116af701865a…
acquire 2026-11-09T07:47:29Z2026-11-09T07:47:30Z1
12
  • exists:source_tree
  • exists:source_tree_hash
  • exists:source_file_manifest
  • exists:custody_inputs
  • exists:license_file
  • source_tree:dir_nonempty
  • source_tree_hash:json_parses
  • source_file_manifest:json_parses
  • custody_inputs:json_parses
  • license_file:file_nonempty
  • produces_paths_exist
  • custody_inputs:json_true:ce_audit.ce_only
source_tree 24f127cb5d98…
license_file c33e29340498…
custody_inputs 9e72f07c09ce…
source_tree_hash e40ed567b8c4…
source_file_manifest 1a1461b7fb2b…
plan 2026-11-09T07:48:09Z2026-11-09T07:48:09Z1
10
  • exists:recon_report
  • exists:input_pin_plan
  • exists:toolchain_lock
  • recon_report:md_min_sections:3
  • recon_report:no_forbidden_placeholders
  • input_pin_plan:md_min_sections:2
  • input_pin_plan:no_forbidden_placeholders
  • toolchain_lock:file_nonempty
  • toolchain_lock:no_forbidden_placeholders
  • produces_paths_exist
recon_report 25a978bf394e…
input_pin_plan 896423e6f14a…
toolchain_lock d0ff497b1124…
assemble_kit 2026-11-09T07:50:15Z2026-11-09T14:23:04Z3
27
  • exists:dockerfile
  • exists:base_image_digests
  • exists:system_pinning
  • exists:build_recipe
  • exists:first_build_digest
  • exists:first_boot_health
  • exists:dockerfile_offline
  • exists:verify_offline_sh
  • exists:build_offline_sh
  • exists:generate_sbom_sh
  • dockerfile:file_nonempty
  • dockerfile:no_forbidden_placeholders
  • base_image_digests:file_nonempty
  • system_pinning:file_nonempty
  • build_recipe:json_parses
  • first_build_digest:file_nonempty
  • first_boot_health:file_nonempty
  • dockerfile_offline:file_nonempty
  • dockerfile_offline:no_forbidden_placeholders
  • verify_offline_sh:file_nonempty
  • verify_offline_sh:no_forbidden_placeholders
  • build_offline_sh:file_nonempty
  • build_offline_sh:no_forbidden_placeholders
  • generate_sbom_sh:file_nonempty
  • generate_sbom_sh:no_forbidden_placeholders
  • produces_paths_exist
  • first_boot_health:file_contains:healthy=True
dockerfile 21706714c85e…
build_recipe cd5e2ce7f72d…
system_pinning aa8db05a9a8a…
build_offline_sh 6633aa31b6b4…
generate_sbom_sh ce0f1e6f1e70…
first_boot_health 184235550317…
verify_offline_sh 3e8184ea230c…
base_image_digests 58df80152d4b…
dockerfile_offline 21706714c85e…
first_build_digest 6305260732b1…
remediate 2026-11-09T11:50:48Z2026-11-09T14:23:11Z2
8
  • exists:vendored_apt
  • exists:remediation_log
  • exists:security_report
  • vendored_apt:dir_exists
  • remediation_log:json_parses
  • security_report:md_min_sections:2
  • security_report:no_forbidden_placeholders
  • produces_paths_exist
vendored_apt e3b0c44298fc…
remediation_log 01c45b6ce930…
security_report 7ea43a1c0e5e…
build_kit 2026-11-09T11:58:59Z2026-11-09T14:32:14Z2
9
  • exists:freeze_manifest
  • exists:locked_digest
  • exists:cosign_stamp
  • exists:offline_rebuild_transcript
  • freeze_manifest:json_parses
  • locked_digest:file_nonempty
  • cosign_stamp:file_nonempty
  • offline_rebuild_transcript:json_parses
  • produces_paths_exist
cosign_stamp 3c19414f7bf0…
locked_digest c6d4d905680c…
freeze_manifest 4cca0dd8dacf…
offline_rebuild_transcript e7eb4b947639…
verdict 2026-11-09T11:59:43Z2026-11-09T14:32:58Z2
8
  • exists:scout_verdict
  • scout_verdict:json_parses
  • produces_paths_exist
  • scout_verdict:release_check_passed
  • scout_verdict:nonroot_green
  • scout_verdict:zero_fixable_crit_high
  • scout_verdict:osv_clean
  • scout_verdict:no_baked_secrets
scout_verdict fad472053f61…
publish_image 2026-11-09T12:00:23Z2026-11-09T14:33:34Z2
7
  • exists:promotion_record
  • exists:hub_readme
  • promotion_record:json_parses
  • hub_readme:md_min_sections:2
  • hub_readme:no_forbidden_placeholders
  • produces_paths_exist
  • promotion_record:json_true:signed
hub_readme e70e554b62d2…
promotion_record 9ba3d8a10587…
boot_instance 2026-11-09T12:00:29Z2026-11-09T14:33:45Z4
3
  • exists:instance_handle
  • instance_handle:json_parses
  • produces_paths_exist
instance_handle cc3371fbc2c6…
sbom 2026-11-09T12:00:54Z2026-11-09T14:34:05Z2
5
  • exists:sbom_json
  • exists:sbom_md
  • sbom_json:json_parses
  • sbom_md:md_min_sections:1
  • produces_paths_exist
sbom_md 62198d66df43…
sbom_json 05712ffe3a48…
schema_discovery 2026-11-09T12:00:57Z2026-11-09T14:34:09Z2
7
  • exists:dependency_tree
  • exists:table_classification
  • exists:schema_hash
  • dependency_tree:json_parses
  • table_classification:json_parses
  • schema_hash:file_nonempty
  • produces_paths_exist
schema_hash dbe0df4a3980…
dependency_tree e3386d7c1927…
table_classification 4a8279e425e3…
admin_handbook 2026-11-09T12:15:38Z2026-11-09T14:34:17Z2
7
  • exists:admin_handbook
  • exists:api_map
  • admin_handbook:md_min_sections:10
  • admin_handbook:no_forbidden_placeholders
  • api_map:json_parses
  • produces_paths_exist
  • admin_handbook:command_transcripts_clean
api_map 04421af470e1…
admin_handbook ec18cdc80cc0…
db_handbook 2026-11-09T12:31:10Z2026-11-09T14:34:27Z2
8
  • exists:db_handbook
  • exists:seed_isolation
  • db_handbook:md_min_sections:5
  • db_handbook:no_forbidden_placeholders
  • seed_isolation:md_min_sections:1
  • seed_isolation:no_forbidden_placeholders
  • produces_paths_exist
  • db_handbook:command_transcripts_clean
db_handbook 4056cf3beec2…
seed_isolation 41b3c5f3c501…
seed_data 2026-11-09T12:31:21Z2026-11-09T14:34:37Z2
6
  • exists:seed_data_sql
  • exists:seed_cases_json
  • seed_data_sql:sql_parses
  • seed_data_sql:no_forbidden_placeholders
  • seed_cases_json:json_parses
  • produces_paths_exist
seed_data_sql c7d6f8f96200…
seed_cases_json 4d46875ef379…
seed_validate 2026-11-09T12:31:24Z2026-11-09T14:34:40Z2
3
  • exists:seed_data_contract
  • seed_data_contract:json_parses
  • produces_paths_exist
seed_data_contract 8f2cc38e1726…
usecase_validate 2026-11-09T12:31:47Z2026-11-09T14:34:54Z2
10
  • exists:usecase_contract
  • exists:passed_tests
  • exists:failed_tests
  • exists:test_results
  • usecase_contract:json_parses
  • passed_tests:md_min_sections:1
  • failed_tests:md_min_sections:1
  • test_results:json_parses
  • produces_paths_exist
  • test_results:usecase_thresholds:80,70
failed_tests b2247b16f5f7…
passed_tests 3b0aaedbf525…
test_results b42deb0799ff…
usecase_contract 7f351f8d12d0…
finalize_docs 2026-11-09T12:55:29Z2026-11-09T14:35:01Z2
9
  • exists:api_integration_guide
  • exists:release_notes
  • exists:defects_json
  • api_integration_guide:md_min_sections:3
  • api_integration_guide:no_forbidden_placeholders
  • release_notes:md_min_sections:3
  • release_notes:no_forbidden_placeholders
  • defects_json:json_parses
  • produces_paths_exist
defects_json f1be4bd82f0d…
release_notes 18da97042a2c…
api_integration_guide 606e8dffccd0…
package_archive invalidated 2026-11-09T18:02:44Z 2026-11-09T13:34:40Z2026-11-09T16:57:09Z6
35 (final gate PASS)
  • exists:checksums
  • exists:verify_md
  • exists:rebuild_md
  • exists:provenance_md
  • exists:manifest_txt
  • exists:assetchain_log_md
  • exists:assetchain_log_json
  • exists:actions_jsonl
  • exists:sale_tar
  • checksums:file_nonempty
  • verify_md:md_min_sections:2
  • verify_md:no_forbidden_placeholders
  • rebuild_md:md_min_sections:2
  • rebuild_md:no_forbidden_placeholders
  • provenance_md:md_min_sections:2
  • provenance_md:no_forbidden_placeholders
  • manifest_txt:file_nonempty
  • assetchain_log_md:md_min_sections:1
  • assetchain_log_json:json_parses
  • actions_jsonl:file_nonempty
  • sale_tar:file_nonempty
  • produces_paths_exist
  • G8 cosign
  • G8 scan_grade
  • G8 tag_base_os
  • G8 thread_exit
  • G8 vex_shipped
  • G8 cpu_baseline
  • G8 scout_grade_a
  • G8 script_copies
  • G8 offline_rebuild
  • G8 rebuild_manifest
  • G8 artifact_coverage
  • G8 trademark_shipped
  • G8 assetchain_coverage
sale_tar 341f232a337b…
checksums 230eac88abb7…
verify_md 30f8979deefd…
rebuild_md 65a97c6b37bd…
manifest_txt a301ea996347…
actions_jsonl 4fbdfcd2bf19…
provenance_md 0f912d71f59f…
assetchain_log_md e9eccaec0c0f…
assetchain_log_json f64e5bd848e4…

[stage_runs]

Rewinds

  • 2026-11-09T14:09:58Z: package_archive to assemble_kit on strategy_changed (strategy changed (97f7445a32b2 -> df320ced0de4)) [stage_events, stage_events #29090]
  • 2026-11-09T15:17:53Z: package_archive to package_archive on docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #29268]
  • 2026-11-09T15:43:24Z: package_archive to package_archive on docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #29317]
  • 2026-11-09T16:03:39Z: package_archive to package_archive on docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #29331]
  • 2026-11-09T16:30:54Z: package_archive to package_archive on docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #29380]
  • 2026-11-09T18:02:44Z: package_archive to package_archive on docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #29555]

Model work per stage

Fully recorded

Role: writer model. Calls up to 2026-11-09T16:57:09Z.

356 calls over 6 stages

StageCallsRefusedErrorsMax attemptForced commitsReal tokensLesson rules shown
plan2001 011118 L-A183, L-A15
remediate2001 012856 L-A183, L-A15
admin_handbook853703 10940880 L-A180, L-A181, L-A182, L-A183, L-A184, L-A155, L-A114, L-A25, L-A15, L-A14
db_handbook1024603 201181869 L-A180, L-A181, L-A182, L-A183, L-A184, L-A114, L-A15
usecase_validate1001 01852 L-A59
finalize_docs1648903 362054581 L-A180, L-A181, L-A182, L-A183, L-A184, L-A155, L-A114, L-A25, L-A15

[micro_step_runs] [lesson_recalls]

Review

Fully recorded

Role: review model.

5 rounds, 4 counted, $2.80 recorded cost

RoundStartedCriticalMajorMinorVerdictCostCap in forceArchive reviewed
12026-11-09T14:44:20Z 143111 findings to repackage [held_rounds, held_rounds #1636] $0.86 3 rounds, $40.00 447b0e68832d…
2 not counted2026-11-09T15:27:59Z ——— blocked to blocked [held_rounds, held_rounds #1639] — 3 rounds, $40.00 573d5dd890c5…
32026-11-09T15:48:22Z 010 findings to repackage [held_rounds, held_rounds #1645] $0.76 3 rounds, $40.00 25391919a4c6…
42026-11-09T16:11:10Z 001 clean to repackage [held_rounds, held_rounds #1647] $0.73 3 rounds, $40.00 79735a608b74…
52026-11-09T16:57:50Z 000 clean to publish [held_rounds, held_rounds #1651] $0.46 3 rounds, $40.00 341f232a337b…

Defects

Fully recorded
  • Ledger entries19 [defects, defects where product_slug=traefik and this tag or chain]
  • Disclosed in the archive19 [docs/defects/defects.json, entries]

19 ledger entries: by severity high 10, low 4, critical 5; by status fixed-before-release 19.

DefectSeverityStatusFound byFixed in
RSD-traefik-b502d704f3
Admin handbook: Documents the image HEALTHCHECK as curl; the r2 image has no curl and runs rs-probe. [defects, defects #214162]
highfixed-before-releaseheld review (review model)—
RSD-traefik-b0b11aeff1
Admin handbook: Lists an environment variable the r2 image no longer sets. [defects, defects #214163]
lowfixed-before-releaseheld review (review model)—
RSD-traefik-e09e82517d
Admin handbook: The documented ACME restore runs cp and chmod, which the slimmed r2 image no longer contains; the restore fails and acme.json is never restored. [defects, defects #214164]
criticalfixed-before-releaseheld review (review model)—
RSD-traefik-4c3927bb69
Admin handbook: The documented ACME restore runs cp and chmod, which the slimmed r2 image no longer contains; the restore fails and acme.json is never restored. [defects, defects #214165]
criticalfixed-before-releaseheld review (review model)—
RSD-traefik-c54c1efbb7
Admin handbook: Documents the image HEALTHCHECK as curl; the r2 image has no curl and runs rs-probe. [defects, defects #214166]
highfixed-before-releaseheld review (review model)—
RSD-traefik-58e283a3a9
Admin handbook: The documented ACME restore runs cp and chmod, which the slimmed r2 image no longer contains; the restore fails and acme.json is never restored. [defects, defects #214167]
criticalfixed-before-releaseheld review (review model)—
RSD-traefik-4e11f0c43d
Admin handbook: Documents the image HEALTHCHECK as curl; the r2 image has no curl and runs rs-probe. [defects, defects #214168]
highfixed-before-releaseheld review (review model)—
RSD-traefik-a07598419f
Database handbook: Documents the image HEALTHCHECK as curl; the r2 image has no curl and runs rs-probe. [defects, defects #214169]
highfixed-before-releaseheld review (review model)—
RSD-traefik-3a6db5eba2
Database handbook: Lists an environment variable the r2 image no longer sets. [defects, defects #214170]
lowfixed-before-releaseheld review (review model)—
RSD-traefik-f498d39d4f
Database handbook: Documents the image HEALTHCHECK as curl; the r2 image has no curl and runs rs-probe. [defects, defects #214171]
highfixed-before-releaseheld review (review model)—
RSD-traefik-4599ca4277
Database handbook: The documented ACME restore runs cp and chmod, which the slimmed r2 image no longer contains; the restore fails and acme.json is never restored. [defects, defects #214172]
criticalfixed-before-releaseheld review (review model)—
RSD-traefik-4320ebba1f
Database handbook: The documented ACME restore runs cp and chmod, which the slimmed r2 image no longer contains; the restore fails and acme.json is never restored. [defects, defects #214173]
criticalfixed-before-releaseheld review (review model)—
RSD-traefik-f314ba95c6
Database handbook: Documents the image HEALTHCHECK as curl; the r2 image has no curl and runs rs-probe. [defects, defects #214174]
highfixed-before-releaseheld review (review model)—
RSD-traefik-e45d731e7c
API guide: Documents the image HEALTHCHECK as curl; the r2 image has no curl and runs rs-probe. [defects, defects #214175]
highfixed-before-releaseheld review (review model)—
RSD-traefik-bd40a6d862
API guide: Lists an environment variable the r2 image no longer sets. [defects, defects #214176]
lowfixed-before-releaseheld review (review model)—
RSD-traefik-e0512df2db
API guide: Documents the image HEALTHCHECK as curl; the r2 image has no curl and runs rs-probe. [defects, defects #214177]
highfixed-before-releaseheld review (review model)—
RSD-traefik-3093c00883
API guide: Documents the image HEALTHCHECK as curl; the r2 image has no curl and runs rs-probe. [defects, defects #214178]
highfixed-before-releaseheld review (review model)—
RSD-traefik-a146019ba9
API guide: Says the image HEALTHCHECK uses the curl command; the r2 image has no curl and runs rs-probe. [defects, defects #217609]
highfixed-before-releaseheld review (review model)—
RSD-traefik-1b832d0d98
API guide: Unchanged r1 sentence made false by the image change (id removed from the slim image). [defects, defects #218736]
lowfixed-before-releaseheld review (review model)—

Verification

1 item not recorded
  • Reproduced before publishingyes (rebuilt digest sha256:9bfea0cda3b4fd214f861329996e9c7207de0cf2ce50e6c2597eea39bc36fc0a · published digest sha256:9bfea0cda3b4fd214f861329996e9c7207de0cf2ce50e6c2597eea39bc36fc0a · digest match yes · builder moby/buildkit:v0.31.2 · build seconds 231) [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, vex_shipped) [g8_result.json, result]
  • Grade at releaseA (percent 94 · tool docker scout policy 1.26.0 · config docker-default · org vex no · at 2026-11-09T18:03:32Z · failing Docker Scout counts 9 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).) [SCOUT_EVIDENCE.json, docker_scout_policy]
  • Image signatureverified on the index and the linux/amd64 manifest (key fingerprint 04daa92344a52dbc · at 2026-11-09T18:03:20Z) [docs/provenance/IMAGE_EVIDENCE.json, signed]
  • Image signature transparency-log entries [deliverables/provenance/PROMOTION_RECORD.json, sign_stdout_tail]
  • rebuild.json signatureSigstore bundle, release key (key fingerprint 04daa92344a52dbc · log index 3767693389 · transparency-log entry · integrated 2026-11-09T18:06:52Z) [ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.rebuild.json.sigstore, verificationMaterial.tlogEntries[0]]
  • Signed attestations
    • kind provenance · digest sha256:efc9929af7072f797c261a5b9e6f7c29d4dce6f1fc63008f043497619af85139 · state attached · log index 3767695979 · transparency-log entry
    • kind sbom · digest sha256:efc9929af7072f797c261a5b9e6f7c29d4dce6f1fc63008f043497619af85139 · state attached · log index 3767697456 · transparency-log entry
    • kind vsa · digest sha256:efc9929af7072f797c261a5b9e6f7c29d4dce6f1fc63008f043497619af85139 · state attached · log index 3767699114 · transparency-log entry
    • kind provenance · digest sha256:9bfea0cda3b4fd214f861329996e9c7207de0cf2ce50e6c2597eea39bc36fc0a · state attached · log index 3767700823 · transparency-log entry
    • kind sbom · digest sha256:9bfea0cda3b4fd214f861329996e9c7207de0cf2ce50e6c2597eea39bc36fc0a · state attached · log index 3767702311 · transparency-log entry
    • kind vsa · digest sha256:9bfea0cda3b4fd214f861329996e9c7207de0cf2ce50e6c2597eea39bc36fc0a · state attached · log index 3767704389 · transparency-log entry
    (at 2026-11-09T18:06:53Z) [attestations.json, results]
  • Pins recorddocs/PINS.md and docs/provenance/PINS.json in the archive (https://readystack.dev/products/traefik/recipe) [docs/provenance/PINS.json]

Offline clean-room rebuilds

  • 2026-11-09T14:44:28Z on build host 4 (Docker-in-Docker daemon with --network none): bit for bit yes, digest match yes, customer verify yes
    rebuilt sha256:9bfea0cda3b4fd214f861329996e9c7207de0cf2ce50e6c2597eea39bc36fc0a [clean-room rebuild ledger, runs[706]]
  • 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-09T14:33:34Z [stage_runs, stage_runs chain 914 stage publish_image]
  • Archive manifests written2026-11-09T18:05:12Z [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 70 · probed 2026-11-09T14:28:08Z · source build_kit) [release_images, isa_level_hard]

History

2 events
  • 2026-11-09T18:08:04Z generated: by KitForge release/build_trail.py · generator commit 5d0ff967b304c4cd787659a1843c76de2a7e8063
  • 2026-11-09T18:09:29Z publication: promoted at 2026-11-09T18:08:39Z · promoted digest sha256:efc9929af7072f797c261a5b9e6f7c29d4dce6f1fc63008f043497619af85139 · promotion method imagetools_create_retag_by_digest_no_rebuild · site event 427 · checklist status complete · checklist at 2026-11-09T18:09:29Z · record workspace: deliverables/provenance/PROMOTION_RECORD.json, RELEASE_CHECKLIST.json

Records

25 records
RecordWhere it isRows
docs/defects/defects.jsoninside the archive (ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.tar.gz)—
docs/provenance/IMAGE_EVIDENCE.jsoninside the archive (ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.tar.gz)—
docs/provenance/LOCKED_DIGEST.txtinside the archive (ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.tar.gz)—
docs/provenance/PINS.jsoninside the archive (ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.tar.gz)—
docs/provenance/REPRO_VERIFICATION.jsoninside the archive (ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.tar.gz)—
docs/provenance/SOURCE_TREE_HASH.jsoninside the archive (ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.tar.gz)—
MANIFEST.jsonbeside the archive (prodasset /data/production/traefik/v3.7.17-CE-ubuntu24.04-r2/), as staged for publishing—
PUBLISH_MANIFEST.jsonbeside the archive (prodasset /data/production/traefik/v3.7.17-CE-ubuntu24.04-r2/), as staged for publishing—
ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.rebuild.jsonbeside the archive (prodasset /data/production/traefik/v3.7.17-CE-ubuntu24.04-r2/), as staged for publishing—
ReadyStack-traefik-v3.7.17-CE-ubuntu24.04-r2.rebuild.json.sigstorebeside the archive (prodasset /data/production/traefik/v3.7.17-CE-ubuntu24.04-r2/), as staged for publishing—
SCOUT_EVIDENCE.jsonbeside the archive (prodasset /data/production/traefik/v3.7.17-CE-ubuntu24.04-r2/), as staged for publishing—
clean-room rebuild ledgerthe clean-room rebuild ledger (runstate/audit-2026-09/bit4bit.json, not published)—
build_requestssadb, ReadyStack's engine database (not published)552
chainssadb, ReadyStack's engine database (not published)914
defectssadb, ReadyStack's engine database (not published)traefik v3.7.17-CE-ubuntu24.04-r2
drive_runssadb, ReadyStack's engine database (not published)chain 914
held_roundssadb, ReadyStack's engine database (not published)chain 914
lesson_recallssadb, ReadyStack's engine database (not published)chain 914
micro_step_runssadb, ReadyStack's engine database (not published)chain 914
release_imagessadb, ReadyStack's engine database (not published)traefik v3.7.17-CE-ubuntu24.04-r2
stage_eventssadb, ReadyStack's engine database (not published)chain 914
stage_runssadb, ReadyStack's engine database (not published)chain 914
attestations.jsonthe chain's workspace on the controller (not published)—
deliverables/provenance/PROMOTION_RECORD.jsonthe chain's workspace on the controller (not published)—
g8_result.jsonthe chain's workspace on the controller (not published)—