From 569c1979b6c36d3740fd36a37b1f5bee575023db Mon Sep 17 00:00:00 2001 From: Jeff Peng Date: Mon, 2 Nov 2026 04:51:53 +0800 Subject: [PATCH] Make the default OpenClaw agent display name configurable Signed-off-by: Jeff Peng --- docs/installation.md | 30 ++++++++++++++++ .../files/agent-documentation.tar.gz | Bin 35326 -> 35580 bytes .../files/openclaw-seed/nemoclaw.json | 7 +++- helm/mosaic-stack/templates/validation.yaml | 3 ++ helm/mosaic-stack/tests/chart-render.test.mjs | 33 ++++++++++++++++++ helm/mosaic-stack/values.yaml | 2 ++ 6 files changed, 74 insertions(+), 1 deletion(-) diff --git a/docs/installation.md b/docs/installation.md index 459f060..d20b9b9 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -260,6 +260,36 @@ kubectl -n mosaic get secret mosaic-ui-auth -o jsonpath='{.data.password}' | bas Open `http://localhost:3000` and sign in with the username and password above. +### Agent display name + +Set `openclaw.agentDisplayName` to customize the default agent's display name and +OpenClaw identity: + +```yaml +openclaw: + agentDisplayName: "Operations Agent" +``` + +For an existing release, apply the setting while preserving its site values: + +```bash +helm upgrade mosaic "$MOSAIC_CHART" \ + --devel \ + -n mosaic \ + --reuse-values \ + --set-string openclaw.agentDisplayName="Operations Agent" \ + --wait \ + --timeout 12m +``` + +The default is empty: the agent keeps the seed name `AI Factory Operations Agent` +and no explicit identity override. A nonempty value sets both `agents.list[].name` +and `agents.list[].identity.name`. Channels that display the agent identity can +then show the configured name; each channel controls its message presentation. +The internal agent ID remains `default`, preserving routing and session keys. +The messaging platform's application or bot profile name is managed separately +in that platform's administration console. + ## Extensions All module changes below update an existing AI Factory Operations Agent release and preserve its current site configuration. diff --git a/helm/mosaic-stack/files/agent-documentation.tar.gz b/helm/mosaic-stack/files/agent-documentation.tar.gz index 4abee1d0111510a18909e210cb885c9d9ded728a..5c7478a02b30fd2efda7a5d06164464275e13b76 100644 GIT binary patch delta 35467 zcmV(&K;ggslLGve0)HQi2mk;800092?7iz&8(EevTEF!a(WI*}-UyJF5oeK?G6&k(Lyy2nkGOdXN6KAK;AhXOD5t%k`6-`OV8(E2IGItV~x`chX&H zkRsM~uDRy*n+Mw)TQ9de!~XAny`N?JdGhEH|4TnJ|E@fGynph8s%Yap8%awPAc zX@7<5uhVLM@qb0MM~__Q*;T9cO?3P(ulA0%-_mbK7kNdEQiDP=8$EsdN%eXlto|nt0kz#}h0njW;i&;%XG`ayGim%VLCG!#*EQ$K#@$&@_E} z`G}^`&(>P4I6BDEeq4+O*U@*=Q;cCk#Dqr&McS9eFhU!FE@cDbXum9m84X}6r1vIA z?|J$%o0NI4ivBXqFm?X!d6}N2qcrNL)x~L%mVeYF(Wy0bIGC2h=!fEz*DjW|qsIr= zRgP^ehEdhK$okWPZqA@MciVyn_Qq(6C{za;59#gmY{;}Unq=pW=&3Vm;Iw$3VT);Z zsI}~U)|=vcp%5&u+W{sFw{CK1Hp<>bKB0A(mRYOyFUPl0avD7Q_Ws3WGOpIT-L$GQ z+JBnSd9OoT)z8xojioy-i~h7Xsk-Snr$wN{Qk-{%p0ha3W7%F>(ir26g=V|-HcfBX z`C)v%)N0WHMu!*KU_fW60Qpu*o&%lA+@w3fuD7G&v?7j>p5}vma^04l5#oJ@6Thi% zzvT6$&FJ+qIuh8gVS)XLnQ@)bK}0*W6Mq%$5)o=K5JDhw!PfV2SX26p_{$*gIGd#Qd0S4``sohu3PmmAs=r zdXqsSTg0zC#M8UGFV{fGAcu{eIOv?X&$s|Hr6o@Na;0M?_u?!nr=t2l4MM_2FaB7YkN+r}n~7HZB{36Be@QZsxS%*?=yM;w&H3 z&o&4uCvsa084t~3hVQhE**NN@XBzl|Ekvc%mI=$R#>J?Q2^i(^zCX_<6MT3`q6>|( z)jFc*`$cccHzV_oD#r~#Ykr#PeKRO}bl+VI149SrQ#uTl&{+-|92fK!@qZ1vj54}J zpV4dF_hh#9xA*DKs(Y#r;9{kL?a12Er9-{wQKUQeJZlRfPfrJVMSN2TgLg#lwi&uJ zLdTUFHb%lmuG5pd2DkYouDVyxH|eeOoaBw`r%^Jx?3JCoNWhtCdc?U#m;p77!%6&! z7JNJr*bbnH0jb?k)%;iCWMx$xWjczRN-ecay2_N?baJ6!Bs9V#$xQ?-gn#eqV{P*#$$WTx zllm)*L9GoXmeH_xQj@ueXwX6*a_ zsC9%9$T@S|KWuBR863se6%Clg$Fs@Iu-jO*E65gD-PV^5dYgda#~$2TvELN^`K zNJ(^+$qh41CnVTZLJu?%VymszPtlHhN`4>pA+GTE^a<}di0mhNG>+q__FwwU?n;^` zJ*_NWh`1;#Z4)i~JqHj(?8!qm6y^aj2|WRFGbo zk0mAi-yQ6$`lry zZeicOml!ua@+o8V?++tbR-&Ih$>`6m=w}VVwID3#Tg=oG(#=!lXa3G}{p2ys zOm=5o}}#O=$pILfjT7E5N1KMU;&oI*5js2?WU_Pjvy!W=&p8el9qMCANbe8kCvP!eXzOVZ8P?Eg|AM^ zUh3ZtKf>ED>?F%#2AZ>L0)zJ75!^;P^A4~Iu@&i7@?G((FiwRY`l8D zy}S3EI}QKBF$~XMZ_vj<>SQ zY=F&(HnVa9Rqsv6?XN z859-U1C9^3H(wv@9Q}z068wQtY>Djxnyx5oJu~Iv9;>ti))UK#YNBe)L$ABox3y?H zFwtVuwuW|hPIqGZqG9u=e5jh*Bw5-Wzn6o1dM6jl<`{3<&o!{Kzq zD~SQs#>20%;%M)17u4zxB&_pFPg!iNRIw!%dRoZXI?+DSW8TZhBJR=X=;dt=f>eU+nrcU>vnCmrjq705kC$Xb*mz!ZIH#>Fk6Sr zxU42#->ug-VR|&@(`^n0@a@*&;fs#6EY^G2C&h})^F3>9VX=ym-Z1tok?y9+l=N^o zQb%lj6@O)FIwo1S53Bm?9qqP#qk*bTw=+vVt>cQM9y77>_Po76E6mHyu|gM8nX#!A zwqn}SgQ;4Ai7ocBKCVWRo)S305?i&#RdGw{mEWy`q}j5~>(l1Zv>wX%11G@*`%O!k zpWU?F*csyek*zC95MHzFb025`S8fZYKKI83yMHU}8?~kB-%%WkMWfXlRu@s+ix&Ht z*d_)fy)TNAw?P_MXf`!dsyMxKl{CeeoA&!9=z^XnA)2NS50vEcAIW{DZk=>u2H&SVs?;@js%E(> zT7NeZoCfC=8)&( z*%D4?$C-KMw93@8n6q<|WF~q;ca>R?Q>aKrVl}MaO41x_a9T|0^)iVzU(zUSoqwGx zF#*MZjV8`_X6l8ukA5AI(R`=yO)2ktk(T`{$Y*jmp1s_R21W61I>LqUyr1!L{NDJ>r>;tQc!6jV2vU#*Nu4&BwoKEl4 zmVD%W%i3OEnf5b=&?S9x*Uq; z(f4}?-<|Ait>3$^td?#pu~$go1vf?A!sA6NwfN(Yot^%N4~t9E!n1>&t$*j+>kFr4 zeDBAZHrJNdR#rbO$b-)}j<&zw_|qr!b01gj`>3O7~#xk|5j2ppqx z7A=ZhZ2k8fPJ?gh*FTRIqlJ6HAQ$XU9m;~-0lX7>MupH47}NVipGgEe4`dP2q}YW> z-)_~1uN|^^hnUyRcc)QoiGRzEJ>QObgrdvSC|Ozkva?M8w*rZQgBemp2(+$>>7XxG zHaYewRBk1&hn;BC*$WRZijqb(7_?f4@A9$S_?3jwhy>=Iz`${2y^#}MdiK*0hrCIk z^Ws2@nhSg6%Y6 zGwhBcptc9=#L|~nRv$ik{N&58{*a!k z#M~!NW>oW6xPLK;6U~kspI3==f$NB+_=tY;@#Q1mjynY2%Q)MT^IbPKH#0(f)XxwX zC10Y^T5lC%k!16faxjFmoK4kmi^m`>v0~DWv}Q*m-!zTn>vx~ky@qi8ET&C^j#l57s?$;G0Iykd*RpZ4|NfQD6w@ASKJ{|iy$ z)aWQvAq?=Kj>MaZhV*28=Sul9qrUQTKQRBHBVsg z_0j(8qbM$BMa^GzHrngTFVt_#Z4#e>&5MlQRUcY#g((4&@H#rTOUNQOO#n6o5Y>xuEl%xMOJHR;qW*3VdvS??jP6Kl7Az{VAf+#7+|EjuB}~g5Wx9cCInR8o4fFnSX4|gQr)@VHD^1SH`mbDns-Es3wj%%5uFo zEe8^B*~PDGUv*XVu_Yg($)KVSs%mf|J9k1un+_%)po`%xlPpc#%sS~f4-G??D_yp(&=P#EwSN`? zVI%=e5{%1f6m;jpl=5hK#bU=WJ7TtKfvTJes5A&u1ic0;?%8w@9qk?p{lciizCmb@ zp|o~N)HXV=%!EVRQNk3WCr4ZFM6bPx#uIn_Xy#{Lm~wh`t=QF|b=WanzZr zOe*ErIu4Vr%N%r1p|9BbQr(uP*nbj}RdzPW&o3s?khEI61(M~YZOg~H7}8eM+-@-u z&X}fcx5la3n{Jhp%px0{b|_m!HQRqYg5!SoWOw)F$+L~a?UUCByX%V|L5howO}yOO z+NSsA$?k~w2GQ0ie%N^&SJQD;#+QSb2*yHvDJd_~cH5#qVEhbTs;y%E?bZZQ*>Op?*=_S)XjQP~=XX5@ zcJ&PM{7a(M^=l$zW?4mah;aSMi=vu*mtFHcM`XAzvKSHbRYSvWqZXpYoTfOXg)y_! z?<<&?g2h;feu~&D;mpkvoUY5SyxAEh7w;A6baF8%-et-ll5!) zV}$8CgJ8eBj_ICQ7k>w)d7TbPfQanXbUdb;H9m{thKOTrx8fufN!+1Nl@ctFCmzt8 zWPDI3<3WyK-oZK@8Cpmp;ikP^&^LaK@tyXDG2)$LA_({p!ofjzU$;}Seix~H`WX4b zI10Qr=pXhq(F)Y|n}5s>F`3T^;wxh&A4o5QTbZ3R`aSl}xLY$kCA%_o_nI#heZAgk ztK}*fq0hUsL_&3%wr&dMw=}(IPi!nMfzKzySq@Y`uh`z!@!T3=E)e~&83;0Ran77k zhRj8_nJTMNs~}XH3_-YjLC3K<|JZtpdv$C^8p|UUr=dDtA%7?7@+q|~+zYvI0%pq15OtA8av#Ne1U$}e&m5GQ`piQZUr zY9oW(U@@1p>skMGU8lV*fWY#jC9aMA^{OXxXT(Mg-D^ z7s4=(1%J^{B<20DW*ozm&R`9YN2|_a!_dGmG-N(VvQo|1$yS;n#PWt-6|wp}B*;W* zCMI=om>R1QuJ2P>G4ZC8phwDa0)_Y~ zlL2*no6;ObzogpiTl>g0ywopwpwCo+ms^KOR8X$=~L12lnCmncbPXjgYN@vb#y@o$owf{H1jOhK2 zntz?4SIdA7kT^|JmE)yBs7;Lz3IyC#SI!3$RvZ zkvX1T`dAtq!A=TEVt_oF>1Fp^@IB&6@I7kjnBApz^a`=oKU5B7rER^8Q*{GN@|z2r zMp%P5D%i&1!>Jh?q|b)Qnu#}w?$3wEDhh`W&vAwr)7^rWmo!Qkg1L(`@fag41q7G& zfAo@{jANHfMXN%84hl|-tavYD8EyPMeF3o~J}#QN*XU*-$PCAvv^YngQB@2w;Nh^jFr0>tiD$uHe`|TQ zu4DJ$3nblm1h6R5G2d~{T6&r01GYw*b&)6E;T#&l@*s zv{?BW=Nj^UN;EvRC@x)5spbiy%a&0#f?gC@{h+5#69aW?&I7Jy(i{zg#YamLr)SKQ zRJ{H$#tM2xlt8vjFnEXgQ_TqTe=Mi=glW@mh6G6)XZw&yB4Rwo=SfJ~)OpBD0$q$Y zlOT=;Q_kPM z)}^HQOGI10rJ>EB{z~xi+6>}!E)mb88_ZXdMo<}LYUpPxIWUaV1k2$1mJHK`xjRQg zoe`HXj)jR?SPO|J?@|}nf5LNYy17P0?RM$PYuO3U?Syan@wLX$>`0hN8q2 zMw}{^+i~rEmAUICxD)-9(XA$h#c!#zjF;P?2XpSLTB4^Tnb4j-lwq`k2PF$ird|S+CDgzq6^XH%(QaxjiK1Q)V~sad(+AfH!0XNwYCo`9l(g zQ^dpQQDwsa`5*rWuux|yiJK%`^P8JKjZ?H3pB`;b)|C|}ax>oqN&{fJK^RXXj5aZt zozD2O*QtVDf504B6;UL{*LjEE-EV%*!5Is?7O;6uR^ven14a_DAbW0%aFsfsPh?_w z-H&5t5ngxv279-^TZAQyhs2no<;+NlLx8^$LOy^SO;gwBx+<)8@^ zdh{PI!1-^C{QXCdNd1Ka2C?yr8sf*Sd7n75BE%mrzwI!;ZD!nyzs33eZE=2|H`FZ* zAH3_NK@k!}U9c-QY_Su)kekha?XUp^Qr(xFAl6bM z!z~Jyf!Jgxf`%!#g{XT;GhcW0JcyY?_(*eQf98oAl;!dZM57{v$#D=ZDYi@6!Z#Wqv%;iH^ABquW7XwEDx<~x(DlN~eXz|AdA^#I# zf3_eQWMPfZ!3P6~3L)RY7WsnLJ)N0P8}Ptmts5{Sv2YWRX#(8H5wXW9@6Yi=N%-BC z+CuaQNjMK97b8;5J8R5G&cyVOgV+1xtgY_Ri7ZB_HNP=ZCAj^MVKDcE6hajil@DBPR?f7WMf z=V1Nb{oy;Dq$ut$iFm|*#5+ZynD|dxhQIgoa^^MbWTDjOe|ssnyF9Xe*gkpmn?m(`IKj&bLpa8E9%saq#TY$gyf7dT}rVY zq7uLq3dP7!!V);jL%wKUi%(N?nwK*OZ(ZRT(6PB>ou{t6e2Q2drfSvY>9eLMyGH3< z+y^QqtelUh9f)K={fw! zK&>Is%p_M4_u^Nf0L#t9Z+0QTK8rV2R-eVpjg0p@Uc~&H$&f+)>c~sVx}L2P17hnH z0N^~@kgz8$LDDnVY#`07K3Q$AJbDzfc`q^qIlQ& z$dKS05Gf@_ja}2|+r8Gie~zwz6UKrxv(Tr(rAB8;z*Q%ewAO{)K!lSbfx2-4ggzl@o6)AxVPG`mKu0m-dgC5Z;9CDlkk zWC#-}(KCDrC5>>a95W)eEj1&hBwtcZ;AE{)D=q5U8vIqFK%@D*TT&j$j zm%zRP+UpR}Z9=G6|4IuPxo@B>6y-i`(O{4b4vB{GOt2g%`!)$)z-NbSaxTgQ^vRhZ zeslQ@J3e$_pq;2=n7{WPPc^Fd;dlTZJAHGIUTe02jFC@`f2`rk6Mt-s)3R=Hnjx4} zAYh(4Ur;gVdzdtb2UTV+h-_%Viw3AX&muxowevSQ1_8d~*Mv8AlLa_%fyC`Yt*oOD zTVz*n4HoARF)C-%0oMAm7)*zZAej#%Q$VqRJh`@GKGjf)ZOPqY?g-aQbwM+HSDS~( zn12tEO1AOQe{UkyZz9zlBGngClSV;jfK#XWN5X`)P*JF{xvEE%dGCh+zI3*#RE}x@ zY#5X<>AWm zm#e||q|O~d&8ya;uU7t`*q(_I6Kd%i+PbcRY#~NUBAhH{;!$c0{5qie7WnfGYn^l) zuQe2Qdidt8Nm?9#5|K{?651RFE&$7HyMYBho3s)`IAFm{gPvXqn%G(d0YTGgQ||#$ zwjI<1cf6Wy%r1haB?$w6yxF#Gi&d+RJcq1230!9v zh7QOH!+{bhr-OsMgtk0etb&pU!l+e>WlkM(N++?0@RU;KVd##KloYYay8A7>`M8iZ zop(<0uxuC&p{HiCF^Ub%4OXflwdZ$=?hoPwSxY4u4;<*ueRqZfB+$WpkdLFSU^?0> zZaXXql>OR&sGMTRMcbyQnxqub!3qAq?MlRoj zSpX&mGe~{=p9%eKfv~)em1QEk7TG*pQ zw*w*0)iIMxnXae!tVFHztL!uqdHC)9FX)e0{#XisVG-2~#G$f5#!M|%$R{ry*F1KC zude3rQ!`S{76P5)oMLWWu~2#F3WlA>M>qzzKnEXI8|>Bqv3C`m!cp{8ym^)1RPv1>ZxG-BOB#ZE}D>%YgP$7tIo zqUhaGX`SSU%0+H)1|`SSd2l`*9c(9c8mdQsE%6XpA>f({0aL21mO7WQs9~14Vh$E- z*onT^X>bva+F5dvg0IL!+{YY%GK#jA7I3EFAVxxu8_Ot0)qZ2z!LDdwuG$WCZZ9LR zcJlL45DlOCvN~+)cc+8`W_1fp5UO|MvaZk1^!5NQ=LNIXN4hE)>002dfxMu(J>aLjA;~Q#GGTMasBlqG zz7&-=tZs0q5T|kTG_lfpaU@cey#tAV`&f*K(&Wq+)~Y;#;1*P09$0+0(vP2q8$~Z2 zwfKgvE?mxz(*w}hQ^|_&NrRE%Vu`y-MJ}NQ%gS~6!+f(zcRO3IhG3%0o3uj`Drpx) zB!uK72}TIalGdaj7HEkDp-K`R3J|8kOM`Ws7C!5fw-&7&jU}3~FP}E`aatQok9>HysZG)zJ7?k5<2u#%CKe(Ku*$DANC3Eq=Aql?S`a zT|YDQLSmKpf0E@Sh`S?VOyxM8u`%F=p#T|I6lkQ9Q_JtKTRu*TV{V%eIi@)N%afhp;8J6~zQ?kBruf7f+ zbIW|eg{=))Y`1uqLt?JjD{N73FJ&$>XPcjOH6a^QB6jz_+o@+kpzY8?_z%9m1Da!J z%1di=`Itr31p}jk%fT&w8D`G{v6DB=ImnC2=Lm(&Sz8w?o3q@s#5Th>lLu(g8z=S0 zQR>qkbA!5p{E*m1-rnaa4f|jC?_&Lq)ZaG}^`_`UND!(JjT=w^-_0w_5r>Ow5hq{T zDkb@MPiC4) zv;<>))#_pTw~Hi<`XdOdvSvbH92_7w#i}l5;&wwx?YX#tYuxL$&SqGezJ3Q+dw#I- zEv?Z<+%)EuzK!O8y86)KZ1Y5+R^nmYiX{_Z*+3DnN4*xYwZJOf%dt0Ay^wfiQPDOYIhCOE*&i z3)c9NU;%S^wq{p-6*I*JDp=vMw)1v*XwMMD|*kp{pp2UkQf0Zdkxycskt zQsyRJ{Ta^lT(C}Xpzjj71)PK9Oi0$=mWiHE(-NMJs}fpw;V&y^^kckC=|3>D>3}#M zfgTXgw+>1?t^CPFJ{bgm`dBP;mDgY4v2I^N*JcxcieAYz2bflh%tz6K2XFH1>cIm( zKxM@xf+Yl1Yo&*;5uH7FfVn()AV-Un@zOzjE;fHPY0x(h9uTW2^f4c6ZBID=nl?b9 z#dH!>Zr37L+N*}Tq=pX}^>ZW_HoM~#7>oWN6KjXz+pv{G{*dr+#m>LT(g9~GvBgN7 z73tuAD!s0J%@#F5d*>EpC4(_J zCllwrq$8U)b;5B0S>O7RI4oz>yShNU*fk4(;M5UPc41Ugu>3E#50?uJ(K!C58{;8qIeIUZEUt(0SsS+pdDV+ z7!;=lTZ@VT!sb{J=BVwASr%OP>=Gp5_V_N;A`)4rB}~xl@PB*X{yyQq8Nta)T!TfT zJDw`>B%X=z^p|SleYv@BQ6;s2O5%ur8i-@inyOD|7&D1gU$DrMrL7usy+tH z1DLLP0IEa~7s^l;-nyAw z`Y|K?%JR*9pdAvqmRvZNHiiC=4chTQDJq09a66Z|vJaI6?SjJ1;ZT?grjSR|cCLf1~q zOjeka(KGO@@j)VLNCL%OyvLJ^ghRHHNtuo+{v4;r9Cs~Rz$y#veP&93n~l}m+z`|o zR8gIEvp)?3ZrPWu;kZ%KOFKREslo-n&BgTKnU_KI5iVk=25=a(LVr9OA?k*lpWp;Y zcmlL|xqQ{#hu$Pkpu85tPLvF_HW%W$SsVzW;8cs^qOstnbyroiKLv9i(aFbC(umJt zX>rpvvP{DG!F&XO*-E2-`843iIs1K~KpRg>svw=xnogz@0grVtn%a3f@qv1JVJP^Q ziV-Ti@&(g6b&)^n8u7H-nITzFX$W8?*C3}E!U9yWy|iWA7a>dl{5{M3eNJ@35=1`g zlZ?~{!Z|;{ZE(am@1i>nw3qy^nCGUW8I?K^PS4VO5cdWcgx-~Z+w(CLwQEx`4^5MB z_hM+R!wc@PnI<4Ntb_tYfUynpfnM)e_NLZ#4^NElQxKpofu0h)mW^l0IULGdNy$Jv zvv866edcPu2oIWuvDBc-@NTj@$(?<=l7MtS#I+aWt=5hF^#LQPWyaZn2~<`In)!^awH*iX&G~WFLv=p7v&I!m3#|#|D@;@gD&**yl;i*yY-`Q>udaNRz~Bt8u>`L6(9e0 zohd9LtgD~(Qm!A7T~!=$&_D-!V0f|+a+NCqDsjqHsL_P%`QXESgOo%9!t4fX;gYH& zE88GNu~W$yR{;8MGL+tcO}h82)w8)Op2Y#RU8v!I?FH-@BgK?@F!ec)*3DJX7n^Fw zE&dI~(Lc7r_&-Gn>d#?i{;yR2_O5V85U2|Wbm+2TCgjjm7oDqdZW5uY7einJ-F!(c zv9VJ#(oN=`4S3N~dN348O}#-jscMKADN;lcy+zCg#rm$yg3A$Iu;0Q8iXn|kgePi2 zn)sA|PTX2FF2JI=Rzkbw()Ptx+~zcNsL9B(ZIhIY90h%2DrUSk_nARVXRBF`0QEQQT6w2SL6w z6G;{hToCWdzGS6xxI`dyU6#F}R)r@AtA2r3k^aD;{R^+How}5wh3AxUfWq)@e1qq?<0uy!7UM z+wtVdahmt>ZG$) z@g%T)P$vHnPK==|Yh$A4AWj60zm(c*8k9+{YiN;^N< z@HFd7syBj-vTBU7hi#wAtYV5522tFwV28`b@ZXF%WsdyZ(eWz|1 zmN}P8c%)SH8RVmP%&Jqqn7HJajHVJm7p~OmaXIN;z@4K!lUNylENWJZ zkiW}Z#37P&85jX8+^W>Oh!N1BQ%*W$@y1rClA4ja7P2EOr1reyng-IU)r!QtEwe}c z#G)05SBJImpw^=+N-1J1I%20if9Pun$Vzg?jjI*FAu}y4CLp_2j;EC-4NtUYYal^| z6;uS6dahY6r^4TV&0zSeQoeJrvA1tukurB5W}T`ci2(y3W&VBiaCK?H9{1AO(WjOi z@Ex9@M)B)IQ~Z0wuAtX-^D-^QvCMk$L(fLGT=wX9}cKjp=)?l7)}+Hf*!_DDiC(_pZi zk=<;O;$GA$&y78)4jmx)I5_QEf`2}#e7a*T9Ajr<1-rMh(<$A`up5rFo{pV5>TPgM zB24GAYIIG1Kx%hubbcqlcW@G|mj4|h$AbqJ6yv=-h)|@(IL|M$(9Yvs%7GOrxynvY zq&XF$@WEL&!QX5*ZYv1I*0lEy|9f7T;0%ld=v}Ug80^c2{eR^8H3}Pwzo!_|t>$3Q zF;@d)uhoh5GJ%F6w>g2R%|Oo*-2{*n1=|Te5d>&|Ol3M27h-e>v^zB`A>Rn)vZEfu zy3;Rz+}YB^UGYH$zBUDO=s`o~HSOgFN5PePIlD9$#ev1s%As*&X7T|D1WnS+QM8^r z`*x&QHzc~GUPn{91j|Z&ZgMHGki^25s$4F-FkuB%HbCqpnFJz1dnC!{9sYM-NT~^y zcNMaKp2r{VajAe3wOUmcU^gmkfyMV}&D6(X;Qb!9goc7>X+Z4Cuvoyv(S;$g)?^zB zW_FbVL!~Iq372Y3!-5fTpu(q$72{N5nuCZZoniX^K%~V`8GcL>tU(GVE6|K9vwPYz zvgU&DDbnVcld!neR?Aa7+bRq8+j_q&64u{;(+fG%>|jmE0hvAiMZo`~z_}|$o3i-E zk|h0qaYiD2E_L`=^h8=UZ2@VC79Bih)CY|PhAE=x_0meKHAbh@;X55MSN7F#WX}1a zM&nagC|Qt+aw)UG@Fc0$@Mf7&S&FK@=Gxp6*JX4SFd%j#dyL#4t z!}9Dfi;`ht;p7(H|rBPfy?}o&yW>X(CPEE_Jj;KYA7n7|f+)IsiyOx4(f=4hDMQ z@ra`#J)NSQ<0>7Q>1ov~^HW#8W_F#_380t*cGsyN{aF7->PK~PTGWu9Q5e&GJU4Fo ze|p^Ix|yBU!w%OClp_!{KL=*XX70ew9R=Fd+`6hJ_5Jp zVXT-g;}g46W89!#Jx|xtm+3k7W)~oj*jgEFx;; z64Bj^!pVELJZqz0XCk??<;LW)rfqVJe<_;fO}2{eR!dfwSD$pAbm+$Pc6BW#&uRjX z%rhj;_DJdjXIoPQ*t#Iz5k5r0d`$k$#D^|F9*+mp^L&(Wmh=2H<-o`@Z=^!2BJw6K z%y~2({!n#_@|?QX=q8SoGAq#?%^q^}v)beILgV+hUAN6{ydkk#!n|Kk4cFd%h&6=k#{0CfeOU^AVh=m z`)}{_2`dobD9CXxRiLKd$(ja*ifCeV(91d;98B>ZQBGm$^n7lNqHXg))k{MkaQOy) z2{NREn5;uZ&Oo94bCnqWmBg5jf2pd+tYAkGjB~@B7tF{oD2{jU)tk)&PD#|=uT?U( zq#Zt|0=HF%S|qt=9IZh3uOzcQdSO_L$QTrT=ML~S^V9H=GgCwAK^y4~oDT%jg|q^9 zL<=jcUv_vu1dnj$xt)`j8=Eh7UTsUJ0j!Omf_uk{+<<)-qN6q8-z_b)f7FM4=y#t6 z&FBC&!!AnA88vA1^}l_6-|9}+17jl%X#IWl=h0%&=F9{amZZHG(V`l&$~HKlzofvjegctcYTk(9)RTrad2)I9xNc1`cuj25gM-p=Tf zmPR2rdha-Ha&vblG!S`2e@J1!cLE?H-As94fJ7O`JP}tX+sx*Uj6Qx+KFsGf%H>FY z2lb&KDdKCUYcmY_?ilwI<$co63;zDJ%=_n=xhqwQGE~d^@NRd0sG^mxz=K8{L72Ok z;QmsuM(4Pqxm=jZtn|sn^pxdOu`+fyc4D1M?57foRg<1>^#GE1f8!%9gMT4H`Cnbd zgE-Ac{_|n9{N>}v(R7jzD%%!>htmyNdn5Qx%XM>9ynrn7dO#x_T}M7f=??zEKpjwL zN%8@F)276c*y8l$Q|gcLWHL#I7q@fX9S9?{l0&zD>}Vga8rzPBxFXFXczUKGQu z3!IAPi7d3T(dEfyT2}P*@q%BLg?6-X6N}M!_(LaDa9)d$v9Gnj8KYN#+m908u1ZWd zG%Yzd!ooQd!y$X!06giIO8CNEh@S_$4k=Vh87Zap>0}YJf4R1FV5UdAl9Dt(Ig=(& zeA3tn+eS{n!r^hf?U{?bGH3LyP06;IWBHDh(5{pD#m*8Kl6`&<#|AmZ167Nb5?~G8 z>RnDkayQLm9Z&4X6Z3dtcTF9Bx3jz38TLJTghJZ8Qj;XhouLjWO9F4w5w)F)-8MSd z+z_6s1$O0Ae|v+?aAxVp9op|i&0xY-uQUzJ-_n+QKLDm;W2pT}XMZ|U;~|F{bAcL; zVh9=weHZRcx|rII5I8o6mY8nB%yq+FU_3SIuq!K3)f0UHY}EE*!0~a z^hAOQlP(=nfRiQshx1>`pIi_|e$6Jm@K5jPBmtn3e{b-Nd`sdV+U)*7oNAN~lCUHH zp+vs&S~J;**r!;#2{(E2Lveay83PoHXsWg{fD-w^cWv2kD z@4P>uTU??AWVxc3c~u!GN@aXQP=Dby=NKieIVExSGIj&kR;%_EonHa|wI1`zLc;1r zXD^kkfBo(#3_LWLSj)Hcd^^~?8}OM9cV8d8JlUoTdi&Mp_Q}EC-qHG^?Gvx(XF;8- zml3+b6DtoXa^<=$f_IlfmLwSqPi^beH{Cg8`dvT%^TNG`DgSxl?Z=|b3i0V6>cMu% z+E3Jw(Htg>yaIloF#-S-t5a^@dRegJtFguJe|KNjyl_PO(U3G-Xa;St+XBIjQig_P z`qBs6@`tlUA1qW`lc)kN_Px5;no$sP@0^<_PR+(_+(k|Rfh#!Sgk61CV<|m235V<2 zn)|}!&E|u<5Z(YGTJ3Q6!QDh#%<7B~5|H#4<1Ly|EpPue-~CynOFY;rI1GCWlbRx_G zZktA9C6K>6ML4-)F?h~|x%J~87qI#ZYYQ_AxzJwlt0F6Kkew~8-Sm90hIo}NS^DRP z4{sMgQZ@+-|M;qKAy<(+rk#n!f1FxUWQ}Ac;8M$SX^g3clW<6Jb6{MAB2B@b}&2cNq9_wFwl{?@}TDnw1bDRkP zvm0b;ANIU%OIdaAI#3L&3js~zD2Lde}D#va$qT* zPJDnFCnZ>O>J~z{(iptGDimI7IvN`eS6^^pl|>6agOx;-(IuWtkwHRgH7n5i21?iZ z+%WHG(fTDk8ZSX=x3RJo;-TQ|I*Lwf4{5CD-Z2=`F!Q! zqt(^lMa#eY3_nwNN~!zb{rCL&qUNuSbn{V^heI^jpj|I4#zbdz&`8|0P~QMc)+&Xl zp0R1R!((6L)g#N5PIjfEG#$UaA2tG1_?1|Ms+dkg>{^JCJ!>t*(!x?0`y;3smWS;? z;n;r}&DQg&GY+xoe@ncOag4BP+x!^yDH>F4ZN}jxjA!e;&-G!#{W+DN1}Hk2D*o zGR#s2f)r~v@0z8~*9h`_N^i~YotLmRJ8+4$iMiZX_RLt#`lH=L4P4QR2bORx@r^%{ zCj23~m<$K4ulxCB1fXl}*QI{zSzGw#>rsJ-w(;Z})$0B|y-W}J6D*LKBlUR}5d#YS zI*l&M?98<+$O@4euMiiGKIn&wsxkzW?75pFEj47QbL0 zcijI^zI?PYbN{b?`S9^?_y6a)|G%Tnp9$JJ!j-}7!fOk+*%Sl}D<_>(;=;xH#0{Gq z&t>N!R~O@bTz(|HQ*e&(#B34$oue~fAO2lC#%5Jh%Hipu4&OOcvr1z=+V z#E3&6jJAM!OoK<8ZMnD~YHqT(8gB~DxYnoBc_UKY{A+=3)aM56if@4*xIb8La^I-I z%fjN~e^{abM3vbfQH2E(%@gHdQmMd}lYVaCY(pA=OHxC2!xh|gSS%K4UOnG*#ddBX zx+IMJOGx)ghi1kz$SfDW$)@@7L}fx6iH03=sYXSB@P#Z9mSO?=vW3>5A^l%*5p^VI zn28dDwy=0CvK0llw%K|x3gXi7g4)gpE=ZjPf3{R@P`Fwj$Y^RbjxR#<<=_a(Sb?ZHT7N5=w;Rl_Rf=lOgEltB$E#nomp9;`ALp= z0?_QJk;8NGptV ze_)}_y+&ZCFJ>)5HG4n4g&`%Ps*UgDR zgS67pwx`#(k+)3lVOW29GjIlMP?yfCmS+m;eXQpW%fFdUP)NYj4U3N<)qGq^bys|r zOWu^GVI9tWDzxiLJ^+b z6CwtOOXzD_8B5MO2+|Jbd%3dM*u*DhnEx`t$zf7G9rrMg{`uxi5`FNjgAK(&2wtj9 zsQz}#qDy~YA&N9;eu1%+2E*A{V4aQ{tXxsw#d{3x$aZQol^aGvjF6*|Po~!sf9Lgm z7p?gzsU)A6@M3~PJfJx>U1 zT0hkc<2Th?K+gxoX*%c_AqA|;^7xx8OWpEbP)(~wv%XW>W`PoP660L^c*MT#;MS3< zRgElU;f~jtd(FN)3noy1r8(oLe}PUv$y3&d!#IPJa6|CJO;0tKqrB(hZD2o|Vq#75F z&N-M;0+Vf167?lwd$UPuNpAng9lGP$aC)<7)0YRDMVpVX>ahN=^*4Vle;xA<{r}PG zqbD=^|MJR{hrj9npGW`as;q(-<%n5MLjXk28U~Yf{a|oi*M?fXw^><1Z808FGT)r5 z2+LkTZp&58s@IoQm|=zC_Awk%6Lzr*1P_)kTWTi9a|*f1RtQBM4A8SlM$nwawdit% z&)AxF(6Wd>Kt&5gG*1OHe`8GcD2NfUBPgjjd*hT=xFxsBmNt>rvwaM|{%efY*I|iS z-uh<2GbuX!07jWv5Gbn2GydvpNlm(MlG~bHrAyx=mcia>eTS6)Fu+Kol*3{J9MLEc zT;Lt-$GPQSioV?T1;yEw%dNKj+dSQ{XmyyvDIu9b z8D)t;kRcF_tD4#3^z(}2Vm&=2V!B9fTCLi{-*MFx8BW#ev*V`V1=-ag3duT=QCVuf-5YRh+#UBU_eF!P{b9Ke8&G6 z&Wxtkas~Pr!zD-j4cDr+vP`Ww`p^IPf4^rS99Q4!0=d!X%Ui|%=YRgk|0mBLqJ0i< z3Cc-VsLVEnv)!Sv&Q_Rq4ZNWDIVxQn>F0fs&uz0&uv(XMe}G0VXoY6_hmT8wY}m)@ zI(5%;cdebk;A5>9rH5H}AQL5f>DcI&j?6L#z!t>C$d3JAd>2S*EP!ds-|F8YMaYsC z0RAX&Ei*`(4o~xdJCnPGdsn*|P&sw@^!w@~{;iT%7@ZIK09wfVr)Xt)8UJO#3q11L zV1f*AFRGC0fA)rr##&rnMJ8 zoAN;-l5D_E&|pSz-TGVXG$Xpoi;{`%wN=qz9Z$>Oxw2_c994IzWf^ik4cLe=$Dn72^!0vQTc->XYo$vdKmD ztn)gwx-p8f;dpZ0$Y&S>Snc5z)4CR)??fA{LkIGOo?f~YHO1mZpt*K_b4~ub{=Xs0 zgfW5iu73qR;7E+d_sZJKS(Ta>B?TBcKt^6j~@s;$<)93NWaZc+Ti=9Zu>Ubb4-+OPFE zTe=%1B1cj}Foe~2_L4pZ%_=xS}pZjhbo@_Y#w`i`yQ zPb4B?v44uTMNEqL!sM&+hAZ8+lRi>|gsU9kw$%ZTw+$_xGe`Vx(^Li-3Upudm8??P zhyni4z;vVu`VfY=TP4z;IR65xi#fNW{Q^lSCKskEI9j7D77ry`3$79xg*J#R<17t@ ze{xS+j5x^X@%#mDX!c6uo*tJu%(0^VfQSTk5Wccgi#V&7;f0(csg5BY1Ai{rUW^&2 zV|eqj9YL#=TU06{I~;T$=xep}SnW#j8pII}D#KOYhhso}$hNPnzq6C5s)cc@cx(cN zs|kG+Kr{Im08XXTb7sY1z1Lnt=>l(Ee=TA)2vqGrFnaJnHg$~-_puVKXnq}N;&1QU z*lO2PcmByGFJ#QDe%(8-Vz7DVJoceTJR+0WNc7W>7)kKt5<8KJ-hrDGXhtf0#c5JE zT+HOJ@Mc=#ilr0!WEEA#Tw_5pLlWJG7MSQ?JPt$KaD8`p(d_{9vO6a65ewh+f9#Tr z#IV&I79*6j z1lTJdwP;xC0PrS}$XaW}1q27pe~5D}S$gW!1*u9Q{Ktn71Chb|g1ym4tGM?)mWq#e zX?Us@lX_E>|E$N$odxz4{9NCyIvULVR`;TvyxBfD+}V4zpr-iH`&sWkK8xmgnRjfc zQ)9-Var^X~Jn{FLUafnYUK7W-V}j;Ul~mfG%6zN!O!JawOG(aVhH7~ee?4*#LBooD z#{Gl0gn@GbCXMa5qVxXXfe01~AL8Ix!u#5-z*7NGMQIz0|6+!2V(>FDjggYuhXqI7 zOF?FpHW*w8d>KG;QK?3uY8gBkTqw9wB#cSICftySTe3i98M`VUapt-v`)b4*7eb)Z z_8dv5%t=hL3B~9TRGdZIe@?WmD{a-F@~RkkJhvGDGON6f_f4{ht-z+Wz-8HKx1R== zr%L&JV>0rQfHqG#p^Hm5uqE3fY-US9`3Sr`P?KOsosQU$6r}NJe}!TaV=6Z9Oe;SO zWcq4D9JOybl99+|JBRQUm*NR8TGAuK|YQ{w|9rOh{HjAvZR*Dv4#*wb?B45!V(p@U?O$UrE zNyNiIPqPJ%YYfoV_vR`VT!JoT+!6CVBtawxms4s8=9v53f5LmLdeeOPjzVns4G4Yfczv5}~p<{Fr&a7eo49s$WTe5=yXYQdeL(Zep> zm_w^w$$*Bq=${?`tR(8xiMfDfC&1hkWsGM3=78o-bO=YCVQupr2M^%rDK7*v4+iNq z0|2wiR?zY4e?$k<(Y#xlZ)XW}RJ=MarKNlZhdc4>ulOMrJZ~BQXcSyCdG}QnGgT*^ zBdAm3c8;lA|%$yqhc~>#Rcw z3|q%+hbuO6@j=Hw{BsP>gyrbC&rrTTF&^Zm`^wjme~iacsKRNpeEHaHL!nV&nNR7x z4Dc&bSGMS@NQqylA8LA0sz@@haXKLpXjqeq(_UGiN!ojO)|^Dj^~R+vjU{SU^uE#-gX0BO{jZ?KT3L&}30!5Uw+7nx^4nvrir!x>_CO5MsQX@QS zmAIWmf9QQ~m0o|$uytsXXDao>5?acW{k`3t%|D6mm(;;!5|SF@+AebCJ}pR6_Aa1K zSX}Fa2h1%^skHP6r&dARl1Ok?^J|o%VCF^X+Ln}qAldPn@Kz}0f0s|L^c1@5ew0S^J-dGx4QT$t4Ks zmkVY-Z-$5SVL_T~5@e+9rf=M-k_#!QH`3Ui2|x`E+E<_0B1=sT&GF~AwxzZtM|kV^ zew_ViO*3vjwB|{e9-sekE!GoJdn4?kf9d13SP#sHUnryF#sc*;fE&MCi|^gHN>fo> zEq$14=J1fqXGj^t`If@3*WxbV7rULRy6Bos`$Mb6DFty!+j!gC3ympG(Kp?GcG(?G z2Lty#^zvMc-K-as2x~ND@rbx_ny339;$pV=P*YsF`xt;t$c=x9ln&(Xjlc z&px<-a_h>&t-K}J4=C%6;+kLdWG`}!??G#%xCnP!Vit(ht_ z&68?az)zT{J=su!CPY(hn8f= zX2T`U7DY@zyCCucsDV@f4Hn8Qp<6`}x#E`YZLGy9-9|Ui8s>`0iVoG&~wLdKX zVfn`X^z_}?nI-hy)>GFQf5;u3A-zQ+m0sul^?*a&@!m#5635L<Sb?y z$G1#wxLneHI)=S@j%4&f*ri|4P1JDFIEj8?zI|L?ht&mLr82Eo;CDCNYQG$AbwkeN zT`+_pN{Fxc(9e1U=YfTBOQPM%45g$1)Qr&WzNU*DzHquOCMB*+f9Hj02*L>*1VMc? z1n$+rl-2gs4EV15##{nJKzp_U4-)=`E_r41UEKCw#=Vat0A^1qwQ|#i-{?Q410(%sxRe zU9-i6z#dhhD;D^Lf5b^5rGRUt^qhTpw*KCH@nhbon`6`?`-w9cf3lduvVKt%6Bv~laYO9a zTrm(uSA{ct-L-dGtqs)n2C1D*2Uhr9>E65QT)K$HwqS#)hmN{D*g(%^jD3B@ODDe-eIES#2r4au826kvpPvij%NHu!kAB5G>>l$s>D{qs$lZT zs=~5dK}d#Lf6`MeoR|OA2WF_j5`!^bI2}0$6M|A;#OHcq{7}vR9mKWWX`2j$bg@TE zq&3t6Uix?t@x$ZsI)C4%kzVko{sb+)n*R(yRmSCq67rZNW= znRd?VW_+AzPVa3CgeDW3J6wtekH8A64KF1=LF_eJ6)Y@|)xbwQj4x<{$p0jZ?;VE$*r)Bd6z_6HpzHlk4>=4ZI$t-_aaDZXMfln(wB zu#Lpvruv9wK}EpqeUBJnhA>>?4_e7pyp`})NT|IP>($)b5;+w}y+u&)3~Vb?yJKfI z@&1$rTxEA{8qBmDtVQ>qED?2DOo$ONmtphse`F6-Vz8!$Jm)}ng`r`r)AEL*2~BHm z9P6&-Gh>3hOT$=yxU77Jqe>VjU-%4PLUJ3_Y9M1hb3q>nWw04oaAG?gTs9|8p6Id7ntst0wDy~ zlWAWZe~da)1w^ccMIgU;;tDJKDw*tUbfe`oY?3bLgK2`GsCPLRgg>5(J9>Nn3)^qR z&+}&jEx{OyKBXX-8)8G41E#_fU4=Hj;KxOUyo2ky7gn*^D=vEtdyY7Rd@%e|tup9h z#vG6J1rKDEB+erG6RiP69!?bA2s398ZB|=ue<4qevFm4i8%y104IRQ88cQm}Hi`cD zl_Hu&4?B;eLm-+(Z+0zO%sa&|rstqG6s;mj+|c2q$M{u_X7Cna z1z$1Z2{_VwI8OK~a9wuvkU)on^J!3dQ%CSvOkY@xKSMV<9utr{&4|>KN&)4K`ItMM zh4Yj_)bSbzEd(&#oG_)Fm1Pof!4C#5uu;op@Bvz{UP5rR2pe-ncD zHS*byMDe@Pr&#AfKi?lS(@wKdzy8pTM*UyhZ*-ISd}h#{ZUb931A5b^XHny!x!GK{ zdf}~Q#$btlnprF}#Wq}~c|X-Em0*m|R*C0He#rZY)lV?%niDmo3rYSUsb-ffQHQ?jX* zSH(~Ek&;_GD8$Dc-0v2#$xf8ad597pbZa%Z!B&y{@R|pCt|5mI}NN}6DtP*2omB#w=r=03LGn(b@^~o|uGy>8<=jAnbl@)LRihyGyjFAKv&5aJb|`C) zbe-YrtBOO=1uwvE8cyW!_HVf<=}azGCMD7|s*8MV@{kK)f2tLTB;8ETLYQ>s+#N)p`rr?*c}V|poac9zsa7gMMGirhd#*u zPH3Uy=_Cfi>$=LraTYDM2ANzl>(Ro((-w;btV!OdY4QqBNAF;4RPfmjFU%6Z@;}z) z>!&Sw)*&3OYa3@7osIj+y&vsm;>MT9D{ng*f0TB=`{(YxZku{u`Y>O2qaFQ7qenbW z(O-)e_7Seq<|x>djX}|m8+A82U4*8FcUVryjR*_&%k9}B@C8pj; z;6A^f>;(5Roq#ogW4!mH?LY@OUeoGBLNAiYdH-MB7sb0JHzlGl>VzJdqgNk~));Fh z`qDm{0e@vZg-1XGb_GrX4OWdNDjQWZf9ZtA+!kF-4UPVq>mi{W4@6|q!bHXoPTZP5 zKsDau4-rhDqy8)c%k7CQyHFFGcmuN)zJ~Pj&J^;<+WQ%2IegJFL~eR51dgk}DIxVY zy*I;9KP=Q)(9Eb8KF*q^d;0n9X*S>>}*|p3Qe~2 z<`sy+2?;V)5tJAAG0ntW>>aPv7(&8RivpULB%}cAQHZTDZ;$gu-fYk&izzrtKC(*S z5TsOV=|l$wQrj8g#h+P+n9cqJf0>V_F6t7Q?1C$SwCJ)DpUgn{R$hks&{Gj68AqH` za*fG4O{89@Rr`=-zf=4bua}tvC7C$17KI@qq4>LFfkbXCt&N&Sq6 zHwbm0Z;K3AS=P{iWM6GMdPqEwgh&(`>1W)gD#WrVIpa({ zG%8E8uLqQn!Yg_iRCQCuf9lbn&chnQIzyKFgebNkJVP}nK4zu2%scF?I=qycweqT0 zu=<|{##%1|2O)($pdxvOs4hcSw=I$zoy8rjv|W8O))ONvPN>VHWGdP z_2R!DE~+xYMfcXdtU9{v?Co#A+T7jv{^U(~iOwn$i;GL9kf^3Wf6YLXxKUdO`*;&v zV5CCOYm1>0vA7m3&MFa$B%q7tq&m|vvX$CaZ{jVqr(Ohje6?qu|JjMIx_zK?0M1$09^EB+SojH8Zc#Z^5~z+%=jREyh`-wNES}o32kcl$y6jLauFdsSOtVhc$j>!Ct77g=?V`)W0n-N%k!^{6KiT`hg z?GrwTzjy_J+wuQao}k#*4F2Eh8*`G8!lV?#olr4eQQd}0|yiQO-(3nr3JRFA9-f_u%o)mVlclWWZ3!ZhS-r#j|A zj0A=gwi7Pc4S8_5n`Cu;u^Hs#;WLZdLDSo4TE)aXe@HMiCd@|t7 z&4io8fBUyJIURZABiF3xZrC+Jn`J0J(NeC`k{wn*(b1H4U@sYDrFyCr$VI9t*a4I1 zqI7TtlQ7o9WBy-Tkilu@MXf?sf(QzIXs**JWy&}tJ>gy3=k;|ee9+oY#_L8y(GcpoWz!~{K^xce=$Jk#TjGBvbmnH%B~w!U*m#JS-D1i zA%;{CMl()oWT~o`Vca|;))B|bQP|1@N2RAEli+xg;4u^W^r@Z^fyL5^>La{ALCPx@ zmtDmQUpY@2nxHE&iTu(GPBCi5mah@o1kgz<*|KHx# z|HhFV*WdY9Oo${W1v|U?u&guB2ZRzSX?@g(MILP6a^MbkhvXdh%QL&8n85kl)9+PP zcg^mQlo7+Z01|@uNbdIZbXQl`$E#Q14n%Ars%Y{PnhGdCBb^iD`}M^qZR4Zwe`WpW zGsXsbs#Z&53c)p|Ppe=ds54clO{+yD;AM70L{eIm zeOsRez&NeNcpxIX|WpILKA_=@0Bef5U3jdNG%uSXp2*0g`2eQ0V|`4=~j{b^Sr$Ej3F( zWF0SKTBofod{bx*8o3o9TrR8(ipP9(E0rQbYS|qoobFA=eA8I1^~Uy!LeaY&SJ&AM z=s%o*2opL-S=8os8|GH9dTl|upK|WjCygJ`GvCbyYro( z=XSKwbz%FF-!vO3C#9Y4kRmh*KmaDp?{?$PZCEq?4r#c_&#$EDz5!4%TV zx51HUIV)Pv8U~ojr9Ap5tM`HB$s=Dy-B@D|jrxTf034l~XJC1B+Fs!pP^rAYJ+iQ6 zx4Sw6SdD)@90=I8NEVqXM*kfAvGCnd!pyR*h4#9LV+h%=ULFEWe0_LArR{o{S%0&p zoHvWQhlCP|-)BJR$sAXR07fgKr(Vl13dFpT9n!K=T7vsyL*x|UHioHCG>LRu<)-H& ze%j`&Cq8-DvBe_%@M8G>*g@FXpu4K6{DUl1g*Pf~KE_}l>n)AQDabxz(dL6QlNl`L z=>(!bDR4*2-!w28yBRx~>1RjPm6Jbl7gU#)jZM;HdlW`se>9^;FKwyRxlg6(FRk!; zAF$HnH#<8=!dlFG7%*`fUq%zVq(vg}2UMXRi}|MRXw;sfE1?>Dw;uKMbrtwV%1Z4e zzw`6XF4mK(aUU4D+XPpyAFI*XpF3)Bp|*&22P{=_xlfyu;c*~DzF5ynG2k=i=~z}Y zb1flzW|z+|lv856hoDg8XvWgD8fTgFCF>sqW1Ba#3U_X`48jAOe#VIY0>AquoQhx~ z!}AC~lSOhbe=Llzf9MXU6}SqDz2)JDzhUu<8Q!SG2v}P`G`n!cT6^W8UU6gr* zw^0iAmOqmGniyfE4<>z?oqRY7t*`_^M#b9<3zW(L;i!q>jB?Ez$h)377X zR@gz|n-TeycH_L|7zUq}c#*1^_32BSk!P2k_QItu)(KHBZaAd3M7Nzy+Vj^JH4voA z?quk%pk0H2NwEw|5JAiig`(o7t`1gAgU(dUB7I>1R;CHE$2k{PojKPiYrd+hi;J>$ ze+B>*#H^^V-^NFao&CR$7cOc_!c`e@=K@qRHDZVIs|Bu>oZy2(p&TC>4-` zI>yy3PP9b>sH=>{>?8s-q@jWmS(GM@f5?eX1gSqYiRKLmDG@u9>OT#VYV9{gBX&4e zdsz#;c6OpC%L`IG3}uCCKwVL=*2Uc4o7nZQwC}-oMDcdGYw;~D{0@&7p-&W1KDc$u zVX(TJUKD>)pZDTwwN48IwwDWD14eqmidT*6X#Xd&I>t)D)k1^jE?^wwtsYm@f1}W* zJ`9lj?u3mB3Lq&wdG-ER5W%l6{|~y!W>8f5xny_Kt~FAXom-!^!SN5nqocnKB5+Us z|Jk#rkK6hGCy$;z`pwt;|3Bhip65GrlC*ru?(YbMcPV&3AiC~C1eh8?%FcZHvwCq2 za{{VoIRCV`B9V*7O2v+TgmvwI3m677KNugZN_}}WllXNdfANQdKj*K4HhsBR-qhgx zIVnG{_Oke6_F()ld-CYXZ;gQI<@=8x-hbRb8NPp){cE=W>ecXQxPNj8vdeJe@;k(q z6W-RB2ONbd%$qVFQZ1iX$WiVuQ6QZ^=|2k70U6hw>-ol3M)MTLJpdzf`FOu@9$ViC%Qo{ie2P>dC!&YEiul%p8;6z@<0u_I5sKhF*m4qvCu zdZ3X~y8SpjeY^ki&G6mf>B;*a4&RL&|HDsF7^DZ8`LsVj==TTV|2F9w?Bnzc9tss= ze9p%srrZqG8%FHuYX#>9Z*t9xt-f(ht~A@^kiFo?f6Mao<`}@7M39=`BQU?U2Med$(-ez-HyHZw=Ob8at9itN@q67)H{V-*+xoLW*{l znmeLne{DrRGX95{R7-giBaXpamD8pq6RY*Eq~>{X1C7Gk2@3?KKItPNI8g8JMtEEq zD|Fh3p^vlDcZhDm-MK<}3@t`+-j%`)5IKZ_l^Y~A=nP^iQRkc8xFq1-Rfw--wDKIH z$o+}$3G}uBn*_Mzr5|LIo$Eg8%YZgd^wHdFe|w_jUg;Y7`0!Y&lR3J+pbe<_)O^-t zZ;!)}v*L3#ThFp<dk#CQ8U-2UnlSV2`Z6p^206;?=Q?6XcZK zJa_E8D8}+$+e8)j-Nzxm5n`@3^9TWU{f5)PI-)Fmn z%f+l5phZ&mGBj0yNQs*f?p`;zU-^YDoKcT1@{?%pk_ikwWeP$rU+6#9PN z!?ZG9`3u9HXw<+f0$CTie_6EFW>(xVdzg)Itp`_m9+8Km@02*YaiyCqhnCwCOC+f@ zxyMw>?^0ePd#vl}5#diMD|)YD?sdSV97YKsm{Ym>Pqpw^uu9TyIcS>b3Dv&~0}keTM)bA_VP-ck1MP}fc^I>}U|f2?$i>d?SYQOs+=>YA+7px|Sf$NtGLaEEOR%$v~vCaM3hOAM`d**E9WL!>* zOOC%^7vk7sfyHJzR2J*^ZWe!Bmx8}D%eQ?`H7)X}bZ1M9*Zd)+??&bRCp^`<&4@8D zFbukDRlwdWxAe;ae@>c#6vgm6YgpBGh4m zMbK_IBhK&YTda7Oz3a+5lF6&=rO4~A!K7lpW;uLhT(ES=m<9t&*Y$C&+gwivxVOOA zhmBbS{T3^!b?K3P)~0l*!9@|Jj8CW9=8XJ-lC@qgR-Mnge*l&exUuZDHuIVU<$Jd9 z%-Vh?ItY7AWxp)WvZqgf$5bbDmI;mEF{I3%Fa}#pW|iXN_cbbU*UokU++&Nrj!zOzNjI6ZTV6cHUcOr+k zc!Ho4E~AR%#rW%JPJWWFE;r0e}tA(7&hbNgQ^~^3O!~Z-(yC1 zxxge~B;+Wc=5pIfRSZeGw!lR-i z#|R5cby#5Nf!f)=^O(0QhX%1mL@Z>XJtQA9b(EgV!)cxo?ZzTREp( z>Ooi^anZ)Jf%Lv`9-I7Uxf=T);|B-Da;d5xpOL@T>p8|8C_H}TAC!K%b6i;!DGBdm zovEBskyK*MCcgkHEC=#X-{fVKeK?2B=zqIbNpmDT*9ZqXl+3K&U8@BU(G$HS4P9v^ z{XsPb0Eb75s|vY^R-)n9yx3IhfX~Il3bQL`p;s*LjqK_mF4_sB^SY0%9uZ)Xm!ZDW zNK~p(n6PkE^jJ2Ov=~1*JfMlQ!>37$wn7_MHp1A0HZ4@2T8h&wvbSP&VqHlJ1b+um z-k2K^#@%sRmL-ZrN27<`xB>0=)cR_=pqKdVOh0)hb?ntnTrpF{KUotJol95%Ea7(F zjHo*DY504NuRqivjnTJpjdz0iRWu|lf(GSev@e?!H^^!UY&8~HSX0Za25R~%qVRuf z|Ao8pbc`~L{|o!?@w3Ozo^0BGkAI(k<^TB=@c$sh_Y#6Z4SNzSEVLa$Ln8YNIxN0o zKu~qwNv(G+^f9c;W62ckg{yYO0kV~S1PK%{#o_w5T!>m5k?utBYrrBSc)**c6{WQR z+_yvcuh5G8LZ8qB$Cv6;g#~0oU{Dv!u|> z8p7(cS$nWQ&k?d@h|<~)7k`_*Sf#2PGbShAhPXZHXMa-UKcm$@uBxeGW(0NEA#c}( zwi08u#0gJTJBB|P@Ftj6TtLgTv2rQl2w;PYl8nkslscg~adinqd&oPQe9-35TosD1 zv>%j7ew2HicD#;T)8^w@OE;mZ9K->S(*_f3)R)8PM61Kwr0Oq{_J3(33(QXFr2xKk z1zEclF33f!Mz!X9U}Vr}krW7C;V__#(LRQVoNHPso(LVX~_l2fvA_S`wTzKamu&^RG z0TNcgB~Ghm7L*Q%Z_sOuDhMm3;qEUN4k!Jw`cEi^+G$K}U=9+RIw*83M_ej#M9>vY ziTpm5+ZEd>eShMKc~X%nrQBM_AmgIPBp1eZdSybd-V%UkeKlILeUhTR!U|mHKQ24= zT&cktUh&GhAUv)TU=CU$N~a!N+>Z(!!3hmYbw1WJ8&2lB+>n5lCbBh)IjV?YPI^Xo zz%k<~b)AL5JriDH?dsk~01&iFjZ2`S44R6xhW>AMn6(ZJd^Kd`!XKxG|g76*7O)}jC3Q4ydbbAyx zJol5*?=BErr30WW+RZ~F{A7FUO|MNZKIf00rhnaIsX#)F$TgDu2ipX<=$o+_ixxUy z#a$Y_J6ewTWem`pR*4P-dtb0jmG5HwH*TNB$b(~p9v8_6Ywd2l+?k?Nzk)LsGuKXm zs>=4}e%p^S`$k0PB$yx#mDc`ZW{3Hrs(W$|VnUJmH#NuD+~D8!v-d3{ z;vgcC*zW2cHJ%Vm+-=EONAtI{ip}oTuzyl(nscDA6bIFw%!UB%OM6>w*qyckmg;#= zsb?*>TOSZR0VvQ~_;1)9S9~fi?tPmbW`<4%<+>Tz>s#ikr%k44T{=+LnCDHa6dbJp zy}h3DMZ!b?IjDS!#Zb#)u3)2>+jpEho4fh=Q6dP*PZqgaUGJPB)xDe6v4gA@W`9PA zwL`t2ZlMDovN^ZN{3;kNc#)gi_6)J|rYtu?Kj!LE?drBB(+1~3(iSd|WCqxmSkCTN zYuR-GGb*%4!YJxsnb8FEOg1D;cBbE!ML^?3vpvI$&ywNX@*OQY!9c)SF@=jX@nR{K z)v+{5e-j?HI6tRDjeKsixu=i8-hVg2b{?XUjdQz(L0cef)L}-4%BG$ zbZnn3O%8Z#Kv$r-%{O!qRngcR!XV!d&IQb1S@EFz%Zay1TfONc@t}NcLw20Z-Ln0{ zjO|=#kEYeD!QU3joWYb&xQz~v^z-*YrtTTYr@$^zMO(o84OJH-$t z=NLBm)**k=&yHb}kys>uK_s5t(%r!q7s4$zNK1^lFLoksH64!Hnpb5CwlGQU-o8cm z829}^@YGV?Qbbnra1#d6ybhDah${kLD3kJtM1SoI!49c*UIocuL#dCnH)-zXL|CKC0N?=tWD?7$ delta 35168 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 diff --git a/helm/mosaic-stack/files/openclaw-seed/nemoclaw.json b/helm/mosaic-stack/files/openclaw-seed/nemoclaw.json index dfcd85f..e3427b5 100644 --- a/helm/mosaic-stack/files/openclaw-seed/nemoclaw.json +++ b/helm/mosaic-stack/files/openclaw-seed/nemoclaw.json @@ -90,7 +90,12 @@ "list": [ { "id": "default", - "name": "AI Factory Operations Agent", + "name": {{ default "AI Factory Operations Agent" .Values.openclaw.agentDisplayName | toJson }}, + {{- if .Values.openclaw.agentDisplayName }} + "identity": { + "name": {{ .Values.openclaw.agentDisplayName | toJson }} + }, + {{- end }} "workspace": "~/.openclaw/workspace", "thinkingDefault": "off", "reasoningDefault": "off" diff --git a/helm/mosaic-stack/templates/validation.yaml b/helm/mosaic-stack/templates/validation.yaml index e336520..9d59dd1 100644 --- a/helm/mosaic-stack/templates/validation.yaml +++ b/helm/mosaic-stack/templates/validation.yaml @@ -7,6 +7,9 @@ {{- if not (has .Values.modules.slurm.backend (list "auto" "vanilla" "bcm")) -}} {{- fail "modules.slurm.backend must be one of: auto, vanilla, bcm" -}} {{- end -}} +{{- if and (hasKey .Values.openclaw "agentDisplayName") (not (kindIs "string" .Values.openclaw.agentDisplayName)) -}} +{{- fail "openclaw.agentDisplayName must be a string" -}} +{{- end -}} {{- if and .Values.openclaw.slack.enabled (not .Values.openclaw.slack.existingSecret) -}} {{- fail "openclaw.slack.existingSecret is required when native Slack is enabled" -}} {{- end -}} diff --git a/helm/mosaic-stack/tests/chart-render.test.mjs b/helm/mosaic-stack/tests/chart-render.test.mjs index 6052459..005c835 100644 --- a/helm/mosaic-stack/tests/chart-render.test.mjs +++ b/helm/mosaic-stack/tests/chart-render.test.mjs @@ -384,6 +384,39 @@ test("generates a bearer credential with a chart-managed Research Agent Secret", assert.match(output, /name: iraop-secrets[\s\S]*IRAOP_API_KEY: "[A-Za-z0-9]{48}"/); }); +test("agent display name defaults preserve the existing agent identity", () => { + const baseline = openclawConfig(); + assert.deepEqual(baseline.agents.list, [{ + id: "default", + name: "AI Factory Operations Agent", + workspace: "~/.openclaw/workspace", + thinkingDefault: "off", + reasoningDefault: "off", + }]); + assert.deepEqual(openclawConfig("--set-string", "openclaw.agentDisplayName="), baseline); + assert.deepEqual(openclawConfig("--set-json", "openclaw.agentDisplayName=null"), baseline); +}); + +test("agent display name overrides both names without changing routing or other configuration", () => { + const baseline = openclawConfig(); + for (const name of ["Operations Agent", '值班 "Agent" \\ {{ .Release.Name }}\n\u0001']) { + const config = openclawConfig("--set-json", `openclaw.agentDisplayName=${JSON.stringify(name)}`); + const expected = structuredClone(baseline); + expected.agents.list[0].name = name; + expected.agents.list[0].identity = { name }; + assert.deepEqual(config, expected); + } +}); + +test("agent display name rejects non-string values", () => { + for (const value of [false, 0, 42, [], {}]) { + const result = spawnSync("helm", ["template", "mosaic", chart, + "--set-json", `openclaw.agentDisplayName=${JSON.stringify(value)}`], { encoding: "utf8" }); + assert.notEqual(result.status, 0); + assert.match(result.stderr, /openclaw\.agentDisplayName must be a string/); + } +}); + test("additional model options preserve the primary provider and model", () => { const baseline = JSON.parse(configMapBlock(render("--show-only", "templates/openclaw-seed-configmap.yaml"), "openclaw.json")); assert.deepEqual(Object.keys(baseline.models.providers), ["llm"]); diff --git a/helm/mosaic-stack/values.yaml b/helm/mosaic-stack/values.yaml index d1d0c32..5e1a7e9 100644 --- a/helm/mosaic-stack/values.yaml +++ b/helm/mosaic-stack/values.yaml @@ -264,6 +264,8 @@ mosaicUi: machineToken: "" openclaw: enabled: true + # Optional display name and channel identity for the default agent; empty preserves the seed defaults. + agentDisplayName: "" # Additional gateway environment variables, including Secret references for providers. extraEnv: [] # OpenClaw provider definitions keyed by provider ID; llm is reserved for the primary provider.