3.7 KiB
实现与验证记录
日期:2026-10-17(Asia/Shanghai)。
初始开发阶段记录
用户已明确禁止在本地测试,并要求清理下载内容。停止继续下载、构建与测试;后续检查脚本仅供用户指定的 CI/部署环境使用。测试结果是此前已启动进程返回的历史记录,不代表此后又运行了测试。
尝试中断此前的 cargo test --workspace 时,该进程已经自然结束,返回状态 0,SQLite 构建依赖也已下载。随后按用户要求清理了本次新增缓存和构建产物,不再运行测试。
已观察结果
| 检查 | 实际结果 |
|---|---|
cargo fmt --all --check |
通过;此后只修改文档与约定,没有修改 Rust 代码 |
cargo test -p aster-core --offline |
3 项私有单元测试、6 项公开语义测试、1 项文档测试通过 |
cargo clippy -p aster-core --all-targets --offline -- -D warnings |
通过,仅覆盖内核 |
此前启动的 cargo test --workspace |
最终返回 16 项通过、0 失败、1 项明确忽略;含核心 9 项、宿主 1 项、存储 5 项、文档 1 项 |
| PostgreSQL 失败路径 | 使用不处理协议的本地 TCP socket,连接超时并报错、不降级;已包含于上述存储测试 |
| 真实 PostgreSQL 成功路径 | 未验证;集成测试显式忽略,需专用测试库 |
| 两个 Compose 文件 | Ruby YAML 静态解析通过,未执行 Compose |
scripts/check.sh/scripts/smoke.py |
分别通过 Shell/Python 语法检查,未运行完整脚本 |
cargo clippy --workspace --all-targets -- -D warnings |
未执行,不宣称全工作区无 Clippy 警告 |
| CLI/HTTP/SIGTERM 端到端冒烟 | 未执行;宿主健康状态函数测试已在上述 workspace 测试通过 |
| Docker 构建及容器运行 | 未执行,本机无 Docker |
以上为初始阶段记录,当时没有外部部署、PostgreSQL 服务、commit 或 push。
清理结果
- 删除本项目创建后新增、且属于 Cargo.lock 依赖列表的 150 个 Cargo 下载归档与 150 个解压目录,包括 SQLite/SQLx 本次新增依赖。
- 删除项目
target/构建产物及 Python 字节码缓存。 - 保留此前已存在的 Cargo 缓存、共享注册表索引、项目源码与 Cargo.lock;不清空其他项目的既有依赖。
- 没有运行 CLI 创建默认
data/aster.db。此前文件数据库测试使用的临时目录随测试自动释放。
Git
初始阶段本地分支 main 尚无提交。origin 是用户提供的 ssh://git@gitea.entroia.com:22222/Zayden-Jung/endorphin-aster-vm.git。
只读 ls-remote --symref origin HEAD 使用专用 codex-bot 密钥、隔离 SSH 配置、禁用其他身份及交互式凭据,返回状态 0,未公布 HEAD 引用。只读成功不代表已验证写权限。
仓库级身份:Codex Bot / codex-bot@gitea.entroia.local;core.sshCommand 使用项目约定的隔离命令。没有读取密码或切换为仓库 owner 身份。
ces-control CI/CD 准备
用户随后指定在 ces-control 上持久部署,并要求同时测试 SQLite 与 PostgreSQL、正式部署使用 PostgreSQL。新增的工作流和脚本将这些检查放在远端 Docker 中,不在本机下载依赖或运行测试。
准备阶段只读检查:Docker 29.1.3、Compose 2.40.3、x86_64、约 1.7 GiB 内存/4 GiB swap、73 GiB 可用磁盘;没有主机 Rust 或 buildx,已缓存 PostgreSQL 17 镜像。选用单任务 Rust 构建、legacy Docker builder,默认生产端口 18081(服务器回环地址),PostgreSQL 数据目录独立。
此处不预先宣称远端 CI 或部署已成功;最终结果以 Gitea Actions 对应运行与服务器状态核验为准。