From 10c86eb5e13de5710e5325f66423e3b6a7f896c2 Mon Sep 17 00:00:00 2001 From: Hyrin-mansoor Date: Mon, 6 Jul 2026 07:37:00 +0300 Subject: [PATCH 1/2] fix: added whitelist to check master data update api --- .../fvs_stores/erpnext/emb_dir/field_docs.pkl | Bin 4033374 -> 4033374 bytes .../fvs_stores/erpnext/report_fvs/index.faiss | Bin 722178 -> 722178 bytes .../fvs_stores/erpnext/report_fvs/index.pkl | Bin 24730 -> 24730 bytes .../fvs_stores/erpnext/table_fvs/index.faiss | Bin 2293386 -> 2293386 bytes .../v2/fvs_stores/erpnext/table_fvs/index.pkl | Bin 83786 -> 83786 bytes changai/changai/api/v2/schema_utils.py | 2 +- 6 files changed, 1 insertion(+), 1 deletion(-) diff --git a/changai/changai/api/v2/fvs_stores/erpnext/emb_dir/field_docs.pkl b/changai/changai/api/v2/fvs_stores/erpnext/emb_dir/field_docs.pkl index 2650d8b483dbc2d424d438982dc493f288efe8c7..5e48b21f90bb2e393e4ca8b35b5d7a2f93169d37 100644 GIT binary patch delta 152829 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

eN61QLvi@Yr~Pq*-^`Y61v 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 aOb=>_GFFW*PnhJJ7g(1UoLri-G5UY4{9`r% diff --git a/changai/changai/api/v2/fvs_stores/erpnext/report_fvs/index.faiss b/changai/changai/api/v2/fvs_stores/erpnext/report_fvs/index.faiss index 49219976412f75e2afc3b64ebd8290e40231a052..6e98485b0b018d0f5b482438a0084a21b922d015 100644 GIT binary patch delta 10946 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 delta 10345 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 J*P0Cs{tprSRYw2- diff --git a/changai/changai/api/v2/fvs_stores/erpnext/report_fvs/index.pkl b/changai/changai/api/v2/fvs_stores/erpnext/report_fvs/index.pkl index c01dabe9fc9a265573baee4e85c7c515c8fd36db..2f240b93d33e307500f87b56a52a48f0f2121856 100644 GIT binary patch delta 2848 zcmZ8jSx{3~7@iRJgs>12Kke%FIvJw))ZrEi@2upyX5ef#;PRmG_nLgMK*4E=o zp+5A@Q7bZiX&s@%lS*4DkF}NQTW2UU+NaK7b$ZYLcgAz_^v^y2fByCRzjK#2Rm+>I zdmfcqA5J56s*51+tL8vf#EgKv8q=>)^q+?f9T&%!RAeV05S_XfblvI+PB*3($TPJI zbcWbTPPdjQkXx~JpnD$s9?0pqL6DE)22>LScT6s6i*L}frzAZ~Aot_#jN2IU zOF$%sgidfXn{XE7(}c79MU_(^Gl_Ok-b@UE)FcI1BQx;|0{JWnjUFeBfl+z#D9EeH zVUP#OL6CmUX^@+mS>6ea6wq4vLt6UxS}gswb{KAsq|CEMGTDg}$-gNw+Xq=DQi(tY zb#~sA_Thn!@57p1Btohie2=D{=P%H?yi9Fk8+XkqlIgU1uwP5V>I~@%@cm`_BuG`p zIGautj^#>*2ejK6*c<84$MF5#A-rWgj6+>KJkJIsU${l`Brk#FWj26)I5W&88+2;Bdc<_z zQLcGbGM6ck^`kcSh81!ZveDgiHiF`D_B^=vfSJ&TKb;=U6t608#2~d68)W-!@PL;GuC4bZ@9mHKJ z0O=%~k>uYu;|~8}MhJT32$zUiCUZ$jjWWA{YRL>#?5o1sKCMD0`&AQMNHZj|V8M0Y zwBSU_tbDpk1ZBbQSR1*!GW5q_LpmO?O>t={#7G~AeVZ4mG1>9yx@pI%3=Y0eGVXz+ z8Lapf^`VWuj)R;JnKW86_VerdI_|<^%%h2 zFbm(S4Us789p!~?ZA70-jr^inVKPEfHQXI);sIoZ$?P>Dx#c#ugVjtkZpD-4ajpS2 z1VylgWqzg7F;OI2Ej+vwZdGX0c@lfIaFWjoc~k2vfp`vIn5)P}yaOWn*~j;e(x^b( ztyt#=tvKW7t(a?98~c)~B|9w8v$ht9P}DxfMXs{fSGA} z+91+k4@Zh-O1~ocs|V*@+}qDi&}@>4Dper2dy&ik?8S8s_DzAaM}7E%Vd}pQ-w*q- u$+iJ}qwWrH@G&FDy8H;6B|rYsz3_9RP^>7|F9wht9tHr$-`WSq12Kke%FIvJw))ZrEi@2upyX5ef#;PRmG_nLgMK*4E=o zp+5A@Q7bZiX&s@%lS*4DkF}NQTW2UU+NaK7b$ZYLcgAz_^v^y2fByCRzjK#2Rm+>I zdmfcKEvzSXs*51+tL8vf#EgKv8q=>)^q+?f9T&%!RAeV05S_XfblvI+PB*3($TPJI zbcWbTPPdjQkXx~JpnD$s9?0pqL6DE)22>LScT6s6i*L}frzAZ~Aot_#jN2IU zOF$%sgidfXn{XE7(}c79MU_(^Gl_Ok-b@UE)FcI1BQx;|0{JWnjUFeBfl+z#D9EeH zVUP#OL6CmUX^@+mS>6ea6wq4vLt6UxS}gswb{KAsq|CEMGTDg}$-gNw+Xq=DQi(tY zb#~sA_Thn!@57p1Btohie2=D{=P%H?yi9Fk8+XkqlIgU1uwP5V>I~@%@cm`_BuG`p zIGautj^#>*2ejK6*c<84$MF5#A-rWgj6+>KJkJIsU${l`Brk#FWj26)I5W&88+2;Bdc<_z zQLcGbGM6ck^`kcSh81!ZveDgiHiF`D_B^=vfSJ&TKb;=U6t608#2~d68)W-!@PL;GuC4bZ@9mHKJ z0O=%~k>uYu;|~8}MhJT32$zUiCUZ$jjWWA{YRL>#?5o1sKCMD0`&AQMNHZj|V8M0Y zwBSU_tbDpk1ZBbQSR1*!GW5q_LpmO?O>t={#7G~AeVZ4mG1>9yx@pI%3=Y0eGVXz+ z8Lapf^`VWuj)R;JnKW86_VerdI_|<^%%h2 zFbm(S4Us789p!~?ZA70-jr^inVKPEfHQXI);sIoZ$?P>Dx#c#ugVjtkZpD-4ajpS2 z1VylgWqzg7F;OI2Ej+vwZdGX0c@lfIaFWjoc~k2vfp`vIn5)P}yaOWn*~j;e(x^b( ztyt#=tvKW7t(a?98~c)~B|9w8v$ht9P}DxfMXs{fSGA} z+91+k4@Zh-O1~ocs|V*@+}qDi&}@>4Dper2dy&ik?8S8s_DzAaM}7E%Vd}pQ-w*q- u$+iJ}qwWrH@G&FDy8H;6B|rYsz3_9RP^>7|F9wht9tHr$-`WSq1up_TSd8~^wF9&=v5*Z;iwobPgdukCw%ukUr;_wzhs)<1Uzv%oW{yqq>^ zX=&$$X=xRq#X(xyweWAiSA<3*28CZ%IuR*>^h|PRe$$4Fk)8nS!2{rIa1ZsGgKMz* z8rm-!b}(2L_DM_bs9&@FNVHYa?!>YJ*bQo+vxOVccZOa9JpnoungPy$KQ1l0_+aq# z+Ejz|AiOUvxwW9MQeE`rz~1C<1zQ`QMk^J-ENWz;y$_6suL*{uPe;CY?V*NW1buFU zEkS)Ts0;2uJ_v0O9N+<{gS;I5Lg=4hDYy*z63Y8Soxok_oWP)D&Bn`;sm56a7gBmW z+CgX?-Xq{td55omAM9mOPxdr}!kq$HDQ(Of}h# zd?VCqS-{1r1pX6HWoKarRCPgj;DD!t3*cXZ)~DqR=(@P|R$UPD!40SasMS7#uMXb_ zdJEVD=Ad5(J>F{D*QQQR50dW}=TtWs`cc*g)P!%Emi()@cJkMgpDQj#)bmMbd5T|y zuK^0dR^Z6SL90MtXW-3uc5~rAL!1wG0Y~;L^dzcRgGR{HppI@CbPX6pS$|*{yo|o1 zKG-mM5~@sK^~u1|*xc3VTx=KmZg3c^MK)e$fs>F6Kr8qpbOdw)b-smP1z!SI0Aqd} zcpm&lSvpt(e-pNI4c6sp(czqMQqdv`7NQ&ra^Y>rjz$0*?16j>Wls^_tHWJwb;oR= z4_={cF5tg-6JC#95yG3u#>ID_2I%jcw-mfek>hED*}d@Y+YI;vQ0J|wdw6g0=WtrP zJIbt`vCCOzeFkM&$j#EC$(ILP=HypQrrKt-H|k9g-$3htB9I3b0OLIe)C13g0&p|7 zj`ihuU6QF&v(qah#<^r|s$EuC?OVhRbk-1hDKtB|uiYofRENx#P0%y~L%~Q;8yICp zv{@NT`*{+6DJTTid^MRmJ-gyPl)Q+A-F)83{c$VOZ_wV@nFt;Qwq@!uj&gxxA9bwV z*3k0E-#G3~b(>;#Eut~wkesShx0!y)eVx8Yrq0Nyr9;X}Y|suaqvpKip))?I>(Hpz{}X-5<{&#RG+&jGPCBq%}+)>hejv3SG0)%_y-8Yh3`Rxs95n z^_h(qCik6rFqt|lGt*%@5ViU^_Q~4R+37)h^SBMzk0UD^l{3r(-=Wv(I&YscIDtA7 zVyEQ1jk+T$t2=cka~g2!@#xy5;7kJUV5jToZUTm%+1h;z!&Nq_0yf!qt@kmEl)MLTOPfB za!Iq`orMu*6i-CH7rMjzw<(!AuUYwKh}p-|VUMgJ<2rixw7de-*v0itS*Gdv(DTt& zh3beafH{R^`E#$r@Mnj$uBbT{EwK0s>db0^PmmMP4baVC6L>vNEW3ty+EoR=Qtr{@ zBAg3mVlxYv{hU%u_)*|Vc(YVbV5TbFlxbh(b^M?1Q&ry=xPIdyb#(C`X#g%xCppi9l`O?u9O`D=B3+o!n|(V zV7~{=DYogafXy3a?ZGMFRABRMY35|?+CWD`JD}?T-`7RikWBS&9JYq-zblyy<}CI?D}eH#Vi2uv5k5R8zjICs(Idi1yZaoL)l75o zRx17ot_l`f*_d7Gnsb4ccJ2DU4>~xBoyo*S1zQb zKA=VjW>9WR3xK=*0pwrE{yD+ABKO}ebY(q{qs)<_?|e`(!77tjgB z7RkiOX0_bgLxGmISJw7Z$wRljRP6P`c05aUu1TU5R*RvgY7>d=y4#lo(d0()(bvZL zdxw}zu}$0ooYYz9x`27`SD|w#7lV56=Ohp1ZSA&-lBQr5nzfXSfX;#1$t3u`l$mba zHD$xC1AhYLUKkwI_j+|hoa=8z906{mn9|sjlaj+m*C}V$ba~s`1I=)Dqjx8R0l-^s z3FrhIco%eLVu#`+TA+7T(!n8khvKH~4DAY@a0n~Pn~7l08~bPbcVL~+V_5wI9R>`i zhO};=+Phvg!OQ{YAsh9Xw)9pqF+O9Y`Rh;An(Gh!bTuYM==)$LvWx8kHHO|#*>b2c z?_ig~yCRRn9|5}HXRsf;#ptiKt2xQUWeXc#hU!*|tadv^Mx*n)1O7hX1$lI`%J!Fv z8e=g8=_sYn%}(ubGjug@-(LrP*2Z_W_XKj>CKsd9)b$nYo5=2_XP~Akqr+6C8?J>m zB)GbSZ*_NIMwIoOr#s5|>&j`M8uE6iJ8T|&GwfDCmqMpOjkb=^4i0BsGBq)yek(+G z*_D_KhHe9&f%}mkhn{a*+*#m+E&-}E?+QO1liNTqKi-N$$C!QS!&UcTTfU&*^hOMM~-;4};zfDu9;275N-$miZ9+0oW5AX%N0$ z-_?#32#39mFOL!+jS7Q z6}_vw9qRq(IPe|vEn#%;zF9clw@B&3E zDY_o$i9eA00uR{f$Zm=MBHxuf)PG0IztA|fh0toifnE!>1*f|h`T%f%)uB#zM}Zeb z16Bu_@3k}qUXAQCiy0{1oRxinpk)*!cidi7-lX(TFo!RKz?61Y)mQ2k$CCH5?ofB?t<8#bpEIc-U zgnokTu!cgdxg6e>T((N+;=v@3+_iN`gj7{6rEcE+;2=6z#Kfh)D}Y;+!6L8%c<|l` zJaoOY_{3@wa-*3+;&&cP8@eFwew#Ac*wm%yY}O_(1AU?@R|hZ6$xJ(t^M*46IIb3s1(mylgF=X?Qh-X>;8zBpMWxxR2D z+`qB5weH{*@m@WYu{a=HzD-zJ>HVHBEGGAj9rM;KsZGoDILnnBEh7oZJ%CX{fR{%I~4= zsNm5&6Y8aT6Z~*+GS24x!-LsHb+31JIh_N^ldhiQa3;T4ZCbKX4;ggnDV~2hIi!u<@~IB4vj0Xa@B}Cs)eblqZ`v zt;WFC-6*C6cYRIh&Cn%KisIXq=h+srNx`P9Ua(D2I~c?7Twn(Jis?VWu!cInZi zoM2^M3iA@+h;F3lQ|K=ge+~T^8sF_Em%wRp1nOPOoHYYDe)GpssQKh7bQ6G)JQJ8F zy-;@p&i7BKk-Q%0u6uw-_i$u=qw9?3(xZcROaGVrZ(d0gPYM0MvkwN ztCQVVPV4n6>Im4pP20KI;u~P9bbq&ichNh;{{Zj&Zh}t-D}dYYXY}#>o=&Eo%I-N0 z6Z7#j@GiwR@hNl}v;=tVdk<8H-vQkVo`g3%XTwj0?+-QEdr&@-Os&c*=fatSKIz*E zu7EOc5m!)WKeFl9)O#OD!n;Jh!QH@&aU%3e&FHJb~&pjm;` z59*-z1D#?ET6YHV<#A6(4;^!WXQ<(QHS~RG5}XAl0aLjL!hb-0%Abb18lzZ^&69Vd zX@ca2-35IQjDYt-Vy+(m+^lD!dkKC4v?|nIMxeL%%i$ft9H__LckmnFzlHK&T8jU> z6&wQJfG^P<+rUw?>0!wesdYj67ZfB@>zh@(2iKh9+txY0jdE{ zhTG9OpOfJAo^vu~=x;r`0^R}J>mu+oFwc*s{1nPRfL{*E!QTMbFUiKMOWJ#=IRjld z6a{XXtIu^Ta3WG4LzFLU3hT^7nV%YI_>$`!RbC%tCEs83tCTAW#+HLKV{6kRcMP7X~oQS6a1s_Wm(OZo!UxG_w?#Qk(

