dify/web/i18n/ru-RU
Jyong 79116d8c4b feat(knowledge-fs): scope dataset API keys by knowledge base type
Legacy knowledge bases (`datasets`) and KnowledgeFS spaces
(`knowledge_fs_control_spaces`) live in different tables, so a dataset API
key binding could only ever name a legacy dataset and the KnowledgeFS service
API never consulted bindings at all: a key scoped to specific knowledge bases
still reached every KnowledgeFS space in the workspace.

- Bindings carry a `resource_type` (`dataset` | `knowledge_fs_space`) and a
  nullable `control_space_id` (migration 9a4e7d1c2b60, existing rows stay
  `dataset`), with a CHECK that exactly one id column matches the type.
- `dataset_api_key_service` exposes the key scope by kind, validates and
  binds KnowledgeFS spaces (tenant-owned, not deleting/deleted), and cleans up
  keys scoped only to a space when its deletion is requested. The orphan-key
  cleanup is now NULL-safe so a space binding keeps a key alive.
- Legacy dataset routes only honour `dataset` bindings; the KnowledgeFS
  authorization service only honours `knowledge_fs_space` bindings and raises
  a scope error that the service API maps to 403 (unknown keys stay 401).
- Console key creation accepts `knowledge_space_ids`; list/create responses
  return them next to `dataset_ids`.
- The web scope picker lists KnowledgeFS spaces alongside legacy datasets
  when KnowledgeFS is enabled and submits the ids by kind; the scope column
  counts both.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015zw5G5SX3HmVfnZof6YWAc
2026-09-03 05:59:39 -04:00
..
agent-v-2.json chore(i18n): sync translations with en-US (#41733) 2026-09-03 08:46:49 +00:00
app-annotation.json chore(web): prune unused i18n translations (#37888) 2026-06-24 16:13:22 +00:00
app-api.json feat(knowledge-fs): scope dataset API keys by knowledge base type 2026-09-03 05:59:39 -04:00
app-debug.json chore(web): prune unused i18n keys (#41725) 2026-09-03 08:01:55 +00:00
app-log.json chore(i18n): sync translations with en-US (#39671) 2026-07-28 06:11:36 +00:00
app-overview.json chore(web): prune unused i18n keys (#41725) 2026-09-03 08:01:55 +00:00
app.json chore(web): prune unused i18n keys (#41725) 2026-09-03 08:01:55 +00:00
billing.json fix(billing): remove misleading tax assurance (#41009) 2026-08-20 07:33:20 +00:00
common.json fix(web): align workspace switcher states and semantics (#41713) 2026-09-03 07:18:49 +00:00
custom.json chore(web): prune unused i18n translations (#37888) 2026-06-24 16:13:22 +00:00
dataset-creation.json chore(web): prune unused i18n translations (#37888) 2026-06-24 16:13:22 +00:00
dataset-documents.json chore: more upload file size for paid user (#39967) 2026-08-06 03:23:16 +00:00
dataset-hit-testing.json chore(web): prune unused i18n translations (#37888) 2026-06-24 16:13:22 +00:00
dataset-pipeline.json chore(web): prune unused i18n translations (#37888) 2026-06-24 16:13:22 +00:00
dataset-settings.json chore(i18n): sync translations with en-US (#40573) 2026-08-12 07:49:39 +00:00
dataset.json refactor(knowledge-fs): split translations into dedicated namespace 2026-09-03 17:37:59 +08:00
deployments.json chore(web): prune unused i18n keys (#41725) 2026-09-03 08:01:55 +00:00
device-flow.json chore(i18n): sync translations with en-US (#38355) 2026-07-03 04:22:13 +00:00
education.json chore: reopen the education application flow (#40760) 2026-08-14 07:16:21 +00:00
explore.json fix: improve home page accessibility (#41310) 2026-08-27 07:03:01 +00:00
knowledge-space.json refactor(knowledge-fs): split translations into dedicated namespace 2026-09-03 17:37:59 +08:00
layout.json refactor(i18n): use JSON with flattened key and namespace (#30114) 2025-12-29 14:52:32 +08:00
login.json chore(web): prune unused i18n keys (#41725) 2026-09-03 08:01:55 +00:00
oauth.json refactor(i18n): use JSON with flattened key and namespace (#30114) 2025-12-29 14:52:32 +08:00
permission-keys.json feat: app access point permission (#41631) 2026-09-02 06:34:33 +00:00
permission.json chore(web): prune unused i18n keys (#41725) 2026-09-03 08:01:55 +00:00
pipeline.json feat(web): refine onboarding UI (#37433) 2026-06-15 08:47:15 +00:00
plugin-tags.json refactor(web): improve workflow block selector (#39377) 2026-07-21 14:18:38 +00:00
plugin-trigger.json chore(web): prune unused i18n translations (#37888) 2026-06-24 16:13:22 +00:00
plugin.json chore(web): prune unused i18n keys (#41725) 2026-09-03 08:01:55 +00:00
register.json refactor(i18n): use JSON with flattened key and namespace (#30114) 2025-12-29 14:52:32 +08:00
run-log.json chore(web): prune unused i18n translations (#37888) 2026-06-24 16:13:22 +00:00
share.json chore(web): prune unused i18n translations (#37888) 2026-06-24 16:13:22 +00:00
skill.json fix(skills): align management UI accessibility and localization (#41180) 2026-08-25 01:53:19 +00:00
snippet.json chore(web): prune unused i18n keys (#41725) 2026-09-03 08:01:55 +00:00
time.json chore(web): prune unused i18n translations (#37888) 2026-06-24 16:13:22 +00:00
tools.json chore(web): prune unused i18n keys (#41725) 2026-09-03 08:01:55 +00:00
workflow.json Merge remote-tracking branch 'origin/main' into deploy/konwledge 2026-09-03 16:32:30 +08:00