From 489d55b566448ec095950381218a645d4bacba8f Mon Sep 17 00:00:00 2001 From: Waleed Latif Date: Thu, 13 Aug 2026 16:18:39 -0700 Subject: [PATCH 1/3] feat(canvas): add a setting to turn off auto-focus when clicking blocks Clicking a block animates the camera to center it, which zooms in far enough that you lose sight of the rest of the workflow. Add an "Auto-focus on click" preference (on by default, so existing behavior is unchanged) that keeps the camera still on click. Also re-record the auto-connect and canvas-error-notification tooltip previews and re-encode all three at a smaller size. --- .../settings/components/general/general.tsx | 36 + .../[workspaceId]/w/[workflowId]/workflow.tsx | 22 +- apps/sim/hooks/queries/general-settings.ts | 12 + apps/sim/lib/api/contracts/user.ts | 3 + apps/sim/lib/users/queries.ts | 3 + .../public/tooltips/auto-connect-on-drop.mp4 | Bin 86006 -> 29203 bytes .../public/tooltips/auto-focus-on-click.mp4 | Bin 0 -> 16427 bytes .../tooltips/canvas-error-notification.mp4 | Bin 59457 -> 18612 bytes .../0290_settings_auto_focus_on_click.sql | 2 + .../db/migrations/meta/0290_snapshot.json | 19100 ++++++++++++++++ packages/db/migrations/meta/_journal.json | 7 + packages/db/schema.ts | 1 + packages/testing/src/mocks/schema.mock.ts | 1 + 13 files changed, 19184 insertions(+), 3 deletions(-) create mode 100644 apps/sim/public/tooltips/auto-focus-on-click.mp4 create mode 100644 packages/db/migrations/0290_settings_auto_focus_on_click.sql create mode 100644 packages/db/migrations/meta/0290_snapshot.json diff --git a/apps/sim/app/workspace/[workspaceId]/settings/components/general/general.tsx b/apps/sim/app/workspace/[workspaceId]/settings/components/general/general.tsx index cba717ad877..97b22aa3073 100644 --- a/apps/sim/app/workspace/[workspaceId]/settings/components/general/general.tsx +++ b/apps/sim/app/workspace/[workspaceId]/settings/components/general/general.tsx @@ -217,6 +217,12 @@ export function General() { } } + const handleAutoFocusOnClickChange = async (checked: boolean) => { + if (checked !== settings?.autoFocusOnClick && !updateSetting.isPending) { + await updateSetting.mutateAsync({ key: 'autoFocusOnClick', value: checked }) + } + } + const handleSnapToGridChange = async (value: string) => { const newValue = Number.parseInt(value, 10) if (newValue !== settings?.snapToGridSize && !updateSetting.isPending) { @@ -457,6 +463,36 @@ export function General() { /> +
+
+ + + + + + +

Center the canvas on a block when you click it

+ +
+
+
+ +
+
diff --git a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/workflow.tsx b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/workflow.tsx index 89666558c54..16a1c404ed5 100644 --- a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/workflow.tsx +++ b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/workflow.tsx @@ -113,7 +113,11 @@ import { isAnnotationOnlyBlock } from '@/executor/constants' import { useCustomBlocks } from '@/hooks/queries/custom-blocks' import { useWorkspaceEnvironment } from '@/hooks/queries/environment' import { useFolderMap } from '@/hooks/queries/folders' -import { useAutoConnect, useSnapToGridSize } from '@/hooks/queries/general-settings' +import { + useAutoConnect, + useAutoFocusOnClick, + useSnapToGridSize, +} from '@/hooks/queries/general-settings' import { findLockedAncestorFolder, isFolderOrAncestorLocked, @@ -404,6 +408,8 @@ const WorkflowContent = React.memo( const autoConnectRef = useRef(isAutoConnectEnabled) autoConnectRef.current = isAutoConnectEnabled + const isAutoFocusOnClickEnabled = useAutoFocusOnClick() + // Panel open states for context menu const isVariablesOpen = useVariablesModalStore((state) => state.isOpen) const isChatOpen = useChatStore((state) => state.isChatOpen) @@ -4320,12 +4326,14 @@ const WorkflowContent = React.memo( /** * Focus the clicked block: animate the camera so the card centers in * the canvas frame. Plain clicks focus both regular cards and subflow - * containers; multi-select keeps the camera still. + * containers; multi-select keeps the camera still. Users who would + * rather keep their own framing turn this off in general settings. * onNodeClick never fires after a drag. */ if ( !embedded && !isMultiSelect && + isAutoFocusOnClickEnabled && (node.type === 'workflowBlock' || node.type === 'noteBlock' || node.type === 'subflowNode') @@ -4334,7 +4342,15 @@ const WorkflowContent = React.memo( focusBlockInView(node) } }, - [activeWorkflowId, blocks, getNodes, embedded, focusBlockInView, workflowIdParam] + [ + activeWorkflowId, + blocks, + getNodes, + embedded, + focusBlockInView, + isAutoFocusOnClickEnabled, + workflowIdParam, + ] ) /** diff --git a/apps/sim/hooks/queries/general-settings.ts b/apps/sim/hooks/queries/general-settings.ts index e857abed51a..c2483eaa59d 100644 --- a/apps/sim/hooks/queries/general-settings.ts +++ b/apps/sim/hooks/queries/general-settings.ts @@ -36,6 +36,8 @@ export interface GeneralSettings { errorNotificationsEnabled: boolean snapToGridSize: number showActionBar: boolean + /** Whether clicking a block on the canvas animates the camera to center it. */ + autoFocusOnClick: boolean /** Copilot tool ids the user picked "always allow" for. */ copilotAutoAllowedTools: string[] /** Saved IANA timezone, or `null` when unset (the app falls back to the browser zone). */ @@ -57,6 +59,7 @@ export function mapGeneralSettingsResponse(data: UserSettingsApi): GeneralSettin errorNotificationsEnabled: data.errorNotificationsEnabled, snapToGridSize: data.snapToGridSize, showActionBar: data.showActionBar, + autoFocusOnClick: data.autoFocusOnClick, copilotAutoAllowedTools: data.copilotAutoAllowedTools ?? [], timezone: data.timezone ?? null, } @@ -122,6 +125,15 @@ export function useShowActionBar(): boolean { return data?.showActionBar ?? true } +/** + * Whether the canvas camera animates to center a block when it is clicked or + * reached with arrow-key navigation. + */ +export function useAutoFocusOnClick(): boolean { + const { data } = useGeneralSettings() + return data?.autoFocusOnClick ?? true +} + export function useBillingUsageNotifications(): boolean { const { data } = useGeneralSettings() return data?.billingUsageNotificationsEnabled ?? true diff --git a/apps/sim/lib/api/contracts/user.ts b/apps/sim/lib/api/contracts/user.ts index 6dfa1d15b38..2056b7e2a95 100644 --- a/apps/sim/lib/api/contracts/user.ts +++ b/apps/sim/lib/api/contracts/user.ts @@ -90,6 +90,8 @@ export const userSettingsSchema = z.object({ errorNotificationsEnabled: z.boolean().default(true), snapToGridSize: z.number().min(0).max(50).default(0), showActionBar: z.boolean().default(true), + /** Whether clicking a block on the canvas animates the camera to center it. */ + autoFocusOnClick: z.boolean().default(true), /** Copilot tool ids the user chose "always allow" for, so they are never prompted for them again. */ copilotAutoAllowedTools: z.array(z.string()).default([]), /** IANA timezone for scheduling; `null` means the client falls back to the browser-detected zone. */ @@ -110,6 +112,7 @@ export const updateUserSettingsBodySchema = z.object({ errorNotificationsEnabled: z.boolean().optional(), snapToGridSize: z.number().min(0).max(50).optional(), showActionBar: z.boolean().optional(), + autoFocusOnClick: z.boolean().optional(), copilotAutoAllowedTools: z.array(z.string()).optional(), /** IANA timezone; explicit `null` resets to the browser-detected zone. */ timezone: ianaTimezoneSchema.nullable().optional(), diff --git a/apps/sim/lib/users/queries.ts b/apps/sim/lib/users/queries.ts index ce66a895514..7d3e783a571 100644 --- a/apps/sim/lib/users/queries.ts +++ b/apps/sim/lib/users/queries.ts @@ -24,6 +24,7 @@ export const defaultUserSettings: UserSettingsApi = { errorNotificationsEnabled: true, snapToGridSize: 0, showActionBar: true, + autoFocusOnClick: true, copilotAutoAllowedTools: [], timezone: null, lastActiveWorkspaceId: null, @@ -50,6 +51,7 @@ export async function getUserSettings(userId: string | null): Promise3?JZ_J8Ds|4Z}#M1cb~^&i~i|xm%f<{hNNnVh+w`qzYz$B~nd5e?_ z-R`g9|K4;;(|^ebO`Xl&bl%dN9MR3$mh@jVq=1X7u`NIkySTdids5zXTHYoOz;Efl z+x*Lbzy!K34Uli}mcX#&0evnuCRSD^Ru&dgTPtHvHZG2T3I9HEUta;t4`_*jnS$QE zZh(j_09@e=DLnLkFT)xf96SI7f&c*zewZlS9u_bVjOD&q=qP#D^Zoss2@DelTW5O{ zTTh@pZ~uUVY3%C!uMr3Lqk3Zi3D?E-?`*u$Z%Qivv>y}b;M**{r8hnRV9h4~rOWv* z9x!8nWpMvs$T$4&RRiF^^#Tv5f8_txf6M;0`45Kv2mcTGzn240{;%EtmjAcjfAart z_57#)-=@Cx?X7-5_;0)aga7|S`~PqKga4=hf7|!(@dGk{+XX!SKgkJ!xiopJ07!2J z-vF5BHw>l)$UXt|zZ1ZReh={R0mj=JApigufVVsm03-ld0CFw>zW`7Uz?;Xg0>BXf z5dhv6GO!t7-#Q}-KscZ;4h-*a0M7ydY#_*ZV5~C%x(a|oV99(2@?-!#3eX(@{sQO# zg9cs(;0$2>R08cn2lxU2ZUp!=01dPY4A}k9%s?I(ATU3mu1f$O09p~i$^Za;0pS3^ z2mm_(Z|jx;0HFL|KK4KO9f03}766ui=>ODt%fA6N08IbT|8F|L{xNy;IBy9UXXv-_ zH*zy|H3G1x}USBJhB@Q}v7o?j~80JYAC{EAbTn#BBsmYsr zWaZ){b!KN{VP}19q@AvS)H|wqSm%g~`&@&KA&daCEhDuy^4lH8CdiH!g&FAFaVsgb>rt(S|L0E;I(FN-HDJ3FbJnSh&}C8>*> zF+j1hkUF|}0fm95fwQRqD-#P)3V4v(S$Ue78vL~h6ftl%vbQi3VB;V)v2=E@GctH9 zOX})uW@~HZBEUwy?MGf=`sfR&xp*1^HX$P&mI{F})}>SAkU0yO5|3>H#*=f9Ph zSlJo5zBR?W#sZ!iIuY%&@pyW4>KzZOIKr{G6zR9djksx zM?m^7rXx_m#>@+_Ex^jg@(*bM9Ew1e)WyWi-ps_!Re*!#t(ne7Z)56g=3)sHcQ!Hj z-`y49ddmx#IGdB&0Y{42TepCW02?qHq)u<05ny2gbetUD4FAPOo&sDv0K>)A%u#@Y z)XEW@BuT`P7vm$GQ0ay zs1Wh*`2x5|2oT)WF3li2JCg+9m>@t90id{mqJTeO`;g*Dj%;1W5Vp9lxuf^Os+-i9 zu&Df0Nt`q0cpq>EW3_t+7hHWK=i1PYyC(}r6;v&d^feaO8tQPa?qwyr?J7M_gmN-i zc=brzjyc}j9Hcfa!{GT4WLiXFQ=U_lAv(-9b54!;h|elAmxj+pK4GFG`evTO_Am4Y>OcYRlLzh z2#Ze|D*h!tu8NmB&QJ>NAiVLd>_nWHA4-}b6@GdF-s%vSw&OLwvSn`yTjSp~P^4Yj zf>&Tg!?y21vIc8>Pg4wS3i}lBjuUrCH)~M6BsB`VJXHTz)V7g{hqPq1hfr zeOL)6WfFm=OgHcE)ZxO@$OUK}Z4{6*grW)cluzG>e#|C0 z&L#R2#i+sSk8aV^v$=a~9IW`{onwkgG2V%koBkY6i%ntS_J-x8!77W}{@-Tw91VkH zSi7d>Sz;Eev+t-UE-m*csZAy79Tc9{2ukeCijI_CzDZNljt|3wtt__wOZ( z=-B(uRpPZzWc7I@DA1>jSaFJT4bSf2g2BWse51=+`51Lv{j%%7A3!HLyH@+Mh`o)hnjF;2%+QR6M4z#LQ2`sYTkAPdLP+&00@Q&L_+#so8~P#`+xrB zqnz~>^&?flq5;PhwnzpXQnUoY z@}W*9umLRaeL-c{$gQQ|nf7-d8gA4XldeXLjW5t14asLd)@Gwfxtrv^TXlH2k}_&#}HcW}TuKCtAqFHb#zLvIFZ^A8Au!yQv5 z?npppAC|4GEdM5k-j7`|al8MZsw|b~vA03pv>vVi~=8Mu?&odH4uKsfeS=m7{#FjT+n zJ@9}Z2Y@t_e*t0>Kz#CVade+0$d)0SFZk+l%697$Hyo*c_X{L$v#&#w_U=s~7_rI? zUsu=TXLBZd<@&v9-GN1T>NCVUXv5X-R#pzgkOW(=8ReL(coXj{C=dQHUsUdaKn?}94WJ!@%F^o_(63NMs^OF{DdnRdTgfJv0L-dtTxQI zN4-T#BG1(z5V4Frs1|4U#4?{J`76J^M0ooi!_abmw~oog-ZIRTdm^#l$oF=Kl<*DB zh&2N+pD1k@T{_ssb{zN0cnR3b-}wVMfiqhff5zUmS|jct5m&gIr3q5Bt46+KYXa0W5V+IugjEftOUXDH|6dTuDW$;@Pr z^5sm%sU>><&@_C!9xqo7QaNVSYfT?^hZ*msMpGHG`M6FV20VW49jgGt;sdu@V5j(I zRqkRl>+nS~`b6!?RCKgq8|Zx))iW#&uTWV{u@ts#R_RBQ((0jy;~KF55ae3``XG`+ zCecUnwoD-8aUPCUe$eh5r4%3;;?s!PdX*qn4W8ABMtNJ;{J<|)`0|>peIW0St5*FY z%jwUqEF_M`SH>Sgm3B67c(D%D}I6P>$Y&Vm3Eb zR7}rPb$aJ!8YHWzmd=aUTDLg3J}#9+@}5*f^?}JrPYa^+=X`{sQVpje4S1OJqSRtd zFZ=OWKRROEU~>PT-#Y}}4?uP{pIAuS)W17$q$InG#cZx#exd7W-85lT)?|Xux)|5? z*&_Sa>y!4!X1KnbVXywvxZXvL*K6uGD#Rqm&2Zo3UpqtQnRcxP_jK|cDyTFGUEr~oWp~J0zj{fcJv?+TslyZ ztw;`QUoGt4J`w9_K~jux!QwzqgKO4n3fFo$X7QeI-Xm>o(DzU_ zGp{w^VW;&-4&b4wMVFxRCc-LR7Vm1yD+*|>^UN`}M0cVce?Jj)9>y_3{BjVfI;;!= zb-j5p0k9mNijvsB^@TmphIsquw=wwmFwbZd6$g-a$rkHVTa_h+Nx<^=sh}0>`Gk-#w=7 z@1vX9(;47d+ix4(&X9-jz(x*(EXCv#sy^PBLQh8`8X# z>?r-<3rpScGL2@)$ApHO-MnPo)+f+`(bPu+&?q50z2bvj^-&M|WX{XBaHGlc&!|l16Ft;sO`q$SZjoF4VF@iN}XX zomW4pwq%!hm9WNZW%B!l_|SQHa@Llw=RuGSBGoBt3uY3|R1%g(M9)0B-4?_4dgm@z z9KblXArM{-O6{zR_9XC$j~r3?^Eh)8Z3|hO5(#>ZDo5LdQlI3)eMJyKv~9r1?ho6- zCg*H7I`e11pJG7&5bThV^W$Yl!n5fKyWVzoECaXm@DPdyu zPf+@B_v>U}PC05QSp3Ei2N;~jUROads-X+kf|1q>y%NZqR%Y+x7LmRMM>pD za07AFQPz7>3{G=`qF%lE{KsKMsuL^RVmuC|jyc`p1+9ho0UwB0F zvQcyn(Xu}TZj9#>i|XD^#(efC&FQgpOufx_U{-HRP7>l(f9J&b&17dejpt|+^|wI2 zr~DQUJL)<)(Opq{WbrFOhYa(*Xg2XLT0CAktFh)UUp(8yEcdPlLTbWl6|==X_vH=) zr~DVy`>K(?zIVo(=8bw3J*Kz;5%L_(uuZLn`)Heo(~n5Y%?uuD!$Sn6?0Q?!XPIx* zltiB!&my~?(=~=x@&)624MB^dZqzVYM->R*eKCdpHXNcYXj0Z745h?acj#n1 z1`YbL@+*F;Bo$`H0gGb>zif2C^N&}H`Uy{bRq^BJ(4E*1?g+A4DX*lJ*(MGjj+$(} z`?Tp%XLcOM|iBZZ9847K1;ZgoffqvxdKnY#Oty+i9V=h4RhfxH%8l5g9kVSXi{{BNn zyVt$<4RdGHMcQfrlhcNkHp&&jNDkjZLh4VU3C%-T%;l3G9GPR~9yHft(P#NtnQ=nx zrR-0F;*d%LN>VqW-?F}JS7DftK}Uf4>(ceEi=plgjS0fWLP9+9kxn$Ejh}PBE3R-D z-Zn!Oq-5kBVv$qT>R)r|Z#yp!4LD&LYDL!@+(%6lyqhF|do==&^VN<|i+slQUyM}k zG}Ks}7UQg2ac8FU+Jx+HbLzO6e>GyKIeTvNe!{j_^2VD+UD%lF4y}bw3Xi&@D^wUi z(_>4VM&NM zfrg^cKIugJlq4$oYvx7jiOz#3NqxHzKCyJ_zK5W>DP8Q=tYK?4AKAWIHA~m!W^Do) zNrbM#$zdHSD5{XqhC{dU?0T_~Gy>y=P#DIEU*I)$p)a@+R?-cYEM~DXATl_{HxZKB zSiNwH?Bx?yTp+d+l&UK@5+jj!hM;w~DJnYD@7hmVDMVXd2;@W}Cp#sg-GWMY5Qz&0 zcWQh``&+2}c&N}7uX64WeTE)8Or3&WRYcdkAOUZF{G5a8%vFa7p()Nhzp#eOvQp+V zxYu5{8zUs&Zf|BM`kKdDrRhgZ6?0SkCW(}S06qtfO5s|0BX#_kmoa!=RMYP&DWe|E z&Q)oAtL>NeYs{dK-~;IQ>wQ00-K=O`fATmQ)458N$gajm z$TA-R`-(U#7-VrOgF&_$Kjf>gwYUMmt6?%AXb=?15tY9n`5UR!xUzl4?K?(-SuPw& z&1T(ZvIF6JB25VBdg=Pf9~H4uLn=Fhq)Lmn5xGzL)@aW`aPxqLV6YrnTk*G82g@&Iw@arc-isk{EfW^WkS(cvi)Q|YGayl+zu^o%icXUtGu4M#R1C-5Y-swg zSG)Ti_SvDmO@_FO%?erq}iw}KvycPO% zM|6_(ylZS!Cr=*`@Cczm4D$QJ^pO82S zDT=gY7R~h)>SuKYNkNtjei~umi;E0!H~A%!p$7W{9E!2BvJ!(9xVilk6B4k3P{IQc zt~OSF(N#S>f@yKei?|lYh`M}JWdCR%Z+-o{G$$OPo{+vxXj7y-si?|^7ds?QEmTz2 zLW2BaH+=>CLqFlirA=$3PRfbB5q#tXKBF~fv_esv8Q`u~_euW|VevzGH z*PHVD)puNEV^PQw%Kd^&Hx|b)!(cxjET1ZzhMie<2u6;yeoIc#B8(HeI%MZ<&};?$ zlngP>IDaplMdE-Cmr8noXS^h>0y)eVBIaeZO^TVM1Ln@O{=obLu7K3={_C2Y`wwof zM28#Ln0b{+yOf>7YLO>3#4j~o`9mWt+Hfy%Bd(Hi&n4VREQMZ`sE-9iFQPWbycH`673l>*18YcFz{T5hB&v7Q5N7jL9v!Hf$r}?06*4CSa3b!nfix@y>s{2+tM# z@kosj#jb_&a)cCJPq$n4%CGA!KUqLp^O8c>LCm!syE2LIHh7fzP~J9#t;Iu5)ZI{W zmDzl)6}zU0-Y{VkQFhVx)0Um9BhJ;2kMNU^y!Iz{gdg4baSd9zV?>5&>T`^S+#mRP zPNeDHAKOcVmXh8Jw!n71>zKRgXv*48eHc)jS`FbvT|_e#Rbx2MF`4>_q2!Beh3j}|9zSt)r-M%#4w58GU!_NyHe95=mle=fX+ z8#9s^W-6>ySGY@jp=W3dGa6~?ASTjjGNR!>Hzf1xk8AyaN{)HK#W`iuBO{wf_KI0& zmK{qJw~Q8IA3pfNHB;`())MIrw_uSqrS>uqLF{_y1!Mfexm{H!`fHL&!))Q2my|CT z&ivS*X3Hd34c6Z$K88TTEzV3H1$?~D1CzW;|2cg|)cser>pP7v$3d+yO)ZO4YNh?K zuICJKlTZZvI3ypcj{R}gt#0cBzU8X&BhTNuStm>wQ?J#?4x+PU8xd>-*mD#!Cyz#* z&v>_r$#W66vTPSc%O2=SoX6`QdE4yqGjB4nK;mZAJfq_yn6Md+W9rf%rar+U_fu#h zHt{%SRA;#eRbTR%qntbb%C(-*`X0RQX}5*s-{9*rp~y<7^D|YhtW@4fgJYgQn=}mN zBg2!{P_Y4X1g)S$avjB0+69uyQAY6yI7oDvnAGR)urn4e#(KaaY16Ph%8 zOp3Nzi<1nGwn!AQ+1tS|C6e>;r@GYJ0aew>bLz^l>@&0m?Gcnn47*PPc9tKN`Q_8_ z#TU-#SGd%KPrPnA>wHO;PP|MUAu+=XGeo!e{*X#Do=zO23E z?a-9?E^Vg%inl3e&*0PMGT2wL6KHQF6Y>VrgnNx~O6@#?d9ZvIBu}`5bP8}h^{VH z@QHB05B7p1Tl9m*b)aL8%&H|=j`6YX->{>KN2}Ox>r{D<(j0z1iwu2OwhOB*lI}}> zccpTBSg?|l&946O{JyKhYoE@(2&;Tw_~J#k@~(!PQ)-0I zu-nx-<)Sy*=y^J!wsUeU>9r*t*zdkZn&)vCB)XMna=GXQA0!|99H6@ z4^)bGM`nla2iLJn_|B@<*ML!{i2O#SF5|nxTu{Aj$fmw%{x$){@Scs;C?M#$N;`#F zNirF3qjfMBqG~IJ;B-mgR@SmH5^K)f{*Ua9W*)_9RLwW<0?aV6I8pU)ejz!?H$wH) zBlrYo3z|DcVg8Fh`%OGF8Nw175~6)GpG zrNY~9xT8F>Am`ajYW|tI;PG{)W;^)^;VD;(2oWj6xL-)_{wFP&UMXbiRGUom(Di0` z?EyGU>OdWpA35;)OsE?O3!+6bOu|=$0~+OQY;43wfK7$=`ob*?{0hR3#u&M`piB3a z0jsx(=u@kV>%@ZlHzYaFNRz4_s^_b;At}lCp194cI-it!ck$&#g6{>Z92I|u56(r# zEmUG`RSqa0(044gnSVHqNuKwv(J;Q=&^#*4O`$-Zq-4m-Wmeg<+aWyT@>TsAT|t$0 z<8SmXr5mOY_`n25T(C88cgvM`CNc6zL&3T)6C0kIc24Zu)V2^^dJI?Rxwgsjbe8M% zY(i)f^ZRt(!M?7fW=JGVxrnW&a57?Q_{N63cpKrTMlLk>s^x)goTj!RRZl?UU8P&C zNf>?dz;T4ir4AG+hHc)D+*=M1uQp}X#`%VZ@P}w>i~c8u)ggI!#QBr2hH6rE6~xPR&i zKWA*zsy~Yx(AToN@Pd)-ow^00VG2fij*8|Of70?O5}s2keC7N`sCkZaa~ViJyOiJS zU6n9^O+m2rsZf}wtDyvY4!a@~*Wr_yt>0pdQ2e~I>7+RO;89SI;StB-apLmR;bB|< z%OeCwGt`c@rhbZ}-Vg5h8(ohJZu0uL40~$aLLr&@7yML>;_foc+^Bt+BZbqdL-nc+ zY*D2^eS=Eu1%qZrR8#7v>H(Ds{Od6|i$zbbG%dYTXFWchybum4`@oWsjuq0AjSJY$ ziqMy@hYKu8@N5DUir+H%HFg>72zo<&`%G*16Dm&#d zk*OJ9lwJ37IVvV+tbCB$;x~pKPcpG+jxx}?xBG1mYY(wYe#Iu|;n*D}9we;2o1LJm zZwqTg)DJy#u%m%BIlwK7s0v+Aw-qCBcDKIt*$@%;b9dcvX*lSr{xgq?p6;LGSjqUG zJ(AYL`C1D%5{6H!v3vaVXgu1fyqox*`@R)YMlw3#>KnQz)*3nvdn{uPJ*nuff>~HQ z{Gx{knPWOpY3D3v!^t$@?6|*5_x63No7&F|v9}#mDr__4o+mRtYwt;@bY^ExtR9}j z$_|8G-%=4=c+@=o_D zXpD0Asp%exDhq6j4siVSMx&q^{L%qY|GdXrhpwDv|DT(Uk!|j1hD_m&AIxz35t5&8 zQ$hatlO(#|^i2-9!n_mI_9tz}{;W}xggH_dW|}qTfgpO)y3Y6CA>~5vgvQ_`kQT0toI#BGM1||MN1^=dSThco&57y7sp18-dhGYSn)k+jk4UKRJgyp%&U(o8W?#JK#J#fD6;&VHzBSzD7d(d_dTRjjZIRoOo3 z`@yL-(|PM<$HJf&FGnAxM}!wL4Oh6d@|$f}#imov{=B{%gd6@^FD6yg$bHagUmsF?L5J>kx|#h8R*EUIuymdI`wx`Bs> zpD)xz$OdFaIt_)~3SB<4Y+)X$6Wf!NQB6^+Sy2Hk3|5Ns<5K-(iyPSb2O(8aJV&st z)aj|AG>DY&Me#g6$jHq{lv)QX5B<}Y4o-Z24TY)mjfmIPj;I!77v4G;9Rx)5^c}bM z<|TE8gcwI={Qkcrp8Hd1oSq3RpY+~$5Rjb7F9_n*f9#%8S%@dgYTmusx7pCVM0BS& zfkq8KLt|Ux-++iHS^YX4rqCi(w`b&gy6xC$n*!fTK6*%T@gAa zoAJiJTIIb){XEI)@@n)K+*RR^c4;SOgpOWig!c;!s0Rft`yr$7WmVaFf*dg1@V3z(;>gF?d=F zjwfc42kyN+*EH$)VZ82Cc(4odfiSin?pja`kHu-Mv6y7PtE_%ms`@S?7<6jEsS4+lx?;z*xdU>oAt& zVv)->X-%cv?oOU!5kcnD{Ey^&m@$m#P36*Gh*iD@Gf9&0Xv&#cZA0aFL^}zo)2*Sn zdm5ojN^+H`X|#STxRLAUNJuu;LK4f#1HXG2{9Rn_s!@?9Jlu2lE|Hj}j6iUjjUP}n zZL2^*xf=dXzsUz@iN;3DvKy)Tjv=76@5-xm$pa81FD0wYMDrLLM*Gam@o_H%of^Zs zA*RM|4EL3!$1vIP9=_fZtoJOs5=dupl;@Na#T*wu*JpVQjZko0` z)0W78ZN|~MHyGs?fLCo6utg4X0wZjE4iEWy)r{zb>p0Mk{?S(9+v@MWMC9CP6B`0N z`iS6?V;9m;)cqj^b~25hDq@M7a~DY3$*atUH02LsCH*;;i4wE@70Dh2?Uzd9U$Ap# zjOyh5{(v)O(|%d~mC-_ugnQzVNbPd1<`xOBb;od&qf4X3YgDp2TE--}$xFlu0$TxQ zD-W10Tid@;WcBAxx2DFqePcq&yDWZ_<4$!v`ved#Cvi;ZqaRAvq@GaQ!I6t*egN%( zv`jYPyAYRW(o&|-<;;@ELB&Ut3zP>resqmgc7#rR0SxP}`lq%TPuHRDwKPdtrdE|IS^j?M~Pd~(<^D|PYNvcRj5z-60vZV zp{0gX1R8W@@lXky%Xo-$oJwj#vNa5T{yJfGUqJG*8oMIfMeq!HMsX9$D!!@fQTce6 zxPFtMfca2dc6#vCi9nm*T0+mia_>OctH+#AU(IV66X4Q!HC=p*;`r$>+0&3r7d5w2 zY!#>0dRNCA^wkyNYUw1ZihOPM%iVGyg3-Lb;bhrbE-FeW;jBc>LbisLp%XYPyeV-I z+}iBrsj||%gW!G@c+?>gE8n~soH;~))B&t#R$fOXyQsgOXtCXkRA=sEW@F*z;>YLs z6n%wn9T@B-UfDgBq9~c4C%!O%9C8a~$UbX=-DCYA8+o{{xk|(;X76pMP z0x$UdMKWCWpMe*9{}p~hfRX$w042(bolp;EB_?^<);oJjD=1_IVdNv44wwvoocuG^ zOR>@`5b^2@oBcHkjW)_%np`$nldp#Y+(v|7-ELMC();%cNvs2eY2Fs<%@pBOx>=FP z9<_jEx42MVG-Y%C?hhQ5d_9*TQ|@KBI~-oYJSg5=-OzW0th@YM*fWME zU$D4U;Is$TRK>+402amzN)bzRLT{_oe`Ak3Ja5}zCfZYC9Bwvf&c6JLf*<|CY!ZP3(zX2; z0v?N9jq1F-#1(fC?rc|5!KGswRdTHNWN+E`@(W27r$Vjwq~4lPND{ctk#q5{o?sn( zT#|_^Ss~1w_Y}&EQkpd&^pDNh+1o0=H|uTb%R5D71*vIS+xG{dz87nxxnNew%6dE= z+C}MVUTGp*7go5?eA^6mwf?w0MOawgy0b+Cc9lr|KthT zql3vji#8O)F?P%_j-v63r<_0b6F=`=p;Uv`M$;`%8Pd5|@7gqglm%Lw~zfS=Bam_oddcUgOPMZ$d?Rx zy7ti}Sp?1erzHVO2@InKD=R+s7qcmNTieln-PS+96Gta-5_VNG(LJ>$qu)hIDLM~b zQa8|v<}mN(eUoV4&5vE%tFd|K43rO2jTIKO0bfz~1;Cp-%fL`lz!` zuw*SdXst_{mR+8jxM86o&jiP5Wal9RE>nt^xyj;WgM?!2yLRm`Bebf1=i`t?43G+Ii^ z!F4+Bs@>LLIhY8$umM|Cv=@x0X|t4WnsPv!AsELodyn->kt9qM#Vg(}8@b@1{C1)K ztkm?8J#4P$AY0;5rQ&J<_2Fw847jczc!4iDmXE`8!m3?SPQl1;g;0y_-UP_?JE0gT z$eZ&A#m>!<>scpRwBDkXXqkgnPL1M9z|1#(+Wto^F%uXLmXxf?G@ zSm;Y#<>D?#oYIEpvP1gpDAv2ALCuL~oEUk1rj@xRVH=@5{tS!N&0Tof%uqhu(#E!7 zEbGOJT~x?5I>u2J^MiE1A)(nbT~@1sbRlJ=f0o8Hm&L>McL6*HS&DUqG*c(H2|+jG ztZ&Fo!=rOLx|;Z8VM^9}oP!+_G7p}QN-7~2ztq1oExS1GBbhzm2?n0yR{fBxSF6-_ zK2V!e^WaHO9ndgdLU)f;VUr?!Z9$NmgqMh{bcSegsVTMl{J_jMn;6;Fk>tXBa^!qu zy7(&ur9t)e>n^<>|6ynX_^c~hEs2;25#f@_H4N~-1J;3abPz1(^H0}*y^ZM}M~WWx zoEl=WbN@a8Lx3`SI?X9aWvHt(3(`UFmRJ?GqEV$MJvXLraOIDztK`U#m%iNeB)b~I z{NUrYGqA?78pOpYajS%*;-M-s)6uZEpNY%GO+mwOkTgQRB_i&Gh&|bI3bEyKug$_l zS~7{A8nb43EOndBC#`0>;9Oct7ZO16?&ONTzOeUOm}-R@3%Dv_PKP&IuCUkR^--}O z+4LB)(aKS2bE6L3{Ju>vSLw!ZKE%qoAt^r{uY~aa>j*-te{w*0O#3_m5}4}=f$fD> z+I=7Sg*9@#%8Q`}CF9USc%SpnLwJI{d5}vB$IHtRHE<=IOB{n6q|P z=1E*N)19B^T&u}glcs8dV$x?dK3U^j@Gi|2wvp;R_Ilk~em6<`N@;;0728#01>Uks z`JQrwB9QItI38AOX~VALTsU^_VL4Jyy$c8?HpZsGCa%XM3vz{L7^Q92-Ql>p=KBp zRIRIc#`f@qTt%h4nsl1xos&CPb;(V9lNHDN7DU zVjD3q!C_K$ONLE=2?sH=a(Q^hotSsyyY$1#fzPabo!*s1Nxam#9>2ej{nXNIPEx39 zOj;BXg3yNSn3t-&EFpX6V{U^R81uR0HyYls(<$o#N9t@sQDa7pp19WmP8AD^>L3_A zg`jUex@F3XoN?dQcM2)7Z7xXF>N9eRUal{r{9N?W6j_8vSrx8S_5Ap$E`>8pxr@A2 z26C^BjXxwDJ0PYGi&ph%>JPeUaBGw^Xk=HrOvQaK>$N2O*Xe_`p&-w^6j#nvD;@OG zVrnz}6o)t9pEZZ4TT>=F%2d*U8^T8u=y*M{<+yZe_h*@`#wP!|D6YiozSt|;B(E?z zrQUUC%2|OzoOct-DO<3`OXSE8HH6+6(Nq%`@C$4mJ^1gaR{VV~06!c8mJ@~eFF#zJ zIA}^vtDGQp=0->$z_T+n8~Jcz29JD*^D!}_Ejvv3u(3o2c4}WaV9m%{eOXNgCm3X1 z^|8oOh{0Ry7Y7uUy~`Ew<|kSM&+9#$lsz<*8Q+4=sg}4cf>R{wE-6Ztg%Dc_P93cw zZuVB$9j>j-la!@KbWM8cmjGV`+@7cg=7B2oo1CyRnhoV)6R2d9QhCdKgt)R+jJ;NH zXIVWWx-H=60}vprN4gjAnHCmCybxqCx(u+J6^}Xo*5f&9UHgeNx^+NFd{0ThiNNbUqb?h|*^q%WUD6XXe~0K)<>>=A7K;gLB}( z`MCSp6~(nh2o*A(m9uen|GoG)>&!eg0ij4t!!n#$fFX>LHTCZEFZN(471Sudm|K|I zVRYUh546S)3}~|NKuo}a2njBd5hWD}o-#XIYG-GgF8|h3*njy@*s?m>hX(?!=_0$f zLNIg?-cz1(LSO5a8X^UqjH(VxfOAIY4(jqM?rpWsG5WMx(+h$TC#~hXugJNIY>LE8 z;-)_Zie~oRSzA4NTCQP+%u@`hZC1^F4K4bDc2|z06H2X)uZFV2`@W;?n%Ciy%j4`b z|I`_OWVR5VXWxRW_pmOFQGJ><&eW=Bd5y;Xe#P~n&YXe*WsfkaUouU#yz2sU8}ZE5 z20HRekiP+@;_3XP)WL-=~t7(v%j``km(R6xhLw#V|0ptu@TsG&o)Gf*!bXoeWRkyGh^ z9Fm*th0`m?DNZC1oT3-I=kOU56ww}jN*PqPyUERLmh=WlNe zeQesC2(<3ch!+h?uLA!G4#T5Llq&*9KIc5ZdPyU01nJYARaY9iNC)%#oLHYGCzM6c z2-2ZLN~UYEa89!GeFfbwYnP5mi1R=er-J-Hcu9q331ZZ@$iMkXARJqc-b=ZVFIfCh zj&voYVkuSEX?Ym5p%D?gn0}8GKQ%^X0*5q@RYL*4ms)7c)BJgEI8;%_I$pzo690x6 z49tWI=Sp^P(Cd;kv&ldfcWiOpEJ?3*;zx}w?z?_iiEo(^eVLo^#^KMNt*uwQJw=wH zlpOwe+D}Ov!!3Zh^f2J@w6)VW6NY;`0(q{IlIS2dVQ1vm7A0MJC z`;7vKiy2^cn~NKt&ZG>WM3b7?<%fTm_u~g1R4V#S2@*;p?xo0ChU7Uv6MEK3v-wFM zVD67#yNz^NoM3IMm8}+thRxJ$!ugyLr)^e?sc?iYn~s*OoLXI^dtWAs{lZt(M`9d( z<}CNicBwGNcC0WqC}OeHT(V$u z?%ZDEj)sux89oGyKQw|3#?z*y)NQezkH7)A-ZvhQ2S@AY$)W-a3m%m0Q8+|W4jY3HX^!}i5aPO}BF2Is zlB~f4BjDatERvCA5eNYUQe`?is%9*2UI6$>&D*Cl*s?`%Me&N$C)&FY@MsI)!w9yQ zPhuG-%jsK(?vbW!3A{f0#XfqK4q3I*5Ac9p_FeFUcj=PTJY|=Dmd2$$zu8bW7@zC0 zR}CVt8@mxAcZom}4lz5ofo>HRswC$SoSBut>A(3ovCtd#p>tMBm_s~C zcq)k-OkVv8dy1MM)MB%PQ;_@uP2w)?r|kTu^G^jI2sGsZ^K-{eE3R!J@&Pn{T6Wr0 zE%s%eStI1+>FC4@P&gM;!aCd!3iY(tCuX=I!WU_scu5;-S>>QTS=+(AuGtSr7?X^s z2ket{fnrOe^`m!J?HUb_RF|>o%g-?HPo#o}eB9_2ujVIc@f(5&ZX6cs$*4#&SxCYb z>B{LT-%&14SGI|IOLT9}y?$>q<0d#AeSY_=4kpn*U_>_fTZ+lek5$*NZpU1wue|(f z?>z1}(lk5kb~Ze&=`Xl!Xkn?Kw@}C^?$60(=nHmhoG_!*w}P5tDLeES`kd}alVLTe zEHj?vXk%t}8K{HT?2MC9#!zH2@EePk_wAzU^TC_xFuoEFxtCxp;6~OD9^|sWlkjCe zj5T##7?sO^NJa34AVs^*AmgcP7Nn+N8d>YrwjQWlpRpdnBER3q;-h9Ob!XzLYTM%7 zDwr6oJC|XFO!S((LQpORe~nOmoUYvH&&~Dn!%I!hyT`G)G#dK7M5F+zexZ?tfh&#Z zraL^B$zdWOmd80b%ojre#&1@au1jw=PxeJ;cf>tQ)<6a-OHF_&X*mJUnv?~#y3S8s zIRtuiC=Tb8p52R+|B7xY%Y^^WPwx;fo*Sf{sazQ%M5Ca)UVq1;J zQr?Mpf>GQC@LFIsLZ*mhWQ7Gn9N5`er_2r~b-k_B*nd`PllVe+RqwYYt9D@sJsBfB zLf%SZdv6)EVIK8Xi>R-4>l1J)1}lWZSWJuTn*xIOe+mfvy*|j?2BY(Ii`MU(*AUpJ zGnhImA!yp~R=Ne4wy1IXieKf_a4(}3965&})o zOd3r{q$^g1-1Lp@uh{7HBX9p`jn|A0gq+u_Gp$u{tR!9Rq^UoYez@$)IM;E2qv#^E}{LM%Fc*V=H^L5aoWMKXY#iOH zj6t8PH~zr>Nh_J3%^;b8(l6`Rnz=Gkv_oK8NBvGnZTc5kJox@Q1ZzX4SrWK&Bf6)w zU+*1ny31S1VOpd_jczUBS3ZU_Ypze$Rv$N1+e0nJZ`doTCi;*HT4JERC)&F%8w246 z?t(={1btjJyI-*a4}zy0LBAhJDeXRrCHPKNxI=3{+g3d;0J21r@5U^w;^rD}Ny1aW zJ@v_${%D1#b^@zsZjh5(^V{S*n_h%C;CnJ}!~>)sAW?$UkKiSYrK~jT*0V;hiNY5i ziF#dlHnzebkak>n6t0Xbaf`t|md($p zK00v?=ZkYM3KI9jrPOwWqiPwB4FlRk4|GeTYDBn+fpb={3<^Gl`;UUvd0IGhld7F^ za5>I^nw&f`L>*zq<0zTWeR5Ia~AeUA=o--A(qB6-1%&TPx|8*G$Yzo)Iv8@!-5d&)?2ll)v23sfg&Bz{5y_E}2`w zqRi@=8k-I6VcOX12I6)Qaiq(86Ctx7F=;UlA}|~iSc7U&Y_||p_&897k%cdLn)!~z zCh2h;NaPVv@Zs0oL|}CKi&5%0kVs@MrX2t|F;nED#o5Hq;rkh>KTBzOW3T-0DU4?A zn}jL*YkNo7i(+Ritt|OH8j)ipZ=)vz!qo*W7ZBa})T;@g#w>&d*za(Ha>n{lad`P{ zn%qB$dMI#dskQw`gx_18quk(rfJq}rg&6*hw?XSlWbpjWjWBHMfkOXL6#CLEq*?pU ztHHN^SPR|aE5^f79s2Rv+3$VYDT*G~!L|sUJR=YuBbK5hsg3(a31mm{YE?#H#yI`p zdsNbK)qbWps&su$Rv-h@@&ml5U8${ISiq<|2SRe93xX^?Q2;XSPZ=!xhpaR9!Dn=> zCsp)zN393@)=bB9U!{@Y661NAxVObaM&+{;kXExDNPU{1at)Z@P#5`VcPAcgE|!NU;~tB+%Y?4Y;@FSQx#=_7mlSPX zyKqIkH|;*wZ8hrY_TZN`dC`G_L>DuSM1vcru^CTW)1t*jCu;FK-14|RKzJ~$m)_92 z^XVH>a%8+outOJSaHddj8?%rpCq1v<=h;wx+a)+to~GDx)%nnunQ%kJr&(+4BX)XH z#;s*9D2oc}JsUJLVCaIPaq&zfwSm{iPS{X|ZDTD{g1#ACq*P!dOh*u41WV3X#YFeARw@~LXNb|cfsaOdc!7cm`l z#HHQl&h@hT!j(%u?@X@u&2I|yzRRC%vmaKkyZwGMcyw!`D`z+q$R_P1L?_;85H;j7 zVuz4seS7VaJ#t9hD!d|N#|7OjYY0WgKbGN4a$Yy;Do60nOOdX#_Gfwdm5=Ao^J;Se z(ej74*#0l^s{4;JA{)h@i=0SpiY_qyUTs8_7URYHGA>I31}$pxBUI__$o9@8;)k;O z##!O<{m}7W(06lw!1Q`JZ;OXaLEeM323a`5AQy7?s-C*lGH$b_c?hNRY4{=a^*MFw zD@r7Lw1yk8<>%0TcX@b@wr3qt4;7)O`7e>`hApZP);x4NtUQvkz40>A zo>Cz)^pD8h1QT_rA2i-?V0iQAuI(RkpeXn&^r|UFhZygY4hwl4w%C^ZAT597RLUKQ z)H*8fvo6El6O=g3&yvyqC_1mL62c#dd`bSza-_L3Q<&H-2Kym$=fWmht#X|NL-5{LP+f{+uNRMb zpqV0-V?pheMR{vCGKlVo92hII!$3D+>g1sTThC76dgIQCx}4{ZX{PPz8O(pS{XJI; z<3&p+_~KP@xtr|-Rxwu7T%jm0rQa+1NTVQQ35z}JZpH^QJ?FAJANwgvdTqr&}ojR zuJvN<@^KXZ)w#Hm9#z2p&Q9D{*GW`18uYtK!A-#=^0;!&TYJKj+TlZMEX27|`!u=Z zr^+i8(qTv>RuAC3Hb>~!ncqSJECAe?bzVcx z#N!+Al;f4xGMoLc`GUok31ZJ-67^s^~EMug&LF!c?x_f`QNgQ4iw8z>3Lsb&oB;;yADxyXlpSR7OB8>t1u`c zz>6 z;BlULcI3go8}mmQeAUsdtz41iNc9Bv{$=Q*$$=Vta7)Sz{{$fvr`v0m+!DSfyn{ zuJsuZyYTZ!|IPh3CJ{L^`Q^FbtG*ei<2vOx?;#8c`_4r>awBAUu#}! zlpc(}mi(ga)Y`mVs`xe1rA~G#`JV|&Ny?C?c`2U>1i7ep}*lD-gTwwIpiPuZpl z8>yxyF>4#$safI8V())bTCI#0IWLZ?^o)}lpiE)OwvnJ;AW}f*!xNWu4rS!%)=sf9 z*@)zpQ}upiw-njCYOxBi)a)kKU?9=I^Q!l#KuK7}$sX6fd(4voem7__bp}@!+DSPh zSHrK_zf4?$3SynvB9u0K#NEYtWcB4Xag=D1_0o1yAzag#^65V5uoiwv9mXKh=1KlR zORXMC4$ge@Y`5CbjF`wO1N_c&FB!fltw!?Fx+Ug0gOKQP7x1#0vZ``FRU+#YS|gdZ z(>%4%t^uS9i`ugEHc@{KUVOvMPCzM8G8+n5PbDvl;Xz}-nzOl=@NgSv4pKyn>I+wE zj0-O+Q+WpqpE<(;ojeeYBo^7!pCtddIaWp-SPp0FVIJ4Sz~C#rJ-p67|39U{&82RWsv7(0o6+nmO;DoYfPJzM@5|Tshxx)!pOE)yG}N&Xlf2U zW?%ZoyzgnJbM3)`6))|;=+G7&gCT)XZzY6*LGre!I8R@jQ7Vh4Vvx@lTz+(=A7R0f zM63iHBN$F$q`j`966{VP?CHDgG}bb_kUo@JdqnBV(m#N_q#S0eyWDwojStktzn_54NO(ahjlSmmi^JY&BBE5o(Rt+;+R zdss1wlMgr=eD+S>`2zW^@h9LQzHAFPHtm?epkSg1ajujrn(FE9JdH-Qjg8y7 zj)F>_5x?STq8+X&-cf@7R-0f#N!O#QT)v+VN@B%J+!tpF*J%Nt#r1m^*f0|+e^~;3 z$5@3 z>4_qD1wVd%x+)QTJLt|XCCRS{FTc@u06vcnx3aUkcy!N~VbQsg<~`TL zFs$_t0T%7Km3!aUucsu21}c*F#Y$%BDuby!8hdr@M-plum@H=|0-7?MSTq+(_4>v- zpz%V}b3VSj6S7338+=eDn@a!OSiSN>@g5=-!2;QK64);Wj!5uAfNK7Z43}HY8{q_+ zuOPKNkA-_u*`xHX2ZzIy;4kDW=re?ke2oU`-yR@4)R1)(_AFtTb!Gs}T%y~X`z&Pg zRLv<(LZUXX5~kE}k9I^T3AbQblIzB>L;Kb^WF^!@N`D@cds(HtPDk01mAG>DM7yC{ z&Qpb%TDJ6cL6)39x(?rX_^u3#*ujoo65t5zI{Ic-VCr%zYf>ke`7aGmlkBheeXE-j z0k>ttAu|`h_hBDT_fx5)O80NB>e_aCW;m|IStY8s{9zmVq0uF5_&lxnMi@VIJzRf~ zC|5QS%chn`#R3bxI4m4NDQAY4d>`?03^p)<-X{A=tvklvdWE-1T-|eYK{)1;PD)@< zNr=};njy?koH);prb`LvW-GhC$>RJF*609${?0_35(Yp42QXnOMS!&?eo$|J9Eg9r z56MXWRn`avU}3{KUU*GISzL3;I%__ckn_ThTJfS1e2v7%;kzWjy6@<{kDoe@fBrek z;7u-mz?S^o-9{$dpf}NTy869BjSsuBVFGeov3^0#r*Cd}l;+2qlk=!`FcPJTTK;b1 z-wnTWp`r-$q58&CQAkR^cEOqM=Wd8Y>#ETa@-eEtD&@D(5$HD6s+zzI(D{d%wzG{I zX$ufd=dIRSAM*M*KzMx7EL(b`t?ZO=$evM@rW|(v%=cP&zizu>LJ=!Kwvm!Bz2Hh< zH9df#uBZFX`im0R?x(Ng^;LAV=J;`HWB!zfVYCpVsUSzX`}`~i9l3#k9yRV=v1`&7 zw%Eq5iF0gJX*t(+6#Rt8N)CiA`!Qxwv62=4F^Z;J&-XYw9k?QE;2&${I+wYuq14{1 zf`R#@&Xf_DmOl0$dL97Y1C=?v;gMFg%j2>&za7?mT#W!o(XiL*q-TRE?Zeu{o^YeU zXqWrnW&Hdm>{CQMsBko}FojaoE(!_d&F&@hZS3+P&LdMxg zfkM!$4Uey{@Ua<_{FE!I07MuE;g#TMtH3;tMb7EVGq$K-IE00&^RE|o@s#v$ygq`mb1m%VYs z;)<{j3jB5_I1m?=Nb$Nog1?p37aB8uhr|{F5T+rocgqV$E=o4{8IPL)TTqWZ<)z)c zvK*#9gM;h^xI$<@5OnM>{jojVwJ#XiW`ws-H!&S%4yA>ei-)~xtw%kG;}CZXs(5T? zYm6fw$1c4(?5d7k)=6927F5Ax4XG>;yh8cIVAf&D+W>1t7MUYFoee^T)kIDxH4lej z%~M0LMtL%YQke-6H{!gou?0KHfEF|(^&xlML}XR@-YZJTIl{0Nb2vyhgU~-i(Nge) zkqRMXo-=eA7|?(RQO;DB{z54Fb&;Il48Bri@Agi~TaFY&Hc^T0&8ahq)hAQOK|T$zTrk#%#ByZ@2L&> zQG8p~=v#&_@6*VfiDtIzA#9u*Cq5R3Q)KBDj$=c^r}fv>_=>F~5jzGgbii!9UP>m0 zT$Xr!Ug>k$x9Zs!issto6Xl@~RsOy1LnhoLhFEQrR77)?M0Mn>`z~fg!%3S4mE`w` zD|AemDyNFITm}ml6oZzN>AlyjsoE`nZtm1=Qaveh`4!2sEB64PrBN7RMO`}yYw5Sz&>ym9zP zcgP~l0T!=>ePcY4IOeJY`&vyaYd)1J2#sCJ{n8gNgg7N!Bz=F-VGAU9vMn3dfw{19 z+`75cZ<$+y!-DX&=uHq+J}Uk101=K zUEA8T)wUavrZ%cB2^172ms{#M=~tUSha#9`j|^D0Yu@#Ky+^=5o{>oC3_+2wsBP)< zm&s-F*Bd7sv!l5%L+mC$3xSdIxV}LQ$2XmyYHmm!TiuF=hiWY`b_nUNVL*aBzEk}e zndhpxvFU6^B2nGHDI=V{7jfU$DdF|wS23lr-;`NWgEb7effFQ!2&k38GxLBf&<7k? zKzKi~jdM0V*lz8}LuNz1CK7 zFS+y9;?GQ-y?tIJ^#w;kh(mhZ2o#4f&BWIhq0X@>2-y$~9a4cp>%ud!q8%sDC>ohoCDfe`;j+Z|wo+ubY)8lFkt<;xMs#F)O#t)q0nAsf zoQ;>p;A^T0HmSn9Xf0J)AHrj5(BKOkM476}zOH%Ve3WLLv*_1k=Z~uN%84m@qVK7}LAQ1n=>LKqEN>LG9lkQ02r{48>}zWnKZi^s$(ukw3IJh)1Z z*v0r&uS|PJ0fqIZ3tP(=RPs_&qJln*epn6Ndd;)-;ZcOl3_hTZ=Ty~-d^#KEZ;Z!l z>ckGm9krYLFfS98JR7RO09TO2!hU?bd~h8M)^WspPE-taQkv!vZq)8qH37gkP9cL> zrdhv=h|4K*h}Y`~==}s=bAbv7Ph{GuBlTa8n1FQeK|B_XO*W#Oj=s{VeNnuQM2j;Y z?c)>V-WqPgwh}WD0GBS_syFt5AZiX&e7ITT0OPmj|k5uT8R&6!NcKLK~mb zl+EQ3m6aO3&&)z5hlc(kM&vs*wF5Tcw+xwhDCF-Qc82f|XC`dhJC*Eg{4?^3q{Bqb zA!&UfXhixEJq0acha4RyjJBDr%dSOMW+?L(!~mE0Va4TDaH6Leqysm@lm5K^K{H8J z{R)EYG5})7N7?yvSXS&_qqCV<|Csay-j&|EqAUR24$Q?G%tiM9q*5l-ce=+QhGmKJ z#8x0aunz1}x_|h5R1T}WGxfc)otK@ke|gtuZ@?DPxJ@2!XkA9pDe*ZI8Yt~PmwoVc z1I_pe$5YSl==q8Els4Bgt=r&J(^8{B&&~oUf{XmcsTX+@KkJ3MDLA5iA~N7y@}n0$ zcL*!SMNVfkPFh3M7Zm5xSM_`Q&igX-%JEj#t@syc8xfrozF15x}3-RfA4Il%E1$*3BGI+xDvlwsVV*;7nvZjMChK}%pp;3m2HKzTT4b;qKa(w2h-(7&2ve-=RJgmc;ID@|JGXeEOB^&1t4mu!R}+BO6HkF6L<^ z1jXjEC2dAZZZ=t2Dce(8;+My8kD`Sr&Dlx`Y==HL&v#Qf#8Wl8imp0051MZ?+ETHo>_tt6k1@?& zVo1C4NQH9)xS+gny4|HuY0c!&I~`cBU|1V|=PT$9P5zeLs#AKhm`Z>=k3%v{k9u?C z)aqfPEc#W~xS2tfW7lTuG8HLBc#KHS3+)N{ZUaiH*@!MF@JT{3+iD2LQcB|~vwQ<# zc31{9RXcfEe!xTtk$3`;!V~N5W})?hR`oVZgn!Kk=Z?rVm*EtKEv|Oekn=j?;&F|g z1dhHKs_W8_R=_IvQZqMc0 z3>u6y|LN+MF*@-CBg8fP5e_H!(J6>a_EyO(4W$^qdEi9F)~Hj(?{bjg`+E=x2V;9k zv^jy(*4JE%qow_H?DPCIs8}vIgu>1&`sC9Z}yPOO}}g&jo%nkKCRlJfcbL z0<&y;Rc9YsIKTVOh+Es(Yy1aX|3UqDHm<~&cPhvQnuu1BKZJtg{R?^PzY?XdDq^1F z+1Ck+Z#not?3kzu)5<9uI~;uqz8qtCt-BS|KipMyg+i0+w{NvjJ5$_`Dv0ycv72S^ zkYgLoESd6P7C8CTxeU4RMH{!vz za~hx9*z>yUo@C|bEAmIK`lCgY559L{d`TbD4YOK7*Hol}8jh3F5ej)WqMg*vk+}dC zR#Ttz6gd;JtQ=74%kHx2{^D^H>5}3!#*gIq;Ze(-kJF_wz$w`Ws$bc5aJH$s0Q`sb zW1{V~9+V@utrnkPhiEdc#(Z!+gLw-kvC0n)IiNp-jp@sG$L&&s)G~9p?y)i(#&Aaq zrFXdUBI8yo(>p81o_gKG)wvP0HLw(B@p8bO1rB}&NLdg=@}q~ID%Ts=hRMlJQV09x z2C8ZNbB7z(0dFy8H#U|tr~aUpz{_QXK1%A+WHjy<*`5(2dovU!`JU9|yd#NM9s-)w zV8cziTy?gjg4&JN^SK>eOl_u9X1+ZZ%M)h$NVM5a;;#nrcq!OlHMLjiS0xL8S}NOp z4R~+Ht?4+=HCIn6eR}W3cp?bBoPF3GIflN)ty>U>aVg z5upHtUlzqE`21?Rk|6 zUmr23rwDK2C{!RrDth&wjSlu0d*{&L*95Q|FM8gY|9tYQW;oV>9@uSuQ{J$T2Y)Ug zVMIWqC7v1nME|mHamVW2=ysVUHqsn}%V_Uv7QY-rQx+7m%1`mVkBErDTHoOIX1RMr znSi=IZjK;}CK)&rt8`DVdMJ?7yh?tPZcuUAFODuRyw3ixa3^6SoV)WY0Ty>*yB*~A z*ym)|+(o~>KcVo*S+KgG7?gBDKD7j zHe3v9VV#Lp3dLTk!E2BhR`J+-th=JU;-V`R*Bo7Klqj*}XXiQYi?1jfv{2j^)Ztv~ zd#CT}UDsizTu|qqKRet$A2`HB@G!-b_YUO zo4GKz6_J0a^)r(e{>CP?>c^jXnS5Th9j`t_Q{tEPy+@%c;ZrCFZJfryos^wzlm!sp z9~?!5y;`GCHR(1OXt(yR$0by(?bpa(_ zf`#SwTX#j`bQ=O~mp#f>L`9hI<9h};BJ|#p0gK`Jrymv39r`MxB6gjGUrn;5vX@Al zNxYkniAXN9i~%$&L4l@j#YW%yn7F?y^59z-mL|$2Dsv0In#P!^0S8ZGI=Ox|0GKwx zrkXnhXg1;>Cahv#B~_wbF0m2M30vxE)U>JHm7WK?}kbdMBbYcLEYy|73)xre<9PRB_-w zleMK^kaV+~RVy~);xFtT#lAe3F*W22j1^`?`dc1mY$o;6K-BV^%9b+vCmc7~8eeSg zDUv(%_>+S1y*#ffmwd`>i_-%A7rF_>K7|#lWEPN=0i)yv`K|)_g2-IUBL^F%yCp+w z@6vGQF6ZN?a4UlWrZ09c3N|iH5m{mTBL;mn{z>kNPNM;GClw&|H^RQID<>uiwz1^| zGW*l|*{K)m4pe-f9Sv-bZU8qW+%VAQN;0`t-@m znum>K#`rNEGR<`5kF^V}#H&D8N{dlnemn*3r%ueA%m=dcuT(oFZ1(eGD*|ILn2F6$ ztU3Ij0d}1L0N^*6{@I*_jFozJ4)b_>fEm3GCAWx=FaQ0`r8a&o~cxAW%p-QiShCl{E)k3kWOr z6`)R#_6X%e*ZB4?Pf#2TZ_4psl0|9i-YKwc5)20^khxyQ7`7Op7iY;3A5J&pG2Sqe z@5uI~MkG?1h6q1*VJ|@yiQ%{Rw#D%Pzr4Sx&lvTQIsoMOfi=DbYkcz0UxVmiW)m)K zWGe?QwGw+<*yw=*|8xs)b@VD9L5&=CQ|))!mLN?M5_EY>(=i2yaCf8!vv<#<%XtbVT?@Y z*JY{Gb7HEIZk zHO^bjnBLvYGthx#Q>Hy0{ldvT2u6dSDn6+byycX*XO`rAr#WMZv|Ru?r{!xI#k#ek zIlX_yp_g2Xa$%fWf1J`V=pEYja)ETh%eUB*6R7%%V}~L~k(Y|#YvgRodlDr8VG7f( zQH@9PBk0zvU1Y5XUr`8CIjHRGEe!{mS8|?d=X%ZLFIS@p%x;>F=;mYsC=!7E@Qs8` z-5r8nPb{gZoa}M}i~PDMBV6ozNVuA73!gGKpr&Gv0Y(W(Z=s zta7Le+w;?#?LAPG(`FjY(at0HuA15#@$<%dCM{)^twM_9aO!V}Y4CjP5THGVf9``L z$zq~Ra|ex87R1g1SI*F58n%`Vxb`+kB}AkMXn;fTLj_=hFSGo6Ik&s~$v9=z1rO7L zha>*E%46}8_!f@RsSokhw=w|gS!1#vZvfD(U}0tv;C|n~s@2{O|7&3Y0$KMg@t$%l zhlA=l>;|3zgtp*ISVcf*41cr_0{f?+AiY?=Z+w&F=xCJ|$3y8bG?sj^K=z*HPAaiH zhBjZohyhT8Gr0jY5TM(U|5WjF36h}^f*tc7B_Loc3Jy5~p!R2Dq5#XD{HLsFEg|GE z5OwItmyiWu{1Ge$R{sv^Z!s2=f2sfHP8i@}*?+13_puca;eQMN2dh8AlwjfiVwKn* zQa|L>%xQ}-2CxD^fXV(#uH-+N{tt2=M1bdee{h1|w1dBYh5vmp2DsD{A$6D(AeaH3 zkU<1=|7Qu2{5M1-3)kKv_t=G0HTrg68E`}SKTIeg(qaFbNxR_H&`iCP!L%a$0D$e! zyc7`WfPX{z%PXWflKfA0B49C0uo%NX+3A9ZF~GxrQTivlbiltM{k_iqu={hX|7Ow) zbBtRHXY%07QQa{9l-T1kVO$hA#U* fGDH81&VMjN|2Ld}GDH8LVEi{T^ppQLv+w^4p3Qz_ literal 86006 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 C(3k)K diff --git a/apps/sim/public/tooltips/auto-focus-on-click.mp4 b/apps/sim/public/tooltips/auto-focus-on-click.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..c49f9136f384525ea0bc75892ad3d89a64719cc9 GIT binary patch literal 16427 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%0A49ir+?!zU&ffQV5*mE{fkwny@oT(cM;$Cx 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 literal 59457 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 AlTdK_q4w_d_c| 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 'childWorkspaceId')", + "asc": true, + "isExpression": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "background_work_status_meta_other_ws_idx": { + "name": "background_work_status_meta_other_ws_idx", + "columns": [ + { + "expression": "(\"metadata\" ->> 'otherWorkspaceId')", + "asc": true, + "isExpression": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "background_work_status_workspace_id_workspace_id_fk": { + "name": "background_work_status_workspace_id_workspace_id_fk", + "tableFrom": "background_work_status", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "background_work_status_workflow_id_workflow_id_fk": { + "name": "background_work_status_workflow_id_workflow_id_fk", + "tableFrom": "background_work_status", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.chat": { + "name": "chat", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "identifier": { + "name": "identifier", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "title": { + "name": "title", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "is_active": { + "name": "is_active", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "customizations": { + "name": "customizations", + "type": "json", + "primaryKey": false, + "notNull": false, + "default": "'{}'" + }, + "auth_type": { + "name": "auth_type", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'public'" + }, + "password": { + "name": "password", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "allowed_emails": { + "name": "allowed_emails", + "type": "json", + "primaryKey": false, + "notNull": false, + "default": "'[]'" + }, + "output_configs": { + "name": "output_configs", + "type": "json", + "primaryKey": false, + "notNull": false, + "default": "'[]'" + }, + "include_thinking": { + "name": "include_thinking", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "include_tool_calls": { + "name": "include_tool_calls", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "archived_at": { + "name": "archived_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "identifier_idx": { + "name": "identifier_idx", + "columns": [ + { + "expression": "identifier", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"chat\".\"archived_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "chat_archived_at_partial_idx": { + "name": "chat_archived_at_partial_idx", + "columns": [ + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"chat\".\"archived_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "idx_chat_on_workflow_id_archived_at": { + "name": "idx_chat_on_workflow_id_archived_at", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "chat_workflow_id_workflow_id_fk": { + "name": "chat_workflow_id_workflow_id_fk", + "tableFrom": "chat", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "chat_user_id_user_id_fk": { + "name": "chat_user_id_user_id_fk", + "tableFrom": "chat", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.copilot_async_tool_calls": { + "name": "copilot_async_tool_calls", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "run_id": { + "name": "run_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "checkpoint_id": { + "name": "checkpoint_id", + "type": "uuid", + "primaryKey": false, + "notNull": false + }, + "tool_call_id": { + "name": "tool_call_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "tool_name": { + "name": "tool_name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "args": { + "name": "args", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "status": { + "name": "status", + "type": "copilot_async_tool_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "result": { + "name": "result", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "error": { + "name": "error", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "permission_decision": { + "name": "permission_decision", + "type": "copilot_tool_permission_decision", + "typeSchema": "public", + "primaryKey": false, + "notNull": false + }, + "permission_decided_at": { + "name": "permission_decided_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "claimed_at": { + "name": "claimed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "claimed_by": { + "name": "claimed_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "completed_at": { + "name": "completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "copilot_async_tool_calls_run_id_idx": { + "name": "copilot_async_tool_calls_run_id_idx", + "columns": [ + { + "expression": "run_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_async_tool_calls_checkpoint_id_idx": { + "name": "copilot_async_tool_calls_checkpoint_id_idx", + "columns": [ + { + "expression": "checkpoint_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_async_tool_calls_tool_call_id_idx": { + "name": "copilot_async_tool_calls_tool_call_id_idx", + "columns": [ + { + "expression": "tool_call_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_async_tool_calls_status_idx": { + "name": "copilot_async_tool_calls_status_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_async_tool_calls_run_status_idx": { + "name": "copilot_async_tool_calls_run_status_idx", + "columns": [ + { + "expression": "run_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_async_tool_calls_tool_call_id_unique": { + "name": "copilot_async_tool_calls_tool_call_id_unique", + "columns": [ + { + "expression": "tool_call_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "copilot_async_tool_calls_run_id_copilot_runs_id_fk": { + "name": "copilot_async_tool_calls_run_id_copilot_runs_id_fk", + "tableFrom": "copilot_async_tool_calls", + "tableTo": "copilot_runs", + "columnsFrom": ["run_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "copilot_async_tool_calls_checkpoint_id_copilot_run_checkpoints_id_fk": { + "name": "copilot_async_tool_calls_checkpoint_id_copilot_run_checkpoints_id_fk", + "tableFrom": "copilot_async_tool_calls", + "tableTo": "copilot_run_checkpoints", + "columnsFrom": ["checkpoint_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.copilot_chats": { + "name": "copilot_chats", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "type": { + "name": "type", + "type": "chat_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'copilot'" + }, + "title": { + "name": "title", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "model": { + "name": "model", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'claude-3-7-sonnet-latest'" + }, + "conversation_id": { + "name": "conversation_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "preview_yaml": { + "name": "preview_yaml", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "plan_artifact": { + "name": "plan_artifact", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "config": { + "name": "config", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "resources": { + "name": "resources", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'" + }, + "auto_allowed_tools": { + "name": "auto_allowed_tools", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'" + }, + "last_seen_at": { + "name": "last_seen_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "pinned": { + "name": "pinned", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "copilot_chats_user_id_idx": { + "name": "copilot_chats_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_chats_workflow_id_idx": { + "name": "copilot_chats_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_chats_user_workflow_idx": { + "name": "copilot_chats_user_workflow_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_chats_user_workspace_idx": { + "name": "copilot_chats_user_workspace_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_chats_created_at_idx": { + "name": "copilot_chats_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_chats_updated_at_idx": { + "name": "copilot_chats_updated_at_idx", + "columns": [ + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_chats_workspace_created_at_id_idx": { + "name": "copilot_chats_workspace_created_at_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "date_trunc('milliseconds', \"created_at\")", + "asc": true, + "isExpression": true, + "nulls": "last" + }, + { + "expression": "id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_chats_user_workspace_deleted_partial_idx": { + "name": "copilot_chats_user_workspace_deleted_partial_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"copilot_chats\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "copilot_chats_user_id_user_id_fk": { + "name": "copilot_chats_user_id_user_id_fk", + "tableFrom": "copilot_chats", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "copilot_chats_workflow_id_workflow_id_fk": { + "name": "copilot_chats_workflow_id_workflow_id_fk", + "tableFrom": "copilot_chats", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "copilot_chats_workspace_id_workspace_id_fk": { + "name": "copilot_chats_workspace_id_workspace_id_fk", + "tableFrom": "copilot_chats", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.copilot_feedback": { + "name": "copilot_feedback", + "schema": "", + "columns": { + "feedback_id": { + "name": "feedback_id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "chat_id": { + "name": "chat_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "user_query": { + "name": "user_query", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "agent_response": { + "name": "agent_response", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "is_positive": { + "name": "is_positive", + "type": "boolean", + "primaryKey": false, + "notNull": true + }, + "feedback": { + "name": "feedback", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workflow_yaml": { + "name": "workflow_yaml", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "copilot_feedback_user_id_idx": { + "name": "copilot_feedback_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_feedback_chat_id_idx": { + "name": "copilot_feedback_chat_id_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_feedback_user_chat_idx": { + "name": "copilot_feedback_user_chat_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_feedback_is_positive_idx": { + "name": "copilot_feedback_is_positive_idx", + "columns": [ + { + "expression": "is_positive", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_feedback_created_at_idx": { + "name": "copilot_feedback_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "copilot_feedback_user_id_user_id_fk": { + "name": "copilot_feedback_user_id_user_id_fk", + "tableFrom": "copilot_feedback", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "copilot_feedback_chat_id_copilot_chats_id_fk": { + "name": "copilot_feedback_chat_id_copilot_chats_id_fk", + "tableFrom": "copilot_feedback", + "tableTo": "copilot_chats", + "columnsFrom": ["chat_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.copilot_messages": { + "name": "copilot_messages", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "chat_id": { + "name": "chat_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "message_id": { + "name": "message_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "role": { + "name": "role", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "content": { + "name": "content", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "stream_id": { + "name": "stream_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "parent_message_id": { + "name": "parent_message_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "model": { + "name": "model", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tokens_in": { + "name": "tokens_in", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "tokens_out": { + "name": "tokens_out", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "seq": { + "name": "seq", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "copilot_messages_chat_message_unique": { + "name": "copilot_messages_chat_message_unique", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "message_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_messages_chat_created_at_idx": { + "name": "copilot_messages_chat_created_at_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"copilot_messages\".\"deleted_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_messages_chat_seq_idx": { + "name": "copilot_messages_chat_seq_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "seq", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"copilot_messages\".\"deleted_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_messages_chat_stream_idx": { + "name": "copilot_messages_chat_stream_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "stream_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"copilot_messages\".\"stream_id\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_messages_user_created_at_idx": { + "name": "copilot_messages_user_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "message_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"copilot_messages\".\"role\" = 'user' AND \"copilot_messages\".\"deleted_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "copilot_messages_chat_id_copilot_chats_id_fk": { + "name": "copilot_messages_chat_id_copilot_chats_id_fk", + "tableFrom": "copilot_messages", + "tableTo": "copilot_chats", + "columnsFrom": ["chat_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.copilot_run_checkpoints": { + "name": "copilot_run_checkpoints", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "run_id": { + "name": "run_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "pending_tool_call_id": { + "name": "pending_tool_call_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "conversation_snapshot": { + "name": "conversation_snapshot", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "agent_state": { + "name": "agent_state", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "provider_request": { + "name": "provider_request", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "copilot_run_checkpoints_run_id_idx": { + "name": "copilot_run_checkpoints_run_id_idx", + "columns": [ + { + "expression": "run_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_run_checkpoints_pending_tool_call_id_idx": { + "name": "copilot_run_checkpoints_pending_tool_call_id_idx", + "columns": [ + { + "expression": "pending_tool_call_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_run_checkpoints_run_pending_tool_unique": { + "name": "copilot_run_checkpoints_run_pending_tool_unique", + "columns": [ + { + "expression": "run_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "pending_tool_call_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "copilot_run_checkpoints_run_id_copilot_runs_id_fk": { + "name": "copilot_run_checkpoints_run_id_copilot_runs_id_fk", + "tableFrom": "copilot_run_checkpoints", + "tableTo": "copilot_runs", + "columnsFrom": ["run_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.copilot_runs": { + "name": "copilot_runs", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "execution_id": { + "name": "execution_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "parent_run_id": { + "name": "parent_run_id", + "type": "uuid", + "primaryKey": false, + "notNull": false + }, + "chat_id": { + "name": "chat_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "stream_id": { + "name": "stream_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "agent": { + "name": "agent", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "model": { + "name": "model", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "provider": { + "name": "provider", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "status": { + "name": "status", + "type": "copilot_run_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'active'" + }, + "request_context": { + "name": "request_context", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "started_at": { + "name": "started_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "completed_at": { + "name": "completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "error": { + "name": "error", + "type": "text", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "copilot_runs_execution_id_idx": { + "name": "copilot_runs_execution_id_idx", + "columns": [ + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_parent_run_id_idx": { + "name": "copilot_runs_parent_run_id_idx", + "columns": [ + { + "expression": "parent_run_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_chat_id_idx": { + "name": "copilot_runs_chat_id_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_user_id_idx": { + "name": "copilot_runs_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_workflow_id_idx": { + "name": "copilot_runs_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_workspace_id_idx": { + "name": "copilot_runs_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_status_idx": { + "name": "copilot_runs_status_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_chat_execution_idx": { + "name": "copilot_runs_chat_execution_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_execution_started_at_idx": { + "name": "copilot_runs_execution_started_at_idx", + "columns": [ + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "started_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_workspace_completed_at_id_idx": { + "name": "copilot_runs_workspace_completed_at_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "date_trunc('milliseconds', \"completed_at\")", + "asc": true, + "isExpression": true, + "nulls": "last" + }, + { + "expression": "id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_runs_stream_id_unique": { + "name": "copilot_runs_stream_id_unique", + "columns": [ + { + "expression": "stream_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "copilot_runs_chat_id_copilot_chats_id_fk": { + "name": "copilot_runs_chat_id_copilot_chats_id_fk", + "tableFrom": "copilot_runs", + "tableTo": "copilot_chats", + "columnsFrom": ["chat_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "copilot_runs_user_id_user_id_fk": { + "name": "copilot_runs_user_id_user_id_fk", + "tableFrom": "copilot_runs", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "copilot_runs_workflow_id_workflow_id_fk": { + "name": "copilot_runs_workflow_id_workflow_id_fk", + "tableFrom": "copilot_runs", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "copilot_runs_workspace_id_workspace_id_fk": { + "name": "copilot_runs_workspace_id_workspace_id_fk", + "tableFrom": "copilot_runs", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.copilot_workflow_read_hashes": { + "name": "copilot_workflow_read_hashes", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "chat_id": { + "name": "chat_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "hash": { + "name": "hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "copilot_workflow_read_hashes_chat_id_idx": { + "name": "copilot_workflow_read_hashes_chat_id_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_workflow_read_hashes_workflow_id_idx": { + "name": "copilot_workflow_read_hashes_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "copilot_workflow_read_hashes_chat_workflow_unique": { + "name": "copilot_workflow_read_hashes_chat_workflow_unique", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "copilot_workflow_read_hashes_chat_id_copilot_chats_id_fk": { + "name": "copilot_workflow_read_hashes_chat_id_copilot_chats_id_fk", + "tableFrom": "copilot_workflow_read_hashes", + "tableTo": "copilot_chats", + "columnsFrom": ["chat_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "copilot_workflow_read_hashes_workflow_id_workflow_id_fk": { + "name": "copilot_workflow_read_hashes_workflow_id_workflow_id_fk", + "tableFrom": "copilot_workflow_read_hashes", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.credential": { + "name": "credential", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "type": { + "name": "type", + "type": "credential_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "display_name": { + "name": "display_name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "provider_id": { + "name": "provider_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "account_id": { + "name": "account_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "env_key": { + "name": "env_key", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "env_owner_user_id": { + "name": "env_owner_user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "encrypted_service_account_key": { + "name": "encrypted_service_account_key", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "credential_workspace_id_idx": { + "name": "credential_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_type_idx": { + "name": "credential_type_idx", + "columns": [ + { + "expression": "type", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_provider_id_idx": { + "name": "credential_provider_id_idx", + "columns": [ + { + "expression": "provider_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_account_id_idx": { + "name": "credential_account_id_idx", + "columns": [ + { + "expression": "account_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_env_owner_user_id_idx": { + "name": "credential_env_owner_user_id_idx", + "columns": [ + { + "expression": "env_owner_user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_workspace_account_unique": { + "name": "credential_workspace_account_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "account_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "account_id IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_workspace_env_unique": { + "name": "credential_workspace_env_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "env_key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "type = 'env_workspace'", + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_workspace_personal_env_unique": { + "name": "credential_workspace_personal_env_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "env_key", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "env_owner_user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "type = 'env_personal'", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "credential_workspace_id_workspace_id_fk": { + "name": "credential_workspace_id_workspace_id_fk", + "tableFrom": "credential", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "credential_account_id_account_id_fk": { + "name": "credential_account_id_account_id_fk", + "tableFrom": "credential", + "tableTo": "account", + "columnsFrom": ["account_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "credential_env_owner_user_id_user_id_fk": { + "name": "credential_env_owner_user_id_user_id_fk", + "tableFrom": "credential", + "tableTo": "user", + "columnsFrom": ["env_owner_user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "credential_created_by_user_id_fk": { + "name": "credential_created_by_user_id_fk", + "tableFrom": "credential", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "credential_oauth_source_check": { + "name": "credential_oauth_source_check", + "value": "(type <> 'oauth') OR (account_id IS NOT NULL AND provider_id IS NOT NULL)" + }, + "credential_workspace_env_source_check": { + "name": "credential_workspace_env_source_check", + "value": "(type <> 'env_workspace') OR (env_key IS NOT NULL AND env_owner_user_id IS NULL)" + }, + "credential_personal_env_source_check": { + "name": "credential_personal_env_source_check", + "value": "(type <> 'env_personal') OR (env_key IS NOT NULL AND env_owner_user_id IS NOT NULL)" + } + }, + "isRLSEnabled": false + }, + "public.credential_member": { + "name": "credential_member", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "credential_id": { + "name": "credential_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "role": { + "name": "role", + "type": "credential_member_role", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'member'" + }, + "status": { + "name": "status", + "type": "credential_member_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'active'" + }, + "joined_at": { + "name": "joined_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "invited_by": { + "name": "invited_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "credential_member_user_id_idx": { + "name": "credential_member_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_member_role_idx": { + "name": "credential_member_role_idx", + "columns": [ + { + "expression": "role", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_member_status_idx": { + "name": "credential_member_status_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "credential_member_unique": { + "name": "credential_member_unique", + "columns": [ + { + "expression": "credential_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "credential_member_credential_id_credential_id_fk": { + "name": "credential_member_credential_id_credential_id_fk", + "tableFrom": "credential_member", + "tableTo": "credential", + "columnsFrom": ["credential_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "credential_member_user_id_user_id_fk": { + "name": "credential_member_user_id_user_id_fk", + "tableFrom": "credential_member", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "credential_member_invited_by_user_id_fk": { + "name": "credential_member_invited_by_user_id_fk", + "tableFrom": "credential_member", + "tableTo": "user", + "columnsFrom": ["invited_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.custom_block": { + "name": "custom_block", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "type": { + "name": "type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "''" + }, + "icon_url": { + "name": "icon_url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "inputs": { + "name": "inputs", + "type": "json", + "primaryKey": false, + "notNull": false + }, + "outputs": { + "name": "outputs", + "type": "json", + "primaryKey": false, + "notNull": false + }, + "enabled": { + "name": "enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "custom_block_organization_id_idx": { + "name": "custom_block_organization_id_idx", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "custom_block_workflow_id_idx": { + "name": "custom_block_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "custom_block_organization_type_unique": { + "name": "custom_block_organization_type_unique", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "type", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "custom_block_organization_id_organization_id_fk": { + "name": "custom_block_organization_id_organization_id_fk", + "tableFrom": "custom_block", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "custom_block_workflow_id_workflow_id_fk": { + "name": "custom_block_workflow_id_workflow_id_fk", + "tableFrom": "custom_block", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "custom_block_created_by_user_id_fk": { + "name": "custom_block_created_by_user_id_fk", + "tableFrom": "custom_block", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.custom_tools": { + "name": "custom_tools", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "title": { + "name": "title", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "schema": { + "name": "schema", + "type": "json", + "primaryKey": false, + "notNull": true + }, + "code": { + "name": "code", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "custom_tools_workspace_id_idx": { + "name": "custom_tools_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "custom_tools_workspace_title_unique": { + "name": "custom_tools_workspace_title_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "title", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "custom_tools_workspace_id_workspace_id_fk": { + "name": "custom_tools_workspace_id_workspace_id_fk", + "tableFrom": "custom_tools", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "custom_tools_user_id_user_id_fk": { + "name": "custom_tools_user_id_user_id_fk", + "tableFrom": "custom_tools", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.data_drain_runs": { + "name": "data_drain_runs", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "drain_id": { + "name": "drain_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "data_drain_run_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "trigger": { + "name": "trigger", + "type": "data_drain_run_trigger", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "started_at": { + "name": "started_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "finished_at": { + "name": "finished_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "rows_exported": { + "name": "rows_exported", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "bytes_written": { + "name": "bytes_written", + "type": "bigint", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "cursor_before": { + "name": "cursor_before", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "cursor_after": { + "name": "cursor_after", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "error": { + "name": "error", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "locators": { + "name": "locators", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + } + }, + "indexes": { + "data_drain_runs_drain_started_idx": { + "name": "data_drain_runs_drain_started_idx", + "columns": [ + { + "expression": "drain_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "started_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "data_drain_runs_drain_id_data_drains_id_fk": { + "name": "data_drain_runs_drain_id_data_drains_id_fk", + "tableFrom": "data_drain_runs", + "tableTo": "data_drains", + "columnsFrom": ["drain_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.data_drains": { + "name": "data_drains", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "source": { + "name": "source", + "type": "data_drain_source", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "destination_type": { + "name": "destination_type", + "type": "data_drain_destination", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "destination_config": { + "name": "destination_config", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "destination_credentials": { + "name": "destination_credentials", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "schedule_cadence": { + "name": "schedule_cadence", + "type": "data_drain_cadence", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "enabled": { + "name": "enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "cursor": { + "name": "cursor", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "last_run_at": { + "name": "last_run_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "last_success_at": { + "name": "last_success_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "data_drains_org_idx": { + "name": "data_drains_org_idx", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "data_drains_due_idx": { + "name": "data_drains_due_idx", + "columns": [ + { + "expression": "enabled", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "last_run_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "data_drains_org_name_unique": { + "name": "data_drains_org_name_unique", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "data_drains_organization_id_organization_id_fk": { + "name": "data_drains_organization_id_organization_id_fk", + "tableFrom": "data_drains", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "data_drains_created_by_user_id_fk": { + "name": "data_drains_created_by_user_id_fk", + "tableFrom": "data_drains", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "no action", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.docs_embeddings": { + "name": "docs_embeddings", + "schema": "", + "columns": { + "chunk_id": { + "name": "chunk_id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "chunk_text": { + "name": "chunk_text", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "source_document": { + "name": "source_document", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "source_link": { + "name": "source_link", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "header_text": { + "name": "header_text", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "header_level": { + "name": "header_level", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "token_count": { + "name": "token_count", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "embedding": { + "name": "embedding", + "type": "vector(1536)", + "primaryKey": false, + "notNull": true + }, + "embedding_model": { + "name": "embedding_model", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'text-embedding-3-small'" + }, + "metadata": { + "name": "metadata", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "chunk_text_tsv": { + "name": "chunk_text_tsv", + "type": "tsvector", + "primaryKey": false, + "notNull": false, + "generated": { + "as": "to_tsvector('english', \"docs_embeddings\".\"chunk_text\")", + "type": "stored" + } + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "docs_emb_source_document_idx": { + "name": "docs_emb_source_document_idx", + "columns": [ + { + "expression": "source_document", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "docs_emb_header_level_idx": { + "name": "docs_emb_header_level_idx", + "columns": [ + { + "expression": "header_level", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "docs_emb_source_header_idx": { + "name": "docs_emb_source_header_idx", + "columns": [ + { + "expression": "source_document", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "header_level", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "docs_emb_model_idx": { + "name": "docs_emb_model_idx", + "columns": [ + { + "expression": "embedding_model", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "docs_emb_created_at_idx": { + "name": "docs_emb_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "docs_embedding_vector_hnsw_idx": { + "name": "docs_embedding_vector_hnsw_idx", + "columns": [ + { + "expression": "embedding", + "isExpression": false, + "asc": true, + "nulls": "last", + "opclass": "vector_cosine_ops" + } + ], + "isUnique": false, + "concurrently": false, + "method": "hnsw", + "with": { + "m": 16, + "ef_construction": 64 + } + }, + "docs_emb_metadata_gin_idx": { + "name": "docs_emb_metadata_gin_idx", + "columns": [ + { + "expression": "metadata", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "gin", + "with": {} + }, + "docs_emb_chunk_text_fts_idx": { + "name": "docs_emb_chunk_text_fts_idx", + "columns": [ + { + "expression": "chunk_text_tsv", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "gin", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "docs_embedding_not_null_check": { + "name": "docs_embedding_not_null_check", + "value": "\"embedding\" IS NOT NULL" + }, + "docs_header_level_check": { + "name": "docs_header_level_check", + "value": "\"header_level\" >= 1 AND \"header_level\" <= 6" + } + }, + "isRLSEnabled": false + }, + "public.document": { + "name": "document", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "knowledge_base_id": { + "name": "knowledge_base_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "filename": { + "name": "filename", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "file_url": { + "name": "file_url", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "storage_key": { + "name": "storage_key", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "file_size": { + "name": "file_size", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "mime_type": { + "name": "mime_type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "chunk_count": { + "name": "chunk_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "token_count": { + "name": "token_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "character_count": { + "name": "character_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "processing_status": { + "name": "processing_status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "processing_started_at": { + "name": "processing_started_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "processing_completed_at": { + "name": "processing_completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "processing_error": { + "name": "processing_error", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "enabled": { + "name": "enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "archived_at": { + "name": "archived_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "user_excluded": { + "name": "user_excluded", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "tag1": { + "name": "tag1", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag2": { + "name": "tag2", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag3": { + "name": "tag3", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag4": { + "name": "tag4", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag5": { + "name": "tag5", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag6": { + "name": "tag6", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag7": { + "name": "tag7", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "number1": { + "name": "number1", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "number2": { + "name": "number2", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "number3": { + "name": "number3", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "number4": { + "name": "number4", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "number5": { + "name": "number5", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "date1": { + "name": "date1", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "date2": { + "name": "date2", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "boolean1": { + "name": "boolean1", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "boolean2": { + "name": "boolean2", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "boolean3": { + "name": "boolean3", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "connector_id": { + "name": "connector_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "external_id": { + "name": "external_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "content_hash": { + "name": "content_hash", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "source_url": { + "name": "source_url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "secret_provenance_version": { + "name": "secret_provenance_version", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "uploaded_by": { + "name": "uploaded_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "uploaded_at": { + "name": "uploaded_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "doc_kb_id_idx": { + "name": "doc_kb_id_idx", + "columns": [ + { + "expression": "knowledge_base_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_filename_idx": { + "name": "doc_filename_idx", + "columns": [ + { + "expression": "filename", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_processing_status_idx": { + "name": "doc_processing_status_idx", + "columns": [ + { + "expression": "knowledge_base_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "processing_status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_connector_external_id_idx": { + "name": "doc_connector_external_id_idx", + "columns": [ + { + "expression": "connector_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "external_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"document\".\"deleted_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_connector_id_idx": { + "name": "doc_connector_id_idx", + "columns": [ + { + "expression": "connector_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_storage_key_idx": { + "name": "doc_storage_key_idx", + "columns": [ + { + "expression": "storage_key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"document\".\"storage_key\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_archived_at_partial_idx": { + "name": "doc_archived_at_partial_idx", + "columns": [ + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"document\".\"archived_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_deleted_at_partial_idx": { + "name": "doc_deleted_at_partial_idx", + "columns": [ + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"document\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_tag1_idx": { + "name": "doc_tag1_idx", + "columns": [ + { + "expression": "tag1", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_tag2_idx": { + "name": "doc_tag2_idx", + "columns": [ + { + "expression": "tag2", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_tag3_idx": { + "name": "doc_tag3_idx", + "columns": [ + { + "expression": "tag3", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_tag4_idx": { + "name": "doc_tag4_idx", + "columns": [ + { + "expression": "tag4", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_tag5_idx": { + "name": "doc_tag5_idx", + "columns": [ + { + "expression": "tag5", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_tag6_idx": { + "name": "doc_tag6_idx", + "columns": [ + { + "expression": "tag6", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_tag7_idx": { + "name": "doc_tag7_idx", + "columns": [ + { + "expression": "tag7", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_number1_idx": { + "name": "doc_number1_idx", + "columns": [ + { + "expression": "number1", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_number2_idx": { + "name": "doc_number2_idx", + "columns": [ + { + "expression": "number2", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_number3_idx": { + "name": "doc_number3_idx", + "columns": [ + { + "expression": "number3", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_number4_idx": { + "name": "doc_number4_idx", + "columns": [ + { + "expression": "number4", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_number5_idx": { + "name": "doc_number5_idx", + "columns": [ + { + "expression": "number5", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_date1_idx": { + "name": "doc_date1_idx", + "columns": [ + { + "expression": "date1", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_date2_idx": { + "name": "doc_date2_idx", + "columns": [ + { + "expression": "date2", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_boolean1_idx": { + "name": "doc_boolean1_idx", + "columns": [ + { + "expression": "boolean1", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_boolean2_idx": { + "name": "doc_boolean2_idx", + "columns": [ + { + "expression": "boolean2", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "doc_boolean3_idx": { + "name": "doc_boolean3_idx", + "columns": [ + { + "expression": "boolean3", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "document_knowledge_base_id_knowledge_base_id_fk": { + "name": "document_knowledge_base_id_knowledge_base_id_fk", + "tableFrom": "document", + "tableTo": "knowledge_base", + "columnsFrom": ["knowledge_base_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "document_connector_id_knowledge_connector_id_fk": { + "name": "document_connector_id_knowledge_connector_id_fk", + "tableFrom": "document", + "tableTo": "knowledge_connector", + "columnsFrom": ["connector_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + }, + "document_uploaded_by_user_id_fk": { + "name": "document_uploaded_by_user_id_fk", + "tableFrom": "document", + "tableTo": "user", + "columnsFrom": ["uploaded_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.document_secret_provenance": { + "name": "document_secret_provenance", + "schema": "", + "columns": { + "document_id": { + "name": "document_id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "source_hash": { + "name": "source_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "entries": { + "name": "entries", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "document_secret_provenance_document_id_document_id_fk": { + "name": "document_secret_provenance_document_id_document_id_fk", + "tableFrom": "document_secret_provenance", + "tableTo": "document", + "columnsFrom": ["document_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "document_secret_provenance_status_check": { + "name": "document_secret_provenance_status_check", + "value": "\"document_secret_provenance\".\"status\" IN ('exact', 'unknown')" + } + }, + "isRLSEnabled": false + }, + "public.embedding": { + "name": "embedding", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "knowledge_base_id": { + "name": "knowledge_base_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "document_id": { + "name": "document_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "chunk_index": { + "name": "chunk_index", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "chunk_hash": { + "name": "chunk_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "content": { + "name": "content", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "secret_provenance_version": { + "name": "secret_provenance_version", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "content_length": { + "name": "content_length", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "token_count": { + "name": "token_count", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "embedding": { + "name": "embedding", + "type": "vector(1536)", + "primaryKey": false, + "notNull": false + }, + "embedding_model": { + "name": "embedding_model", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'text-embedding-3-small'" + }, + "start_offset": { + "name": "start_offset", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "end_offset": { + "name": "end_offset", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "tag1": { + "name": "tag1", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag2": { + "name": "tag2", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag3": { + "name": "tag3", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag4": { + "name": "tag4", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag5": { + "name": "tag5", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag6": { + "name": "tag6", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tag7": { + "name": "tag7", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "number1": { + "name": "number1", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "number2": { + "name": "number2", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "number3": { + "name": "number3", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "number4": { + "name": "number4", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "number5": { + "name": "number5", + "type": "double precision", + "primaryKey": false, + "notNull": false + }, + "date1": { + "name": "date1", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "date2": { + "name": "date2", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "boolean1": { + "name": "boolean1", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "boolean2": { + "name": "boolean2", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "boolean3": { + "name": "boolean3", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "enabled": { + "name": "enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "content_tsv": { + "name": "content_tsv", + "type": "tsvector", + "primaryKey": false, + "notNull": false, + "generated": { + "as": "to_tsvector('english', \"embedding\".\"content\")", + "type": "stored" + } + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "emb_kb_id_idx": { + "name": "emb_kb_id_idx", + "columns": [ + { + "expression": "knowledge_base_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_doc_id_idx": { + "name": "emb_doc_id_idx", + "columns": [ + { + "expression": "document_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_doc_chunk_idx": { + "name": "emb_doc_chunk_idx", + "columns": [ + { + "expression": "document_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "chunk_index", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_kb_model_idx": { + "name": "emb_kb_model_idx", + "columns": [ + { + "expression": "knowledge_base_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "embedding_model", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_kb_enabled_idx": { + "name": "emb_kb_enabled_idx", + "columns": [ + { + "expression": "knowledge_base_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "enabled", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_doc_enabled_idx": { + "name": "emb_doc_enabled_idx", + "columns": [ + { + "expression": "document_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "enabled", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "embedding_vector_hnsw_idx": { + "name": "embedding_vector_hnsw_idx", + "columns": [ + { + "expression": "embedding", + "isExpression": false, + "asc": true, + "nulls": "last", + "opclass": "vector_cosine_ops" + } + ], + "isUnique": false, + "concurrently": false, + "method": "hnsw", + "with": { + "m": 16, + "ef_construction": 64 + } + }, + "emb_tag1_idx": { + "name": "emb_tag1_idx", + "columns": [ + { + "expression": "tag1", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_tag2_idx": { + "name": "emb_tag2_idx", + "columns": [ + { + "expression": "tag2", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_tag3_idx": { + "name": "emb_tag3_idx", + "columns": [ + { + "expression": "tag3", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_tag4_idx": { + "name": "emb_tag4_idx", + "columns": [ + { + "expression": "tag4", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_tag5_idx": { + "name": "emb_tag5_idx", + "columns": [ + { + "expression": "tag5", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_tag6_idx": { + "name": "emb_tag6_idx", + "columns": [ + { + "expression": "tag6", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_tag7_idx": { + "name": "emb_tag7_idx", + "columns": [ + { + "expression": "tag7", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_number1_idx": { + "name": "emb_number1_idx", + "columns": [ + { + "expression": "number1", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_number2_idx": { + "name": "emb_number2_idx", + "columns": [ + { + "expression": "number2", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_number3_idx": { + "name": "emb_number3_idx", + "columns": [ + { + "expression": "number3", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_number4_idx": { + "name": "emb_number4_idx", + "columns": [ + { + "expression": "number4", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_number5_idx": { + "name": "emb_number5_idx", + "columns": [ + { + "expression": "number5", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_date1_idx": { + "name": "emb_date1_idx", + "columns": [ + { + "expression": "date1", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_date2_idx": { + "name": "emb_date2_idx", + "columns": [ + { + "expression": "date2", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_boolean1_idx": { + "name": "emb_boolean1_idx", + "columns": [ + { + "expression": "boolean1", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_boolean2_idx": { + "name": "emb_boolean2_idx", + "columns": [ + { + "expression": "boolean2", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_boolean3_idx": { + "name": "emb_boolean3_idx", + "columns": [ + { + "expression": "boolean3", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "emb_content_fts_idx": { + "name": "emb_content_fts_idx", + "columns": [ + { + "expression": "content_tsv", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "gin", + "with": {} + } + }, + "foreignKeys": { + "embedding_knowledge_base_id_knowledge_base_id_fk": { + "name": "embedding_knowledge_base_id_knowledge_base_id_fk", + "tableFrom": "embedding", + "tableTo": "knowledge_base", + "columnsFrom": ["knowledge_base_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "embedding_document_id_document_id_fk": { + "name": "embedding_document_id_document_id_fk", + "tableFrom": "embedding", + "tableTo": "document", + "columnsFrom": ["document_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "embedding_not_null_check": { + "name": "embedding_not_null_check", + "value": "\"embedding\" IS NOT NULL" + } + }, + "isRLSEnabled": false + }, + "public.embedding_secret_provenance": { + "name": "embedding_secret_provenance", + "schema": "", + "columns": { + "embedding_id": { + "name": "embedding_id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "content_hash": { + "name": "content_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "entries": { + "name": "entries", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "embedding_secret_provenance_embedding_id_embedding_id_fk": { + "name": "embedding_secret_provenance_embedding_id_embedding_id_fk", + "tableFrom": "embedding_secret_provenance", + "tableTo": "embedding", + "columnsFrom": ["embedding_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "embedding_secret_provenance_status_check": { + "name": "embedding_secret_provenance_status_check", + "value": "\"embedding_secret_provenance\".\"status\" IN ('exact', 'unknown')" + } + }, + "isRLSEnabled": false + }, + "public.environment": { + "name": "environment", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "variables": { + "name": "variables", + "type": "json", + "primaryKey": false, + "notNull": true + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "environment_user_id_user_id_fk": { + "name": "environment_user_id_user_id_fk", + "tableFrom": "environment", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "environment_user_id_unique": { + "name": "environment_user_id_unique", + "nullsNotDistinct": false, + "columns": ["user_id"] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.execution_large_value_dependencies": { + "name": "execution_large_value_dependencies", + "schema": "", + "columns": { + "parent_key": { + "name": "parent_key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "child_key": { + "name": "child_key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "execution_large_value_dependencies_workspace_parent_key_idx": { + "name": "execution_large_value_dependencies_workspace_parent_key_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "parent_key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "execution_large_value_dependencies_workspace_child_key_idx": { + "name": "execution_large_value_dependencies_workspace_child_key_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "child_key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "execution_large_value_dependencies_workspace_id_workspace_id_fk": { + "name": "execution_large_value_dependencies_workspace_id_workspace_id_fk", + "tableFrom": "execution_large_value_dependencies", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": { + "execution_large_value_dependencies_parent_key_child_key_pk": { + "name": "execution_large_value_dependencies_parent_key_child_key_pk", + "columns": ["parent_key", "child_key"] + } + }, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.execution_large_value_references": { + "name": "execution_large_value_references", + "schema": "", + "columns": { + "key": { + "name": "key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "execution_id": { + "name": "execution_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "source": { + "name": "source", + "type": "execution_large_value_reference_source", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "execution_large_value_references_workspace_execution_source_idx": { + "name": "execution_large_value_references_workspace_execution_source_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "source", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "execution_large_value_references_workflow_id_idx": { + "name": "execution_large_value_references_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "execution_large_value_references_workspace_id_workspace_id_fk": { + "name": "execution_large_value_references_workspace_id_workspace_id_fk", + "tableFrom": "execution_large_value_references", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "execution_large_value_references_workflow_id_workflow_id_fk": { + "name": "execution_large_value_references_workflow_id_workflow_id_fk", + "tableFrom": "execution_large_value_references", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": { + "execution_large_value_references_key_execution_id_source_pk": { + "name": "execution_large_value_references_key_execution_id_source_pk", + "columns": ["key", "execution_id", "source"] + } + }, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.execution_large_values": { + "name": "execution_large_values", + "schema": "", + "columns": { + "key": { + "name": "key", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "owner_execution_id": { + "name": "owner_execution_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "size": { + "name": "size", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "execution_large_values_owner_execution_id_idx": { + "name": "execution_large_values_owner_execution_id_idx", + "columns": [ + { + "expression": "owner_execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "execution_large_values_cleanup_idx": { + "name": "execution_large_values_cleanup_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"execution_large_values\".\"deleted_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "execution_large_values_tombstone_cleanup_idx": { + "name": "execution_large_values_tombstone_cleanup_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"execution_large_values\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "execution_large_values_workflow_id_idx": { + "name": "execution_large_values_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "execution_large_values_workspace_id_workspace_id_fk": { + "name": "execution_large_values_workspace_id_workspace_id_fk", + "tableFrom": "execution_large_values", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "execution_large_values_workflow_id_workflow_id_fk": { + "name": "execution_large_values_workflow_id_workflow_id_fk", + "tableFrom": "execution_large_values", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.folder": { + "name": "folder", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "resource_type": { + "name": "resource_type", + "type": "folder_resource_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "parent_id": { + "name": "parent_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "locked": { + "name": "locked", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "sort_order": { + "name": "sort_order", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "folder_user_idx": { + "name": "folder_user_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "folder_workspace_resource_parent_idx": { + "name": "folder_workspace_resource_parent_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "resource_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "folder_parent_sort_idx": { + "name": "folder_parent_sort_idx", + "columns": [ + { + "expression": "parent_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "sort_order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "folder_deleted_at_idx": { + "name": "folder_deleted_at_idx", + "columns": [ + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "folder_workspace_deleted_partial_idx": { + "name": "folder_workspace_deleted_partial_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"folder\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "folder_workspace_resource_parent_name_active_unique": { + "name": "folder_workspace_resource_parent_name_active_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "resource_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "coalesce(\"parent_id\", '')", + "asc": true, + "isExpression": true, + "nulls": "last" + }, + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"folder\".\"deleted_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "folder_user_id_user_id_fk": { + "name": "folder_user_id_user_id_fk", + "tableFrom": "folder", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "folder_workspace_id_workspace_id_fk": { + "name": "folder_workspace_id_workspace_id_fk", + "tableFrom": "folder", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "folder_parent_id_folder_id_fk": { + "name": "folder_parent_id_folder_id_fk", + "tableFrom": "folder", + "tableTo": "folder", + "columnsFrom": ["parent_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.idempotency_key": { + "name": "idempotency_key", + "schema": "", + "columns": { + "key": { + "name": "key", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "result": { + "name": "result", + "type": "json", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "idempotency_key_created_at_idx": { + "name": "idempotency_key_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.invitation": { + "name": "invitation", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "kind": { + "name": "kind", + "type": "invitation_kind", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'organization'" + }, + "email": { + "name": "email", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "inviter_id": { + "name": "inviter_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "membership_intent": { + "name": "membership_intent", + "type": "invitation_membership_intent", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'internal'" + }, + "role": { + "name": "role", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "invitation_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "token": { + "name": "token", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "expires_at": { + "name": "expires_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "invitation_email_idx": { + "name": "invitation_email_idx", + "columns": [ + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "invitation_organization_id_idx": { + "name": "invitation_organization_id_idx", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "invitation_status_idx": { + "name": "invitation_status_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "invitation_pending_email_org_unique": { + "name": "invitation_pending_email_org_unique", + "columns": [ + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"invitation\".\"status\" = 'pending' AND \"invitation\".\"organization_id\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "invitation_inviter_id_user_id_fk": { + "name": "invitation_inviter_id_user_id_fk", + "tableFrom": "invitation", + "tableTo": "user", + "columnsFrom": ["inviter_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "invitation_organization_id_organization_id_fk": { + "name": "invitation_organization_id_organization_id_fk", + "tableFrom": "invitation", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "invitation_token_unique": { + "name": "invitation_token_unique", + "nullsNotDistinct": false, + "columns": ["token"] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.invitation_workspace_grant": { + "name": "invitation_workspace_grant", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "invitation_id": { + "name": "invitation_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "permission": { + "name": "permission", + "type": "permission_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "invitation_workspace_grant_unique": { + "name": "invitation_workspace_grant_unique", + "columns": [ + { + "expression": "invitation_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "invitation_workspace_grant_workspace_id_idx": { + "name": "invitation_workspace_grant_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "invitation_workspace_grant_invitation_id_invitation_id_fk": { + "name": "invitation_workspace_grant_invitation_id_invitation_id_fk", + "tableFrom": "invitation_workspace_grant", + "tableTo": "invitation", + "columnsFrom": ["invitation_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "invitation_workspace_grant_workspace_id_workspace_id_fk": { + "name": "invitation_workspace_grant_workspace_id_workspace_id_fk", + "tableFrom": "invitation_workspace_grant", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.job_execution_logs": { + "name": "job_execution_logs", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "schedule_id": { + "name": "schedule_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "execution_id": { + "name": "execution_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "level": { + "name": "level", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'running'" + }, + "trigger": { + "name": "trigger", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "started_at": { + "name": "started_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "ended_at": { + "name": "ended_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "total_duration_ms": { + "name": "total_duration_ms", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "execution_data": { + "name": "execution_data", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "cost": { + "name": "cost", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "job_execution_logs_schedule_id_idx": { + "name": "job_execution_logs_schedule_id_idx", + "columns": [ + { + "expression": "schedule_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "job_execution_logs_workspace_started_at_idx": { + "name": "job_execution_logs_workspace_started_at_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "started_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "job_execution_logs_workspace_ended_at_id_idx": { + "name": "job_execution_logs_workspace_ended_at_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "date_trunc('milliseconds', \"ended_at\")", + "asc": true, + "isExpression": true, + "nulls": "last" + }, + { + "expression": "id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "job_execution_logs_execution_id_unique": { + "name": "job_execution_logs_execution_id_unique", + "columns": [ + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "job_execution_logs_trigger_idx": { + "name": "job_execution_logs_trigger_idx", + "columns": [ + { + "expression": "trigger", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "job_execution_logs_schedule_id_workflow_schedule_id_fk": { + "name": "job_execution_logs_schedule_id_workflow_schedule_id_fk", + "tableFrom": "job_execution_logs", + "tableTo": "workflow_schedule", + "columnsFrom": ["schedule_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + }, + "job_execution_logs_workspace_id_workspace_id_fk": { + "name": "job_execution_logs_workspace_id_workspace_id_fk", + "tableFrom": "job_execution_logs", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.knowledge_base": { + "name": "knowledge_base", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "folder_id": { + "name": "folder_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "token_count": { + "name": "token_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "embedding_model": { + "name": "embedding_model", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'text-embedding-3-small'" + }, + "embedding_dimension": { + "name": "embedding_dimension", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 1536 + }, + "chunking_config": { + "name": "chunking_config", + "type": "json", + "primaryKey": false, + "notNull": true, + "default": "'{\"maxSize\": 1024, \"minSize\": 1, \"overlap\": 200}'" + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "kb_user_id_idx": { + "name": "kb_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "kb_workspace_id_idx": { + "name": "kb_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "kb_user_workspace_idx": { + "name": "kb_user_workspace_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "kb_folder_id_idx": { + "name": "kb_folder_id_idx", + "columns": [ + { + "expression": "folder_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "kb_deleted_at_idx": { + "name": "kb_deleted_at_idx", + "columns": [ + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "kb_workspace_deleted_partial_idx": { + "name": "kb_workspace_deleted_partial_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"knowledge_base\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "kb_workspace_name_active_unique": { + "name": "kb_workspace_name_active_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"knowledge_base\".\"deleted_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "knowledge_base_user_id_user_id_fk": { + "name": "knowledge_base_user_id_user_id_fk", + "tableFrom": "knowledge_base", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "knowledge_base_workspace_id_workspace_id_fk": { + "name": "knowledge_base_workspace_id_workspace_id_fk", + "tableFrom": "knowledge_base", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "knowledge_base_folder_id_folder_id_fk": { + "name": "knowledge_base_folder_id_folder_id_fk", + "tableFrom": "knowledge_base", + "tableTo": "folder", + "columnsFrom": ["folder_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.knowledge_base_tag_definitions": { + "name": "knowledge_base_tag_definitions", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "knowledge_base_id": { + "name": "knowledge_base_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "tag_slot": { + "name": "tag_slot", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "display_name": { + "name": "display_name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "field_type": { + "name": "field_type", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'text'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "kb_tag_definitions_kb_slot_idx": { + "name": "kb_tag_definitions_kb_slot_idx", + "columns": [ + { + "expression": "knowledge_base_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "tag_slot", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "kb_tag_definitions_kb_display_name_idx": { + "name": "kb_tag_definitions_kb_display_name_idx", + "columns": [ + { + "expression": "knowledge_base_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "display_name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "kb_tag_definitions_kb_id_idx": { + "name": "kb_tag_definitions_kb_id_idx", + "columns": [ + { + "expression": "knowledge_base_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "knowledge_base_tag_definitions_knowledge_base_id_knowledge_base_id_fk": { + "name": "knowledge_base_tag_definitions_knowledge_base_id_knowledge_base_id_fk", + "tableFrom": "knowledge_base_tag_definitions", + "tableTo": "knowledge_base", + "columnsFrom": ["knowledge_base_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.knowledge_connector": { + "name": "knowledge_connector", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "knowledge_base_id": { + "name": "knowledge_base_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "connector_type": { + "name": "connector_type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "credential_id": { + "name": "credential_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "encrypted_api_key": { + "name": "encrypted_api_key", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "source_config": { + "name": "source_config", + "type": "json", + "primaryKey": false, + "notNull": true + }, + "sync_mode": { + "name": "sync_mode", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'full'" + }, + "sync_interval_minutes": { + "name": "sync_interval_minutes", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 1440 + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'active'" + }, + "last_sync_at": { + "name": "last_sync_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "last_sync_error": { + "name": "last_sync_error", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "last_sync_doc_count": { + "name": "last_sync_doc_count", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "next_sync_at": { + "name": "next_sync_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "consecutive_failures": { + "name": "consecutive_failures", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "archived_at": { + "name": "archived_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "kc_knowledge_base_id_idx": { + "name": "kc_knowledge_base_id_idx", + "columns": [ + { + "expression": "knowledge_base_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "kc_status_next_sync_idx": { + "name": "kc_status_next_sync_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "next_sync_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "kc_archived_at_partial_idx": { + "name": "kc_archived_at_partial_idx", + "columns": [ + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"knowledge_connector\".\"archived_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "kc_deleted_at_partial_idx": { + "name": "kc_deleted_at_partial_idx", + "columns": [ + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"knowledge_connector\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "knowledge_connector_knowledge_base_id_knowledge_base_id_fk": { + "name": "knowledge_connector_knowledge_base_id_knowledge_base_id_fk", + "tableFrom": "knowledge_connector", + "tableTo": "knowledge_base", + "columnsFrom": ["knowledge_base_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.knowledge_connector_sync_log": { + "name": "knowledge_connector_sync_log", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "connector_id": { + "name": "connector_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "started_at": { + "name": "started_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "completed_at": { + "name": "completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "docs_added": { + "name": "docs_added", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "docs_updated": { + "name": "docs_updated", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "docs_deleted": { + "name": "docs_deleted", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "docs_unchanged": { + "name": "docs_unchanged", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "docs_failed": { + "name": "docs_failed", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "error_message": { + "name": "error_message", + "type": "text", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "kcsl_connector_id_idx": { + "name": "kcsl_connector_id_idx", + "columns": [ + { + "expression": "connector_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "knowledge_connector_sync_log_connector_id_knowledge_connector_id_fk": { + "name": "knowledge_connector_sync_log_connector_id_knowledge_connector_id_fk", + "tableFrom": "knowledge_connector_sync_log", + "tableTo": "knowledge_connector", + "columnsFrom": ["connector_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.mcp_server_oauth": { + "name": "mcp_server_oauth", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "mcp_server_id": { + "name": "mcp_server_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "client_information": { + "name": "client_information", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "tokens": { + "name": "tokens", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "code_verifier": { + "name": "code_verifier", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "state": { + "name": "state", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "state_created_at": { + "name": "state_created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "last_refreshed_at": { + "name": "last_refreshed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "mcp_server_oauth_server_unique": { + "name": "mcp_server_oauth_server_unique", + "columns": [ + { + "expression": "mcp_server_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "mcp_server_oauth_state_idx": { + "name": "mcp_server_oauth_state_idx", + "columns": [ + { + "expression": "state", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "mcp_server_oauth_mcp_server_id_mcp_servers_id_fk": { + "name": "mcp_server_oauth_mcp_server_id_mcp_servers_id_fk", + "tableFrom": "mcp_server_oauth", + "tableTo": "mcp_servers", + "columnsFrom": ["mcp_server_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "mcp_server_oauth_user_id_user_id_fk": { + "name": "mcp_server_oauth_user_id_user_id_fk", + "tableFrom": "mcp_server_oauth", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + }, + "mcp_server_oauth_workspace_id_workspace_id_fk": { + "name": "mcp_server_oauth_workspace_id_workspace_id_fk", + "tableFrom": "mcp_server_oauth", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.mcp_servers": { + "name": "mcp_servers", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "transport": { + "name": "transport", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "url": { + "name": "url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "auth_type": { + "name": "auth_type", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'headers'" + }, + "oauth_client_id": { + "name": "oauth_client_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "oauth_client_secret": { + "name": "oauth_client_secret", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "headers": { + "name": "headers", + "type": "json", + "primaryKey": false, + "notNull": false, + "default": "'{}'" + }, + "timeout": { + "name": "timeout", + "type": "integer", + "primaryKey": false, + "notNull": false, + "default": 30000 + }, + "retries": { + "name": "retries", + "type": "integer", + "primaryKey": false, + "notNull": false, + "default": 3 + }, + "enabled": { + "name": "enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "last_connected": { + "name": "last_connected", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "connection_status": { + "name": "connection_status", + "type": "text", + "primaryKey": false, + "notNull": false, + "default": "'disconnected'" + }, + "last_error": { + "name": "last_error", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "status_config": { + "name": "status_config", + "type": "jsonb", + "primaryKey": false, + "notNull": false, + "default": "'{}'" + }, + "tool_count": { + "name": "tool_count", + "type": "integer", + "primaryKey": false, + "notNull": false, + "default": 0 + }, + "last_tools_refresh": { + "name": "last_tools_refresh", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "total_requests": { + "name": "total_requests", + "type": "integer", + "primaryKey": false, + "notNull": false, + "default": 0 + }, + "last_used": { + "name": "last_used", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "mcp_servers_workspace_enabled_idx": { + "name": "mcp_servers_workspace_enabled_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "enabled", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "mcp_servers_workspace_deleted_partial_idx": { + "name": "mcp_servers_workspace_deleted_partial_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"mcp_servers\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "mcp_servers_workspace_id_workspace_id_fk": { + "name": "mcp_servers_workspace_id_workspace_id_fk", + "tableFrom": "mcp_servers", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "mcp_servers_created_by_user_id_fk": { + "name": "mcp_servers_created_by_user_id_fk", + "tableFrom": "mcp_servers", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.member": { + "name": "member", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "role": { + "name": "role", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "member_user_id_unique": { + "name": "member_user_id_unique", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "member_organization_id_idx": { + "name": "member_organization_id_idx", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "member_user_id_user_id_fk": { + "name": "member_user_id_user_id_fk", + "tableFrom": "member", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "member_organization_id_organization_id_fk": { + "name": "member_organization_id_organization_id_fk", + "tableFrom": "member", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.memory": { + "name": "memory", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "key": { + "name": "key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "data": { + "name": "data", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "secret_provenance_version": { + "name": "secret_provenance_version", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "memory_key_idx": { + "name": "memory_key_idx", + "columns": [ + { + "expression": "key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "memory_workspace_idx": { + "name": "memory_workspace_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "memory_workspace_key_idx": { + "name": "memory_workspace_key_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "memory_workspace_deleted_partial_idx": { + "name": "memory_workspace_deleted_partial_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"memory\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "memory_workspace_id_workspace_id_fk": { + "name": "memory_workspace_id_workspace_id_fk", + "tableFrom": "memory", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.memory_secret_provenance": { + "name": "memory_secret_provenance", + "schema": "", + "columns": { + "memory_id": { + "name": "memory_id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "content_hash": { + "name": "content_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "entries": { + "name": "entries", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "memory_secret_provenance_memory_id_memory_id_fk": { + "name": "memory_secret_provenance_memory_id_memory_id_fk", + "tableFrom": "memory_secret_provenance", + "tableTo": "memory", + "columnsFrom": ["memory_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "memory_secret_provenance_status_check": { + "name": "memory_secret_provenance_status_check", + "value": "\"memory_secret_provenance\".\"status\" IN ('exact', 'unknown')" + } + }, + "isRLSEnabled": false + }, + "public.mothership_inbox_allowed_sender": { + "name": "mothership_inbox_allowed_sender", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "email": { + "name": "email", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "label": { + "name": "label", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "added_by": { + "name": "added_by", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "inbox_sender_ws_email_idx": { + "name": "inbox_sender_ws_email_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "email", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "mothership_inbox_allowed_sender_workspace_id_workspace_id_fk": { + "name": "mothership_inbox_allowed_sender_workspace_id_workspace_id_fk", + "tableFrom": "mothership_inbox_allowed_sender", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "mothership_inbox_allowed_sender_added_by_user_id_fk": { + "name": "mothership_inbox_allowed_sender_added_by_user_id_fk", + "tableFrom": "mothership_inbox_allowed_sender", + "tableTo": "user", + "columnsFrom": ["added_by"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.mothership_inbox_task": { + "name": "mothership_inbox_task", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "from_email": { + "name": "from_email", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "from_name": { + "name": "from_name", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "subject": { + "name": "subject", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "body_preview": { + "name": "body_preview", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "body_text": { + "name": "body_text", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "body_html": { + "name": "body_html", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "email_message_id": { + "name": "email_message_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "in_reply_to": { + "name": "in_reply_to", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "response_message_id": { + "name": "response_message_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "agentmail_message_id": { + "name": "agentmail_message_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'received'" + }, + "chat_id": { + "name": "chat_id", + "type": "uuid", + "primaryKey": false, + "notNull": false + }, + "trigger_job_id": { + "name": "trigger_job_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "result_summary": { + "name": "result_summary", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "error_message": { + "name": "error_message", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "rejection_reason": { + "name": "rejection_reason", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "has_attachments": { + "name": "has_attachments", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "cc_recipients": { + "name": "cc_recipients", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "processing_started_at": { + "name": "processing_started_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "completed_at": { + "name": "completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "inbox_task_ws_created_at_idx": { + "name": "inbox_task_ws_created_at_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "inbox_task_ws_status_idx": { + "name": "inbox_task_ws_status_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "inbox_task_response_msg_id_idx": { + "name": "inbox_task_response_msg_id_idx", + "columns": [ + { + "expression": "response_message_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "inbox_task_email_msg_id_idx": { + "name": "inbox_task_email_msg_id_idx", + "columns": [ + { + "expression": "email_message_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "mothership_inbox_task_workspace_id_workspace_id_fk": { + "name": "mothership_inbox_task_workspace_id_workspace_id_fk", + "tableFrom": "mothership_inbox_task", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "mothership_inbox_task_chat_id_copilot_chats_id_fk": { + "name": "mothership_inbox_task_chat_id_copilot_chats_id_fk", + "tableFrom": "mothership_inbox_task", + "tableTo": "copilot_chats", + "columnsFrom": ["chat_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.mothership_inbox_webhook": { + "name": "mothership_inbox_webhook", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "webhook_id": { + "name": "webhook_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "secret": { + "name": "secret", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "mothership_inbox_webhook_workspace_id_workspace_id_fk": { + "name": "mothership_inbox_webhook_workspace_id_workspace_id_fk", + "tableFrom": "mothership_inbox_webhook", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "mothership_inbox_webhook_workspace_id_unique": { + "name": "mothership_inbox_webhook_workspace_id_unique", + "nullsNotDistinct": false, + "columns": ["workspace_id"] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.mothership_settings": { + "name": "mothership_settings", + "schema": "", + "columns": { + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "mcp_tool_refs": { + "name": "mcp_tool_refs", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "custom_tool_refs": { + "name": "custom_tool_refs", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "skill_refs": { + "name": "skill_refs", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "mothership_settings_workspace_id_idx": { + "name": "mothership_settings_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "mothership_settings_workspace_id_workspace_id_fk": { + "name": "mothership_settings_workspace_id_workspace_id_fk", + "tableFrom": "mothership_settings", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.organization": { + "name": "organization", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "slug": { + "name": "slug", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "logo": { + "name": "logo", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "metadata": { + "name": "metadata", + "type": "json", + "primaryKey": false, + "notNull": false + }, + "session_policy_settings": { + "name": "session_policy_settings", + "type": "json", + "primaryKey": false, + "notNull": false + }, + "security_policy_version": { + "name": "security_policy_version", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 1 + }, + "whitelabel_settings": { + "name": "whitelabel_settings", + "type": "json", + "primaryKey": false, + "notNull": false + }, + "data_retention_settings": { + "name": "data_retention_settings", + "type": "json", + "primaryKey": false, + "notNull": false + }, + "org_usage_limit": { + "name": "org_usage_limit", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "storage_used_bytes": { + "name": "storage_used_bytes", + "type": "bigint", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "limit_notifications": { + "name": "limit_notifications", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'::jsonb" + }, + "departed_member_usage": { + "name": "departed_member_usage", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "credit_balance": { + "name": "credit_balance", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.organization_member_usage_limit": { + "name": "organization_member_usage_limit", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "usage_limit": { + "name": "usage_limit", + "type": "numeric", + "primaryKey": false, + "notNull": true + }, + "set_by": { + "name": "set_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "org_member_usage_limit_org_user_unique": { + "name": "org_member_usage_limit_org_user_unique", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "org_member_usage_limit_organization_id_idx": { + "name": "org_member_usage_limit_organization_id_idx", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "organization_member_usage_limit_organization_id_organization_id_fk": { + "name": "organization_member_usage_limit_organization_id_organization_id_fk", + "tableFrom": "organization_member_usage_limit", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "organization_member_usage_limit_user_id_user_id_fk": { + "name": "organization_member_usage_limit_user_id_user_id_fk", + "tableFrom": "organization_member_usage_limit", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "organization_member_usage_limit_set_by_user_id_fk": { + "name": "organization_member_usage_limit_set_by_user_id_fk", + "tableFrom": "organization_member_usage_limit", + "tableTo": "user", + "columnsFrom": ["set_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.outbox_event": { + "name": "outbox_event", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "event_type": { + "name": "event_type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "payload": { + "name": "payload", + "type": "json", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "attempts": { + "name": "attempts", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "max_attempts": { + "name": "max_attempts", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 10 + }, + "available_at": { + "name": "available_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "locked_at": { + "name": "locked_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "last_error": { + "name": "last_error", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "processed_at": { + "name": "processed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "outbox_event_status_available_idx": { + "name": "outbox_event_status_available_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "available_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "outbox_event_locked_at_idx": { + "name": "outbox_event_locked_at_idx", + "columns": [ + { + "expression": "locked_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "outbox_event_type_created_idx": { + "name": "outbox_event_type_created_idx", + "columns": [ + { + "expression": "event_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.paused_executions": { + "name": "paused_executions", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "execution_id": { + "name": "execution_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "execution_snapshot": { + "name": "execution_snapshot", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "pause_points": { + "name": "pause_points", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "total_pause_count": { + "name": "total_pause_count", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "resumed_count": { + "name": "resumed_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "automatic_resume_retry_count": { + "name": "automatic_resume_retry_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'paused'" + }, + "metadata": { + "name": "metadata", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'::jsonb" + }, + "paused_at": { + "name": "paused_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "expires_at": { + "name": "expires_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "next_resume_at": { + "name": "next_resume_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "paused_executions_workflow_id_idx": { + "name": "paused_executions_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "paused_executions_status_idx": { + "name": "paused_executions_status_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "paused_executions_execution_id_unique": { + "name": "paused_executions_execution_id_unique", + "columns": [ + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "paused_executions_next_resume_at_idx": { + "name": "paused_executions_next_resume_at_idx", + "columns": [ + { + "expression": "next_resume_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "status = 'paused' AND next_resume_at IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "paused_executions_workflow_id_workflow_id_fk": { + "name": "paused_executions_workflow_id_workflow_id_fk", + "tableFrom": "paused_executions", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.pending_credential_draft": { + "name": "pending_credential_draft", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "provider_id": { + "name": "provider_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "display_name": { + "name": "display_name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "credential_id": { + "name": "credential_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "expires_at": { + "name": "expires_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "pending_draft_user_provider_ws": { + "name": "pending_draft_user_provider_ws", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "provider_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "pending_credential_draft_user_id_user_id_fk": { + "name": "pending_credential_draft_user_id_user_id_fk", + "tableFrom": "pending_credential_draft", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "pending_credential_draft_workspace_id_workspace_id_fk": { + "name": "pending_credential_draft_workspace_id_workspace_id_fk", + "tableFrom": "pending_credential_draft", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "pending_credential_draft_credential_id_credential_id_fk": { + "name": "pending_credential_draft_credential_id_credential_id_fk", + "tableFrom": "pending_credential_draft", + "tableTo": "credential", + "columnsFrom": ["credential_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.permission_group": { + "name": "permission_group", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "config": { + "name": "config", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "is_default": { + "name": "is_default", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + } + }, + "indexes": { + "permission_group_created_by_idx": { + "name": "permission_group_created_by_idx", + "columns": [ + { + "expression": "created_by", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permission_group_organization_name_unique": { + "name": "permission_group_organization_name_unique", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permission_group_organization_default_unique": { + "name": "permission_group_organization_default_unique", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "is_default = true", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "permission_group_organization_id_organization_id_fk": { + "name": "permission_group_organization_id_organization_id_fk", + "tableFrom": "permission_group", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "permission_group_created_by_user_id_fk": { + "name": "permission_group_created_by_user_id_fk", + "tableFrom": "permission_group", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.permission_group_member": { + "name": "permission_group_member", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "permission_group_id": { + "name": "permission_group_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "assigned_by": { + "name": "assigned_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "assigned_at": { + "name": "assigned_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "permission_group_member_group_id_idx": { + "name": "permission_group_member_group_id_idx", + "columns": [ + { + "expression": "permission_group_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permission_group_member_group_user_unique": { + "name": "permission_group_member_group_user_unique", + "columns": [ + { + "expression": "permission_group_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permission_group_member_organization_user_idx": { + "name": "permission_group_member_organization_user_idx", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "permission_group_member_permission_group_id_permission_group_id_fk": { + "name": "permission_group_member_permission_group_id_permission_group_id_fk", + "tableFrom": "permission_group_member", + "tableTo": "permission_group", + "columnsFrom": ["permission_group_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "permission_group_member_organization_id_organization_id_fk": { + "name": "permission_group_member_organization_id_organization_id_fk", + "tableFrom": "permission_group_member", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "permission_group_member_user_id_user_id_fk": { + "name": "permission_group_member_user_id_user_id_fk", + "tableFrom": "permission_group_member", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "permission_group_member_assigned_by_user_id_fk": { + "name": "permission_group_member_assigned_by_user_id_fk", + "tableFrom": "permission_group_member", + "tableTo": "user", + "columnsFrom": ["assigned_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.permission_group_workspace": { + "name": "permission_group_workspace", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "permission_group_id": { + "name": "permission_group_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "permission_group_workspace_workspace_id_idx": { + "name": "permission_group_workspace_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permission_group_workspace_group_workspace_unique": { + "name": "permission_group_workspace_group_workspace_unique", + "columns": [ + { + "expression": "permission_group_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "permission_group_workspace_permission_group_id_permission_group_id_fk": { + "name": "permission_group_workspace_permission_group_id_permission_group_id_fk", + "tableFrom": "permission_group_workspace", + "tableTo": "permission_group", + "columnsFrom": ["permission_group_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "permission_group_workspace_workspace_id_workspace_id_fk": { + "name": "permission_group_workspace_workspace_id_workspace_id_fk", + "tableFrom": "permission_group_workspace", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "permission_group_workspace_organization_id_organization_id_fk": { + "name": "permission_group_workspace_organization_id_organization_id_fk", + "tableFrom": "permission_group_workspace", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.permissions": { + "name": "permissions", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "entity_type": { + "name": "entity_type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "entity_id": { + "name": "entity_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "permission_type": { + "name": "permission_type", + "type": "permission_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "permissions_user_id_idx": { + "name": "permissions_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permissions_entity_idx": { + "name": "permissions_entity_idx", + "columns": [ + { + "expression": "entity_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "entity_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permissions_user_entity_type_idx": { + "name": "permissions_user_entity_type_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "entity_type", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permissions_user_entity_permission_idx": { + "name": "permissions_user_entity_permission_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "entity_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "permission_type", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permissions_user_entity_idx": { + "name": "permissions_user_entity_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "entity_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "entity_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "permissions_unique_constraint": { + "name": "permissions_unique_constraint", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "entity_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "entity_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "permissions_user_id_user_id_fk": { + "name": "permissions_user_id_user_id_fk", + "tableFrom": "permissions", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.pinned_item": { + "name": "pinned_item", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "resource_type": { + "name": "resource_type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "resource_id": { + "name": "resource_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "pinned_at": { + "name": "pinned_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "pinned_item_user_workspace_idx": { + "name": "pinned_item_user_workspace_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "pinned_item_resource_idx": { + "name": "pinned_item_resource_idx", + "columns": [ + { + "expression": "resource_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "resource_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "pinned_item_user_resource_unique": { + "name": "pinned_item_user_resource_unique", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "resource_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "resource_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "pinned_item_user_id_user_id_fk": { + "name": "pinned_item_user_id_user_id_fk", + "tableFrom": "pinned_item", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "pinned_item_workspace_id_workspace_id_fk": { + "name": "pinned_item_workspace_id_workspace_id_fk", + "tableFrom": "pinned_item", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.public_share": { + "name": "public_share", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "resource_type": { + "name": "resource_type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "resource_id": { + "name": "resource_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "token": { + "name": "token", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "is_active": { + "name": "is_active", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "auth_type": { + "name": "auth_type", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'public'" + }, + "password": { + "name": "password", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "allowed_emails": { + "name": "allowed_emails", + "type": "json", + "primaryKey": false, + "notNull": false, + "default": "'[]'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "public_share_token_unique": { + "name": "public_share_token_unique", + "columns": [ + { + "expression": "token", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "public_share_resource_unique": { + "name": "public_share_resource_unique", + "columns": [ + { + "expression": "resource_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "resource_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "public_share_resource_id_idx": { + "name": "public_share_resource_id_idx", + "columns": [ + { + "expression": "resource_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "public_share_workspace_id_idx": { + "name": "public_share_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "public_share_workspace_id_workspace_id_fk": { + "name": "public_share_workspace_id_workspace_id_fk", + "tableFrom": "public_share", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "public_share_created_by_user_id_fk": { + "name": "public_share_created_by_user_id_fk", + "tableFrom": "public_share", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.rate_limit_bucket": { + "name": "rate_limit_bucket", + "schema": "", + "columns": { + "key": { + "name": "key", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "tokens": { + "name": "tokens", + "type": "numeric", + "primaryKey": false, + "notNull": true + }, + "last_refill_at": { + "name": "last_refill_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.resume_queue": { + "name": "resume_queue", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "paused_execution_id": { + "name": "paused_execution_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "parent_execution_id": { + "name": "parent_execution_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "new_execution_id": { + "name": "new_execution_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "context_id": { + "name": "context_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "resume_input": { + "name": "resume_input", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "queued_at": { + "name": "queued_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "claimed_at": { + "name": "claimed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "completed_at": { + "name": "completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "failure_reason": { + "name": "failure_reason", + "type": "text", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "resume_queue_parent_status_idx": { + "name": "resume_queue_parent_status_idx", + "columns": [ + { + "expression": "parent_execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "queued_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "resume_queue_new_execution_idx": { + "name": "resume_queue_new_execution_idx", + "columns": [ + { + "expression": "new_execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "resume_queue_paused_execution_id_paused_executions_id_fk": { + "name": "resume_queue_paused_execution_id_paused_executions_id_fk", + "tableFrom": "resume_queue", + "tableTo": "paused_executions", + "columnsFrom": ["paused_execution_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.sandbox_image": { + "name": "sandbox_image", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "provider": { + "name": "provider", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "spec_hash": { + "name": "spec_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "spec": { + "name": "spec", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "sandbox_image_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "image_ref": { + "name": "image_ref", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "provider_image_id": { + "name": "provider_image_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "build_id": { + "name": "build_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "materialization_generation": { + "name": "materialization_generation", + "type": "bigint", + "primaryKey": false, + "notNull": false + }, + "error_code": { + "name": "error_code", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "error_message": { + "name": "error_message", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "error_detail": { + "name": "error_detail", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "last_used_at": { + "name": "last_used_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "sandbox_image_provider_spec_unique": { + "name": "sandbox_image_provider_spec_unique", + "columns": [ + { + "expression": "provider", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "spec_hash", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "sandbox_image_status_idx": { + "name": "sandbox_image_status_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "sandbox_image_last_used_idx": { + "name": "sandbox_image_last_used_idx", + "columns": [ + { + "expression": "last_used_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.session": { + "name": "session", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "expires_at": { + "name": "expires_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "token": { + "name": "token", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "ip_address": { + "name": "ip_address", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "user_agent": { + "name": "user_agent", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "active_organization_id": { + "name": "active_organization_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "impersonated_by": { + "name": "impersonated_by", + "type": "text", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "session_user_id_idx": { + "name": "session_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "session_token_idx": { + "name": "session_token_idx", + "columns": [ + { + "expression": "token", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "session_user_id_user_id_fk": { + "name": "session_user_id_user_id_fk", + "tableFrom": "session", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "session_active_organization_id_organization_id_fk": { + "name": "session_active_organization_id_organization_id_fk", + "tableFrom": "session", + "tableTo": "organization", + "columnsFrom": ["active_organization_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "session_token_unique": { + "name": "session_token_unique", + "nullsNotDistinct": false, + "columns": ["token"] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.settings": { + "name": "settings", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "theme": { + "name": "theme", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'system'" + }, + "auto_connect": { + "name": "auto_connect", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "telemetry_enabled": { + "name": "telemetry_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "email_preferences": { + "name": "email_preferences", + "type": "json", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "billing_usage_notifications_enabled": { + "name": "billing_usage_notifications_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "show_training_controls": { + "name": "show_training_controls", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "super_user_mode_enabled": { + "name": "super_user_mode_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "mothership_environment": { + "name": "mothership_environment", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'default'" + }, + "error_notifications_enabled": { + "name": "error_notifications_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "snap_to_grid_size": { + "name": "snap_to_grid_size", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "show_action_bar": { + "name": "show_action_bar", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "auto_focus_on_click": { + "name": "auto_focus_on_click", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "timezone": { + "name": "timezone", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "copilot_enabled_models": { + "name": "copilot_enabled_models", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "copilot_auto_allowed_tools": { + "name": "copilot_auto_allowed_tools", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'" + }, + "last_active_workspace_id": { + "name": "last_active_workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "settings_user_id_user_id_fk": { + "name": "settings_user_id_user_id_fk", + "tableFrom": "settings", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "settings_user_id_unique": { + "name": "settings_user_id_unique", + "nullsNotDistinct": false, + "columns": ["user_id"] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.sim_trigger_state": { + "name": "sim_trigger_state", + "schema": "", + "columns": { + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "block_id": { + "name": "block_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "scope_key": { + "name": "scope_key", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "''" + }, + "last_fired_at": { + "name": "last_fired_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "sim_trigger_state_workflow_id_workflow_id_fk": { + "name": "sim_trigger_state_workflow_id_workflow_id_fk", + "tableFrom": "sim_trigger_state", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": { + "sim_trigger_state_workflow_id_block_id_scope_key_pk": { + "name": "sim_trigger_state_workflow_id_block_id_scope_key_pk", + "columns": ["workflow_id", "block_id", "scope_key"] + } + }, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.skill": { + "name": "skill", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "content": { + "name": "content", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "skill_workspace_name_unique": { + "name": "skill_workspace_name_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "skill_workspace_id_workspace_id_fk": { + "name": "skill_workspace_id_workspace_id_fk", + "tableFrom": "skill", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "skill_user_id_user_id_fk": { + "name": "skill_user_id_user_id_fk", + "tableFrom": "skill", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.skill_member": { + "name": "skill_member", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "skill_id": { + "name": "skill_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "invited_by": { + "name": "invited_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "skill_member_user_id_idx": { + "name": "skill_member_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "skill_member_unique": { + "name": "skill_member_unique", + "columns": [ + { + "expression": "skill_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "skill_member_skill_id_skill_id_fk": { + "name": "skill_member_skill_id_skill_id_fk", + "tableFrom": "skill_member", + "tableTo": "skill", + "columnsFrom": ["skill_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "skill_member_user_id_user_id_fk": { + "name": "skill_member_user_id_user_id_fk", + "tableFrom": "skill_member", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "skill_member_invited_by_user_id_fk": { + "name": "skill_member_invited_by_user_id_fk", + "tableFrom": "skill_member", + "tableTo": "user", + "columnsFrom": ["invited_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.sso_domain": { + "name": "sso_domain", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "domain": { + "name": "domain", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "verification_token": { + "name": "verification_token", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "verified_at": { + "name": "verified_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "sso_domain_organization_id_idx": { + "name": "sso_domain_organization_id_idx", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "sso_domain_domain_idx": { + "name": "sso_domain_domain_idx", + "columns": [ + { + "expression": "domain", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "sso_domain_org_domain_unique": { + "name": "sso_domain_org_domain_unique", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "domain", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "sso_domain_verified_unique": { + "name": "sso_domain_verified_unique", + "columns": [ + { + "expression": "domain", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "status = 'verified'", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "sso_domain_organization_id_organization_id_fk": { + "name": "sso_domain_organization_id_organization_id_fk", + "tableFrom": "sso_domain", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "sso_domain_created_by_user_id_fk": { + "name": "sso_domain_created_by_user_id_fk", + "tableFrom": "sso_domain", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.sso_provider": { + "name": "sso_provider", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "issuer": { + "name": "issuer", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "domain": { + "name": "domain", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "oidc_config": { + "name": "oidc_config", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "saml_config": { + "name": "saml_config", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "provider_id": { + "name": "provider_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "domain_verified": { + "name": "domain_verified", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + } + }, + "indexes": { + "sso_provider_provider_id_unique": { + "name": "sso_provider_provider_id_unique", + "columns": [ + { + "expression": "provider_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "sso_provider_domain_idx": { + "name": "sso_provider_domain_idx", + "columns": [ + { + "expression": "domain", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "sso_provider_user_id_idx": { + "name": "sso_provider_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "sso_provider_organization_id_idx": { + "name": "sso_provider_organization_id_idx", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "sso_provider_user_id_user_id_fk": { + "name": "sso_provider_user_id_user_id_fk", + "tableFrom": "sso_provider", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "sso_provider_organization_id_organization_id_fk": { + "name": "sso_provider_organization_id_organization_id_fk", + "tableFrom": "sso_provider", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.subscription": { + "name": "subscription", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "plan": { + "name": "plan", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "reference_id": { + "name": "reference_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "stripe_customer_id": { + "name": "stripe_customer_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "stripe_subscription_id": { + "name": "stripe_subscription_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "period_start": { + "name": "period_start", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "period_end": { + "name": "period_end", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "cancel_at_period_end": { + "name": "cancel_at_period_end", + "type": "boolean", + "primaryKey": false, + "notNull": false + }, + "cancel_at": { + "name": "cancel_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "canceled_at": { + "name": "canceled_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "ended_at": { + "name": "ended_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "seats": { + "name": "seats", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "trial_start": { + "name": "trial_start", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "trial_end": { + "name": "trial_end", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "billing_interval": { + "name": "billing_interval", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "stripe_schedule_id": { + "name": "stripe_schedule_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "metadata": { + "name": "metadata", + "type": "json", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "subscription_reference_status_idx": { + "name": "subscription_reference_status_idx", + "columns": [ + { + "expression": "reference_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "check_enterprise_metadata": { + "name": "check_enterprise_metadata", + "value": "plan != 'enterprise' OR metadata IS NOT NULL" + } + }, + "isRLSEnabled": false + }, + "public.table_jobs": { + "name": "table_jobs", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "table_id": { + "name": "table_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "type": { + "name": "type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'running'" + }, + "payload": { + "name": "payload", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "rows_processed": { + "name": "rows_processed", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "error": { + "name": "error", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "started_at": { + "name": "started_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "completed_at": { + "name": "completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "table_jobs_one_active_per_table": { + "name": "table_jobs_one_active_per_table", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"table_jobs\".\"status\" = 'running' AND \"table_jobs\".\"type\" <> 'export'", + "concurrently": false, + "method": "btree", + "with": {} + }, + "table_jobs_watchdog_idx": { + "name": "table_jobs_watchdog_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "updated_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "table_jobs_table_started_idx": { + "name": "table_jobs_table_started_idx", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "started_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "table_jobs_table_id_user_table_definitions_id_fk": { + "name": "table_jobs_table_id_user_table_definitions_id_fk", + "tableFrom": "table_jobs", + "tableTo": "user_table_definitions", + "columnsFrom": ["table_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "table_jobs_workspace_id_workspace_id_fk": { + "name": "table_jobs_workspace_id_workspace_id_fk", + "tableFrom": "table_jobs", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.table_row_executions": { + "name": "table_row_executions", + "schema": "", + "columns": { + "table_id": { + "name": "table_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "row_id": { + "name": "row_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "group_id": { + "name": "group_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "execution_id": { + "name": "execution_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "job_id": { + "name": "job_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "error": { + "name": "error", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "running_block_ids": { + "name": "running_block_ids", + "type": "text[]", + "primaryKey": false, + "notNull": true, + "default": "'{}'::text[]" + }, + "block_errors": { + "name": "block_errors", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'::jsonb" + }, + "cancelled_at": { + "name": "cancelled_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "enrichment_details": { + "name": "enrichment_details", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "table_row_executions_table_status_idx": { + "name": "table_row_executions_table_status_idx", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"table_row_executions\".\"status\" IN ('queued', 'running', 'pending')", + "concurrently": false, + "method": "btree", + "with": {} + }, + "table_row_executions_execution_id_idx": { + "name": "table_row_executions_execution_id_idx", + "columns": [ + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"table_row_executions\".\"execution_id\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "table_row_executions_table_group_idx": { + "name": "table_row_executions_table_group_idx", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "group_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "table_row_executions_table_id_user_table_definitions_id_fk": { + "name": "table_row_executions_table_id_user_table_definitions_id_fk", + "tableFrom": "table_row_executions", + "tableTo": "user_table_definitions", + "columnsFrom": ["table_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "table_row_executions_row_id_user_table_rows_id_fk": { + "name": "table_row_executions_row_id_user_table_rows_id_fk", + "tableFrom": "table_row_executions", + "tableTo": "user_table_rows", + "columnsFrom": ["row_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": { + "table_row_executions_row_id_group_id_pk": { + "name": "table_row_executions_row_id_group_id_pk", + "columns": ["row_id", "group_id"] + } + }, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.table_run_dispatches": { + "name": "table_run_dispatches", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "table_id": { + "name": "table_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "request_id": { + "name": "request_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "mode": { + "name": "mode", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "scope": { + "name": "scope", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "cursor": { + "name": "cursor", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "limit": { + "name": "limit", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "processed_count": { + "name": "processed_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "is_manual_run": { + "name": "is_manual_run", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "triggered_by_user_id": { + "name": "triggered_by_user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "requested_at": { + "name": "requested_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "completed_at": { + "name": "completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "cancelled_at": { + "name": "cancelled_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "table_run_dispatches_active_idx": { + "name": "table_run_dispatches_active_idx", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "table_run_dispatches_watchdog_idx": { + "name": "table_run_dispatches_watchdog_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "requested_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "table_run_dispatches_table_id_user_table_definitions_id_fk": { + "name": "table_run_dispatches_table_id_user_table_definitions_id_fk", + "tableFrom": "table_run_dispatches", + "tableTo": "user_table_definitions", + "columnsFrom": ["table_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "table_run_dispatches_workspace_id_workspace_id_fk": { + "name": "table_run_dispatches_workspace_id_workspace_id_fk", + "tableFrom": "table_run_dispatches", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "table_run_dispatches_triggered_by_user_id_user_id_fk": { + "name": "table_run_dispatches_triggered_by_user_id_user_id_fk", + "tableFrom": "table_run_dispatches", + "tableTo": "user", + "columnsFrom": ["triggered_by_user_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.table_views": { + "name": "table_views", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "table_id": { + "name": "table_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "config": { + "name": "config", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "is_default": { + "name": "is_default", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "table_views_table_created_idx": { + "name": "table_views_table_created_idx", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "table_views_table_default_unique": { + "name": "table_views_table_default_unique", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "is_default = true", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "table_views_table_id_user_table_definitions_id_fk": { + "name": "table_views_table_id_user_table_definitions_id_fk", + "tableFrom": "table_views", + "tableTo": "user_table_definitions", + "columnsFrom": ["table_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "table_views_workspace_id_workspace_id_fk": { + "name": "table_views_workspace_id_workspace_id_fk", + "tableFrom": "table_views", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "table_views_created_by_user_id_fk": { + "name": "table_views_created_by_user_id_fk", + "tableFrom": "table_views", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.upload_session": { + "name": "upload_session", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "token_hash": { + "name": "token_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "knowledge_base_id": { + "name": "knowledge_base_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "execution_id": { + "name": "execution_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "purpose": { + "name": "purpose", + "type": "upload_session_purpose", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "method": { + "name": "method", + "type": "upload_session_method", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "storage_context": { + "name": "storage_context", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "final_key": { + "name": "final_key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "storage_provider": { + "name": "storage_provider", + "type": "upload_session_provider", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "provider_upload_id": { + "name": "provider_upload_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "provider_object_version": { + "name": "provider_object_version", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "file_name": { + "name": "file_name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "content_type": { + "name": "content_type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "file_size": { + "name": "file_size", + "type": "bigint", + "primaryKey": false, + "notNull": true + }, + "part_size": { + "name": "part_size", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "part_count": { + "name": "part_count", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "status": { + "name": "status", + "type": "upload_session_status", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'uploading'" + }, + "metadata": { + "name": "metadata", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'::jsonb" + }, + "processing_lease_id": { + "name": "processing_lease_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "processing_lease_expires_at": { + "name": "processing_lease_expires_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "completed_file_id": { + "name": "completed_file_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "error": { + "name": "error", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "expires_at": { + "name": "expires_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "completed_at": { + "name": "completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "upload_session_token_hash_unique": { + "name": "upload_session_token_hash_unique", + "columns": [ + { + "expression": "token_hash", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "upload_session_final_key_unique": { + "name": "upload_session_final_key_unique", + "columns": [ + { + "expression": "final_key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "upload_session_status_expires_at_idx": { + "name": "upload_session_status_expires_at_idx", + "columns": [ + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "expires_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.usage_log": { + "name": "usage_log", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "category": { + "name": "category", + "type": "usage_log_category", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "source": { + "name": "source", + "type": "usage_log_source", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "metadata": { + "name": "metadata", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "cost": { + "name": "cost", + "type": "numeric", + "primaryKey": false, + "notNull": true + }, + "event_key": { + "name": "event_key", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "billing_entity_type": { + "name": "billing_entity_type", + "type": "billing_entity_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": false + }, + "billing_entity_id": { + "name": "billing_entity_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "billing_period_start": { + "name": "billing_period_start", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "billing_period_end": { + "name": "billing_period_end", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "execution_id": { + "name": "execution_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "usage_log_user_created_at_idx": { + "name": "usage_log_user_created_at_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "usage_log_source_idx": { + "name": "usage_log_source_idx", + "columns": [ + { + "expression": "source", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "usage_log_workspace_id_idx": { + "name": "usage_log_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "usage_log_workflow_id_idx": { + "name": "usage_log_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "usage_log_event_key_unique": { + "name": "usage_log_event_key_unique", + "columns": [ + { + "expression": "event_key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"usage_log\".\"event_key\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "usage_log_billing_entity_period_idx": { + "name": "usage_log_billing_entity_period_idx", + "columns": [ + { + "expression": "billing_entity_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "billing_entity_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "billing_period_start", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "billing_period_end", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"usage_log\".\"billing_entity_type\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "usage_log_billing_period_cost_idx": { + "name": "usage_log_billing_period_cost_idx", + "columns": [ + { + "expression": "billing_entity_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "billing_entity_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "billing_period_start", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "billing_period_end", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "source", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "cost", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"usage_log\".\"billing_entity_type\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "usage_log_workspace_created_at_idx": { + "name": "usage_log_workspace_created_at_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "usage_log_execution_id_idx": { + "name": "usage_log_execution_id_idx", + "columns": [ + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "usage_log_user_id_user_id_fk": { + "name": "usage_log_user_id_user_id_fk", + "tableFrom": "usage_log", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "usage_log_workspace_id_workspace_id_fk": { + "name": "usage_log_workspace_id_workspace_id_fk", + "tableFrom": "usage_log", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + }, + "usage_log_workflow_id_workflow_id_fk": { + "name": "usage_log_workflow_id_workflow_id_fk", + "tableFrom": "usage_log", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "usage_log_billing_scope_all_or_none": { + "name": "usage_log_billing_scope_all_or_none", + "value": "(\n (\"usage_log\".\"billing_entity_type\" IS NULL AND \"usage_log\".\"billing_entity_id\" IS NULL AND \"usage_log\".\"billing_period_start\" IS NULL AND \"usage_log\".\"billing_period_end\" IS NULL)\n OR\n (\"usage_log\".\"billing_entity_type\" IS NOT NULL AND \"usage_log\".\"billing_entity_id\" IS NOT NULL AND \"usage_log\".\"billing_period_start\" IS NOT NULL AND \"usage_log\".\"billing_period_end\" IS NOT NULL AND \"usage_log\".\"billing_period_start\" < \"usage_log\".\"billing_period_end\")\n )" + } + }, + "isRLSEnabled": false + }, + "public.user": { + "name": "user", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "email": { + "name": "email", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "normalized_email": { + "name": "normalized_email", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "email_verified": { + "name": "email_verified", + "type": "boolean", + "primaryKey": false, + "notNull": true + }, + "image": { + "name": "image", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "stripe_customer_id": { + "name": "stripe_customer_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "role": { + "name": "role", + "type": "text", + "primaryKey": false, + "notNull": false, + "default": "'user'" + }, + "banned": { + "name": "banned", + "type": "boolean", + "primaryKey": false, + "notNull": false, + "default": false + }, + "ban_reason": { + "name": "ban_reason", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "ban_expires": { + "name": "ban_expires", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "user_email_unique": { + "name": "user_email_unique", + "nullsNotDistinct": false, + "columns": ["email"] + }, + "user_normalized_email_unique": { + "name": "user_normalized_email_unique", + "nullsNotDistinct": false, + "columns": ["normalized_email"] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.user_stats": { + "name": "user_stats", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "total_manual_executions": { + "name": "total_manual_executions", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_api_calls": { + "name": "total_api_calls", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_webhook_triggers": { + "name": "total_webhook_triggers", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_scheduled_executions": { + "name": "total_scheduled_executions", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_chat_executions": { + "name": "total_chat_executions", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_mcp_executions": { + "name": "total_mcp_executions", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_tokens_used": { + "name": "total_tokens_used", + "type": "bigint", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_cost": { + "name": "total_cost", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "current_usage_limit": { + "name": "current_usage_limit", + "type": "numeric", + "primaryKey": false, + "notNull": false, + "default": "'5'" + }, + "usage_limit_updated_at": { + "name": "usage_limit_updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false, + "default": "now()" + }, + "current_period_cost": { + "name": "current_period_cost", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "last_period_cost": { + "name": "last_period_cost", + "type": "numeric", + "primaryKey": false, + "notNull": false, + "default": "'0'" + }, + "billed_overage_this_period": { + "name": "billed_overage_this_period", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "pro_period_cost_snapshot": { + "name": "pro_period_cost_snapshot", + "type": "numeric", + "primaryKey": false, + "notNull": false, + "default": "'0'" + }, + "pro_period_cost_snapshot_at": { + "name": "pro_period_cost_snapshot_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "credit_balance": { + "name": "credit_balance", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "total_copilot_cost": { + "name": "total_copilot_cost", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "current_period_copilot_cost": { + "name": "current_period_copilot_cost", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "last_period_copilot_cost": { + "name": "last_period_copilot_cost", + "type": "numeric", + "primaryKey": false, + "notNull": false, + "default": "'0'" + }, + "total_copilot_tokens": { + "name": "total_copilot_tokens", + "type": "bigint", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_copilot_calls": { + "name": "total_copilot_calls", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_mcp_copilot_calls": { + "name": "total_mcp_copilot_calls", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "total_mcp_copilot_cost": { + "name": "total_mcp_copilot_cost", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "current_period_mcp_copilot_cost": { + "name": "current_period_mcp_copilot_cost", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "storage_used_bytes": { + "name": "storage_used_bytes", + "type": "bigint", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "last_active": { + "name": "last_active", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "billing_blocked": { + "name": "billing_blocked", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "billing_blocked_reason": { + "name": "billing_blocked_reason", + "type": "billing_blocked_reason", + "typeSchema": "public", + "primaryKey": false, + "notNull": false + }, + "limit_notifications": { + "name": "limit_notifications", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'::jsonb" + } + }, + "indexes": {}, + "foreignKeys": { + "user_stats_user_id_user_id_fk": { + "name": "user_stats_user_id_user_id_fk", + "tableFrom": "user_stats", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "user_stats_user_id_unique": { + "name": "user_stats_user_id_unique", + "nullsNotDistinct": false, + "columns": ["user_id"] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.user_table_definitions": { + "name": "user_table_definitions", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "folder_id": { + "name": "folder_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "schema": { + "name": "schema", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "metadata": { + "name": "metadata", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "max_rows": { + "name": "max_rows", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 10000 + }, + "row_count": { + "name": "row_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "rows_version": { + "name": "rows_version", + "type": "bigint", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "schema_locked": { + "name": "schema_locked", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "insert_locked": { + "name": "insert_locked", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "update_locked": { + "name": "update_locked", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "delete_locked": { + "name": "delete_locked", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "archived_at": { + "name": "archived_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "user_table_def_workspace_id_idx": { + "name": "user_table_def_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "user_table_def_folder_id_idx": { + "name": "user_table_def_folder_id_idx", + "columns": [ + { + "expression": "folder_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "user_table_def_workspace_name_unique": { + "name": "user_table_def_workspace_name_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"user_table_definitions\".\"archived_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "user_table_def_archived_at_idx": { + "name": "user_table_def_archived_at_idx", + "columns": [ + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "user_table_def_workspace_archived_partial_idx": { + "name": "user_table_def_workspace_archived_partial_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"user_table_definitions\".\"archived_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "user_table_definitions_workspace_id_workspace_id_fk": { + "name": "user_table_definitions_workspace_id_workspace_id_fk", + "tableFrom": "user_table_definitions", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "user_table_definitions_folder_id_folder_id_fk": { + "name": "user_table_definitions_folder_id_folder_id_fk", + "tableFrom": "user_table_definitions", + "tableTo": "folder", + "columnsFrom": ["folder_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + }, + "user_table_definitions_created_by_user_id_fk": { + "name": "user_table_definitions_created_by_user_id_fk", + "tableFrom": "user_table_definitions", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.user_table_row_secret_provenance": { + "name": "user_table_row_secret_provenance", + "schema": "", + "columns": { + "row_id": { + "name": "row_id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "content_updated_at": { + "name": "content_updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "entries": { + "name": "entries", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "user_table_row_secret_provenance_row_id_user_table_rows_id_fk": { + "name": "user_table_row_secret_provenance_row_id_user_table_rows_id_fk", + "tableFrom": "user_table_row_secret_provenance", + "tableTo": "user_table_rows", + "columnsFrom": ["row_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "user_table_row_secret_provenance_status_check": { + "name": "user_table_row_secret_provenance_status_check", + "value": "\"user_table_row_secret_provenance\".\"status\" IN ('exact', 'unknown')" + } + }, + "isRLSEnabled": false + }, + "public.user_table_rows": { + "name": "user_table_rows", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "table_id": { + "name": "table_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "data": { + "name": "data", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "position": { + "name": "position", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "order_key": { + "name": "order_key", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "secret_provenance_version": { + "name": "secret_provenance_version", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "user_table_rows_tenant_data_gin_idx": { + "name": "user_table_rows_tenant_data_gin_idx", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "\"data\" jsonb_path_ops", + "asc": true, + "isExpression": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "gin", + "with": {} + }, + "user_table_rows_workspace_table_idx": { + "name": "user_table_rows_workspace_table_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "user_table_rows_table_position_idx": { + "name": "user_table_rows_table_position_idx", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "position", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "user_table_rows_table_order_key_idx": { + "name": "user_table_rows_table_order_key_idx", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "order_key", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "user_table_rows_table_id_id_idx": { + "name": "user_table_rows_table_id_id_idx", + "columns": [ + { + "expression": "table_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "user_table_rows_table_id_user_table_definitions_id_fk": { + "name": "user_table_rows_table_id_user_table_definitions_id_fk", + "tableFrom": "user_table_rows", + "tableTo": "user_table_definitions", + "columnsFrom": ["table_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "user_table_rows_workspace_id_workspace_id_fk": { + "name": "user_table_rows_workspace_id_workspace_id_fk", + "tableFrom": "user_table_rows", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "user_table_rows_created_by_user_id_fk": { + "name": "user_table_rows_created_by_user_id_fk", + "tableFrom": "user_table_rows", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.verification": { + "name": "verification", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "identifier": { + "name": "identifier", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "value": { + "name": "value", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "expires_at": { + "name": "expires_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "verification_identifier_idx": { + "name": "verification_identifier_idx", + "columns": [ + { + "expression": "identifier", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "verification_expires_at_idx": { + "name": "verification_expires_at_idx", + "columns": [ + { + "expression": "expires_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.waitlist": { + "name": "waitlist", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "email": { + "name": "email", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'pending'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": {}, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "waitlist_email_unique": { + "name": "waitlist_email_unique", + "nullsNotDistinct": false, + "columns": ["email"] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.webhook": { + "name": "webhook", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "deployment_version_id": { + "name": "deployment_version_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "registration_status": { + "name": "registration_status", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "registration_generation": { + "name": "registration_generation", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "config_fingerprint": { + "name": "config_fingerprint", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "prepared_at": { + "name": "prepared_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "block_id": { + "name": "block_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "path": { + "name": "path", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "routing_key": { + "name": "routing_key", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "provider": { + "name": "provider", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "provider_config": { + "name": "provider_config", + "type": "json", + "primaryKey": false, + "notNull": false + }, + "is_active": { + "name": "is_active", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "failed_count": { + "name": "failed_count", + "type": "integer", + "primaryKey": false, + "notNull": false, + "default": 0 + }, + "last_failed_at": { + "name": "last_failed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "archived_at": { + "name": "archived_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "path_deployment_unique": { + "name": "path_deployment_unique", + "columns": [ + { + "expression": "path", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deployment_version_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"webhook\".\"archived_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "webhook_workflow_deployment_idx": { + "name": "webhook_workflow_deployment_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deployment_version_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "webhook_routing_key_active_idx": { + "name": "webhook_routing_key_active_idx", + "columns": [ + { + "expression": "routing_key", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "provider", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"webhook\".\"archived_at\" IS NULL AND \"webhook\".\"routing_key\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "webhook_archived_at_partial_idx": { + "name": "webhook_archived_at_partial_idx", + "columns": [ + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"webhook\".\"archived_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "idx_webhook_on_provider_is_active_workflow_id_deploym_bdeed5468": { + "name": "idx_webhook_on_provider_is_active_workflow_id_deploym_bdeed5468", + "columns": [ + { + "expression": "provider", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "is_active", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deployment_version_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "idx_webhook_on_workflow_id_block_id_updated_at_desc": { + "name": "idx_webhook_on_workflow_id_block_id_updated_at_desc", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "block_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "updated_at", + "isExpression": false, + "asc": false, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "webhook_active_registration_unique": { + "name": "webhook_active_registration_unique", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "block_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"webhook\".\"registration_status\" = 'active' AND \"webhook\".\"block_id\" IS NOT NULL AND \"webhook\".\"archived_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "webhook_candidate_registration_unique": { + "name": "webhook_candidate_registration_unique", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "block_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"webhook\".\"registration_status\" = 'candidate' AND \"webhook\".\"block_id\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "webhook_registration_status_generation_idx": { + "name": "webhook_registration_status_generation_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "registration_status", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "registration_generation", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "webhook_workflow_id_workflow_id_fk": { + "name": "webhook_workflow_id_workflow_id_fk", + "tableFrom": "webhook", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "webhook_deployment_version_id_workflow_deployment_version_id_fk": { + "name": "webhook_deployment_version_id_workflow_deployment_version_id_fk", + "tableFrom": "webhook", + "tableTo": "workflow_deployment_version", + "columnsFrom": ["deployment_version_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "webhook_registration_status_check": { + "name": "webhook_registration_status_check", + "value": "\"webhook\".\"registration_status\" IS NULL OR \"webhook\".\"registration_status\" IN ('active', 'candidate', 'retired', 'orphaned')" + }, + "webhook_registration_generation_check": { + "name": "webhook_registration_generation_check", + "value": "\"webhook\".\"registration_generation\" IS NULL OR \"webhook\".\"registration_generation\" >= 0" + } + }, + "isRLSEnabled": false + }, + "public.webhook_path_claim": { + "name": "webhook_path_claim", + "schema": "", + "columns": { + "path": { + "name": "path", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "generation": { + "name": "generation", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "webhook_path_claim_workflow_idx": { + "name": "webhook_path_claim_workflow_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "webhook_path_claim_workflow_id_workflow_id_fk": { + "name": "webhook_path_claim_workflow_id_workflow_id_fk", + "tableFrom": "webhook_path_claim", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "webhook_path_claim_generation_check": { + "name": "webhook_path_claim_generation_check", + "value": "\"webhook_path_claim\".\"generation\" >= 0" + } + }, + "isRLSEnabled": false + }, + "public.workflow": { + "name": "workflow", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "folder_id": { + "name": "folder_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "sort_order": { + "name": "sort_order", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "last_synced": { + "name": "last_synced", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "is_deployed": { + "name": "is_deployed", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "deployed_at": { + "name": "deployed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "is_public_api": { + "name": "is_public_api", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "locked": { + "name": "locked", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "fork_sync_excluded": { + "name": "fork_sync_excluded", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "run_count": { + "name": "run_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "last_run_at": { + "name": "last_run_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "variables": { + "name": "variables", + "type": "json", + "primaryKey": false, + "notNull": false, + "default": "'{}'" + }, + "archived_at": { + "name": "archived_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "workflow_user_id_idx": { + "name": "workflow_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_workspace_id_idx": { + "name": "workflow_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_user_workspace_idx": { + "name": "workflow_user_workspace_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_workspace_folder_name_active_unique": { + "name": "workflow_workspace_folder_name_active_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "coalesce(\"folder_id\", '')", + "asc": true, + "isExpression": true, + "nulls": "last" + }, + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"workflow\".\"archived_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_folder_sort_idx": { + "name": "workflow_folder_sort_idx", + "columns": [ + { + "expression": "folder_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "sort_order", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_archived_at_idx": { + "name": "workflow_archived_at_idx", + "columns": [ + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_workspace_archived_partial_idx": { + "name": "workflow_workspace_archived_partial_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workflow\".\"archived_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_user_id_user_id_fk": { + "name": "workflow_user_id_user_id_fk", + "tableFrom": "workflow", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_workspace_id_workspace_id_fk": { + "name": "workflow_workspace_id_workspace_id_fk", + "tableFrom": "workflow", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_folder_id_folder_id_fk": { + "name": "workflow_folder_id_folder_id_fk", + "tableFrom": "workflow", + "tableTo": "folder", + "columnsFrom": ["folder_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_blocks": { + "name": "workflow_blocks", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "type": { + "name": "type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "position_x": { + "name": "position_x", + "type": "numeric", + "primaryKey": false, + "notNull": true + }, + "position_y": { + "name": "position_y", + "type": "numeric", + "primaryKey": false, + "notNull": true + }, + "enabled": { + "name": "enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "horizontal_handles": { + "name": "horizontal_handles", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "is_wide": { + "name": "is_wide", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "advanced_mode": { + "name": "advanced_mode", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "trigger_mode": { + "name": "trigger_mode", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "error_enabled": { + "name": "error_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "retry": { + "name": "retry", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "locked": { + "name": "locked", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "height": { + "name": "height", + "type": "numeric", + "primaryKey": false, + "notNull": true, + "default": "'0'" + }, + "sub_blocks": { + "name": "sub_blocks", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "outputs": { + "name": "outputs", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "data": { + "name": "data", + "type": "jsonb", + "primaryKey": false, + "notNull": false, + "default": "'{}'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_blocks_workflow_id_idx": { + "name": "workflow_blocks_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_blocks_type_idx": { + "name": "workflow_blocks_type_idx", + "columns": [ + { + "expression": "type", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_blocks_workflow_id_workflow_id_fk": { + "name": "workflow_blocks_workflow_id_workflow_id_fk", + "tableFrom": "workflow_blocks", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_checkpoints": { + "name": "workflow_checkpoints", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "uuid", + "primaryKey": true, + "notNull": true, + "default": "gen_random_uuid()" + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "chat_id": { + "name": "chat_id", + "type": "uuid", + "primaryKey": false, + "notNull": true + }, + "message_id": { + "name": "message_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workflow_state": { + "name": "workflow_state", + "type": "json", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_checkpoints_user_id_idx": { + "name": "workflow_checkpoints_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_checkpoints_workflow_id_idx": { + "name": "workflow_checkpoints_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_checkpoints_chat_id_idx": { + "name": "workflow_checkpoints_chat_id_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_checkpoints_message_id_idx": { + "name": "workflow_checkpoints_message_id_idx", + "columns": [ + { + "expression": "message_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_checkpoints_user_workflow_idx": { + "name": "workflow_checkpoints_user_workflow_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_checkpoints_workflow_chat_idx": { + "name": "workflow_checkpoints_workflow_chat_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_checkpoints_created_at_idx": { + "name": "workflow_checkpoints_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_checkpoints_chat_created_at_idx": { + "name": "workflow_checkpoints_chat_created_at_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_checkpoints_user_id_user_id_fk": { + "name": "workflow_checkpoints_user_id_user_id_fk", + "tableFrom": "workflow_checkpoints", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_checkpoints_workflow_id_workflow_id_fk": { + "name": "workflow_checkpoints_workflow_id_workflow_id_fk", + "tableFrom": "workflow_checkpoints", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_checkpoints_chat_id_copilot_chats_id_fk": { + "name": "workflow_checkpoints_chat_id_copilot_chats_id_fk", + "tableFrom": "workflow_checkpoints", + "tableTo": "copilot_chats", + "columnsFrom": ["chat_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_deployment_operation": { + "name": "workflow_deployment_operation", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "deployment_version_id": { + "name": "deployment_version_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "version": { + "name": "version", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "previous_active_version_id": { + "name": "previous_active_version_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "action": { + "name": "action", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "protocol_version": { + "name": "protocol_version", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "generation": { + "name": "generation", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'preparing'" + }, + "component_readiness": { + "name": "component_readiness", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'::jsonb" + }, + "error_code": { + "name": "error_code", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "error_message": { + "name": "error_message", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "idempotency_key": { + "name": "idempotency_key", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "request_hash": { + "name": "request_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "actor_id": { + "name": "actor_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "completed_at": { + "name": "completed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_deployment_operation_workflow_generation_unique": { + "name": "workflow_deployment_operation_workflow_generation_unique", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "generation", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_deployment_operation_workflow_idempotency_unique": { + "name": "workflow_deployment_operation_workflow_idempotency_unique", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "idempotency_key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"workflow_deployment_operation\".\"idempotency_key\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_deployment_operation_workflow_in_flight_unique": { + "name": "workflow_deployment_operation_workflow_in_flight_unique", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"workflow_deployment_operation\".\"status\" IN ('preparing', 'activating')", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_deployment_operation_workflow_status_idx": { + "name": "workflow_deployment_operation_workflow_status_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_deployment_operation_deployment_version_idx": { + "name": "workflow_deployment_operation_deployment_version_idx", + "columns": [ + { + "expression": "deployment_version_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_deployment_operation_workflow_version_generation_idx": { + "name": "workflow_deployment_operation_workflow_version_generation_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deployment_version_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "generation", + "isExpression": false, + "asc": false, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_deployment_operation_workflow_id_workflow_id_fk": { + "name": "workflow_deployment_operation_workflow_id_workflow_id_fk", + "tableFrom": "workflow_deployment_operation", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_deployment_operation_deployment_version_id_workflow_deployment_version_id_fk": { + "name": "workflow_deployment_operation_deployment_version_id_workflow_deployment_version_id_fk", + "tableFrom": "workflow_deployment_operation", + "tableTo": "workflow_deployment_version", + "columnsFrom": ["deployment_version_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_deployment_operation_previous_active_version_id_workflow_deployment_version_id_fk": { + "name": "workflow_deployment_operation_previous_active_version_id_workflow_deployment_version_id_fk", + "tableFrom": "workflow_deployment_operation", + "tableTo": "workflow_deployment_version", + "columnsFrom": ["previous_active_version_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "workflow_deployment_operation_action_check": { + "name": "workflow_deployment_operation_action_check", + "value": "\"workflow_deployment_operation\".\"action\" IN ('deploy', 'activate')" + }, + "workflow_deployment_operation_status_check": { + "name": "workflow_deployment_operation_status_check", + "value": "\"workflow_deployment_operation\".\"status\" IN ('preparing', 'activating', 'active', 'failed', 'superseded')" + }, + "workflow_deployment_operation_generation_check": { + "name": "workflow_deployment_operation_generation_check", + "value": "\"workflow_deployment_operation\".\"generation\" > 0" + }, + "workflow_deployment_operation_protocol_version_check": { + "name": "workflow_deployment_operation_protocol_version_check", + "value": "\"workflow_deployment_operation\".\"protocol_version\" > 0" + } + }, + "isRLSEnabled": false + }, + "public.workflow_deployment_version": { + "name": "workflow_deployment_version", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "version": { + "name": "version", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "state": { + "name": "state", + "type": "json", + "primaryKey": false, + "notNull": true + }, + "is_active": { + "name": "is_active", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "workflow_deployment_version_workflow_version_unique": { + "name": "workflow_deployment_version_workflow_version_unique", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "version", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_deployment_version_workflow_active_idx": { + "name": "workflow_deployment_version_workflow_active_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "is_active", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_deployment_version_created_at_idx": { + "name": "workflow_deployment_version_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_deployment_version_workflow_id_workflow_id_fk": { + "name": "workflow_deployment_version_workflow_id_workflow_id_fk", + "tableFrom": "workflow_deployment_version", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_edges": { + "name": "workflow_edges", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "source_block_id": { + "name": "source_block_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "target_block_id": { + "name": "target_block_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "source_handle": { + "name": "source_handle", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "target_handle": { + "name": "target_handle", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_edges_workflow_id_idx": { + "name": "workflow_edges_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_edges_workflow_source_idx": { + "name": "workflow_edges_workflow_source_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "source_block_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_edges_workflow_target_idx": { + "name": "workflow_edges_workflow_target_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "target_block_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_edges_workflow_id_workflow_id_fk": { + "name": "workflow_edges_workflow_id_workflow_id_fk", + "tableFrom": "workflow_edges", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_edges_source_block_id_workflow_blocks_id_fk": { + "name": "workflow_edges_source_block_id_workflow_blocks_id_fk", + "tableFrom": "workflow_edges", + "tableTo": "workflow_blocks", + "columnsFrom": ["source_block_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_edges_target_block_id_workflow_blocks_id_fk": { + "name": "workflow_edges_target_block_id_workflow_blocks_id_fk", + "tableFrom": "workflow_edges", + "tableTo": "workflow_blocks", + "columnsFrom": ["target_block_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_execution_logs": { + "name": "workflow_execution_logs", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "execution_id": { + "name": "execution_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "state_snapshot_id": { + "name": "state_snapshot_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "deployment_version_id": { + "name": "deployment_version_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "level": { + "name": "level", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'running'" + }, + "trigger": { + "name": "trigger", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "started_at": { + "name": "started_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "execution_deadline_at": { + "name": "execution_deadline_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "ended_at": { + "name": "ended_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "total_duration_ms": { + "name": "total_duration_ms", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "execution_data": { + "name": "execution_data", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "cost": { + "name": "cost", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "cost_total": { + "name": "cost_total", + "type": "numeric", + "primaryKey": false, + "notNull": false + }, + "models_used": { + "name": "models_used", + "type": "text[]", + "primaryKey": false, + "notNull": false + }, + "files": { + "name": "files", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_execution_logs_workflow_id_idx": { + "name": "workflow_execution_logs_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_state_snapshot_id_idx": { + "name": "workflow_execution_logs_state_snapshot_id_idx", + "columns": [ + { + "expression": "state_snapshot_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_deployment_version_id_idx": { + "name": "workflow_execution_logs_deployment_version_id_idx", + "columns": [ + { + "expression": "deployment_version_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_trigger_idx": { + "name": "workflow_execution_logs_trigger_idx", + "columns": [ + { + "expression": "trigger", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_level_idx": { + "name": "workflow_execution_logs_level_idx", + "columns": [ + { + "expression": "level", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_started_at_idx": { + "name": "workflow_execution_logs_started_at_idx", + "columns": [ + { + "expression": "started_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_execution_id_unique": { + "name": "workflow_execution_logs_execution_id_unique", + "columns": [ + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_workflow_started_at_idx": { + "name": "workflow_execution_logs_workflow_started_at_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "started_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_workspace_started_at_idx": { + "name": "workflow_execution_logs_workspace_started_at_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "started_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_workspace_started_at_id_desc_idx": { + "name": "workflow_execution_logs_workspace_started_at_id_desc_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "\"started_at\" DESC NULLS LAST", + "asc": true, + "isExpression": true, + "nulls": "last" + }, + { + "expression": "\"id\" DESC", + "asc": true, + "isExpression": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_workspace_cost_total_idx": { + "name": "workflow_execution_logs_workspace_cost_total_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "cost_total", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_models_used_idx": { + "name": "workflow_execution_logs_models_used_idx", + "columns": [ + { + "expression": "models_used", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "gin", + "with": {} + }, + "workflow_execution_logs_workspace_ended_at_id_idx": { + "name": "workflow_execution_logs_workspace_ended_at_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "date_trunc('milliseconds', \"ended_at\")", + "asc": true, + "isExpression": true, + "nulls": "last" + }, + { + "expression": "id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_running_started_at_idx": { + "name": "workflow_execution_logs_running_started_at_idx", + "columns": [ + { + "expression": "started_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "status = 'running'", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_running_deadline_idx": { + "name": "workflow_execution_logs_running_deadline_idx", + "columns": [ + { + "expression": "execution_deadline_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workflow_execution_logs\".\"status\" = 'running' AND \"workflow_execution_logs\".\"execution_deadline_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_execution_logs_completed_ended_at_idx": { + "name": "workflow_execution_logs_completed_ended_at_idx", + "columns": [ + { + "expression": "ended_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "execution_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workflow_execution_logs\".\"status\" = 'completed' AND \"workflow_execution_logs\".\"level\" = 'info' AND \"workflow_execution_logs\".\"ended_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_execution_logs_workflow_id_workflow_id_fk": { + "name": "workflow_execution_logs_workflow_id_workflow_id_fk", + "tableFrom": "workflow_execution_logs", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + }, + "workflow_execution_logs_workspace_id_workspace_id_fk": { + "name": "workflow_execution_logs_workspace_id_workspace_id_fk", + "tableFrom": "workflow_execution_logs", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_execution_logs_state_snapshot_id_workflow_execution_snapshots_id_fk": { + "name": "workflow_execution_logs_state_snapshot_id_workflow_execution_snapshots_id_fk", + "tableFrom": "workflow_execution_logs", + "tableTo": "workflow_execution_snapshots", + "columnsFrom": ["state_snapshot_id"], + "columnsTo": ["id"], + "onDelete": "no action", + "onUpdate": "no action" + }, + "workflow_execution_logs_deployment_version_id_workflow_deployment_version_id_fk": { + "name": "workflow_execution_logs_deployment_version_id_workflow_deployment_version_id_fk", + "tableFrom": "workflow_execution_logs", + "tableTo": "workflow_deployment_version", + "columnsFrom": ["deployment_version_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_execution_snapshots": { + "name": "workflow_execution_snapshots", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "state_hash": { + "name": "state_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "state_data": { + "name": "state_data", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_snapshots_workflow_id_idx": { + "name": "workflow_snapshots_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_snapshots_hash_idx": { + "name": "workflow_snapshots_hash_idx", + "columns": [ + { + "expression": "state_hash", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_snapshots_workflow_hash_idx": { + "name": "workflow_snapshots_workflow_hash_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "state_hash", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_snapshots_created_at_idx": { + "name": "workflow_snapshots_created_at_idx", + "columns": [ + { + "expression": "created_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_execution_snapshots_workflow_id_workflow_id_fk": { + "name": "workflow_execution_snapshots_workflow_id_workflow_id_fk", + "tableFrom": "workflow_execution_snapshots", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_mcp_server": { + "name": "workflow_mcp_server", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "description": { + "name": "description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "is_public": { + "name": "is_public", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_mcp_server_workspace_id_idx": { + "name": "workflow_mcp_server_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_mcp_server_created_by_idx": { + "name": "workflow_mcp_server_created_by_idx", + "columns": [ + { + "expression": "created_by", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_mcp_server_deleted_at_idx": { + "name": "workflow_mcp_server_deleted_at_idx", + "columns": [ + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_mcp_server_workspace_deleted_partial_idx": { + "name": "workflow_mcp_server_workspace_deleted_partial_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workflow_mcp_server\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_mcp_server_workspace_id_workspace_id_fk": { + "name": "workflow_mcp_server_workspace_id_workspace_id_fk", + "tableFrom": "workflow_mcp_server", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_mcp_server_created_by_user_id_fk": { + "name": "workflow_mcp_server_created_by_user_id_fk", + "tableFrom": "workflow_mcp_server", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_mcp_tool": { + "name": "workflow_mcp_tool", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "server_id": { + "name": "server_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "tool_name": { + "name": "tool_name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "tool_description": { + "name": "tool_description", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "parameter_schema": { + "name": "parameter_schema", + "type": "json", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "parameter_description_overrides": { + "name": "parameter_description_overrides", + "type": "json", + "primaryKey": false, + "notNull": true, + "default": "'{}'::json" + }, + "archived_at": { + "name": "archived_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_mcp_tool_server_id_idx": { + "name": "workflow_mcp_tool_server_id_idx", + "columns": [ + { + "expression": "server_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_mcp_tool_workflow_id_idx": { + "name": "workflow_mcp_tool_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_mcp_tool_server_workflow_unique": { + "name": "workflow_mcp_tool_server_workflow_unique", + "columns": [ + { + "expression": "server_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"workflow_mcp_tool\".\"archived_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_mcp_tool_archived_at_partial_idx": { + "name": "workflow_mcp_tool_archived_at_partial_idx", + "columns": [ + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workflow_mcp_tool\".\"archived_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_mcp_tool_server_id_workflow_mcp_server_id_fk": { + "name": "workflow_mcp_tool_server_id_workflow_mcp_server_id_fk", + "tableFrom": "workflow_mcp_tool", + "tableTo": "workflow_mcp_server", + "columnsFrom": ["server_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_mcp_tool_workflow_id_workflow_id_fk": { + "name": "workflow_mcp_tool_workflow_id_workflow_id_fk", + "tableFrom": "workflow_mcp_tool", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_schedule": { + "name": "workflow_schedule", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "deployment_version_id": { + "name": "deployment_version_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "deployment_operation_id": { + "name": "deployment_operation_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "block_id": { + "name": "block_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "cron_expression": { + "name": "cron_expression", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "next_run_at": { + "name": "next_run_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "last_ran_at": { + "name": "last_ran_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "last_queued_at": { + "name": "last_queued_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "trigger_type": { + "name": "trigger_type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "timezone": { + "name": "timezone", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'UTC'" + }, + "failed_count": { + "name": "failed_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "infra_retry_count": { + "name": "infra_retry_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'active'" + }, + "last_failed_at": { + "name": "last_failed_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "source_type": { + "name": "source_type", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'workflow'" + }, + "job_title": { + "name": "job_title", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "prompt": { + "name": "prompt", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "lifecycle": { + "name": "lifecycle", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'persistent'" + }, + "success_condition": { + "name": "success_condition", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "max_runs": { + "name": "max_runs", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "run_count": { + "name": "run_count", + "type": "integer", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "source_chat_id": { + "name": "source_chat_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "source_task_name": { + "name": "source_task_name", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "source_user_id": { + "name": "source_user_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "source_workspace_id": { + "name": "source_workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "secret_scope": { + "name": "secret_scope", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'all'" + }, + "mounted_secrets": { + "name": "mounted_secrets", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "job_history": { + "name": "job_history", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "contexts": { + "name": "contexts", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "excluded_dates": { + "name": "excluded_dates", + "type": "jsonb", + "primaryKey": false, + "notNull": false + }, + "ends_at": { + "name": "ends_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "archived_at": { + "name": "archived_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_schedule_workflow_block_deployment_unique": { + "name": "workflow_schedule_workflow_block_deployment_unique", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "block_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deployment_version_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"workflow_schedule\".\"archived_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_schedule_workflow_deployment_idx": { + "name": "workflow_schedule_workflow_deployment_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deployment_version_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_schedule_archived_at_partial_idx": { + "name": "workflow_schedule_archived_at_partial_idx", + "columns": [ + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workflow_schedule\".\"archived_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "idx_workflow_schedule_on_source_workspace_id_source_t_c07f3bba6": { + "name": "idx_workflow_schedule_on_source_workspace_id_source_t_c07f3bba6", + "columns": [ + { + "expression": "source_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "source_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "archived_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "status", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_schedule_due_workflow_idx": { + "name": "workflow_schedule_due_workflow_idx", + "columns": [ + { + "expression": "next_run_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "last_queued_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deployment_version_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workflow_schedule\".\"archived_at\" IS NULL AND \"workflow_schedule\".\"status\" NOT IN ('disabled', 'completed') AND (\"workflow_schedule\".\"source_type\" = 'workflow' OR \"workflow_schedule\".\"source_type\" IS NULL)", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_schedule_due_job_idx": { + "name": "workflow_schedule_due_job_idx", + "columns": [ + { + "expression": "next_run_at", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "last_queued_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workflow_schedule\".\"archived_at\" IS NULL AND \"workflow_schedule\".\"status\" NOT IN ('disabled', 'completed') AND \"workflow_schedule\".\"source_type\" = 'job'", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_schedule_workflow_id_workflow_id_fk": { + "name": "workflow_schedule_workflow_id_workflow_id_fk", + "tableFrom": "workflow_schedule", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_schedule_deployment_version_id_workflow_deployment_version_id_fk": { + "name": "workflow_schedule_deployment_version_id_workflow_deployment_version_id_fk", + "tableFrom": "workflow_schedule", + "tableTo": "workflow_deployment_version", + "columnsFrom": ["deployment_version_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_schedule_deployment_operation_id_workflow_deployment_operation_id_fk": { + "name": "workflow_schedule_deployment_operation_id_workflow_deployment_operation_id_fk", + "tableFrom": "workflow_schedule", + "tableTo": "workflow_deployment_operation", + "columnsFrom": ["deployment_operation_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + }, + "workflow_schedule_source_user_id_user_id_fk": { + "name": "workflow_schedule_source_user_id_user_id_fk", + "tableFrom": "workflow_schedule", + "tableTo": "user", + "columnsFrom": ["source_user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workflow_schedule_source_workspace_id_workspace_id_fk": { + "name": "workflow_schedule_source_workspace_id_workspace_id_fk", + "tableFrom": "workflow_schedule", + "tableTo": "workspace", + "columnsFrom": ["source_workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workflow_subflows": { + "name": "workflow_subflows", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workflow_id": { + "name": "workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "type": { + "name": "type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "config": { + "name": "config", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workflow_subflows_workflow_id_idx": { + "name": "workflow_subflows_workflow_id_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workflow_subflows_workflow_type_idx": { + "name": "workflow_subflows_workflow_type_idx", + "columns": [ + { + "expression": "workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "type", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workflow_subflows_workflow_id_workflow_id_fk": { + "name": "workflow_subflows_workflow_id_workflow_id_fk", + "tableFrom": "workflow_subflows", + "tableTo": "workflow", + "columnsFrom": ["workflow_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace": { + "name": "workspace", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "color": { + "name": "color", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'#33C482'" + }, + "logo_url": { + "name": "logo_url", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "owner_id": { + "name": "owner_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "organization_id": { + "name": "organization_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "workspace_mode": { + "name": "workspace_mode", + "type": "workspace_mode", + "typeSchema": "public", + "primaryKey": false, + "notNull": true, + "default": "'grandfathered_shared'" + }, + "billed_account_user_id": { + "name": "billed_account_user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "storage_used_bytes": { + "name": "storage_used_bytes", + "type": "bigint", + "primaryKey": false, + "notNull": true, + "default": 0 + }, + "allow_personal_api_keys": { + "name": "allow_personal_api_keys", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": true + }, + "inbox_enabled": { + "name": "inbox_enabled", + "type": "boolean", + "primaryKey": false, + "notNull": true, + "default": false + }, + "inbox_address": { + "name": "inbox_address", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "inbox_provider_id": { + "name": "inbox_provider_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "inbox_secret_scope": { + "name": "inbox_secret_scope", + "type": "text", + "primaryKey": false, + "notNull": true, + "default": "'all'" + }, + "inbox_mounted_secrets": { + "name": "inbox_mounted_secrets", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "archived_at": { + "name": "archived_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "organization_assigned_at": { + "name": "organization_assigned_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "forked_from_workspace_id": { + "name": "forked_from_workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workspace_owner_id_idx": { + "name": "workspace_owner_id_idx", + "columns": [ + { + "expression": "owner_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_organization_id_idx": { + "name": "workspace_organization_id_idx", + "columns": [ + { + "expression": "organization_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_mode_idx": { + "name": "workspace_mode_idx", + "columns": [ + { + "expression": "workspace_mode", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_forked_from_workspace_id_idx": { + "name": "workspace_forked_from_workspace_id_idx", + "columns": [ + { + "expression": "forked_from_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_inbox_provider_id_idx": { + "name": "workspace_inbox_provider_id_idx", + "columns": [ + { + "expression": "inbox_provider_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"workspace\".\"inbox_provider_id\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_owner_id_user_id_fk": { + "name": "workspace_owner_id_user_id_fk", + "tableFrom": "workspace", + "tableTo": "user", + "columnsFrom": ["owner_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workspace_organization_id_organization_id_fk": { + "name": "workspace_organization_id_organization_id_fk", + "tableFrom": "workspace", + "tableTo": "organization", + "columnsFrom": ["organization_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + }, + "workspace_billed_account_user_id_user_id_fk": { + "name": "workspace_billed_account_user_id_user_id_fk", + "tableFrom": "workspace", + "tableTo": "user", + "columnsFrom": ["billed_account_user_id"], + "columnsTo": ["id"], + "onDelete": "no action", + "onUpdate": "no action" + }, + "workspace_forked_from_workspace_id_workspace_id_fk": { + "name": "workspace_forked_from_workspace_id_workspace_id_fk", + "tableFrom": "workspace", + "tableTo": "workspace", + "columnsFrom": ["forked_from_workspace_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "workspace_storage_used_bytes_non_negative": { + "name": "workspace_storage_used_bytes_non_negative", + "value": "\"workspace\".\"storage_used_bytes\" >= 0" + } + }, + "isRLSEnabled": false + }, + "public.workspace_byok_keys": { + "name": "workspace_byok_keys", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "provider_id": { + "name": "provider_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "encrypted_api_key": { + "name": "encrypted_api_key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workspace_byok_workspace_provider_idx": { + "name": "workspace_byok_workspace_provider_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "provider_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_byok_keys_workspace_id_workspace_id_fk": { + "name": "workspace_byok_keys_workspace_id_workspace_id_fk", + "tableFrom": "workspace_byok_keys", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workspace_byok_keys_created_by_user_id_fk": { + "name": "workspace_byok_keys_created_by_user_id_fk", + "tableFrom": "workspace_byok_keys", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace_environment": { + "name": "workspace_environment", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "variables": { + "name": "variables", + "type": "json", + "primaryKey": false, + "notNull": true, + "default": "'{}'" + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workspace_environment_workspace_unique": { + "name": "workspace_environment_workspace_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_environment_workspace_id_workspace_id_fk": { + "name": "workspace_environment_workspace_id_workspace_id_fk", + "tableFrom": "workspace_environment", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace_file": { + "name": "workspace_file", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "key": { + "name": "key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "size": { + "name": "size", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "type": { + "name": "type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "uploaded_by": { + "name": "uploaded_by", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "uploaded_at": { + "name": "uploaded_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workspace_file_workspace_id_idx": { + "name": "workspace_file_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_file_key_idx": { + "name": "workspace_file_key_idx", + "columns": [ + { + "expression": "key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_file_deleted_at_idx": { + "name": "workspace_file_deleted_at_idx", + "columns": [ + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_file_workspace_deleted_partial_idx": { + "name": "workspace_file_workspace_deleted_partial_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workspace_file\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_file_workspace_id_workspace_id_fk": { + "name": "workspace_file_workspace_id_workspace_id_fk", + "tableFrom": "workspace_file", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workspace_file_uploaded_by_user_id_fk": { + "name": "workspace_file_uploaded_by_user_id_fk", + "tableFrom": "workspace_file", + "tableTo": "user", + "columnsFrom": ["uploaded_by"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": { + "workspace_file_key_unique": { + "name": "workspace_file_key_unique", + "nullsNotDistinct": false, + "columns": ["key"] + } + }, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace_file_collab_state": { + "name": "workspace_file_collab_state", + "schema": "", + "columns": { + "file_id": { + "name": "file_id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "doc_state": { + "name": "doc_state", + "type": "bytea", + "primaryKey": false, + "notNull": true + }, + "source_hash": { + "name": "source_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "workspace_file_collab_state_file_id_workspace_files_id_fk": { + "name": "workspace_file_collab_state_file_id_workspace_files_id_fk", + "tableFrom": "workspace_file_collab_state", + "tableTo": "workspace_files", + "columnsFrom": ["file_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace_file_secret_provenance": { + "name": "workspace_file_secret_provenance", + "schema": "", + "columns": { + "file_id": { + "name": "file_id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "content_updated_at": { + "name": "content_updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true + }, + "status": { + "name": "status", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "entries": { + "name": "entries", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": {}, + "foreignKeys": { + "workspace_file_secret_provenance_file_id_workspace_files_id_fk": { + "name": "workspace_file_secret_provenance_file_id_workspace_files_id_fk", + "tableFrom": "workspace_file_secret_provenance", + "tableTo": "workspace_files", + "columnsFrom": ["file_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": { + "workspace_file_secret_provenance_status_check": { + "name": "workspace_file_secret_provenance_status_check", + "value": "\"workspace_file_secret_provenance\".\"status\" IN ('exact', 'unknown')" + } + }, + "isRLSEnabled": false + }, + "public.workspace_files": { + "name": "workspace_files", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "key": { + "name": "key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "user_id": { + "name": "user_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "folder_id": { + "name": "folder_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "context": { + "name": "context", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "chat_id": { + "name": "chat_id", + "type": "uuid", + "primaryKey": false, + "notNull": false + }, + "message_id": { + "name": "message_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "original_name": { + "name": "original_name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "display_name": { + "name": "display_name", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "content_type": { + "name": "content_type", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "size": { + "name": "size", + "type": "integer", + "primaryKey": false, + "notNull": true + }, + "size_bytes": { + "name": "size_bytes", + "type": "bigint", + "primaryKey": false, + "notNull": false + }, + "width": { + "name": "width", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "height": { + "name": "height", + "type": "integer", + "primaryKey": false, + "notNull": false + }, + "deleted_at": { + "name": "deleted_at", + "type": "timestamp", + "primaryKey": false, + "notNull": false + }, + "uploaded_at": { + "name": "uploaded_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "content_updated_at": { + "name": "content_updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "secret_provenance_version": { + "name": "secret_provenance_version", + "type": "integer", + "primaryKey": false, + "notNull": false + } + }, + "indexes": { + "workspace_files_key_active_unique": { + "name": "workspace_files_key_active_unique", + "columns": [ + { + "expression": "key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"workspace_files\".\"deleted_at\" IS NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_workspace_folder_name_active_unique": { + "name": "workspace_files_workspace_folder_name_active_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "coalesce(\"folder_id\", '')", + "asc": true, + "isExpression": true, + "nulls": "last" + }, + { + "expression": "original_name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"workspace_files\".\"deleted_at\" IS NULL AND \"workspace_files\".\"context\" = 'workspace' AND \"workspace_files\".\"workspace_id\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_chat_display_name_unique": { + "name": "workspace_files_chat_display_name_unique", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "display_name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "where": "\"workspace_files\".\"context\" = 'mothership' AND \"workspace_files\".\"chat_id\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_key_idx": { + "name": "workspace_files_key_idx", + "columns": [ + { + "expression": "key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_user_id_idx": { + "name": "workspace_files_user_id_idx", + "columns": [ + { + "expression": "user_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_workspace_id_idx": { + "name": "workspace_files_workspace_id_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_folder_id_idx": { + "name": "workspace_files_folder_id_idx", + "columns": [ + { + "expression": "folder_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_context_idx": { + "name": "workspace_files_context_idx", + "columns": [ + { + "expression": "context", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_chat_id_idx": { + "name": "workspace_files_chat_id_idx", + "columns": [ + { + "expression": "chat_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_deleted_at_idx": { + "name": "workspace_files_deleted_at_idx", + "columns": [ + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_files_workspace_deleted_partial_idx": { + "name": "workspace_files_workspace_deleted_partial_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "deleted_at", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "where": "\"workspace_files\".\"deleted_at\" IS NOT NULL", + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_files_user_id_user_id_fk": { + "name": "workspace_files_user_id_user_id_fk", + "tableFrom": "workspace_files", + "tableTo": "user", + "columnsFrom": ["user_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workspace_files_workspace_id_workspace_id_fk": { + "name": "workspace_files_workspace_id_workspace_id_fk", + "tableFrom": "workspace_files", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workspace_files_folder_id_folder_id_fk": { + "name": "workspace_files_folder_id_folder_id_fk", + "tableFrom": "workspace_files", + "tableTo": "folder", + "columnsFrom": ["folder_id"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + }, + "workspace_files_chat_id_copilot_chats_id_fk": { + "name": "workspace_files_chat_id_copilot_chats_id_fk", + "tableFrom": "workspace_files", + "tableTo": "copilot_chats", + "columnsFrom": ["chat_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace_fork_block_map": { + "name": "workspace_fork_block_map", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "child_workspace_id": { + "name": "child_workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "parent_workflow_id": { + "name": "parent_workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "parent_block_id": { + "name": "parent_block_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "child_workflow_id": { + "name": "child_workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "child_block_id": { + "name": "child_block_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workspace_fork_block_map_child_ws_parent_unique": { + "name": "workspace_fork_block_map_child_ws_parent_unique", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "parent_block_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_fork_block_map_child_ws_child_unique": { + "name": "workspace_fork_block_map_child_ws_child_unique", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "child_block_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_fork_block_map_child_ws_parent_wf_idx": { + "name": "workspace_fork_block_map_child_ws_parent_wf_idx", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "parent_workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_fork_block_map_child_ws_child_wf_idx": { + "name": "workspace_fork_block_map_child_ws_child_wf_idx", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "child_workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_fork_block_map_child_workspace_id_workspace_id_fk": { + "name": "workspace_fork_block_map_child_workspace_id_workspace_id_fk", + "tableFrom": "workspace_fork_block_map", + "tableTo": "workspace", + "columnsFrom": ["child_workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace_fork_dependent_value": { + "name": "workspace_fork_dependent_value", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "child_workspace_id": { + "name": "child_workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "target_workflow_id": { + "name": "target_workflow_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "target_block_id": { + "name": "target_block_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "sub_block_key": { + "name": "sub_block_key", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "value": { + "name": "value", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workspace_fork_dependent_value_child_ws_wf_idx": { + "name": "workspace_fork_dependent_value_child_ws_wf_idx", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "target_workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_fork_dependent_value_field_unique": { + "name": "workspace_fork_dependent_value_field_unique", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "target_workflow_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "target_block_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "sub_block_key", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_fork_dependent_value_child_workspace_id_workspace_id_fk": { + "name": "workspace_fork_dependent_value_child_workspace_id_workspace_id_fk", + "tableFrom": "workspace_fork_dependent_value", + "tableTo": "workspace", + "columnsFrom": ["child_workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace_fork_promote_run": { + "name": "workspace_fork_promote_run", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "child_workspace_id": { + "name": "child_workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "source_workspace_id": { + "name": "source_workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "target_workspace_id": { + "name": "target_workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "direction": { + "name": "direction", + "type": "workspace_fork_promote_direction", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "snapshot": { + "name": "snapshot", + "type": "jsonb", + "primaryKey": false, + "notNull": true + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workspace_fork_promote_run_child_ws_target_unique": { + "name": "workspace_fork_promote_run_child_ws_target_unique", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "target_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_fork_promote_run_target_ws_idx": { + "name": "workspace_fork_promote_run_target_ws_idx", + "columns": [ + { + "expression": "target_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_fork_promote_run_child_workspace_id_workspace_id_fk": { + "name": "workspace_fork_promote_run_child_workspace_id_workspace_id_fk", + "tableFrom": "workspace_fork_promote_run", + "tableTo": "workspace", + "columnsFrom": ["child_workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workspace_fork_promote_run_created_by_user_id_fk": { + "name": "workspace_fork_promote_run_created_by_user_id_fk", + "tableFrom": "workspace_fork_promote_run", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace_fork_resource_map": { + "name": "workspace_fork_resource_map", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "child_workspace_id": { + "name": "child_workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "resource_type": { + "name": "resource_type", + "type": "workspace_fork_resource_type", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "parent_resource_id": { + "name": "parent_resource_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "child_resource_id": { + "name": "child_resource_id", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workspace_fork_resource_map_child_ws_idx": { + "name": "workspace_fork_resource_map_child_ws_idx", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_fork_resource_map_child_ws_type_idx": { + "name": "workspace_fork_resource_map_child_ws_type_idx", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "resource_type", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_fork_resource_map_child_type_parent_unique": { + "name": "workspace_fork_resource_map_child_type_parent_unique", + "columns": [ + { + "expression": "child_workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "resource_type", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "parent_resource_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_fork_resource_map_child_workspace_id_workspace_id_fk": { + "name": "workspace_fork_resource_map_child_workspace_id_workspace_id_fk", + "tableFrom": "workspace_fork_resource_map", + "tableTo": "workspace", + "columnsFrom": ["child_workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workspace_fork_resource_map_created_by_user_id_fk": { + "name": "workspace_fork_resource_map_created_by_user_id_fk", + "tableFrom": "workspace_fork_resource_map", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + }, + "public.workspace_sandbox": { + "name": "workspace_sandbox", + "schema": "", + "columns": { + "id": { + "name": "id", + "type": "text", + "primaryKey": true, + "notNull": true + }, + "workspace_id": { + "name": "workspace_id", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "name": { + "name": "name", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "language": { + "name": "language", + "type": "sandbox_language", + "typeSchema": "public", + "primaryKey": false, + "notNull": true + }, + "dependencies": { + "name": "dependencies", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "cli_tools": { + "name": "cli_tools", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "system_packages": { + "name": "system_packages", + "type": "jsonb", + "primaryKey": false, + "notNull": true, + "default": "'[]'::jsonb" + }, + "spec_hash": { + "name": "spec_hash", + "type": "text", + "primaryKey": false, + "notNull": true + }, + "created_by": { + "name": "created_by", + "type": "text", + "primaryKey": false, + "notNull": false + }, + "created_at": { + "name": "created_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + }, + "updated_at": { + "name": "updated_at", + "type": "timestamp", + "primaryKey": false, + "notNull": true, + "default": "now()" + } + }, + "indexes": { + "workspace_sandbox_workspace_name_unique": { + "name": "workspace_sandbox_workspace_name_unique", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + }, + { + "expression": "name", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": true, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_sandbox_workspace_idx": { + "name": "workspace_sandbox_workspace_idx", + "columns": [ + { + "expression": "workspace_id", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + }, + "workspace_sandbox_spec_hash_idx": { + "name": "workspace_sandbox_spec_hash_idx", + "columns": [ + { + "expression": "spec_hash", + "isExpression": false, + "asc": true, + "nulls": "last" + } + ], + "isUnique": false, + "concurrently": false, + "method": "btree", + "with": {} + } + }, + "foreignKeys": { + "workspace_sandbox_workspace_id_workspace_id_fk": { + "name": "workspace_sandbox_workspace_id_workspace_id_fk", + "tableFrom": "workspace_sandbox", + "tableTo": "workspace", + "columnsFrom": ["workspace_id"], + "columnsTo": ["id"], + "onDelete": "cascade", + "onUpdate": "no action" + }, + "workspace_sandbox_created_by_user_id_fk": { + "name": "workspace_sandbox_created_by_user_id_fk", + "tableFrom": "workspace_sandbox", + "tableTo": "user", + "columnsFrom": ["created_by"], + "columnsTo": ["id"], + "onDelete": "set null", + "onUpdate": "no action" + } + }, + "compositePrimaryKeys": {}, + "uniqueConstraints": {}, + "policies": {}, + "checkConstraints": {}, + "isRLSEnabled": false + } + }, + "enums": { + "public.academy_cert_status": { + "name": "academy_cert_status", + "schema": "public", + "values": ["active", "revoked", "expired"] + }, + "public.background_work_kind": { + "name": "background_work_kind", + "schema": "public", + "values": ["deployment_side_effects", "fork_content_copy", "fork_sync", "fork_rollback"] + }, + "public.background_work_status_value": { + "name": "background_work_status_value", + "schema": "public", + "values": ["pending", "processing", "completed", "completed_with_warnings", "failed"] + }, + "public.billing_blocked_reason": { + "name": "billing_blocked_reason", + "schema": "public", + "values": ["payment_failed", "dispute"] + }, + "public.billing_entity_type": { + "name": "billing_entity_type", + "schema": "public", + "values": ["user", "organization"] + }, + "public.chat_type": { + "name": "chat_type", + "schema": "public", + "values": ["mothership", "copilot"] + }, + "public.copilot_async_tool_status": { + "name": "copilot_async_tool_status", + "schema": "public", + "values": ["pending", "running", "completed", "failed", "cancelled", "delivered"] + }, + "public.copilot_run_status": { + "name": "copilot_run_status", + "schema": "public", + "values": ["active", "paused_waiting_for_tool", "resuming", "complete", "error", "cancelled"] + }, + "public.copilot_tool_permission_decision": { + "name": "copilot_tool_permission_decision", + "schema": "public", + "values": ["allow", "allow_chat", "always_allow", "skip"] + }, + "public.credential_member_role": { + "name": "credential_member_role", + "schema": "public", + "values": ["admin", "member"] + }, + "public.credential_member_status": { + "name": "credential_member_status", + "schema": "public", + "values": ["active", "pending", "revoked"] + }, + "public.credential_type": { + "name": "credential_type", + "schema": "public", + "values": ["oauth", "env_workspace", "env_personal", "service_account"] + }, + "public.data_drain_cadence": { + "name": "data_drain_cadence", + "schema": "public", + "values": ["hourly", "daily"] + }, + "public.data_drain_destination": { + "name": "data_drain_destination", + "schema": "public", + "values": ["s3", "gcs", "azure_blob", "datadog", "bigquery", "snowflake", "webhook"] + }, + "public.data_drain_run_status": { + "name": "data_drain_run_status", + "schema": "public", + "values": ["running", "success", "failed"] + }, + "public.data_drain_run_trigger": { + "name": "data_drain_run_trigger", + "schema": "public", + "values": ["cron", "manual"] + }, + "public.data_drain_source": { + "name": "data_drain_source", + "schema": "public", + "values": ["workflow_logs", "job_logs", "audit_logs", "copilot_chats", "copilot_runs"] + }, + "public.execution_large_value_reference_source": { + "name": "execution_large_value_reference_source", + "schema": "public", + "values": ["execution_log", "paused_snapshot"] + }, + "public.folder_resource_type": { + "name": "folder_resource_type", + "schema": "public", + "values": ["workflow", "file", "knowledge_base", "table"] + }, + "public.invitation_kind": { + "name": "invitation_kind", + "schema": "public", + "values": ["organization", "workspace"] + }, + "public.invitation_membership_intent": { + "name": "invitation_membership_intent", + "schema": "public", + "values": ["internal", "external"] + }, + "public.invitation_status": { + "name": "invitation_status", + "schema": "public", + "values": ["pending", "accepted", "rejected", "cancelled", "expired"] + }, + "public.permission_type": { + "name": "permission_type", + "schema": "public", + "values": ["admin", "write", "read"] + }, + "public.sandbox_image_status": { + "name": "sandbox_image_status", + "schema": "public", + "values": ["pending", "building", "ready", "failed"] + }, + "public.sandbox_language": { + "name": "sandbox_language", + "schema": "public", + "values": ["javascript", "python"] + }, + "public.upload_session_method": { + "name": "upload_session_method", + "schema": "public", + "values": ["put", "multipart"] + }, + "public.upload_session_provider": { + "name": "upload_session_provider", + "schema": "public", + "values": ["local", "s3", "blob", "gcs"] + }, + "public.upload_session_purpose": { + "name": "upload_session_purpose", + "schema": "public", + "values": [ + "workspace_file", + "table_import", + "knowledge_document", + "profile_picture", + "workspace_logo", + "mothership_attachment", + "execution_attachment" + ] + }, + "public.upload_session_status": { + "name": "upload_session_status", + "schema": "public", + "values": [ + "uploading", + "completing", + "finalizing", + "completed", + "aborting", + "aborted", + "failed", + "expired" + ] + }, + "public.usage_log_category": { + "name": "usage_log_category", + "schema": "public", + "values": ["model", "fixed", "tool"] + }, + "public.usage_log_source": { + "name": "usage_log_source", + "schema": "public", + "values": [ + "workflow", + "wand", + "copilot", + "workspace-chat", + "mcp_copilot", + "mothership_block", + "knowledge-base", + "voice-input", + "enrichment", + "voice-output" + ] + }, + "public.workspace_fork_promote_direction": { + "name": "workspace_fork_promote_direction", + "schema": "public", + "values": ["push", "pull"] + }, + "public.workspace_fork_resource_type": { + "name": "workspace_fork_resource_type", + "schema": "public", + "values": [ + "workflow", + "oauth_credential", + "service_account_credential", + "env_var", + "table", + "knowledge_base", + "knowledge_document", + "file", + "mcp_server", + "workflow_mcp_server", + "custom_tool", + "skill" + ] + }, + "public.workspace_mode": { + "name": "workspace_mode", + "schema": "public", + "values": ["personal", "organization", "grandfathered_shared"] + } + }, + "schemas": {}, + "sequences": {}, + "roles": {}, + "policies": {}, + "views": {}, + "_meta": { + "columns": {}, + "schemas": {}, + "tables": {} + } +} diff --git a/packages/db/migrations/meta/_journal.json b/packages/db/migrations/meta/_journal.json index 6e565f3b078..8260eb2cad0 100644 --- a/packages/db/migrations/meta/_journal.json +++ b/packages/db/migrations/meta/_journal.json @@ -2024,6 +2024,13 @@ "when": 1786438204549, "tag": "0289_warm_malice", "breakpoints": true + }, + { + "idx": 290, + "version": "7", + "when": 1786662875077, + "tag": "0290_settings_auto_focus_on_click", + "breakpoints": true } ] } diff --git a/packages/db/schema.ts b/packages/db/schema.ts index a000b0e81eb..4c875f80f09 100644 --- a/packages/db/schema.ts +++ b/packages/db/schema.ts @@ -713,6 +713,7 @@ export const settings = pgTable('settings', { // Canvas preferences snapToGridSize: integer('snap_to_grid_size').notNull().default(0), // 0 = off, 10-50 = grid size showActionBar: boolean('show_action_bar').notNull().default(true), + autoFocusOnClick: boolean('auto_focus_on_click').notNull().default(true), timezone: text('timezone'), diff --git a/packages/testing/src/mocks/schema.mock.ts b/packages/testing/src/mocks/schema.mock.ts index e773d7a965f..e5975e696ff 100644 --- a/packages/testing/src/mocks/schema.mock.ts +++ b/packages/testing/src/mocks/schema.mock.ts @@ -291,6 +291,7 @@ export const schemaMock = { errorNotificationsEnabled: 'errorNotificationsEnabled', snapToGridSize: 'snapToGridSize', showActionBar: 'showActionBar', + autoFocusOnClick: 'autoFocusOnClick', copilotEnabledModels: 'copilotEnabledModels', copilotAutoAllowedTools: 'copilotAutoAllowedTools', lastActiveWorkspaceId: 'lastActiveWorkspaceId', From 177dfad895c76e07e2cc21ef8be62af0f3b0322e Mon Sep 17 00:00:00 2001 From: Waleed Latif Date: Thu, 13 Aug 2026 16:58:06 -0700 Subject: [PATCH 2/3] fix(canvas): keep click-marked framing when auto-focus is off, recut tooltips Gating the whole click branch on the setting also skipped the userFocusedWorkflowIdRef write, which is what stops from running fitView over the user's framing. That would have blown away the framing of exactly the users who turned auto-focus off to keep it. Mark the workflow as user-framed on any plain node click and gate only the camera move. Crop the auto-focus preview to the recording's viewport center so the blocks are legible at the 240px width Tooltip.Preview renders at, and trim the 2.45s of empty lead off the error-notification preview. --- .../[workspaceId]/w/[workflowId]/workflow.tsx | 15 +++++++++++---- .../public/tooltips/auto-connect-on-drop.mp4 | Bin 29203 -> 36232 bytes .../public/tooltips/auto-focus-on-click.mp4 | Bin 16427 -> 52926 bytes .../tooltips/canvas-error-notification.mp4 | Bin 18612 -> 11830 bytes 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/workflow.tsx b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/workflow.tsx index 16a1c404ed5..fdfc5a2ef8e 100644 --- a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/workflow.tsx +++ b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/workflow.tsx @@ -4327,19 +4327,26 @@ const WorkflowContent = React.memo( * Focus the clicked block: animate the camera so the card centers in * the canvas frame. Plain clicks focus both regular cards and subflow * containers; multi-select keeps the camera still. Users who would - * rather keep their own framing turn this off in general settings. - * onNodeClick never fires after a drag. + * rather keep their own framing turn auto-focus off in general + * settings. onNodeClick never fires after a drag. */ if ( !embedded && !isMultiSelect && - isAutoFocusOnClickEnabled && (node.type === 'workflowBlock' || node.type === 'noteBlock' || node.type === 'subflowNode') ) { + /** + * Marked whether or not the camera moves: with auto-focus on the + * click reframes the canvas, and with it off the click is the user + * deliberately keeping the framing they already have. Either way a + * later canvas re-init must not `fitView` over it. + */ userFocusedWorkflowIdRef.current = activeWorkflowId ?? workflowIdParam - focusBlockInView(node) + if (isAutoFocusOnClickEnabled) { + focusBlockInView(node) + } } }, [ diff --git a/apps/sim/public/tooltips/auto-connect-on-drop.mp4 b/apps/sim/public/tooltips/auto-connect-on-drop.mp4 index 8df8989c51d35cd528c6c250bd631404354ff7df..9a72915274e615085dd74ca11f993a9bebd7c9a3 100644 GIT binary patch delta 26593 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 delta 19643 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�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 NOQ|7-|2MTGe**=xzk~n) diff --git a/apps/sim/public/tooltips/auto-focus-on-click.mp4 b/apps/sim/public/tooltips/auto-focus-on-click.mp4 index c49f9136f384525ea0bc75892ad3d89a64719cc9..033cd143e1b04fa9e395926013f0fabc5ecb4e9e 100644 GIT binary patch literal 52926 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%0DNM!rhdwdgYveWvpy>D+p?fmxXVOek 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⩔i+$$?O)kdz9t2Us(}qvg~q#=FKS^MNjq|^QlK>Raok4*d(3Uoj^6&? zIo02sJck;_nCgsfKF(pB?UMO6$t_Zg%@4v_J3Q}d`&d0X6Tmxo^Y;9+opJkc zfur5`zRvq6oLYsJYh70YwHv)V72Y;A>-u^qAAN9;J#PNN9l3)wgREC|EVjl1rIf-g z$yYk%-kmh=e4-7-vx+qEDt{@!P*v;nFJ5?=e0Ep!2zQp&6VY7f%&#dTiw-&zrKsQB z!ukf91~VZRQ#5+~8)?@}=;yCSMcYuuaTt5o>1AH*i=y-^qS_5Gta)dUop0Qum6IZ= z+Jya#Au38`^vfe27U$XSX1bZiXfqEX2CuGX1Qx81OIGZ}NyMI1d8)lMp~Phu*s=DYkEARgJ@{}_4>|J?y^Q{mR<3wZ69`_IE!8)yZ@?`S;O)w zc;Y}*qVayH2qZa;6>0ZYTqrrK78?9QB!j5(alT6GnCvWq`FBXaB$XF(ci|~A!t?l) zaY;x8bdF*=*0aM8)j2_}=Cq%o(D;x#^=~S>%o24gkq3&a8pVF+?7%#@FC=@5!Tz*o#sLXraEJAGYd19_NnfgXlQH5+MJ#-y3OzA=(*`TYgz)~n^V%Xv`m>f z#4J|njtc9Gkql4NQX}XRY4EgngKl~SYkk}}K-pv3S{3$#QxJ1?ePg{- zJ?Mz$vAJ+F<{PP7XHHin#4l^%lCx26_Y3W%v(H@0eua@!UOyWjbDXS+qD^aD7Ed4V zn$!Ct{%GVE{gFfK2Z&{5zD?gEu6;aL@1`7qm5O@QH*~+;>f%otDoOKfM@xZ9x99UU z(P#Mv&R&0zCiszHr%n{s{lY;BE)6R*A-KoC@OKT4|F9UwI5>4EN_I^B(k$hdO71T^ zb#}Ujk?D@cWRvXnd4- zftFQC4TdzQ5C38%gAz&izK@4+SRLAOt@t(fWf({8`v~e6$?>|cqBY^eTf;`=IZrpz zpFlZ4T37E!{;+y@u;FgEJxdcwQ{V7q65aieDcpTVJ3DH`TwlEhTk$6X=DJVu&WD(c zh=m+3JEPBbm-FqTj0euH3mg_nKM~p8wP}gCXpOc|t>EF(iw(7IH#uziQ`%0AUEwkA zL6+@Ogf$&BSh9p@g~|crCNw_rR0Q%?#TC+~xEahBDUS5w}=sYTxyz0h-mN-NTKwjs=ojp@V+=I-j@7DgYL8&w;b?K|6gN3I*3 zraaun$Zknvo{2em5ZSwMTCZn&vD2tS(pDnYi8o2zs5maR@FR9Ig(l5UH$gIuDTXe7 z;jPB(@~I8&)|;q0SNZ5_cI@)_*1gNmni__^-`=~f|0cr@t;W#ecgJm{ltDqcjFsc! zB`@lP&x3=22_%9btz8p!aaC7jXn*uup1EIl9mo*b|l z5Mj41%@4>_vp0J zCt+n|*(wVcjp1~fHyvMEm&P&vtIaaPTv&xCSSU=+HN|D-hU|hJd!GCRiz0Q5BsF^J zKnnSn7hWXYZ9{|J$cS2hwigO@Z91Mpt(g)b8+Sb)Eb9(GI%9Y)u(+i5w)M$t0pQ&N zB!@;4ig7Dytg15CZuMNt{!zrBqP0V1p*BKs$zk6&Nx61x;L4BU*s zZ3w#~mzhgg%u&Ea3tUNn7a3;kB7B9@1N$zpnU`p$R6>9QUIZpC_VPSp@+C?@j5!B+ zYZGq!0EjI7XM_!HUWNrBK{URVvOvq)Y7^Wl_AfgL(#{I>SbzPa#n#LM$Pqvjo+ZJ( z=8!lVcd0NtHe9hqLfJV(XJ^mexjh&QFTsW&^um3JdEXctPq$Vbm@tcN0DdOmha2HO zQ8U&eO)X~xeBd=P}e+Z*$feY{*`xjpfVQi1^Ne}`jWeg_FyhQ#Gn1Jor zf3e*cXPj&MrHi!b*XYPg;B!DgUrwNM{n!7j6 z$1vD7q&lt4I41&Jp**G z1XJGc02G}4i)z0Or9A?EXAat$mEGsxZ-b$u2v2Y$eR?hk*^fa#x;AV%7bhSVlN zlow4{?g=fN75cMncFgp2&!zVTJhywe8Uw2Wmii6T{BQ2RVWR)Z{r6p%`~G&p{D%4N zkq7%_17`bYzkp2u7v1=W>OOzKbMw-k&OqrOe|XB1HZ37;GX4rhl zME#|oB8&;jRlFyF-K&~U{Wn$2KRV}A|1Ylj)c@j|PyIJlT0}k#Ocm(d{HG$#|KiCC zat#00c~52{$mK%k(Edf=+DaVr=gZOPix!zFi1MQISr*{E{(s7x&keKuTW0t_7>tN~ zZkXqP$ehpJ^N-B=JTTjRmGgOEuKQP|KbX&q$mjVt)4gp1c=Al|%WQ4Ee>2e_K?plA zg9Du}0`F$N1QHK_#+8MtPeqG9DncN_gvghH336*I@@$@nxPjgG_3SNq9}*3^+;!-G E0QI0!&Hw-a delta 13314 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 From 53681fb6bc251abc0b2c9c4ed07cb38f04494149 Mon Sep 17 00:00:00 2001 From: Waleed Latif Date: Thu, 13 Aug 2026 17:02:52 -0700 Subject: [PATCH 3/3] docs(canvas): correct useAutoFocusOnClick scope to clicks only The TSDoc claimed the preference also gated arrow-key navigation, which calls focusBlockInView without consulting it. State the click-only scope and why arrow-key navigation and block creation are excluded. --- apps/sim/hooks/queries/general-settings.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/sim/hooks/queries/general-settings.ts b/apps/sim/hooks/queries/general-settings.ts index c2483eaa59d..1a24ce87383 100644 --- a/apps/sim/hooks/queries/general-settings.ts +++ b/apps/sim/hooks/queries/general-settings.ts @@ -126,8 +126,12 @@ export function useShowActionBar(): boolean { } /** - * Whether the canvas camera animates to center a block when it is clicked or - * reached with arrow-key navigation. + * Whether the canvas camera animates to center a block when it is clicked. + * + * Scoped to clicks only. Arrow-key navigation and block creation deliberately + * keep following the camera regardless — both move selection to a block that + * may be off-screen, so suppressing the move would leave the user with no way + * to tell where the selection went. */ export function useAutoFocusOnClick(): boolean { const { data } = useGeneralSettings()