Migrate to Hero Service 5-crate architecture #3

Open
mahmoud wants to merge 2 commits from development_standardize into development
Owner

Description

Migrates hero_indexer from a monolithic 2-crate layout to the standard Hero Service 5-crate architecture, matching the pattern used by hero_redis, hero_voice, and hero_services.

Changes

  • Split monolith heroindex into hero_indexer (core lib) + hero_indexer_openrpc (backend binary)
  • Create hero_indexer_http with dual listener (Unix socket + TCP:8809), admin dashboard, /rpc proxy, /mcp endpoint, /openrpc.json
  • Add MCP-to-OpenRPC translation proxy (initialize, tools/list, tools/call)
  • Create hero_indexer_rhai placeholder crate
  • Rename heroindex_clienthero_indexer_client, update socket path to standard location
  • Move all crates under crates/ directory
  • Update workspace Cargo.toml: 5 members, shared deps, Apache-2.0 license, PlanetFirst authors
  • Update Makefile run target to start both services (openrpc background + http foreground)
  • Update CI workflows with forge_config before publish_binaries
  • Rewrite README and docs for new architecture
  • Remove dead code: logging.rs, mcp.rs, web/ handlers, DEVELOPMENT_UI.md
### Description Migrates hero_indexer from a monolithic 2-crate layout to the standard Hero Service 5-crate architecture, matching the pattern used by hero_redis, hero_voice, and hero_services. ### Changes - Split monolith `heroindex` into `hero_indexer` (core lib) + `hero_indexer_openrpc` (backend binary) - Create `hero_indexer_http` with dual listener (Unix socket + TCP:8809), admin dashboard, /rpc proxy, /mcp endpoint, /openrpc.json - Add MCP-to-OpenRPC translation proxy (initialize, tools/list, tools/call) - Create `hero_indexer_rhai` placeholder crate - Rename `heroindex_client` → `hero_indexer_client`, update socket path to standard location - Move all crates under `crates/` directory - Update workspace Cargo.toml: 5 members, shared deps, Apache-2.0 license, PlanetFirst authors - Update Makefile run target to start both services (openrpc background + http foreground) - Update CI workflows with forge_config before publish_binaries - Rewrite README and docs for new architecture - Remove dead code: logging.rs, mcp.rs, web/ handlers, DEVELOPMENT_UI.md ### Related Issues - https://forge.ourworld.tf/lhumina_code/hero_indexer/issues/2
- Adjust `run` target to `hero_indexer`
- Adjust `rundev` target to `hero_indexer`
feat: migrate to Hero Service 5-crate architecture
All checks were successful
Build and Test / build (pull_request) Successful in 55s
10c4d99157
- Split monolith into hero_indexer (lib), hero_indexer_openrpc (backend),
  hero_indexer_http (admin UI + proxy), hero_indexer_client, hero_indexer_rhai
- Backend: raw JSON-RPC over Unix socket at ~/hero/var/sockets/hero_indexer_openrpc.sock
- HTTP: dual listener (Unix socket + TCP:8809), /rpc proxy, /mcp endpoint, /openrpc.json
- Add MCP-to-OpenRPC translation proxy (initialize, tools/list, tools/call)
- Update license to Apache-2.0, authors to PlanetFirst
- Update CI workflows with forge_config, README, buildenv.sh, Makefile
All checks were successful
Build and Test / build (pull_request) Successful in 55s
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin development_standardize:development_standardize
git switch development_standardize

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch development
git merge --no-ff development_standardize
git switch development_standardize
git rebase development
git switch development
git merge --ff-only development_standardize
git switch development_standardize
git rebase development
git switch development
git merge --no-ff development_standardize
git switch development
git merge --squash development_standardize
git switch development
git merge --ff-only development_standardize
git switch development
git merge development_standardize
git push origin development
Sign in to join this conversation.
No reviewers
No labels
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_indexer!3
No description provided.