rezn-bbox is a black-box runtime observer for the Rezn orchestration system.
It monitors externally observable behavior—such as HTTP response time and status codes—and exposes a live event stream for Rezn to consume over WebSocket or SSE.
rezn-bbox does not require application instrumentation. It integrates with local proxies or probes to observe container behavior from the outside.
- Observes HTTP behavior externally
- Captures response times, status codes, and request metadata
- Exposes observations via WebSocket or Server-Sent Events
- Designed for Rezn to connect as a live data consumer
rezn-bbox exposes a stream endpoint (e.g. ws://localhost:7878/metrics).
Each message contains a contract-relevant aggregate:
{
"job": "auth-svc",
"endpoint": "/health",
"method": "GET",
"window": "1m",
"metrics": {
"count": 242,
"status_2xx": 240,
"status_5xx": 2,
"avg_duration_ms": 212.3,
"p95_duration_ms": 289.7
},
"timestamp": 1723442399000
}Rezn uses this data to evaluate postconditions and invariants declared in job contracts.
job "auth-svc" {
contract invariant "bbox.metrics['/health'].p95_duration_ms < 300"
contract invariant "bbox.metrics['/health'].status_5xx == 0"
}
or
contract postcondition "bbox.avg_duration_ms < 250"
MPL 2.0