Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
{
"name": "generalupdate-skill",
"source": "./",
"description": "Complete GeneralUpdate (.NET auto-update) integration skill suite. Generates dual-project scaffolding, full-state update UI (6 frameworks), 6 update strategies decision tree (Client-Server/OSS/Silent/Differential/CVP/Push), advanced extension points (Bowl crash daemon, IPC replacement, AOT), BM25-powered troubleshooting search (50+ known issues), v9.x→v10 migration guide, and 14-point security audit matrix. All templates target NuGet v10.5.0-beta.4.",
"description": "Complete GeneralUpdate (.NET auto-update) integration skill suite. Generates dual-project scaffolding, full-state update UI (6 frameworks), 6 update strategies decision tree (Client-Server/OSS/Silent/Differential/CVP/Push), advanced extension points (Bowl crash daemon, IPC replacement, AOT), BM25-powered troubleshooting search (50+ known issues), v9.x→v10 migration guide, and 14-point security audit matrix. All templates target NuGet v10.5.0-beta.6.",
"version": "0.0.2-beta.1",
"author": {
"name": "JusterZhu"
Expand Down
2 changes: 1 addition & 1 deletion .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "generalupdate-skill",
"description": "Complete .NET auto-update skill suite for GeneralUpdate. 7 skills covering: Bootstrap scaffolding, update UI (6 frameworks), 6 strategies (Client-Server/OSS/Silent/Differential/CVP/Push), advanced extension points (Bowl, IPC, AOT), 50+ known issues diagnosis with BM25 search engine, version migration, and security audit. All templates target NuGet v10.5.0-beta.4.",
"description": "Complete .NET auto-update skill suite for GeneralUpdate. 7 skills covering: Bootstrap scaffolding, update UI (6 frameworks), 6 strategies (Client-Server/OSS/Silent/Differential/CVP/Push), advanced extension points (Bowl, IPC, AOT), 50+ known issues diagnosis with BM25 search engine, version migration, and security audit. All templates target NuGet v10.5.0-beta.6.",
"version": "0.0.2-beta.1",
"author": {
"name": "JusterZhu"
Expand Down
4 changes: 2 additions & 2 deletions .claude/scripts/generate.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
"name": "Differential Update",
"slug": "differential",
"description": "Delta patch update to save bandwidth (BSDIFF/HDiffPatch)",
"warning": "差分包大小建议不超过 2GB,避免 BSDIFF 整数溢出(v10.5.0-beta.4 已修复 #514)。",
"warning": "差分包大小建议不超过 2GB,避免 BSDIFF 整数溢出(v10.5.0-beta.6 已修复 #514)。",
},
"cvp": {
"name": "Cross-Version CVP",
Expand Down Expand Up @@ -183,7 +183,7 @@ def generate_issue_warnings(strategy, variables):
- H4: OSS 不区分 Main/Upgrade 更新包,接受此行为
- H5: Upgrade.exe 必须放在 update/ 子目录
- L7: 示例代码中 OSS endpoint/bucket 写死,建议用环境变量
- M13: OssClient.AppType 值 3-4 在 v10.5.0-beta.4 中可用""",
- M13: OssClient.AppType 值 3-4 在 v10.5.0-beta.6 中可用""",
"silent": """⚠️ 静默更新特有已知问题:
- H2: 无限升级循环 — 确保 manifest.json 版本号正确
- M19: 静默通知可能不尊重系统的免打扰设置
Expand Down
2 changes: 1 addition & 1 deletion .claude/scripts/generate/templates/bowl_notice.cs.template
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// ⚠️ Bowl 崩溃守护
// dotnet add package GeneralUpdate.Bowl
// NuGet v10.5.0-beta.4: Bowl 与 Core 无类型冲突,可按需同时引用
// NuGet v10.5.0-beta.6: Bowl 与 Core 无类型冲突,可按需同时引用
// Refer to generalupdate-advanced/templates/BowlIntegration.cs for full example
var context = new GeneralUpdate.Bowl.BowlContext
{
Expand Down
44 changes: 22 additions & 22 deletions .claude/skills/generalupdate-advanced/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: generalupdate-advanced
description: |
Reference guide for GeneralUpdate internal architecture — Pipeline, middleware,
Strategy, Differential engine, Bowl crash monitor, FileTree, blacklist, and AOT.
Covers all extension points available in v10.5.0-beta.4 including Pipeline, Hooks, Bowl, AOT, and DiffPipeline.
Covers all extension points available in v10.5.0-beta.6 including Pipeline, Hooks, Bowl, AOT, and DiffPipeline.
Triggers on: "extension points", "custom hooks", "Bowl", "crash dump", "IPC",
"named pipe", "shared memory", "custom strategy", "download pipeline",
"SSL policy", "auth provider", "custom download", "extension management",
Expand All @@ -24,8 +24,8 @@ allowed-tools: "Read, Write, Edit, Glob"

涵盖扩展点架构、Pipeline 管道、差分引擎、Bowl 崩溃守护、事件系统、文件系统工具等。

> ⚠️ **API 版本说明**:本指南基于 **NuGet v10.5.0-beta.4**。
> 以下功能在 v10.5.0-beta.4 中全部**可用**:
> ⚠️ **API 版本说明**:本指南基于 **NuGet v10.5.0-beta.6**。
> 以下功能在 v10.5.0-beta.6 中全部**可用**:
> - ✅ `IUpdateHooks` 生命周期钩子(`Hooks<T>()`)
> - ✅ `IStrategy` 自定义策略注入(`Strategy<T>()`)
> - ✅ `SilentPollOrchestrator` 静默轮询器(`Option.Silent`)
Expand Down Expand Up @@ -65,7 +65,7 @@ allowed-tools: "Read, Write, Edit, Glob"

---

## 1. Pipeline 管道系统(v10.5.0-beta.4 可用)
## 1. Pipeline 管道系统(v10.5.0-beta.6 可用)

GeneralUpdate 使用 Pipeline 管道模式处理更新包的校验、解压、补丁应用。

Expand Down Expand Up @@ -100,7 +100,7 @@ await new PipelineBuilder(context)

---

## 2. 策略系统(v10.5.0-beta.4 可用)
## 2. 策略系统(v10.5.0-beta.6 可用)

GeneralUpdate 内置三种平台策略,通过 `IStrategy` 接口实现:

Expand All @@ -115,7 +115,7 @@ GeneralUpdate 内置三种平台策略,通过 `IStrategy` 接口实现:

---

## 3. Bowl 崩溃守护(v10.5.0-beta.4
## 3. Bowl 崩溃守护(v10.5.0-beta.6

Bowl 是一个崩溃监控组件,通过 `MonitorParameter` 配置。

Expand Down Expand Up @@ -157,11 +157,11 @@ Console.WriteLine($"Result: Success={result.Success}, Restored={result.Restored}
| `DumpType` | DumpType | Mini / Full | Full |
| `OnCrash` | delegate | 崩溃回调 | null |

> ⚠️ NuGet v10.5.0-beta.4 中 Bowl 和 Core **无类型冲突**,可以同时引用。
> ⚠️ NuGet v10.5.0-beta.6 中 Bowl 和 Core **无类型冲突**,可以同时引用。

---

## 4. EventManager 事件系统(v10.5.0-beta.4 可用)
## 4. EventManager 事件系统(v10.5.0-beta.6 可用)

EventManager 是一个全局单例,提供事件的发布和订阅:

Expand All @@ -188,7 +188,7 @@ EventManager.Instance.Dispose();

---

## 5. 文件系统工具(v10.5.0-beta.4 可用)
## 5. 文件系统工具(v10.5.0-beta.6 可用)

### BlackList(黑名单)

Expand Down Expand Up @@ -217,7 +217,7 @@ var snapshot = tree.CreateSnapshot(@"C:\Program Files\MyApp");

---

## 6. 差分引擎(v10.5.0-beta.4 可用,无需额外安装包)
## 6. 差分引擎(v10.5.0-beta.6 可用,无需额外安装包)

差分类型已内嵌在 `GeneralUpdate.Core` 中,**无需额外**安装 `GeneralUpdate.Differential` 包。

Expand Down Expand Up @@ -270,7 +270,7 @@ var dirtyMatcher = new DefaultDirtyMatcher(); // 或实现 IDirtyMatcher

## 7. AOT / NativeAOT 兼容性

GeneralUpdate.Core v10.5.0-beta.4 支持 .NET Native AOT(`net8.0` 和 `net10.0`):
GeneralUpdate.Core v10.5.0-beta.6 支持 .NET Native AOT(`net8.0` 和 `net10.0`):

```xml
<PropertyGroup>
Expand Down Expand Up @@ -313,26 +313,26 @@ var result = GeneralDrivelution.InstallDriver(driverPath);

| 主题 | 可用性 | 参考 |
|------|--------|------|
| Pipeline 管道 | ✅ v10.5.0-beta.4 | `GeneralUpdate.Core.Pipeline` |
| 策略系统 | ✅ v10.5.0-beta.4 | `GeneralUpdate.Core.Strategy` |
| FileTree | ✅ v10.5.0-beta.4 | `GeneralUpdate.Core.FileSystem` |
| BlackList | ✅ v10.5.0-beta.4 | `UpdateRequest.Files/Formats/Directories` → `ToBlackPolicy()` |
| Pipeline 管道 | ✅ v10.5.0-beta.6 | `GeneralUpdate.Core.Pipeline` |
| 策略系统 | ✅ v10.5.0-beta.6 | `GeneralUpdate.Core.Strategy` |
| FileTree | ✅ v10.5.0-beta.6 | `GeneralUpdate.Core.FileSystem` |
| BlackList | ✅ v10.5.0-beta.6 | `UpdateRequest.Files/Formats/Directories` → `ToBlackPolicy()` |
| 差分引擎 | ✅ 内嵌 Core | `DiffPipelineBuilder` / `DiffPipeline` |
| AOT | ✅ v10.5.0-beta.4 | `JsonSerializerContext` 子类 |
| EventManager | ✅ v10.5.0-beta.4 | `GeneralUpdate.Core.Event` |
| AOT | ✅ v10.5.0-beta.6 | `JsonSerializerContext` 子类 |
| EventManager | ✅ v10.5.0-beta.6 | `GeneralUpdate.Core.Event` |
| Bowl 崩溃守护 | ⚠️ 基础类型 | `GeneralUpdate.Bowl.Bowl` |
| IUpdateHooks | ✅ v10.5.0-beta.4 | `GeneralUpdate.Core.Hooks` — `Hooks<T>()` |
| 自定义 Strategy 注入 | ✅ v10.5.0-beta.4 | `Strategy<T>()` |
| IUpdateHooks | ✅ v10.5.0-beta.6 | `GeneralUpdate.Core.Hooks` — `Hooks<T>()` |
| 自定义 Strategy 注入 | ✅ v10.5.0-beta.6 | `Strategy<T>()` |
| IPC 替换接口 | ❌ 暂不支持 | 使用 NamedPipe 替代方案 |
| SilentPollOrchestrator | ✅ v10.5.0-beta.4 | `Option.Silent` + `SetOption()` |
| Option 系统 | ✅ v10.5.0-beta.4 | `SetOption<T>(Option<T>, T)` |
| SilentPollOrchestrator | ✅ v10.5.0-beta.6 | `Option.Silent` + `SetOption()` |
| Option 系统 | ✅ v10.5.0-beta.6 | `SetOption<T>(Option<T>, T)` |

---

## ✅ 高级定制验证清单

### Bowl 崩溃守护
- [ ] 如果用 Bowl:项目中同时引用 `GeneralUpdate.Core` 和 `GeneralUpdate.Bowl`(v10.5.0-beta.4 无冲突)
- [ ] 如果用 Bowl:项目中同时引用 `GeneralUpdate.Core` 和 `GeneralUpdate.Bowl`(v10.5.0-beta.6 无冲突)
- [ ] `MonitorParameter` 的 `ProcessNameOrId` 与实际进程名匹配
- [ ] `TargetPath` 设置为应用安装根目录,非子目录
- [ ] `WorkModel` 根据场景选择 Correct(Normal/Upgrade)
Expand Down
4 changes: 2 additions & 2 deletions .claude/skills/generalupdate-advanced/reference.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# GeneralUpdate 扩展参考

> ⚠️ 基于 **NuGet v10.5.0-beta.4** API。
> ⚠️ 基于 **NuGet v10.5.0-beta.6** API。

## 注入方法调用链(v10.5.0-beta.4
## 注入方法调用链(v10.5.0-beta.6

```csharp
new GeneralUpdateBootstrap()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
/// If a crash is detected, it captures a dump, exports diagnostics,
/// and optionally restores the previous version from backup.
///
/// NuGet: dotnet add package GeneralUpdate.Bowl --version 10.5.0-beta.4
/// NuGet: dotnet add package GeneralUpdate.Bowl --version 10.5.0-beta.6
/// Note: Reference only GeneralUpdate.Bowl (it transitively includes Core).
/// Do NOT reference GeneralUpdate.Core separately when using Bowl.
///
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
using GeneralUpdate.Core.Hooks;

/// <summary>
/// 【Skill 参考】自定义生命周期 Hooks (v10.5.0-beta.4 可用)
/// 【Skill 参考】自定义生命周期 Hooks (v10.5.0-beta.6 可用)
///
/// 通过 IUpdateHooks 接口可以拦截更新流程的各个阶段:
/// - OnBeforeUpdateAsync: 更新开始前(可取消)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
using GeneralUpdate.Core.Download.Reporting;

/// <summary>
/// 【Skill 参考】自定义平台策略(v10.5.0-beta.4 可用)
/// 【Skill 参考】自定义平台策略(v10.5.0-beta.6 可用)
///
/// 通过 bootstrap.Strategy&lt;T&gt;() 注入自定义策略。
/// 自定义策略需要实现 IStrategy 接口。
Expand Down
14 changes: 7 additions & 7 deletions .claude/skills/generalupdate-init/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ allowed-tools: "Bash, Read, Write, Edit, Glob, Grep, WebSearch"

帮助开发者在任意 .NET 应用中集成 GeneralUpdate 自动更新。从零开始,覆盖所有配置方式、部署场景和生产环境考量。

> ⚠️ **针对 NuGet v10.5.0-beta.4**。`Configinfo` 已被 `UpdateRequest` 替代,命名空间已移至 `GeneralUpdate.Core.Configuration`。
> ⚠️ **针对 NuGet v10.5.0-beta.6**。`Configinfo` 已被 `UpdateRequest` 替代,命名空间已移至 `GeneralUpdate.Core.Configuration`。

---

Expand Down Expand Up @@ -176,7 +176,7 @@ await new GeneralUpdateBootstrap()

### 应用角色(AppType)

`AppType` 是一个 enum(v10.5.0-beta.4):
`AppType` 是一个 enum(v10.5.0-beta.6):

| 值 | 名称 | 说明 |
|----|------|------|
Expand Down Expand Up @@ -323,14 +323,14 @@ publish/

## ⚠️ 已知问题

### NuGet 注意事项(v10.5.0-beta.4
`GeneralUpdate.Core` 和 `GeneralUpdate.Bowl` **可以同时引用**(v10.5.0-beta.4 中无 CS0433 冲突)。
### NuGet 注意事项(v10.5.0-beta.6
`GeneralUpdate.Core` 和 `GeneralUpdate.Bowl` **可以同时引用**(v10.5.0-beta.6 中无 CS0433 冲突)。
- 使用 Core:`dotnet add package GeneralUpdate.Core`
- 使用 Bowl:`dotnet add package GeneralUpdate.Bowl`(它**不**传递依赖 Core,需要同时引用 Core)
- 差分类型已内嵌在 Core,**无需额外** `GeneralUpdate.Differential` 包

### 稳定版功能增强
v10.5.0-beta.4 新增以下功能:
v10.5.0-beta.6 新增以下功能:
- ✅ `IUpdateHooks` 生命周期钩子 — `Hooks<T>()`
- ✅ 可编程 `Option` 系统 — `SetOption(Option.Silent, true)`
- ✅ `SilentPollOrchestrator` 静默轮询
Expand All @@ -353,7 +353,7 @@ v10.5.0-beta.4 新增以下功能:

### NuGet & 编译
- [ ] Client 和 Upgrade 项目使用**完全相同**的 GeneralUpdate NuGet 版本
- [ ] 如果用 Bowl:项目中同时引用 `GeneralUpdate.Core` 和 `GeneralUpdate.Bowl`(v10.5.0-beta.4 无冲突)
- [ ] 如果用 Bowl:项目中同时引用 `GeneralUpdate.Core` 和 `GeneralUpdate.Bowl`(v10.5.0-beta.6 无冲突)
- [ ] 项目能正常 `dotnet build`(0 errors)
- [ ] 无需额外引用 `GeneralUpdate.Differential`(已嵌入 Core)

Expand All @@ -377,7 +377,7 @@ v10.5.0-beta.4 新增以下功能:
|---|--------|------|---------|
| 1 | **Core 和 Bowl NuGet 版本不一致** | 运行时 MethodNotFoundException | 使用相同 NuGet 版本 |
| 2 | **Bowl 缺少 `GeneralUpdate.Core` 引用** | 编译失败,缺少 Core 类型 | Bowl 不传递依赖 Core,需同时引用 Core |
| 3 | **Bowl 传递依赖 Core 的误解** | 编译失败 | v10.5.0-beta.4 中 Bowl 是独立包,需单独引用 Core |
| 3 | **Bowl 传递依赖 Core 的误解** | 编译失败 | v10.5.0-beta.6 中 Bowl 是独立包,需单独引用 Core |
| 4 | **Client/Upgrade NuGet 版本号不一致** | 运行时 MethodNotFoundException | 锁定完全相同版本 |
| 5 | **事件监听中做耗时操作(网络 IO / 磁盘 IO)** | Update 进程 UI 卡死,超时被 Kill | 仅更新 UI 状态,耗时操作异步 |
| 6 | **IPC 文件编码未设置 UTF-8** | Linux/macOS 中文乱码 | `Encoding.UTF8` |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="GeneralUpdate.Core" Version="10.5.0-beta.4" />
<PackageReference Include="GeneralUpdate.Core" Version="10.5.0-beta.6" />
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="GeneralUpdate.Core" Version="10.5.0-beta.4" />
<PackageReference Include="GeneralUpdate.Core" Version="10.5.0-beta.6" />
<!-- Uncomment for delta updates:
<PackageReference Include="GeneralUpdate.Differential" Version="10.5.0-beta.4" />
<PackageReference Include="GeneralUpdate.Differential" Version="10.5.0-beta.6" />
-->
<!-- Uncomment for crash monitoring:
<PackageReference Include="GeneralUpdate.Bowl" Version="10.5.0-beta.4" />
<PackageReference Include="GeneralUpdate.Bowl" Version="10.5.0-beta.6" />
-->
</ItemGroup>
</Project>
14 changes: 7 additions & 7 deletions .claude/skills/generalupdate-init/reference.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
# GeneralUpdate 参考手册

> ⚠️ **针对 NuGet v10.5.0-beta.4 API**。该版本使用 `UpdateRequest` 配置,支持可编程 `Option` 系统。
> ⚠️ **针对 NuGet v10.5.0-beta.6 API**。该版本使用 `UpdateRequest` 配置,支持可编程 `Option` 系统。

## NuGet 包

所有包的最新版本:[nuget.org/profiles/GeneralLibrary](https://www.nuget.org/profiles/GeneralLibrary)

| 包名 | 用途 | 必需 | .NET 版本 | 典型版本 |
|------|------|------|-----------|---------|
| `GeneralUpdate.Core` | 核心引擎(Bootstrap/下载/事件) | ✅ 是 | net8.0;net10.0 | 10.5.0-beta.4 |
| `GeneralUpdate.Differential` | BSDIFF/HDiffPatch 差分补丁 | ❌ 可选 | net8.0;net10.0 | 10.5.0-beta.4 |
| `GeneralUpdate.Bowl` | 进程崩溃监控、MiniDump、自动回滚 | ❌ 可选 | net8.0;net10.0 | 10.5.0-beta.4 |
| `GeneralUpdate.Core` | 核心引擎(Bootstrap/下载/事件) | ✅ 是 | net8.0;net10.0 | 10.5.0-beta.6 |
| `GeneralUpdate.Differential` | BSDIFF/HDiffPatch 差分补丁 | ❌ 可选 | net8.0;net10.0 | 10.5.0-beta.6 |
| `GeneralUpdate.Bowl` | 进程崩溃监控、MiniDump、自动回滚 | ❌ 可选 | net8.0;net10.0 | 10.5.0-beta.6 |
| `GeneralUpdate.Extension` | 插件管理系统 | ❌ 可选 | net8.0;net10.0 | ≥ 10.5.0 |
| `GeneralUpdate.Drivelution` | Windows 驱动更新 | ❌ 可选 | net8.0;net10.0 | 10.5.0-beta.4 |
| `GeneralUpdate.Drivelution` | Windows 驱动更新 | ❌ 可选 | net8.0;net10.0 | 10.5.0-beta.6 |

> ⚠️ **NuGet 注意事项**(v10.5.0-beta.4):
> ⚠️ **NuGet 注意事项**(v10.5.0-beta.6):
> - `GeneralUpdate.Differential` 的 `DifferentialCore` 等类型已内嵌在 `GeneralUpdate.Core` 中,**不需额外引用**(直接使用 Core 即可)
> - `GeneralUpdate.Bowl` 和 `GeneralUpdate.Core` **可以同时引用**(v10.5.0-beta.4 中 Bowl 与 Core 无共用类型,不再冲突)
> - `GeneralUpdate.Bowl` 和 `GeneralUpdate.Core` **可以同时引用**(v10.5.0-beta.6 中 Bowl 与 Core 无共用类型,不再冲突)
> - 使用 Bowl 时仍需引用 `GeneralUpdate.Bowl`(它**不**传递依赖 Core)

## UpdateRequest 字段完整说明
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
/// - 错误处理
/// - Upgrade 进程配置
///
/// 针对 NuGet v10.5.0-beta.4
/// 针对 NuGet v10.5.0-beta.6
/// </summary>
public static class FullIntegration
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
/// 如果以上条件不满足,请使用 FullIntegration.cs 显式配置。
///
/// NuGet: dotnet add package GeneralUpdate.Core
/// ⚠️ 针对 NuGet v10.5.0-beta.4
/// ⚠️ 针对 NuGet v10.5.0-beta.6
/// </summary>
public static class MinimalIntegration
{
Expand Down
2 changes: 1 addition & 1 deletion .claude/skills/generalupdate-migration/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ await new GeneralUpdateBootstrap()
### 编译验证
- [ ] `dotnet build` 无错误
- [ ] 无 `MissingMethodException` 的风险(检查所有方法名是否存在于 v10.4.6)
- [ ] 无 `CS0433` 类型冲突(v10.5.0-beta.4 中 Core + Bowl 无冲突,可同时引用)
- [ ] 无 `CS0433` 类型冲突(v10.5.0-beta.6 中 Core + Bowl 无冲突,可同时引用)

### 架构验证
- [ ] 项目已拆分为 Client + Upgrade 两个独立项目
Expand Down
2 changes: 1 addition & 1 deletion .claude/skills/generalupdate-strategy/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ allowed-tools: "Read, Write, Edit, Glob"

# ⚙️ GeneralUpdate 更新策略完全指南

> ⚠️ **针对 NuGet v10.5.0-beta.4**。该版本使用 `UpdateRequest` 配置,支持可编程 `Option` 系统。
> ⚠️ **针对 NuGet v10.5.0-beta.6**。该版本使用 `UpdateRequest` 配置,支持可编程 `Option` 系统。

---

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
/// - (可选) POST /Upgrade/Report — 状态上报
///
/// NuGet: dotnet add package GeneralUpdate.Core
/// ⚠️ 针对 NuGet v10.5.0-beta.4
/// ⚠️ 针对 NuGet v10.5.0-beta.6
/// </summary>
public static class ClientServerStrategy
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@
/// 适用于应用体积大(>100MB)或带宽受限的场景。
/// 仅传输变动的文件部分,节省 60-90% 带宽。
///
/// v10.5.0-beta.4 通过 UseDiffPipeline(Action{DiffPipelineBuilder}) 配置差分。
/// v10.5.0-beta.6 通过 UseDiffPipeline(Action{DiffPipelineBuilder}) 配置差分。
///
/// NuGet:
/// dotnet add package GeneralUpdate.Core
///
/// ⚠️ 注意:GeneralUpdate.Core v10.5.0-beta.4 已内置差分支持,
/// ⚠️ 注意:GeneralUpdate.Core v10.5.0-beta.6 已内置差分支持,
/// 无需额外安装 GeneralUpdate.Differential 包。
/// </summary>
public static class DifferentialStrategy
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
/// 适用于用户长期不关闭应用的场景(如桌面工具、监控面板)。
/// GeneralUpdate 在检测到更新后自动后台下载,下次启动时应用新版本。
///
/// v10.5.0-beta.4 通过 SetOption(Option.Silent, true) 启用静默模式。
/// v10.5.0-beta.6 通过 SetOption(Option.Silent, true) 启用静默模式。
///
/// NuGet: dotnet add package GeneralUpdate.Core
/// </summary>
Expand Down
Loading
Loading