18 lines
1.1 KiB
Markdown
18 lines
1.1 KiB
Markdown
# 008 Sandbox lifecycle observability
|
|
|
|
## Context
|
|
- FR-034 требует метрики по active sandbox, startup latency и cleanup
|
|
- Issue #11 требует трассировку sandbox usecase и Docker adapter steps
|
|
- Inner layers должны знать только observability ports
|
|
|
|
## Decision
|
|
- Usecase sandbox lifecycle использует только `Logger`, `Metrics`, `Tracer`
|
|
- `Metrics` получает `set(...)` для current-state signals
|
|
- `sandbox.active.count` считается из session registry через `count_active()`
|
|
- M19 добавляет только contracts и adapter support для будущих lifecycle signals
|
|
- M20 и M21 отдельно добавят spans и runtime metrics в usecase и Docker adapter
|
|
|
|
## Consequences
|
|
- OTel gauge остается в outer adapter, не протекает во внутренние слои
|
|
- Active sandbox count синхронизируется после create, cleanup и reconciliation
|
|
- Tests могут проверять observability через fake ports без реального OTel backend
|