Gitea v28.2.0-CE-ubuntu24.04-r2 build trail
How ReadyStack built readystack/gitea:v28.2.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/gitea:v28.2.0-CE-ubuntu24.04-r2 - Index digestsha256:0ab0f2303257a43f59f942ac9b6d68046bceb5a6859fd7a594889a293e6ac00d
- linux/amd64 digestsha256:2ed51d5a2ab0feeb0e392b90c626c027da93feaf15fa63770a2c41ed7d909a45
- Archive
ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.tar.gz - Archive SHA-256 now70a7a651e1194dc7a9e0e28d547cecded7b3d2e3be9df115f80ac674a5c3709f
- Generated2026-11-02T23:33:35Z by KitForge release/build_trail.py
- Sections9 sections, 4 fully recorded; 10 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-gitea-v28.2.0-CE-ubuntu24.04-r2.trail.json.sigstore ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.trail.json
IdentityWhy this release existsThe path through the harnessModel work per stageReviewDefectsVerificationPublicationPackages and CPU level
Identity
1 item not recorded- ProductGitea (gitea) [MANIFEST.json]
- Release tagv28.2.0-CE-ubuntu24.04-r2 [MANIFEST.json]
- Imagereadystack/gitea:v28.2.0-CE-ubuntu24.04-r2 [MANIFEST.json]
- Image index digestsha256:0ab0f2303257a43f59f942ac9b6d68046bceb5a6859fd7a594889a293e6ac00d [docs/provenance/LOCKED_DIGEST.txt]
- linux/amd64 image digestsha256:2ed51d5a2ab0feeb0e392b90c626c027da93feaf15fa63770a2c41ed7d909a45 [ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.rebuild.json, subject.image_manifest_digest]
- ArchiveReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.tar.gz (bytes 542130483) [MANIFEST.json]
- Archive sha256 at publish5dd4fdcf3d9236d468ed8460ceeadc1e6dad0d9d94100c772351423272d3293e [MANIFEST.json, repack_history[0].previous_tarball_sha256]
- Archive sha256 now70a7a651e1194dc7a9e0e28d547cecded7b3d2e3be9df115f80ac674a5c3709f [MANIFEST.json, tarball_sha256]
- Archive records agreeyes [MANIFEST.json, PUBLISH_MANIFEST.json and .cutover.json name the same sha256]
- Repack history
- at 2026-11-01 · label kitfix · reason customer kit files brought up to the current engine: BUILD_OFFLINE.sh (kit root, docs/offline, docs/docker); the header of BUILD_OFFLINE.sh no longer says a --provenance rebuild meets a SLSA build level, comment lines only; not image inputs; image and every build input unchanged · previous sha256 5dd4fdcf3d9236d468ed8460ceeadc1e6dad0d9d94100c772351423272d3293e · sha256 70a7a651e1194dc7a9e0e28d547cecded7b3d2e3be9df115f80ac674a5c3709f · replaced BUILD_OFFLINE.sh, docs/docker/BUILD_OFFLINE.sh, docs/offline/BUILD_OFFLINE.sh, rebuild.json
- Upstream repositoryhttps://github.com/go-gitea/gitea.git [docs/provenance/SOURCE_TREE_HASH.json]
- Upstream refv28.2.0 [docs/provenance/SOURCE_TREE_HASH.json]
- Upstream commit829b49c1ae96015e345f9d2a0eb1ea7acd5f31e1 [docs/provenance/SOURCE_TREE_HASH.json]
- Source tree hash4f6d79cfde19681f67ab5a0d3ba7315c8034a3849c8bc77ce5937781ce5c98a2 (files 6366) [docs/provenance/SOURCE_TREE_HASH.json, tree_listing_sha256 (sha256 of the sorted file listing)]
- Kit tree hashsha256:edbdbcc2ef8624274ac60f97e2a43a7ed8198c9f66de0d8180b302f3ea0a1f77 [ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.rebuild.json, inputs.tree_hash]
- SOURCE_DATE_EPOCH1792345836 (utc 2026-10-18T17:50:36Z) [ReadyStack-gitea-v28.2.0-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:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c · platform digest sha256:78d4744ead1f5b19b04d0df558ab182a5300903900755e515b2ca4d10eb2044d
- BuildKitmoby/buildkit:v0.31.2 (image digest sha256:e0e67ea9c4bb07bdef683e29f70f3b623d1eb9c82274a9ec04e6bb0511449fb0) [ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.rebuild.json, engine]
- Not recorded: the engine commit(s) that built it (drive_runs records them for drives from 2026-11-02; this release's drives were rebuilt from line logs, which do not name it)
Why this release exists
Fully recorded- Chain653 (created 2026-10-27T01:57:12Z · trigger customer_request · upstream version v28.2.0) [chains, chains #653]
- Requestbuild request #335 (rebuild) (requested at 2026-10-27T01:49:32Z · requested by kitforge-agent · version v28.2.0) [build_requests, build_requests #335]
- Reasonrevision v28.2.0-CE-ubuntu24.04-r2: same upstream version rebuilt (retarget.py --rev-bump) [build_requests, build_requests #335 request_reason]
- Supersedesreadystack/gitea:v28.2.0-CE-ubuntu24.04-r1 (chain 563) [chains, chains #563]
The path through the harness
2 items not recorded1 chain · 4 drives · 18 stages · 3 rewinds
Chain 653 release · shipped
Created 2026-10-27T01:57:12Z, upstream v28.2.0, build request 335 [chains, chains #653]
| Drive | Started | Minutes | Build host | How it stopped |
|---|---|---|---|---|
| 599 | 2026-10-27T01:57:38Z | 28 | build host 3 withhold-publish | ready_to_ship [drive_runs, drive_runs #599] rebuilt from a build line's log |
| 602 | 2026-10-27T06:27:27Z | 30.2 | build host 3 withhold-publish | infra_hub_rate_limit at package_archive [drive_runs, drive_runs #602] rebuilt from a build line's log |
| 603 | 2026-10-27T07:15:24Z | 4.5 | build host 3 withhold-publish | ready_to_ship [drive_runs, drive_runs #603] rebuilt from a build line's log |
| 605 | 2026-10-27T09:02:03Z | 7.8 | build host 3 publish-held | shipped [drive_runs, drive_runs #605] rebuilt from a build line's log |
Stages, in order
| Stage | First start | Passed | Attempts | Gate checks passed | Artifacts (SHA-256) |
|---|---|---|---|---|---|
intake |
2026-10-27T01:57:43Z | 2026-10-27T01:57:44Z | 1 | 4
|
— |
acquire |
2026-10-27T01:57:50Z | 2026-10-27T01:57:50Z | 1 | 12
|
— |
plan |
2026-10-27T01:58:09Z | 2026-10-27T01:58:10Z | 1 | 10
|
— |
assemble_kit |
2026-10-27T02:06:16Z | 2026-10-27T06:37:27Z | 2 | 27
|
— |
remediate |
2026-10-27T02:06:48Z | 2026-10-27T06:37:29Z | 2 | 8
|
— |
build_kit |
2026-10-27T02:12:56Z | 2026-10-27T06:44:09Z | 2 | 9
|
— |
verdict |
2026-10-27T02:14:25Z | 2026-10-27T06:45:38Z | 2 | 8
|
— |
publish_image |
2026-10-27T02:15:06Z | 2026-10-27T06:47:03Z | 2 | 7
|
— |
boot_instance |
2026-10-27T02:15:23Z | 2026-10-27T06:47:21Z | 4 | 3
|
— |
sbom |
2026-10-27T02:15:39Z | 2026-10-27T06:47:36Z | 2 | 5
|
— |
schema_discovery |
2026-10-27T02:15:45Z | 2026-10-27T06:47:42Z | 2 | 7
|
— |
admin_handbook |
2026-10-27T02:15:54Z | 2026-10-27T06:47:52Z | 2 | 7
|
— |
db_handbook |
2026-10-27T02:16:06Z | 2026-10-27T06:48:07Z | 2 | 8
|
— |
seed_data |
2026-10-27T02:16:13Z | 2026-10-27T06:48:16Z | 2 | 6
|
— |
seed_validate |
2026-10-27T02:16:18Z | 2026-10-27T06:48:22Z | 2 | 3
|
— |
usecase_validate |
2026-10-27T02:17:42Z | 2026-10-27T06:50:14Z | 2 | 10
|
— |
finalize_docs |
2026-10-27T02:17:48Z | 2026-10-27T06:50:21Z | 2 | 9
|
— |
package_archive |
2026-10-27T02:25:33Z | 2026-10-27T09:09:41Z | 3 | 33 (final gate PASS)
|
— |
[stage_runs]
Rewinds
- 2026-10-27T06:25:55Z:
package_archivetopackage_archiveon docs_redo (scripts/redo-docs.py) [stage_events, stage_events #703] - 2026-10-27T06:27:32Z:
package_archivetoassemble_kiton strategy_changed (chain 653: strategy changed — rewound from 'package_archive' to assemble_kit and dropped the vendored tree so the change actually reaches the build.) [stage_events, stage_events #2346] - 2026-10-27T09:01:32Z:
package_archivetopackage_archiveon docs_redo (scripts/redo-docs.py) [stage_events, stage_events #706]
- Not recorded: each drive's ticks and first failed check (drive_runs records them for drives from 2026-11-02; these drives were rebuilt from line logs)
- Not recorded: the sha256 of each stage's artifacts (stage_events records them for stages passed from 2026-11-02; this chain's events were rebuilt from stage_runs and logs) — the archive's CHECKSUMS.sha256 lists the sha256 of every file it ships
Model work per stage
3 items not recordedRole: writer model. Calls up to 2026-10-27T09:09:41Z.
16 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 | — |
usecase_validate | 12 | 0 | 0 | 1 | not recorded | not recorded | — |
[micro_step_runs]
- Not recorded: forced commits (micro_step_runs records them for calls from 2026-11-02)
- Not recorded: real token counts (recorded per call from 2026-11-02; earlier rows hold only an estimate, which is not shown)
- 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
2 items not recordedRole: review model.
2 rounds, 2 counted, $0.68 recorded cost
| Round | Started | Critical | Major | Minor | Verdict | Cost | Cap in force | Archive reviewed |
|---|---|---|---|---|---|---|---|---|
| 1 | 2026-10-27T02:26:15Z | 0 | 0 | 0 | clean to publish [held_rounds, held_rounds #47] rebuilt from a held-review state file | $0.35 | not recorded | not recorded |
| 2 | 2026-10-27T07:20:50Z | 0 | 0 | 0 | clean to publish [held_rounds, held_rounds #48] rebuilt from a held-review state file | $0.34 | not recorded | not recorded |
- Not recorded: the sha256 of the archive each round reviewed (held_rounds records it for rounds from 2026-11-02; these rounds were rebuilt from state files)
- Not recorded: the round cap in force at each round (the state files did not keep it)
Defects
Fully recorded- Ledger entries34 [defects, defects where product_slug=gitea and this tag or chain]
- Disclosed in the archive2 [docs/defects/defects.json, entries]
34 ledger entries: by severity low 31, high 3; by status open 2, fixed-in-release 32.
| Defect | Severity | Status | Found by | Fixed in |
|---|---|---|---|---|
RSD-gitea-3ad3a0bd20The image's org.opencontainers.image.version label says 24.04 (inherited from the Ubuntu base), not this release [defects, defects #95282] | low | open | image scan | — |
RSD-gitea-e45f88fea9Admin handbook: Says two directories but lists three (/data/gitea, /data/git/repositories, /data/data). [defects, defects #100840] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-74aa39685fDatabase handbook: Says two directories but lists three. [defects, defects #100841] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-352ff144cfDatabase handbook: Says two directories but lists three (/data/gitea, /data/git, /data/data). [defects, defects #100842] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-d95e0c1820Database handbook: Actions secrets are not files under /data/data: Gitea stores them encrypted in the SQLite database. [defects, defects #100843] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-3053d4c7d8Database handbook: Attributes host-key generation to the entrypoint script (previous round's finding, still present). [defects, defects #100844] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-956e709347Database handbook: INSTALL_LOCK is not a build-time setting: the entrypoint writes it into /data/gitea/conf/app.ini when that file does not exist yet. [defects, defects #100845] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-9accf0310bDatabase handbook: The command shown, `docker run --entrypoint /bin/bash IMAGE`, has no -i/-t, so bash reads end-of-file and exits immediately; it gives no interactive shell. [defects, defects #100846] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-9f73096e6fDatabase handbook: Says 'without restarting' and then tells the reader to restart; the running Gitea process only reads the new value after the restart (Operating facts: edit-ini, then docker restart). [defects, defects #100847] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-a412b18a5bDatabase handbook: Same contradiction: the steps that follow include restarting the container. [defects, defects #100848] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-633e2d3869Database handbook: Says 'without restarting' and the next lines restart the container. [defects, defects #100849] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-d37ec3008eDatabase handbook: The start period is a grace window, not a delay before the first check (previous round's finding, still present here). [defects, defects #100850] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-2e2640acb0Database handbook: No 'Personal access tokens' heading exists; the section is 'Manage Access Tokens' (the same handbook says so at L1194). [defects, defects #100851] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-bbad408f09Database handbook: Unsupported: not every web UI feature has an API endpoint. [defects, defects #100852] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-af0bd4dee2Database handbook: Reads as if the API allows a password change; it does not. [defects, defects #100853] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-638dbff789Database handbook: Wrong subject: the entrypoint sets GITEA_WORK_DIR itself (export GITEA_WORK_DIR=/data); it is the docker exec session that does not have it. [defects, defects #100854] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-7eda0189f4Database handbook: Pull requests are not in the list of what the release's backup test checked (users, organisations, repositories, issues, admin password, API tokens, SECRET_KEY, SSH host key), yet the section says… [defects, defects #100855] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-e0c9eb7132Admin handbook: The example passes no GITEA__ variable, so as shown it applies no value (edit-ini takes no key or value arguments and exits 0 having changed nothing); the sentence above it says to pass the value as… [defects, defects #100856] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-61711a0e5bAdmin handbook: The Product Overview 'Upgrading' section gives the bare stop/rm/pull/run procedure with no pointer to the pre-v1.27.3 check that every other upgrade section now carries. [defects, defects #100857] | high | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-4755dd148bAdmin handbook: Unqualified claim attached to the same stop/rm/pull/run procedure in 'Backup and Restore Procedures > Upgrading'. [defects, defects #100858] | high | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-17a7aca6fcAdmin handbook: 'In every case ... keep gitea-old' contradicts case (1), whose own steps are `docker stop gitea && docker rm gitea` (no gitea-old exists). The sentence also leaves out that starting gitea-old after… [defects, defects #100859] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-1e51751b49Admin handbook: Stated for every case, but true only for case (2). [defects, defects #100860] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-df0f298b7dAdmin handbook: Case (3) says only 'turn on SSH at 2222', as if SSH had been off. [defects, defects #100861] | low | open | held review (review model) | — |
RSD-gitea-e1edce0196Release notes: 'and earlier' includes v1.25.4-CE-ubuntu24.04-r1, a published tag, which created no admin account at all (its fallback-password create command fails) and left open registration instead; the… [defects, defects #100862] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-89db77047aRelease notes: False for v1.25.4-CE-ubuntu24.04-r1: sshd listened on port 22 and git@ clones worked. [defects, defects #100863] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-55c93c434dAdmin handbook: The SSH user is not fixed: it is an ordinary app.ini setting (BUILTIN_SSH_SERVER_USER) that the documented GITEA__ mechanism changes; gitea is only the default. [defects, defects #100864] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-839fe152f5Admin handbook: Same as line 478: 'always' is false; the user is configurable and gitea is the default. [defects, defects #100865] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-56212289ddAdmin handbook: The time field is the time of the current check, set on failure as well; it is not the time of the last successful check, so it cannot be used to tell how long a dependency has been failing. [defects, defects #100866] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-0731f5e7f3Admin handbook: Unsupported and contradicted by a run: the second instance is refused at startup by Gitea's queue lock; nothing was corrupted or lost. [defects, defects #100867] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-52230d09d3Admin handbook: Unquoted <value> placeholder: a value with a space makes docker treat the next word as the container name, and a value with $ is silently rewritten by the shell (Pa$sw0rd!9 became Pa!9, exit 0), the… [defects, defects #100868] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-29ddf3f74cAdmin handbook: False claim that directly contradicts the corrected fact established elsewhere in this same document: the published digest DOES define a Docker HEALTHCHECK (CMD-SHELL curl -fsS… [defects, defects #100869] | high | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-6be603ef84Database handbook: Leftover framing from the pre-correction narrative that this section body no longer supports. [defects, defects #100870] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-66cc49c497Admin handbook: This subsection (and its TOC entry, line 92: '[Health Checks](#health-checks)') sits inside '## Known Limitations and Exclusions' (line 1017), alongside genuine exclusions like 'No systemd units are… [defects, defects #100871] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
RSD-gitea-49e9389f34Database handbook: '### Health Check' occurs seven times in this file (lines 188, 681, 839, 1055, 1110, 1321, 1495) and '### Health Checking' occurs three times (259, 362, 458), but every corresponding TOC entry links… [defects, defects #100872] | low | fixed-in-release | held review (review model) | v28.2.0-CE-ubuntu24.04-r2 |
Verification
2 items not recorded- Reproduced before publishingyes (rebuilt digest sha256:2ed51d5a2ab0feeb0e392b90c626c027da93feaf15fa63770a2c41ed7d909a45 · published digest sha256:2ed51d5a2ab0feeb0e392b90c626c027da93feaf15fa63770a2c41ed7d909a45 · digest match yes · builder moby/buildkit:v0.31.2 · build seconds 185) [docs/provenance/REPRO_VERIFICATION.json, verified]
- Final contract gate (G8)PASS (checks cosign, scan_grade, tag_base_os, vex_shipped, scout_grade_a, script_copies, three_way_sha, offline_rebuild, rebuild_manifest, artifact_coverage, assetchain_coverage) [stage_runs, stage_runs chain 653 package_archive gate_result.g8.result]
- Grade at releaseA (percent 94 · tool docker scout policy 1.26.0 · config docker-default · org vex no · at 2026-10-27T09:02:27Z · failing Docker Scout counts 122 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]
- First own scan of the releaseA (at 2026-10-27T09:09:55Z · score 100 · rubric cerodeo-v1 · fixable critical 0 · fixable high 0 · syft 1.54.1 · grype 0.120.1 · grype db v6.1.10@2026-10-27T06:30:41Z) [image_scans, image_scans #1317]
- Image signatureverified on the index and the linux/amd64 manifest (key fingerprint 04daa92344a52dbc · at 2026-10-27T09:02:08Z) [docs/provenance/IMAGE_EVIDENCE.json, signed]
- Image signature transparency-log entries
- log index 3508514338 · transparency-log entry
- log index 3508519445 · transparency-log entry
- rebuild.json signatureSigstore bundle, release key (key fingerprint 04daa92344a52dbc · log index 3622647137 · transparency-log entry · integrated 2026-11-01T06:33:15Z) [ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.rebuild.json.sigstore, verificationMaterial.tlogEntries[0]]
- Signed attestations
- kind provenance · digest sha256:0ab0f2303257a43f59f942ac9b6d68046bceb5a6859fd7a594889a293e6ac00d · state attached · log index 3511664098 · transparency-log entry
- kind sbom · digest sha256:0ab0f2303257a43f59f942ac9b6d68046bceb5a6859fd7a594889a293e6ac00d · state attached · log index 3511667487 · transparency-log entry
- kind vsa · digest sha256:0ab0f2303257a43f59f942ac9b6d68046bceb5a6859fd7a594889a293e6ac00d · state attached · log index 3511670765 · transparency-log entry
- kind provenance · digest sha256:2ed51d5a2ab0feeb0e392b90c626c027da93feaf15fa63770a2c41ed7d909a45 · state attached · log index 3511673984 · transparency-log entry
- kind sbom · digest sha256:2ed51d5a2ab0feeb0e392b90c626c027da93feaf15fa63770a2c41ed7d909a45 · state attached · log index 3511676756 · transparency-log entry
- kind vsa · digest sha256:2ed51d5a2ab0feeb0e392b90c626c027da93feaf15fa63770a2c41ed7d909a45 · state attached · log index 3511679725 · transparency-log entry
Offline clean-room rebuilds
- 2026-10-27T02:26:17Z on build host 3 (Docker-in-Docker daemon with --network none): bit for bit yes, digest match yes, customer verify yes
rebuilt sha256:2ed51d5a2ab0feeb0e392b90c626c027da93feaf15fa63770a2c41ed7d909a45 [clean-room rebuild ledger, runs[420]]
- 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)
- Not recorded: the pins record (docs/PINS.md is not in this archive as generated; a repack that adds it is appended to this trail's history)
Publication
Fully recorded- Image pushed (internal tag), publish_image passed2026-10-27T06:47:03Z [stage_runs, stage_runs chain 653 stage publish_image]
- Release tag promoted2026-10-27T09:09:00Z (method imagetools_create_retag_by_digest_no_rebuild · digest sha256:0ab0f2303257a43f59f942ac9b6d68046bceb5a6859fd7a594889a293e6ac00d · tag readystack/gitea:v28.2.0-CE-ubuntu24.04-r2) [deliverables/provenance/PROMOTION_RECORD.json, promoted_at]
- Archive manifests written2026-10-27T09:04:48Z [PUBLISH_MANIFEST.json, published_at]
- Archive cut over on prodasset, package_archive passed2026-10-27T09:09:41Z [stage_runs, stage_runs chain 653 stage package_archive]
- Cut-over markerpresent (chain 653) [.cutover.json]
- Release checklist and site event2026-10-27T09:09:39Z (status complete · site event 194 · steps grade a verified done · release tag promoted done · cosign signed done · release evidence recorded done · contract gate passed done · archive published done · hub readme live done · reproducibility recorded done · defects ledger published done · catalog available done · build request fulfilled done · seo regenerated skipped · site catalogue refreshed done · site grade recorded done · site queue synced done · customer requests charged done · owners notified done) [deliverables/provenance/RELEASE_CHECKLIST.json, run_at]
Packages and CPU level
Fully recorded- Packages in the image392 (scanned 2026-11-02T06:30:04Z · source backfill:daily-scan) [release_images, package_count]
- x86-64 level the image needsv1 (used v4 · baseline v2 · elf files 859 · probed 2026-11-02T17:09:30Z · source backfill) [release_images, isa_level_hard]
History
1 event- 2026-11-02T23:33:35Z generated: by KitForge release/build_trail.py · generator commit 916780cc218cf013bd623a8c085aaf73d3b053d0 · note backfill: built after the release from its records
Records
25 records| Record | Where it is | Rows |
|---|---|---|
docs/defects/defects.json | inside the archive (ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.tar.gz) | — |
docs/provenance/IMAGE_EVIDENCE.json | inside the archive (ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.tar.gz) | — |
docs/provenance/LOCKED_DIGEST.txt | inside the archive (ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.tar.gz) | — |
docs/provenance/REPRO_VERIFICATION.json | inside the archive (ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.tar.gz) | — |
docs/provenance/SOURCE_TREE_HASH.json | inside the archive (ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.tar.gz) | — |
.cutover.json | beside the archive (prodasset /data/production/gitea/v28.2.0-CE-ubuntu24.04-r2/) | — |
MANIFEST.json | beside the archive (prodasset /data/production/gitea/v28.2.0-CE-ubuntu24.04-r2/) | — |
PUBLISH_MANIFEST.json | beside the archive (prodasset /data/production/gitea/v28.2.0-CE-ubuntu24.04-r2/) | — |
ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.rebuild.json | beside the archive (prodasset /data/production/gitea/v28.2.0-CE-ubuntu24.04-r2/) | — |
ReadyStack-gitea-v28.2.0-CE-ubuntu24.04-r2.rebuild.json.sigstore | beside the archive (prodasset /data/production/gitea/v28.2.0-CE-ubuntu24.04-r2/) | — |
SCOUT_EVIDENCE.json | beside the archive (prodasset /data/production/gitea/v28.2.0-CE-ubuntu24.04-r2/) | — |
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) | 335 |
chains | sadb, ReadyStack's engine database (not published) | 653 |
defects | sadb, ReadyStack's engine database (not published) | gitea v28.2.0-CE-ubuntu24.04-r2 |
drive_runs | sadb, ReadyStack's engine database (not published) | chain 653 |
held_rounds | sadb, ReadyStack's engine database (not published) | chain 653 |
image_scans | sadb, ReadyStack's engine database (not published) | 1317 |
micro_step_runs | sadb, ReadyStack's engine database (not published) | chain 653 |
release_images | sadb, ReadyStack's engine database (not published) | gitea v28.2.0-CE-ubuntu24.04-r2 |
stage_events | sadb, ReadyStack's engine database (not published) | chain 653 |
stage_runs | sadb, ReadyStack's engine database (not published) | chain 653 |
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) | — |
deliverables/provenance/RELEASE_CHECKLIST.json | the chain's workspace on the controller (not published) | — |