lab skills sync fails: hero_proc is not a valid technology value in 2 new sidecars #263

Open
opened 2026-05-19 02:44:14 +00:00 by mik-tf · 0 comments
Owner

Repro

lab skills sync

Fails immediately with:

  skill: hero_ui_logs_viewer
  TOML parse error at line 2, column 14
  |
2 | technology = ["rpc", "js", "hero_proc"]
  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
invalid technology value: "hero_proc"

Allowed:
rust, rhai, bash, nushell, python, js, toml, yaml, json, openrpc, rpc, rest, http, markdown

Cause

Commit 707e7a7 added 4 new component skills under skills/hero/ui/. Two of them declare "hero_proc" in technology:

  • skills/hero/ui/hero_ui_logs_viewer.toml line 2: technology = ["rpc", "js", "hero_proc"]
  • skills/hero/ui/hero_ui_jobs_viewer.toml line 2: technology = ["rpc", "js", "hero_proc"]

The Technology Enum in skills/skills/skills_metadata.md is locked to: rust, rhai, bash, nushell, python, js, toml, yaml, json, openrpc, rpc, rest, http, markdown. "hero_proc" is a service/domain name, not a technology.

The sibling sidecar hero_ui_api_docs.toml correctly uses technology = ["rpc", "js", "openrpc"] — same shape minus the schema violation.

Both offending sidecars already encode the hero_proc relationship correctly in links (hero_proc_log, hero_proc_openrpc), so the "hero_proc" value is duplicative AND invalid.

Blast radius

lab skills sync is serial and fail-fast — the first malformed sidecar aborts the entire sync. Net effect: ~/.claude/skills/ mirror is frozen at the s93 snapshot (73762cb) and won't pick up any of the 92 intervening commits worth of skill changes (config/service/networkprotocol subdir reorg in 7a0a747, lab install/HeroConfig migration, etc.) until this is fixed.

Fix

Two-line patch: drop "hero_proc" from the technology array in both sidecars.

# both files, line 2:
technology = ["rpc", "js"]

The existing links = ["hero_ui_assets", "hero_ui_dashboard_admin", "hero_proc_log"] (and hero_proc_openrpc for jobs viewer) already encodes the cross-reference correctly.

Found during s120 hero_agent D-10 closure (lhumina_code/hero_proc#102 (comment)).

## Repro ```bash lab skills sync ``` Fails immediately with: ``` skill: hero_ui_logs_viewer TOML parse error at line 2, column 14 | 2 | technology = ["rpc", "js", "hero_proc"] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ invalid technology value: "hero_proc" Allowed: rust, rhai, bash, nushell, python, js, toml, yaml, json, openrpc, rpc, rest, http, markdown ``` ## Cause Commit [`707e7a7`](https://forge.ourworld.tf/lhumina_code/hero_skills/commit/707e7a7) added 4 new component skills under `skills/hero/ui/`. Two of them declare `"hero_proc"` in `technology`: - `skills/hero/ui/hero_ui_logs_viewer.toml` line 2: `technology = ["rpc", "js", "hero_proc"]` - `skills/hero/ui/hero_ui_jobs_viewer.toml` line 2: `technology = ["rpc", "js", "hero_proc"]` The **Technology Enum** in [`skills/skills/skills_metadata.md`](https://forge.ourworld.tf/lhumina_code/hero_skills/src/branch/development/skills/skills/skills_metadata.md) is locked to: `rust`, `rhai`, `bash`, `nushell`, `python`, `js`, `toml`, `yaml`, `json`, `openrpc`, `rpc`, `rest`, `http`, `markdown`. `"hero_proc"` is a service/domain name, not a technology. The sibling sidecar `hero_ui_api_docs.toml` correctly uses `technology = ["rpc", "js", "openrpc"]` — same shape minus the schema violation. Both offending sidecars already encode the hero_proc relationship correctly in `links` (`hero_proc_log`, `hero_proc_openrpc`), so the `"hero_proc"` value is duplicative AND invalid. ## Blast radius `lab skills sync` is serial and fail-fast — the first malformed sidecar aborts the entire sync. Net effect: `~/.claude/skills/` mirror is frozen at the s93 snapshot (`73762cb`) and won't pick up any of the 92 intervening commits worth of skill changes (config/service/networkprotocol subdir reorg in [`7a0a747`](https://forge.ourworld.tf/lhumina_code/hero_skills/commit/7a0a747), lab install/HeroConfig migration, etc.) until this is fixed. ## Fix Two-line patch: drop `"hero_proc"` from the `technology` array in both sidecars. ```toml # both files, line 2: technology = ["rpc", "js"] ``` The existing `links = ["hero_ui_assets", "hero_ui_dashboard_admin", "hero_proc_log"]` (and `hero_proc_openrpc` for jobs viewer) already encodes the cross-reference correctly. Found during s120 hero_agent D-10 closure (https://forge.ourworld.tf/lhumina_code/hero_proc/issues/102#issuecomment-33220).
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_skills#263
No description provided.