From 4388247d5699dffc7f06b067682f8d23e0a9d1c5 Mon Sep 17 00:00:00 2001 From: agent-a6e6ec231c5f7801 Date: Mon, 20 Apr 2026 14:37:13 +0200 Subject: [PATCH] build(agent): new-agents#a6e6ec iteration --- delta_mesh/EnergiBridge.c | 12 ++++++++++++ delta_mesh/EnergiBridge.h | 38 ++++++++++++++++++++++++++++++++++++++ delta_mesh/EnergiBridge.o | Bin 0 -> 1328 bytes delta_mesh/demo | Bin 70712 -> 70864 bytes test.sh | 3 ++- 5 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 delta_mesh/EnergiBridge.c create mode 100644 delta_mesh/EnergiBridge.h create mode 100644 delta_mesh/EnergiBridge.o diff --git a/delta_mesh/EnergiBridge.c b/delta_mesh/EnergiBridge.c new file mode 100644 index 0000000..e6cbcbe --- /dev/null +++ b/delta_mesh/EnergiBridge.c @@ -0,0 +1,12 @@ +// Minimal EnergiBridge implementation: convert DeltaMesh primitives into a CatOpt-like structure. +#include "EnergiBridge.h" + +void EnergiBridge_map_LocalMarket_to_CatOpt(const LocalMarket* lm, CatOpt_Object* out) { + if (!lm || !out) return; + // Direct field mapping for toy MVP; in a real bridge this would be richer and versioned + out->venue = lm->venue; + out->inventory = lm->inventory; + out->risk_budget = lm->risk_budget; + // Best-effort: initialize a simple static version; in a real system this would be a per-message counter + out->version = 1; +} diff --git a/delta_mesh/EnergiBridge.h b/delta_mesh/EnergiBridge.h new file mode 100644 index 0000000..f77d778 --- /dev/null +++ b/delta_mesh/EnergiBridge.h @@ -0,0 +1,38 @@ +// Minimal EnergiBridge: bridge DeltaMesh primitives to a vendor-agnostic CatOpt representation +// This is a tiny, production-friendly adapter skeleton to demonstrate a canonical bridge +// and deterministic data-plane mappings for MVP instrumentation. + +#ifndef ENERGY_BRIDGE_H +#define ENERGY_BRIDGE_H + +#include "LocalMarket.h" +#include "SharedSignals.h" +#include "PlanDelta.h" + +// Canonical CatOpt-like object representation +typedef struct CatOpt_Object { + const char* venue; // venue identifier + double inventory; // per-venue inventory proxy + double risk_budget; // risk budget allocated to this venue + unsigned long version; // per-message version for replayability +} CatOpt_Object; + +// Canonical CatOpt-like signal representation (aggregated signals) +typedef struct CatOpt_Signal { + double aggregated_greeks; + double implied_vol; + unsigned long version; +} CatOpt_Signal; + +// Canonical CatOpt-like plan delta representation (routing/hedge plan) +typedef struct CatOpt_PlanDelta { + double quote; + double hedge; + unsigned long timestamp; // monotonic timestamp for replay + unsigned long version; +} CatOpt_PlanDelta; + +// Map a LocalMarket instance to a CatOpt_Object. This is intentionally simple and side-effect free. +void EnergiBridge_map_LocalMarket_to_CatOpt(const LocalMarket* lm, CatOpt_Object* out); + +#endif diff --git a/delta_mesh/EnergiBridge.o b/delta_mesh/EnergiBridge.o new file mode 100644 index 0000000000000000000000000000000000000000..b81b91997d8c830c246bb61844c53d2e8ef53cb7 GIT binary patch literal 1328 zcmbtTK~ED=5dM}Hg1`aPm?ju0qzM@1g*JLIm~5P1u4%azaN=LW*^v^EfYJwkr?ELdGyn_>lnZy9}`;@R`K{F4>WWu6Sk!8x2m%u&Rb ztNF4v#C2xjohC9?rqlnaRig9u{mq4@?DbxZZ@(wwVx0`; z`#0ON37+O$S2oF+r{`b!FNw=Fcj$4&_V?$v{jGjYBx}3;@2=z6e(r(c-@0qUEZ^_X zXLY4U4u74Y3$kqr+W(Y!d`FgVah}KTO%Q(ai)7vm{DABQ_8BCxe8&CVb9`)gZ`pCg TKmQ8FviJov)Um^5)93#ME1_4A literal 0 HcmV?d00001 diff --git a/delta_mesh/demo b/delta_mesh/demo index efb5cba6c232e0d0e43a61922cadaac7946cdd9f..f404e5ba878477cb733d30b0e07d5c8c5a08f895 100755 GIT binary patch delta 1188 zcmZuvT}V@L6hG(Q>)chRyMCY}(`|`LhE9kyP?{f=4+}8_QKC6i)GWV}FbrA*LC}M1 z(LaJ}Js3(Q*@9Uwnh5EeMwvboOCo|EQtBb2c{~5RT@dNO;rBnk^Lfub)8o?8gfv?VmeuR6m=)bCxmNLgWMpO{B7!e6@_L+ed=$UKSbK~Q#pew~RCSfmx~;11 zg#CoWoF}|N7$yu5I#gAiCv+12CiD`T(f{0NuY5rz4iW`b@i}IK1Ed?oIXFkcIVWin zm8u}*VkK=PE%z((zJ_-4NMv!zCgqK1|Eg*&C#sSi_YC*r>OXx<=4LwS6H@1nYMkd? z_<&u+7X}C9#9#h}NIBL8aXTbp9a~1s5L2L)KQb{8wH4S1p@3y5NHS}YFrT%G*hSHc zA|A&^rbt+VU95`3C>xL{b2xNe;t5$Yn~THKc!${x*d!z%yDMQ1TD2(Qnas`@u-Gym zI}ko07YhO)C@{~a3|LTFpqZQMYJ?s;#G#pH&`(Ks)i61pMrmdPMjGV;Ylz28%NGi^ zLM9Y~pvP%=lU*TqT!7qm|1zfGD>g+0eqajEUSywn_7b^Mg=DCUU9VnZMT@emliU2C z;y<+Bd$-B02$|s6)jN?!N##vTv+1P(Ek0IX|IbA{0!(0y@rAL*C)q=q&hm|qMebQc zl-CZ7o=s7=o3hQ21?9W?_ArzwyPr3uv39#Ju~Kr!-R8Zum5hfxGTJcdXm7`0XLt2r zcY9|?=yC#PVE#_Zea_SGcJ;M+&YtiL_H+!nhx*(#o}v2wp^!fj$1rrrgmzId3arJ9 z#j?K3I_5KDnXG?0-5!~W{!?{yF^hsF%0_GvIGD6n}4K_RpxBJGQbbEwO7*YLNzpB5f%wg{bVd zDV~Q81reGB*&b$#KsSO6I;=#(M$pu)2-N7H&^o!LNn9K&<&A*s-X-FH-aXu1?UOPQKtJ zPAbdIu~(_D=RvooK)35*%c`A7jRM@Z>U%4E!ZcWk{1yKb3|Gb%=PEMjmGR>2l03R< zWP<7A;v)g}QpL7QjDy>@eU|YaV^;8tHyFdVZO<@f7+*4G8P~!19&AqiU}+~)&==Sn zW;n#&!mdbRbcjV1v+iDlf{7A#A-CimGKm|kfvZe zc2ge%4ayj%2?c}LOACHHU_MnajA%JpTJ_-oW+>^$Gc==MEa{F{@6-rYuBlwDY02*%>pTlyCf#r=tN+*0Q938oJ>qa_XUQi?=ddrs z;Rfe|E}KOalW1<#U;~|G?ZSTaLye*d?vk(xV9O{{w5+)8+sG diff --git a/test.sh b/test.sh index 6a871f8..d436ec3 100644 --- a/test.sh +++ b/test.sh @@ -12,7 +12,8 @@ $cc $CCFLAGS -c delta_mesh/admm_lite.c -o delta_mesh/admm_lite.o $cc $CCFLAGS -c delta_mesh/LocalMarket.c -o delta_mesh/LocalMarket.o || true $cc $CCFLAGS -c delta_mesh/SharedSignals.c -o delta_mesh/SharedSignals.o || true $cc $CCFLAGS -c delta_mesh/PlanDelta.c -o delta_mesh/PlanDelta.o || true -$cc $CCFLAGS -o delta_mesh/demo delta_mesh/demo_main.o delta_mesh/admm_lite.o delta_mesh/LocalMarket.o delta_mesh/SharedSignals.o delta_mesh/PlanDelta.o +$cc $CCFLAGS -c delta_mesh/EnergiBridge.c -o delta_mesh/EnergiBridge.o +$cc $CCFLAGS -o delta_mesh/demo delta_mesh/demo_main.o delta_mesh/admm_lite.o delta_mesh/LocalMarket.o delta_mesh/SharedSignals.o delta_mesh/PlanDelta.o delta_mesh/EnergiBridge.o echo "Running demo..." ./delta_mesh/demo