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 __future__ import annotations
from dataclasses import dataclass, field from dataclasses import dataclass, field, asdict
from typing import Dict, Any, Optional from typing import Dict, Any, Optional
import json import json
import hashlib import hashlib
@ -338,3 +338,40 @@ class ResourceUsage:
resources: Dict[str, float] = field(default_factory=dict) resources: Dict[str, float] = field(default_factory=dict)
timestamp: float = field(default_factory=lambda: time.time()) 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)