chore(#161): remove redundant in-repo admin dashboard/proxy (hero_aibroker_admin) #168

Merged
rawdaGastan merged 2 commits from development_remove_inrepo_admin into development 2026-06-24 13:49:09 +00:00
Member

Summary

Removes the in-repo admin dashboard + REST/RPC proxy crate. Per
hero_skills/web/hero_admin_ui.md ("service repos ship no admin code"), it's now redundant:
request routing is handled by hero_router, and the admin console by hero_components
(hero_components_app::tabs_for("hero_aibroker"), which discovers the broker via hero_router
and renders Models/Catalog/Providers/API Keys/Mothers/MCP/Metrics/Chat + generic
Playground/Docs/Diagnostics).

Part of #161. Targets development_oschema_migration (#166), which established the
consolidated multidomain socket this consumes.

Removed

  • crates/hero_aibroker_admin — Askama dashboard + REST/RPC proxy
  • its entry in the workspace members (+ Cargo.lock)

Standalone leaf crate; nothing in the workspace depended on it.

Intentionally KEPT

  • crates/hero_aibroker_app — this is the Hero OS archipelago island
    ([package.metadata.island], hero_archipelagos_core / IslandContext), a distinct Hero OS
    desktop-app surface. hero_admin_ui.md covers the admin console only and does not mention
    islands
    , so removing the island is out of scope here — it stays unless decided separately.
  • the broker's admin domain (config_get / provider_* / model_* / api_key_* /
    logs_* / metrics_* RPC methods in hero_aibroker_server) — the backend hero_components calls.

Verification (live, this branch)

  • Workspace builds without the removed crate; broker rebuilds + runs (real mode: openrouter/
    groq/kimi keys, 34 models, all 10 domains).
  • Through hero_router: domains.json 200, models.count→34, meta.info ok, admin.config_get
    200, REST /v1/models 200.
  • hero_components renders the full AIBroker admin against the live broker.

🤖 Generated with Claude Code

## Summary Removes the in-repo admin **dashboard + REST/RPC proxy** crate. Per `hero_skills/web/hero_admin_ui.md` ("service repos ship no admin code"), it's now redundant: request routing is handled by **hero_router**, and the admin console by **hero_components** (`hero_components_app::tabs_for("hero_aibroker")`, which discovers the broker via hero_router and renders Models/Catalog/Providers/API Keys/Mothers/MCP/Metrics/Chat + generic Playground/Docs/Diagnostics). Part of #161. Targets `development_oschema_migration` (#166), which established the consolidated multidomain socket this consumes. ## Removed - `crates/hero_aibroker_admin` — Askama dashboard + REST/RPC proxy - its entry in the workspace `members` (+ Cargo.lock) Standalone leaf crate; nothing in the workspace depended on it. ## Intentionally KEPT - **`crates/hero_aibroker_app`** — this is the Hero OS **archipelago island** (`[package.metadata.island]`, `hero_archipelagos_core` / `IslandContext`), a distinct Hero OS desktop-app surface. `hero_admin_ui.md` covers the admin *console* only and **does not mention islands**, so removing the island is out of scope here — it stays unless decided separately. - the broker's **`admin` domain** (`config_get` / `provider_*` / `model_*` / `api_key_*` / `logs_*` / `metrics_*` RPC methods in `hero_aibroker_server`) — the backend hero_components calls. ## Verification (live, this branch) - Workspace builds without the removed crate; broker rebuilds + runs (real mode: openrouter/ groq/kimi keys, 34 models, all 10 domains). - Through hero_router: `domains.json` 200, `models.count`→34, `meta.info` ok, `admin.config_get` 200, REST `/v1/models` 200. - hero_components renders the full AIBroker admin against the live broker. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Per skills/web/hero_admin_ui.md ("service repos ship no admin code"; the
per-service hero_<svc>_admin_dx pattern is retired), the AIBroker admin UI now
lives in the shared hero_components repo (hero_components_app `tabs_for("hero_aibroker")`,
branch development_aibroker_admin), which discovers the broker via hero_router and
renders Models/Catalog/Providers/API Keys/Mothers/MCP/Metrics/Chat plus the
generic Playground/Docs/Diagnostics — verified rendering live broker data.

Removes the now-redundant in-repo crates:
- crates/hero_aibroker_app    (Dioxus WASM admin island)
- crates/hero_aibroker_admin  (Askama dashboard + REST/RPC proxy)
and drops them from the workspace members.

The broker's `admin` DOMAIN (config_get / provider_* / model_* / api_key_* /
logs_* / metrics_* RPC methods in hero_aibroker_server) is intentionally KEPT —
that's the backend hero_components calls. Nothing in the workspace depended on
the removed crates.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
nabil_salah force-pushed development_remove_inrepo_admin from c12302d0cf to bb978bb70a 2026-06-24 13:04:29 +00:00 Compare
nabil_salah changed title from #166 to chore(#161): remove redundant in-repo admin dashboard/proxy (hero_aibroker_admin) 2026-06-24 13:05:05 +00:00
rawdaGastan changed target branch from development_oschema_migration to development 2026-06-24 13:48:30 +00:00
rawdaGastan merged commit ac77b4ff02 into development 2026-06-24 13:49:09 +00:00
rawdaGastan deleted branch development_remove_inrepo_admin 2026-06-24 13:49:14 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
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_aibroker!168
No description provided.