main · last commit
6 hours ago ·
ti41arbu
sr-ht-dolt-o2r Add check-version and check-embedded-css gates to Makefile and APKBUILD
Lined Up
bd update sr-ht-dolt-o2r --claim
bd close sr-ht-dolt-o2r
| Created by | Eugene Blikh |
| Owner | bigbes@gmail.com |
| Created | 2026-08-17T20:39:04Z |
| Updated | 2026-08-17T20:39:04Z |
What is wrong: dolt's `Makefile` defines no `check-version:` target, and its APKBUILD's `build()` runs only `make check-css` — `package()` re-verifies nothing. `check-version` inspects the compiled binary (`go version -m $(CHECK_BIN)`) for `vcs.revision`/`vcs.modified` and fails the build if the tree was dirty; `check-embedded-css` (also missing) greps the binary for the embedded stylesheet name and diffs it against what is on disk, catching "compiled before `make css` ran". Why it matters: dolt's own APKBUILD header comment explains that a dirty/unstamped binary "links, starts and serves" and "only ever misreports itself" — describing the exact failure mode and then never enforcing it. The family has hit this class of bug for real (a GOTMPDIR race in federation, jobs #530/#531; a `go mod download all` incident in bench, build #359), and D22 (dolt's `make css` leaving stale hashed files) and D08 (hardcoded `sha256sum`) make dolt specifically prone to shipping a binary whose embedded/served CSS silently mismatches what was built. Sibling that already does it correctly: bench, coverage, curator, and tokens all call both `check-version` and `check-embedded-css` from both `build()` and `package()`, so the gate runs against the artifact that actually ships. Fix: port `check-version`/`check-embedded-css` plus their `CHECK_BIN`/`CHECK_BINS` staged-artifact invocations from `sourcehut-tokens/Makefile` into dolt's Makefile and APKBUILD. Templating work, not new design. Status: verified (`grep -n '^check-version:'` matches nothing in dolt's Makefile). Audit: D12 (cross-repo audit, 2026-08-17)
No outgoing dependencies.
Nothing depends on this issue.
| id | sr-ht-dolt-o2r |
| content_hash | 1eb0ca95ab0453cb70753336867a606da8716beccd28d537127bd7d2545b4871 |
| title | Add check-version and check-embedded-css gates to Makefile and APKBUILD |
| description | What is wrong: dolt's `Makefile` defines no `check-version:` target, and its APKBUILD's `build()` runs only `make check-css` — `package()` re-verifies nothing. `check-version` inspects the compiled binary (`go version -m $(CHECK_BIN)`) for `vcs.revision`/`vcs.modified` and fails the build if the tree was dirty; `check-embedded-css` (also missing) greps the binary for the embedded stylesheet name and diffs it against what is on disk, catching "compiled before `make css` ran". Why it matters: dolt's own APKBUILD header comment explains that a dirty/unstamped binary "links, starts and serves" and "only ever misreports itself" — describing the exact failure mode and then never enforcing it. The family has hit this class of bug for real (a GOTMPDIR race in federation, jobs #530/#531; a `go mod download all` incident in bench, build #359), and D22 (dolt's `make css` leaving stale hashed files) and D08 (hardcoded `sha256sum`) make dolt specifically prone to shipping a binary whose embedded/served CSS silently mismatches what was built. Sibling that already does it correctly: bench, coverage, curator, and tokens all call both `check-version` and `check-embedded-css` from both `build()` and `package()`, so the gate runs against the artifact that actually ships. Fix: port `check-version`/`check-embedded-css` plus their `CHECK_BIN`/`CHECK_BINS` staged-artifact invocations from `sourcehut-tokens/Makefile` into dolt's Makefile and APKBUILD. Templating work, not new design. Status: verified (`grep -n '^check-version:'` matches nothing in dolt's Makefile). Audit: D12 (cross-repo audit, 2026-08-17) |
| design | |
| acceptance_criteria | |
| notes | |
| status | open |
| priority | 2 |
| issue_type | task |
| assignee | NULL |
| estimated_minutes | NULL |
| created_at | 2026-08-17T20:39:04Z |
| created_by | Eugene Blikh |
| owner | bigbes@gmail.com |
| updated_at | 2026-08-17T20:39:04Z |
| closed_at | NULL |
| closed_by_session | |
| external_ref | NULL |
| spec_id | |
| compaction_level | 0 |
| compacted_at | NULL |
| compacted_at_commit | NULL |
| original_size | NULL |
| sender | |
| ephemeral | 0 |
| wisp_type | |
| pinned | 0 |
| is_template | 0 |
| mol_type | |
| work_type | |
| source_system | |
| metadata | �{} |
| source_repo | |
| close_reason | |
| event_kind | |
| actor | |
| target | |
| payload | |
| await_type | |
| await_id | |
| timeout_ns | 0 |
| waiters | |
| hook_bead | |
| role_bead | |
| agent_state | |
| last_activity | NULL |
| role_type | |
| rig | |
| due_at | NULL |
| defer_until | NULL |
| no_history | 0 |
| started_at | NULL |
| is_blocked | 0 |
| id | 01a01172-ff61-7799-a593-9ad5ee0e2ecc |
| issue_id | sr-ht-dolt-o2r |
| event_type | created |
| actor | Eugene Blikh |
| old_value | |
| new_value | |
| comment | NULL |
| created_at | 2026-08-17T23:39:04Z |
No comments.