mirror of
https://github.com/lobehub/lobe-chat.git
synced 2026-06-13 19:20:04 +00:00
🌐 chore: translate non-English comments to English in src-chat-and-helpers
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -113,7 +113,7 @@ export const useWorkspaceSettingCategory = (): WorkspaceSettingCategoryGroup[] =
|
||||
key: WorkspaceSettingsTabs.Creds,
|
||||
label: t('tab.creds'),
|
||||
},
|
||||
// Messenger (聊天平台) is intentionally omitted from workspace
|
||||
// Messenger (chat platform) is intentionally omitted from workspace
|
||||
// settings: the System Bot binding is a per-user/personal identity
|
||||
// (the link is owned by `userId`, not the workspace), and reaching a
|
||||
// workspace's agents happens via the scope selector on the *personal*
|
||||
|
||||
@@ -19,10 +19,10 @@ export interface ResolveExecutionTargetOptions {
|
||||
* Single source of truth for where an agent executes — one global
|
||||
* `agencyConfig.executionTarget` drives both desktop and web.
|
||||
*
|
||||
* - `none` → 无设备 (no execution environment; plain chat)
|
||||
* - `local` → 本机 (this machine, in-process; desktop only)
|
||||
* - `sandbox` → 云端沙箱 (server cloud sandbox)
|
||||
* - `device` → 远程设备 (dispatched to `boundDeviceId`)
|
||||
* - `none` → no execution environment (plain chat)
|
||||
* - `local` → local machine (this machine, in-process; desktop only)
|
||||
* - `sandbox` → cloud sandbox (server cloud sandbox)
|
||||
* - `device` → remote device (dispatched to `boundDeviceId`)
|
||||
*
|
||||
* `local` and `device` stay DISTINCT even when the bound device is this very
|
||||
* machine: `device` dispatches through the server gateway, so progress streams
|
||||
@@ -102,7 +102,7 @@ export type ExecutionPlanUnroutedReason =
|
||||
* read it instead of re-resolving `agencyConfig.executionTarget`.
|
||||
*/
|
||||
export type ExecutionPlan = { target: DeviceExecutionTarget } &
|
||||
/** route execution / device tools to this device (includes 本机 — the local machine is a registered device) */
|
||||
/** route execution / device tools to this device (includes local machine — the local machine is a registered device) */
|
||||
(| { deviceId: string; kind: 'device' }
|
||||
/**
|
||||
* Device-targeted but no routable device right now. The run proceeds without
|
||||
|
||||
@@ -22,7 +22,7 @@ import { useUserStore } from '@/store/user';
|
||||
import { createGatewayEventHandler } from './gatewayEventHandler';
|
||||
|
||||
/**
|
||||
* When the agent runs against the local machine ("本机"), resolve this desktop's
|
||||
* When the agent runs against the local machine, resolve this desktop's
|
||||
* own gateway deviceId so it can be passed as the run's `deviceId`. The server
|
||||
* then presets `activeDeviceId` and injects `lobe-local-system` into the very
|
||||
* first LLM payload — skipping the extra `activateDevice` round-trip the model
|
||||
|
||||
@@ -627,7 +627,7 @@ export const executeHeterogeneousAgent = async (
|
||||
* `toolState.payloads` reset that happens on every new step.
|
||||
*
|
||||
* Required for the **toolless middle step** case (): when a step
|
||||
* produces only text (e.g. Monitor stdout drives Claude to reply "等一下…"
|
||||
* produces only text (e.g. Monitor stdout drives Claude to reply "wait a moment…"
|
||||
* without invoking a tool), `toolState.payloads` is empty at the next step
|
||||
* boundary. Without this tracker, `stepParentId` would fall back to
|
||||
* `currentAssistantMessageId` (= the toolless assistant), forming an
|
||||
@@ -1435,7 +1435,7 @@ export const executeHeterogeneousAgent = async (
|
||||
// — otherwise the handler reads `assistant.tools[]` while a parallel
|
||||
// `persistToolBatch` is still mid-flight and `replaceMessages` clobbers
|
||||
// the in-memory cumulative tools[] with a shorter snapshot. That's the
|
||||
// "7 → 6 次技能调用" rollback users see on parallel CC tool batches.
|
||||
// "7 → 6 skill calls" rollback users see on parallel CC tool batches.
|
||||
//
|
||||
// Other forwards (text / reasoning / tools_calling dispatches) stay
|
||||
// synchronous so live streaming UX isn't gated on DB round-trips.
|
||||
|
||||
@@ -16,7 +16,7 @@ import type { ChatToolPayload, UIChatMessage } from '@lobechat/types';
|
||||
* `replaceMessages` (stale / out-of-order DB snapshot) or an optimistic
|
||||
* `internal_dispatchMessage updateMessage{tools}` can momentarily drop an
|
||||
* assistant's `tools[]` while the tool row + parentId survive (the extreme of
|
||||
* the "7→6 次技能调用" tools[] regression).
|
||||
* the "7→6 skill-calls" tools[] regression).
|
||||
*
|
||||
* Fixing this at the RAW bucket write boundary — not only inside `parse` — keeps
|
||||
* `dbMessagesMap` (the Source of Truth that optimistic updates read & mutate)
|
||||
|
||||
Reference in New Issue
Block a user