service_*: switch --download suffix to target-triple shape for 10 services (home#212) #217

Merged
mik-tf merged 10 commits from development_mik_home212_consumer into development 2026-05-06 16:03:24 +00:00
Owner

Consumer-side wiring for the home#212 rename arc. 10 commits, one per service module — keeping the per-service granularity in the squash log.

Producer-side PRs (asset PATCH renames already executed in lockstep)

  • hero_router#87linux-amd64-muslx86_64-unknown-linux-musl (1 binary)
  • hero_proc#93linux-amd64x86_64-unknown-linux-musl (3 binaries, honest musl)
  • hero_proxy#46linux-amd64-muslx86_64-unknown-linux-musl (3 binaries)
  • hero_db#27linux-amd64x86_64-unknown-linux-musl + linux-arm64aarch64-unknown-linux-gnu (3 binaries × 2 archs, honest mixed-libc)
  • hero_indexer#23linux-amd64-muslx86_64-unknown-linux-musl (3 binaries)
  • hero_aibroker#61linux-amd64-muslx86_64-unknown-linux-musl (4 binaries; both release.yaml and build-linux.yaml updated)
  • hero_osis#45linux-amd64-muslx86_64-unknown-linux-musl (4 binaries)
  • hero_books#122linux-amd64x86_64-unknown-linux-gnu (5 binaries, honest gnu)
  • hero_browser#23 — mixed-libc rename (3 binaries × 2 archs)
  • hero_shrimp#20linux-amd64x86_64-unknown-linux-gnu (4 binaries, honest gnu)

Per-service consumer commits (squashed at merge)

10 commits — one per service. All change the svc_install_download suffix arg in the corresponding service_*.nu. Two services (proc, db) had no explicit suffix (relied on lib.nu's linux-amd64 default); now passing explicit target-triple.

Atomic flip property

The Forgejo PATCH /api/v1/repos/.../releases/.../assets/... calls executed after each producer PR was opened. Existing release-asset bytes are unchanged; URLs flipped from <bin>-linux-amd64* to <bin>-<target-triple> atomically. New URL serves 200; old URL 404 (verified across all 10 services).

After this consumer PR merges, service_X install --download --reset will resolve correctly for all 10 services. Until merge, the production-state hero_skills development branch's --download for these 10 services is broken — but only inside this rename arc's window.

Refs

Consumer-side wiring for the [home#212](https://forge.ourworld.tf/lhumina_code/home/issues/212) rename arc. 10 commits, one per service module — keeping the per-service granularity in the squash log. ## Producer-side PRs (asset PATCH renames already executed in lockstep) - [hero_router#87](https://forge.ourworld.tf/lhumina_code/hero_router/pulls/87) — `linux-amd64-musl` → `x86_64-unknown-linux-musl` (1 binary) - [hero_proc#93](https://forge.ourworld.tf/lhumina_code/hero_proc/pulls/93) — `linux-amd64` → `x86_64-unknown-linux-musl` (3 binaries, honest musl) - [hero_proxy#46](https://forge.ourworld.tf/lhumina_code/hero_proxy/pulls/46) — `linux-amd64-musl` → `x86_64-unknown-linux-musl` (3 binaries) - [hero_db#27](https://forge.ourworld.tf/lhumina_code/hero_db/pulls/27) — `linux-amd64` → `x86_64-unknown-linux-musl` + `linux-arm64` → `aarch64-unknown-linux-gnu` (3 binaries × 2 archs, honest mixed-libc) - [hero_indexer#23](https://forge.ourworld.tf/lhumina_code/hero_indexer/pulls/23) — `linux-amd64-musl` → `x86_64-unknown-linux-musl` (3 binaries) - [hero_aibroker#61](https://forge.ourworld.tf/lhumina_code/hero_aibroker/pulls/61) — `linux-amd64-musl` → `x86_64-unknown-linux-musl` (4 binaries; both `release.yaml` and `build-linux.yaml` updated) - [hero_osis#45](https://forge.ourworld.tf/lhumina_code/hero_osis/pulls/45) — `linux-amd64-musl` → `x86_64-unknown-linux-musl` (4 binaries) - [hero_books#122](https://forge.ourworld.tf/lhumina_code/hero_books/pulls/122) — `linux-amd64` → `x86_64-unknown-linux-gnu` (5 binaries, honest gnu) - [hero_browser#23](https://forge.ourworld.tf/lhumina_code/hero_browser/pulls/23) — mixed-libc rename (3 binaries × 2 archs) - [hero_shrimp#20](https://forge.ourworld.tf/lhumina_code/hero_shrimp/pulls/20) — `linux-amd64` → `x86_64-unknown-linux-gnu` (4 binaries, honest gnu) ## Per-service consumer commits (squashed at merge) 10 commits — one per service. All change the `svc_install_download` suffix arg in the corresponding `service_*.nu`. Two services (proc, db) had no explicit suffix (relied on lib.nu's `linux-amd64` default); now passing explicit target-triple. ## Atomic flip property The Forgejo `PATCH /api/v1/repos/.../releases/.../assets/...` calls executed *after* each producer PR was opened. Existing release-asset bytes are unchanged; URLs flipped from `<bin>-linux-amd64*` to `<bin>-<target-triple>` atomically. New URL serves 200; old URL 404 (verified across all 10 services). After this consumer PR merges, `service_X install --download --reset` will resolve correctly for all 10 services. Until merge, the production-state hero_skills `development` branch's `--download` for these 10 services is broken — but only inside this rename arc's window. ## Refs - https://forge.ourworld.tf/lhumina_code/home/issues/212 - https://forge.ourworld.tf/lhumina_code/hero_demo/issues/54
Existing v0.2.2 release asset has been renamed via Forgejo asset-PATCH
API from hero_router-linux-amd64-musl to hero_router-x86_64-unknown-linux-musl
(metadata only, no rebuild). This commit flips the consumer suffix in
lockstep.

Producer-side workflow rename: hero_router PR (development_mik_home212_router).

Refs lhumina_code/home#212

Signed-off-by: mik-tf
Existing v0.4.4 release assets renamed via Forgejo asset-PATCH API
from \${BIN}-linux-amd64 to \${BIN}-x86_64-unknown-linux-musl.

Producer-side workflow: hero_proc PR (development_mik_home212_proc).

Refs lhumina_code/home#212

Signed-off-by: mik-tf
service_shrimp: switch --download suffix to target-triple gnu (home#212)
All checks were successful
Build and Publish Skills / build-and-publish (pull_request) Successful in 4s
6d4fe8a892
mik-tf merged commit 877217d84a into development 2026-05-06 16:03:24 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_skills!217
No description provided.