diff --git a/integrations/dsh/docs/environment.md b/integrations/dsh/docs/environment.md index d395131d..bca3cf4e 100644 --- a/integrations/dsh/docs/environment.md +++ b/integrations/dsh/docs/environment.md @@ -104,6 +104,9 @@ DSH settings. cleared: a credential cannot be deleted by emptying its control, so the blank field always means “keep what is stored”. Emptying a **non-secret** field and saving **clears** it. Only fields you edited are written, so the rest of the file keeps its comments, unknown keys and order. +- The backend selection is the one non-secret field with a default: clearing it writes the default + (`LLM_BACKEND=openai`) instead of an empty value. ReMe applies `${LLM_BACKEND:-openai}` only when the variable is + absent, so an empty value would name no backend at all and the service would refuse to start. - A save writes the edits that were submitted and leaves newer ones alone: typing another field while the save is in flight keeps that text, and the card says that unsaved edits are still pending. - Saving validates the whole merged file, not just the values you typed: ReMe 0.4.0.x instantiates the embedding @@ -126,6 +129,10 @@ DSH settings. - ReMe reaches xAI through its gRPC SDK, so the xAI probe is a REST-level approximation of that channel. - The probe reads the `.env` on disk, so a configuration that is only picked in the form is not tested before the file is saved; the button says so while it waits. +- A `.env` that sets `LLM_BACKEND` to an empty value is reported as an incomplete configuration + (`LLM config incomplete (LLM_BACKEND)`) and no request is sent: ReMe would start with no backend at all, so the + probe must not test a configuration the service cannot use. A `.env` without the key is probed with the default + backend, exactly as ReMe would start it. - The draft, the save message and the LLM-test result belong to the workspace they were produced for: switching the workspace disposes the section's state, so neither a key typed for one workspace nor a success reported for it can be carried into another. @@ -163,6 +170,9 @@ processes it manages when the Host exits. The plugin owns a small service adapte the meantime, the Host refuses instead of dropping the new record silently. - A service that occupies the port but fails the health check is reported as a conflict; if it is provably this plugin's service, the tab still offers **Stop**. +- A conflict caused by a **recorded** process whose identity cannot be read is a different case: the process is + never signalled, so the tab offers **Forget this record** instead. The record travels with the status, so the way + out does not depend on a start that the conflict card disables. - A record left by an older version under a path prefix of the same origin (for example `127.0.0.1:2333/reme`) describes the **same** local service, because the launch configures only host and port. When it can be proven to be this plugin's service, such a record is re-keyed to the endpoint on diff --git a/integrations/dsh/docs/environment_ZH.md b/integrations/dsh/docs/environment_ZH.md index b4f50d7c..063e5060 100644 --- a/integrations/dsh/docs/environment_ZH.md +++ b/integrations/dsh/docs/environment_ZH.md @@ -84,6 +84,8 @@ ReMe 在服务启动时读取 workspace 目录下的 `.env`;标签页从不把 - 清空**密钥**字段并保存会保留已存的密钥——即便先输入过替代值再清空也是如此:凭据无法通过清空输入框来删除, 因此留空始终表示“保留已存的值”。清空**非密钥**字段并保存即表示**删除**该值。只有编辑过的字段会被写入, 文件其余部分的注释、未知键与顺序保持不变。 +- 后端选择是唯一带默认值的非密钥字段:清空它会写入默认值(`LLM_BACKEND=openai`),而不是空值。ReMe 只在变量 + **不存在**时才应用 `${LLM_BACKEND:-openai}`,空值等于没有指定任何后端,服务将无法启动。 - 保存只清除本次提交的那部分编辑,更晚的编辑会被保留:保存进行中再改动其它字段时,那份文本不会丢失,页面也会 提示仍有未保存的改动。 - 保存时会校验合并后的整份文件,而不只是本次输入:ReMe 0.4.0.x 会无条件实例化 embedding 组件,因此即使不使用向量检索 @@ -101,6 +103,9 @@ ReMe 在服务启动时读取 workspace 目录下的 `.env`;标签页从不把 同样失败。 - ReMe 通过 gRPC SDK 连接 xAI,因此 xAI 的探测只是该通道在 REST 层面的近似。 - 探测读取的是磁盘上的 `.env`,所以只在表单里改过配置而未保存时不会发起测试;等待期间按钮会给出提示。 +- 若 `.env` 把 `LLM_BACKEND` 设为空值,探测会报告配置不完整(`LLM config incomplete (LLM_BACKEND)`)并且不发送 + 任何请求:此时 ReMe 启动时并没有任何后端,探测不能去测试服务根本无法使用的配置。若 `.env` 里没有这个键, + 探测会与 ReMe 一样使用默认后端。 - 草稿、保存提示与 LLM 测试结果都属于产生它们的 workspace:切换 workspace 会随旧区块一并丢弃,因此为某个 workspace 输入的密钥、或属于它的一次成功提示,都不会被带到另一个。 @@ -130,6 +135,8 @@ ReMe 在服务启动时读取 workspace 目录下的 `.env`;标签页从不把 **忘记**针对的正是那条记录(可能是另一个端口上的记录,而不是当前显示的地址),并带上它的 pid:记录在此期间被换掉时, Host 会拒绝而不是静默丢弃新记录。 - 服务占用端口但健康检查失败时显示为“端口被占用”;若能证明是本插件启动的,标签页仍给出**停止**按钮。 +- 占用端口的是**已记录**但身份无法验证的进程时情况不同:该进程绝不会被发信号,因此标签页改为给出**忘记这条记录**。 + 这条记录随状态一起返回,所以出路不依赖被“端口被占用”状态禁用的**启动**按钮。 - 旧版本遗留在同一源(origin)某个路径前缀下(例如 `127.0.0.1:2333/reme`)的记录,描述的是**同一个**本地服务—— 启动只配置 host 与端口。只要能证明它是本插件启动的,这种记录就会被重新登记到当前显示的地址,随后与其他启动 一样被管理:给出**停止**按钮,**启动**在它尚未健康时替换它。它不会再被当成标签页无从处理的外部进程,否则用户