ca243d7efc
chore(web): pre-align HITL frontend from build/feat/hitl
2026-02-09 15:34:15 +08:00
625163705b
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-04 16:59:23 +08:00
468990cc39
fix: remove api reference doc link en prefix ( #31910 )
2026-02-04 14:58:26 +08:00
f1c15e0a17
Revert "refactor!: migrate commonLayout to SSR prefetch with TanStack Query hydration"
...
This reverts commit 2833965815 .
2026-02-01 19:06:45 +08:00
e2913d9ee1
Revert "refactor!: replace Zustand global store with TanStack Query for systemFeatures"
...
This reverts commit 806ece9a67 .
2026-02-01 19:06:45 +08:00
806ece9a67
refactor!: replace Zustand global store with TanStack Query for systemFeatures
...
Follow-up to SSR prefetch migration (2833965 ). Eliminates the Zustand
middleman that was syncing TanStack Query data into a separate store.
- Remove useGlobalPublicStore Zustand store entirely
- Create hooks/use-global-public.ts with useSystemFeatures,
useSystemFeaturesQuery, useIsSystemFeaturesPending, useSetupStatusQuery
- Migrate all 93 consumers to import from @/hooks/use-global-public
- Simplify global-public-context.tsx to a thin provider component
- Update 18 test files to mock the new hook interface
- Fix SetupStatusResponse.setup_at type from Date to string (JSON)
- Fix setup-status.spec.ts mock target to match consoleClient
BREAKING CHANGE: useGlobalPublicStore is removed. Use useSystemFeatures()
from @/hooks/use-global-public instead.
2026-02-01 19:06:08 +08:00
2833965815
refactor!: migrate commonLayout to SSR prefetch with TanStack Query hydration
...
BREAKING CHANGE: commonLayout is now an async Server Component that
prefetches user-profile and current-workspace on the server via
TanStack Query's prefetchQuery + HydrationBoundary pattern. This
replaces the previous purely client-side data fetching approach.
Key changes:
- **SSR data prefetch (root layout)**: prefetch systemFeatures and
setupStatus in the root layout server component, wrap children with
HydrationBoundary to hydrate TanStack Query cache on the client.
- **SSR data prefetch (commonLayout)**: convert commonLayout from a
client component to an async server component that prefetches
user-profile (with x-version/x-env response headers) and
current-workspace. Client-side providers/UI extracted to a new
layout-client.tsx component.
- **Add loading.tsx (Next.js convention)**: add a Next.js loading.tsx
file in commonLayout that shows a centered spinner. This replaces the
deleted Splash component but works via Next.js built-in Suspense
boundary for route segments, not a client-side overlay.
- **Extract shared SSR fetch utilities (utils/ssr-fetch.ts)**: create
serverFetch (unauthenticated) and serverFetchWithAuth (with cookie
forwarding + CSRF token). getAuthHeaders is wrapped with React.cache()
for per-request deduplication across multiple SSR fetches.
- **Refactor AppInitializer**: split single monolithic async IIFE effect
into three independent useEffects (oauth tracking, education verify,
setup status check). Use useReducer for init flag, useRef to prevent
duplicate tracking in StrictMode. Now reads setupStatus from TanStack
Query cache (useSetupStatusQuery) instead of fetching independently.
- **Refactor global-public-context**: move Zustand store sync from
queryFn side-effect to a dedicated useEffect, keeping queryFn pure.
fetchSystemFeatures now simply returns the API response.
- **Fix usePSInfo SSR crash**: defer globalThis.location access from
hook top-level to callback execution time via getDomain() helper,
preventing "Cannot read properties of undefined" during server render.
- **Remove Splash component**: delete the client-side loading overlay
that relied on useIsLogin polling, replaced by Next.js loading.tsx.
- **Remove staleTime/gcTime overrides in useUserProfile**: allow the
SSR-prefetched data to be reused via default cache policy instead of
forcing refetch on every mount.
- **Revert middleware auth guard**: remove the cookie-based session
check in proxy.ts that caused false redirects to /signin for
authenticated users (Dify's auth uses token refresh, not simple
cookie presence).
2026-02-01 18:29:41 +08:00
473262d70e
refactor: type event emitter payloads
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-Claude )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-01-31 00:04:57 +08:00
90fe9abab7
revert: revert human input relevant code ( #31766 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-30 19:18:49 +08:00
b7e752078c
fix: trigger doc link ( #31754 )
2026-01-30 17:30:24 +08:00
fedd097f63
feat: Human Input node (Frontend Part) ( #31631 )
...
Co-authored-by: JzoNg <jzongcode@gmail.com >
Co-authored-by: Joel <iamjoel007@gmail.com >
Co-authored-by: yessenia <yessenia.contact@gmail.com >
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com >
2026-01-30 10:16:46 +08:00
b9f718005c
feat: frontend part of support try apps ( #31287 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com >
2026-01-22 18:16:37 +08:00
036f6ef5ab
fix: following docs link fix ( #31390 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-22 15:02:37 +08:00
061feebd87
fix: check and update doc links ( #30849 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-21 16:31:48 +08:00
91da784f84
refactor: init orpc contract ( #30885 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
2026-01-13 23:38:28 +09:00
1fbdf6b465
refactor(web): setup status caching ( #30798 )
2026-01-13 16:59:49 +08:00
9161936f41
refactor(web): extract isServer/isClient utility & upgrade Node.js to 22.12.0 ( #30803 )
...
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
2026-01-12 12:57:43 +08:00
d4432ed80f
refactor: marketplace state management ( #30702 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-09 14:31:24 +08:00
cd1af04dee
feat: model total credits ( #30727 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
2026-01-08 14:11:44 +08:00
e335cd0ef4
refactor(web): remove useMixedTranslation, better resource loading ( #30630 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-07 13:20:09 +08:00
c29cfd18f3
feat: revert model total credits ( #30518 )
2026-01-04 18:29:19 +08:00
84cbf0526d
feat: model total credits ( #26942 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
2026-01-04 15:26:37 +08:00
f28a08a696
fix: correct useEducationStatus query cache configuration ( #30416 )
2025-12-31 13:51:05 +08:00
2aaaa4bd34
feat(web): migrate from es-toolkit/compat to native es-toolkit ( #30244 ) ( #30246 )
2025-12-31 11:13:22 +08:00
1873b5a766
chore: remove useless __esModule ( #30366 )
2025-12-30 15:37:16 +08:00
2399d00d86
refactor(i18n): about locales ( #30336 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
2025-12-30 14:38:23 +08:00
673209d086
refactor(web): organize devtools components ( #30318 )
2025-12-30 09:21:41 +08:00
6d0e36479b
refactor(i18n): use JSON with flattened key and namespace ( #30114 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-29 14:52:32 +08:00
3ae7788933
refactor(query-state): migrate query param state management to nuqs ( #30184 )
...
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-29 11:24:54 +08:00
1e86535c4a
refactor(web): Migrate to Unified TanStack Devtools ( #30279 )
2025-12-29 09:43:44 +08:00
3cbbb06dc4
chore(web): migrate lodash-es to es-toolkit compat ( #30126 )
2025-12-25 09:44:57 +08:00
403adefc07
chore: lint require and how to import react ( #30041 )
2025-12-23 18:02:10 +08:00
f2842da397
chore(web): new lint setup ( #30020 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
2025-12-23 16:58:55 +08:00
eabdc5f0eb
refactor(web): migrate to Vitest and esm ( #29974 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
2025-12-22 16:35:22 +08:00
079620714e
refactor: migrate common service toward TanStack Query ( #29009 )
2025-12-19 17:34:14 +08:00
91e5db3e83
chore: Advance the timing of the dataset payment prompt ( #29497 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
Co-authored-by: twwu <twwu@dify.ai >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-11 15:49:42 +08:00
18601d8b38
Refactor datasets service toward TanStack Query ( #29008 )
...
Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com >
2025-12-09 13:48:23 +08:00
e6d504558a
chore: remove log in test case ( #29284 )
2025-12-08 17:47:16 +08:00
0cb696b208
chore: add provider context mock ( #29201 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-08 17:23:45 +08:00
fbb2d076f4
integrate Amplitude analytics into the application ( #29049 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: Joel <iamjoel007@gmail.com >
2025-12-03 14:22:12 +08:00
dbecba710b
frontend auto testing rules ( #28679 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: 姜涵煦 <hanxujiang@jianghanxudeMacBook-Pro.local >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-11-26 15:18:07 +08:00
a1b735a4c0
feat: trigger billing ( #28335 )
...
Signed-off-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-11-20 10:15:23 +08:00
b76e17b25d
feat: introduce trigger functionality ( #27644 )
...
Signed-off-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: Stream <Stream_2@qq.com >
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com >
Co-authored-by: zhsama <torvalds@linux.do >
Co-authored-by: Harry <xh001x@hotmail.com >
Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: yessenia <yessenia.contact@gmail.com >
Co-authored-by: hjlarry <hjlarry@163.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: WTW0313 <twwu@dify.ai >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-12 17:59:37 +08:00
fe50093c18
fix: prevent fetch version info in enterprise edition ( #27923 )
2025-11-06 17:59:53 +08:00
29afc0657d
Fix/27468 in dify 192 the iframe embed cannot pass the user id in system variable ( #27524 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-28 09:19:54 +08:00
43bcf40f80
refactor: update installed app component to handle missing params and improve type safety ( #27331 )
2025-10-27 14:38:58 +08:00
bebb4ffbaa
Fix type error ( #27217 )
2025-10-22 11:43:37 +08:00
d6e7543ba6
fix: passport outdate caused webapp reload ( #27175 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-10-21 11:47:28 +08:00
9a5f214623
refactor: replace localStorage with HTTP-only cookies for auth tokens ( #24365 )
...
Signed-off-by: NeatGuyCoding <15627489+NeatGuyCoding@users.noreply.github.com >
Signed-off-by: lyzno1 <yuanyouhuilyz@gmail.com >
Signed-off-by: kenwoodjw <blackxin55+@gmail.com >
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Yunlu Wen <wylswz@163.com >
Co-authored-by: Joel <iamjoel007@gmail.com >
Co-authored-by: GareArc <chen4851@purdue.edu >
Co-authored-by: NFish <douxc512@gmail.com >
Co-authored-by: Davide Delbianco <davide.delbianco@outlook.com >
Co-authored-by: minglu7 <1347866672@qq.com >
Co-authored-by: Ponder <ruan.lj@foxmail.com >
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: heyszt <270985384@qq.com >
Co-authored-by: Asuka Minato <i@asukaminato.eu.org >
Co-authored-by: Guangdong Liu <liugddx@gmail.com >
Co-authored-by: Eric Guo <eric.guocz@gmail.com >
Co-authored-by: NeatGuyCoding <15627489+NeatGuyCoding@users.noreply.github.com >
Co-authored-by: XlKsyt <caixuesen@outlook.com >
Co-authored-by: Dhruv Gorasiya <80987415+DhruvGorasiya@users.noreply.github.com >
Co-authored-by: crazywoola <427733928@qq.com >
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com >
Co-authored-by: hj24 <mambahj24@gmail.com >
Co-authored-by: GuanMu <ballmanjq@gmail.com >
Co-authored-by: 非法操作 <hjlarry@163.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Tonlo <123lzs123@gmail.com >
Co-authored-by: Yusuke Yamada <yamachu.dev@gmail.com >
Co-authored-by: Novice <novice12185727@gmail.com >
Co-authored-by: kenwoodjw <blackxin55+@gmail.com >
Co-authored-by: Ademílson Tonato <ademilsonft@outlook.com >
Co-authored-by: znn <jubinkumarsoni@gmail.com >
Co-authored-by: yangzheli <43645580+yangzheli@users.noreply.github.com >
2025-10-19 21:29:04 +08:00
650e38e17f
refactor: improve TypeScript types for NodeCardProps and debug configuration context ( #27001 )
2025-10-16 22:16:01 +08:00