Skip to content

feat(mac): 本地文件持续收入与多连接切换 - #2

Open
xiaoland wants to merge 5 commits into
feat/mac-capture-peer-reviewfrom
feat/mac-local-files
Open

xiaoland wants to merge 5 commits into
feat/mac-capture-peer-reviewfrom
feat/mac-local-files

Conversation

@xiaoland

@xiaoland xiaoland commented Oct 23, 2026 •

Copy link
Copy Markdown
Member

目的与范围

让 Mac Peer 直接将用户选择的本地目录持续收入 info-base。新增随应用交付的 inkcre/local-files first-party 扩展,经原生 PostgreSQL 保存正文和位置引用;不需要 Python Peer 执行写入。

  • 支持 PDF 文字层、DOCX 主文档、Markdown、Org、HTML 和纯文本;FSEvents 变化、重启核对及手动 Source Job 共用对账流程。

  • 文件修改更新原资料;可证明的重命名保持 ID;删除原件保留正文;提取失败和目录不可访问不会清空旧内容。

  • 原件留在磁盘,以 inkcre-peer-file://<peer-id>/<机器绝对路径> 引用。目录绑定原信息库,切换连接不改投。

  • Host 拥有主窗口、导航和连接管理;Capture 与本地文件独立启停。删除 Capture 旧连接页及重复轮询,实际提交时办理首次准入。

  • 列表与扫描只读取元数据,选中文件才读取正文;未变化文件跳过写事务;Capture 减少全量读取和无变化刷新。

  • 本机先停用再尝试同步共享意图;后台 Keychain 读取静默失败,避免反复系统授权提示。

  • 本机保存命名连接列表与当前选择,重新打开恢复上次选择;旧单连接保留身份与 Keychain 引用。设置和 Peer 页可添加、编辑并切换连接。

  • 切换立即清空前台目录选择,等待旧刷新收束后读取当前库。Capture 冻结待办和已有目录监视继续使用原目标,不因切换而改投。

验证

  • swift test:58 项、9 个 suite 通过,同时启用一次性 PostgreSQL 的 Capture 与本地文件检查。

  • 数据库主流程涵盖首次准入、重复提交/重启回执恢复、六格式收入、修改与重命名、失败/删除保留及来源移除。

  • 隐藏 AppKit 窗口跑通选择正文、快速切换、暂停/恢复与重启,实际查看正文、失败保留、空状态和 Host 页面渲染图。仅图片尺寸断言归为渲染冒烟检查。

  • 此前用合成内容完成系统目录选择、打开原件、移除取消/确认的前台验证;精简后没有重新操作前台或重验屏幕录制权限。

  • bash scripts/build-app.sh:授权 Apple Development 身份签署的 universal 0.1.0(build 17) app/dmg 构建和签名验证通过;本次多连接包未替换已安装应用。

  • 多连接增量:Swift 完整套件报告 61 tests(3 个数据库 opt-in 用例跳过);2026-10-25 重跑连接持久化与 Host 界面定向 5 项通过。包含 A/B/A、重载恢复、名称编辑、旧单连接保留及无效选择不覆盖。

  • 已查看多连接设置的隐藏窗口渲染。隔离调度探针确认任务内清理修复了连接切换漏刷新竞态;未将其作为真实多库数据库证据。

  • 本次没有重跑真实多信息库端到端与前台原生鼠标交互;上述原本地文件数据库证据仅适用于未改动部分。

风险与回退

正文不包含 OCR、DOCX 脚注/批注;应用离线期间出现又消失且从未收入的文件无法恢复。原件没有备份或跨 Peer 传输。回退开发应用包会停止本地文件执行能力,已收入图及现有应用数据保留;不执行数据清理。多连接保存后,旧版应用不能直接读取新的连接列表格式;若需回退,应先备份本机 connection.json,再恢复旧格式的活动连接,Keychain 和本机材料不清理。

交付影响

不新增数据库迁移,不发布软件包、不公证、不部署。第三方 SwiftSoup 依赖固定版本,完整许可与署名随应用交付。版本仍为 0.1.0,17 仅为构建号。

依赖关系

跨仓配套

- 独立本地文件扩展直接写入 PostgreSQL,支持六格式提取与原件失效保留
- 主窗口与连接归 Host,移除 Capture 重复连接界面及轮询
- 按需加载正文,跳过无变化写事务,保证本地停用不受凭据错误阻塞
- 验证 58 项检查与签名 universal 0.1.0(build 16)构建
- 保留各连接身份与 Keychain 凭据引用,并恢复上次选择
- 切换时刷新前台目录,冻结待办和已有目录继续绑定原库
- 增加持久化与宿主切换检查,更新 build 17 和使用文档
@xiaoland
xiaoland marked this pull request as ready for review October 25, 2026 09:22
- 记录 UI PR #67 的精确候选提交与独立 ZIP 来源
- 补齐明暗面板及菜单资源映射,保留原生图标适配边界
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant