From ba59b43268d6e8d61987c6791a1c37e0c6e6146a Mon Sep 17 00:00:00 2001 From: yumoqing Date: Fri, 8 May 2026 11:41:54 +0800 Subject: [PATCH] fix: DBPools() not in __init__, sqlorContext uses module name not default --- .../__pycache__/core.cpython-311.pyc | Bin 41638 -> 43112 bytes harnessed_reasoning/core.py | 20 ++++++++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/harnessed_reasoning/__pycache__/core.cpython-311.pyc b/harnessed_reasoning/__pycache__/core.cpython-311.pyc index 8ee1b1161aec8e9735eb03e80719a199f4e919d4..953f1d67ad50723d598659a4a1237cfed8a40076 100644 GIT binary patch delta 10560 zcma(%33OCdmjC@t%3gU!sSt*7lV9(4}dr+en!_p?>B9e;k^ zf8Tre?f2ey?|nIURs1L_CO(^xU>4x9tpA&@YVXm+3^L)Bk^xdxuT*$*l}c}(GS8d4 zMXyvHl-K1e^8pu?1qXHOoXR4l##^8)^cHNFO}#n;lA)V@P;hrCLYJLFWnLC((HG)d1Io|9Fw3*Ozzm~rQVp120DT<;tiUB-pT%w zSxvUHDOru#W>dvYd&bes$1)FB_ort*5&3cC^se6YvcB{(b|$+>>@H%z$|~3x4ecEe zgle);ynat~Qy{uvhxS5djd+&`pC#f3{8Wn@#m@vGZ&P|pOq8kycW}iA|TiOxbgkTq&UQnm+KvZRsg6u_G5VZnujapT@6LTqm zm;rVu*rdwr^xf&e1S^Us7nxgxutk*@3L7iJR@JIlMkrPDE<&fMX68JUrq_yC zbZVNO2&(0@nY}XAk)~SDf#^Js;=>;z9H~?-OjmNrupBZPU?FdmOie;2?3Bg1CSSssal3aSyEv-`(3F+{}v>JLH0@Mrkr$B+E@mT zmQ?hnSN5e>GBVM@Y!l_7pLj8)=YH3Fq}o+GTezH9Bi9y7S5uN9akbc7JH>EyiiG%d zg7^%M&$iYXrE3NPkk;|>?PzuTX;aVHi64t(9ebqgXyjhVr;i|b94XAfkeh~r9lp@k zp>=o)3!8Z1E?=P49r6YI!I(_jTfISg0`qmjkatH+@AhC3J%w5N9d7Dw3&tc*n*st1 zwDf7n52AK)j(XUs@;T)Fo>=)0Nj~bh2jTa*Ac9B=1TqEG^gAZsz`5ZL(Jp8nW9tc^6a6wS?st#D#pvq4PCv;=^ z$pm9j_1jP{^G8Vr-KtY%#n>gO(lg{?azIc_d!^OF6Vd~^umM`O577#WS+S^wT?BM! zYKfsyC=x=6!-c{)fldz_LnGvZV%7BRJjJ3|Ln$Mqsxf|CFj7%TP!hXDAMuEwolU5n z8wbD4KRuo8ot>0S1Zc>n*fl~pjZ)aT=@VFN`t0QN8h2}}&)?!~ZEb7vY;}j`u<{vc z2@-t~dZjNT*u&P&_;n;EZ)pv`d%tzOeXGyn-rxesv$O~Z0iQ!6_=v(y2sAO!CR@Dcp&7rxXB={f9+nGF$} zDMD^qZBhFV&d&t^@5Oc6x7WI&&$=RNT`?e95){&(Kk-0Cf8 z(qc$-O3ukndIV`J0eqQ^1W%m)(^D5dxWDK93qN}Q!h;|FL}2%qMY@y;MIz z|0_&iWbf7AW6?&4=~vnOMLEm(0RMpLKLUuEw*>?KrZ#uTvz4MAidlBKTYX9s_5>z@ zk3I{TL0q;t&Y``K(^-rvx98%bQzALtvw6wSN#9bQ!ecVYn^Imy$EIDHI5_Hf?G5duX8N>1D4F z=6)bmyrpN`mQQ9Umn5)fmQOd!suUCz5|&gpHLZkgotq%T>8hD&EIcWBxj~UtAR08* zvtR(WZw^2ewBx!|HLHer zRg7moO%A2Qx(+^yUA3aVl!Vjpo$5%|mIA6;mE?1vho9HO1RQ#>0*t2<(6p6P)WLD2 zI+WD-_J>MXd495N9ZK2KT7)<{wsA#PiYb2KVAM%CfGp_R1cnA*yWvqL54E*CeQcjf zM%S38Nc{d~sv;~@mTCo<{axz`=h6v1v#m@uScCqd4necqIRGH7iM@tR}r` zI;VqW0=Hmps+_=A38rCC6O zQgAvMsj|n~Sa|jTSs{?Ioy*4;sv5f_#<5G0n#kE@95%=vUR6|p+HCNFgKtYXDdZYT zLwDmxv9&5Y6DK*j#%uBf+WnzQ=3VQY zg3ZMY&8-2?cCSJ))y_|cA3pohnIj*(`m>LZ{qu(}KKZAHzn%5$a0 zbRl1xm!e9G>Dt?UN=!yLgYH0bu9ra#2=owwegsDmyucQ%Yu$7MQLYlvpmEtWmBr=MScx2t~a?>w|ZOMJA&Xia{Kfw%U@q$;zofD=-86=YpgE- zOAns@8SLftdA3_gX#)Z=751kU9In5Wp3NFJtR!=L&TsfFiF}zQB-p`iOI{{MXVh!R zU~={5(aGQM2u4G@-wmn13xRDQ>?5`4?bU-*_!%rGS&V)lejv4zEWs3hMz;VZ2@O~P z5b^=`Cy~OQj!pe!KAzZ@W-Qh(nJfIuT=TMt(ha$6S+R6uM$R(3_>PSL{*K+eEKhzX zTSPpUAf6{7UMw%0*mGvHMI<5iVsm;XS_{KKCDJ+Y zp~qQ+=WfvYr#v$ju8FTTY+4{kbc%DG^b%IoX}gW~zqZG?yO6sWGY+zJ#i=)uq4SjO z^(2w6dKAS<$l0Eq-VRdIjdURdXvDM}e-fY9syMH=Oy|$PRnZeHsinA>^VLxxi%D(n z-2i-kkTKp9_cJ(8oMr1%LeUQ4ehKAbdYakV$|4sb^K0VL1ob^gz?9K<;Rb@1%h{A$2yQG` zjey%RH<8>#_hSa15*L;Kf@Dlq+S_&n>E~F)my}CbLKFDj;AVRQyS#Ld%T5mbNP6lV^049VqtFvbJ#w=m8A4M=x-PGTG>zaJ4OA|NV|?% zgGJ;GHYJ!AIRhD;ae*zU_-{b)*Ke`3FAh@EMUk5Xj5yT z0}$Rx83BTSg0gS1*J%M1b`~x2Qg$`yBvm~h1{V?X6)SJgjGPw*;ZUOH)R~0CiCc(5 z4jO-yC<;GJRL6K-5Rf9Os7i`B+Wp%Gjcbo;P^1@haR<1d$p3&==Ctf=`#7R!zir=W zFmzeK>oQ?fLxvc|pat{i+$0v*D_cffIWx1hW<)Rq7T;5xzh?<04UGy;F^fvzNC#8t z+dN4Kj=x`{{)8#nEl=UT|!|vCdQFV3m}>hf95ie}?`-hFKGvBjr%KDn%GnU({P&&Q>w zA7K9<0*J}Jkhd*J8D?M*7?T3c+q8i~AHv|4@QltozjK^!9MfT_ z17o_Gl6%Z^c1CYXXHS@XiQ>cz&*#B#B{YGxQxh(V{oc>arev;4c3;Eowa9}_n5h5!8E3l_K)`Kqn zdq)mg&a!tG71)v>r#q*%Eath~TJaK9@#n zVA0*KCY1ExIsmsd%WyznV46FiGbCgW2;Tydg}l;Z>(1+Xb0_!ZPCnc)0AZwp{_Mj3 zq6z&)<8PKse5SLz?0S2&WL0m;s=ks{Y~r3pXi6q$#@#Rs2WSTbF<~M3KJa2ne@_0X z+T*p+!uc1+_2$&~<R;bfCiEF&zF2d`C zx^N0v?5dW97pEB4 zOf82iq)aH%p0E)DU2y9-k^?C+I>o+@6tQOyWw81@9)x20{pmb?V82r~Dv6l_yR|Kq zJ$N{S{eJ%>{>{Ai0lNt-#!LXyI$U4KrC@%&^7R8uHR0zt5t_ zkt6^hi2jX}{qepPdWM|#OE&AkikvLdtbfd7JMVX}{rAI-jP^r*d;7qh;#ya2g>WgW ztkxx6HYNjpIlFo;B(A1m;;PGBJKb<~x`g;01o2rMuQ1mYO4s!Ex?Jg6Izc>F2Kezb z93hNIp!?XW2MWkbtmA=UCWJ65XTtw|Adg>QIuB(SRh=R$`YsV!t{hkn?=42e1hYRS&5?qtAlOWv^M4__O5S4ijVvWuD6VF9gn$qQc}7kHvitHh*fdKH9qDd zR!Qv=`Nfogz6KYmc%LJ!f&LH9fO9*SD-@~DBo9Q!M*Rl?U4cX+(!=i_K%++BJ_N<* zYb;)e;I9aVfKn2!ZLv zi|goeCutn!w=zG^ykE z6Q3@ZzXT{4We2g7l|OAoHfN&PNqT<~xP8+a(W988g1=c!f4S4E2! zTawM4#$-rb%Qn}IH(VPpAzn%l zcX7PTTfd4v4u6Oi&`f#ln`IZ>X;D0yZq&FdGLQscbGlF{%xDhlX zScAZWU@d}|5n${oCWit$ns&6ja|54Gs=$=yeQiL3jR>%D_T15|JYHu#ZmBpD=LDPw zpeXzE(Ms}ekL$;!#3-(80RNIUvNfzI@>6VN2?ErjR6>9fsI_qjF+866O+S4BvDXpw zBj`nd(UzF58E%KD9rqsNY4n#^f(|ydAkbs705JmsJmBdH1p9e#X)U4~nC`Ix@**pK ztiB=vd<=OIB<9QJ0Rh1I6#luOyU=*C=)#&e5_xhgSj?V#tZH_?oYp-Zi_$LgT4~oE z*Oh4F>gbyF(Z=;R{C#(Ar(pMc6HA-~K!13`m%9Yr6==dppI;>rHWQ+Qc_RkikAvK-br zx@t}I?lm{&ja1{r2z0Xs<`Z`ESWIpPj`?pEe$rLE6ItsE1gLc4%s1rQ1MvHNlfd?k z8&4#5cUP8K6<;93w}lQ?bbR(KaioC;kQi*7^D;zG;+v1@z5W)T->XGX*x}>j%w8b= z5;fI)_RHf%CEnJkeL}CjtWed8$lqft{F@g870m%py{^G)hie?&1X-GeB_pO|OHUq(yaQ#iqy?)N+_iK; z_0rm=mCKheZKP4ir8f}#D}rhSZmh)n=31o*lekh8C#S`hagY=TqeZMR5TwPUj1_GG z1^%mM9;HwUuMk`U;~kKCR-D=unESooj@kZ%4^3K5Nwh-_9$k*XlIug=ZmlXvR~vl&a#P}?0eNZF<;ir=&x5* zukQC=y{h8ln0Vp3XnQUp!7RYHvHFX;$nN8|RFZc&zmMEksT2pZlsUodtvaP-zr1dg zGB=pDRaEZZuUqF)<}0Pa9HlIn1G(jpJ6fsOFRb$_VvXQi5M3osw2@WOgN}bEW@V~k z4(gT6U?My2bjw-5oWw3WQ=*-T3q`94ElcqC**HO9OBZK(RH2q&ckok$8iA$*;S;F| zg1D$`VfvKP6emRX3bzu|j{BbQ9o8K&9EN|aCS^Pk*dr+qSyW*MR*E0HT%FI}*(;Bd z9+p-KC#8eBHeH?2CaZ+PpDHW5V&GDB%(L7*O;%+ps&a@ZlA>1(b>v0k1*qtSfy#t^ zf-+Q(Ue(idRnIQDzU4GT5_oeQ6tikzk5nc*)&hH*VUHnX)It_;lT4GE{4L<^3+9yEMnhEOP^w-i=iy#6-dF* zuDD*=67n|$;}TR5ms_?6X)vy%jV<9g35Jcp%WkKYl9|k#UgI*EihJD|Pqh5TUHEHv z;l;`xchOCE5j&oqOTz3Y={XZ`jET)#+nv?i@8RvV0M+a25V(5aO@S*^wm6$GtFh9;hHEx$~BoFt>?7aTsBF%mYi5tC|xU* z%O*vCm-)J6*@B~5i?EKp=-FgxMzR)R4NJ+HW!Z(~W`q{DHmB0E8_70+cnY)oQVQvI zOt1p@OhZ#dDW-;z%>WY}3GR;2R`y>xS)_>>N3S9s(b~~vqNtNtPp6l?nftsA#6|{o z{&nivU4H{Op0t!^_@n}XU{Vy8O{ib@hPc})Dgv`7!)H& z!MMD_G^1*4BHKU|6mmdJ8)!giGqR?GPlO|LAX=P%#jp$-sDg>q6->6Hq_j%8ARJ!Qh8x&e z-zJyKS<-cLB1EodnJe-Q*YhQ$ z#}cFqIX%f*F;}`?LI7zcv=P@e)%!!#AN{286On9S?@l2F@z_P!yJzIX(ZfI z7uoJh(59dRGyObsS6yShKT_8i3dd#ITptY6r!id@js%-v`U03mJ26S$sBhn+is7u|R~Af-0Vv>1OXucCxM2Hc^ZHquR;7 z*kQNJkwMu6dj*WCY{9o3m__ugJ3GCk%@9E&+5f2q#c%;CegXcpj~HOZAGK@?QO4*dX|k^&}Dr^>2cv2^HE={z|~zyw+cO{sB2l?jSXHSQu{ z`cm?ZHG)@&*am76gj|6ZwV5Jly8A!H4nhrPQm@z)dnAeN$xF{ZBRnN44#n9a){%e+ z_S4#C+GDEe580j~cTVC3*dSgQ+$4wq#gmj|tqg2GF7}h6v1S^CR_J;FcDra+Wontf zzP>KB%~N0BP#f6pkIeQoG%CURIjx3qo=C8vX-;dxI8TFrcWtC`XD}3=~01BpJ<- zpZ*9Fw91j%i3RjD7;dhQ&?bn4vBn|o0o`For%lNJJ7%4SIrtdt^oU4>d0Td_$adaVANR)5Uu?-Q*F z3h5nHcq-hX_6d4VVsF-%-tn8LB3w%7E6DMBbkp457#3oeeG>fzCZTPhzeE@rja$%O)P|ZH zwgjox=d-}|yhMMC%zO}M*`E1h_1zf1%Dz8;wMFY8#$RTR1(^$Z2mb@(?*qimJHm~j z+6I3lu$`j8id%O1>+6(SYzZ8KI(iWjxmPeCPnsouS70v%GNQ*8oE6Er=%mFzB58lb zO3wjQRl-Of#u$n+?POmr$*2yB&jm*JZX+q9mMnaS*SuFWyRhcmz)?YPgy=9W3EO$6%= zIlyi?*n%UOtf@GSeX-a+vIOkryhP=<6IZmsHqY%NQH+YILvAxeuTr4v{T~=sG_MvF z9ZKu)%^y+|o|5mjWUA0kek8KtB_|(ogo(^7MSGY8pAsZ8p_L6C>yf^nXf{ zYQxPy5;`5&*Rk4MsaDmdBwv7C=7qtXX859T&t~Zgmkzcc-kD^@rMO2nre(Mk=QiQ4 z4BJ3f>Q}Oa&O|N+2ah^*Fn>uHNrm26RNF{5UrE*~nWUuM-LR70VfxCliL^!pCZRJ0 ztJSGGC4(JxrKb`hG#XaHqhzUOCA%1^R7NSDP8T2c_8krj?yr!Q16gcd^_bDBCKrwo zaxq$UaJleeC2ZZyY&L17oZ}eiBHzomwmBmchfS_8jEcau!c5U(ML3`^u`yfU^)dhMOA&zhY;U(6)w!ZysB+4?Mr6Ij+-SRHIr>xzk$bIR8!yEl_V=q}= z4c&Zsp1ss0Ts4_XUDDMQ0(dQHVZxFe;jJ8Vl~a1Fa6*+;`c-=712e>5O(#gtFjwj1 zw}}Y!+Y&)qCn0T>tDMo4%@&a~vz#sNG<0s7aasDkl~+%H{DY^!uW4b+wkQd>x^M+D z8v=TUUEQ*j$Sf%^wS3*kQiI+Q%2KO%pNC$&oKR=11yS44~ckp|8E|=|XMf`hrE`6Hq+nSfh#Sf({E`bXT zP!|H7;til=Xfkqvy|XoqBtTPHOux-WOe|&Fzv{W9JsthGZF_YSHzMyUgiQ#m0je~I z2n?G*(L>@#E4l%xb8LV8g!ZdI{+0MNMZ66W7+EI-+G zTx1OmnU?1dvI|Jl|iQU5HmZeV+I#xASw_Sqg-Q4~*_i))1o5SK!YEp!p4@jD$- zHtaI2|Io?BlN)nx?72pwb>>}(>)_JSuifI@`@ji|W@xT8mz`_No#GckKzboQaPoAT zrrmaVdNW4%ddK#9$K1*on zz7BSIdtGTKgC~Nq%-LP#J+65-UGrj&d;I#OyQ};Z8)+wh{@QJQo&J1%o;!E$0CW5Q zJI*^F*i(VgG;IiOS(9SPMVANw{CccYZ(66u?)8HDfvn=TW;hJDBGaIg%CCIpzK#;a^I>}r%Te_B&ST;?%HcbXPAVCcSpAiVI*y*t3 z1B%V8<3_XY6bIal+9gSq*!z1wsa*z~RkQ@y;K<0O8?6MLg9-ZK61tKLE}aV*+C5|c zR>Z}WmuY~4VKe|}g0w@bolSgna()X6-%=>pFMK+q$$784LjS%r*0j%z_k}-vG>I(o z%qteoPnqYFuDF~)Uh$dd6&bD+Nk~s8NYCJOvANVNT{RKF5wl>2zVKO?$?W@sRxnS{ z5$$8g%iIIE#Ow!0%xOABQsD*|UKk{JVUXa3f#8zB3&ZXGX<+33^GJpSF9$63z~qT~ z#W-{pXfwcVoI#O>QXoc#$Jp)zUShy2!iH=oTe8f?_8$P-hzaDNC&QrFhPWfx=l)OS zEbE`-Wo#pJ*xrLrIgN@uBGt$y97^*U_n=jSd+I&LVOA}<-;Kug*4DX%H62QCe;DI@ zf5Ev~L1*Cl&P14wFdKodZZT3DkekbfamW;EWdzJ8BiT8psCnszelOi;9Om{eT7ea! z3FH^rnw9(zqb~ytY=m6IaQoAITa>f7VQXD|BuK;j`kJ1>Ol}8p6J&wI%k_s)=q|BW z4lj45nP%Ke+&+CQ`^4iiN?X-8W{PV)6-B}o=Y$H6bY*TL&{q>n?}Nzo1dLqwm@CE_ zu8)-!094$Wtwz-jl&PICw=hS#r76P`FntHu!z8AioA zB%li1fE*B6(@{6O?_jEARc!3Fqgn2RoqXq~qGE?(G39C5Qr2fdP0 zD>*B%<16Rlgc%>NL>xLSaP{eb3F4a5j`@plz$ z5uo2R$@6W|15Z?ltL||Y>3@>M!EHwHBUB=6L0F3rKu{3ya5nS^q22LcW}cHScK=Cl z0cQy!%O!+mxJV*>5a~w&faa&CFni?W9P;z%>n96{fxt3X(S_`fr@Zawk#h+GE)c~n zo1)@qRq&&~jM4oFFCn~&5Jz|y0S^gr-4?iqr75_WR)j9hNkGbmpvUMKq|gDRc7z28 zkMM(1HImEOneXI~PWIF9%rDLa-$m{RTefWO696tI@t{lBRnzV5TJx%nNAHFO?Ecep z?b)*HQW0jky0H{HdfJr?5uP#(7O<|pf&C6 z5OkOE;BFW#%q=5*QjR>MPXM?S;6d;B$v7YFI3YZd9nVbGr0_E?oghnwtXmoN$<9^7%tG??7JM zK5x~$g-hm@E~%(pQC+>HhW;8y@-{*bLMg&(EX3R724E#dae62YO1sj)&QU*m?|hbd zJCN`b!lhCDcN@j_h>3u9-WxyV>3<%cyDLd>XT*f0KAnz?>JtXRCXtPxOo$gj%rWea UXyHB3Dw5f#-f+JC^0}S=2MOslg#Z8m diff --git a/harnessed_reasoning/core.py b/harnessed_reasoning/core.py index 2fadc63..708f78f 100644 --- a/harnessed_reasoning/core.py +++ b/harnessed_reasoning/core.py @@ -111,7 +111,7 @@ class HermesReasoningEngine: } def __init__(self): - self.db = DBPools() + pass # -------------------------------------------------------- # Config helpers @@ -126,7 +126,8 @@ class HermesReasoningEngine: dbname = 'default' try: - async with self.db.sqlorContext(dbname) as sor: + db = DBPools() + async with db.sqlorContext(dbname) as sor: where = {} if user_id: where['user_id'] = user_id @@ -196,7 +197,8 @@ class HermesReasoningEngine: skills = [] try: - async with self.db.sqlorContext('default') as sor: + db = DBPools() + async with db.sqlorContext('harnessed_reasoning') as sor: for kw in list(keywords)[:3]: rows = await sor.R('hermes_skills', { 'user_id': user_id, @@ -628,7 +630,8 @@ class HermesReasoningEngine: 'created_at': datetime.now(), 'updated_at': datetime.now(), } - async with self.db.sqlorContext('default') as sor: + db = DBPools() + async with db.sqlorContext('harnessed_reasoning') as sor: res = await sor.C('harnessed_reasoning_sessions', data) info(f"Session stored: {session_id}, result={res}") except Exception as e: @@ -639,7 +642,8 @@ class HermesReasoningEngine: async def _update_session_status(self, session_id: str, status: str): """Update session status.""" try: - async with self.db.sqlorContext('default') as sor: + db = DBPools() + async with db.sqlorContext('harnessed_reasoning') as sor: await sor.U('harnessed_reasoning_sessions', { 'id': session_id, 'status': status, @@ -661,7 +665,8 @@ class HermesReasoningEngine: pass try: - async with self.db.sqlorContext('default') as sor: + db = DBPools() + async with db.sqlorContext('harnessed_reasoning') as sor: filters = {'id': session_id} if user_id: filters['user_id'] = user_id @@ -697,7 +702,8 @@ class HermesReasoningEngine: pass try: - async with self.db.sqlorContext('default') as sor: + db = DBPools() + async with db.sqlorContext('harnessed_reasoning') as sor: rows = await sor.R('harnessed_reasoning_sessions', {'user_id': user_id, 'sort': 'created_at desc'}) rows = rows or [] rows = rows[offset:offset + limit]