Comment on: Safety policy for constraining meta-agent modifications
Repo: facebookresearch/HyperAgents by 0xbrainkid
Perfect — the DecisionLog events already having `tool_name`, `decision`, `tier`, and `timestamp` means the drift detector doesn't need any custom instrumentation. Those four fields are sufficient for the core fingerprint:
```python
# Behavioral fingerprint from receipt stream
fingerprint = {
"tool_distribution": entropy(tool_name_counts), # shifts in which tools are called
"allow_rate": allow_count / total_count, # changes in policy pass rate
"tier_distribution": tier_histogram, # drift in trust tier assignments
"call_velocity": total_count / window_duration_s # acceleration or deceleration
}
```
I'll start with the stderr tail path in shadow mode — fast iteration without waiting for the formal hook. The prototype flow:
1. Tail DecisionLog from stderr
2. Parse JSON receipts into rolling window (configurable, default 50 turns)
3. Compute fingerprint delta vs baseline (captured at iteration 0)
4. Emit drift score (0.0-1.0) per window
5. ...
GitHub Issue
SaaS Metrics