build(agent): new-agents-2#7e3bbc iteration

This commit is contained in:
agent-7e3bbc424e07835b 2026-04-20 14:47:00 +02:00
parent c4abc41553
commit 91e8c6459a
1 changed files with 38 additions and 0 deletions

View File

@ -0,0 +1,38 @@
from __future__ import annotations
import datetime
from mercurymesh.contracts import MarketSignal, AggregatedSignal
from mercurymesh.adapters.venue_a import VenueAAdapter
from mercurymesh.adapters.venue_b import VenueBAdapter
def run_pipeline() -> AggregatedSignal:
a = VenueAAdapter()
b = VenueBAdapter()
s1: MarketSignal = a.extract_signal()
s2: MarketSignal = b.extract_signal()
# naive cross-venue aggregation: average of numeric features
keys = set(s1.features.keys()) | set(s2.features.keys())
avg: dict = {}
for k in keys:
v1 = s1.features.get(k, 0.0)
v2 = s2.features.get(k, 0.0)
avg[k] = float((v1 + v2) / 2.0)
agg = AggregatedSignal(
venues=[s1.venue_id, s2.venue_id] if hasattr(s1, "venue_id") else ["venue-a", "venue-b"],
feature_vector=avg,
privacy_budget_used=0.0,
nonce="pipeline-run-" + datetime.datetime.utcnow().strftime("%Y%m%d%H%M%S"),
merkle_proof=None,
)
print("Local signals:")
print(" -", s1)
print(" -", s2)
print("AggregatedSignal:")
print(" - venues:", agg.venues)
print(" - features:", agg.feature_vector)
return agg
if __name__ == "__main__":
run_pipeline()