Operator note: redeploy hero_voice_admin when a host UI adopts the voice-widget embed #36

Open
opened 2026-05-27 13:46:48 +00:00 by mik-tf · 0 comments
Owner

The hero_voice_widget skill instructs Hero web UIs to embed:

<link rel="stylesheet" href="/hero_voice/admin/voice-widget/voice-widget.css">
<script src="/hero_voice/admin/voice-widget/components.js"></script>
<script src="/hero_voice/admin/voice-widget/floating.js"></script>
<script src="/hero_voice/admin/voice-widget/bar.js"></script>

These assets are served from the hero_voice_admin binary via rust_embed::Embed over static/voice-widget/. When a Hero UI (e.g. hero_cockpit_web) adopts the embed for the first time, the deployed hero_voice_admin binary on the target host must already include the voice-widget assets compiled in. Stale binaries on existing VMs may pre-date that and silently 404 the assets without the browser console clearly surfacing it (hero_proxy may 302-to-OAuth the JS request and the browser silently ignores the resulting HTML body).

Observed during s168 admin VM rollout: cockpit_web adopted the embed; the voice-bar did not render in the navbar; rebuilding and redeploying hero_voice_admin fixed it without any source change.

Acceptance: the skill description gains a one-line operator note ("when a host UI adopts the voice-widget embed for the first time, redeploy hero_voice_admin on the target host so the embedded assets are present"), and ideally a quick probe like grep -a voice-widget /home/<user>/hero/bin/hero_voice_admin to confirm embedding.

The `hero_voice_widget` skill instructs Hero web UIs to embed: ```html <link rel="stylesheet" href="/hero_voice/admin/voice-widget/voice-widget.css"> <script src="/hero_voice/admin/voice-widget/components.js"></script> <script src="/hero_voice/admin/voice-widget/floating.js"></script> <script src="/hero_voice/admin/voice-widget/bar.js"></script> ``` These assets are served from the `hero_voice_admin` binary via `rust_embed::Embed` over `static/voice-widget/`. When a Hero UI (e.g. hero_cockpit_web) adopts the embed for the first time, the deployed `hero_voice_admin` binary on the target host must already include the voice-widget assets compiled in. Stale binaries on existing VMs may pre-date that and silently 404 the assets without the browser console clearly surfacing it (hero_proxy may 302-to-OAuth the JS request and the browser silently ignores the resulting HTML body). Observed during s168 admin VM rollout: cockpit_web adopted the embed; the voice-bar did not render in the navbar; rebuilding and redeploying hero_voice_admin fixed it without any source change. Acceptance: the skill description gains a one-line operator note ("when a host UI adopts the voice-widget embed for the first time, redeploy hero_voice_admin on the target host so the embedded assets are present"), and ideally a quick probe like `grep -a voice-widget /home/<user>/hero/bin/hero_voice_admin` to confirm embedding.
Sign in to join this conversation.
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_voice#36
No description provided.