Keycloak 26.8.1-CE-ubuntu24.04-r3 build trail

How ReadyStack built readystack/keycloak:26.8.1-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
  • Imagereadystack/keycloak:26.8.1-CE-ubuntu24.04-r3
  • Index digestsha256:61a8c04cab74d2ec36d563c23e51a49dc9f11655802161dc06f6651d05d2c475
  • linux/amd64 digestsha256:7e1dd80561de9f4944c9f3a8e6adcf7b4c05afb798e5e2a9e18cbef366c6f87b
  • ArchiveReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.tar.gz
  • Archive SHA-256 nowf243661da2e7cc1f59cf2f6e14add37774a4a14a272867a00d63fe6d17fe7fc4
  • Pins recorddocs/PINS.md, docs/provenance/PINS.json in the archive (since generated)
  • Generated2026-11-05T06:27:35Z 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-keycloak-26.8.1-CE-ubuntu24.04-r3.trail.json.sigstore ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.trail.json

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

Identity

Fully recorded
  • ProductKeycloak (keycloak) [MANIFEST.json]
  • Release tag26.8.1-CE-ubuntu24.04-r3 [MANIFEST.json]
  • Imagereadystack/keycloak:26.8.1-CE-ubuntu24.04-r3 [MANIFEST.json]
  • Image index digestsha256:61a8c04cab74d2ec36d563c23e51a49dc9f11655802161dc06f6651d05d2c475 [docs/provenance/LOCKED_DIGEST.txt]
  • linux/amd64 image digestsha256:7e1dd80561de9f4944c9f3a8e6adcf7b4c05afb798e5e2a9e18cbef366c6f87b [ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.rebuild.json, subject.image_manifest_digest]
  • ArchiveReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.tar.gz (bytes 2206596579) [MANIFEST.json]
  • Archive sha256 at publishf243661da2e7cc1f59cf2f6e14add37774a4a14a272867a00d63fe6d17fe7fc4 [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/keycloak/keycloak [docs/provenance/SOURCE_TREE_HASH.json]
  • Upstream ref26.8.1 [docs/provenance/SOURCE_TREE_HASH.json]
  • Upstream commit24ed1dadf3f246a555adb6d3d4a99e9b3003fb3b [docs/provenance/SOURCE_TREE_HASH.json]
  • Source tree hash4787a735c31b3e1067f077e18be438cdfee9609504b302855f5cb8e82d46183b (files 13489) [docs/provenance/SOURCE_TREE_HASH.json, tree_listing_sha256 (sha256 of the sorted file listing)]
  • Kit tree hashsha256:bfd55a3537e84b5e75ca5af94303a3ea85b637bf3b5ddccbe940762584de8df9 [ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.rebuild.json, inputs.tree_hash]
  • SOURCE_DATE_EPOCH1791878921 (utc 2026-10-13T08:08:41Z) [ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.rebuild.json, inputs.source_date_epoch]
  • Base images
    • ref eclipse-temurin:21-jre-noble@sha256:161310cd5bd41fd549d19cf9f90b614897cb4a1532555c613b43b7e0628fe5d6 · platform digest sha256:db724162e4ff5f71fa0a2815026314d9e5e0e9a139f49be1d4717e6930e93341
    • ref maven:3.9.8-eclipse-temurin-21@sha256:de18e4e51396ad9266f76669779ed6d6b49fbb0f45ed6f39169d87378d548d7d · platform digest sha256:6847cbbf21e159f97819f18336cf6bbc24a89f9eb6439317520d93f904e9a916
    [ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.rebuild.json, bases]
  • BuildKitmoby/buildkit:v0.31.2 (image digest sha256:e0e67ea9c4bb07bdef683e29f70f3b623d1eb9c82274a9ec04e6bb0511449fb0) [ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.rebuild.json, engine]
  • Engine commit(s)
    • commit f2b315730b18edeb7d76a7f9321303dc1de25083 · dirty yes · first drive 3494
    • commit b1883889c688b471b91aac89c56c6d4da0ee25dc · dirty yes · first drive 3503
    • commit 365a624fc69da14f0fe38c698c9f4af5f4ee920f · dirty yes · first drive 3505
    [drive_runs, engine_sha]

Why this release exists

Fully recorded
  • Chain814 (created 2026-11-05T04:21:52Z · trigger customer_request · upstream version 26.8.1) [chains, chains #814]
  • Requestbuild request #495 (rebuild) (requested at 2026-11-05T04:21:03Z · requested by kitforge-agent · version 26.8.1) [build_requests, build_requests #495]
  • Reasonrerelease agenda REVISION -> 26.8.1-CE-ubuntu24.04-r3 (decay loop, IMP-08) [build_requests, build_requests #495 request_reason]
  • Supersedesreadystack/keycloak:26.8.1-CE-ubuntu24.04-r2 (chain 684) [chains, chains #684]

The path through the harness

Fully recorded

1 chain · 4 drives · 18 stages · 3 rewinds

Chain 814 release · ready_to_ship

Created 2026-11-05T04:21:52Z, upstream 26.8.1, build request 495 [chains, chains #814]

DriveStartedMinutesBuild hostHow it stopped
34942026-11-05T04:22:58Z51.7build host 1 withhold-publish ready_to_ship at package_archive; 19 ticks [drive_runs, drive_runs #3494]
35032026-11-05T05:37:25Z10.6build host 1 withhold-publish ready_to_ship at package_archive; 2 ticks [drive_runs, drive_runs #3503]
35052026-11-05T05:54:03Z2.9build host 1 publish-held infra_hub_rate_limit at package_archive; 1 tick [drive_runs, drive_runs #3505]
35082026-11-05T06:14:02Z—build host 1 publish-held not recorded [drive_runs, drive_runs #3508]

Stages, in order

StageFirst startPassedAttemptsGate checks passedArtifacts (SHA-256)
intake 2026-11-05T04:23:09Z2026-11-05T04:23:10Z1
4
  • exists:order_json
  • order_json:json_parses
  • order_json:no_forbidden_placeholders
  • produces_paths_exist
order_json 9491cc55a20b…
acquire 2026-11-05T04:23:21Z2026-11-05T04:23:23Z1
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 2b7023f3a809…
license_file cfc7749b96f6…
custody_inputs e6252930734f…
source_tree_hash 44fe67ccbeda…
source_file_manifest 396a3dbf2fa5…
plan 2026-11-05T04:24:15Z2026-11-05T04:24:16Z1
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 39f9591c1d7e…
input_pin_plan 3b954b04d38f…
toolchain_lock 9774e3a82602…
assemble_kit 2026-11-05T04:42:05Z2026-11-05T04:42:05Z1
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 77db1350faba…
build_recipe 1e9626a8c52f…
system_pinning fa091140511e…
build_offline_sh 6633aa31b6b4…
generate_sbom_sh ce0f1e6f1e70…
first_boot_health fb632e10fb9c…
verify_offline_sh 3e8184ea230c…
base_image_digests d8333cbb49c2…
dockerfile_offline 77db1350faba…
first_build_digest 30f326ead99c…
remediate 2026-11-05T04:43:15Z2026-11-05T04:43:15Z1
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 2a7c9c60e9b0…
security_report 94eba16dd070…
build_kit 2026-11-05T04:53:19Z2026-11-05T04:53:20Z1
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 bdbad2e90aa9…
locked_digest d6bd6a592d4c…
freeze_manifest 12ebc7d7b8b9…
offline_rebuild_transcript 61a5c3643fc0…
verdict 2026-11-05T04:54:55Z2026-11-05T04:54:56Z1
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 9448c93ee529…
publish_image 2026-11-05T04:55:51Z2026-11-05T04:55:52Z1
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 d66d57c5364b…
promotion_record e4e5d25e6f9f…
boot_instance 2026-11-05T04:56:39Z2026-11-05T04:56:42Z2
3
  • exists:instance_handle
  • instance_handle:json_parses
  • produces_paths_exist
instance_handle 2b9fd665b10a…
sbom 2026-11-05T04:57:05Z2026-11-05T04:57:06Z1
5
  • exists:sbom_json
  • exists:sbom_md
  • sbom_json:json_parses
  • sbom_md:md_min_sections:1
  • produces_paths_exist
sbom_md d3404afcaf09…
sbom_json a1a1522567f0…
schema_discovery 2026-11-05T04:57:09Z2026-11-05T04:57:09Z1
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 eeb3d6b3b4fa…
dependency_tree 09b63ba164a9…
table_classification 5d9d661dcc1b…
admin_handbook 2026-11-05T04:57:17Z2026-11-05T04:57:18Z1
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 781d0d05b3cb…
admin_handbook 7d9f20acf83b…
db_handbook 2026-11-05T04:57:28Z2026-11-05T04:57:29Z1
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 871979825c8f…
seed_isolation 53ce2b5dc035…
seed_data 2026-11-05T04:57:34Z2026-11-05T04:57:35Z1
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 efab968dd7ac…
seed_cases_json 294c499165cc…
seed_validate 2026-11-05T04:57:37Z2026-11-05T04:57:38Z1
3
  • exists:seed_data_contract
  • seed_data_contract:json_parses
  • produces_paths_exist
seed_data_contract b71df9240454…
usecase_validate 2026-11-05T04:57:58Z2026-11-05T04:57:58Z1
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 627f5e8808bd…
test_results aedcd6af9f64…
usecase_contract 8edafbf26b6f…
finalize_docs 2026-11-05T04:58:05Z2026-11-05T04:58:06Z1
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 bae6486dab03…
release_notes 97532bec2247…
api_integration_guide 78c3d081f99b…
package_archive invalidated 2026-11-05T05:53:41Z 2026-11-05T05:14:33Z2026-11-05T05:48:01Z2
34 (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 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 5434ac7e02f7…
checksums 03e2ccd8df32…
verify_md 3e7b70563f64…
rebuild_md 4860b3255f64…
manifest_txt 39be010abee4…
actions_jsonl 5c7ee809b0e4…
provenance_md e1b49880a57d…
assetchain_log_md e9eccaec0c0f…
assetchain_log_json 7766cfa96644…

[stage_runs]

Rewinds

  • 2026-11-05T05:36:14Z: package_archive to package_archive on docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #22765]
  • 2026-11-05T05:53:41Z: package_archive to package_archive on docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #22794]
  • 2026-11-05T06:13:38Z: package_archive to package_archive on docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #22807]

Model work per stage

Fully recorded

Role: writer model. Calls up to 2026-11-05T05:48:01Z.

5 calls over 3 stages

StageCallsRefusedErrorsMax attemptForced commitsReal tokensLesson rules shown
plan2001 019030 L-A183, L-A15
remediate2001 020748 L-A183, L-A15
usecase_validate1001 01852 L-A59

[micro_step_runs] [lesson_recalls]

Review

Fully recorded

Role: review model.

2 rounds, 2 counted, $0.58 recorded cost

RoundStartedCriticalMajorMinorVerdictCostCap in forceArchive reviewed
12026-11-05T05:15:41Z 010 findings to repackage [held_rounds, held_rounds #1399] $0.33 3 rounds, $40.00 d54888672c6c…
22026-11-05T05:48:21Z 000 clean to publish [held_rounds, held_rounds #1401] $0.25 3 rounds, $40.00 5434ac7e02f7…

Defects

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

1 ledger entry: by severity high 1; by status fixed-before-release 1.

DefectSeverityStatusFound byFixed in
RSD-keycloak-d3f60d9955
Admin handbook: Stale superseded tag r2 in the derived-image Dockerfile [defects, defects #154291]
highfixed-before-releaseheld review (review model)—

Verification

1 item not recorded
  • Reproduced before publishingyes (rebuilt digest sha256:7e1dd80561de9f4944c9f3a8e6adcf7b4c05afb798e5e2a9e18cbef366c6f87b · published digest sha256:7e1dd80561de9f4944c9f3a8e6adcf7b4c05afb798e5e2a9e18cbef366c6f87b · digest match yes · builder moby/buildkit:v0.31.2 · build seconds 282) [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-05T06:14:25Z · failing Docker Scout counts 118 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-05T06:14:11Z) [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 3692718393 · transparency-log entry · integrated 2026-11-05T06:24:53Z) [ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.rebuild.json.sigstore, verificationMaterial.tlogEntries[0]]
  • Signed attestations
    • kind provenance · digest sha256:61a8c04cab74d2ec36d563c23e51a49dc9f11655802161dc06f6651d05d2c475 · state attached · log index 3692719339 · transparency-log entry
    • kind sbom · digest sha256:61a8c04cab74d2ec36d563c23e51a49dc9f11655802161dc06f6651d05d2c475 · state attached · log index 3692719498 · transparency-log entry
    • kind vsa · digest sha256:61a8c04cab74d2ec36d563c23e51a49dc9f11655802161dc06f6651d05d2c475 · state attached · log index 3692719693 · transparency-log entry
    • kind provenance · digest sha256:7e1dd80561de9f4944c9f3a8e6adcf7b4c05afb798e5e2a9e18cbef366c6f87b · state attached · log index 3692719816 · transparency-log entry
    • kind sbom · digest sha256:7e1dd80561de9f4944c9f3a8e6adcf7b4c05afb798e5e2a9e18cbef366c6f87b · state attached · log index 3692719924 · transparency-log entry
    • kind vsa · digest sha256:7e1dd80561de9f4944c9f3a8e6adcf7b4c05afb798e5e2a9e18cbef366c6f87b · state attached · log index 3692720079 · transparency-log entry
    (at 2026-11-05T06:24:54Z) [attestations.json, results]
  • Pins recorddocs/PINS.md and docs/provenance/PINS.json in the archive (https://readystack.dev/products/keycloak/recipe) [docs/provenance/PINS.json]

Offline clean-room rebuilds

  • 2026-11-05T05:15:52Z on build host 1 (Docker-in-Docker daemon with --network none): bit for bit yes, digest match yes, customer verify yes
    rebuilt sha256:7e1dd80561de9f4944c9f3a8e6adcf7b4c05afb798e5e2a9e18cbef366c6f87b [clean-room rebuild ledger, runs[582]]
  • 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-05T04:55:52Z [stage_runs, stage_runs chain 814 stage publish_image]
  • Archive manifests written2026-11-05T06:19:58Z [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 831 · probed 2026-11-05T04:48:22Z · source build_kit) [release_images, isa_level_hard]

History

2 events
  • 2026-11-05T06:27:35Z generated: by KitForge release/build_trail.py · generator commit 0b0b49742169bfecdad3103abf303ffea6fe24dd
  • 2026-11-05T06:30:51Z publication: promoted at 2026-11-05T06:28:44Z · promoted digest sha256:61a8c04cab74d2ec36d563c23e51a49dc9f11655802161dc06f6651d05d2c475 · promotion method imagetools_create_retag_by_digest_no_rebuild · site event 316 · checklist status complete · checklist at 2026-11-05T06:30:51Z · record workspace: deliverables/provenance/PROMOTION_RECORD.json, RELEASE_CHECKLIST.json

Records

25 records
RecordWhere it isRows
docs/defects/defects.jsoninside the archive (ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.tar.gz)—
docs/provenance/IMAGE_EVIDENCE.jsoninside the archive (ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.tar.gz)—
docs/provenance/LOCKED_DIGEST.txtinside the archive (ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.tar.gz)—
docs/provenance/PINS.jsoninside the archive (ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.tar.gz)—
docs/provenance/REPRO_VERIFICATION.jsoninside the archive (ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.tar.gz)—
docs/provenance/SOURCE_TREE_HASH.jsoninside the archive (ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.tar.gz)—
MANIFEST.jsonbeside the archive (prodasset /data/production/keycloak/26.8.1-CE-ubuntu24.04-r3/), as staged for publishing—
PUBLISH_MANIFEST.jsonbeside the archive (prodasset /data/production/keycloak/26.8.1-CE-ubuntu24.04-r3/), as staged for publishing—
ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.rebuild.jsonbeside the archive (prodasset /data/production/keycloak/26.8.1-CE-ubuntu24.04-r3/), as staged for publishing—
ReadyStack-keycloak-26.8.1-CE-ubuntu24.04-r3.rebuild.json.sigstorebeside the archive (prodasset /data/production/keycloak/26.8.1-CE-ubuntu24.04-r3/), as staged for publishing—
SCOUT_EVIDENCE.jsonbeside the archive (prodasset /data/production/keycloak/26.8.1-CE-ubuntu24.04-r3/), 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)495
chainssadb, ReadyStack's engine database (not published)814
defectssadb, ReadyStack's engine database (not published)keycloak 26.8.1-CE-ubuntu24.04-r3
drive_runssadb, ReadyStack's engine database (not published)chain 814
held_roundssadb, ReadyStack's engine database (not published)chain 814
lesson_recallssadb, ReadyStack's engine database (not published)chain 814
micro_step_runssadb, ReadyStack's engine database (not published)chain 814
release_imagessadb, ReadyStack's engine database (not published)keycloak 26.8.1-CE-ubuntu24.04-r3
stage_eventssadb, ReadyStack's engine database (not published)chain 814
stage_runssadb, ReadyStack's engine database (not published)chain 814
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)—