feat(service_osis): add --from-ci install path #197

Merged
mik-tf merged 1 commit from development_mik_from_ci_osis into development 2026-05-03 19:00:47 +00:00
Owner

Phase 1 progress on hero_demo#54.

Mirrors the patterns in #193, #195, #196. Asset suffix linux-amd64-musl matches hero_osis's build-linux.yaml matrix.

Why a new tag was needed

v1.0.0-rc5 (2026-04-05) predates a buildenv.sh change that drops hero_osis_server and adds hero_osis_seed to BINARIES. The service_osis nu module's SVX_BINARIES already expects hero_osis_seed, so --from-ci against the latest release would 404. Cut v1.0.0-rc6 to publish the current binary set:

  • hero_osis-linux-amd64-musl (4.5 MB)
  • hero_osis_ui-linux-amd64-musl (0.9 MB)
  • hero_osis_seed-linux-amd64-musl (2.6 MB)
  • hero_bot-linux-amd64-musl (1.9 MB, not consumed by this module — bundled because workspace builds it)

No gate fix needed on hero_osis — its build-linux.yaml doesn't require tags to be on main, just gates the upload step on startsWith(github.ref, 'refs/tags/v').

Tag publishing was bumpy

First tag-push run (#492) wedged on docker create for 21 min then failed on the upload step because FORGEJO_TOKEN repo secret was unset (the create-release POST returned 401, curl -sf swallowed it, the python parser crashed on empty stdin). Token added by the repo owner; deleted + re-pushed the tag to trigger a fresh run (#494) which succeeded cleanly. Stuck release.yaml run #495 is unrelated — that workflow runs make test (which fails on a hero_db dep, same shape as hero_aibroker#58) and only publishes to Package Registry, not Releases. Doesn't block us.

Smoke test on heroci

hero_osis: fetching release v1.0.0-rc6 from lhumina_code/hero_osis...
  hero_osis-linux-amd64-musl       -> /root/hero/bin/hero_osis
  hero_osis_ui-linux-amd64-musl    -> /root/hero/bin/hero_osis_ui
  hero_osis_seed-linux-amd64-musl  -> /root/hero/bin/hero_osis_seed
  hero_osis installed from CI artifacts (release v1.0.0-rc6)

file reports ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), statically linked.

Signed-off-by: mik-tf

Phase 1 progress on [hero_demo#54](https://forge.ourworld.tf/lhumina_code/hero_demo/issues/54). Mirrors the patterns in [#193](https://forge.ourworld.tf/lhumina_code/hero_skills/pulls/193), [#195](https://forge.ourworld.tf/lhumina_code/hero_skills/pulls/195), [#196](https://forge.ourworld.tf/lhumina_code/hero_skills/pulls/196). Asset suffix `linux-amd64-musl` matches `hero_osis`'s `build-linux.yaml` matrix. ## Why a new tag was needed v1.0.0-rc5 (2026-04-05) predates a `buildenv.sh` change that drops `hero_osis_server` and adds `hero_osis_seed` to BINARIES. The `service_osis` nu module's `SVX_BINARIES` already expects `hero_osis_seed`, so `--from-ci` against the latest release would 404. Cut [v1.0.0-rc6](https://forge.ourworld.tf/lhumina_code/hero_osis/releases/tag/v1.0.0-rc6) to publish the current binary set: - `hero_osis-linux-amd64-musl` (4.5 MB) - `hero_osis_ui-linux-amd64-musl` (0.9 MB) - `hero_osis_seed-linux-amd64-musl` (2.6 MB) - `hero_bot-linux-amd64-musl` (1.9 MB, not consumed by this module — bundled because workspace builds it) No gate fix needed on hero_osis — its `build-linux.yaml` doesn't require tags to be on `main`, just gates the upload step on `startsWith(github.ref, 'refs/tags/v')`. ## Tag publishing was bumpy First tag-push run (#492) wedged on `docker create` for 21 min then failed on the upload step because `FORGEJO_TOKEN` repo secret was unset (the create-release POST returned 401, curl `-sf` swallowed it, the python parser crashed on empty stdin). Token added by the repo owner; deleted + re-pushed the tag to trigger a fresh run (#494) which succeeded cleanly. Stuck `release.yaml` run #495 is unrelated — that workflow runs `make test` (which fails on a hero_db dep, same shape as [hero_aibroker#58](https://forge.ourworld.tf/lhumina_code/hero_aibroker/issues/58)) and only publishes to Package Registry, not Releases. Doesn't block us. ## Smoke test on heroci ``` hero_osis: fetching release v1.0.0-rc6 from lhumina_code/hero_osis... hero_osis-linux-amd64-musl -> /root/hero/bin/hero_osis hero_osis_ui-linux-amd64-musl -> /root/hero/bin/hero_osis_ui hero_osis_seed-linux-amd64-musl -> /root/hero/bin/hero_osis_seed hero_osis installed from CI artifacts (release v1.0.0-rc6) ``` `file` reports `ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), statically linked`. Signed-off-by: mik-tf
feat(service_osis): add --from-ci install path
All checks were successful
Build and Publish Skills / build-and-publish (pull_request) Successful in 5s
097034ed70
Mirrors PRs #195 (router/proxy/db/indexer) and #196 (aibroker), and the
pilot in #193. Asset suffix linux-amd64-musl matches hero_osis's
build-linux.yaml matrix.

Smoke-tested against the freshly-cut hero_osis v1.0.0-rc6 — first release
with the current buildenv.sh BINARIES list (drops hero_osis_server,
adds hero_osis_seed). v1.0.0-rc5 (2026-04-05) predates that change so
service_osis install --from-ci would 404 on hero_osis_seed.

Phase 1 progress on lhumina_code/hero_demo#54.

Signed-off-by: mik-tf
mik-tf merged commit b94bd7eea9 into development 2026-05-03 19:00:47 +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!197
No description provided.