Skip to content

🚀 SeatFlow v1.3.0 发布!

Latest

Choose a tag to compare

@Helio-RC Helio-RC released this 28 Jun 08:00

🚀 SeatFlow v1.3.0

发布时间:2026年6月28日


🆕 新增

  • 📦 .seatsets 应用数据打包:将全部应用数据(设置、会场、名单、快照、策略配置)打包为单个 .seatsets JSON 归档文件
    • 分块 SHA256 完整性校验,防篡改检测
    • 三种导入途径:设置页按钮 / 双击 .seatsets 文件(OS 文件关联)/ 首次启动自动发现
    • 尽力而为策略:单文件失败不中断整体,返回详细计数
    • 类别选择对话框(SeatSetsSelectionWindow),支持导出/导入模式
  • 📝 日志系统:Serilog 4 + Microsoft.Extensions.Logging,文件 Sink 输出,支持按模块分级覆盖
  • 🛡️ 文件关联:Windows 注册 .seatsets 文件类型,命名管道进程间通信实现单实例文件传递
  • 📋 策略数据韧性:无效策略/数据集/会场配置自动清理(ConfigCleanupService)
  • 🧪 11 个 SeatSetsServiceTests 单元测试
  • 📖 文档:docs/LOGGING.md、docs/SEATSETS_FORMAT.md

🔧 改进

  • 项目重命名:A_Pair → SeatFlow(命名空间、文件结构、脚本全面同步)
  • 导入校验增强:提前扫描时机、管道传递文件信息、修复 seatsets 工作目录错误
  • 引导系统修复:退出死锁修复、引导竞态修复、窗口失焦处理、步骤顺序调整
  • 人员管理:"仅更新数据集"功能、脏数据检测与拦截覆盖全部页面
  • 发布脚本:自包含/依赖框架输出文件标签改为 full / slim

🎨 UI 改进

  • 弹窗主题跟随:所有对话框标题栏随 Light/Dark 主题变色
  • 禁用全屏按钮:所有窗口隐藏最大化按钮
  • 设计令牌迁移:Typography 排版类新增 bodySmallStrong、hero;全项目 120+ 处硬编码替换为排版/间距令牌

🐛 修复

  • SeatSetsImportResult.Failed 计数器跳过块时产生负数
  • VenueConfigurationViewModel 离开页面后预览数据残留
  • OnboardingService.AnimateCardBounce async void 崩溃风险
  • Serilog dispose:true 关闭时潜在竞态条件
  • 版本检查脚本 seatsets 类型缺少 Model 类映射
  • 导入数据后未自动刷新问题
  • 教师视角导出列镜像问题
  • 编译时 Warning 清理

下载注意事项

版本选择

每个平台提供两种版本,文件名格式为 Seatflow-{类型}-{平台}

后缀 类型 体积 前提
-full- 自包含(full) ~150 MB 无需安装任何运行时,开箱即用
-slim- 依赖运行时(slim) ~80 MB 需安装 .NET 10 运行时

文件名示例:Seatflow-v1.3.0-full-win-x64-unsigned.exe = 自包含版 · Windows 64位 · 无需装 .NET

程序未签名

当前版本尚未进行代码签名,运行时可能遇到以下情况:

  • Windows:双击后 SmartScreen 弹出 "Windows 保护了你的电脑" 警告。点击「更多信息」→「仍要运行」即可。
  • macOS:首次打开时提示 "无法验证开发者"。前往「系统设置 → 隐私与安全性」→ 点击「仍要打开」。
  • Linux:下载后需手动赋予执行权限:chmod +x Seatflow-v1.3.0-full-linux-x64-unsigned && ./Seatflow-v1.3.0-full-linux-x64-unsigned

后续版本计划申请代码签名证书以消除这些警告。

使用方式

  1. 将下载的单个可执行文件放入一个空文件夹
  2. 直接运行即可(程序会在同目录创建 AppData/ 存放配置和数据)

下载后请校验哈希值

文件 SHA256
SeatFlow-v1.3.0-full-linux-x64-unsigned fe54dfef7058295c1b607e3d451842afbd7c38cc7a498db12375fec0140c788f
SeatFlow-v1.3.0-full-osx-arm64-unsigned df3895e6546a6958da519bc76f5ecb449728bed52194ca9c546e3c7882fb2006
SeatFlow-v1.3.0-full-osx-x64-unsigned 275c235fc37face332c228b5f046e8888810d265978047b7dc7bcde31f0762cd
SeatFlow-v1.3.0-full-win-x64-unsigned.exe eddf082185cc5c7e871e3cafb437b60ed71741fa4dcda50b308b1c2ac740a7de
SeatFlow-v1.3.0-slim-linux-x64-unsigned fe19f99f79ab8abb6f23b97fd1cb3f4531aaf4b220dbd7c2a005c794672230d6
SeatFlow-v1.3.0-slim-osx-arm64-unsigned 801c58f09a30fddcdb0d6d9b3392382eb52b4c7ae6bee436ca76fce537b243ca
SeatFlow-v1.3.0-slim-osx-x64-unsigned 98553d4e06ab0f3e38f554e0b55b82e53e6fe72742752279801dfec80a1c8648
SeatFlow-v1.3.0-slim-win-x64-unsigned.exe b10595597272e693cf51f4fc8a657277d6b104384c5e52a2407c36e183eb12cb

完整 Changelog:参见 CHANGELOG.md (https://github.com/Helio-RC/Seatflow/blob/main/CHANGELOG.md)