2.3 KiB
2.3 KiB
Foundation Gateway Baseline
Last updated: 2026-04-29
Repository State
- Repository:
/home/netuser/bin/geniehive - Baseline commit:
2355cf8114db5a1ac4630ca22aba63c703553f70 - Branch:
main
Current Capability Snapshot
GenieHive is currently a local-first control plane for heterogeneous generative AI services. It already supports:
- OpenAI-compatible
GET /v1/models - OpenAI-compatible
POST /v1/chat/completions - OpenAI-compatible
POST /v1/embeddings POST /v1/audio/transcriptionsmultipart proxying- node registration and heartbeat
- SQLite-backed hosts, services, roles, and benchmark samples
- role-based route resolution
- request policy shaping
- benchmark-informed route scoring
- optional active service health probing
- static client and node API keys
Casual Deployment Behavior To Preserve
configs/control.example.yamlloads without Foundation-specific sections.- Static
auth.client_api_keysauthorize client requests withX-Api-Key. - Static
auth.node_api_keysauthorize node requests withX-GenieHive-Node-Key. - Empty client or node key lists disable that auth check for development.
- Local model servers do not require provider credential config.
- Admin endpoints, audit logging, named keys, and budget checks are not required for a local-only deployment.
Current Example Ports
- Control plane default:
127.0.0.1:8800 - Node examples commonly use localhost service endpoints for Ollama, llama.cpp, llamafile, or vLLM.
- Recent ZeroTier test deployment used control plane binding
172.24.50.65:8800, node127.0.0.1:8891, and llama.cpp127.0.0.1:18091.
Baseline Verification
Run from the repository root:
python -m pytest -q tests
Expected current result at baseline: all tests pass.
Current verification result after adding the Foundation roadmap, config profile scaffold, named client key storage, opt-in named auth, and admin key endpoints:
58 passed
Known Constraints
- Client authentication is static-key based, not named or revocable per user.
- Request attribution is not currently persisted.
- Provider credentials are not modeled as first-class control-plane objects.
- No budget or quota enforcement exists.
- Anthropic Messages API is not natively adapted behind the OpenAI-compatible facade.