overmind-mcp 3.6.1 → 3.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"a2a_hub.js","sourceRoot":"","sources":["../../src/tools/a2a_hub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAiCpB,8EAA8E;AAE9E,SAAS,OAAO,CAAC,GAAW,EAAE,SAAS,GAAG,IAAI;IAC5C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,GAAG,eAAe,EAAE;YACzF,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,SAAS,GAAG,IAAI;SAC1B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAA4B,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CACf,GAAW,EACX,IAA6B,EAC7B,SAAS,GAAG,MAAM;IAElB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,QAAQ,CACrB,cAAc,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,GAAG,6CAA6C,cAAc,eAAe,EACpI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,GAAG,IAAI,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,CAC7E,CAAC;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAA4B,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,8EAA8E;AAE9E,SAAS,eAAe;IACtB,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;IAEvF,kCAAkC;IAClC,IAAI,UAAU,GAA+C,EAAE,CAAC;IAChE,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;YAClE,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAsC,EAAE,EAAE,CAAC,CAAC;oBACzE,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,SAAS;iBACpC,CAAC,CAAC,CAAC;YACN,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IAED,oCAAoC;IACpC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,UAAU,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;YAC3C,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,KAAK,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,UAAU,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,oBAAoB,IAAI,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,SAAS,EAAE,IAAI,CAAC,CAAC;QAE9C,IAAI,MAAM,EAAE,CAAC;YACX,oDAAoD;YACpD,MAAM,aAAa,GACjB,SAAS;gBACR,MAAM,CAAC,KAAgB;gBACvB,MAAM,CAAC,SAAoB;gBAC3B,MAAM,CAAC,OAAkB;gBAC1B,SAAS,CAAC;YAEZ,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI;gBACJ,GAAG;gBACH,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE,aAAa;gBACxB,MAAM;aACP,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,oCAAoC;YACpC,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI;gBACJ,GAAG;gBACH,MAAM,EAAE,KAAK;gBACb,SAAS,EAAE,SAAS,IAAI,EAAE;aAC3B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8EAA8E;AAE9E,SAAS,cAAc;IACrB,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,IAAI,CAAC;IAE1D,MAAM,MAAM,GAAgB,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;IAElC,0CAA0C;IAC1C,MAAM,aAAa,GAAG,IAAI,GAAG,EAAsB,CAAC;IACpD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACzD,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,uBAAuB;IACvB,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;gBAAE,SAAS;YACnC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAEvD,mBAAmB;YACnB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;YACzD,IAAI,KAAK,GAAG,SAAS,CAAC;YACtB,IAAI,QAAQ,GAAG,SAAS,CAAC;YACzB,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBACnD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;gBAClE,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;gBAC5D,IAAI,UAAU;oBAAE,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAClE,IAAI,aAAa;oBAAE,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7E,CAAC;YAED,oCAAoC;YACpC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YAC/D,IAAI,WAAW,GAAG,EAAE,CAAC;YACrB,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBACnC,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;gBACpD,MAAM,SAAS,GAAG,EAAE,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC3D,IAAI,SAAS;oBAAE,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACnD,CAAC;YAED,eAAe;YACf,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACnD,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,CAAC,GAAW,EAAU,EAAE;wBACnC,IAAI,KAAK,GAAG,CAAC,CAAC;wBACd,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;4BAC7D,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gCACpB,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;4BACxC,CAAC;iCAAM,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gCACjC,KAAK,EAAE,CAAC;4BACV,CAAC;wBACH,CAAC;wBACD,OAAO,KAAK,CAAC;oBACf,CAAC,CAAC;oBACF,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;gBAChC,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;YACH,CAAC;YAED,eAAe;YACf,MAAM,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;YAEjF,gBAAgB;YAChB,IAAI,YAAY,GAAkB,IAAI,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YACnD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC;oBACH,YAAY,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;gBAC1D,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;YACH,CAAC;YAED,+BAA+B;YAC/B,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAE7C,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,KAAK;gBACL,QAAQ;gBACR,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;gBACrC,UAAU,EAAE,MAAM,EAAE,IAAI,IAAI,IAAI;gBAChC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,IAAI;gBAC9B,WAAW;gBACX,WAAW;gBACX,SAAS;gBACT,YAAY;aACb,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,WAAW,EAAE,MAAM,CAAC,MAAM;QAC1B,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM;QACrD,MAAM;QACN,OAAO;QACP,SAAS;KACV,CAAC;AACJ,CAAC;AAED,8EAA8E;AAE9E,SAAS,YAAY,CACnB,IAAY,EACZ,OAAe,EACf,OAGI,EAAE;IAEN,MAAM,GAAG,GAAG,oBAAoB,IAAI,OAAO,CAAC;IAC5C,MAAM,IAAI,GAA4B;QACpC,OAAO;QACP,MAAM,EAAE,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,QAAQ,EAAE;QAC5D,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,SAAS;QACtD,SAAS,EAAE,KAAK;KACjB,CAAC;IACF,IAAI,IAAI,CAAC,KAAK;QAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAExC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,CAAC;IAE/D,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,IAAI,cAAc,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IAC5E,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,WAAW,IAAI,KAAK,QAAQ,CAAC,KAAK,EAAE;YAC1C,GAAG,EAAE,QAAQ;SACd,CAAC;IACJ,CAAC;IAED,2DAA2D;IAC3D,MAAM,IAAI,GACP,QAAQ,CAAC,MAAiB;QAC1B,QAAQ,CAAC,QAAmB;QAC5B,QAAQ,CAAC,MAAiB;QAC3B,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC9B,CAAC,CAAE,QAAQ,CAAC,OAAoC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACpF,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAE3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAChD,CAAC;AAED,8EAA8E;AAE9E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;SAC5F,QAAQ,CACP,gMAAgM,CACjM;IAEH,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+EAA+E,CAAC;IAE5F,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAEjF,OAAO,EAAE,CAAC;SACP,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,qEAAqE,CAAC;IAElF,KAAK,EAAE,CAAC;SACL,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,QAAQ,CAAC,4DAA4D,CAAC;QACzE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACpC,CAAC,CACH;SACA,QAAQ,EAAE;SACV,QAAQ,CAAC,8CAA8C,CAAC;IAE3D,aAAa,EAAE,CAAC;SACb,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;SACjD,QAAQ,EAAE;SACV,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,kDAAkD,CAAC;IAE/D,IAAI,EAAE,CAAC;SACJ,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,mDAAmD,CAAC;IAEhE,KAAK,EAAE,CAAC;SACL,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,0DAA0D,CAAC;IAEvE,iBAAiB,EAAE,CAAC;SACjB,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,+DAA+D,CAAC;IAE5E,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,IAAI,CAAC;SACT,GAAG,CAAC,MAAM,CAAC;SACX,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;IAE/D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;CAC7D,CAAC,CAAC;AAEH,8EAA8E;AAE9E,SAAS,aAAa,CACpB,MAAc,EACd,SAAoB;IAEpB,6BAA6B;IAC7B,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC9C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAC9D,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,IAAI,MAAM,EAAE,CAAC;IAC1D,CAAC;IAED,8CAA8C;IAC9C,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;IAC9D,IAAI,KAAK,EAAE,UAAU,EAAE,CAAC;QACtB,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IACvD,CAAC;IAED,qBAAqB;IACrB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC;IACjF,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAClD,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AAC3C,CAAC;AAED,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,IAAkC;IAC7D,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,SAAS,CAAC;IAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC;IAEzC,IAAI,CAAC;QACH,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,0EAA0E;YAC1E,WAAW;YACX,0EAA0E;YAC1E,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;gBAE3B,MAAM,KAAK,GAAa;oBACtB,qDAAqD;oBACrD,EAAE;oBACF,aAAa,CAAC,CAAC,SAAS,IAAI,WAAW,EAAE;oBACzC,uBAAuB,CAAC,CAAC,aAAa,EAAE;oBACxC,qBAAqB,CAAC,CAAC,WAAW,EAAE;oBACpC,EAAE;oBACF,kBAAkB;oBAClB,EAAE;iBACH,CAAC;gBAEF,MAAM,aAAa,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACxD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/B,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBAC5C,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;oBAC9C,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;oBAC9C,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;wBAC9B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,SAAS,kBAAkB,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;oBACvE,CAAC;gBACH,CAAC;gBAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACf,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAChC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEf,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,KAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;gBACrE,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;oBACpF,KAAK,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;oBACpF,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;wBACzB,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;wBACvD,MAAM,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;wBAC3D,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;wBAC3E,KAAK,CAAC,IAAI,CACR,KAAK,WAAW,MAAM,UAAU,IAAI,CAAC,CAAC,MAAM,MAAM,UAAU,MAAM,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,WAAW,MAAM,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CACjJ,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACf,KAAK,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;gBAC1F,KAAK,CAAC,IAAI,CACR,2FAA2F,CAC5F,CAAC;gBAEF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1E,CAAC;YAED,0EAA0E;YAC1E,SAAS;YACT,0EAA0E;YAC1E,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACjB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC;wBAC7E,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;gBAC3B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAE1D,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO;wBACL,OAAO,EAAE;4BACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,kBAAkB,IAAI,CAAC,MAAM,eAAe,EAAE;yBAC9E;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,MAAM,GAAG,OAAO,CAAC,oBAAoB,IAAI,SAAS,CAAC,CAAC;gBAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,aAAa,IAAI,cAAc,EAAE,CAAC;wBAC3E,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,KAAK,GAAa,CAAC,gBAAgB,SAAS,MAAM,IAAI,KAAK,EAAE,EAAE,CAAC,CAAC;gBACvE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBAClD,KAAK,CAAC,IAAI,CACR,KAAK,GAAG,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CACzF,CAAC;gBACJ,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1E,CAAC;YAED,0EAA0E;YAC1E,OAAO;YACP,0EAA0E;YAC1E,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClC,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC;wBAC5E,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;gBAC3B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAE1D,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,kBAAkB,IAAI,CAAC,MAAM,iEAAiE;6BACrG;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,eAAe,GAAG,uBAAuB,SAAS,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC7E,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE;oBACjD,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,SAAS,EAAE,OAAO;iBACnB,CAAC,CAAC;gBAEH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC9D,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,yBAAyB,SAAS,MAAM,IAAI,UAAU,MAAM,CAAC,IAAI,EAAE;yBAC1E;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,0EAA0E;YAC1E,qCAAqC;YACrC,0EAA0E;YAC1E,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClC,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAAC;wBAC5E,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;gBAC3B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAE1D,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO;wBACL,OAAO,EAAE;4BACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,kBAAkB,IAAI,CAAC,MAAM,eAAe,EAAE;yBAC9E;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,4CAA4C;gBAC5C,MAAM,eAAe,GAAG,wBAAwB,SAAS,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC9E,MAAM,GAAG,GAAG,oBAAoB,IAAI,OAAO,CAAC;gBAC5C,MAAM,IAAI,GAAG;oBACX,OAAO,EAAE,eAAe;oBACxB,MAAM,EAAE,OAAO,SAAS,EAAE;oBAC1B,QAAQ,EAAE,SAAS;oBACnB,SAAS,EAAE,cAAc;oBACzB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7C,CAAC;gBAEF,6CAA6C;gBAC7C,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;oBAC5D,QAAQ,CACN,oBAAoB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,GAAG,6CAA6C,OAAO,sBAAsB,EACxI,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;gBACJ,CAAC;gBAAC,MAAM,CAAC;oBACP,2BAA2B;gBAC7B,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,yBAAyB,SAAS,MAAM,IAAI,kGAAkG;yBACrJ;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,0EAA0E;YAC1E,WAAW;YACX,0EAA0E;YAC1E,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5D,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,8DAA8D;6BACrE;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAA+D,EAAE,CAAC;gBAC/E,IAAI,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC;gBAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC3B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;oBAE7D,IAAI,CAAC,IAAI,EAAE,CAAC;wBACV,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;wBACtF,MAAM;oBACR,CAAC;oBAED,MAAM,UAAU,GACd,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrD,kBAAkB,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,MAAM,aAAa,EAAE,CAAC;oBAEpE,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;oBAEtE,OAAO,CAAC,IAAI,CAAC;wBACX,KAAK,EAAE,GAAG,SAAS,MAAM,IAAI,GAAG;wBAChC,MAAM,EAAE,MAAM,CAAC,IAAI;wBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;qBACxB,CAAC,CAAC;oBAEH,IAAI,CAAC,MAAM,CAAC,OAAO;wBAAE,MAAM;oBAE3B,aAAa,GAAG,IAAI,CAAC,iBAAiB;wBACpC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;wBACrE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;gBAClB,CAAC;gBAED,MAAM,KAAK,GAAa;oBACtB,4BAA4B,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,SAAS;oBACxE,EAAE;iBACH,CAAC;gBACF,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;oBACvD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC1E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1E,CAAC;YAED,0EAA0E;YAC1E,SAAS;YACT,0EAA0E;YAC1E,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChE,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC;wBAC7E,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;gBAC3B,MAAM,eAAe,GAAG,sBAAsB,SAAS,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBAE5E,sBAAsB;gBACtB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;qBACzB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBACd,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;wBACV,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;oBACvE,CAAC;oBACD,OAAO,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;gBACxF,CAAC,CAAC;qBACD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACd,KAAK,EAAE,IAAI,CAAC,OAAQ,CAAC,CAAC,CAAC;oBACvB,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,IAAI,EAAE,CAAC,CAAC,IAAI;iBACb,CAAC,CAAC,CAAC;gBAEN,QAAQ;gBACR,IAAI,MAAc,CAAC;gBACnB,IAAI,MAA0B,CAAC;gBAE/B,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;oBAC3B,KAAK,eAAe,CAAC,CAAC,CAAC;wBACrB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;wBAC7C,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC;wBAChD,MAAM,GAAG,KAAK,EAAE,KAAK,CAAC;wBACtB,MAAM;oBACR,CAAC;oBACD,KAAK,MAAM,CAAC,CAAC,CAAC;wBACZ,MAAM,MAAM,GAAG,OAAO;6BACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;6BACxB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACjD,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC;wBAChE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;wBAC1B,MAAM;oBACR,CAAC;oBACD,KAAK,QAAQ,CAAC;oBACd,OAAO,CAAC,CAAC,CAAC;wBACR,MAAM,GAAG,OAAO;6BACb,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;6BACrE,IAAI,CAAC,aAAa,CAAC,CAAC;wBACvB,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;gBAC7D,MAAM,KAAK,GAAa;oBACtB,kBAAkB,YAAY,IAAI,OAAO,CAAC,MAAM,kBAAkB,IAAI,CAAC,aAAa,GAAG;oBACvF,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7C,EAAE;oBACF,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;iBACtB,CAAC;gBAEF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1E,CAAC;YAED,0EAA0E;YAC1E,QAAQ;YACR,0EAA0E;YAC1E,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChE,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC;wBAC7E,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;gBAC3B,MAAM,eAAe,GAAG,qBAAqB,SAAS,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC3E,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBAE9C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;qBACzB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBACd,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;wBACV,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;oBACvE,CAAC;oBACD,OAAO,YAAY,CAAC,IAAI,EAAE,eAAe,EAAE;wBACzC,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,SAAS,EAAE,YAAY;qBACxB,CAAC,CAAC;gBACL,CAAC,CAAC;qBACD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACd,KAAK,EAAE,IAAI,CAAC,OAAQ,CAAC,CAAC,CAAC;oBACvB,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,IAAI,EAAE,CAAC,CAAC,IAAI;iBACb,CAAC,CAAC,CAAC;gBAEN,MAAM,KAAK,GAAa;oBACtB,6BAA6B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,YAAY;oBAClG,EAAE;iBACH,CAAC;gBAEF,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;oBACvD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACtE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1E,CAAC;YAED,0EAA0E;YAC1E,YAAY;YACZ,0EAA0E;YAC1E,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClB,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;wBAChE,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;gBAE3B,oBAAoB;gBACpB,IAAI,aAA2B,CAAC;gBAChC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5C,kCAAkC;oBAClC,aAAa,GAAG,IAAI,CAAC,OAAO;yBACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;wBACT,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACrC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;oBAChD,CAAC,CAAC;yBACD,MAAM,CAAC,CAAC,CAAC,EAAmB,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;gBACrD,CAAC;qBAAM,CAAC;oBACN,qBAAqB;oBACrB,aAAa,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACpD,CAAC;gBAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC/B,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,sCAAsC,EAAE,CAAC;wBAClF,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,MAAM,eAAe,GAAG,yBAAyB,SAAS,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBAE/E,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACd,wBAAwB;oBACxB,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;wBAC9B,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,eAAe,EAAE;4BACnD,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,SAAS,EAAE,OAAO;yBACnB,CAAC,CAAC;wBACH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;4BACnB,OAAO;gCACL,OAAO,EAAE;oCACP;wCACE,IAAI,EAAE,MAAe;wCACrB,IAAI,EAAE,yBAAyB,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,IAAI,mBAAmB,MAAM,CAAC,IAAI,EAAE;qCACvF;iCACF;6BACF,CAAC;wBACJ,CAAC;oBACH,CAAC;oBACD,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,+BAA+B,EAAE,CAAC;wBAC3E,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,0BAA0B;gBAC1B,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACtC,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,EAAE,eAAe,EAAE;wBAC9C,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,SAAS,EAAE,OAAO;qBACnB,CAAC,CAAC;oBACH,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACpF,CAAC,CAAC,CAAC;gBAEH,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;gBAC7D,MAAM,KAAK,GAAa,CAAC,sBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,SAAS,EAAE,EAAE,CAAC,CAAC;gBAE5F,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;oBACvD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACtE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;gBAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1E,CAAC;YAED;gBACE,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,sBAAsB,IAAI,CAAC,MAAM,EAAE;yBAC1C;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;QACN,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,qBAAqB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;iBACpF;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"a2a_hub.js","sourceRoot":"","sources":["../../src/tools/a2a_hub.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,544 @@
1
+ # Migration Overmind v4.0 — Wrapper Multi-Agent Persistant
2
+
3
+ > **Statut** : Plan de migration détaillé (4 phases)
4
+ > **Date** : 2026-07-10
5
+ > **Source** : v3.7.0 → v4.0.0
6
+ > **Pré-requis** : v3.7.0 publié (✅ en cours de pipeline)
7
+
8
+ ---
9
+
10
+ ## 🎯 Vision : pourquoi pivoter
11
+
12
+ ### Le problème actuel (v3.7.0)
13
+
14
+ OverMind est positionné "orchestrateur universel" mais il fait 2 choses contradictoires :
15
+
16
+ 1. **Wrapper multi-runner** (utile) — spawn Claude/Hermes/Kilo/Gemini, gère profils
17
+ 2. **Couche d'orchestration centrale** (redondante avec Hermes) — dispatcher, kanban adapter, scenarios
18
+
19
+ La couche (2) réinvente des choses qu'Hermes fait **nativement** depuis la v0.13+ :
20
+ - Kanban natif (`hermes kanban`)
21
+ - Dispatcher (loop gateway 60s tick)
22
+ - Pool credentials avec rotation round-robin
23
+ - Sessions persistantes par profile
24
+
25
+ **Résultat** : 2 sources de vérité pour les mêmes concepts, dette technique, divergence de comportement.
26
+
27
+ ### La cible (v4.0)
28
+
29
+ **OverMind = factory à agents persistants. Point.**
30
+
31
+ ```
32
+ ┌─────────────────────────────────────────────────────────────┐
33
+ │ OVERMIND v4.0 WRAPPER │
34
+ │ │
35
+ │ 1 process FastMCP sur :3099 — pure factory │
36
+ │ │
37
+ │ In: create_agent(name, prompt, model) │
38
+ │ Out: profil Hermes autonome + mémoire + state + skills │
39
+ │ │
40
+ │ Puis l'agent vit sa vie via: │
41
+ │ • run_agent (invoke direct) │
42
+ │ • a2a_hub (HTTP peer-to-peer) │
43
+ │ • bridge par-agent (1 port = 1 agent, peer-to-peer) │
44
+ └─────────────────────────────────────────────────────────────┘
45
+ ```
46
+
47
+ **Ce qui disparaît d'Overmind** (laissé à Hermes, sauf Kanban qui devient optionnel) :
48
+ - ❌ Kanban central → **`kanban_hub` MCP thin wrapper OPTIONNEL** (défaut OFF, opt-in via `OVERMIND_KANBAN_ENABLED=1`)
49
+ - ❌ Dispatcher → gateway loop natif
50
+ - ❌ ScenarioLoader → kanban pipeline natif (uniquement si Kanban activé)
51
+ - ❌ YOLO_CONFIG retry/circuit → dispatcher natif
52
+ - ❌ pgvector memory central → `memory.provider: postgres` dans chaque profil
53
+
54
+ **Ce qui reste d'Overmind** (son vrai rôle) :
55
+ - ✅ `create_agent` — thin wrapper sur `hermes profile create`
56
+ - ✅ `list_agents` / `delete_agent` / `update_agent_config` / `get_agent_configs`
57
+ - ✅ `run_agent` / `run_agents_parallel` — multi-runner (Claude, Kilo, etc.)
58
+ - ✅ `a2a_hub` — inter-agent HTTP (déjà peer-to-peer)
59
+ - ✅ `agent_control` — process lifecycle
60
+ - ✅ `memory_search` / `memory_store` — fallback pour les anciens clients
61
+ - 🔶 `kanban_hub` — **OPTIONNEL** (désactivé par défaut), uniquement si Kanban est dans le scope utilisateur
62
+
63
+ ---
64
+
65
+ ## 📐 Architecture cible
66
+
67
+ ```
68
+ ┌────────────────────────────────────────────────────────────────┐
69
+ │ v3.7.0 (actuel) — Orchestrateur central │
70
+ │ │
71
+ │ Client → MCP:3099 (Overmind) → orchestration/dispatcher │
72
+ │ → KanbanAdapter │
73
+ │ → ScenarioLoader │
74
+ │ → HermesRunner spawn │
75
+ └────────────────────────────────────────────────────────────────┘
76
+ ↓ REFACTOR ↓
77
+ ┌────────────────────────────────────────────────────────────────┐
78
+ │ v4.0 (cible) — Wrapper factory │
79
+ │ │
80
+ │ Client → MCP:3099 (Overmind factory) │
81
+ │ ├─ create_agent(name) → hermes profile create │
82
+ │ ├─ run_agent(name) → HTTP :8642 + X-Hermes-Profile │
83
+ │ ├─ a2a_hub → HTTP peer-to-peer │
84
+ │ └─ kanban_hub → hermes kanban CLI [OPTIONNEL] │
85
+ │ │
86
+ │ Hermes Gateway (:8642, multi-profile) │
87
+ │ Hermes Pool (credentials natifs, rotation auto) │
88
+ └────────────────────────────────────────────────────────────────┘
89
+
90
+ > **Kanban est optionnel** : `kanban_hub` n'est exposé que si `OVERMIND_KANBAN_ENABLED=1`.
91
+ > Défaut = OFF pour rester minimaliste. Les utilisateurs qui n'en ont pas besoin
92
+ > ne tirent jamais la dépendance `hermes kanban` et n'ont pas la surface d'attaque.
93
+ ```
94
+
95
+ ### Différence conceptuelle clé
96
+
97
+ | Aspect | v3.7.0 orchestrateur | v4.0 wrapper |
98
+ |--------|----------------------|--------------|
99
+ | **Source of truth agents** | Overmind registry + db | Profils Hermes natifs (`~/.hermes/profiles/<name>/`) |
100
+ | **Source of truth state** | PostgreSQL central | `state.db` par profile (SQLite Hermes) |
101
+ | **Source of truth memory** | pgvector central | `memory.provider: postgres` par profile OU pgvector partagé en fallback |
102
+ | **Source of truth credentials** | `.env` par profile | Pool Hermes natif (`hermes auth add`) |
103
+ | **Source of truth workflows** | ScenarioLoader.json | Kanban Hermes |
104
+ | **Communication inter-agent** | Bridge central → RPC | HTTP peer-to-peer via bridge par-agent |
105
+ | **Échelle** | Limitée par le central | N agents, 1 process chacun, linéaire |
106
+
107
+ ---
108
+
109
+ ## 🗺️ Phases d'implémentation
110
+
111
+ ### **Phase 1a — Audit & nettoyage minimal (semaine 1)** ⚡ OBLIGATOIRE
112
+
113
+ **Objectif** : supprimer le bloc `dispatcher + YOLO_CONFIG` (le seul vrai code d'orchestration custom). **Garde `KanbanAdapter.ts` et `ScenarioLoader.ts` intacts** pour ne rien casser aux utilisateurs Kanban existants.
114
+
115
+ #### 1a.1 Suppressions (SEULEMENT le couple dispatcher/YOLO)
116
+
117
+ | Fichier | LOC | Remplacé par | Risque |
118
+ |---------|-----|-------------|--------|
119
+ | `src/lib/orchestration/dispatcher.ts` | 283 | Gateway loop Hermes | Faible — seul `index.ts` + `run_agents_parallel.ts` |
120
+ | `YOLO_CONFIG` (inline) | ~50 | retry/circuit-breaker Hermes | Aucun — config isolée |
121
+
122
+ **Garde-fous** :
123
+ - `src/services/KanbanAdapter.ts` ← **CONSERVÉ** (utilisé si Kanban activé)
124
+ - `src/bridge/ScenarioLoader.ts` ← **CONSERVÉ** (utilisé si Kanban activé)
125
+
126
+ #### 1a.2 Étapes concrètes
127
+
128
+ ```bash
129
+ # 1. Backup l'état actuel
130
+ git checkout -b chore/v4-phase1a-cleanup
131
+ git tag v3.7.0-baseline
132
+
133
+ # 2. Supprimer seulement dispatcher.ts et YOLO_CONFIG
134
+ rm src/lib/orchestration/dispatcher.ts
135
+ rmdir src/lib/orchestration
136
+ # Fix imports dans src/index.ts, src/tools/run_agents_parallel.ts
137
+ grep -r "YOLO" src/ # doit retourner 0 résultat
138
+
139
+ # 3. Build + tests
140
+ pnpm run rebuild && pnpm run test && pnpm run lint
141
+
142
+ # 4. Merge
143
+ git checkout main
144
+ git merge --no-ff chore/v4-phase1a-cleanup
145
+ git tag v4.0.0-phase1a
146
+ ```
147
+
148
+ #### 1a.3 Critères de succès Phase 1a
149
+
150
+ | Métrique | Avant | Après |
151
+ |----------|-------|-------|
152
+ | Services files | 17 | 17 (inchangé — 0 suppression) |
153
+ | LOC total src/ | ~12,500 | ~12,200 (-300) |
154
+ | Concept "dispatcher" présent | 1 fichier | 0 |
155
+ | Tests passent | 68 | 68 |
156
+
157
+ ---
158
+
159
+ ### **Phase 1b — Suppression Kanban historique (semaine 1+) — OPTIONNEL**
160
+
161
+ > **Statut** : À faire **UNIQUEMENT** si on confirme via télémétrie/usage
162
+ > que personne n'utilise Kanban via Overmind (peu probable — Nexus l'utilise).
163
+ > Si Kanban est utilisé par ≥1 user → **sauter cette phase**, garder le code legacy.
164
+
165
+ **Pré-requis avant suppression** :
166
+ - ✅ Phase 2 livrée (`kanban_hub` MCP tool disponible)
167
+ - ✅ Au moins 1 release avec Kanban en opt-in sans régression
168
+ - ✅ Communication utilisateurs (CHANGELOG deprecation notice, 1 release de grâce)
169
+
170
+ Si OK pour suppression, déplacer `KanbanAdapter.ts` + `ScenarioLoader.ts` derrière le flag `OVERMIND_KANBAN_ENABLED=1` (déjà ce que fait Phase 2), puis supprimer après 1 release.
171
+
172
+ #### 1b.1 Suppressions conditionnelles
173
+
174
+ | Fichier | LOC | Remplacé par | Risque |
175
+ |---------|-----|-------------|--------|
176
+ | `src/services/KanbanAdapter.ts` | 420 | `tools/kanban_hub.ts` opt-in (Phase 2) | Moyen — utilisé par `index.ts`, `ScenarioLoader.ts` |
177
+ | `src/bridge/ScenarioLoader.ts` | 508 | `hermes kanban pipeline` | Moyen — utilisé par `overmind-bridge.ts` |
178
+
179
+ ---
180
+
181
+ ### **Phase 2 — Support Kanban OPTIONNEL (opt-in) (semaine 2)**
182
+
183
+ > **Statut** : À faire UNIQUEMENT si des utilisateurs demandent Kanban.
184
+ > Si personne ne l'utilise, sauter cette phase. Les autres phases (1, 3, 4) ne
185
+ > dépendent pas de Kanban.
186
+
187
+ **Opt-in** : `OVERMIND_KANBAN_ENABLED=1` dans `.env` (ou flag CLI `--with-kanban`).
188
+
189
+ **Objectif** : remplacer `KanbanAdapter` par 1 outil MCP unifié, conforme au pattern `a2a_hub` / `agent_control`. Uniquement chargé si activé.
190
+
191
+ #### 2.1 Spécification de l'outil
192
+
193
+ ```typescript
194
+ // src/tools/kanban_hub.ts
195
+ import { z } from 'zod';
196
+
197
+ export const kanbanHubTool = {
198
+ name: 'kanban_hub',
199
+ description: `Hermes Kanban — manage tasks, boards and pipelines.
200
+ Actions: init, create, list, show, update, complete, block, unblock,
201
+ comment, assign, link, dispatch, stats, archive, boards, watch.`,
202
+ inputSchema: z.object({
203
+ action: z.enum([
204
+ 'init', 'create', 'list', 'show', 'update', 'complete',
205
+ 'block', 'unblock', 'comment', 'assign', 'link',
206
+ 'dispatch', 'stats', 'archive', 'boards', 'watch',
207
+ ]),
208
+ // Champs communs
209
+ board: z.string().optional(), // board name (multi-board)
210
+ taskId: z.string().optional(), // t_abc123
211
+ // Champs spécifiques par action
212
+ title: z.string().optional(),
213
+ body: z.string().optional(),
214
+ assignee: z.string().optional(),
215
+ parents: z.array(z.string()).optional(),
216
+ reason: z.string().optional(),
217
+ status: z.enum(['pending', 'running', 'blocked', 'done', 'archived']).optional(),
218
+ agentName: z.string().optional(),
219
+ due: z.string().optional(),
220
+ tags: z.array(z.string()).optional(),
221
+ }),
222
+ handler: async (args) => {
223
+ // Wraps `hermes kanban <subcommand>` CLI
224
+ return await HermesKanbanClient.execute(args);
225
+ },
226
+ };
227
+ ```
228
+
229
+ #### 2.2 Implémentation — `HermesKanbanClient`
230
+
231
+ ```typescript
232
+ // src/services/HermesKanbanClient.ts
233
+ export class HermesKanbanClient {
234
+ static async execute(args: KanbanArgs): Promise<KanbanResult> {
235
+ const cmd = this.buildCommand(args);
236
+ const { stdout, stderr } = await execAsync(cmd);
237
+ return this.parseOutput(args.action, stdout, stderr);
238
+ }
239
+
240
+ static buildCommand(args: KanbanArgs): string {
241
+ const sub = `${args.board ? `--board "${args.board}" ` : ''}${args.action}`;
242
+ const flags = this.buildFlags(args);
243
+ return `hermes kanban ${sub} ${flags}`.trim();
244
+ }
245
+
246
+ static parseOutput(action: string, stdout: string, stderr: string): KanbanResult {
247
+ // Parse le format tabulaire d'`hermes kanban list/show`, JSON pour le reste
248
+ return { success: !stderr, action, data: this.parseStructured(action, stdout) };
249
+ }
250
+ }
251
+ ```
252
+
253
+ #### 2.3 Migration des callers
254
+
255
+ | Caller actuel | Devient |
256
+ |--------------|---------|
257
+ | `index.ts` export de `kanbanAdapter` | Export de `HermesKanbanClient` |
258
+ | Appels directs `kanban.create(...)` | `kanban_hub({ action: 'create', ... })` |
259
+ | `ScenarioLoader.load(path)` | `kanban_hub({ action: 'load', path })` (futur) |
260
+
261
+ #### 2.4 Tests
262
+
263
+ - [ ] `kanban_hub({ action: 'list' })` retourne les tâches
264
+ - [ ] `kanban_hub({ action: 'create', title, assignee })` crée une tâche
265
+ - [ ] Erreurs explicites si `hermes kanban` CLI échoue
266
+ - [ ] Format de sortie cohérent avec les autres tools `*_hub`
267
+
268
+ #### 2.5 Critères de succès Phase 2
269
+
270
+ - [ ] `KanbanAdapter.ts` supprimé
271
+ - [ ] `tools/kanban_hub.ts` créé avec 16 actions
272
+ - [ ] Tests passent 68 → 75+
273
+ - [ ] `tools/list` montre 15 outils au lieu de 14 (+1 kanban_hub)
274
+
275
+ ---
276
+
277
+ ### **Phase 3 — Decentralized bridges + multi-profile gateway (semaine 3-4)**
278
+
279
+ **Objectif** : passer d'un `OverBridgeServer` centralisé à un bridge par agent (déjà documenté dans `overmind-bridge-guide.md` mais pas encore implémenté).
280
+
281
+ #### 3.1 État cible
282
+
283
+ ```
284
+ Agent 1 = profil Hermes "alpha"
285
+ ├─ hermes gateway --profile alpha --port 8742 (1 instance par agent)
286
+ └─ overmind-bridge --agent alpha --port 3101
287
+
288
+ Agent 2 = profil Hermes "beta"
289
+ ├─ hermes gateway --profile beta --port 8743
290
+ └─ overmind-bridge --agent beta --port 3102
291
+ ```
292
+
293
+ **OU** (variante multiplexing) : 1 seul gateway, routing par `X-Hermes-Profile` :
294
+ ```
295
+ 1 gateway process :8642
296
+ ├─ profile alpha → sessions alpha
297
+ └─ profile beta → sessions beta
298
+
299
+ overmind-bridge par-agent (3101, 3102)
300
+ → POST http://127.0.0.1:8642/v1/chat/completions
301
+ + header `X-Hermes-Profile: alpha`
302
+ ```
303
+
304
+ #### 3.2 Work items
305
+
306
+ | Item | Effort | Dépendance |
307
+ |------|--------|-----------|
308
+ | `HermesGatewayManager.spawn(profile)` auto-start | 2h | Phase 1 ✅ |
309
+ | `HermesGatewayRunner` accepte `profile` option | 1h | — |
310
+ | Template `overmind-bridge-<agent>.ts` (peer-to-peer sans central) | 4h | Phase 1 ✅ |
311
+ | Suppression de `OverBridgeServer` (central) | 8h | Smoke test E2E réussi d'abord |
312
+ | `BridgeProxy` discovery service (trouve les peers par registry) | 3h | — |
313
+ | Refactor `a2a_hub` pour parler aux bridge ports (3101+) et plus au central | 4h | Découverte du peer |
314
+
315
+ #### 3.3 Stratégie d'exécution (crucial — éviter le Big Bang)
316
+
317
+ **Étape 1 — drapeau de feature**
318
+ ```typescript
319
+ // src/lib/config.ts
320
+ process.env.OVERMIND_BRIDGE_MODE = 'centralized' | 'decentralized' | 'hybrid';
321
+ ```
322
+
323
+ **Étape 2 — les deux modes coexistent**
324
+ - Mode A (`centralized`) : code actuel, default
325
+ - Mode B (`decentralized`) : nouveau, opt-in via env var
326
+ - Mode C (`hybrid`) : A pour les anciens agents, B pour les nouveaux
327
+
328
+ **Étape 3 — bascule progressive**
329
+ 1. Déployer en `hybrid`
330
+ 2. Migrer les 8 agents existants (Nexus Master, Trader, Healer, etc.) un par un
331
+ 3. Quand tous sont migrés → flag = `decentralized` par défaut
332
+ 4. Supprimer le code `centralized` (Phase 3 finale)
333
+
334
+ #### 3.4 Critères de succès Phase 3
335
+
336
+ - [ ] 1 bridge isolé par agent (8 agents = 8 bridges sur 3101-3108)
337
+ - [ ] A2A fonctionne entre bridges (peer-to-peer HTTP direct)
338
+ - [ ] Aucun agent ne dépend du `OverBridgeServer` central
339
+ - [ ] `OverBridgeServer` peut être supprimé sans casser les tests
340
+ - [ ] `pnpm run test` reste vert
341
+
342
+ ---
343
+
344
+ ### **Phase 4 — Mémoire par-profile (semaine 4-5)**
345
+
346
+ **Objectif** : chaque agent utilise son propre memory provider, au lieu du pgvector central.
347
+
348
+ #### 4.1 Le problème actuel
349
+
350
+ `PostgresMemoryProvider` est utilisé par :
351
+ - `tools/memory_search.ts` (MCP tool)
352
+ - `tools/memory_store.ts` (MCP tool)
353
+ - Auto-injecté à chaque agent via `mcp_servers: { memory: { url: :3099/mcp } }`
354
+
355
+ **Conséquence** : tous les agents partagent la même DB pgvector. Pas d'isolation mémoire entre agents. C'est exactement ce que le wrapper multi-agent persistant doit éviter.
356
+
357
+ #### 4.2 Solution
358
+
359
+ Hermes supporte `memory.provider` dans `config.yaml` (natif depuis v0.15+) :
360
+ ```yaml
361
+ # config.yaml du profil
362
+ memory:
363
+ provider: postgres
364
+ postgres:
365
+ url: postgresql://user:pass@localhost/memory_<profile_name>
366
+ ```
367
+
368
+ Chaque agent a sa **propre DB**, nommée d'après le profil.
369
+
370
+ #### 4.3 Étapes
371
+
372
+ ```typescript
373
+ // src/services/HermesProfileManager.ts — ajout méthode
374
+ static async setMemoryProvider(
375
+ name: string,
376
+ opts: { provider: 'postgres' | 'sqlite' | 'file'; url?: string } = { provider: 'sqlite' },
377
+ ): Promise<void> {
378
+ // 1. Si postgres, créer DB dédiée
379
+ if (opts.provider === 'postgres' && !opts.url) {
380
+ const dbName = `overmind_memory_${name}`;
381
+ await PostgresAdmin.createDatabase(dbName);
382
+ opts.url = `postgresql://${process.env.PG_USER}:${process.env.PG_PASS}@localhost/${dbName}`;
383
+ }
384
+
385
+ // 2. hermes -p <name> config set memory.provider <provider>
386
+ await execAsync(`hermes -p "${name}" config set memory.provider "${opts.provider}"`);
387
+ if (opts.url) {
388
+ await execAsync(`hermes -p "${name}" config set memory.postgres.url "${opts.url}"`);
389
+ }
390
+ }
391
+ ```
392
+
393
+ #### 4.4 Compatibilité ascendante
394
+
395
+ `memory_search` / `memory_store` MCP tools restent mais deviennent **passerelles** :
396
+ - Si l'agent appelant a `memory.provider` → query sa DB
397
+ - Sinon → fallback pgvector central (legacy)
398
+
399
+ ```typescript
400
+ // src/tools/memory_search.ts
401
+ handler: async (args) => {
402
+ const callerAgent = getCallerAgent();
403
+ if (callerAgent?.memoryProvider === 'postgres') {
404
+ return await queryAgentMemory(callerAgent, args);
405
+ }
406
+ // Legacy fallback
407
+ return await getMemoryProvider().search(args);
408
+ };
409
+ ```
410
+
411
+ #### 4.5 Critères de succès Phase 4
412
+
413
+ - [ ] `HermesProfileManager.setMemoryProvider()` fonctionne
414
+ - [ ] Chaque agent a sa propre DB
415
+ - [ ] `memory_search` retourne des résultats **propres à l'agent** (pas de pollution croisée)
416
+ - [ ] Test E2E : `agent_a` stocke "secret-X", `agent_b` ne le voit pas
417
+ - [ ] `PostgresMemoryProvider` reste pour le fallback legacy mais marqué deprecated
418
+
419
+ ---
420
+
421
+ ## 🔬 Plan de tests de régression
422
+
423
+ À exécuter **après chaque phase** :
424
+
425
+ ### Smoke test (5 min)
426
+
427
+ ```bash
428
+ # 1. Build + lint + tests
429
+ pnpm run rebuild && pnpm run lint && pnpm run test
430
+
431
+ # 2. E2E manuel via MCP
432
+ overmind --transport httpStream --port 3099 &
433
+ sleep 3
434
+
435
+ # 3. Créer un agent via MCP tool
436
+ curl -X POST http://localhost:3099/mcp \
437
+ -d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"create_agent","arguments":{"name":"smoke_test_$(date +%s)","runner":"hermes","model":"glm-4.6","prompt":"You are a smoke test agent"}},"id":1}'
438
+
439
+ # 4. Lui poser une question
440
+ curl -X POST http://localhost:3099/mcp \
441
+ -d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"run_hermes","arguments":{"agentName":"<created>","prompt":"Reply: SMOKE_OK"}},"id":2}'
442
+
443
+ # 5. Cleanup
444
+ curl -X POST http://localhost:3099/mcp \
445
+ -d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"delete_agent","arguments":{"name":"<created>"}},"id":3}'
446
+ ```
447
+
448
+ ### Tests unitaires à préserver/ajouter
449
+
450
+ | Phase | Tests à préserver | Tests à ajouter |
451
+ |-------|------------------|-----------------|
452
+ | **Phase 1** | 68 existants | 0 (que suppressions) |
453
+ | **Phase 2** | 68 | +8 `HermesKanbanClient` |
454
+ | **Phase 3** | 76 | +12 `BridgeProxy` discovery |
455
+ | **Phase 4** | 88 | +10 `memoryProvider` isolation |
456
+
457
+ ---
458
+
459
+ ## 📅 Timeline globale
460
+
461
+ | Semaine | Phase | Livrable | Version |
462
+ |---------|-------|----------|---------|
463
+ | 1 | Phase 1a — Nettoyage dispatcher/YOLO (obligatoire) | -300 LOC, 1 fichier | v4.0.0-alpha |
464
+ | 2 | Phase 2 — Support Kanban OPTIONNEL *(si demandé)* | +1 tool chargé opt-in | v4.0.0-beta |
465
+ | 3-4 | Phase 3 — Decentralized bridges + multi-profile gateway | 1 bridge/agent | v4.0.0-rc |
466
+ | 4-5 | Phase 4 — Mémoire par-profile | isolation mémoire | v4.0.0 |
467
+ | quand prêt | Phase 1b — Suppression Kanban historique *(opt-in après 1 release grâce)* | -930 LOC | v4.1.0 |
468
+
469
+ > **Note** : Phase 2 est conditionnelle. Si Kanban n'est pas dans le scope,
470
+ > on peut release v4.0.0 final après la Phase 3 + Phase 4 sans Phase 2.
471
+
472
+ ---
473
+
474
+ ## ⚠️ Risques identifiés
475
+
476
+ | Risque | Impact | Mitigation |
477
+ |--------|--------|-----------|
478
+ | **Rétro-compat callers KanbanAdapter** | Élevé — utilisé par 4 fichiers | Wrapper compat pendant 1 release, déprecation warning |
479
+ | **Migration DB pgvector** | Élevé — données existantes | Dual-write 1 release, outil de migration `pnpm run migrate:memory:v4` |
480
+ | **OverBridgeServer supprimé trop tôt** | Élevé — bridge central = SPOF | Feature flag `OVERMIND_BRIDGE_MODE`, bascule progressive |
481
+ | **Hermes API change** (versions futures) | Moyen — pool gateway déjà adapté | Pin Hermes version dans `setup.mjs`, tests d'intégration |
482
+
483
+ ---
484
+
485
+ ## 🤝 Décisions à prendre avant de commencer
486
+
487
+ 1. **Maintenir `OverBridgeServer` central en parallèle** ? Oui, le temps de la migration
488
+ 2. **Migration auto des agents existants** ? Oui — script `migrate-agents-v4.ts`
489
+ 3. **Deprecation warnings ou rupture nette** ? Deprecation 2 releases (v4.0 + v4.1)
490
+ 4. **Documentation site web** : régénérer `docs/index.html` avec nouvelle vision
491
+
492
+ ---
493
+
494
+ ## 📚 Annexes
495
+
496
+ ### A. Inventaire des fichiers (split obligatoire / optionnel)
497
+
498
+ **OBLIGATOIRE (Phase 1a)** :
499
+ ```
500
+ src/lib/orchestration/dispatcher.ts (283 LOC) ← SUPPRIMER
501
+ src/lib/orchestration/ (dossier) ← SUPPRIMER
502
+ YOLO_CONFIG (inline dans KanbanAdapter) (~50 LOC) ← SUPPRIMER
503
+ ```
504
+
505
+ **OPTIONNEL — conservé tant que Kanban est utilisé** :
506
+ ```
507
+ src/services/KanbanAdapter.ts (420 LOC) ← CONSERVÉ
508
+ src/bridge/ScenarioLoader.ts (508 LOC) ← CONSERVÉ
509
+ ```
510
+
511
+ **Suppression totale si Kanban confirmé inutilisé (Phase 1b)** :
512
+ ```
513
+ src/services/KanbanAdapter.ts (420 LOC) ← SUPPRIMER (v4.1.0)
514
+ src/bridge/ScenarioLoader.ts (508 LOC) ← SUPPRIMER (v4.1.0)
515
+ ```
516
+
517
+ ### B. Inventaire des fichiers à créer (tous OPTIONNELS sauf ceux de Phase 3-4)
518
+
519
+ ```
520
+ # OPTIONNEL (Phase 2 — opt-in Kanban)
521
+ src/tools/kanban_hub.ts (NOUVEAU — 250 LOC) [chargé si OVERMIND_KANBAN_ENABLED=1]
522
+ src/services/HermesKanbanClient.ts (NOUVEAU — 180 LOC) [chargé opt-in]
523
+ src/tools/kanban_hub.test.ts (NOUVEAU — 200 LOC, 8 tests) [opt-in]
524
+
525
+ # OBLIGATOIRE (Phase 3-4 — wrapper pur)
526
+ src/bridge/BridgeProxy.ts (NOUVEAU — 150 LOC)
527
+ src/services/HermesProfileManager.setMemoryProvider (méthode ajoutée)
528
+ scripts/migrate-agents-v4.ts (NOUVEAU — 100 LOC)
529
+ docs/MIGRATION_V4_WRAPPER.md (CE DOCUMENT — déjà créé)
530
+ ```
531
+
532
+ ### C. Checklist pre-merge
533
+
534
+ - [ ] Tous les tests passent (`pnpm run test`)
535
+ - [ ] Lint clean (`pnpm run lint`)
536
+ - [ ] Build compile (`pnpm run rebuild`)
537
+ - [ ] Smoke test E2E réussi
538
+ - [ ] Documentation à jour (`docs/`, `README.md`)
539
+ - [ ] CHANGELOG.md mis à jour
540
+ - [ ] Tag git posé
541
+
542
+ ---
543
+
544
+ _Migration planifiée par DeaMoN888 — 2026-07-10_