ci(release): name artifacts using full Rust target triple (per home#212) #46

Merged
mik-tf merged 1 commit from development_mik_slides_target_triple_assets into development 2026-05-04 17:22:13 +00:00
Owner

Summary

Per home#212 (workspace-wide asset-naming standard), update release.yaml's artifact-name matrix entry from linux-amd64-musl to the full Rust target triple x86_64-unknown-linux-musl.

One-line YAML diff. No code or build-logic change.

Why

Industry standard for Rust binary distribution: ripgrep, fd, bat, starship, cargo-binstall, eza, bottom — every Rust CLI shipping static binaries to production uses the full target triple. It's self-documenting (arch + vendor + os + libc), unambiguous, and gives Hero free cargo binstall discovery once binaries are on crates.io.

hero_slides is the first producer-blocked repo to land its initial release after home#212. The v0.1.0-rc1 tag failed at openssl-sys before producing a Release, so there's no prior asset history to migrate — the first real tag (v0.1.0-rc2) inherits the new convention from day one. This sets the precedent for the next 5 producer-blocked repos (hero_editor, hero_biz, hero_foundry, hero_matrixchat, hero_whiteboard).

What changes

Asset name (old shape) Asset name (new shape)
hero_slides-linux-amd64-musl hero_slides-x86_64-unknown-linux-musl
hero_slides_server-linux-amd64-musl hero_slides_server-x86_64-unknown-linux-musl
(and the 3 other binaries) (matching)

The build target itself (cargo build --target x86_64-unknown-linux-musl) doesn't change — same musl binaries, just renamed.

Refs

  • home#212 — workspace-wide naming standard
  • hero_demo#54--from-ci rollout, Phase 2
  • Stacks on #45 (just merged) — fmt + clippy + musl fix that made the build green in the first place

Test plan

  • YAML parses (python3 -c 'import yaml; yaml.safe_load(open(...))')
  • After merge: tag v0.1.0-rc2, verify Forgejo Release shows 5 assets named hero_slides_*-x86_64-unknown-linux-musl
  • Wire service_slides.nu --from-ci with the new suffix in hero_skills
  • Smoke service_slides install --from-ci --version v0.1.0-rc2 on heroci

Signed-off-by: mik-tf

## Summary Per [home#212](https://forge.ourworld.tf/lhumina_code/home/issues/212) (workspace-wide asset-naming standard), update `release.yaml`'s artifact-name matrix entry from `linux-amd64-musl` to the full Rust target triple `x86_64-unknown-linux-musl`. One-line YAML diff. No code or build-logic change. ## Why Industry standard for Rust binary distribution: ripgrep, fd, bat, starship, cargo-binstall, eza, bottom — every Rust CLI shipping static binaries to production uses the full target triple. It's self-documenting (arch + vendor + os + libc), unambiguous, and gives Hero free `cargo binstall` discovery once binaries are on crates.io. hero_slides is the **first** producer-blocked repo to land its initial release after home#212. The v0.1.0-rc1 tag failed at openssl-sys before producing a Release, so there's no prior asset history to migrate — the first real tag (v0.1.0-rc2) inherits the new convention from day one. This sets the precedent for the next 5 producer-blocked repos (hero_editor, hero_biz, hero_foundry, hero_matrixchat, hero_whiteboard). ## What changes | Asset name (old shape) | Asset name (new shape) | |---|---| | `hero_slides-linux-amd64-musl` | `hero_slides-x86_64-unknown-linux-musl` | | `hero_slides_server-linux-amd64-musl` | `hero_slides_server-x86_64-unknown-linux-musl` | | (and the 3 other binaries) | (matching) | The build target itself (`cargo build --target x86_64-unknown-linux-musl`) doesn't change — same musl binaries, just renamed. ## Refs - [home#212](https://forge.ourworld.tf/lhumina_code/home/issues/212) — workspace-wide naming standard - [hero_demo#54](https://forge.ourworld.tf/lhumina_code/hero_demo/issues/54) — `--from-ci` rollout, Phase 2 - Stacks on [#45](https://forge.ourworld.tf/lhumina_code/hero_skills/pulls/45) (just merged) — fmt + clippy + musl fix that made the build green in the first place ## Test plan - [x] YAML parses (`python3 -c 'import yaml; yaml.safe_load(open(...))'`) - [ ] After merge: tag `v0.1.0-rc2`, verify Forgejo Release shows 5 assets named `hero_slides_*-x86_64-unknown-linux-musl` - [ ] Wire `service_slides.nu --from-ci` with the new suffix in `hero_skills` - [ ] Smoke `service_slides install --from-ci --version v0.1.0-rc2` on heroci Signed-off-by: mik-tf
ci(release): name artifacts using full Rust target triple
Some checks failed
Test / test (push) Has been cancelled
Test / test (pull_request) Has been cancelled
54646cfa20
Per home#212 (workspace-wide naming standard), CI release assets adopt
the full Rust target triple convention used by ripgrep, fd, bat,
starship, cargo-binstall, eza, etc. — `x86_64-unknown-linux-musl`,
`aarch64-unknown-linux-gnu`, etc. — naming each asset for whatever
its workflow actually builds.

hero_slides has no prior release assets to migrate (the v0.1.0-rc1
tag failed at openssl-sys before producing a Release), so the first
real tag inherits the new convention from day one.

Net change: assets now named `hero_slides-x86_64-unknown-linux-musl`
(and same triple for the other 4 binaries) instead of the old
`hero_slides-linux-amd64-musl` shape.

Refs: lhumina_code/home#212
Refs: lhumina_code/hero_demo#54

Signed-off-by: mik-tf
mik-tf merged commit abe34d9131 into development 2026-05-04 17:22:13 +00:00
mik-tf deleted branch development_mik_slides_target_triple_assets 2026-05-04 17:22:14 +00:00
Sign in to join this conversation.
No reviewers
No labels
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_slides!46
No description provided.