build(agent): new-agents-4#58ba63 iteration

This commit is contained in:
agent-58ba63c88b4c9625 2026-04-19 19:34:00 +02:00
parent 2460a221ed
commit e4a1ff9752
1 changed files with 38 additions and 1 deletions

View File

@ -7,7 +7,7 @@ structures that adapters and tests can rely on.
from __future__ import annotations
from dataclasses import dataclass, field
from dataclasses import dataclass, field, asdict
from typing import Dict, Any, Optional
import json
import hashlib
@ -338,3 +338,40 @@ class ResourceUsage:
resources: Dict[str, float] = field(default_factory=dict)
timestamp: float = field(default_factory=lambda: time.time())
@dataclass
class SharedVariables:
"""Canonical container for signals shared among agents.
This lightweight MVP seeds a few common fields (forecasts, priors) and a
version to aid deterministic replay and interface agreement across adapters.
"""
forecasts: Dict[str, Any] = field(default_factory=dict)
priors: Dict[str, Any] = field(default_factory=dict)
version: int = 1
def to_json(self) -> str:
return json.dumps(asdict(self), sort_keys=True)
@dataclass
class DualVariables:
"""MVP representation of dual variables (Lagrange multipliers) for ADMM-like updates."""
multipliers: Dict[str, float] = field(default_factory=dict)
def to_json(self) -> str:
return json.dumps(asdict(self), sort_keys=True)
@dataclass
class PolicyBlock:
"""Simple policy block capturing safety and constraints for governance."""
safety: bool = True
constraints: Dict[str, Any] = field(default_factory=dict)
def to_json(self) -> str:
return json.dumps(asdict(self), sort_keys=True)