Feature: Dynamic command discovery and enhanced RPC testing #3

Merged
lily merged 2 commits from feature/dynamic-commands into main 2026-03-19 16:08:59 -06:00
Owner

This PR implements dynamic command discovery for the JSON-RPC interface and enhances the testing protocol.

Key Changes:

  • Dynamic Command Discovery: Replaced the hardcoded command list in jsonrpc.rs with a call to commands::get_command_list(). This ensures that new commands added to the game (like the recently added shop) are automatically exposed to MCP and other RPC clients.
  • Updated Testing Protocol:
    • Added a new automated test case to run-tests.sh that validates the JSON-RPC list_commands output.
    • Updated TESTING.md with a new checklist section for the JSON-RPC interface and kept the manual smoke test script in sync with the automated one.
  • Improved Maintainability: Centralized the command registry in commands.rs to prevent desynchronization between the command dispatcher and the discovery API.

Verified locally with ./run-tests.sh (passing Test 7).

This PR implements dynamic command discovery for the JSON-RPC interface and enhances the testing protocol. ### Key Changes: - **Dynamic Command Discovery**: Replaced the hardcoded command list in `jsonrpc.rs` with a call to `commands::get_command_list()`. This ensures that new commands added to the game (like the recently added `shop`) are automatically exposed to MCP and other RPC clients. - **Updated Testing Protocol**: - Added a new automated test case to `run-tests.sh` that validates the JSON-RPC `list_commands` output. - Updated `TESTING.md` with a new checklist section for the JSON-RPC interface and kept the manual smoke test script in sync with the automated one. - **Improved Maintainability**: Centralized the command registry in `commands.rs` to prevent desynchronization between the command dispatcher and the discovery API. Verified locally with `./run-tests.sh` (passing Test 7).
lily added 1 commit 2026-03-19 15:22:47 -06:00
Feature: dynamic command discovery for JSON-RPC and enhanced testing
Some checks failed
Smoke tests / Build and smoke test (push) Failing after 1m2s
f183daa16c
lily added 1 commit 2026-03-19 15:56:54 -06:00
Merge origin/main into feature/dynamic-commands
All checks were successful
Smoke tests / Build and smoke test (push) Successful in 1m20s
Smoke tests / Build and smoke test (pull_request) Successful in 1m23s
678543dd9a
Restore multi-step smoke workflow (openssh-client, netcat, wait-for-tcp).
Resolve run-tests.sh and TESTING.md with feature JSON-RPC coverage; add
matching Smoke - JSON-RPC list_commands workflow step.

Made-with: Cursor
lily merged commit 03122f2901 into main 2026-03-19 16:08:59 -06:00
lily deleted branch feature/dynamic-commands 2026-03-19 16:09:00 -06:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: lily/mudserver#3