SuperAPI AI 工具集

rust-sqlite-cli-architecture

编程与开发

查看项目

更新于 10-15 17:29

技能介绍

用途:在设计或评审 Rust CLI 且用 SQLite 保存持久本地状态时使用,输出可实施的架构方案,而非泛泛的数据库建议。需明确数据存放位置、模式变更方式、哪些命令拥有事务、测试如何证明安全、出错后用户如何恢复。

主要能力与约束:把数据库视为用户数据而非内部缓存(除非产品明确说明可无损失删除);选定唯一规范数据库位置,并通过 flag、环境变量或配置显式覆盖;破坏性模式变更前必须有经过测试的备份与回滚路径;每个变更命令需明确事务边界;迁移需纳入源码控制、有序、可重复,并用旧版 fixture 测试;面向用户的错误要说明下一步操作,不能把原始 SQL 作为主消息;重要数据使用前必须已有恢复命令。

适用场景:需要本地持久状态、离线运行、快速启动、简单部署、单机归属的 CLI,如任务存储、本地索引、审计日志、同步队列、需跨重启的缓存、可移植项目数据库。若需跨机器多写并发、集中策略、服务端审计或超大二进制负载,应另选存储设计,此时 SQLite 只能作为本地队列或缓存,并需指明记录服务器。

使用方式:先收集输入(命令读写删改、数据归属、可移植性、持久性、并发、升级、隐私备份预期),再按流程定义存储契约、绘制命令到数据映射、划分模块边界、按操作设计模式、定义连接设置、编写迁移策略、指定事务边界、规划运维命令、构建测试矩阵。推荐文件结构分离 main、cli、commands、domain、db(含 migrations、schema、repo_*)与 tests。

限制:资料未提供具体代码实现、安装命令、收费或平台信息;仅给出架构方法与检查清单。