Skip to content

3.0.1 · 个人知识库插件

Latest

Choose a tag to compare

@KingsleyAsher KingsleyAsher released this 11 Nov 02:54
abca135

2026-11-11 · 插件 3.0.1 / 客户端 2.0.1 · 自动更新事务恢复补丁

修复旧更新停留在 prepared、宿主后来已安装其他版本时,新更新永久受阻的问题。持有配置写锁后完整归档旧事务并取消旧准备,再准备本次更新;不回退当前安装、不删除候选与备份。旧确认请求失效。publishing、未知状态、已存在发布备份或活跃写入锁仍需恢复或等待。更新弹窗区分安装恢复与写入占用。

提供仅取消准备的 cancel-prepared 恢复入口及中英文步骤,先归档再取消,拒绝对安装中状态执行回滚。

已安装旧版仍使用旧更新器;若已被历史事务阻塞,须先按恢复说明安全结束“仅准备”的旧事务,不能指望尚未安装的新包修复旧更新器。本机该历史事务已备份取消。此后可按正常入口更新到 3.0.1。客户端 2.0.1 携带相同修复内核及配套插件。

验证包含真实 pnpm 的归档/重新准备/提交、旧确认拒绝、锁与发布保护,真实 Windows 服务停服交接、安装后重新连接,以及真实安装配置隔离副本的升级。中英文文档、产品清单与下载入口同步;不改变协议和存储代次,不重建知识库。客户端仍需空目录安装,安装器未签名。


2026-11-11 · Plugin 3.0.1 / client 2.0.1 · Update transaction recovery patch

Fixes abandoned prepared receipts blocking later updates after a separate Host installation. Under the profile writer lock, archive the complete old receipt and abort only its preparation before staging a new update. Preserve the installed version, candidates and backups, and reject stale confirmations. Publishing/unknown phases, publication backups and active writer locks still require recovery or waiting. Update dialogs distinguish recovery from writer contention.

Adds a preparation-only cancel-prepared recovery command and bilingual instructions. Archive before cancellation; never roll back a publishing transaction through this command.

An installed older version still runs its older updater. An already blocked installation needs one-time safe cancellation of the preparation-only receipt before the normal update to 3.0.1; the not-yet-installed patch cannot repair that updater in advance. This machine's historical receipt was backed up and cancelled. Client 2.0.1 includes the matching repaired backend and plugin.

Validation covers real pnpm archive/restage/commit, stale confirmation rejection, writer/publication guards, real Windows service drain and reconnection, and an isolated copy of the installed profile. Synchronizes bilingual records, product feeds and download links. No protocol/storage epoch change or library rebuild. The unsigned client installer still requires an empty destination.