Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1218 commits
Select commit Hold shift + click to select a range
17d9376
feat(knowledge-fs): prepare optional drive metadata verification
JohnJyong Sep 9, 2026
577d409
fix(knowledge): contain API key scope picker scrolling
hyoban Sep 9, 2026
f4a4895
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 9, 2026
775501b
fix(knowledge): align dependencies and lint after main merge
hyoban Sep 9, 2026
d322fd8
feat(knowledge-fs): add semantic graph matching and constrained path …
JohnJyong Sep 9, 2026
740005b
test(knowledge-fs): include graph projections in migration runner fix…
JohnJyong Sep 9, 2026
ca0d736
fix(knowledge): derive New RAG state without effect synchronization
hyoban Sep 9, 2026
cbd488c
fix(knowledge): centralize URL atoms and synchronize navigation
hyoban Sep 9, 2026
df37966
refactor(knowledge): simplify URL atom APIs and call sites
hyoban Sep 9, 2026
d7cd57b
fix(knowledge): integrate reviewed nuqs-jotai runtime changes
hyoban Sep 9, 2026
95f8d7f
refactor(knowledge): integrate nuqs-owned query groups
hyoban Sep 9, 2026
56db98f
chore: merge main into deploy/konwledge
hyoban Sep 9, 2026
5e3072c
fix(install): keep footer position stable while loading
hyoban Sep 9, 2026
3b677ec
fix(navigation): detect shortcut platform on the server
hyoban Sep 9, 2026
e0171b4
fix(navigation): prefetch workspace features for initial render
hyoban Sep 9, 2026
4df4e13
chore: merge main into deploy/konwledge
hyoban Sep 10, 2026
ed67c47
feat(knowledge-fs): report agent investigation failures
JohnJyong Sep 10, 2026
d847a3a
test(knowledge-fs): cover agent investigation delivery failures
JohnJyong Sep 10, 2026
72eec1d
fix(web): center settings dialog across viewport sizes
hyoban Sep 10, 2026
91db65c
fix(web): extend settings panel background to viewport edge
hyoban Sep 10, 2026
d3670a1
feat(online-drive): preserve metadata through datasource bridge
FFXN Sep 11, 2026
46d0290
fix(web): remove misleading overview upload failure banner
hyoban Sep 11, 2026
3a0344a
fix(knowledge-fs): handle per-document reindex failures
hyoban Sep 11, 2026
e4cc2fc
Merge remote-tracking branch 'origin/deploy/konwledge' into deploy/ko…
FFXN Sep 11, 2026
d23c4df
fix(knowledge-fs): use document task snapshots for status and recovery
hyoban Sep 11, 2026
3a0b542
delete knowledge-fs
JohnJyong Sep 17, 2026
86b3194
Merge remote-tracking branch 'origin/deploy/konwledge' into deploy/ko…
JohnJyong Sep 17, 2026
e96c652
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 17, 2026
1082650
fix(web): restore knowledge collapsible trigger styles
hyoban Sep 17, 2026
ee07ec8
chore(knowledge-fs): remove stale configuration and test artifacts
hyoban Sep 17, 2026
1dcb465
fix(web): clarify knowledge base availability after upgrade
hyoban Sep 17, 2026
dae3060
fix(web): keep API key table actions visible
hyoban Sep 17, 2026
437d750
fix(web): use primary button for API key creation
hyoban Sep 17, 2026
762736f
fix(web): show pointer cursor for knowledge source options
hyoban Sep 17, 2026
372e8bc
fix(web): localize knowledge overview time range labels
hyoban Sep 17, 2026
07ea2b9
fix(knowledge): expose recoverable service APIs and pin engine contracts
JohnJyong Sep 17, 2026
33bfa4f
fix(web): align knowledge source field label typography
hyoban Sep 17, 2026
675d5ca
fix(web): unify knowledge overview heading typography
hyoban Sep 17, 2026
2593502
fix(web): use accent ghost button for all activity
hyoban Sep 17, 2026
f454da6
fix(web): unify knowledge overlay close button sizing
hyoban Sep 17, 2026
7daf606
fix(web): remove redundant knowledge card labels
hyoban Sep 17, 2026
ba1c643
fix(web): align knowledge card actions with design
hyoban Sep 17, 2026
8061a15
fix(web): correct knowledge advanced settings chevron direction
hyoban Sep 17, 2026
47cb671
fix(knowledge): support selected members during creation
JohnJyong Sep 17, 2026
06e4730
fix(knowledge): save all settings from one form
JohnJyong Sep 17, 2026
49fba5c
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 18, 2026
775133d
fix(knowledge): fix overview tips in dark mode and hide neutral changes
hyoban Sep 18, 2026
9583c98
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 18, 2026
0323ba2
chore(i18n): remove unused knowledge translation keys
hyoban Sep 18, 2026
898373e
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 18, 2026
7b482e4
fix(knowledge): use explicit column for authorization timestamp update
hyoban Sep 18, 2026
f094e3f
feat(knowledge): support plan-based document queue routing
hjlarry Sep 20, 2026
fc50e67
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 21, 2026
7b5f6a2
fix(web): preserve knowledge UI behavior after main merge
hyoban Sep 21, 2026
74cb7ba
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 22, 2026
e781e78
feat(knowledge): reuse Dify vector storage for KnowledgeFS (#42731)
JohnJyong Sep 22, 2026
686e760
fix: reconcile knowledge branch with main migrations and queries
hyoban Sep 22, 2026
8c3e738
Merge remote-tracking branch 'origin/deploy/konwledge' into deploy/ko…
hyoban Sep 22, 2026
1dc6a44
fix(knowledge): allowlist sandbox usage merge migration in coverage gate
hyoban Sep 22, 2026
aca6580
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 23, 2026
104bbe1
fix(cli): adapt requests to the OpenAPI operation catalog
hyoban Sep 23, 2026
f09af0c
feat(knowledge): support Elasticsearch and Weaviate vector storage (#…
JohnJyong Sep 23, 2026
34f3955
fix(ci): require native vector tests in final KnowledgeFS gate (#42795)
JohnJyong Sep 23, 2026
59830a7
test(ci): include native vector results in gate regression matrix (#4…
JohnJyong Sep 23, 2026
039694b
fix(knowledge): provision TiDB vector clusters for new tenants (#42810)
JohnJyong Sep 23, 2026
189cc20
fix(knowledge): remove independent vector storage switch (#42827)
JohnJyong Sep 23, 2026
5ab31b7
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 24, 2026
6380085
fix(knowledge): include vector kind in collection names
JohnJyong Sep 24, 2026
29158db
fix(knowledge): retain Weaviate collection cleanup helper
JohnJyong Sep 24, 2026
b69e255
fix(knowledge): support TiDB authorized vector filtering
JohnJyong Sep 24, 2026
5ab1d0a
fix(knowledge): respect TiDB collection deletion constraints
JohnJyong Sep 24, 2026
dd80cdc
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 24, 2026
68d0a4a
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 24, 2026
00317e4
perf(web): load knowledge translations by feature
hyoban Sep 24, 2026
c93dcb8
feat(knowledge): route full-text indexes through VECTOR_STORE (#42915)
JohnJyong Sep 24, 2026
df5737c
fix(knowledge): show and retry incomplete graph enrichment (#42972)
JohnJyong Sep 26, 2026
fd25702
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Sep 28, 2026
3d06837
fix(ci): restore knowledge deployment checks and agent builds
hyoban Sep 28, 2026
20e4e5b
revert: keep default agent dependency download timeout
hyoban Sep 28, 2026
e276e13
fix(knowledge): show paused and deleted golden question sources (#43082)
JohnJyong Sep 28, 2026
2e33750
fix(knowledge): preserve document and vector quota failures
hjlarry Sep 30, 2026
1c05faa
fix(knowledge): preserve console upstream failure statuses
hjlarry Sep 30, 2026
a27b79e
fix(knowledge): show quota failures and preserve partial uploads
hjlarry Sep 30, 2026
0c4b7f6
fix: silence KnowledgeFS staged upload cleanup errors
hjlarry Sep 30, 2026
e8b8cf8
feat: precheck KnowledgeFS upload quotas
hjlarry Sep 30, 2026
cb7780a
fix: refresh KnowledgeFS plan usage after document changes
hjlarry Sep 30, 2026
6609998
fix: distinguish KnowledgeFS vector quota failures
hjlarry Sep 30, 2026
c027099
chore: retrigger KnowledgeFS CI and deployment
hjlarry Sep 30, 2026
a1f9d03
fix(web): align new RAG upload limits with free plan rules
hjlarry Oct 8, 2026
971dab3
fix: preserve new RAG model billing attribution
hjlarry Oct 8, 2026
5f2edec
fix(web): limit cloud knowledge activity to recent 90 days
hjlarry Oct 8, 2026
7fb2f93
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 8, 2026
ad2672b
Merge remote-tracking branch 'origin/deploy/konwledge' into deploy/ko…
hyoban Oct 8, 2026
f74f847
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 8, 2026
cdd5de4
fix(web): always show knowledge source connector icons
hyoban Oct 8, 2026
c9b75b0
fix(web): prevent crawl option labels from scrolling the creation dialog
hyoban Oct 8, 2026
2928fb2
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 9, 2026
709e879
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 10, 2026
e179989
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 11, 2026
e464611
ci: use Python 3.13 for KnowledgeFS checks
hyoban Oct 11, 2026
48a2577
fix(ci): restore KnowledgeFS gates after mainline sync
hyoban Oct 11, 2026
3d2a031
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 15, 2026
1d9ecba
fix: close gaps left by the mainline merge
hyoban Oct 15, 2026
8c176b8
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 15, 2026
d01c50c
ci(knowledge-fs): classify the archive bundle deletion merge migration
hyoban Oct 15, 2026
8274efc
chore(web): drop the stale shortcut platform copy and unused exports
hyoban Oct 15, 2026
4a1d398
fix: keep main's search Escape handling and error contract
hyoban Oct 15, 2026
3e9a74c
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 15, 2026
9359d1f
[autofix.ci] apply automated fixes
autofix-ci[bot] Oct 15, 2026
5c70cfe
test: fix branch tests broken against current main
hyoban Oct 15, 2026
e1f4be6
chore(web): drop the unused page leave guard registration
hyoban Oct 15, 2026
f8c571a
test(api): replace dynamic getattr in knowledge tests with typed call…
hyoban Oct 15, 2026
055af12
test(api): replace test doubles in KnowledgeFS extension and reposito…
hyoban Oct 15, 2026
5294da4
test(api): replace mocks in knowledge upgrade and revocation tests wi…
hyoban Oct 15, 2026
9f8469f
test(api): replace mocks in knowledge fs facade/runtime/application t…
hyoban Oct 15, 2026
e3294ae
test(api): use real session and recording bindings in KnowledgeFS pub…
hyoban Oct 15, 2026
da8c265
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 15, 2026
fbaeaf8
test(api): replace mocks in KnowledgeFS upgrade service tests with ty…
hyoban Oct 15, 2026
515c971
test(api): replace test doubles in KnowledgeFS command tests
hyoban Oct 15, 2026
acf03bc
test(api): replace test doubles in knowledge fs openapi, plugin and d…
hyoban Oct 15, 2026
4af9f42
test(api): replace mocks in KnowledgeFS source import commit tests wi…
hyoban Oct 15, 2026
70be387
test(api): replace mocks in knowledge fs capability and vector backen…
hyoban Oct 15, 2026
23b0129
fix(api): use contextlib.suppress for ignored KnowledgeFS exceptions
hyoban Oct 15, 2026
8378bb9
test(api): replace mocks in KnowledgeFS data facade tests with typed …
hyoban Oct 15, 2026
79c5d23
test(api): replace mocks in knowledge fs vector store tests
hyoban Oct 15, 2026
cc0c03d
test(api): replace mocks in KnowledgeFS lifecycle remote HTTP tests w…
hyoban Oct 15, 2026
6baa5c6
test(api): replace test doubles in knowledge fs resource delegation t…
hyoban Oct 15, 2026
9d60f7d
test(api): annotate fake session factory with Generator
hyoban Oct 15, 2026
d651538
test(api): replace mocks in knowledge fs native text store tests
hyoban Oct 15, 2026
813e80a
test(api): replace mocks in knowledge fs staged upload tests
hyoban Oct 15, 2026
fadf07c
test(api): drive KnowledgeFS source task tests through a recording fa…
hyoban Oct 15, 2026
10999c6
test(api): replace test doubles in knowledge fs product controller tests
hyoban Oct 15, 2026
ac093ae
test(api): replace mocks in knowledge fs control space management tests
hyoban Oct 15, 2026
a9fe279
test(api): replace mock doubles in knowledge-fs service tests with ty…
hyoban Oct 15, 2026
8284e62
test(api): replace mocks in knowledge fs initial source preview tests
hyoban Oct 15, 2026
4722f30
Merge branch 'claude/guards-services-a-ce96a7' into deploy/konwledge
hyoban Oct 15, 2026
6eee9f7
test(api): replace test doubles in KnowledgeFS task tests with typed …
hyoban Oct 15, 2026
e654171
test(api): use a real app and tool runtime in agent tool inner servic…
hyoban Oct 15, 2026
7e652d8
test(api): replace mocks in agent knowledge gateway tests
hyoban Oct 15, 2026
1079a07
Merge remote-tracking branch 'origin/deploy/konwledge' into claude/gu…
hyoban Oct 15, 2026
ffb1a38
test(api): type knowledge fs test fakes for strict pyrefly
hyoban Oct 15, 2026
a31c7c8
test: replace mock doubles in knowledge-fs core and agent tests with …
hyoban Oct 15, 2026
1d0b53a
test(api): bring knowledge fs vector and text store tests under stric…
hyoban Oct 15, 2026
bb0d3d4
Merge remote-tracking branch 'origin/deploy/konwledge' into deploy/ko…
hyoban Oct 15, 2026
998fe5f
Merge branch 'claude/guards-tasks-c80f5b' into deploy/konwledge
hyoban Oct 15, 2026
eb3329d
Merge branch 'claude/guards-core-e340d8' into deploy/konwledge
hyoban Oct 15, 2026
fdd3b1e
test(api): annotate knowledge fs controller contract tests for strict…
hyoban Oct 15, 2026
b74d820
Merge branch 'claude/guards-services-b-e13729' into deploy/konwledge
hyoban Oct 15, 2026
bad3037
Merge branch 'claude/guards-controllers-244f13' into deploy/konwledge
hyoban Oct 15, 2026
d69592e
test(api): annotate tidb binding and text store tests for strict pyrefly
hyoban Oct 15, 2026
cb9da51
test(api): annotate knowledge fs inner api controller tests for stric…
hyoban Oct 15, 2026
7f80f2d
test(api): type KnowledgeFS task tests for strict pyrefly
hyoban Oct 15, 2026
6414f35
test(api): use Generator for tidb binding lock context manager
hyoban Oct 15, 2026
7102556
test(api): type knowledge fs service, plugin and CI tests for strict …
hyoban Oct 15, 2026
0e7cb7a
Merge branch 'claude/pyrefly-tasks-bca8a3' into deploy/konwledge
hyoban Oct 15, 2026
31b4eea
Merge branch 'claude/pyrefly-controllers-d9c8e7' into deploy/konwledge
hyoban Oct 15, 2026
7449d20
Merge branch 'claude/pyrefly-services-c39915' into deploy/konwledge
hyoban Oct 15, 2026
1df8f42
test(api): narrow recorded knowledge fs controller payloads for stric…
hyoban Oct 15, 2026
dc459b9
refactor(dify-ui): keep DropdownMenuArrow as the Base UI Menu.Arrow a…
hyoban Oct 15, 2026
c248766
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 15, 2026
d61e8d8
chore: drop the final newline from the oxlint suppression baseline
hyoban Oct 15, 2026
1c56645
test(web): give the skill Builder model settings flow time on slow CI…
hyoban Oct 15, 2026
3dcee0b
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 16, 2026
eca73d7
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 16, 2026
01b3859
refactor(api): drop KnowledgeFS merge migrations and relink onto main…
hyoban Oct 16, 2026
f0551c0
test(web): wait for the knowledge settings form to settle after a sta…
hyoban Oct 16, 2026
f2f9a9f
fix(api): share KnowledgeFS sync-policy validation and document delet…
hyoban Oct 16, 2026
0a63194
refactor(knowledge-fs): move source edit and initial source import or…
hyoban Oct 16, 2026
115546a
refactor(api): move KnowledgeFS additions out of core
hyoban Oct 16, 2026
cd8c8af
feat(api,web): serve KnowledgeFS availability from its own endpoint a…
hyoban Oct 16, 2026
9f480ab
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 16, 2026
14a953e
Merge remote-tracking branch 'origin/deploy/konwledge' into refactor/…
hyoban Oct 16, 2026
475c2c5
Merge remote-tracking branch 'origin/deploy/konwledge' into claude/kn…
hyoban Oct 16, 2026
0ca7633
Merge remote-tracking branch 'origin/deploy/konwledge' into feat/know…
hyoban Oct 16, 2026
32808d2
test(api): cover KnowledgeFS retrieval v2 validation and helpers
hyoban Oct 16, 2026
668aec0
fix(web): keep the legacy datasets list when KnowledgeFS availability…
hyoban Oct 16, 2026
24636f3
Merge remote-tracking branch 'origin/refactor/knowledge-fs-service-or…
hyoban Oct 16, 2026
aca5a55
Merge remote-tracking branch 'origin/claude/knowledge-fs-out-of-core'…
hyoban Oct 16, 2026
8bc5751
Merge remote-tracking branch 'origin/feat/knowledgefs-api-surface' in…
hyoban Oct 16, 2026
059e3f0
chore: refresh KnowledgeFS contract pin
hjlarry Oct 16, 2026
ff8e0cf
fix(api): look up initial Source credentials through the datasource c…
hyoban Oct 16, 2026
970109e
Merge remote-tracking branch 'origin/deploy/konwledge' into deploy/ko…
hyoban Oct 16, 2026
ded0e18
fix(docker): make the KnowledgeFS service opt-in and document its ima…
hyoban Oct 16, 2026
ad3083e
chore(web): drop the unused required System Features server lookup
hyoban Oct 16, 2026
d1af192
fix(web): keep a pending knowledge deletion modal until it settles
hyoban Oct 16, 2026
c233f61
fix(web): guard retrieval image uploads and settle deep-linked resear…
hyoban Oct 16, 2026
fcc2fe1
fix(web): harden the document metadata editor
hyoban Oct 16, 2026
ca68a96
fix(web): name the upload submit button by its visible label
hyoban Oct 16, 2026
81b4c24
fix(web): scope New Knowledge source edit previews to their session
hyoban Oct 16, 2026
ad6db7a
fix(web): keep rejected bulk deletions selected and cap bulk document…
hyoban Oct 16, 2026
0da1076
fix(web): align workflow knowledge space selector with binding rules …
hyoban Oct 16, 2026
acbb059
fix(web): keep the agent knowledge dialog root mounted through close
hyoban Oct 16, 2026
690677e
fix(web): count every active golden question and keep the evaluation …
hyoban Oct 16, 2026
f6dd438
fix(web): keep the local upload preview dialog root mounted through c…
hyoban Oct 16, 2026
5a8caa9
test(web): assert the local PDF preview URL by its file contents
hyoban Oct 16, 2026
bcc9823
Merge branch 'claude/review-metadata-688f27' into deploy/konwledge
hyoban Oct 16, 2026
6179ad9
Merge branch 'claude/review-sources-90c9f4' into deploy/konwledge
hyoban Oct 16, 2026
2b7928d
Merge branch 'claude/review-documents-302f43' into deploy/konwledge
hyoban Oct 16, 2026
19674fe
Merge branch 'claude/review-retrieval-ec4cce' into deploy/konwledge
hyoban Oct 16, 2026
9678209
Merge branch 'claude/review-workflow-6bfbc5' into deploy/konwledge
hyoban Oct 16, 2026
b0d8109
test(web): keep the real Popover in the sync policy field spec
hyoban Oct 16, 2026
27a2b99
fix(api): preserve retry headers for KnowledgeFS initialization
hjlarry Oct 16, 2026
ae3fd29
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 16, 2026
1206ccb
refactor(web): type the datasets grid from the generated list response
hyoban Oct 16, 2026
fbc428c
Merge remote-tracking branch 'origin/deploy/konwledge' into deploy/ko…
hyoban Oct 16, 2026
822ef65
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 16, 2026
45b012a
fix(web): preserve mixed API access state and refresh space lists aft…
hyoban Oct 16, 2026
6c02929
fix(web): keep retrieval drafts and image-only trace actions working
hyoban Oct 16, 2026
19e5817
fix(web): scope connected source submission to its creation session
hyoban Oct 16, 2026
71f8cfa
fix(web): cancel an orphaned website preview job before retrying
hyoban Oct 16, 2026
fcb6f0b
fix(web): serialize knowledge space tag replacements
hyoban Oct 16, 2026
ce895aa
style(web): format files touched by the main merge
hyoban Oct 16, 2026
d50b085
fix(web): harden New Knowledge quality submissions and list semantics
hyoban Oct 16, 2026
871273a
fix(web): keep the activity drawer in the task-sync invalidation scop…
hyoban Oct 16, 2026
7b60913
fix(web): defer crawl pending and focus styling to Dify UI
hyoban Oct 16, 2026
324585c
fix(web): address KnowledgeFS review feedback in workflow, API key, a…
hyoban Oct 16, 2026
6b600b9
Merge branch 'claude/review2-quality-a69e14' into deploy/konwledge
hyoban Oct 16, 2026
f09820b
Merge branch 'claude/review2-sources-4d3ee6' into deploy/konwledge
hyoban Oct 16, 2026
ba5220e
Merge branch 'claude/review2-settings-f7f3ac' into deploy/konwledge
hyoban Oct 16, 2026
220eb22
Merge branch 'claude/review2-retrieval-40ce5f' into deploy/konwledge
hyoban Oct 16, 2026
1217b94
Merge branch 'claude/review2-workflow-a2d69d' into deploy/konwledge
hyoban Oct 16, 2026
9256ea0
test(web): find the creator search as a searchbox in the new knowledg…
hyoban Oct 16, 2026
a304037
fix(knowledge-fs): initialize the text database before first ingestion
zhaohao1004 Oct 16, 2026
f356fa4
fix(knowledge-fs): recover cleanup after interrupted text initialization
zhaohao1004 Oct 16, 2026
19b644f
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 17, 2026
3dbf136
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 17, 2026
8ee9baf
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 17, 2026
22e214d
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 17, 2026
2445f2b
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 18, 2026
ade158b
test(web): exercise the new knowledge list through real queries and c…
hyoban Oct 18, 2026
9c32d51
test(web): seed KnowledgeFS availability by default and keep the prom…
hyoban Oct 18, 2026
c9b0e11
fix(api): enable KnowledgeFS draft bindings only for debugger runs
hyoban Oct 18, 2026
1668384
test(web): seed KnowledgeFS availability in the workflow test environ…
hyoban Oct 18, 2026
d5f24b4
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 19, 2026
aefbbc4
fix(api): satisfy Ruff E402/PT011 and typed Dataset init after mainli…
hyoban Oct 19, 2026
ac44f9c
test(knowledge-fs): remove unused source metadata variable
hjlarry Oct 19, 2026
727c653
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 19, 2026
cdd498e
fix(web): use stock AlertDialog parts in knowledge upgrade dialog
hyoban Oct 19, 2026
9d6f116
docs: remove completed KnowledgeFS planning documents
hyoban Oct 19, 2026
19eaf69
docs: remove KnowledgeFS design runbooks
hyoban Oct 19, 2026
c78e7ee
fix(web): keep model selector popup above or below its trigger
hyoban Oct 19, 2026
6503319
fix(web): restore padding in Agent knowledge base select dialog
hyoban Oct 19, 2026
f856ab2
fix(knowledge): simplify creation form validation
lyzno1 Oct 19, 2026
d118c26
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 19, 2026
38a44c6
fix(api): merge workflow pause and KnowledgeFS migration heads
hyoban Oct 19, 2026
346ab17
fix(api): chain KnowledgeFS task retries for Ruff B904
hyoban Oct 19, 2026
657eec1
test(api): track workflow pause and KnowledgeFS merge migration
hyoban Oct 19, 2026
32bd19e
test(cli): load the PowerShell HTTP exception type in the rate-limit …
hyoban Oct 19, 2026
8b8e7c7
fix(knowledge): move upgrade help into confirmation dialog
lyzno1 Oct 20, 2026
4c3c626
Merge remote-tracking branch 'origin/main' into deploy/konwledge
hyoban Oct 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
7 changes: 4 additions & 3 deletions .agents/skills/frontend-code-review/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: frontend-code-review
description: Use only when the user explicitly requests a review or audit of frontend code under `web/` or `packages/dify-ui/`. Supports pending-change, file-focused, and pasted-diff reviews. Do not use for implementation-only requests, diagnosis without review intent, or backend-only code.
description: Use only when the user explicitly requests a bug, regression, correctness, security, accessibility, performance, or test-quality review of frontend code under `web/` or `packages/dify-ui/`. Supports pending-change, file-focused, and pasted-diff reviews. Do not use for architecture-oriented evaluation of component ownership, state graphs, props, boundaries, or refactoring design unless concrete defects are also requested; do not use for implementation-only requests, diagnosis without review intent, or backend-only code.
---

# Frontend Code Review
Expand All @@ -11,8 +11,9 @@ Review the requested scope for concrete defects and violations of explicit proje

1. Establish the review scope from the requested files or current diff.
2. Read the changed lines, their behavior owner, and the nearest scoped `AGENTS.md`.
3. Trace public consumers, generated contracts, primitive APIs, or runtime configuration only when they decide correctness.
4. Report findings tied to an observable failure, violated contract, security boundary, or demonstrated maintenance risk. Explicit team conventions are contracts: establish their scope and exceptions, and do not invent user impact to justify a convention finding.
3. For a named component or a diff that changes component ownership, props, or state, read the component-architecture rule pack and complete its Root-To-Leaf State And Props Audit before drawing conclusions.
4. Trace other public consumers, generated contracts, primitive APIs, or runtime configuration only when they decide correctness.
5. Report findings tied to an observable failure, violated contract, security boundary, or demonstrated maintenance risk. Explicit team conventions are contracts: establish their scope and exceptions, and do not invent user impact to justify a convention finding.

## Rule Routing

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,19 @@ Use the canonical reference for the changed concern. These links share rules; th
| Effects, navigation, memoization, and subscriptions | [Runtime] |
| Hotkeys, focus, and secondary surfaces | [Interactions] |

## Root-To-Leaf State And Props Audit

For a file-focused component review, use the named component as the root. For a pending diff, use each changed page, feature entrypoint, or nearest behavior owner whose state or props contract changed.

1. Build the locally owned rendered component tree from each root to every leaf. Follow imported feature components, conditional branches, lists, portals, dialogs, drawers, and popovers. Stop at third-party or Dify UI primitives and explicit stable public feature boundaries, but record the props passed across that final edge.
2. At every component, inventory state sources: React state/reducers, form state, URL state, context/store/Jotai reads and writes, queries, mutations, refs that hold workflow state, and custom-hook results.
3. For every state value, derived fact, and handler, record its consuming branches and required lifetime, including persistence across descendant unmounts. Assess its placement against [Ownership] and [State], including their coordination and persistence exceptions.
4. Inspect every props edge. Mark values that are read by the child, forwarded unchanged, renamed, recomputed, mirrored into local state, or paired with lifecycle fields such as `data/pending/error/retry` and `open/onOpenChange`.
5. Trace what each forwarding parent actually owns before reporting an unnecessary intermediary. Apply [Ownership] to distinguish required coordination or persistence from merely redistributing workflow fields, and [State] to determine whether a feature graph is warranted.
6. Remove unused or redundant props at their source. Do not accept replacing many props with a props bag, context, or hook result unless that abstraction becomes the real owner and gives consumers a narrower contract.

Review the complete paths before concluding that a state or prop is necessary. When several edges share one ownership defect, report one finding at the highest incorrect owner and include a representative path such as `Root -> Section -> Leaf`; do not emit a duplicate finding for every child.

## Apply Rules In Their Actual Scope

Explicit team conventions are reviewable contracts, including module organization and public API boundaries. Check the documented exception before reporting a violation. Do not infer an exception solely because the code appears to work, or invent a user-facing failure for a convention finding.
Expand Down
49 changes: 42 additions & 7 deletions .agents/skills/how-to-write-component/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,59 @@
---
name: how-to-write-component
description: Use when implementing or refactoring React/TypeScript components and the task requires decisions about component ownership, feature boundaries, state, data flow, effects, or interaction ownership. Do not use for review-only requests, test-only work, copy-only edits, or styling-only changes.
description: Use when implementing, refactoring, or architecture-reviewing React/TypeScript components whose ownership, state lifetimes, data flow, props, feature boundaries, effects, or interaction surfaces need redesign. Do not use for bug, regression, security, or accessibility audits; test-only work; copy-only edits; or styling-only changes.
---

# How To Write A Component
# React Component Architecture

Use this skill to route component architecture decisions to its bundled references. Read only the references required by the current change.
Use this skill to make component ownership and lifecycle explicit before implementation. Classify every stateful value on three independent dimensions:

1. **Owner/source:** a component, parent boundary, URL/framework API, TanStack Query, or feature workflow.
2. **Graph role:** primitive input, query/mutation node, derived business fact, or workflow command.
3. **Lifecycle:** instance isolation, persistence, and reset requirements.

Do not force one label to answer all three dimensions.

Keep display state, submit-only fields, and owner-local queries or mutations with the component or DOM that owns their complete lifecycle. A value enters the feature state graph only when it crosses an ownership boundary, participates in shared derivation or coordination, or must outlive/reset independently of its current owner. Driving an owner-local query or command alone is not sufficient. In this repository, use feature-local Jotai as the default representation once a value enters that graph.

## Operating Modes

Choose the mode from the user's requested outcome:

- **Architecture audit:** Perform a read-only, root-to-leaf analysis and propose the target ownership model. Read [`references/audit.md`][audit] and [`references/ownership.md`][ownership].
- **Refactoring design:** Perform the architecture audit, then provide target contracts, migration slices, and a verification strategy without modifying code. Read [`references/audit.md`][audit] and [`references/ownership.md`][ownership].
- **Implementation:** Establish the affected owner map, state graph, props edges, and reset boundaries before editing. Implement one coherent vertical slice at a time, then run the final audit in [`references/audit.md`][audit]. Read [`references/ownership.md`][ownership].
- **Bug or regression review:** Use the frontend code-review workflow unless the user explicitly requests this skill's architecture model as an additional lens.

## Topic Routing

After selecting the operating mode, read only the topic references required by the change:

- Component moves, module boundaries, props, types, or owner placement: read [`references/ownership.md`][ownership].
- Dify UI wrappers or primitive state styling: read the package's [Public API authoring] and [Styling] contracts.
- Jotai, form drafts, route identity, URL state, or persistence: read [`references/state.md`][state].
- Generated contracts, nullable API data, Query, mutations, SSR, auth, or workspace state: read [`references/data.md`][data].
- Hotkeys, focus, dialogs, menus, popovers, or other secondary surfaces: read [`references/interactions.md`][interactions] and the overlay guide it references when applicable. Also read [`references/state.md`][state] when the surface owns a draft or other local session state.
- Jotai, graph-entry decisions, form drafts, shared client state, route identity, URL state, isolation/reset, or persistence: read [`references/state.md`][state].
- Generated contracts, nullable API data, Query, mutations, SSR, authentication, or workspace state: read [`references/data.md`][data].
- A feature graph that combines Jotai isolation with TanStack Query atoms or commands: read both [`references/state.md`][state] and [`references/data.md`][data].
- Hotkeys, focus, dialogs, menus, popovers, or other secondary surfaces: read [`references/interactions.md`][interactions] and the overlay guide it references when applicable. Also read [`references/state.md`][state] when the surface owns a draft or session state.
- Effects, navigation, memoization, preloading, or render cost: read [`references/runtime.md`][runtime].

## Common Workflow

Follow this order so component splitting does not precede ownership decisions:

1. **Boundary and evidence:** identify the route, tab, workflow, or action surface that owns the behavior and lifetime. Inspect nearby implementation, tests, sibling state files, and established feature boundaries.
2. **Current model:** identify generated data contracts and authoritative external inputs, then inventory state, queries, mutations, derived facts, commands, refs, and meaningful props edges.
3. **Target graph and owners:** decide explicitly which values remain local and which enter the feature graph. Define authoritative bridges, graph nodes, component owners, and scope/reset boundaries before creating files or wiring components.
4. **Re-cut the tree:** treat current files as evidence rather than target constraints. Keep, split, merge, remove, rename, promote, or demote components based on ownership, lifecycle, behavior, and independently changing visual regions.
5. **Contracts and interactions:** place data, loading, empty, error, and handlers at the lowest real consumer. Cross true owner boundaries only with stable identity, a small immutable snapshot, placement, or a named command. Give forms and secondary surfaces explicit lifecycle owners.
6. **Finish and verify:** remove copied state and unnecessary Effects, wrappers, memoization, or nullable coercion. Rerun the final owner, graph, props-edge, and reset audit, then verify observable behavior at the narrowest sufficient boundary.

## Scope And Verification

Identify the behavior owner, state lifetime, and public contract from the nearby implementation and relevant references. Keep the change within that vertical slice unless the contract requires changes elsewhere. Verify the changed behavior and complete the owning package's required checks. For Web, read `web/docs/test.md` for test work and `web/docs/lint.md` for static checks. Dify UI verification is owned by `packages/dify-ui/docs/testing.md`.
In architecture-audit and refactoring-design modes, do not modify code. In implementation mode, complete equivalent ownership fixes inside the audited feature when the target contract depends on them, but do not expand into unrelated features. Incremental slices may retain documented temporary edges; the final requested slice must pass the completion gate in [`references/audit.md`][audit].

Run the checks documented by the owning package: `web/docs/test.md` or `web/docs/lint.md` for Web, and `packages/dify-ui/docs/testing.md` for Dify UI.

[audit]: references/audit.md

## Tailwind CSS

Expand Down
64 changes: 64 additions & 0 deletions .agents/skills/how-to-write-component/references/audit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Component Architecture Audit

Read this document for architecture audits, refactoring designs, and the final ownership verification after an implementation refactor.

## Audit Procedure

For a named component, use it as the audit root. For a refactoring request, use the nearest route, page, feature entrypoint, or behavior owner whose state contract is changing.

1. Build the complete locally owned rendered component tree from the root to every leaf. Follow imported feature components, conditional branches, lists, portals, dialogs, drawers, popovers, and secondary surfaces. Stop at third-party primitives, Dify UI primitives, or an explicit stable feature boundary, but record the props passed across the final edge.
2. At every component, inventory React state and reducers, form and uncontrolled DOM state, URL and route state, Context/Jotai/store reads and writes, queries, mutations, refs that hold workflow or lifecycle state, custom-hook results, render-time derived facts, and workflow commands or handlers.
3. For every value, record its authoritative owner/source, graph role, declaring component, consuming branches, lifetime and reset/isolation requirements, and whether it is local, shared, forwarded, mirrored, or persisted.
4. Inspect every meaningful props edge. Mark each prop as consumed, forwarded unchanged, renamed, recomputed, mirrored into local state, or paired with lifecycle fields such as `data/pending/error/retry` and `open/onOpenChange`.
5. Draw the current state graph in dependency order and assess ownership only after the complete paths are mapped. Group related problems at the highest incorrect owner instead of repeating the same issue for every descendant.
6. Give every current local component an explicit target disposition: keep, split, merge, remove, rename, promote to an owner, or demote to presentation. Map every current state or workflow owner to a target component and reset boundary.
7. Redraw the target rendered tree independently of the current file layout. Split only when state lifetime, interaction lifecycle, behavior ownership, or an independently changing visual region establishes a real boundary. Merge or remove components that only forward, rename, or obscure a single owner's contract.
8. For refactoring design or implementation planning, define ordered migration slices with explicit state-file changes, component moves/splits/merges, observable verification boundaries, and intentionally temporary props edges.

A rename, facade wrapper, props bag, Context, or provider around the same switchboard does not count as a boundary redesign. Correctness bugs may illustrate an ownership defect, but architecture-audit mode does not prioritize or severity-rank bug findings.

## Audit Output

Cover the following information. Merge sections or omit empty tables when the review is small, but do not omit applicable values, paths, edges, owners, or reset boundaries:

1. **Review boundary:** root component, locally owned rendered paths, and stopping boundaries.
2. **Rendered component tree:** every local branch and secondary surface followed.
3. **State inventory:** owner/source, graph role, graph-entry decision, declaration, consumers, and lifetime/reset needs for every stateful value, query, mutation, ref, custom-hook result, derived fact, and command.
4. **Props-edge ledger:** every meaningful parent-child edge and how each prop is treated.
5. **Current architecture:** state graph, component owners, and ownership assessment.
6. **Component dispositions:** the target disposition of every current local component and the destination of every current state/workflow owner.
7. **Target architecture:** target rendered tree, state graph, owners, component contracts, and reset boundaries.
8. **Migration slices:** required for refactoring design; include them in an audit when they materially clarify how to reach the target.

Use compact tables when they make full accounting easier to verify:

| Value | Source/role | Declared at | Consumers | Props path | Lifetime/reset | Recommended owner |
| --- | --- | --- | --- | --- | --- | --- |

| Edge | Prop | Treatment | Real consumer | Assessment |
| --- | --- | --- | --- | --- |

| Current component | Current responsibilities | Target disposition | Target owner(s) | Reason |
| --- | --- | --- | --- | --- |

| Target component | Owned state/workflow | Children | Public contract | Reset boundary |
| --- | --- | --- | --- | --- |

## Implementation Completion Gate

Repeat the audit against the final code. Do not describe an implementation or refactor as complete until all applicable checks pass:

- every locally owned rendered path, meaningful props edge, and stateful value is represented in the component tree, inventory, or ledger;
- every current local component has a target disposition, and every current state/workflow owner maps to an implemented component and reset boundary;
- every multi-consumer graph value has one authoritative bridge or graph node and a named owner;
- route or URL identity is read directly by a single consumer or bridged once, not also threaded through descendant props;
- query keys, observer objects, `refetch`, loading/error groups, and cache invalidation mechanics do not cross a boundary unless the child owns the query surface;
- no page, hook, provider, or Context mainly destructures, renames, and redistributes another state machine;
- components consume focused fields, named facts, or domain commands instead of rebuilding shared business conclusions;
- query and mutation atoms remain cache-shared, while only resettable workflow primitives or boundary snapshots are scoped;
- a feature scope that depends on application state still observes parent/global atom updates; a fresh `Provider` is used only when full-store isolation is an explicit requirement;
- scoped-state verification covers parent-store interoperation, sibling-instance isolation when multiple instances are supported, and semantic-identity reset;
- every remaining multi-layer prop edge is justified as stable identity, an immutable display snapshot, placement, or a named cross-boundary command;
- the final rendered tree, state graph, owner map, contracts, and reset boundaries match the implemented code rather than only the initial design.

If the user requests incremental commits, a slice may intentionally leave documented edges for a later slice. The final requested slice must still pass this gate.
Loading
Loading