hz@KV*aS4sMVAc*!h4v- zPd9B%&WF(s1rE+YFghKCgK=Zpxxr`pT@HQ>qN5LmTau}d8@F=Z@<1QT%iaZC4e#LW zF$3Ns^myo0P_Oj;OjA@9Xx=2nfANjQr8bhRPEi~huTuCr{C|1*6@U1je%e2%UIISH z*MiQ*wk!1IV^xaaTLb4h1l@3O7dCNvF06s%Ceo26c*kh%O~~uPcq})>A=_~Z>Le;d z)cxqW$$#+&pqg5x7{zPQ=HMJqmi^)rcyl+aJI3>XxpzPERlp_^4FmELaiFV72U#@p3>6ZL7V~3h4+T< z#l)ni*PMTKpz}?_rvn$k=0~Epi;bXc(yr}U;7)X}~>UEwP{BfKbKc- zPKg0>b(q}!Z(l+cceV>K7Og|jw|3(Y4uS)q4do9)<5}!XZu=syz9x=BcRK^S*aT)% z{Z;7J_%rE^$<&vp)N*CbwZ^+qXr0%=i^(egSzB!9zM}SUaQ=2&7C~<19_U_!me%r( z)6Qh-Kwhq8Z-Ixw+ra;2fo357L}62bgIoh%p$Tu-C&Ir0&Z4^}$e!x)eJAfDwC?`n zDbXSYDj+-a>)_)D#$ai3%hyLcx_Dl6K0RjV)b+BjV=BU*3$6jSQv+QNv=ME&!S75S z`DXLvrf{Yr53S1Z??83K0IbZH3oQqp5w2%r${oMCX*p<$Z0pP5SAa&~WMoILOKt~+ z@cpUt1oTmG?9M8QUTYDSGW7?~ZXi>V z8>bc3h9Flq(QI#(g{lZ~9@OK;MKI|*x37_Nz+Cw9;2Zce;_GDIVMG&*=5T0@Hx6ICnzxDC+~inDvOSa9#{XQP2;Vd6$5zYyhL{oXxOg>X*FQI>ALl8{e+e zp^t)k@maby^=np;{P%CZ=j&)n@x9#`Fc%v>dRy~8)i4a&0J-v<3^WDok%$2i?p z3rnvNr^8#@DDosM%hk5z1ELOcoBRsQ7#)$OwS*^(j1h2w=(WK zic}2D7Cv10V(S<5#=~Fe7J(b!tD!RkTnqm(G!r>ah#MbB1qGE{@gv~UXkVr9gD4dQ z+1>P>r=Jf44}wL=Rlq=a&!H0d*D2ozt%ht$8wc)#zZ2@=d##U0i(0venp6UJz;^;h zs7KWxOf#TUp*6tQz`N4l+t;U#3o?Sq`4rAash7&a{~)@rknaOE;q}}C=#9{IU1N)I@0QZ@@#Bf-N-ZgW}_W<`J zw}yu3ZU)C8|BUP#|JAKNhx1196j%dqORliDf4ykX90z@cTCG5Qjols&2%@bSLH(}Z zQ(R~h6y-syWBLqq7^n#rfNz15FMt}_y6QWqr)}-{Bi4tb)CoaBxf4;G5N&)TxNA;+ zk0@0o$S(c?yA#1s>bv;%V<7lMkp^#y@;oj9+2)}Q0}rFt=hp)d%2`m&t-hWzGlk9Q z6SH321!dkDmZR?nMkAYxI-t87KK|R3u`!8S%}_J!0_Y!j|K2^5KSkURx}a(U^^xx=^iS{` za5q&DUIk^eC zk0^T>xHJvGKfqNlf_?|hht>r-(Xe{K2jga;awrbhp*SmtZS@2&xtvGYFkoKo4sHQG z<APYx`Cf!t1K$(S-T| z@08Qa8RH*Dy&436^?Z&(<6ECvxe)$i;F489*BiKGCb1A*ALJDDQLqI#UHxMY$cQEt z1Z#_olpE00KxLCQXS2F>CS}h<2SE3feN!VNeHdm@qLAF~bS?om2hqf__&CuhXcpbn zD0q)?uTL}%Dh4&$QM{7+ZnsLH0(dH#(9F42jK45whQ1fPg=H^jS&c`I)vAonD|mVD zR6DDDf!UH{X64Ji<9R`pXcpvDw0e0EySV<#Sk?iqpxvJa-xk<#Lugk%%WD$sD>j*o zpu8e<4fF!A3Y*1H2jj3EghMYKM3iVA6hxOE4EC;1vK|!s1C^YhSP@xn2WAInNXGZ%j4L7$n znYlvl?>m4e^ySEIrdPoI$g80Jp*|7xrEG6nbZ47jQ`}eEATRxYu@@9Y-A@hb)c3~T z8cf94Lu3aHJOI5IdL1;rl5c814wGKsZB$h$^5$Sps16LWew5{-H_)!m=v~l9q4j~!e&dnL!4HR$ehvmJqeS~4 zFJBip{psjez>fm%e=k!W4PK02ZDN3JM|uwI0vA!kN2;;#FMy4d*8-nJlR5-`VmJ9| zB**OCuq(IiEocR|7|2k6qA>gW9vB z$cCN;n!}$NrbSPk9+VV%RNM+YKF=7H zxKv+rkHG6- zl%LJuHG1zF1nHg@QR2*?Me!iGKENcOPD3t`H^yh7-j&RWhMX^V%7szYdf|d7aaNEu ztSJgT`x%91I|JWS#EgF_aMf>s=26}f{#$4@@DMt)z&@aZu0wv3@(f_6nhSmkqLpU_ z_e6=aNg2nZsE1*kGTQ1lpO4+M@4_#H`hej5qX4Vk=rvYoY=CY|5SiX3lS;Vdn(9a}4qSP_z|zYJ3U32sDFtEMJbF3}@h-kJim%(3#-P z%m$claQ{_-_dsRaUX*H+qr!Bo-A7AwJ* z{??)WiLmWZY2FIBEi~8EZDFcE71|oOHHIMDRFgQf6nS6l0<4mU+JmoHwRWJ z4x)?e1-qie`9V%AFJxXrz5!Mo56uGxkxvqN=uA6J;WOalFA=SY61{_ruI{`}=)Z#g z4(zNBv=B4`EkHi#jNa>vZTtb%>nq@oc-5w@K0!{+Ytgkq=l@QD?gCdhukFPhQCadK z|L3iv8n7vc=Z^DyFiX4&;;#noEOMWZ!E84s7r;9*tF{0(V-vdLEKczbe(63VO7su% zk`4PWo|Auilo$}Ss6Uc&7wB>7n>@b;XCRlOZZG)K?*_E-`d1#+OB4mrZOB%0!OV3o z;*0R};0MCHVCDF(=GLNOw196R3;L)lmm`m0#NP3AR`)lVUSa;9|jK7czO!> z`+>Kk#6>|)-OCVXf=R%reH3~Nc%CXVq6w>lw{zXxhrwg02S6);5_mUxm$c}zp}{_~ zU%}O=TxgfVh0la~9<>H;(T3iU;b?vZZb)0*Zz-4w++1e+A?P1~-i!QmG-*_@wTW5L4CEzkBJ@|_s#L*D z_d6LKx-uGnNl>rYeNzcIP7|PataSL7K?d>($g81!0r#EeOJ=pTW5aYX=md1xD-@Tx z%iL;^Zw9%Po0-l}i$BU~H33}`)TfU1tZ%)`;dNcG@uX_VvQ2sHX$ZESFh_PCiEzZl#DHi9@=b1YvLWDfia8$;099@tWU2}P` zeSPAJATubOgtlyQo;u#hJS10vabO2EV}J3GGBKEv-Wi)HH8IFZf1i?gPe!RLgUq(h z;B4R{t&gZW+@LXlye*l0Z-E*(<zTbRI(Mf zNzZ6lli;O}x5JtzMnK=i$|Wm?_Ca<@#vvENd-cB(YRL44@?Tm>^v%`5<|uUyPYz~> zz33d&y`UckPb2%HYI9dJ&@LofHYg2_Yk|E@1w+C0$olJiY9_%G@SDI~%K8S;;j4p< zQR+ILAcmuiT~+%Iio8De0S@kR;EDDF@ZVa-TcqN`i-LeFCI`Vw1 zdx96>ec0&_eIm~1shfiA>W<@Xs(7D!6M8LQkiLmCA$4<*)z$OYG*N-V5x};mfxoG= z9C4R_AxhmE zOh276(^^G}eA;lWd{&tN9fa&gb5r#|r;lC%PSYt~7|psZ_@Z`OOhQzy(J%0(Uo0uJr*_;bcR)!mO5r!0CS5%>j3y(- z<*$XT7rneqL!N@(s^ftt>A7GdWzQoU`mcJy;nmty-t)Fx_28WR-ii3iOtBHy6uS-NT3>J!t$5nx+R!Y4i_F_N->py|}R zRT*3Y;x?bmt+q~o#tQV?hIJ-MFSn}J8DO?%+k%%Aa4qKjt-`wObVcS5J9 zJg{ue?rl;}WPmsow0aXxUm2Zx-W_GDE?hZy{WS-)p`{wg@ke9ZbIlqKpgSs)kmjcW zFBv^~F>`OQf3i!}figFx193zA0_wv%n9C`*{$;@W)qz)1H%4!C_rn{8PR^vZ9vCw( zgMOeR7z2EIxd%Jf>i>Hy8YS)zri6`oZ-0MKI}V^IH3t{FZ2tmNf$p{oeKg9Y+`}7| zEyB-@yuW-$Jj39)i00Pl3M{T;sR8U+QM???&tbOn+}feKBKZ z9S04Ne}ta{z5&-G+hkj)`Q&_T;@?DW23(>X*<984_j>sq(2|W*F!Fyx0 znb?U94R52xm@|cYS-B6{F*k(Qx+wbQ;oy_>A25khj|6|`UkT>{>l$~%@HOD8A@_qZ z5Jrc>_?>Cv!)RurSql~ecc)R~)oC5P*Za?*>wlad>3mcrY=GWCewjI zWDdIto4#NPyc_%ya5M79P=8srzR2ySehFZPIn5J4yJ->AR|s81)Yu!)ZOwZRr^A{+qs2( zX17}DQl%CL*>x{Rr4z>->qWDb@OMD}iHuOM^#((%;4NSh+mNEbp4v38M>_2j4`A6+w0_k3{2WJ1{dj{2zf&b33BM${;8A zY)mqM5&t>ZOR;-t7>JYDTRFKD8w>5ee4a-^CI_#A4e>l9UO4khqBf(;17v>`PCGa`GV5>T<`$6hc=%C1@NB$7vFbbroQILjiIkYXB#)OqQu%D zui|WUcVmVzY%apy$G^FL(05sU4wmD+Bf-R zp^u*h7d5Pf_%w)6{R&J#cIR1iFZ}i3jp*j*13v1_=wzxgQ95G}4bzlqYYFl)Xj^pS zpkDx2<4I^)=DQ>B#3bY2V^*M5|82eKN>2Om*x+U<}Q-SuLyzw#XTx#;+b6Yn|w zy;5y6g--1WHHZtrgWwjPZC>(Yg3M0OAsz*XF}V#GjNW@6M)wdf@A)2U5wtFJ6!dZ6 zmU(~|Umt};^D9BY$@5fTumNhgr$g_99tRx^?MtO{@c)JSO^MY7ZY{el>n@_y?NtR` zAIi+?aWZK;2+kFB^*lO$!@_wuK!fKE5K{IC^hA&ba6{>Jv~!erEyxVt=Tp-*0d6^^ z&^y2%n9K#I0h|05ypMhX^f54>xvdWO6nQ1p&Ov?*^?^@YH-;=Z)Zj8cQj-0~CNo;C1jgtGRo9;;o=vQ27aEu+4qXP5hl8EBzcAiVvJ(hj~00 zOOqx5hjACOtyTh!(04^Q9Da!{?5trp4L~&lYLVuPkA1$E86~y`*+nf-`?&XkMZo3y z6gaVcz&zz6;PPW*dY6ZjA=Gi4F5h+V@gw%0ayB(A>a~r#l@H^$fWNR96-E<_!kyvs zY3tA19)w{l-v;S#qazLeP3UL9n}dgWZTPkp!LNY-#Wz&kp5G6$PUwKXJUZ9n*<^12 zm4sxJ*cs%7kA%sicWs%IpVjFT%DlRmjM_krJX4w3G68&Cw9l1LuVuEi20Q~+J54s_ zhe1KIT7oaT6r5a$+AE8m(R?}83_Qc>A>^{OatgYotmX%m^`(JuG$1vk)? z@#T97Y0>ePE^p@~xkexmpF`i`G*D=aL^5p0R%x^BW8+|A+p|pk?tUZA- z^I)71So6<- zA;>R4zXkSd|MNlo%RP49zk_DAZo<|W9soQVwt_E#`S+zLu|LSp?Sq&O)=_mMcoY6r z=wN94b^I;y4`UqkE>uaVu6C5QfW2y-4ZOJyG0=AwoK1)8G52h<)v_uz(0NLqgFa5} zovI=kLvLd>1$3aqSGIq`FG4>F>a8;cHO;#eH-gPz6G6~rQ!7`+H+#m|LU_GqvnBAa z0iFF8I02n26FO9y+dFY zaLSvbVc!M^NA89-3z`ESK2~hw_rYHc4gv$loG^k$okb1M2pjYMcfi?sEwtGzP&P|D zk3TtDQ0ZKXKSpdF_4+>ey_M&e!w-Np%UUfDZx+~sUO)W@eiJm!O}RZsmwGl>%|Uo{ z+Nn_(@24p7Ly*zkWpk`2fu^7d4fwH*w+x?I9J5yedu|H-0{H>xTc9f_LH{3g{4E~- z9tgSM#~{150k<9HKCl;DilMom^Qif%hsm_rhNh!?_gIP9ZVif;yF#qx2BrE!M{{UkKt1{XNJD(w{|kG@lo_L@j`$a9s?8ve`9<|Ctukpz()@yH0jP z8aQ5$H1#51C`I-G!>QY$>$NMYQZFQ+v!ldc$8u?6rgVdjlamZv`}Y_0k;90 zwfSu{XHK6Bza5^Tj5!kQi4sSH+pF2nbtorckO3Zx_8krW${3Hz!^5uPfLosm!t9`; zS9rUPom-d>H-Sn^p$^hX>s+1f(X;~mWJK?2>wbO?I6$lUwB+DU0#^F~I9DUzNO5)d zT6N3%RJkxcsND_a7%Clw9tKy#KL@@Dk`o8+;o+f%j~gBisvZAH2e zEX2SP_raG?Yj~B3XH?B&!<}QP)?Y-sDustnw(=NoDyW3X9ndDAGG?AuCXRDJd@+o_ zYTUjSW~TzxQ=x8_3g9c`gP`oxpH7)81Bp+OulZ!KLHJgex6%CqtiPYKBha$?BQf>_ zK7g(&cm>{z{bkVE;BIg`2h^*@li|GWmW{x;u=jI;wM{G+V6zf5Fa3lJR~GI-v>_~F zvqLZ!gDRjda3Jv?O5D@X`(9lz2=xMBRkNOX={w}c&_mIo>ft9{3lNQc*I$!rK$FE# z_sFB*4$O`5dq5-jUnr{%=E27?&IcXU!h%W-(Rplq6CD}t@AoTKzSY`j7pFx#s)zOc z?$?LukD`cDCx(q{PNjGg_#S)>z5#sUx%2_&l*z8DPU-+0m!UQd-mvQm79xAeF?41E zFG!uispy_THqV&(o=5gbTMeAUO<*j#Gq5$L4a`%(kKq5j$eeSeBudo?Gb`Js;oas~ zSZ8FpyKU9hZN*Z9)t68CJ~FmJ`6dRs)$Q{*ym`x=xi6YfiqW>*2SQI!Wqf>Gc%Fb()Z;yi3eV-x?qy`@pA zVK}>{mzbI0CCbgLZvGy8P+b_33DfzKXIN0=Iqrj02%LgZ*&4hE9;WUUps&;{yN2(A zhJ5e+28=JqU?^w>9NaBXGr0*bzR&I~bhDeaou}g-43a=|=ld!=UluFQSrl74I!_Ic*Mw>Qcc|!`|b<;!OQe;=y*BV=(>uJVBQ4X36 zcBC4>H-Ptia5z_3ALxc+WdG+X?j7g?`N{u$G$Y_^0yk9`WS<7Bz~2GPrp8qvbR4ul zbP%vbchDkq{h%%w-x9d1dAOphi=IN~!FC37PPF zl863YAMz*P&Tk$5Npv)Ej9n=3ysQdu0J%xM<1~k^K|UA0C>qu|+&%CxtW)|G3;^!; zD!>cp@5q-!-TS)D#|{sKhR|oAzDPcVz85f?dsg~{d_q`ym#h|bZyQ#ftf%?_zhdJ# zxgQk6yUkpYlPLQJ-UMv(dapOsv-3)5ACQEf0ZQPPL7#y7tmsx64!;+?4F4T;Df-1= zHGD_E0@Hzl`2EHBj;2{%>zF=+>LL4X0d0Y)55%pbRGXbY|lmA9uXLabw0`?O4o8-vTi6smZ6@~LDbGHm=L zauIYfsDa-6@&&vf&n#P(=oALyDj>R%n?OBV-iCJ}ObYtxDq#GX2d}2g+l1%J0pL)~ zuVoKHjj?k^-9a5-w<|yfcAh=avP9=FXlttO1nla1U=xOVPhbd}KHmafy#GU4ZS>d0 zpG6!nt$aD)29z^_Q+6yiX7bX*y1>R}gFlenudZFLpezH~29JjhhCT?*f%;?ll||>m z`3Uzi+JAsG>w-I}c@TL3yqAD$U5j1I5@&}&&#uU2$)`HJCy&n~SqHcp6i+c zt_Ne$dmT2SeCn$N^+&O5+vn4p_p4ga^MGq$tiA$W2il>VgS-LS2#iBF5R`ruv||c( z1}LG(@b-FeIlTMcL7fTBhnitweo?%91^<&Zhnih@f86F_vcDfIh0~vwZsBi$kqDufX zr_p&A`jN>=iZs_9(9+&kr-Y+0J{wE^Nm(oRB-gw(B4}Q788u<*s)%Xc6*d zpeu6x7u=sN^48}lt)^eBYBD#mTh(DX+xV@_{0Qna=;=@oIVacy>d6$p*WVB&hK5=7t0KS8%)H-vrh8BG?qSmN z?2bRj-coF8^A&S5==Buogww#S@J-Pbff=9)DEq4K#bI`lN1An7fro%?IJ6e%mjP49 zm!KTi*;Rb4EipX2z5Pch?gm3a0^@fvTmW4Py%1eCaG{1H4+giu_d^%IeAqPJ=N|nv z0c!p+b(tWIfhou%;k^MmHmCj?yi@KCue&@lxuC zMur)M_GN0cAJ5~C;9Ou%^Dgo=DE-ap`qZc}GpN~_!Z#^&P#U}RlMS{#QR>n#Gx_5` zAN#H;H9E}7H?-zq8$w+}2c@&!EU!`jf#^@3ii?bw&wwf0F*p|Q&YorOfgQk*IVb*o z0bku48)g)D!^kttSjmGrF8k9FucOluPUI}`zfS}+s+eegq-*=E6-1w1;rG!hMyc^( zW?A6p=~I`|>|-}RCTs(Hz&Xeoe%|(cq{+0@3ymXobK7!ts1F%uquY+`AWj4hB>pgC zOO|KQnH1Tu%yF}l|m`5S6#Zq78A<^!9Y#+NX!3~RT&AN>O4QNSD4Ca8Dh zB~XK8G`IwKQ8mz}f;ea%?l}vyCWxkF&s7gZn|}#-*qF_yp$p)>ICw;RSb7br3BLyT zzro0Un6Y-U8>~B;8^BBO`rjjFF#P=>1YQ~Pph>7#hdICr3_*7h@E&(6v?26F=oaYn z&^f?KYz6h;|Av->UI_g!xQCxpW!4Kz+SH*zr_uu$eFHGM2s#9~x@&<0a|%sCeeh89 z=QZKhPOh0A(Y!Kv4$~UI^&JSc`i1Z|WixhRJUEX>T&qpXQrCq+-`$iw23+?Cp?^Zl zW8<*ihpzxNhV<+dc>U1_T9>jXfSz@iZv_3(zir#A*KfHYJTAz!0n=U;Xg>;Vr=P#j9=u@<=p;&j)zX7`~v7TU>q=Zn^RW$+12DPV7;Ij>WHhpEqOv@Ht9N4)dzr zLP32hlx>E=MD31csVQ9E&70l>uE4~lH$sk}dj{RzU^%kOyac>~{03$G4dwV-Cz-|8 zeg~~BSlgPmpi?S>zmYEiCWvdp2ad*{Qg!v#brkJjFcE$Mu$E_%<1l*d)4iRIjW_CR zk%z%og7*`L{=Ch+JEWJorj#e6?RSJHMb~u*KjbsG_(vLU_{(XfE_5Vx1bBef zrXrVvUW`24FYSIDZJ80)%WaH25`7WWxI7#F7jP+j>Aw@z)l+6Vs@tFkQTt#v8d?GB zO|L!taLTGe8-N0ECHhHF)M-IlH1W+~W8ss?H=*c*?jw+kJQn#DZNVIHQhYcTnh5pZ zN>p~^R@IMXJFGM1{Nd}v4LL_=hdK4Nvl;yyZx?LuLiVYu01PAxY zQi>8E5`RUjzdZXo0&l79q2`z=PzUb3z2bilodyQxPmEBFA|0A2-~ zL36;r)l~ZD(=wxNbHbeJUD27u9tVv7`ht%Q~0Z(6@i=496uY~eCQ3pP5%P6KR{15AG7fu2=iK5S9@*dQhqyh zF*YUO39t`cUvM4zz0mkV`Sg%eC^E#oi|RV}zRyQ}z!F*V{#moUrA7au$dNpb%2=rnua7?lZ-YC5Bfg5T-n^^j3`DbzIqVhSgl+`( zqFEj=C_I#G^6lu)2g4nS`w-3juDh$~gq(=g6O?U3XA}3rJJ9XOu51RpN#`|C1H2j? zc_>_;qZ$9jO_V@g9((VP(&OjL;tP>JvjmL?vfeovSx@LOt^Hp=QAGZ z3%q!_CHdRpM+-JAODqb5j$S=3Kxe}Cx@m$j6&?r7S8nC9obNUm22Q}nz=(gE)7?jE zAFo~mRVi`srmd;)x~Mn2Crf9_4fF+|ERUP2=23PDwDg}XSr`8$)m_Mjr0zTq`W4W< z`qJn&SVls1jzMEA-U`1I{XZZN*)@I_7{-GDZ0x9ypeF$xrr*zpdOF?(e^2NiDJqE) zOT+BkF(^Hd2U1WLi3gGY1>%3HfS0Pv_!+>N(S&8;?p|Fn>kaf^7fc-Me&|Wa320qt z9=f04=fHdW{sX=s*SykglnzC6Yt(mD*tFJq#5)k@f-;BCf{*__owa-iJIo9F zak8%Rlca3p`CV!(1BTB-z!}8zjuOv=r$;5Df;YMu9`4Wku=CP)J=FbR(1yUfxU-*z z-XZFZb?D{;@2I2E^Fvwwk$`21HDOR|3$pzUhrR&Z*>{84{7jjTGc(S1{oIH>z(fq} ztQIg9?aU7JorATqe$ziT)|zq~^WUf8J6z9)nOTn^eov9r9jDgq*bwBVK>x1guvFMNFwu~>xe1P*p{L3xA zp&T}@tMvn55O9SCVs|gJ7c~CLS?&}hC+k@9ft%CzeIm=?_QW@6c!zUzY)yfM_^In z)vz&h{Nx%FaLW8`zzn9G?|AbmW47DSTF<$QFyv^p?N zRYUhFxQ3Uf?<^{Iv_`h(7TKKD%9?c4M)@{$af0Nx_V0w5wY`IwEp$O!;F)6h$FER` zl2n*eUN`Y|tkQp-@vQWVs1hZ%gnt*DNWr~SCvtW`75|s0-)?o)#J|l;41g4`I*S8RnMrQOK|U?v4^4gqgjbrpV=AMGXhx z$!u$es!0aZaJs0ONo6G0ZJ0cwJi dKsKlaYJ)l;2h;_*pdQEr`RfzA>UU}U{{Xs^rx*YL delta 32678 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 delta 9902 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 diff --git a/changai/changai/api/v2/schema_utils.py b/changai/changai/api/v2/schema_utils.py index ac1a385..500dbae 100644 --- a/changai/changai/api/v2/schema_utils.py +++ b/changai/changai/api/v2/schema_utils.py @@ -264,7 +264,7 @@ def is_master_data_changed(last_sync: str, stored_data: list): return True return False - +@frappe.whitelist(allow_guest=True) def check_file_updates(file_name: str): RAG_FOLDER = "Home/RAG Sources" from changai.changai.api.v2.build_cards_faiss_index_v2 import _read_file_doc From 9e3791d44e56f13338f54fd8ce9ed6b90e2761b5 Mon Sep 17 00:00:00 2001 From: Hyrin-mansoor Date: Wed, 15 Jul 2026 14:02:13 +0300 Subject: [PATCH 2/2] fix: solved security issue in get_settings api --- .../changai/api/v1/prediction_pipeline_v1.py | 3 +- changai/changai/api/v2/ai_translate.py | 2 +- .../api/v2/assets/business_keywords_v1.json | 2 +- changai/changai/api/v2/schema_utils.py | 24 +- changai/changai/api/v2/store_chats.py | 2 +- .../changai/api/v2/text2sql_pipeline_v2.py | 232 ++++++++++++------ changai/changai/prompts/gdoc_sql_prompt.txt | 110 +++++++++ .../prompts/sql_rewrite_sys_prompt.txt | 64 +++-- .../prompts/sql_rewrite_user_prompt.txt | 1 - 9 files changed, 304 insertions(+), 136 deletions(-) create mode 100644 changai/changai/prompts/gdoc_sql_prompt.txt diff --git a/changai/changai/api/v1/prediction_pipeline_v1.py b/changai/changai/api/v1/prediction_pipeline_v1.py index 2c3dce7..d1836e6 100644 --- a/changai/changai/api/v1/prediction_pipeline_v1.py +++ b/changai/changai/api/v1/prediction_pipeline_v1.py @@ -13,9 +13,8 @@ import jinja2 from typing import Any, Dict, Optional from symspellpy.symspellpy import SymSpell, Verbosity -from changai.changai.api.v2.text2sql_pipeline import get_settings +# from changai.changai.api.v2.text2sql_pipeline import get_settings -CONFIG=get_settings() pleasantry_file_path = frappe.get_app_path("changai", "changai", "api", "pleasantry.json") business_keywords_file = frappe.get_app_path("changai", "changai", "api", "business_keywords.json") custom_dictionary = frappe.get_app_path("changai", "changai", "api", "erp_dictionary.txt") diff --git a/changai/changai/api/v2/ai_translate.py b/changai/changai/api/v2/ai_translate.py index 14a5a5e..958f31e 100644 --- a/changai/changai/api/v2/ai_translate.py +++ b/changai/changai/api/v2/ai_translate.py @@ -125,5 +125,5 @@ def translate_and_store(docname: str, doctype: str, from_field: str, to_field: s if not hasattr(doc, to_field): frappe.throw(f"Field '{to_field}' does not exist on Item") doc.set(to_field, translated_text) - doc.save(ignore_permissions=True) + doc.save(ignore_permissions=False) return to_field diff --git a/changai/changai/api/v2/assets/business_keywords_v1.json b/changai/changai/api/v2/assets/business_keywords_v1.json index da3e06a..fd68f9b 100644 --- a/changai/changai/api/v2/assets/business_keywords_v1.json +++ b/changai/changai/api/v2/assets/business_keywords_v1.json @@ -134,8 +134,8 @@ "show fields", "child", "show all fields", - "show customer names", "employee name", + "name", "invoice number", "quotation number", "purchase order number", diff --git a/changai/changai/api/v2/schema_utils.py b/changai/changai/api/v2/schema_utils.py index 500dbae..b44a585 100644 --- a/changai/changai/api/v2/schema_utils.py +++ b/changai/changai/api/v2/schema_utils.py @@ -542,7 +542,7 @@ class ChangAIConfig: def get(cls): if not hasattr(frappe.local, "_changai_config"): frappe.clear_document_cache(CHANGAI_SETTINGS) - frappe.local._changai_config = get_settings() + frappe.local._changai_config = _get_internal_settings_config() return frappe.local._changai_config @@ -555,21 +555,7 @@ def _build_frontend_settings_config() -> Dict[str, Any]: or getattr(settings, "aws_default_region", None) or "us-east-1" ) - return { - "RETAIN_MEM": settings.retain_memory, - "LLM_VERSION_ID": settings.llm_version_id, - "EMBED_VERSION_ID": settings.embedder_version_id, - "REMOTE": bool(settings.remote), - "deploy_url": settings.deploy_url, - "entity_retriever": settings.entity_retriever, - "support_api_url": settings.support_url, - "get_ticket_details_url": settings.get_ticket_details_url, - "llm": settings.llm, - "location": settings.gemini_location, - "retriever_structure": settings.retriever_structure, - "gemini_project_id": settings.gemini_project_id, - "gemini_json_content": settings.gemini_json_content, "enable_voice_chat": bool(settings.enable_voice_chat), "aws_region": aws_region, "polly_voice_id": "Zayd", @@ -578,8 +564,7 @@ def _build_frontend_settings_config() -> Dict[str, Any]: } -@frappe.whitelist(allow_guest=False) -def get_settings() -> Dict[str, Any]: +def _get_internal_settings_config() -> Dict[str, Any]: settings = frappe.get_single(CHANGAI_SETTINGS) config = { "RETAIN_MEM": settings.retain_memory, @@ -602,9 +587,14 @@ def get_settings() -> Dict[str, Any]: } return config +@frappe.whitelist(allow_guest=False) +def get_settings() -> Dict[str, Any]: + frappe.has_permission(CHANGAI_SETTINGS, "read", throw=True) + return _get_internal_settings_config() @frappe.whitelist(allow_guest=False) def get_frontend_settings() -> Dict[str, Any]: + frappe.has_permission(CHANGAI_SETTINGS, "read", throw=True) return _build_frontend_settings_config() def clean_sql(s: Any) -> str: diff --git a/changai/changai/api/v2/store_chats.py b/changai/changai/api/v2/store_chats.py index f6eb73f..5ca1a0f 100644 --- a/changai/changai/api/v2/store_chats.py +++ b/changai/changai/api/v2/store_chats.py @@ -244,7 +244,7 @@ def find_similar_log_question(new_question: str, threshold: int = 98): score = fuzz.token_set_ratio( new_question, - log.user_question + log.rewritten_question ) if score > best_score: diff --git a/changai/changai/api/v2/text2sql_pipeline_v2.py b/changai/changai/api/v2/text2sql_pipeline_v2.py index 976dfa7..9c1c5d5 100644 --- a/changai/changai/api/v2/text2sql_pipeline_v2.py +++ b/changai/changai/api/v2/text2sql_pipeline_v2.py @@ -77,6 +77,7 @@ mapping_data = read_asset("metaschema_clean_v2.json", base="assets") CONVERSATION_TEMPLATE = read_asset("conversation_template_v2.j2", base="assets") SQL_SYS_PROMPT = read_asset("sql_system_prompt.txt", base="prompts") +GDOC_SYS_PROMPT = read_asset("gdoc_sql_prompt.txt", base="prompts") SQL_PROMPT = read_asset("sql_user_prompt.txt", base="prompts") FILTER_TABLES = read_asset("filter_tables.txt", base="prompts") filter_fields = read_asset("filter_fields.txt", base="prompts") @@ -226,6 +227,8 @@ def _safe_strip(v): # Shared State class SQLState(TypedDict, total=False): + table : str + source :str payload_res :dict is_cud:bool cud_type:str @@ -237,6 +240,7 @@ class SQLState(TypedDict, total=False): report_name:str entity_name:str doc:str + clarification:str reports_filter_before_call:list entity_type:str final_prompt:str @@ -268,7 +272,44 @@ class SQLState(TypedDict, total=False): message:str stop_followup:bool - +TURN_RESET: SQLState = { + "clarification": "", + "sql": "", + "orm": "", + "payload": {}, + "payload_res": None, + "error": None, + "validation": {}, + "tries": 0, + "sql_prompt": "", + "final_prompt": "", + "formatted_q": "", + "non_erp_res": "", + "message": "", + "stop_followup": False, + "create_entity": False, + "open_report": False, + "report_name": "", + "filters": "", + "doc": "", + "entity_name": "", + "is_cud": False, + "cud_type": "", + "entity_cards": [], + "entity_words": [], + "contains_values": False, + "selected_tables": [], + "selected_fields": "", + "query_type":"", + "top_tables": [], + "top_fields": {}, + "hits": [], + "context": "", + "entity_raw":None, + "question":"", + "formatting_prompt":"", + "session_id":"" +} def route_action(state: SQLState) -> str: if state.get("stop_followup"): return "STOP_FOLLOW" @@ -322,9 +363,12 @@ def guardrail_router(state: SQLState) -> SQLState: request_id = state.get("request_id") chat_id = state.get("session_id") raw_q = state.get("question") or "" + source = state.get("source") try: - is_erp= is_erp_query(False,raw_q,BUSINESS_KEYWORDS,98) - if is_erp: + is_erp= is_erp_query(False,raw_q,BUSINESS_KEYWORDS,95) + if source == "gdoc": + query_type = "ERP" + elif is_erp : query_type = "ERP" elif is_thread_erp(raw_q, chat_id): query_type = "ERP" @@ -623,6 +667,7 @@ def generate_sql(state:SQLState) -> SQLState: # if state.get("context") == "" or state.get("context") == None: # state,context = hits_to_prompt_context(state) request_id = state.get("request_id") + source = state.get("source") fields = _safe_strip(state.get("selected_fields") or "") entity_cards = state.get("entity_cards") or [] entity_block = "" @@ -639,7 +684,7 @@ def generate_sql(state:SQLState) -> SQLState: else: prompt=fill_sql_prompt(formatted_q,state["context"]) try: - response=call_model(prompt,"llm",SQL_SYS_PROMPT) + response=call_model(prompt,"llm",SQL_SYS_PROMPT if source == "erp" else GDOC_SYS_PROMPT) if not response: return {**state, "error": "Empty response from LLM", "sql_prompt": prompt} if isinstance(response, str): @@ -651,13 +696,20 @@ def generate_sql(state:SQLState) -> SQLState: "error": "Invalid JSON returned by LLM" } sql = response.get("sql", "") + table = response.get("table", "") + clarification = response.get("clarification") or None + if clarification: + publish_pipeline_update(request_id, "clarification_needed", clarification) + return {**state, "sql_prompt": prompt, "sql": "", "payload": {}, + "payload_res": None, "error": None, + "clarification": clarification} payload = response.get("payload", {}) publish_pipeline_update( request_id, "sql_generated", "SQL generated" ) - return {**state,"sql_prompt":prompt,"sql":sql,"payload":payload,"error":None,"payload_res": None} + return {**state,"sql_prompt":prompt,"sql":sql,"payload":payload,"error":None,"payload_res": None,"table":table} except frappe.exceptions.ValidationError: raise except Exception as e: @@ -711,7 +763,8 @@ def repair_sqlquery(state: SQLState) -> SQLState: patched_prompt =sql_prompt + "\n\n#VALIDATION HINTS\n" + "\n".join(f"-{h}" for h in hints) try: - response = call_model(patched_prompt,"llm",SQL_SYS_PROMPT) + sys_prompt = GDOC_SYS_PROMPT if state.get("source") == "gdoc" else SQL_SYS_PROMPT + response = call_model(patched_prompt,"llm",sys_prompt) if isinstance(response, str): try: response = json.loads(response) @@ -941,8 +994,10 @@ def execute_query(sql: str, doctypes: List[str]) -> Any: return {"error": f"SQL Execution Failed: {e}\n Check Quick Start Guide Here 👇:\n {CHANGAI_GUIDE_LINK}"} -def _invoke_pipeline(user_question: str, chat_id: str, request_id: str,sendNonErptoAI: bool = False): +def _invoke_pipeline(source:str,user_question: str, chat_id: str, request_id: str,sendNonErptoAI: bool = False): initial_state: SQLState = { + **TURN_RESET, + "source":source, "question": user_question or "", "session_id": chat_id, "request_id": request_id, @@ -1011,16 +1066,58 @@ def _handle_sql_result( extracted_tables=[] formatted_result ="" payload = {} + source ="" + source=final.get("source") + context = (final.get("context") or final.get("selected_fields") or fields or "")[:800] + clarification = final.get("clarification") or "" + if clarification: + publish_pipeline_update( + request_id, + "clarification_needed", + "Need clarification from user", + done=True # close the pipeline UI on this turn + ) + save_turn_2( + session_id=chat_id, + user_text=formatted_q, + bot_text=clarification, + type_="erp" + ) + return { + "Model returned SQL": "", + "context": context, + "payload": payload, + "entity_words": final.get("entity_words") or [], + "Question": user_question, + "payload_res": None, + "Formated Question": formatted_q, + "Cleaned SQL": "", + "Tables": selected_tables, + "Fields": fields, + "Entity Values present ?": "", + "Validation": val, + "Error": None, + "result": [], + "EntityDebug": entity_debug if entity_debug.get("contains_values") else None, + "Bot": clarification + } try: request_id = request_id or final.get("request_id") org_sql = final.get("sql") or sql payload = final.get("payload") or {} payload_res = final.get("payload_res") + table = final.get("table") if org_sql: extracted_tables = extract_tables_from_sql(org_sql) try: if sql: sql_result = execute_query(sql, extracted_tables) + if source == "gdoc": + return { + "sql_out":sql_result, + "table":table + } + except Exception as e: # err = str(e) final["error"] = str(e) @@ -1029,7 +1126,6 @@ def _handle_sql_result( except Exception as e: final["error"] = str(e) return {"ok": False, "error": f"SQL Execution Failed: {e}"} - context = (final.get("context") or final.get("selected_fields") or fields or "")[:800] contains_values = final.get("contains_values") or entity_debug.get("contains_values") or "" err = final.get("error") @@ -1091,7 +1187,7 @@ def _handle_sql_result( # ✅ Normal success case formatted_result = format_data(user_question, payload_res) - elif sql: + elif sql: formatted_result = format_data( user_question, sql_result @@ -1142,6 +1238,7 @@ def _handle_sql_result( entity_debug=entity_debug, type_="ERP" ) + return { "Model returned SQL": org_sql, "context": context, @@ -1162,8 +1259,9 @@ def _handle_sql_result( } RETRY_PROMPT = read_asset("retry_sys_prompt.txt",base="prompts") RETRY_USER_PROMPT = read_asset("retry_user_prompt.txt",base="prompts") -def retry_sql(sql, error, formatted_q, sql_prompt): - retry_prompt = SQL_SYS_PROMPT + RETRY_PROMPT +def retry_sql(sql, error, formatted_q, sql_prompt,source="erp"): + base = GDOC_SYS_PROMPT if source == "gdoc" else SQL_SYS_PROMPT + retry_prompt = base + RETRY_PROMPT user_prompt = sql_prompt + RETRY_USER_PROMPT.format(sql=sql,error=error,formatted_q=formatted_q) try: rewritten = call_gemini(user_prompt, sys_prompt=retry_prompt) @@ -1184,45 +1282,45 @@ def is_thread_erp(q:str,chat_id:str): else: return False -@frappe.whitelist(allow_guest=False) +@frappe.whitelist(allow_guest=True) def run_text2sql_pipeline( user_question: str, - chat_id: str, - request_id: str, + chat_id: str = "None", + request_id: str = "None", + source:str = "erp", sendNonErptoAI: bool = False ) -> Dict: memory_status = check_memory_status() - logs = find_similar_log_question(user_question) - if logs.get("matched"): - publish_pipeline_update( - request_id, - "cache_hit", - "Using cached result" - ) - formatted_q = logs.get("rewritten_question") - sql = logs.get("sql") - tables = json.loads(logs.get("tables") or "[]") - fields = logs.get("fields") or "" - entity_debug = json.loads(logs.get("entity_debug") or "{}") - return _handle_sql_result( - memory_status, - request_id, - None, - {}, - sql, - formatted_q, - fields, - tables, - {"ok": True, "from_cache": True}, - entity_debug, - user_question, - chat_id - ) + if source!="gdoc": + logs = find_similar_log_question(user_question) + if logs.get("matched"): + publish_pipeline_update( + request_id, + "cache_hit", + "Using cached result" + ) + formatted_q = logs.get("rewritten_question") + sql = logs.get("sql") + tables = json.loads(logs.get("tables") or "[]") + fields = logs.get("fields") or "" + entity_debug = json.loads(logs.get("entity_debug") or "{}") + return _handle_sql_result( + memory_status, + request_id, + None, + {}, + sql, + formatted_q, + fields, + tables, + {"ok": True, "from_cache": True}, + entity_debug, + user_question, + chat_id + ) - # -------------------------------------------------- - # PIPELINE INVOCATION - # -------------------------------------------------- final, err_response = _invoke_pipeline( + source, user_question, chat_id, request_id, @@ -1321,6 +1419,7 @@ def run_text2sql_pipeline( payload = final.get("payload") or {} payload_res = final.get("payload_res") sql = clean_sql(final.get("sql")) or "" + clarification = final.get("clarification") or "" formatted_q = _safe_strip(final.get("formatted_q") or "") context = final.get("context") or "" selected_tables = final.get("selected_tables") or [] @@ -1347,6 +1446,13 @@ def run_text2sql_pipeline( user_question, chat_id ) + clarification = final.get("clarification") or "" + if clarification: + return _handle_sql_result( + memory_status, request_id, sql_prompt, final, "", + formatted_q, fields, selected_tables, {}, entity_debug, + user_question, chat_id + ) if sql: res = validate_sql_schema(sql) publish_pipeline_update( @@ -1374,7 +1480,8 @@ def run_text2sql_pipeline( sql, res.get("error"), formatted_q, - sql_prompt + sql_prompt, + source ) if retry2_val_res.get("ok"): @@ -1397,7 +1504,8 @@ def run_text2sql_pipeline( retried_sql2, retry2_val_res.get("error"), formatted_q, - sql_prompt + sql_prompt, + source ) if retry3_val_res.get("ok"): @@ -1450,37 +1558,3 @@ def run_text2sql_pipeline( "No SQL or Payload generated", err ) - - - -@frappe.whitelist(allow_guest=False) -def guardrail_router_test( - question: str, - chat_id: str = None, - request_id: str = "test_001" -): - try: - is_erp = is_erp_query(False, question, BUSINESS_KEYWORDS, 98) - if is_erp: - query_type = "ERP" - elif chat_id and is_thread_erp(question, chat_id): - query_type = "ERP" - else: - query_type = "NON_ERP" - - return { - "success": True, - "question": question, - "query_type": query_type, - "is_erp_match": bool(is_erp), - "is_thread_erp": bool(chat_id and is_thread_erp(question, chat_id)) - } - - except Exception as e: - frappe.log_error(frappe.get_traceback(), "Guardrail Router Test Error") - return { - "success": False, - "question": question, - "query_type": "NON_ERP", - "error": str(e) - } diff --git a/changai/changai/prompts/gdoc_sql_prompt.txt b/changai/changai/prompts/gdoc_sql_prompt.txt new file mode 100644 index 0000000..6b4acca --- /dev/null +++ b/changai/changai/prompts/gdoc_sql_prompt.txt @@ -0,0 +1,110 @@ +You are a RESTRICTED MariaDB SQL generator for the GDoc Document retrieval pipeline. +You have NO knowledge of ERPNext, databases, or any schema beyond what is written in SCHEMA CONTEXT. +SCHEMA CONTEXT is your entire universe. Nothing outside it exists. +ABSOLUTE LAW: Only use fields and tables from SCHEMA CONTEXT. +Empty SQL = critical failure. + +═══ GDOC PURPOSE (READ FIRST) ═══ +Your ONLY job is to identify DOCUMENT RECORDS that match the user's question. +The caller will use the returned record names to fetch file links. +Therefore: +- The SELECT clause MUST return ONLY the `name` field of the main table. +- Correct form: SELECT `tabX`.`name` FROM `tabX` WHERE ... +- NEVER select any other field in the final output (no file names, no dates, + no vendor fields in SELECT). Other fields may appear ONLY in WHERE, + JOIN, ORDER BY, GROUP BY, or HAVING clauses — never in SELECT. +- If the query requires DISTINCT to avoid duplicate names, use + SELECT DISTINCT `tabX`.`name`. +- Aggregations (COUNT, SUM, etc.) in SELECT are forbidden. This pipeline + only fetches record names. If the user asks "how many", still return + the names of the matching records — the caller will count them. + +═══ FIELD & TABLE LAW (ABSOLUTE — ZERO EXCEPTIONS) ═══ +BEFORE writing any field or table name, locate it physically in SCHEMA CONTEXT. + FOUND → you may use it, only under the table it is listed. + NOT FOUND → it does not exist. Do not write it. Do not guess it. Do not remember it. + +- A field listed under one table CANNOT appear in a query on another table unless + an explicit JOIN exists via a link field in SCHEMA CONTEXT. +- JOIN is only allowed if SCHEMA CONTEXT explicitly shows a link field (→) between the two tables. +- Do NOT assume any relationship between tables. If no link field exists → no JOIN. +- SELECT * is forbidden. +- Never assume fields. Only use the fields and tables that exist in SCHEMA CONTEXT. +- NEVER return empty sql. Always generate the best possible SELECT query using the + closest available fields and tables from SCHEMA CONTEXT. + +═══ SELF-CHECK PROTOCOL (MANDATORY BEFORE OUTPUT) ═══ +For every field in your SQL, answer internally: + Q: Is this field listed under THIS exact table in SCHEMA CONTEXT? + YES → keep it. NO → remove it immediately. No exceptions. +For every table in your SQL, answer internally: + Q: Is this table present in SCHEMA CONTEXT? + YES → keep it. NO → remove it immediately. No exceptions. +Final structural check: + Q: Does the SELECT clause contain ONLY the main table's `name` field? + NO → rewrite it so it does. No exceptions. + +═══ ENTITY FILTERING ═══ +- If ENTITY_CARDS exist, use ONLY those exact entity values (no spelling/case changes). +- NEVER use entity string literals directly from the user question in SQL. +- Match user-mentioned names to the closest ENTITY_CARD using typo/phonetic/fuzzy/ + semantic matching, abbreviations, and partial names. +- Always use the entity card's exact filter_field and filter_value in the WHERE clause. +- Do NOT default to the `name` field for filtering unless the entity card + filter_field is `name`. +CRITICAL ENTITY FILTER OVERRIDE RULE: +If a matching ENTITY_CARD is found for a user-mentioned entity, the WHERE clause +MUST use ONLY the ENTITY_CARD filter_field and filter_value. + +═══ MARIADB COMPATIBILITY (ZERO TOLERANCE) ═══ +FORBIDDEN — NEVER USE: STRFTIME, DATE_TRUNC, ::, ILIKE, TO_CHAR, NOW()::, EXTRACT, INTERVAL 'x' +ALLOWED DATE PATTERNS ONLY: + This month : MONTH(col) = MONTH(CURDATE()) AND YEAR(col) = YEAR(CURDATE()) + Date range : col BETWEEN DATE_SUB(CURDATE(), INTERVAL n DAY) AND CURDATE() + Date math : DATE_SUB(date, INTERVAL n UNIT) + Filtering : YEAR(), MONTH(), QUARTER(), LAST_DAY(), CURDATE() +If you are about to write a forbidden token → STOP → rewrite using MariaDB equivalents. + +═══ SCHEMA RANKING AWARENESS ═══ +- SCHEMA CONTEXT is retrieved via semantic search — relevant tables/fields may appear + low in the list. Rank is a retrieval artifact, not relevance. +- Scan the ENTIRE SCHEMA CONTEXT before selecting any table or field. +- Choose the most semantically correct table/field even if it appears last. + +═══ STATUS MAPPING ═══ +- Map user status words to the status options provided in the field schema. +- Match the closest option to the user's intent. +- If multiple options match, use IN (...). + +═══ SYNTAX LAW ═══ +- Multiple values on same field → always IN (...), never chained OR. +- OR combined with AND → always wrap OR in parentheses. +- Wrap EVERY table name in backticks exactly as written in SCHEMA CONTEXT + (never "" or '' — those fail in MariaDB). +- Uppercase all SQL keywords. +- SQL must start with SELECT and end with ; +- Only SELECT queries. INSERT, UPDATE, DELETE are strictly forbidden, + even if the user explicitly asks. +- Verify operator precedence, no missing filters, and that the logic + matches the question exactly before output. + +═══ OUTPUT LAW ═══ +Output ONLY raw JSON. No explanation. No markdown. No extra keys. +"table" must be the exact main table name used in FROM, exactly as written +in SCHEMA CONTEXT (with the tab prefix, without backticks). + +Output Format: +{ + "sql": "", + "table": "" +} + +NEVER return empty sql. If uncertain, output the best partial SELECT query +using the closest available fields — but the SELECT clause must still +contain ONLY the main table's `name` field. + +FINAL CHECK: +1. Every field exists in SCHEMA CONTEXT under the exact table used? +2. SELECT clause contains ONLY `name` of the main table? +3. "table" key matches the FROM table exactly? +4. Raw JSON only, both keys present? \ No newline at end of file diff --git a/changai/changai/prompts/sql_rewrite_sys_prompt.txt b/changai/changai/prompts/sql_rewrite_sys_prompt.txt index b978b7a..8448f55 100644 --- a/changai/changai/prompts/sql_rewrite_sys_prompt.txt +++ b/changai/changai/prompts/sql_rewrite_sys_prompt.txt @@ -3,34 +3,34 @@ Return ONLY valid JSON: {{"standalone_question":"...","contains_values":true/false,"entity_words":["..."],"is_cud":false}} TASK 1 — FOLLOW-UP -- Analyze the last user message and last AI reply together. -- If the last AI reply ended with a question and the user message is a reply to it, - rewrite using the AI’s last question intent. -- If the query depends on chat history, rewrite it as a complete standalone question by analysing the chat history . - Otherwise keep it unchanged, except Arabic ERP questions which must be rewritten into English according to the Arabic translation rules. -TASK 1.5 — FOLLOW-UP TERMINATION DETECTION -If the last AI reply ended with a question, suggestion, recommendation, or offer, and the user replies with a message indicating they do not want to continue the conversation flow, such as: -"no", "no thanks", "no thank you", "thanks", "thank you", "that's all", "nothing else", "ok", "okay", "fine", "not now", "later", "never mind", "لا", "شكرا", "تمام" -then do NOT rewrite the message into an ERP question, do NOT continue the previous context, and do NOT perform ERP, report, entity, or creation detection. -Return ONLY: -{ - "standalone_question": "", - "contains_values": false, - "entity_words": [], - "stop_followup": true, - "message": "You're welcome! Let me know if you need anything else." -} -If the user replies positively to the AI's last question or suggestion, such as: -"yes", "yes please", "sure", "go ahead", "continue", "show me", "proceed", "ok show me", "نعم" -then continue with the normal follow-up rewriting rules and return: -{ - "standalone_question": "", - "contains_values": true, - "stop_followup": false, - "message":"", - "entity_words": [], - "is_cud":true, - "cud_type": "" -} +- If the current message is a complete question (names its own subject/doctype) + → STANDALONE. Ignore history entirely — never merge. +- Treat as follow-up ONLY if it's short and incomplete alone ("yes", + "the submitted ones", "by revenue") → rewrite using history. +- CLARIFICATION MERGE: if the last AI turn was a clarifying question and the reply picks an option → rebuild as ORIGINAL question + + chosen interpretation. Keep doctype, period, and conditions EXACTLY as + the original; never add anything new. + Example: + User: "count of completed Purchase Orders?" + AI: "status', or submitted?" + User: "submitted ones" + → "What is the count of submitted Purchase Orders (docstatus = 1)?" +- Arabic ERP questions are always rewritten into English per the Arabic rules. +TASK 1.5 — FOLLOW-UP TERMINATION +Applies only when the last AI reply ended with a question/offer: +- DECLINE — user's reply only closes the conversation ("no", "no thanks", + "thanks", "that's all", "ok", "not now", "never mind", "لا", "شكرا", "تمام") + → do NOT rewrite, do NOT detect ERP/report/entity/CUD. Return ONLY: + {"standalone_question":"", "contains_values":false, "entity_words":[], + "stop_followup":true, "is_cud":false, "cud_type":"", + "message":"You're welcome! Let me know if you need anything else."} +- ACCEPT — user's reply agrees to the AI's offer ("yes", "sure", "go ahead", + "show me", "نعم") → rewrite the AI's offered action as the standalone + question per TASK 1. Set stop_followup:false. Set contains_values, + entity_words, is_cud, and cud_type from the REWRITTEN question — is_cud is + true ONLY if the offered action was itself a create/update/delete. +- If the reply both closes and asks something new ("ok thanks, and show + suppliers too") → it is NOT a termination; process the new question normally. TASK 2 — ENTITY DETECTION contains_values = TRUE: Any noun that refers to a specific named master record (item name, customer name, supplier name, warehouse name, employee name) @@ -68,7 +68,6 @@ Use natural phrasing ("based on", "using"): stock → actual_qty production → produced_qty finance → debit / credit - status → status 5. Time fields: Sales/Stock/Finance → posting_date @@ -82,9 +81,7 @@ Use natural phrasing ("based on", "using"): STYLE: - Natural business language - No SQL, no tab* names -EXAMPLES: -"total sales amount last month" -→ What is the total sales amount from Sales Invoices last month based on grand_total and posting_date? +ex: "stock in warehouse a" → What is the stock quantity in Warehouse A based on actual_qty from Bin? "who worked today" @@ -106,7 +103,7 @@ STRICT RULES: - Choose fields based on business meaning and user intent, not rank position. - Never invent schema elements. - Always return any one clear user-readable business field, not only technical IDs, unless explicitly requested. -- If the query is ambiguous, ask for clarification and set "clarify": true. +- If the query is ambiguous, ask for clarification and set "clarify": true. - this is very important.Do not map user intent to non-existent fields. If the user asks for something like "status" or "active customers" but the schema does not have a column literally named status, do not substitute it with a guessed equivalent. Instead, look at what columns actually exist in the schema and either use the correct matching column if it clearly corresponds, or inform the user that the exact field is not in the schema. - Preserve ERPNext business semantics during rewriting and avoid converting ERPNext document lifecycle terms into generic workflow or approval terminology that may change the original meaning. - Note ** - If the user question is in Arabic, you MUST rewrite the question in English but entity values must be in the language that user mentioned in the question if the entty values are mentioned in arabic preserve arabic only for entity values remaining part u can translate into english. @@ -181,7 +178,6 @@ and return }} otherwise if question is like the user is asking for analysis, summary, trends, top records, totals, comparisons, or custom reporting, generate SQL and show the results in ChangAI. - Other Examples: - Show sales report this month - Give me a monthly sales summary for last year diff --git a/changai/changai/prompts/sql_rewrite_user_prompt.txt b/changai/changai/prompts/sql_rewrite_user_prompt.txt index 4001a11..35a37c4 100644 --- a/changai/changai/prompts/sql_rewrite_user_prompt.txt +++ b/changai/changai/prompts/sql_rewrite_user_prompt.txt @@ -1,5 +1,4 @@ Chat History: {rows} - User Question: {qstn} \ No newline at end of file