Qdrant v1.20.0-CE-ubuntu24.04-r2 build trail
How ReadyStack built readystack/qdrant:v1.20.0-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- Image
readystack/qdrant:v1.20.0-CE-ubuntu24.04-r2 - Index digestsha256:b9ff9d7d82bad7e4a953d82e4f84b723a1d4e1095a8bcbb6befd6e05ed6ca704
- linux/amd64 digestsha256:0559f7a48bc9de9f02d344de420896ea02d75c4b5679f668e2a1344c710b49d3
- Archive
ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.tar.gz - Archive SHA-256 now0ae88f669e584d31276e590ac4d7c968c4612613319d64741b06c35798b3b6a0
- Pins record
docs/PINS.md,docs/provenance/PINS.jsonin the archive (since generated) - Generated2026-11-07T11:44:47Z 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-qdrant-v1.20.0-CE-ubuntu24.04-r2.trail.json.sigstore ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.trail.json
IdentityWhy this release existsThe path through the harnessModel work per stageReviewDefectsVerificationPublicationPackages and CPU level
Identity
Fully recorded- ProductQdrant (qdrant) [MANIFEST.json]
- Release tagv1.20.0-CE-ubuntu24.04-r2 [MANIFEST.json]
- Imagereadystack/qdrant:v1.20.0-CE-ubuntu24.04-r2 [MANIFEST.json]
- Image index digestsha256:b9ff9d7d82bad7e4a953d82e4f84b723a1d4e1095a8bcbb6befd6e05ed6ca704 [docs/provenance/LOCKED_DIGEST.txt]
- linux/amd64 image digestsha256:0559f7a48bc9de9f02d344de420896ea02d75c4b5679f668e2a1344c710b49d3 [ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.rebuild.json, subject.image_manifest_digest]
- ArchiveReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.tar.gz (bytes 960500096) [MANIFEST.json]
- Archive sha256 at publish0ae88f669e584d31276e590ac4d7c968c4612613319d64741b06c35798b3b6a0 [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/qdrant/qdrant [docs/provenance/SOURCE_TREE_HASH.json]
- Upstream refv1.20.0 [docs/provenance/SOURCE_TREE_HASH.json]
- Upstream commit222b2e44ab1c3f17e8246396ead6558e45041df7 [docs/provenance/SOURCE_TREE_HASH.json]
- Source tree hashbc30416de080085f7fc15dc32f93166d53e4197246b8ba11c766383fb9df7f2a (files 2556) [docs/provenance/SOURCE_TREE_HASH.json, tree_listing_sha256 (sha256 of the sorted file listing)]
- Kit tree hashsha256:c2c9e540344fa0e16a9748277b740846364dbf2abf8d3424766c316c0a118079 [ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.rebuild.json, inputs.tree_hash]
- SOURCE_DATE_EPOCH1792604709 (utc 2026-10-21T17:45:09Z) [ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.rebuild.json, inputs.source_date_epoch]
- Base images
- ref rust:1.98.1-bookworm@sha256:93ce27a88655056a51dbdd8f5f2d7ddc071c7b0070fb288a37b5a285fc83971e · platform digest sha256:c49256cbe5ea0188bc658a689500d70c41eb51f009a7a7be209caf60a944f3ec
- ref ubuntu:24.04@sha256:fe81560990fae86dc4743202b2cb4d3df98d0bcf949173cecef15ce1127ef852 · platform digest sha256:78d4744ead1f5b19b04d0df558ab182a5300903900755e515b2ca4d10eb2044d
- BuildKitmoby/buildkit:v0.31.2 (image digest sha256:e0e67ea9c4bb07bdef683e29f70f3b623d1eb9c82274a9ec04e6bb0511449fb0) [ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.rebuild.json, engine]
- Engine commit(s)
- commit 0185b65902e7de72275f275e796ced5f2061c824 · dirty yes · first drive 3619
- commit 373d3c6436c70a6b11e2c6f6d2aa49fc56a5a5c1 · dirty yes · first drive 3656
Why this release exists
Fully recorded- Chain851 (created 2026-11-07T08:13:48Z · trigger customer_request · upstream version v1.20.0) [chains, chains #851]
- Requestbuild request #519 (rebuild) (requested at 2026-11-07T02:01:35Z · requested by kitforge-agent · version v1.20.0) [build_requests, build_requests #519]
- Reasonrerelease agenda REVISION -> v1.20.0-CE-ubuntu24.04-r2 (decay loop, IMP-08) [build_requests, build_requests #519 request_reason]
- Supersedesreadystack/qdrant:v1.20.0-CE-ubuntu24.04-r1 (chain 705) [chains, chains #705]
The path through the harness
Fully recorded1 chain · 2 drives · 18 stages · 1 rewind
Chain 851 release · ready_to_ship
Created 2026-11-07T08:13:48Z, upstream v1.20.0, build request 519 [chains, chains #851]
| Drive | Started | Minutes | Build host | How it stopped |
|---|---|---|---|---|
| 3619 | 2026-11-07T08:14:25Z | 148.7 | build host 1 withhold-publish | ready_to_ship at package_archive; 19 ticks [drive_runs, drive_runs #3619] |
| 3656 | 2026-11-07T11:36:14Z | — | build host 1 publish-held | not recorded [drive_runs, drive_runs #3656] |
Stages, in order
| Stage | First start | Passed | Attempts | Gate checks passed | Artifacts (SHA-256) |
|---|---|---|---|---|---|
intake |
2026-11-07T08:14:35Z | 2026-11-07T08:14:36Z | 1 | 4
|
order_json 7ba8d247c525… |
acquire |
2026-11-07T08:14:41Z | 2026-11-07T08:14:42Z | 1 | 12
|
source_tree 33396dafe85a…license_file 210b508429e9…custody_inputs e181b54a440d…source_tree_hash 40e1037f0c8e…source_file_manifest f775435921d1… |
plan |
2026-11-07T08:15:15Z | 2026-11-07T08:15:15Z | 1 | 10
|
recon_report 973f6d6f1d62…input_pin_plan 77a412286384…toolchain_lock de0f49727d58… |
assemble_kit |
2026-11-07T08:52:35Z | 2026-11-07T08:52:36Z | 1 | 27
|
dockerfile bb2cab5dbcee…build_recipe 3302109bbef7…system_pinning fa091140511e…build_offline_sh 6633aa31b6b4…generate_sbom_sh ce0f1e6f1e70…first_boot_health 7713bd3868ce…verify_offline_sh 3e8184ea230c…base_image_digests 2a9c0fbe46a1…dockerfile_offline bb2cab5dbcee…first_build_digest 7dac548ae2c5… |
remediate |
2026-11-07T08:53:14Z | 2026-11-07T08:53:14Z | 1 | 8
|
vendored_apt e3b0c44298fc…remediation_log 3b62c5e88026…security_report 0c434e4c3801… |
build_kit |
2026-11-07T10:00:45Z | 2026-11-07T10:00:46Z | 1 | 9
|
cosign_stamp 5c34cf915e06…locked_digest bf1897fba491…freeze_manifest ceb3b3d46c9f…offline_rebuild_transcript 184bfb9c07e8… |
verdict |
2026-11-07T10:01:41Z | 2026-11-07T10:01:43Z | 1 | 8
|
scout_verdict 2a6dbc42da76… |
publish_image |
2026-11-07T10:02:26Z | 2026-11-07T10:02:26Z | 1 | 7
|
hub_readme 29de9d06e550…promotion_record 3f3c09541f3d… |
boot_instance |
2026-11-07T10:02:32Z | 2026-11-07T10:02:35Z | 2 | 3
|
instance_handle 032fbab76adc… |
sbom |
2026-11-07T10:02:49Z | 2026-11-07T10:02:50Z | 1 | 5
|
sbom_md 1f7c10d3d99f…sbom_json 3891b6daf318… |
schema_discovery |
2026-11-07T10:02:52Z | 2026-11-07T10:02:53Z | 1 | 7
|
schema_hash 1746c48c8a96…dependency_tree 9531f5668f67…table_classification c5779ba9df2d… |
admin_handbook |
2026-11-07T10:03:00Z | 2026-11-07T10:03:00Z | 1 | 7
|
api_map 2e6f7ebc6708…admin_handbook 3b2d234b941f… |
db_handbook |
2026-11-07T10:03:09Z | 2026-11-07T10:03:10Z | 1 | 8
|
db_handbook 9a6a6320432c…seed_isolation 6995f310d576… |
seed_data |
2026-11-07T10:03:14Z | 2026-11-07T10:03:15Z | 1 | 6
|
seed_data_sql bc0f386cb6ab…seed_cases_json 313f86b19b90… |
seed_validate |
2026-11-07T10:03:17Z | 2026-11-07T10:03:18Z | 1 | 3
|
seed_data_contract 653078e7308f… |
usecase_validate |
2026-11-07T10:03:38Z | 2026-11-07T10:03:39Z | 1 | 10
|
failed_tests 18c89feeaa48…passed_tests 5425bddf1788…test_results d7e5c6e9e07d…usecase_contract 7a1c2e2a7184… |
finalize_docs |
2026-11-07T10:03:44Z | 2026-11-07T10:03:45Z | 1 | 9
|
defects_json 648d35e3165d…release_notes c9175d4d2046…api_integration_guide b802bbf74e41… |
package_archive invalidated 2026-11-07T11:35:36Z |
2026-11-07T10:43:00Z | 2026-11-07T10:43:03Z | 1 | 34 (final gate PASS)
|
sale_tar 8cdacb3128d2…checksums 01e3021d208e…verify_md fa6d553ab15e…rebuild_md 2adfe860cf59…manifest_txt 5133b504f623…actions_jsonl 2eca7313b0d7…provenance_md c333dcbc4674…assetchain_log_md e9eccaec0c0f…assetchain_log_json 3d06c6073edf… |
[stage_runs]
Rewinds
- 2026-11-07T11:35:36Z:
package_archivetopackage_archiveon docs_redo (scripts/redo-docs.py --stage package_archive) [stage_events, stage_events #24758]
Model work per stage
Fully recordedRole: writer model. Calls up to 2026-11-07T10:43:03Z.
5 calls over 3 stages
| Stage | Calls | Refused | Errors | Max attempt | Forced commits | Real tokens | Lesson rules shown |
|---|---|---|---|---|---|---|---|
plan | 2 | 0 | 0 | 1 | 0 | 6911 | — |
remediate | 2 | 0 | 0 | 1 | 0 | 10063 | L-A08, L-038, L-036, L-034, L-032 |
usecase_validate | 1 | 0 | 0 | 1 | 0 | 1789 | — |
[micro_step_runs] [lesson_recalls]
Review
Fully recordedRole: review model.
1 round, 1 counted, $0.23 recorded cost
| Round | Started | Critical | Major | Minor | Verdict | Cost | Cap in force | Archive reviewed |
|---|---|---|---|---|---|---|---|---|
| 1 | 2026-11-07T10:43:59Z | 0 | 0 | 0 | clean to publish [held_rounds, held_rounds #1460] | $0.23 | 3 rounds, $40.00 | 8cdacb3128d2… |
Defects
Fully recorded- Ledger entries12 [defects, defects where product_slug=qdrant and this tag or chain]
- Disclosed in the archive1 [docs/defects/defects.json, entries]
12 ledger entries: by severity high 1, low 11; by status open 1, fixed-in-release 11.
| Defect | Severity | Status | Found by | Fixed in |
|---|---|---|---|---|
RSD-qdrant-c84c9db17eUnauthenticated access by default [defects, defects #167935] | high | open | build strategy record | — |
RSD-qdrant-2ee1e20697Admin handbook: Absolute prohibition ('never a host directory') contradicts line 539 of the same handbook and DB_HANDBOOK.md lines 406 and 460, which allow a host directory writable by uid 999 (round-3 minor,… [defects, defects #168672] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-6a1506d9e2Database handbook: 'must run with a named volume' is an absolute requirement; the same handbook (lines 406, 460, 704, 787) says a host directory writable by uid 999 works. [defects, defects #168673] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-966a5e9696Database handbook: 'works only if it is owned by uid 999' overstates: what matters is that uid 999 can write to the directory (group or other write permission also suffices); line 352 of the same handbook says… [defects, defects #168674] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-17415ba9c5Database handbook: Same wrong symptom. [defects, defects #168675] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-fc1c34c3aeAdmin handbook: Misstates the failure of the tar restore without -i: Qdrant does not fail at start, it starts empty (silent empty database); the quoted error belongs to the full-snapshot copy step. [defects, defects #168676] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-a54b359df3Database handbook: Same wrong symptom: the container does not fail to start, it starts with an empty database. [defects, defects #168677] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-662735ad72Database handbook: Same wrong symptom (tar creates no file; Qdrant starts empty rather than failing). [defects, defects #168678] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-5d8ecf72feDatabase handbook: The dashboard page is served without a key (it asks for the key in the browser), contradicting 'every endpoint'. [defects, defects #168679] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-a71fad0216Database handbook: 'layer-by-layer provenance' is not in any shipped record. [defects, defects #168680] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-a59eadd66cAdmin handbook: Garbled sentence: the flag is never named; 'Keep the S:' is unreadable (the neighbouring 'Keep the -i:' is fine). [defects, defects #168681] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
RSD-qdrant-4239eb2ca5Admin handbook: Wrong direction: copying out cannot break Qdrant. [defects, defects #168682] | low | fixed-in-release | held review (review model) | v1.20.0-CE-ubuntu24.04-r2 |
Verification
1 item not recorded- Reproduced before publishingyes (rebuilt digest sha256:0559f7a48bc9de9f02d344de420896ea02d75c4b5679f668e2a1344c710b49d3 · published digest sha256:0559f7a48bc9de9f02d344de420896ea02d75c4b5679f668e2a1344c710b49d3 · digest match yes · builder moby/buildkit:v0.31.2 · build seconds 2017) [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-07T11:36:35Z · failing Docker Scout counts 96 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-07T11:36:25Z) [docs/provenance/IMAGE_EVIDENCE.json, signed]
- Image signature transparency-log entries
- log index 3735179603 · transparency-log entry
- log index 3735182057 · transparency-log entry
- rebuild.json signatureSigstore bundle, release key (key fingerprint 04daa92344a52dbc · log index 3737093586 · transparency-log entry · integrated 2026-11-07T11:43:00Z) [ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.rebuild.json.sigstore, verificationMaterial.tlogEntries[0]]
- Signed attestations
- kind provenance · digest sha256:b9ff9d7d82bad7e4a953d82e4f84b723a1d4e1095a8bcbb6befd6e05ed6ca704 · state attached · log index 3737102758 · transparency-log entry
- kind sbom · digest sha256:b9ff9d7d82bad7e4a953d82e4f84b723a1d4e1095a8bcbb6befd6e05ed6ca704 · state attached · log index 3737105056 · transparency-log entry
- kind vsa · digest sha256:b9ff9d7d82bad7e4a953d82e4f84b723a1d4e1095a8bcbb6befd6e05ed6ca704 · state attached · log index 3737108014 · transparency-log entry
- kind provenance · digest sha256:0559f7a48bc9de9f02d344de420896ea02d75c4b5679f668e2a1344c710b49d3 · state attached · log index 3737110949 · transparency-log entry
- kind sbom · digest sha256:0559f7a48bc9de9f02d344de420896ea02d75c4b5679f668e2a1344c710b49d3 · state attached · log index 3737113063 · transparency-log entry
- kind vsa · digest sha256:0559f7a48bc9de9f02d344de420896ea02d75c4b5679f668e2a1344c710b49d3 · state attached · log index 3737115896 · transparency-log entry
- Pins recorddocs/PINS.md and docs/provenance/PINS.json in the archive (https://readystack.dev/products/qdrant/recipe) [docs/provenance/PINS.json]
Offline clean-room rebuilds
- 2026-11-07T10:44:06Z on build host 1 (Docker-in-Docker daemon with --network none): bit for bit yes, digest match yes, customer verify yes
rebuilt sha256:0559f7a48bc9de9f02d344de420896ea02d75c4b5679f668e2a1344c710b49d3 [clean-room rebuild ledger, runs[623]]
- 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-07T10:02:26Z [stage_runs, stage_runs chain 851 stage publish_image]
- Archive manifests written2026-11-07T11:40:28Z [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 743 · probed 2026-11-07T09:26:51Z · source build_kit) [release_images, isa_level_hard]
History
2 events- 2026-11-07T11:44:47Z generated: by KitForge release/build_trail.py · generator commit 373d3c6436c70a6b11e2c6f6d2aa49fc56a5a5c1
- 2026-11-07T11:46:33Z publication: promoted at 2026-11-07T11:45:29Z · promoted digest sha256:b9ff9d7d82bad7e4a953d82e4f84b723a1d4e1095a8bcbb6befd6e05ed6ca704 · promotion method imagetools_create_retag_by_digest_no_rebuild · site event 349 · checklist status complete · checklist at 2026-11-07T11:46:33Z · 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-qdrant-v1.20.0-CE-ubuntu24.04-r2.tar.gz) | — |
docs/provenance/IMAGE_EVIDENCE.json | inside the archive (ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.tar.gz) | — |
docs/provenance/LOCKED_DIGEST.txt | inside the archive (ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.tar.gz) | — |
docs/provenance/PINS.json | inside the archive (ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.tar.gz) | — |
docs/provenance/REPRO_VERIFICATION.json | inside the archive (ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.tar.gz) | — |
docs/provenance/SOURCE_TREE_HASH.json | inside the archive (ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.tar.gz) | — |
MANIFEST.json | beside the archive (prodasset /data/production/qdrant/v1.20.0-CE-ubuntu24.04-r2/), as staged for publishing | — |
PUBLISH_MANIFEST.json | beside the archive (prodasset /data/production/qdrant/v1.20.0-CE-ubuntu24.04-r2/), as staged for publishing | — |
ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.rebuild.json | beside the archive (prodasset /data/production/qdrant/v1.20.0-CE-ubuntu24.04-r2/), as staged for publishing | — |
ReadyStack-qdrant-v1.20.0-CE-ubuntu24.04-r2.rebuild.json.sigstore | beside the archive (prodasset /data/production/qdrant/v1.20.0-CE-ubuntu24.04-r2/), as staged for publishing | — |
SCOUT_EVIDENCE.json | beside the archive (prodasset /data/production/qdrant/v1.20.0-CE-ubuntu24.04-r2/), 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) | 519 |
chains | sadb, ReadyStack's engine database (not published) | 851 |
defects | sadb, ReadyStack's engine database (not published) | qdrant v1.20.0-CE-ubuntu24.04-r2 |
drive_runs | sadb, ReadyStack's engine database (not published) | chain 851 |
held_rounds | sadb, ReadyStack's engine database (not published) | chain 851 |
lesson_recalls | sadb, ReadyStack's engine database (not published) | chain 851 |
micro_step_runs | sadb, ReadyStack's engine database (not published) | chain 851 |
release_images | sadb, ReadyStack's engine database (not published) | qdrant v1.20.0-CE-ubuntu24.04-r2 |
stage_events | sadb, ReadyStack's engine database (not published) | chain 851 |
stage_runs | sadb, ReadyStack's engine database (not published) | chain 851 |
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) | — |