feat(service_editor): D-05 --from-ci wiring with bundled libonnxruntime.so #210

Merged
mik-tf merged 1 commit from development_mik_d05_editor_consumer into development 2026-05-05 13:35:50 +00:00
Owner

Consumer half of D-05, pairs with hero_editor v0.1.0-rc4 producer side (hero_editor PR #8 + fix-forwards #9 #10 #11).

Summary

  • Add --from-ci / --version to service_editor install, mirroring the 14 already-wired services (matrixchat is the closest analog).
  • Asset suffix is x86_64-unknown-linux-gnu — D-05 matrix swap. Microsoft does not ship a musl onnxruntime tarball; ONNX services move to glibc, the 14 non-ONNX services keep static-musl.
  • New svx_install_onnx_runtime_from_ci helper fetches the libonnxruntime.so.<ver>-<target> release asset and installs it into svc_bin_dir alongside the binaries.
  • Action env exports ORT_DYLIB_PATH pointing at the versioned .so filename. Only hero_editor_ui touches voice_activity_detector to ort, so hero_editor_server action is unchanged.
  • Tag resolution lifted to the top of the --from-ci branch so the .so download reuses the same tag as the binaries.

lib.nu

Promote svc_download_asset to export — needed here for the .so fetch, and will be reused by hero_voice (session 61) and hero_embedder (session 62). Single-line surface-area change.

L-05 carry-over

start --reset still purges + rebuilds via cargo, which defeats a --from-ci install. Tracked in hero_demo#64; deferred per L-05.

Test plan

  • Squash-merge after review.
  • On heroci: service_editor install --from-ci --root, confirm both binaries installed AND libonnxruntime.so.1.25.1 next to them.
  • Confirm hero_editor_server starts and OpenRPC health returns ok (playbook item 13). Voice WS deferred to UX-validation gate.

Last PR before sessions 61 (voice) and 62 (embedder) repeat the same pattern.

Consumer half of D-05, pairs with hero_editor v0.1.0-rc4 producer side (hero_editor PR #8 + fix-forwards #9 #10 #11). ## Summary - Add `--from-ci` / `--version` to `service_editor install`, mirroring the 14 already-wired services (matrixchat is the closest analog). - Asset suffix is `x86_64-unknown-linux-gnu` — D-05 matrix swap. Microsoft does not ship a musl onnxruntime tarball; ONNX services move to glibc, the 14 non-ONNX services keep static-musl. - New `svx_install_onnx_runtime_from_ci` helper fetches the `libonnxruntime.so.<ver>-<target>` release asset and installs it into `svc_bin_dir` alongside the binaries. - Action env exports `ORT_DYLIB_PATH` pointing at the versioned `.so` filename. Only `hero_editor_ui` touches voice_activity_detector to ort, so `hero_editor_server` action is unchanged. - Tag resolution lifted to the top of the --from-ci branch so the .so download reuses the same tag as the binaries. ## lib.nu Promote `svc_download_asset` to `export` — needed here for the .so fetch, and will be reused by hero_voice (session 61) and hero_embedder (session 62). Single-line surface-area change. ## L-05 carry-over `start --reset` still purges + rebuilds via cargo, which defeats a `--from-ci` install. Tracked in hero_demo#64; deferred per L-05. ## Test plan - Squash-merge after review. - On heroci: `service_editor install --from-ci --root`, confirm both binaries installed AND `libonnxruntime.so.1.25.1` next to them. - Confirm `hero_editor_server` starts and OpenRPC `health` returns ok (playbook item 13). Voice WS deferred to UX-validation gate. Last PR before sessions 61 (voice) and 62 (embedder) repeat the same pattern.
feat(service_editor): D-05 --from-ci wiring with bundled libonnxruntime.so
All checks were successful
Build and Publish Skills / build-and-publish (pull_request) Successful in 5s
e03f0a4f74
Closes the consumer half of the D-05 ONNX cross-compile pattern for
hero_editor (paired with hero_editor v0.1.0-rc4 producer side).

service_editor.nu:
  - New --from-ci / --version flags on `install`, mirrors the 14
    services already wired (matrixchat is the closest analog).
  - Asset suffix is `x86_64-unknown-linux-gnu` (D-05 matrix swap from
    musl — Microsoft does not ship a musl onnxruntime tarball).
  - svx_install_onnx_runtime_from_ci helper fetches the
    libonnxruntime.so.<ver>-<target> release asset and installs it
    into svc_bin_dir alongside the binaries; ORT_DYLIB_PATH points
    at the versioned filename so the dlopen lookup is unambiguous.
  - svx_libonnxruntime_path constant + helper are reused by the
    hero_editor_ui action env to export ORT_DYLIB_PATH; only the UI
    binary touches voice_activity_detector → ort, so server action
    is left as-is.
  - Tag resolution happens once at the top of the --from-ci branch
    so the .so download reuses the same tag as the binaries.

lib.nu:
  - Promote svc_download_asset to `export` so service_editor and the
    upcoming voice/embedder consumers (sessions 61, 62) can fetch
    the bundled libonnxruntime.so as an extra asset without copy-
    pasting the curl logic.

L-05 carry-over: `start --reset` still purges + rebuilds via cargo,
which would defeat a --from-ci install. Tracked in hero_demo#64;
deferred to a separate session per L-05.

Closes nothing yet — completes after editor.toml lands in hero_demo
and the heroci smoke confirms `install --from-ci --root` produces a
working binary with ORT_DYLIB_PATH resolving.

Signed-off-by: mik-tf
mik-tf merged commit aaaf4554bf into development 2026-05-05 13:35:50 +00:00
mik-tf deleted branch development_mik_d05_editor_consumer 2026-05-05 13:35:50 +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!210
No description provided.