|
|
ba00fcb1c6
|
fix: 适配新服务器蓝绿部署 — nginx 原生/PostgreSQL Docker 容器名/部署脚本
Deploy Backend / deploy (push) Has been cancelled
|
2026-07-13 18:30:38 +08:00 |
|
|
|
41b3aa6177
|
docs: 更新 weather_data 表文档(spotcheckcount 字段)
|
2026-05-18 09:53:08 +08:00 |
|
moira
|
27c8979690
|
fix: 全量代码审计修复—安全/死代码/错误处理/配置净化
P0 安全修复:
- 支付宝回调验签 (alipay_notify BTreeMap + rsa2_verify)
- JWT fallback 'default_secret' 改为 .expect() (panic保底)
- 安全响应头中间件 (CSP/X-Frame-Options/HSTS)
P1 死代码清理:
- 移除孤儿文件 src/alipay.rs (284行, 无mod注册)
- 移除Cargo未使用依赖 (actix-files/error/log/hex/digest)
- log::info! → tracing::info! (auth.rs)
- 移除 config.rs server_host + 3个TOML定义
P1 质量修复:
- 修复 weather.rs unwrap() → unwrap_or
- 修复 auth.rs+payment.rs 错误吞咽 (add tracing::warn)
- 修复 main.rs 3x parse().unwrap → unwrap_or
P3 运维:
- 新增 scripts/backup-db.sh (定时备份用)
- 新增 README.md (快速入门文档)
- deploy.sh 集成 backup-db.sh 上传
|
2026-05-13 17:20:31 +08:00 |
|
moira
|
cb483298d5
|
feat: 新增deploy.sh --init-env一键初始化.env+完善JWT_SECRET管理文档
新增 --init-env 功能:
- 自动生成 256 位随机 JWT_SECRET (openssl rand -base64 32)
- 推送完整.env模板到服务器,设置权限600
- 文件已存在时先备份再覆盖,有确认提示
- dry-run 模式下安全预览
JWT_SECRET 管理方案:
- dev/prod 使用不同密钥
- 仅在服务器.env中存储(不进入Git/TOML)
- deploy.sh check_env_file() 部署前自动验证
- AGENTS.md 新增完整管理文档(生成/存储/验证/轮换)
deploy.sh 帮助文档同步更新 --init-env 说明
|
2026-05-13 15:31:23 +08:00 |
|
moira
|
bded0113ee
|
refactor: 配置安全加固-从TOML移除密钥+去除死代码+统一端口
P0: 从config/production.toml和config/development.toml移除wechat_secret/jwt_secret
这些密钥现在仅通过.env(EnvironmentFile)加载,不再进入Git历史
config.rs: 新增直接环境变量名回退(JWT_SECRET而非仅APP_JWT_SECRET)
P1: - 移除config.rs中的server_ports字段(死代码,未被任何代码使用)
- 简化main.rs端口fallback: 生产环境仅4433,开发环境仅8080/3000
- .env.example版本号0.2.3→0.3.0
Docs: - AGENTS.md测试域名xmclassmate.top/dev→dev.xmclassmate.top
|
2026-05-13 15:17:45 +08:00 |
|
moira
|
d879b65662
|
docs: 添加版本控制约束-使用jj提交变更
|
2026-05-13 14:52:08 +08:00 |
|
|
|
0cba52f545
|
docs: 更新后端AGENTS.md-补齐auto-confirm/sync-order/orders API/修复支付流程和部署表
|
2026-05-11 09:40:39 +08:00 |
|
|
|
4aece40a58
|
docs: 修复 AGENTS.md 文档过时问题
- 项目结构图添加 rate_limiter.rs 文件
- 修复 systemd 说明:实际使用 EnvironmentFile= 而非 Environment=
|
2026-05-06 09:37:37 +08:00 |
|
|
|
2046638721
|
feat: 实现 Mock 支付功能,修复支付激活会员问题
- 当未配置 ALIPAY_* 环境变量时,自动启用 Mock 支付模式
- Mock 支付页面点击按钮后调用 /api/payment/mock-confirm 激活会员
- 更新 AGENTS.md 文档说明 Mock 支付配置和使用方法
|
2026-04-28 10:17:26 +08:00 |
|
|
|
580e68b58c
|
feat(payment): 支持 URL 参数直接传递 JWT 登录
|
2026-04-27 13:13:32 +08:00 |
|
|
|
375f0affcf
|
docs: 更新支付系统和支付宝集成文档,修复Rust edition版本号
|
2026-04-24 09:19:48 +08:00 |
|
|
|
8c9552fbfc
|
feat: 新增支付页面接口,为接入支付宝做准备
- GET /payment: 套餐选择页(无需认证,外部浏览器打开)
- GET /payment/page: 支付引导页(需 JWT,创建订单)
- GET /payment/pay: 支付宝电脑网站支付占位页(需 JWT)
- AppState 新增支付宝配置字段(可选)
- afterbody.js: PDF下载增加状态提示和重试按钮
|
2026-04-23 10:48:31 +08:00 |
|
|
|
fe0e831210
|
docs: 更新后端 API 文档
- 补充 handlers 目录:添加 meta.rs、favorites.rs
- 新增服务状态页说明(/、/health)
- 完善 API 接口列表:
- 公开接口:添加 /health、/refresh-token
- 受保护接口:添加 /api/favorites 系列、/api/user/quota
- 支付接口:添加 /api/payment/create-order、/api/payment/mock-confirm
|
2026-04-19 21:10:17 +08:00 |
|
|
|
fb791a2a7c
|
docs: 更新备份策略文档,反映版本去重和选择性回滚
- 备份文件名格式:{project}.backup.{timestamp}.{gitHash}.{md5前8位}
- 清理策略:保留 5 个不同版本,相同版本只保留最早的
- 手动回滚:支持选择特定版本
|
2026-04-19 20:56:32 +08:00 |
|
|
|
a91948a18c
|
refactor(config): 统一版本管理,移除冗余的 app_version 字段
- 移除 config/*.toml 中的 app_version 字段(代码中未使用)
- 版本号统一由 Cargo.toml 管理
- Cargo.lock 自动同步更新
- 更新 AGENTS.md 添加版本管理说明
|
2026-04-19 20:35:12 +08:00 |
|
|
|
e14c85436b
|
feat(auth): 添加 Refresh Token 双 Token 机制
- 添加 /api/refresh-token 接口支持 Token 续期
- 登录接口返回 access_token 和 refresh_token
- 新增 refresh_tokens 表存储 refresh_token
- 部署脚本添加数据库备份和迁移功能
- deploy.sh 添加 4 项 API 测试
- 更新 AGENTS.md 文档
|
2026-04-19 16:01:41 +08:00 |
|
|
|
988828b984
|
feat(deploy): 添加开发环境 systemd 服务,改进部署文档
|
2026-04-19 00:31:26 +08:00 |
|
|
|
44aa62da49
|
feat(deploy): 优化部署脚本,添加 dry-run、备份、SSH 复用
|
2026-04-19 00:20:06 +08:00 |
|
|
|
9d452c4e75
|
feat: 统一前后端日志和错误处理
|
2026-04-19 00:14:22 +08:00 |
|
|
|
fd21e641a2
|
fix: 将 get_weather_details 和 health_check 移出 JWT 保护作用域作为公开接口
|
2026-04-18 14:04:49 +08:00 |
|
|
|
d756694534
|
docs: 更新 API 文档,澄清 get_weather_details 支持双认证方式
- 说明 get_weather_details 同时支持 JWT 和 temp_token
- 更新路由注册注释
|
2026-04-18 13:24:07 +08:00 |
|
|
|
e02644d6d7
|
docs: 重构付费系统设计文档
AGENTS.md:
- 支付系统章节新增三种支付模式(微信/邀请码/管理员)
- 添加累积计算逻辑说明
- 说明永久会员使用 2099-12-31 而非 NULL
IMPROVEMENTS.md:
- 重构 12.1-12.7 章节为新的付费系统设计
- 添加 memberships 表设计(冗余表提高查询性能)
- 添加 invitation_codes 表设计
- 详细说明累积计算逻辑和代码示例
- 更新邀请码接口设计(增加 paid_days 字段)
- 更新后端/前端实现要点
- 邀请码生成规则改为 Y/M/P 类型标识
|
2026-04-17 21:44:27 +08:00 |
|
|
|
a495d091e5
|
docs: 补充测试环境和生产环境数据库名称
- 明确区分 milkydata_dev(测试环境)和 milkydata(生产环境)
- 更新 docker exec 命令示例为测试环境
- 添加两个环境的连接字符串
|
2026-04-17 21:18:43 +08:00 |
|
|
|
7436e04764
|
docs: 添加服务器连接和数据库部署信息
- 添加 SSH 连接命令:ssh root@1panel-server
- 说明 PostgreSQL 通过 Docker 部署
- 添加 docker ps 和 docker exec 连接命令
- 注明连接字符串和 127.0.0.1 而非 localhost
|
2026-04-17 20:53:39 +08:00 |
|
|
|
0ef0f71049
|
docs: 移除支付网关禁止事项,新增支付系统开发约定
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
|
2026-04-17 12:56:26 +08:00 |
|
|
|
da4e6f557e
|
feat: 实现后端多环境配置机制
- 使用 toml crate 替代 config crate 直接读取配置文件
- 创建 config/default.toml、config/development.toml、config/production.toml
- 重写 config.rs 支持多环境配置加载
- 增强 deploy.sh 支持 development/production 环境参数
- 更新 IMPROVEMENTS.md 标记环境区分完成
|
2026-04-17 11:11:13 +08:00 |
|
|
|
3055023790
|
docs: 更新项目文档,反映已完成的重构和模块拆分
|
2026-04-15 13:37:21 +08:00 |
|
|
|
913a235e5c
|
docs: 更新 AGENTS.md 和 IMPROVEMENTS.md,记录已知兼容性问题
AGENTS.md:
- 添加已知兼容性问题章节
- actix-ratelimit 0.3.1 与 actix-web 4.x 不兼容
- actix-web-prom 与当前架构不兼容
- 添加路由配置结构说明(App 配置顺序、middleware 应用方式)
- 添加路由优先级说明
IMPROVEMENTS.md:
- 2.1 缺少请求频率限制:标记 ⚠️,记录兼容性问题及备选方案
- 6.1 缺少性能指标收集:标记 ⚠️,记录兼容性问题及备选方案
- 修正无日志聚合的 checkbox 状态
|
2026-04-15 11:29:20 +08:00 |
|
|
|
954ae1c0a4
|
docs: 更新 AGENTS.md 添加用户信息 API 和 SQL 保留字注意事项
|
2026-03-26 09:18:08 +08:00 |
|
|
|
c37a7a5f36
|
更新项目文档,添加 AGENTS.md
- 删除旧的 prompt.md API 文档
- 添加 AGENTS.md 项目文档,包含技术栈、项目结构、API 接口、认证流程等
|
2026-03-25 13:18:09 +08:00 |
|