文档清单: - README.md 仓库导航 - iShare-dev-plan.md 开发规划 - SYSTEM_DESIGN.md 系统设计(角色/流程/接口) - DATABASE_DESIGN_V2.md 数据库完整字段设计 - DATABASE_DESIGN_OVERVIEW.md 设计概要 v4(28张表) - DECISIONS.md 6个关键决策记录 - db/ishare_schema_v2.sql 基础建表 SQL - db/ishare_schema_v3_delta.sql v2→v3 增量(评审修复) - db/ishare_schema_v4_delta.sql v3→v4 增量(决策确认) - memory_2026-02-17.md 工作日志 Phase D 完成:28张表定稿,所有决策已确认
202 lines
8.5 KiB
Markdown
202 lines
8.5 KiB
Markdown
# 2026-02-17 日记
|
||
|
||
## 上午/下午
|
||
|
||
### 1. 补充 VPS 环境文档
|
||
- 对比记忆 vs Gitea 文档,发现几处缺漏
|
||
- 已补充推送到 Gitea:https://git.puro.im/purovps/vps_env/src/branch/main/vps-environment.md
|
||
- 补充内容:
|
||
- Redis (localhost:6379 无密码) / Prometheus (9090) / Loki (3100)
|
||
- jshERP 架构:后端容器 `jsherp`(host network, 9999)、前端静态 `/opt/jshERP-web/`
|
||
- Drone Trusted 模式、Dockerfile 需要 fontconfig + ttf-dejavu
|
||
- 踩坑记录:Redis slave 问题、Portainer 改 9000 (HTTP)、前端 403 改到 /opt/jshERP-web/ 等
|
||
- Caddy conf.d 路径:devops.conf / erp.conf / im.conf / claw.conf
|
||
- Mattermost Bot:@erp_devbot token,助手启停方法
|
||
- Fail2ban + Swap 4GB
|
||
|
||
### 2. iShare 开发规划
|
||
- 项目仓库:https://git.puro.im/purovps/pigx_ishare
|
||
- 规划文档已推送:https://git.puro.im/purovps/pigx_ishare/src/branch/master/iShare-dev-plan.md
|
||
- 技术路线决策:
|
||
- 基于 PigX 5.11.0 二次开发,新增 `pigx-ishare` 业务模块(不动框架原代码)
|
||
- Java 17 + Spring Boot 3(javax → jakarta 迁移)
|
||
- 开发阶段用 `pigx-boot` 单体模式,一个 JAR 跑全部;上线后按需拆微服务
|
||
- 管理后台:pigx-ui(Vue3 + TypeScript + Tailwind)
|
||
- 用户端:独立 H5 项目,响应式移动端优先
|
||
- 仓库规划:3个独立仓库(ishare-backend / ishare-admin / ishare-web)
|
||
- 开发周期:约 7-8 周到 MVP(不含支付)
|
||
- **下一步待定:开始执行哪个 Phase**
|
||
|
||
## 晚上
|
||
- /compact 压缩后 /new 新开 session
|
||
- Ami 粘贴了上次对话记录,同步上下文
|
||
|
||
---
|
||
|
||
## ✅ 待办:iShare 开发执行
|
||
|
||
### 项目概况
|
||
- **产品**:流媒体订阅合租分享平台(Netflix/Spotify 等)
|
||
- **技术栈**:PigX 5.11.0(Java 17 + Spring Boot 3)二次开发
|
||
- **规划文档**:https://git.puro.im/purovps/pigx_ishare/src/branch/master/iShare-dev-plan.md
|
||
- **PigX 框架**:https://git.puro.im/purovps/pigx
|
||
- **旧版代码**:https://git.puro.im/purovps/pigx_ishare/src/branch/pigx_ishare
|
||
|
||
### 仓库规划(待创建)
|
||
- `ishare-backend` — 后端主仓库(Fork PigX 5.11.0 + pigx-ishare 模块)
|
||
- `ishare-admin` — 管理后台(Fork pigx-ui)
|
||
- `ishare-web` — 用户端 H5(独立 Vue3 项目)
|
||
|
||
### 开发阶段(已调整优先级)
|
||
- [ ] **Phase D(最高优先)**:系统设计 — 功能清单 + 业务流程 + 数据库设计 ← 进行中
|
||
- [ ] **Phase 0**(1-2天):创建仓库 + Fork PigX + 本地环境 + Drone CI/CD + 建库 SQL
|
||
- [ ] **Phase 1**(1-2周):后端核心 CRUD API(平台/计划/商品/账号/用户订阅)
|
||
- [ ] **Phase 2**(1周):管理后台前端(ishare-admin)
|
||
- [ ] **Phase 3**(2-3周):用户端 H5(ishare-web,按 Figma 设计稿)
|
||
- [ ] **Phase 4**(按需):支付集成(支付宝/微信)
|
||
- [ ] **Phase 5**:测试 + 上线
|
||
|
||
### Phase D 完成状态
|
||
- [x] 系统角色定义(4个角色)
|
||
- [x] 功能模块清单(用户端11模块 + 管理后台9模块)
|
||
- [x] 核心业务流程(注册/购买/凭据查看/续费/拼车/邀请 共6条)
|
||
- [x] 数据库完整设计(现有8表修订 + 新增5表:as_order/as_wallet/as_wallet_log/as_invite/as_notification)
|
||
- [x] 接口设计要点(AES加密/席位并发控制/价格快照)
|
||
- [ ] 待决策项确认(6个决策点,需 Ami 确认)
|
||
- 设计文档:https://git.puro.im/purovps/pigx_ishare/src/branch/master/SYSTEM_DESIGN.md
|
||
|
||
### 关键设计决策
|
||
- 开发阶段用 `pigx-boot` 单体模式(一个 JAR),上线后按需拆微服务
|
||
- 用户端做响应式 H5,二期再考虑小程序
|
||
- 账号密码 AES 加密存储(复用 PigX Jasypt)
|
||
- 数据库复用 VPS MariaDB,CI/CD 复用 Drone
|
||
|
||
### 下一步
|
||
→ 确认从 **Phase 0** 开始执行
|
||
|
||
---
|
||
|
||
## 🛠️ OpenClaw 配置修复(2026-02-17 晚)
|
||
|
||
### QMD 记忆后端修复
|
||
- **问题**:`qmd-wrapper.sh` 强制用 nvm v24 Node,但 `better-sqlite3` 编译于 v22(MODULE_VERSION 127),版本冲突导致 `qmd update` 每次都失败
|
||
- **修复**:改 wrapper 用 `/usr/bin/node`(系统 v22),兼容 better-sqlite3
|
||
- **文件**:`/home/macsvr/clawd/scripts/qmd-wrapper.sh`
|
||
- **结果**:QMD 正常索引 78 个文档,BM25 记忆检索恢复正常
|
||
|
||
### Local Embedding(memorySearch)
|
||
- 重新启用(之前临时关闭)
|
||
- 模型:`hf:ggml-org/embeddinggemma-300M-GGUF/embeddinggemma-300M-Q8_0.gguf`
|
||
- 文件存在:`~/.node-llama-cpp/models/hf_ggml-org_embeddinggemma-300M-Q8_0.gguf`
|
||
|
||
---
|
||
|
||
## 📐 iShare Phase D:数据库设计 v2.0 完成
|
||
|
||
### 已推送到 Gitea
|
||
- 设计文档:https://git.puro.im/purovps/pigx_ishare/src/branch/master/DATABASE_DESIGN_V2.md
|
||
- 建表 SQL:https://git.puro.im/purovps/pigx_ishare/src/branch/master/db/ishare_schema_v2.sql
|
||
|
||
### 修复的原版缺陷(15项)
|
||
**严重(4项):**
|
||
1. `as_user_sub.remark` int→varchar(字段类型 Bug)
|
||
2. `as_user_sub` 缺 `status`、`expire_time`(订阅生命周期无法管理)
|
||
3. `as_sub_account.passwd_salt` int→varchar(64)(加密 Salt 不能用 int)
|
||
4. 缺少个人订阅记录表(无法追踪谁加入了哪个合租位)
|
||
|
||
**重要(6项):**
|
||
5. `as_sub_product.Tags`→`tags`(Java 命名 Bug)
|
||
6. `as_sub_plan.platform_id` varchar→bigint,`capacity` varchar→int
|
||
7. `as_sub_payroll.sub_plans`→`sub_plan_id`(语义混乱)
|
||
8. 7 处 int/Long→bigint 类型对齐
|
||
9. `as_sub_product` 缺 `platform_id`、`status`、`cover_image`
|
||
10. `as_sub_payroll` 缺 `duration_months`、`original_price`
|
||
|
||
### 新增 6 张表
|
||
| 表 | 作用 |
|
||
|----|------|
|
||
| `as_user_sub_member` | 个人订阅记录(最关键缺失表) |
|
||
| `as_order` | 完整订单(含状态机) |
|
||
| `as_wallet` | 用户钱包(含乐观锁) |
|
||
| `as_wallet_log` | 钱包流水 |
|
||
| `as_invite` | 邀请关系/返现 |
|
||
| `as_notification` | 系统通知 |
|
||
|
||
**总计:9 App 基础表 + 14 业务表 = 23 张表**
|
||
|
||
### Phase D 状态
|
||
- [x] 系统角色/功能模块清单
|
||
- [x] 核心业务流程(6条)
|
||
- [x] 数据库设计 v2.0(修复+新增)
|
||
- [ ] 待决策项确认(6个,见 SYSTEM_DESIGN.md)
|
||
- [ ] Phase 0 环境搭建(等 Phase D 决策确认后)
|
||
|
||
---
|
||
|
||
## 🌙 晚上(Session 2)
|
||
|
||
### iShare Phase D 完成
|
||
|
||
#### 数据库评审(7 个问题全部修复)
|
||
|
||
| 问题 | 处理 |
|
||
|------|------|
|
||
| R1 充值流水缺失 | 新增 `as_recharge` 表 |
|
||
| R2 续费唯一键问题 | 移除 UNIQUE KEY,续费改为新建记录 |
|
||
| I1 Banner 表缺失 | 新增 `as_banner` 表 |
|
||
| I2 M:N 逗号分隔 | 新增 `as_product_plan_rel`,移除 `sub_plan_ids` |
|
||
| I3 文档字段不一致 | 概要统一至 v2 修订字段名 |
|
||
| L1 拼车状态未建模 | `status=4` 等待车主录入凭据 |
|
||
| L2 索引缺失 | 补充 12 项关键索引 |
|
||
|
||
**表数量:v2(23张) → v3(27张)**
|
||
|
||
#### 5 个决策项确认
|
||
|
||
| # | 决策 |
|
||
|---|------|
|
||
| 1 | 三种支付全支持(复用 pigx-pay) |
|
||
| 2 | 拼车广场 Phase 2,一期仅自营 |
|
||
| 3 | 凭据查看需二次验证(SMS OTP) |
|
||
| 4 | 邀请返现完全可配置,新增 `as_invite_config` 表 |
|
||
| 6 | 提现 Phase 2 |
|
||
|
||
**最终:28 张表,Phase D 完成**
|
||
|
||
#### Gitea 提交记录
|
||
- `v1-initial-design` — 初版设计快照
|
||
- `v2-db-reviewed` — 评审修复完成
|
||
- `v3-phase-d-complete` — Phase D 全部完成(决策确认)
|
||
|
||
**新增文件:**
|
||
- `db/ishare_schema_v3_delta.sql` / `db/ishare_schema_v4_delta.sql`
|
||
- `DECISIONS.md` — 完整决策记录
|
||
- `DATABASE_DESIGN_OVERVIEW.md` — v4 最终版概要
|
||
|
||
---
|
||
|
||
## 📋 前置信息整理(开发背景)
|
||
|
||
### VPS 环境文档同步(2026-02-17 下午)
|
||
文档与记忆对比,发现缺漏并已补充推送:
|
||
|
||
**文档里有但记忆缺的(新信息):**
|
||
- LCMP (teddysun/lcmp) 一键安装 + lcmp-guide.md
|
||
- PHP 8.4.18 (php8.4-fpm)
|
||
- MariaDB 11.4.10 版本
|
||
|
||
**记忆里有但文档缺的(已补充):**
|
||
- Redis (localhost:6379, 无密码) / Prometheus (9090) / Loki (3100)
|
||
- jshERP 架构:容器 `jsherp`(host network, 9999)、前端 `/opt/jshERP-web/`、Drone Trusted 模式、Dockerfile 需 fontconfig + ttf-dejavu
|
||
- 踩坑记录:Redis slave 问题、Portainer 改 9000 (HTTP)、前端 403 改路径等
|
||
- Caddy conf.d 路径:devops.conf / erp.conf / im.conf / claw.conf
|
||
- Mattermost Bot:@erp_devbot token,MS 助手启停方法
|
||
- 安全基础:Swap 4GB、Fail2ban
|
||
|
||
文档地址:https://git.puro.im/purovps/vps_env/src/branch/main/vps-environment.md
|
||
|
||
### iShare 规划来源
|
||
- 旧版代码(基于 PigX 5.2):https://git.puro.im/purovps/pigx_ishare/src/branch/pigx_ishare
|
||
- 新版 PigX 框架:https://git.puro.im/purovps/pigx
|
||
- 已有资产:旧版代码 + 数据库设计 + Figma 设计稿(iShare_Design/iShare_设计文档.html)
|