Files
llm-multiverse/implementation-plans/issue-051.md
Pi Agent 09b516ec3e feat: scaffold Tool Broker Rust project (issue #51)
Create the Tool Broker service skeleton as a Cargo workspace member:
- Tonic gRPC server with DiscoverTools, ExecuteTool, ValidateCall stubs
- TOML config loading (host, port, manifest_dir, audit/secrets addrs)
- Server-streaming support for ExecuteTool via ReceiverStream
- 8 tests (5 config, 3 service stub) passing, clippy clean

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 15:55:53 +01:00

1.3 KiB

Implementation Plan — Issue #51: Scaffold Tool Broker Rust project

Metadata

Field Value
Issue #51
Title Scaffold Tool Broker Rust project
Milestone Phase 7: Tool Broker
Labels
Status COMPLETED
Language Rust
Related Plans issue-014.md, issue-016.md
Blocked by #16

Acceptance Criteria

  • Cargo workspace member created (services/tool-broker/)
  • Dependency on proto-gen crate
  • Tonic gRPC server boilerplate compiles
  • Configuration loading (address, port, manifest paths, enforcement config)
  • Health check endpoint responds (stub endpoints respond with Unimplemented)

Files to Create/Modify

File Action Purpose
services/tool-broker/Cargo.toml Create Package manifest
services/tool-broker/src/main.rs Create Server bootstrap
services/tool-broker/src/lib.rs Create Module exports
services/tool-broker/src/config.rs Create TOML config loading
services/tool-broker/src/service.rs Create gRPC trait impl stubs
Cargo.toml Modify Add workspace member

Deviation Log

Deviation Reason
Port 50057 chosen Follows convention: audit=50052, secrets=50053, memory=50054, model-gateway=50055, search=50056