From 2f2e543f8fa6abb092f5f2ef6a273c8efaf7b63c Mon Sep 17 00:00:00 2001 From: Brace Sproul Date: Tue, 29 Jul 2025 11:13:55 -0700 Subject: [PATCH] feat: Support skipping Vercel's CI (#588) * fix: filtering gh bot comments * cr * cr * test empty commit * [skip ci] * [skip deploy] * feat: Support skipping Vercel's CI * push empty commit at the end * cr * testing [skip ci] * testing [skip deploy] * testing [skip ci] * testing [skip ci] * testing [skip ci] * fix command * cr * cr * cr * cr --- apps/docs/docs.json | 3 +- ...vercel_ignored_build_script_screenshot.png | Bin 0 -> 122302 bytes apps/docs/setup/ci.mdx | 69 +++++++++++++++ apps/open-swe/.env.example | 3 + .../src/graphs/programmer/nodes/open-pr.ts | 7 ++ apps/open-swe/src/utils/github/git.ts | 82 +++++++++++++++++- 6 files changed, 162 insertions(+), 2 deletions(-) create mode 100644 apps/docs/images/vercel_ignored_build_script_screenshot.png create mode 100644 apps/docs/setup/ci.mdx diff --git a/apps/docs/docs.json b/apps/docs/docs.json index fc99c1ad..371d99c8 100644 --- a/apps/docs/docs.json +++ b/apps/docs/docs.json @@ -27,7 +27,8 @@ "setup/intro", "setup/development", "setup/authentication", - "setup/monorepo" + "setup/monorepo", + "setup/ci" ] } ] diff --git a/apps/docs/images/vercel_ignored_build_script_screenshot.png b/apps/docs/images/vercel_ignored_build_script_screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..6ebf70779ff60f50f23309630e6492d1d2431561 GIT binary patch literal 122302 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 z z?h@c4{frg^OlU=U@$g9;KJ>-IHf`Y0MRWN%*VTmXGYf?68tBQG?Za|i6rky6=UmHU zO-^^GV&p|uuphO0;oh<6=h~{UR_!bsmSGwj6;D^TK)}h0cvhg;LAC&z#khDCZ*tq` ze#7n3u`>&PS5UD^U;Y#oYU`EB4Kg~%`lP}swsxc_ypI-o#j7osLFr;Yk&ApgGzxl# z>ILPV1kK_Ba5FJ4KFO8mSODa}YgM4C@U*1_w19k5EKoOh@Okhl-Z8QbI?mrFh(=DD z*hVdDcT^u|(UUv&vU|Jt6?{6a;2250I5Rcy6Sf%5tt|^EM+bZ?&~<56KB+O-bY|i{ z$M4Ez2%-fX;t6(}8Qu%6F+QuP1jNJ%GjAI7c@COB(`dU!HQY003rX8J8LoltU<#ob zKt<+9iq<)#k?RZxcL#}8VDtCxK>@+K>PbH@wQFqKjubY%+I$+{4QowjJps^62FkMY zBwpBH-9E?HcSUa0`$wHwQPp@pnsyR@N|?e!{$@pd#=esrwW>bh+nCsP09s;99Ppue zkL#Uz)@E^vP=Wwyv74d7X^8uvRm6hMoAYr*)n&) zAE;caqSy1J24+iKjV^%-35%10bFKk<609OBr zT8aF_c!}2uN_agtb8`zLT)g4@CqK?crrOm{jv3HO9}k-g&_6BpI(#65ZtHqbVQm)x zoME4uW48j&=K$1qW-30v4^y>(dY z+e%DU8lAH)7_0dr=*0BdJXh_NvHd3nZNbGityM4fR!Si?O3n%Vq$l;}cc8NB=cOkq zo_gVj`UNJDc6t&%Jf{sGkTuV3so4xqe`JPxlw`+f=QqCN=O(#3{^W|!b!W6Dc-<%h z(I4jPXGBig%!4gK3;>rt$&hVgz}XFL60Gr*D(9+ z=S9ZYl`(#2*VxVP{wHWFkHYHxnw}+xg%Ie+=2LeFx?_H=rmdK8R<-aO$sk+BCeEG}a5Is^6fxzqNZ`+xX}Dr{=&rbRul{Q9xb>u?Ha&*R>?(%MN43X*$h zZZl8@uM=1bq)0fOscT!VkR44p*E3paQ_Lpie|Y|Ptb(6KNiwbKy>pcPOfoZ1;OTVe zRtofR5)sTAvTaHYW`>sEwL106!q@x@duR*xQZ3k5hvriw zeN@qgvQS>zOL6Q^``r6yAju)bpoGN{Tx@}fcMhr<3!^o}iaAD-UFX)Aj;%$8!%uVr zq9||F|H&h7ge^4}#_-wsNHimS3ibUKVJ{<9T&2gwBG&NfK$eKi0 zBQ1Ng+2e#a5n6l_j(uA*&8~^$QiL-9q^U|O12mx382@7YWWa8E|bokHuyp}U?>k1oEw(j@=GRb@u;AOZqpDu78xSrH$w|!oB=2{ux_ns!;YOHo< z_&TJZqW8XtX+t?Cf1_IlSM(K&afx|CsS}~jM%h5X>j<;~xseLtDlIiZ z?UQd;MKo1?xn}oyXblS-i#7%i={A%{7W1|R<=iLUEe|!mUB(>q4Crdy82w3=yxE}M zL%W7B5wczOOdn#OcG<&(j8f6(Uc^1M_@iW9 z4LUY8R5RndT=fhK>q#369>ddiHt#ZuZ)$kSKA?G3BjNwU-kXO*-M0VZrL-t?7b%7kMwPdm+d3s8IE^v4wH64QV%N9?ag=5`% z+-cI1U-Ro+*O+$113%#W>RmO=fh={UcgL|*N&BjPV##hoSN#Ql2r zX(uQmLVB;MFlW$0QHFT?Uiy`V>GZ1z?L7ZD6?{!e+KQXV^VEIR*k{uqH+)ZKNoIRC zHGJ(oPt~j5o~tXP4kbFSa#@7M8F;R(BO6yi7WswvhLm^Cwl^$sy!FQKP32|@@A?)i zSBwmVt}{^xwKcsBh9KN*yn;-hU5Rrexij%lBSO!bqArv9DEcj)+5*iG9~}XWr!xTh26RHC7IUQ6s7W0=?l11D+|6GV9xs-%%D6 z_fZFLHoGBq(8CluQ?|pCU)AWF0oScp3Kn?GWoZvlC+xNnYsL)KoJBU`p1B9Rf*QyyQBz3C% zGW9H{^0#|iMSYW3Mp%Okw(6r+0OSD1pn{D?Y{e7>h6bu5021{g<@5wQ+>Gl@U+7dR z`g2lL4g_PR!OizUgZ)%5^n$M2Hir=?u8^gVZ5KjS8!w5qy;v|AoFpkKss>jDWGeTt z&1I#6*xl#kgp{1u=X-0!rmg$28F0fP!=$Jn#;D(cT^`in!Ubz`Kg+O{eJk zy_4CmZvxG(IUKot_wR(e8kDX{JzKUMvMPWda)0er6 zWK%(ivOP{th={JNfp{U75DOgi{Zon@Cc|q15|-sGai<~9iil8sT5Ms zq9BxE>*D(fhX+8I;Vod7YiVLrEMnuMn0_TSNfNEX0ja|gz=lX$2JdO#k4LitNRk#3bzj@v_NmTeYxr=@$D2+`d~ z2*=+(?bWX{Q^@Pv=LbSSs7z`7eP>)w1j?;Bn{Pm-faN_)v1Nmo*a9$QMh2x-_kDAF z??ve{yzNi|uCv3Ukv$&!XpC3Zr6#Y~{YtBQ1uQk)*Lb{)HOcgKT7qey z8+R4&Z(^xsHu&1vlGe8)iye?Pht}xuFEXX#AEgY;3{3*%PL?g^v#7kOMH@+9f_kmG zko({iAZId9L~6O$xi3(RMt+;QojuNdd5>DT18ecH`8S1BUpv=EwpY;wHepIlmLt1) z&Uc4$Q!y~7+74i5zP@Ihp)6r3f+;d!tqT?|5PlSEzQvW%tdm@$y+Eu#U5 zHy0w!CE!zm%DM+jLKAAiah5N1ay+#(t0XxT>EYrjcda<5G0QAUH!MypE|pS9$uR2g z!2L!iA)UUH7^g?J_WCZ?1c`pyOFDP*&NMM$qQ&T&q12n!YalsNw`0}cM!dDuR{Nco zY%AqM9Xs?k2_P*GcFUXIZ9#-!sIIFA#;O&T*t@ypvgEi9mVOZnHF|mXGaXoI|c}W%P3=Q%)-> zWSVXtnJ~Oh2&I)u6HDcV41Cz>;Ro;cPMdbH!m11fSRS~JN7d)hRakM!YtF3_pHXAP z+N`xig3_nONR{?_wlB+}{qoB$?~8q}xL0lZ$CCGwa3v$|Mep9ObhO|zY2&9*MTfEMtIcRuVNqETJF3{u14Y`)C1!tu82^|-@+qRo3 z=B0g3ClscZ&|~H$9eUYLRK6V8l#=QoQ6?kV^RfdyV_W1}zA(hByR*L~ny&ifU|y(ey*19C1qX71bXYy{`W3 z=X+Y^10o9)W`mDQO5~QTzH`EICeKJoOv@t9-HY%Z#n3_B6*?)Yp64_xn_ycGCpxjt z%&N?pOE|?Zc>2I z%ReF;dZ(NdQucjlj?Cpa_{L&ztH%4lw?VrI<5quzlOD`Z# zDN6@Ao_I`Nrx0rPB{Ti7rh~MdoN9c$yA&iW8w!?J z+>(enO#ZV%7R#=-7#hw9?EQi~4ZR)>DX@F0E^@n(xUU|g3!7aji zx$p%Bq(WXcB2D|&6>Sr&C^|^jN_>n2vzgXn_3#*ZEZEc9zhox{J~&lluy zD0y6R_5GQ))3=%gIG(#DbX&exCdaZ0%caH?wN{7mCU@h$`?{S0OjiHm?c~n$Lp$K< zaN2h=@mo{OyvQ8sh9IimSW{3zhbMpFX1v~vrK1F(=$%*5@~YarGI?P?FIbLJ7FGXy zmUIDIuVkU~3&~v+dCr_7bW-o^hw zJ{_ZwPDA(mI5ZJk_?wDb5w{=Bd0iNE?s9G@gyr{V?UJTJ6Vudu^NAx~JNReycUJ{+AzA+NdJSWv=QGB5sJ?zgs_-HP~ z0nX5GJAwZOmcx*4JdtusCYrIcFJ9f-$?+Ebo1AK~k>v6_FVoo4KVmOu zPiHlB&Gwp*&#*t@2u3c^zr}5_^V=wm;h7$TIeUHJQ@dXuv#3n8HP4-iivEt^L&=Qu5B93{9EAoh2-#mS}4C?SLOUD>frnT>bHjmc_pN zC}uF}T}@Cz$auW$?dcScn61fq>exXpnit@5ab1@7TKf@8Z-cnx25Myv^&h|k^FfkSxMFlqM14^(28E89*Nz!F~f zSvm{U;@Ra%8KZ8nDOXlcsSjocpmi4orre3OQ~ZZnV+Q)Y*jf2~QXd4?H}c&|q>@1N zXd>m;ts}P^0BWi{LDPVGYE*S#geSjy3Domf6(n@fHS2EhAb0^thG;0zT?I)j-Y-vVEI2w5qj6v)y z9>Bm*rlWL610s1*4@TUr41(@%E*D#_osckeUcg$(YkNtA41aP~vepla zZnEw@PyjNLkG9>8D;+&fa!Vx(@={2#&2D1scu)2}YcXkSgHIzMG#vY`r?s>FsKsKR z-jmu+?nXzyTp5JdNOs;)jZG2hD)> zObN4SU_e+Oj%#=DWrw&GyDda(?u?{hYW*}_0~;KoLA)IJBVPDfySH0G3`uHuqI&^U z;cn_+5j%|Na_uH{y+kJo?0sp#C7TL2=KP#>6aUrpwabs~FM&ZqCR{c%dfPIcwG4)! zgbqEDIzc@52@8&?NMdKENkb4#KGiNWEWtiUx`&GGnsDu5q_7+DbGR4K>wE#`UqN4X z%R_+4zgFAiHn;AwZGo2wK48>P6nXEGK*kk|l~08OQ1maYIm`_Wad&g&S&QOUjyzvxmycLhv z#F3BCB`47#s5wyk7qN$~W05?uPo!{3ocf4MC*=#cah?w$2Lge#1LesOvjME`97K|6 z&FL%P*^mGF;`;1(eN%x+UY~CdDpT152+J5|gX;cii4$L2N_KOv)B<4J*o`Q#;QZKr zGAY9y#Gi4O%_TfuIv;p?N8Tt->D>@>N>6=UvK*2-s@flti7=%k+(Wgjn>8QSmpwRN z&VczmKT|oCMKeY{bwr~Jzp4fOIE(s9o4l;gd>}{67D2u|!$v~XLnk4cy0~Oex62*E z5PB8-Q<-Ch(8S(D*U+vU<%Ky8FJP}pTF|(NYOAaGZ@eOu=kEZIw70a;>;RaHk*U&( zO;6JWNN9c*l=u@q%6lC3+}p&64pE zm;Lv}&ra%XHzRKq?&1g}>(uFeTHTJ;jG-Oj;L{AdvXXTlpf-G`GNQREm>?6=;0AMu1jnugXT@EG}_??RC{#t z8$gFN+eE5H%MWOKz@6t?&J6=$!4z9-A4PYIuPQWBc1>LJsSe{+o6L@TL2St41XWF1 ze;QD6a9fAB>(Fcxx${d`tfW$I!a8i9Fg%>$(hr)H0dZsQ757)94_dIlQt*6RWLpoa zF(I&4%fG0!=>AnFHKn}bI1n>&Lt%@I^dE&!{TpVQ$*d@H6R)uFHdeU~SifG`uj;K% zxrZKvnh$q=0G%x_c(B9vtE`_vuVG;8NWOh)!m=YmNC2jpVC>)q4i>i9iS80!Ta+lA zR+>&->rIx_-RYsp{*$O2J}Q1-7c5xLLW1r&^x5xD)eIv;_!Pu4YfYy#$U@AXoAzc3 z1WUwuv)2bXq+V|h=4<3pckbbP{_6JZG%SHS7)t>N4RQB`+`=aD7GJzF7?ZxEm`0)& zU6!+C{<$ZKLdJ%c59Ezj`iA)f6A&WTC!IV{<+SbezH88x&cjI9z{6jj^Ei3uF4 ztDlpDHsqE%`m!CnE2(Igm*P~9k`Si&i48UV*ix>qf z=YoQPBGOF%jrJ7YQD|Hx^Q2PavChf*0xKZ*^ds8xt4JL7ig3we9xMG-sT- znF|=lb?Jwym??_sZbkJ|{#LicGUYp3>_{-k0mL%9nF}|>Hu$4PCTTS)QR$iqZ7urX zAT={xWW*+S7(KZ70(IJ>mn+oVMW@nR)gDD`ab+961y4h5JZHw7F9%dC<*PunZQQ>` z-A$y!d%t$m35Y;#dlkEMk$Rxn(axW#3ML;Pgq0lrboN}#HC=iUmDC-V$?DX@eOLB{PYz!I9v$InHUNgFl-6jV2z3)now+3g*2F;GFvQHKo3bNobxx)SlwXE|#eB^P<+jDJ-M=!9iRP~S{ z;}ua2rn!&AN6+ui6Yn-H&S$&P)|AiYfvf<}A0KVML?!2*I5kFq(fHGei@l-lTTIx& za@OWM$Y;^?tAxEKRZW6L$WOIxm5DoWiqdShpclnQ<$1YMR5h>o8TKQG%_J8KUQVW; zlPJ)_!Zf)Xrf)7;=_knu`v}n=-yh{!>1M+GLMPB!u@+-c!xjZN&D?1%6lb%^GGo_Igk!h z@$vNpIyXGoyx;Qaet2{kezCvXx^f`h*U^uBn>Eg3kLkDsNUh%kkL)b*Q(m9SrgpT_ z$X;I3bS))2tMVExIRz(0*VMjN$)PN-#n&ktKHKY!bJ3 z??UXvWUu`4YYx7Tk@S4qN=pqbn=OP1VG-d-a7NGG4Da)9r!C9R`s6j9vfM5=Za#Ku z&Y7eQybdaW#bOTj7$Doio5N;2?yP9Spk4_JJ=1ZuN|U}5EntdTMCb_cSj zI>>dmp7lUkKz_0_1NJE#vh*WBr>wpR0JGssHNh_acMdq+3BoI>k0#b%A-Q{)=m6oNg*^3g0V*8DQo#x?(`-I$+199u06r`S1S_vQQ6Tt@OK3jG04d zMYA>+)_)S@{sgh_5pPM^OG3Qyq8P22J9$9*CLtu})Z6=7#P8+`YR_0YX*+r7z0ZQ> zpEDm1fwd(qVjrX3r;8>&GrjM_Hy{w6*Dq8|4rqTJ#6xcTOnTHGx& zC^uqmn+cME$q5GBQZ4!hn}zE;?_rBp^S*4F7Jd&_fNE&`Az!?4yzp2Hzvw~}@{S&Aia-Jwhxv+ERcT-GpVb%vnrHSH)toz%j*7!kVe05xmamAAwq zaM>UXnsMDvB>9knF70*MIHV(M^a~_T*n|*YSk|o*Dnx~5?3!|Ttm0*r&dy!5;K9CC z$S_HL*mpG4{4jg8X9JnS-=ewI;<1sdcoe$8p)~tB_y*+&wZ960U_vr<7g{CW4C|co zpQA9mE#V9KvJvgM!#!)d($M98nFaCP9)#jcO+^bv41J1XZ-A!ReJ-Wp0IIg&89X)RMk6=$?m1$6!av2JX4W{9|w%Z1)P@dS4iOH=>6;1NU@NscWAi>uHSe6U$XzpIuhVi|xFxSR-T~4J zc0IR+en;CYt4#RAc8UZqt{d0Yo*glgSrAdmvmXOj0q3XPu;aLh3Q>Dx0&XS@V2wDu zyK4sUUPgw9rwp@gh6%M3*-guS*};qFc7)v5SC5x=A-VINv7jRblN5KQdZ`ezXXLo* zipPu%8(x6EUjr#>-b~d-f~Jx+$(DiCGGXEfG_}ccnH!a~!sijN6(Dk1lf&*Kw)cjWU0V_i7ngh9IR2RQLsIdH#~MSsOK%ToR;%U=iV;(cgX;>1+1kPE!5j#&3RfXsaN=3SgOT1HreGW{&g@Y>n`PVS~OgaWYCw_&POnWbvfs}AgO-k zcB=r}I;Be$wi6f*V1m2-A zbGx7}g?firGNWzd-z|Us`2DE2SVm8F1Zq81jBT}b4AkyuDNG#;6Gs+*O0VUO50tJp z2;%T6JER84WpQApO+gkd&pDPgf$4i!k~7?+sKs_H7yUlT$C1*N&AUYMx^kD1ujOD1 z&jxX-l2Jkg@Ldhdk-c)hILL|wt=uRE3zvL1rMMXu=ehO{7YPQ+q^7>W14-6d{ z7t<2zFnl$PjMb|H!r5N6BXjf_f4?AMd!?J=XZCtj=G=BVWp>ceTl-4d^`L$4a&|wsE-oj#mLVEqyDq6cUvw#(cS?~T$c3F?%0*Mj9YRi;%&NvTlCUZhej4oW`lPr z!Inv#PN>;TGnjM-CLOeur`pGI%cu&aSt#5{a73lY%0pndSo9c{0ve8ND<`f#^jUga^H=$t-Q)4aFt ziqj4h9FPji=N3b^$XB)lxw?^xoKf?MJL2?{8b=e)p91UE_&P8-@N7ZGiqmg!FG`ga zH9;M=StD;Z3sgfxq=PD3=)sFfsJ!f9ezZdb@s?16Bx5d4( zGvLKlOcHVjkT@Zr4Vjbp{Ago8)8>_4CHTw6 zYSsCRwtKjxLTU|7q8m(pp@2qR&VT{}q8Bm35V1#h;_)5rg%6c^;sWt$r#*=_0aWhX zAnEA>NLcMm*z!_w`JMR^@hebE1MWoaAkuor)$Z0t8z9JW=Jl?;$III!f z5s-Pc>2df3ALCq|F0)u^{L>(3ID=vr&|K|u=BRO7ZR#iFL{ZK9jIUYRkHhQ!Om&Iv z&^i5cyUUnLHX*OCs^kFaVavq*mUDcW1*hKyjflg5UdlYcV0#38Rju_-*`iw2$y2_uGdt0cmeuf*8hR!7*?^{!_V#f{^Y2e zCLeAox?ZTgIjoxa>H5X|rYnkG-048INg=ofVJbE-TkJGW?0kTjGB>_LJ+1nEZvYtd zPnzLwq3#oZ5WWTu8%kehUr_L*5)(u5bV;t6`a@lefRXAwPxtl>7N({gpDbtxiP2!6|Yo^nMS^yI7z4uW^yxn ztRI7>lA~p!nVL{=;V6IsPnc#RhlP{lyedw!?m3^AFTQ*lh?hzzMbppvgn;e3&YKGp z=mcr(n&Mq&H#w>`GIz!2Qb7GBA4TN;bGJSnVM=)W-iU8-<71e~A2mB2cVEN)A!}uz zolRpVFeorBJERAsOP>D9rZzRKYhf_BFsRS2Hxhr&sDILPj~rt%KDR4%H68+MclZCW zcK_ux{=dX&{4WvrA9U=0ZuI}3^NptvyF7p?f?l|B{$L-NFd5^aipKB1l0D9OxwtF%`^7#g2^H zj}8BF;qVjR0KMrVgAcSYm?T%NIC2Z+JZ4r@iSI8?Do1v)^lhtRUi){DLtYjJ)%BeL zlh#y18(`)=*V6ly1HP{H87PVQF}1tQujUpnt}_KfK&!c5ZHiy)=aKm5BE#6K!I;Cd z@##^Ucj;a}M9Pyx7?cUumJtwCh;0|oXp9qDxCL+mUv^B`{IaL7U;7Ls*ZhGcW)$Vt z4lN0^`=)hUmF6F4{hzGg@EhSwhA_}e3!sM9+~ph_7P04>{2HZM=MPAhosY?+EoWZ(mLE<(kFpdem|O#h4t!f3XC~BN{*{(}3mKy`GYWGyYY3I{O~A zkWjp09M^}b9==W|#1Z#2{Z)Y=n5E%+&1;~5;V1uw1*iD++l@3J3j;SG0}}uhXq z`}XvXsSkZ5ys&!@rC$E!&L0Dp9>brVQu+LZmLk;{a(z(zR0{>7>^>{|uMwz@WN8== zRh?MfOKKDq30xNjRyO~lKJ!Zi{`0GWZz`(I^!_>dU+IiLqhc04fV{BEa^a=Y;Nz#3`vo{tRIU3pIXLmXF{+@57 z&Ba}H<4FWQ<4CY(jL{?3D*J^gyDMke9ydPDx^cxnU~@8{u{1b|14^LXW5C{Td>FD(52!d|5``<``e%7Ifl`@#?3+ocJ(6G_don?A@S=+ zgyUFmwIz=qw(#w`LbmmmS4~+5QaQ4vx9KAN=fh#zNBZ~tr_a2+bC1V~BQORp3prL7 zM^;o#`;T8~=1~3v{t^T*Yxh7doSc04mty*_SDkOVorU~hL03dwMA`H|-!Sptz`MU- zBa2_OyrBEb;p4Aw`{O={qPBr$=+L>Rb2ne|mowbI-&>}n59GMv-is%>agaMD-bw#y zl?|iJ{dslj2|&w+ zLpu_d@J5pV52cd7{ZGOF^wJC@f=uWC2KLW5`@aZm^}Rb!8KikIO@o+{@u&2XZvr7P ziT7sxmk)*ussvf2tHM2i#ah|+9lIotTbU8;jYX^#Gf(nH$TZhcY?MA ztO@idJo@GNq-^b1zm3YfbY^@}Fx7zmBVVy83SZ#*c_aSRApG+udr$5P0KfJ4{o!vu zlvZ>yQN?%4kWcxpH-XZT`P`>=q9g1`nNeZ2Vfh>xo%J zU0wJNJy;U_Rnc8{k42>yYU#AJSM;T=_6Q*j#RBIIO-L{l9rO zPjVSXPCWeW#KALdHxf?CfLmu0=_?oakMuPm`_S>Pos2(kJopJ=Vc(gdLHinSVD?=i zsfrU0B)_l#d}J=i@_%s!7GNR;1Ko+eiMNV%4gt%PXuTwv%x(?|^jN`qFo_jqGDgJMAcK8G4&XFm8_bdzf%Lu=?#}kE{ z`~FO$fA-$+7$ddG4qk?zN&Wq9 z^Yc;RI;L(9-DVYux?~UC-~%t!!qC5b@xT00RQ+BZZd(}}G_nr2s_>u=cUKelH&Oe` z#~R)PTm5zyZX8=U?7P<<@Dk;*{eMjU8NgVF%+e|D0V=95BL~0>dq2zn6s7mnw}acu zngJn+@5Ftm6$USSC9MB=rp3)Z$D>VXw9~h2CS;*O!lfcr&f+wSi!y)n$cMi(0N-wX z#E1F0n#|8#8m0yuXSK4T71T)@>A@P z>4yBmU18W{oL*H}`YnSursm(9ps3w<=}WFv-!{wqC?4{(sjuy$j7Pyk*m)I77s2C^ z=TT^pRwHfjm}9NgP1=L_u@RmAE`=(A%G*u9QTt>|(lv`v#ak)KCE*mO*{QjiF%Ild zQ*14&Q80i`3Q2gHS{%GdPFk&fnL61%MpV1jU*=`fMk^mcpYtd6vE$li*xLjrIsW$U z2?%#S51#{4a?VVhGQWjkrZ1vw&&pSz1LdeCV@g%s>+vLvz6S*Br{H}|_YbDm&@27C zIY1t74~Cnm+xzd?0FLD_Wg(!SBMAleiOx-)wdkAvtGG85H)1vxG$iY^guR#H*S=nU6PVq*3aRtKzbKUgrey9 zmt&d49{``X;2BA3?kQhg}9JE-30B6!!fO{_i zG^#o?3kOyt3I$Ux5(-^?FL?L!b|pYYoQpTGCM#Y&4&wT?M z8)z0Xj?tAm1A6A4NLlkM0dJm&hoRxhu&tCdcIhpg9-jSZ=ee?kaW>78?Gxi+i1JPM zGV8bA_(fFU=nlD>7gbo5i9;kezOHd7`BdCrL~?)Jp0B43+w1(BMH0&ZuJ%1p>ch%& zE&`_<9FtP9jK7!-2X}xLGXRaK!>MHUe^U;h^H6t+zXA?%xAuZyQ%yJs%OKU^@apiH z!(!y%n|h8iYa6bmEoLGEAXL>hO&qsEBw_n1*W9*zZl+SL3dOE*czv3bwSK6A=o{V; zbwXTv)s}UUmFlBoUquwb7AIieALp&ZnL8l;vRb2I-v8iXhNC7b_zq$+^E`ij)FL#FHsun`c-In~0|2$nU@!iJYNv-vfA+Y^thR z9X^JE4V{{n-HFrA)v2&9*a5|cGr+M99_QEgB&8!CjV=eoxRy%)IX8eFG*CrO;0sj; zdv7U>IO>+1!0&>X;Ap(y*DSE1E{^1}5^bJHmRbUz-Vbz1zrwRoza>kVeifkpP7JN| zqx8)H_s7GpbsM*grh5xas(iX}+$4Pf!r6Lm46MkmUZ@2=NW&#%7H0w?VW|>|8_SfJ z=$miK=R6T}CGan}Z1Io!Ym7tktnOCjOVvlAH|6z|3f=VZ?E}eAr6wjGLX?Jb8d4)@ z{ZC)Ejfgo8m29PtnWqkgqx=_1zrSQmr}z7xA_`bLGtAtM+Ma?7tVt#s*h5!Z>E#tE z0Rd@m+a*}bFVCx0_YJRKaH=XAv7ek93W9vEDjM)_4Z9hTKjR1y*3!xhpVK8etj2p8 z1OL*ebm__uUu(k{_xqm;ncz%Uo_gt}g|xl8epQncQs37n?z7Z?wKaS6x4%o>7sBtb z;_mO}#4(NUgd)yG0x7)rz-4*pR&+1YT)GO#q@tWV(l);Xob!PHkRS0@t9M>5*qW}# zhX@H{+RO`gwk96OFn|cp9I$@I9kvVUy4C(k-!$otSPL+y)_s{&oxkcaC)I)}{ky){_~U`5RAMI%kYkP&YdSByPfRJ$2O2imwBXTgXn z*&m>9`hoMfhwQD27iSe-0gqKOuvCJ5;5J`g$xKZ&2*E26pW~ z(s`FV#!hB3x_+GLJHxbc4I2!yx;hYA8_Jk1uVuj6dHbtISN%ue0kyL~ybMhV?ui{h zPPeNf?UKJu+Y%_f)(z#9Gm*jTv^jUCXy1tQUFCE#paqcaj-EtTR?co@*i`y{N85y1 ze~F+B)|nkE|WHckbpjm{=h!qy;z};KvS8-yqyT=-~ba*Weq* zG(WeIrFZs0bS&>I8Y*wG@Buo1f`3G-Xng)k`_z154=sM*_dzuwsKcYDu#J?b?0%@H z*pV9(7#OMFo5 ziN%L);oI?v4y_Z=gXId*C=Y4i{Efht#9o=~MAWw2g|d=iOyl*Q$-@vupWIri`j6CHXeKD$Dc< z`aZJD0`6HI4vR6PAIHE9-c0^`hb4T2wS}9+6tu;C;DN60=;g;c1mOoy*a9c`5L(t3 z*>N#Mbxi2Wo2u%0ijo&9Z~SG|OZWUE2Ja#lqk!sJSj}poH9dAdx=tQpL|WL1i+sn8 zH7gEB)i(paR+D)n&i@#j4Si){-w<)26E^P|@=>sQ44TmjhKO|lC)9-X;ZTu9tgPQN%j)|Kyi zm0y}*9~Vh=#j}O>uCQ-+Ko{)6h*FjJ8hAI4rG%6P&5p1!{gl*pG!-o+DTHUh7M{We z^4_=O(TzOwFN*g%%g-rPS`RL0vrsW<^__UFTRX^AHo>2PL81WiQujC8k5a$c^Ou+f}wUmSW-(#}0!-Q35E` zmDk;{M_MJ5NYPe@>?uW z=vUQ<2*{QE2m|;L(F0Fn50K8_m%BslD%~_GGn%e|_PCNz%GQ0!p7|wGPED9$3qpwm zQAAcXkTTm?N8liYY?d!MCw6AxgIDC?+eD8LcE7Ni7q7zuNce_(mwcjKXy8b@dTTzy zOq08mNnHzzkwBHb;PlU?zd~QK708QanzT|0Ep8A=rtPPK{y9N*`v&>?@6FfHHVN&D z94K_l4NKRL>Iqo3M2H@;Pdk)@N$K!Hv5!1$iOYimp(# z^tn+%sX_uv{9xue-|zPd{qpFvRoMrh^D=}nwhHdwTg~T$mZPt{cX9cxn5kVi zr^R`_3C=W?SNB^Re^n}FErN^H6kcV@!FL$goIfUH!*u{w%s&)X6OIzUN5EN5-a8}S z*(ro{i9`+Wwh`?dc9A$>`eCB|aPKOu?ny<)_o+F)5GT|nbl$N38lo#e)emKDv%2=( zyg+^jIaER+32`)fZonRH?)D93x8>#5qF;$`?2tmZk?GNW*gfy&gXLh+@7S(E&KBXV z8#y*??xRX{8*A2wXDttx*vjA<&C80)OdCA|64DWs>?a;PyJZz@`)OuA;lU zpN3U>H)9>sTx2tU=5SxdXSs2tOLRp`H^G`ZDVc~w+*wvWTn7IR!yR80KFoHe)Z64h z-Z9@T3Afqr5sc#dj^+EU?48lc`3D~+pB2bzfAkp z+>o{KH3dSB zTHJ1anu<5aqsH6gbH;*+7!9ces_oWrB%L>Go@mcFahP+X5uy{2s#f(O*d}-7Go^Gg zyWJJiL%Sp76O_tXQMaa}kUrnx36-ewG0hBwnb7)=kiDecYe?PE^n zks98{RdF8*JK$xeF1E&p(>dc1tI4^wO z7Pbdu=5m3%pTloQj|rLV%JfVU&oCi)ct)aX6wG%ULMm|b%lK7bR;tA$EN>iN4_ya5 zlf{uZ%66yIEqlK-0+B~fyXCi&Oq6n?S$pLcIHC^$&w&dJUZv%sO~AC9B|fpSmsh@K z4^?5GLwK5lcS&01C|zms_iS!j}g3AlyLzNxZxRO6x1A?Vr4@_^PRYMF?qJC zx+blk4-{S{nzxPt33t0qVH-v!PldySIcu3?5r^48(+(JIA~_CO@FqxMblei zh8f!&dp{?i{3l;*%)s_mRoz&@K1hBTt>2mMqpm>%j;35`iyCG1GcsQg52+eqpn_g) zv4=>x3uWRL!SP_G9JK-gMeN2iBi|`aW{JNN|Biy+7sij(JsS=qHO;0q$eZemZ>wII z3W9dCrgvpN{t#YNVk#9SH-Nwpmd5n+OUG@f4!)w20y6awyUJ%2q2NApMohA}n%u&a zf30#Jt@VV>cugV&u7cE1>~e0QaNBs+QknF4+U==@Ljrl}k^gU1+gld6iUq zA-14MV7}$dM?B@Bq8)<|mkEvRf~MQJk1%fHQjxj>)8eKL6?d!$+WF&E^0RFyW18h| zilI{38J6Mmt9C3ym%wqf6+fXK&2=<6z%MyPI-vWsSXB>e`bg!N2_|$*n7WC*%tM7e zRLZKSb!-)W568xCy=s{8fSbek1$u106$QFLa#7E{?2$Y}nqCEGv7#KBsQhv(ImeWD z`*!rrjZZ|vg2W}ezsNW9^hfZ+wEmpwkUiYEAbsu$H!0M< z9a)-_$!A_Xiynv_3B0?sqFm_#_V9+jzIrQ|?6mwBT8HD`wMFOly_CQ(`%rTTWRaWl zF>X<@-A3jeAyGAlh$}1NH+u}fzf$xRPa^n$22{Y9Z|DF{+)s1G2tI9%JsQ`C;OMIWvI?_61$|k#CStHpJWuloN=8?83Af5tKFlQtyrTHe*yG0hBZESO|oG5AA zQHI&L!kIJ2qOcn|QI`5G&JtIr-0ytpSOKD0Yv^oasX40(t~TPMd$N|V71n@>&@A?d_Q zA4?wu_^){izrr!(Ux2`?fM1Ve&Sruj|}9x{2q( z0Xa(5hT-yCC#((3uKztq?Jl6Rgcvbf%|who)60*aisJK}+E-D(R7!aTqSx{tt?Wyn z+d@It&LjD-4HYc}?_+Gfa$5QIMBD@~d#jcg_qv#*$?GsrQGU<>yV1vAdHVz}*y2n@ zk0|uYo14S)BOu#vcmKxHg{#+xuQscj$LF`m1zgq~y3eUfGPCi6)L!c~4|U5V4|GB< ztRFL_Vuqi{)PFA+Dzo~3+WYc&sMo&#Qd$VrNs7?E5UFD+glLy7X2@8REMshA$vRCP zbSk5=B)eprF*C>vX0oJ0WH*Kx5;B-ECi^~~%en9KoO9o&=XC%1d%b>lf64YW^Zk6U z>vO$7?`47|N=lJY_sLngyYyR%`MO5y!`)(Uu^7D?(}yRKtZTihmP8f0l4QJGvsg5- zhO4%IjGaiFJg*l^b(NB)yQ)(noxe!ol`vx!+t6D2U z_ww7%^-1ELDTVrF+}>hGJ2`ohCKT7zeHTtex*}fU(jdZv95Ia8ViBK7sPd6AUyJh^ zm*pU8Y%QfPtz#}?2$T4jW!c z9YU9RW@;_f)8Q^bW9XX}avuu6c&AFilS9p!!}in;wZsZ&z5jVTDUoHKPi(z9xg;Iw zbjV+nMs3SzUiBLqRv&99Iy-T(t|u#a+RFz8FID2d(Qc>itX7CRaK%ol@lvv_dXuG; zM2TvHM5$^+0&czmd3*keZT-b{%#OxO3fZa+xGlcs8%n%rw(RbtVudKW_U_4yvV2lm zzUu90%|DpE{|i>{HNLr8f_?dryjOKlNG1!zt62Hmq>bC6(}(CbK8hXLq~d|UM*|1P zj1M=3!u0G{!zzQfSy&7M<)riRlItyrtmH`1!4n|1C<=A?f>HWQXm29;C49b@cz9S< z(J)1>s&!`SY+3c)wd;a+{$zdIZ^;l0m45Frnk!X{7HQfgHf4dN(q7sa<`i)36N43yy1lZrlx1Jqov*f@EH_C%$Xu<%i?|cW=QPbiZ;Q~0!IZZr#qguVOX0J(%>ks>XOecd^s~WIl&#nK!({ ziB&5xG_*(}(9~cNk}IaMPm;XN9i&YlSJWBU4w3rm9=SbGsvzl{D6fEVlXJGUR^(m= zdIUIdGv?4T#fa%o^k7npCsh0`_OrXk=boGuFj7V6t2N;-`mDt6>cj*dL^uI2&*aZq z9?(b7_a@m}Z-Jt;VKX*)@EDtGB2C9~3OK2k7j=x@+U(*a8N+QupBHMoGwiat9f3MC z(bP40O(tD;Ij7A{8~LF|s6e@P*G?WG6QB+b=)EY(}6w(fOa%v`68xS)&gx zwW$tH#t<(<<$J(Exhw^<$t{D6_8k>=dQ^{eSz2yr$|22WmCkeqG}=p1PtK#?zhGU(>U=E@Yr)5s_nQVYsqq!}{*L-1`Dfpt?z=QvZurhFG zFViddBroyhb>>R*AQoe>oE>SjH1SC5vRSgEd9p_KM)F(pNkX{1t#?RO2tM~i4Vah1?>eaxZ8iG6l(qL-6e6j$EV6ano7NWUl& z&GkKr##w>Y_b1kD^6eLGGrC;wedj_61VndG&Y*z2+Qr%*Lhcc`y zC_?x$-3y5!t11SaMjRN!A3L3o_x;ewOX)q8A30_e`$D61w!g>7v?Iui{&IdU>l^ie z0JGkDSi3unpWr{2?1x#7dQR{BDZ2HLuv>np?*I9cfrlEYckkS}j=@IxV=KY!Gt%?QA_rVz5^FQgQ->|c95 zoi0K3{rQpQwT;Odi|+AkMlKI0&I(T_S1pvoOb=CygbWc})=j5U0@xL+VRFR^qV@95 zki~u_<(^lp9LQ;$d$#3~PhL2OT_E(#*6a*Ms7=|dHhV-yZ|690)lu8&G%vVcd#bFA za^JNZB)ett2ApPBJHGh;?f9g0b(i0@i|<<4>+F$p)$DCjcvTVbF#FUrnY)M`Gpm>a zd0ExwL2T$G2K$~LZKUPWVi;g3=60Xx=0p3{QoC5SDj2_@6S*OuD@dknzi3|U>}+HC zqF8MzG=ki~RluFO&aTA9?ZCurL zuS6WV_Jja!(q8&@pXe%zI^W+x`>@6phMzP+y)yfVHyJ@ATH|U172tc!;k`@73ze#F zvrWsAqpy--V)z|o{GD5>-I3(OhTA)3e0(EuRo9q8`nN{or7e3SY@Bvg*mMU!8g6om z$D^*#TrEP$e6cJfb}ZdP=f80`;`>MTe7n^rPQC)}*-(d5o8KtDtEtY(2#<_S>)Kih ziiB!w$n15mm8pk2HBCT1saKa2kl-%MwseMisu1&IYUb$3O4g{9L_3^6pycn>Ju_{Q z^A#G#k$0ErcNbPxcyTaaWGF-K1H>TZRvulxtt548XXC)BP|{UQBJZ@@WbqL?!>RYx zs0Xv1`DE?KnM~j4^<;Zld{5j>DLf*v=C9E5+V!8*)jGAhJA$~m+SIe;j$ngy-2+&wo zXTu0MU2i?xFc%6#*Bto?q3|@Ld?5`Xf2|DYxVRrAY?ZAyBLR-2S}q0(#C3Nb0uHRu zWy(W52kI{HUy`@D7Uy9t8`5#mPT}KQuh@ll@xfW&6OFeeuaY&MZsOxk*M;pbhT2Q%Y6_+c zorg*Bs1DrO`U0$^3FKEv&^1T9H$iO_TMs#$0HZ;gLpNWKV<}iC6bF+^f97vroT|&p zZwNtIGMh|2vPZ?9JN6dCL~*Z0%xgE0#{$>FK0}Vfx2%MeaZArF6^MFHZm1YxiF8a_ zDn2G3pDiiru!$d?;pn#gJmYLRByB!IrQPUqaDg{M8}7e(26w?XE2maMC)>wR7yK5T zMr}M$od@|UVe~Xlf8NusL84ZEBiSM|cfa}-I~@Hby(n4O?Gj~Y?>s;tUC%gi(zknQayTAjO3t z6~O^;>Kes4tsV)YOsr2qYBR5$JCJO+C(vl>^-QS*MH7V=|Gqro0&W0W#vR)i zB_Nam)>|IpFpEdMVp|i~3=lC?2gby#=WXIr3wF&LpWQpVysk-FsIMw14+*owiD}KV z^+3y`M!zf@b0jsmka)Pq^PLC+fSB%9ugWT+!q|KBV01qd{ZQ7ka&07s#eccx23N#v zI_Y3i)P{*8NuKwJSq(k6m7jo>%Gx1PWfbJ>=#R1a{Hc*P12i`2B^vG=ohSbU9F~iq zLu)!>bysOL9(`$p?T>5^NPcz2^Z_o}Voip&vf68GstVZhT~qfxFs;3_(yR{CTr|=* znor;P#`5+{;W_22(w*2yE-5M-u~v;Y4E(>fHnIx+y(qZtOs-A1i*8^J`-&)?qUwQEx*#wXPvUu$;Q4}G(rj4qa|4N?o!iK2VD&2a&397?YigSwQ@ z03+^hAHheum%>sg?8E-uV9ApHTcs*`T?;h-E#5AlXtUI?W^h?S>ZGGH=0Q3S_p=FXyxZ zmqlxBE4B7|+vw*wS^+;l=iX`moTdsnuj!4Kxh1sLeOtml3b{^S^1$KAr5rh)tpbap$M4(AIHWKh#^l3`~0&J z6GO*fo?5RxP;w!5i|qE%Jq1|h?iz?u${6-2GJ>()gDWR19?lB)1Iwr^N|pH~#!Y`H z5*1yLD4IL@*270zNNMBa92JPPe4go6Y`_hb#yAtUGh> zY1i&f>;kg*k!!F;C(ZY?xm5pfXImJjiF&n@Wc4MO{v@uCr9eoY@Tw>>RlHz_3*q^h z;LDT`IZl>(POg=BaDtu@Fn4rCy0N~IiW>ygObTwF;V~&F)8zp@<7B=2L}EdZ?UhB> z38(Oe!VeTz;jZ+d#S*#R7nn?v>&WxoXb(IwSh}@0>@$@YUT3)Z;q873Uz^H{F0?f|TDX52&Dzw8|zo4IQoZWCkfPx>(JuzZ|&3Eqs`In}&LC8!{a$ z_S3YO(c9;7CKj2fV576sF}8kyG&F(i3FltAf6*WbFSbW8TBugJm<`AveZ}djg;*9% zTpF8Zb~^85c9T7ho}0cRnbNcMoQrN}Zjvvuv42VauT)Pb{zJRH-d(i|GQ|`H;>$ z9gEok0azJ|a`~LzPzAp-Oz3mTBdMi(XS5kYZlqzRyG=`v^<|ZeSofcVKJNI83HsT3 zLI}oPd05lx*MTZT4;ylnJMGMOGwLCG_+RcRghkc#LI;Kxtg0Glf%I(+>+%nx@iXb< z#zjnBxSQ*~ysORP&p&kg0Otv?uEi_muL3jWm4a2JdXT&}E9d2KoHvw|k2O%~w_I-vn2PP8 zmIEcy9B!IIf=x|`Vy$N54Xh-z28?&8E8;5rW!o~R>Wig!3pq=>IsLl9B4M=}8mT<1 zv|hk$N-lM}kD%PVFXlPTx8h;03>kj=sFuGB+F_P$O7aSHk!jD}(7Qc|=6H%wMOzBM zv4GiskjAzLePwxH@j>n3A=4>yXw5?v0P!U^xH_-h(5z7w6)zQ^H z=V2vm25ky0r_}1-*pkj;6PJdx5tF^kjoNuuIvm$wD%|m8U(girA^7~;Va94My)h{v z5;H1r3_x4-7u8p;Cy0N|=o`@EGvMVw`TIj-McZfu?T#&LmrqUyzO9&=-SZomh8 zixY8|X>qeNXUEktiZ41}NGu!TA9)Lb%b9Iiu}$~<=0_Lx&&*6*iMrSd9*VMhQu^8c z=c+{%qL3v*VSQTQHDo(>;go;yoMWAzCK1etwWKz&1EezqY$F{d8s^e&(9!@N-=#oW zd0j0&F;;wI$%{>LjS+8s$K7GGq+3d4~e*u#2^XS3k3wiuQtar z%n`Knu`y7KJd?Ug)jiJz$SVd-jqfPNL*H^r^9wu7qxp!$K&ew{$6j48VRAg5TT#4n zh4aa_xRKHIP&G>uGu8Ukl-y)a7CP?B|0P|O2_wW6wE5wRQIxB$5CRKkFGbGGpUk7au1SH3 z5bl-??cc58#@WDJE*>9BBWDP&aSu`qN(uSGu*EeLUv#&F4XJv)T~<+D7%_YO#HQZ8 z@Md*5WzvLJT?#;D%vnmKhaQcdpslv$#S+bWy~$+@9O5gqHk`ZDJE#PHBBTVD=JY+* zdkl21TK;ivN1}(pzT9$$RU&JG_BNyk@QCqSWuoyY8Adou=mir7w7c2=>ndy0A#Q7& z2`#VOBMOtQ7eO(M*Lx{8&ztB4sN3zR3%n$+>fL^oYd4;kbseWt?8m@JA@YNX!p@`P z>%g*pe|1^!Ootf{XZsaXp6NoKv5C?W2U#+=ER4(poS(5v?2KjQgs7InEbrnoM?RbT zVzF9-xV@${Lgq{};0)nHTx0`fRr>CnJm6-E&Lw9LU=|0q5hh&VwnAv_xi9Nb5DY^K zr>pwW*lr1UvAh6vH$8m1zwvbkc*7y-c!p8VA!NZ}Jom`RfY6m$U;OPOD0i*PkS~&I z?a%yPw-q8${CY?!p_l4tEM9E0FX~ulLO+8U`n9U5aV%zJguyv6V!7|R_tBy@E0V0C ze{7ojyZTurSRLsNVsPbx<)|f%Y-+uTg7{-wi^#_$5Cv|Rw3K=Ti#mvqUHthcKq@@@MuZM;BrhzKg$|QWs7&iO`k|xDnIu|G3Y^oXUBp^ zDR+a;x;J)(F+Cq|AV41>>cGQCQ^|9H;W(T$PBYIBR4#8jm?|MPY5za z*xPCZL0jzGtZF~$r|7Tm7hslt&73^-JuGm)fb_P`@E#&?f+nvTs=hoT?qQI0x+Tjn znbGNc>bQhI&iw_zcJn-3^7@NG_GZ0*#3yU$1v~cVTwTg_QE}cePaEK86+E7-{yKDN z987YgJhgLU+6KU*=APZpFUk{S{HK>;{@z*fQ@d77sd|-pG{Dq>0HC{^@!*M~P;_n`;3qEpYLGkI1yUtRQ~y#X1(}E33o$p70)4WpVuT z?+h3ZZUYv1cFz~|5cpj3o)aQP4*$U^C@sx<>PkI%r6deK*Y5~d89~je#<=ScR_%8Q}BlDU(4`M`oFZj z=yUfsbb%?yjb=(-`?vrIyUmRRl=K0yR}T(=d;j1+QlxGd0{Iw+RDqe)FZ!=7GBC!0 z!f!p?@w)f^LGNY~a^Q?>S%;0Dn>&X@Lhz25@@{>Fl? z+9k@j)-7MX>pIwcXV>2rm!0aSYk*2$jgf{o0eyi%g7U{KgG5!SnX1DB>jS5T?L!u( z3P3_;Gf=evAa)i5bHm*E#~(WM!1Py%?`>FrP#?fY^Q$fhJ8=JXLHPX!{?`TJ_mkT{ zAFhA8AOOcYcM%a0a6}iYzjbOe{pJttICS>f?2WzJ1&kw)CmS+>&+ncJzioN}4--do0sPSrwRJg?z0A6YWigrm!(kDIjxzG8i3$N`k}E38Xu#3 z!~0OB?=ZEx@q3NmpO;Rsg#n_IYOQNTcS{CV0G8Q(m8$Z)BJ0qQ%_!hd;}f%8f# zir;nnQ+!_(IcRpQoa%8&HV`66u1fgld;K}`Difm>()qW(3Sd2=?b|8`_bmd;XIcX| zaEp6=fk<>-Rgh$KbaX7ZGJVvox25e_|F;V;c#_R9I(h(=$3oO>Bd-d?v|^XX!Dw+9d7&(D@YiGw zf5HRR+7|x|*LBQq`^_lFhZhzWzHKf3yB6oSb>^-_PHt`iP{H;}prHG&&^D6SLSo5R zKSBa<-=Mi?zQ>gOm#31YxYl<7av7Hkp(UHgl43PkfSmE{>6t%UsQ&o||MA0n4M7`h z7*_NBum16UYtW~F(?ZfDz2;d`!=1Z1sALQy|5%~>Phxat_O?iBTVf7ri%t{*g? z17>%A=%=*x=zVbU-A}p%e^h8d^q^xWm0k5+miNEBMxEW@;`MhwDgO9Yo(B5z)8aDU znI8Sy&(^IvUu?ML_v6*;{pPKm)w$n(X!o?&cmufjslBg-f3$|^{I@j!pDa!H!5Q|N xH3CXk&Yv^;qjmgmnf}|O^Vk3Wf4zdvp)v@fl?7XZme+uPS1uTyC+OPU`yT`Fvg!Z; literal 0 HcmV?d00001 diff --git a/apps/docs/setup/ci.mdx b/apps/docs/setup/ci.mdx new file mode 100644 index 00000000..bf34cb9b --- /dev/null +++ b/apps/docs/setup/ci.mdx @@ -0,0 +1,69 @@ +--- +title: "CI Configuration" +description: "How to configure your CI pipeline for Open SWE" +--- + +## Skip CI until last commit + +Open SWE will push a commit after every change to the repository. This will cause your GitHub CI workflows to run for every commit, which is unnecessary. + +To prevent this, Open SWE supports adding an environment variable which will append `[skip ci]` to the commit message. This can be used to make GitHub skip CI for that commit. + +Below are instructions showing how to use this to skip creating Vercel CI preview deployments on every commit: + + + + Set the environment variable `SKIP_CI_UNTIL_LAST_COMMIT` to `true` in Open SWE's environment variables: + + `apps/open-swe/.env` + ```bash + SKIP_CI_UNTIL_LAST_COMMIT="true" + ``` + + + + + Add a custom 'Ignored Build Step' in Vercel to skip CI when commit messages contain the string `[skip ci]`. + + 1. Navigate to your Vercel project dashboard + 2. Go to **Settings** → **Git** tab + 3. Scroll to **Ignored Build Step** section + 4. Select **Custom** and add the following script: + + ![Vercel Custom Build Step Screenshot](/images/vercel_ignored_build_script_screenshot.png) + + ```bash + git log -1 --pretty=oneline --abbrev-commit | grep -w "\[skip ci\]" && exit 0 || exit 1 + ``` + + + **Do not test this command locally** as it will close your terminal. Use the testing method below instead. + + + + + + To verify your setup works without closing your terminal, use this safe testing command: + + ```bash + # Safe local testing - won't close your terminal + if git log -1 --pretty=oneline --abbrev-commit | grep -w "\[skip ci\]"; then + echo "Found [skip ci] - Vercel would skip this build" + else + echo "No [skip ci] found - Vercel would proceed with build" + fi + ``` + + Test with both types of commits: + - Commits with `[skip ci]` should show "Vercel would skip this build" + - Commits without `[skip ci]` should show "Vercel would proceed with build" + + + + +### How it works + +1. **During task execution**: Open SWE includes `[skip ci]` in commit messages +2. **Vercel behavior**: Skips creating preview deployments for these commits (script exits with code 1) +3. **Task completion**: Open SWE pushes a final commit without `[skip ci]` to trigger deployment (script exits with code 0) +4. **Result**: Only one preview deployment per Open SWE task diff --git a/apps/open-swe/.env.example b/apps/open-swe/.env.example index c3d38e46..4496a3ca 100644 --- a/apps/open-swe/.env.example +++ b/apps/open-swe/.env.example @@ -50,3 +50,6 @@ OPEN_SWE_APP_URL="http://localhost:3000" # Should be the same value as the one used in the web app, so that secrets # encrypted in the web app can be decrypted in the agent. SECRETS_ENCRYPTION_KEY="" +# Whether or not to append the string "[skip ci]" to the commit message. +# See the documentation for how to set this up: docs.langchain.com/labs/swe/setup/ci#skip-ci-until-last-commit +SKIP_CI_UNTIL_LAST_COMMIT="true" \ No newline at end of file diff --git a/apps/open-swe/src/graphs/programmer/nodes/open-pr.ts b/apps/open-swe/src/graphs/programmer/nodes/open-pr.ts index 32386978..5cd80fb6 100644 --- a/apps/open-swe/src/graphs/programmer/nodes/open-pr.ts +++ b/apps/open-swe/src/graphs/programmer/nodes/open-pr.ts @@ -10,6 +10,7 @@ import { import { checkoutBranchAndCommit, getChangedFilesStatus, + pushEmptyCommit, } from "../../../utils/github/git.js"; import { createPullRequest, @@ -167,6 +168,12 @@ export async function openPullRequest( ); } + if (process.env.SKIP_CI_UNTIL_LAST_COMMIT === "true") { + await pushEmptyCommit(state.targetRepository, sandbox, { + githubInstallationToken, + }); + } + const { title, body } = toolCall.args as z.infer; const prForTask = getPullRequestNumberFromActiveTask( diff --git a/apps/open-swe/src/utils/github/git.ts b/apps/open-swe/src/utils/github/git.ts index 685851ad..1816be38 100644 --- a/apps/open-swe/src/utils/github/git.ts +++ b/apps/open-swe/src/utils/github/git.ts @@ -169,6 +169,16 @@ export async function stashAndClearChanges( } } +function constructCommitMessage(): string { + const baseCommitMessage = "Apply patch"; + const skipCiString = "[skip ci]"; + const vercelSkipCi = process.env.SKIP_CI_UNTIL_LAST_COMMIT === "true"; + if (vercelSkipCi) { + return `${baseCommitMessage} ${skipCiString}`; + } + return baseCommitMessage; +} + export async function checkoutBranchAndCommit( config: GraphConfig, targetRepository: TargetRepository, @@ -203,7 +213,12 @@ export async function checkoutBranchAndCommit( } const userName = `${botAppName}[bot]`; const userEmail = `${botAppName}@users.noreply.github.com`; - await sandbox.git.commit(absoluteRepoDir, "Apply patch", userName, userEmail); + await sandbox.git.commit( + absoluteRepoDir, + constructCommitMessage(), + userName, + userEmail, + ); // Push the changes using the git API so it handles authentication for us. const pushRes = await withRetry( @@ -301,6 +316,71 @@ export async function checkoutBranchAndCommit( return { branchName, updatedTaskPlan }; } +export async function pushEmptyCommit( + targetRepository: TargetRepository, + sandbox: Sandbox, + options: { + githubInstallationToken: string; + }, +) { + const botAppName = process.env.GITHUB_APP_NAME; + if (!botAppName) { + logger.error("GITHUB_APP_NAME environment variable is not set."); + throw new Error("GITHUB_APP_NAME environment variable is not set."); + } + const userName = `${botAppName}[bot]`; + const userEmail = `${botAppName}@users.noreply.github.com`; + + try { + const absoluteRepoDir = getRepoAbsolutePath(targetRepository); + const setGitConfigRes = await sandbox.process.executeCommand( + `git config user.name "${userName}" && git config user.email "${userEmail}"`, + absoluteRepoDir, + undefined, + TIMEOUT_SEC, + ); + if (setGitConfigRes.exitCode !== 0) { + logger.error(`Failed to set git config`, { + exitCode: setGitConfigRes.exitCode, + result: setGitConfigRes.result, + }); + return; + } + + const emptyCommitRes = await sandbox.process.executeCommand( + "git commit --allow-empty -m 'Empty commit to trigger CI'", + absoluteRepoDir, + undefined, + TIMEOUT_SEC, + ); + if (emptyCommitRes.exitCode !== 0) { + logger.error(`Failed to push empty commit`, { + exitCode: emptyCommitRes.exitCode, + result: emptyCommitRes.result, + }); + return; + } + + await sandbox.git.push( + absoluteRepoDir, + "git", + options.githubInstallationToken, + ); + + logger.info("Successfully pushed empty commit"); + } catch (e) { + const errorFields = getSandboxErrorFields(e); + logger.error(`Failed to push empty commit`, { + ...(errorFields && { errorFields }), + ...(e instanceof Error && { + name: e.name, + message: e.message, + stack: e.stack, + }), + }); + } +} + export async function pullLatestChanges( absoluteRepoDir: string, sandbox: Sandbox,