Files
work_flow_ishare/memory_2026-02-17.md
Admin 2e34dd172b init: iShare Phase D 设计文档完整归档
文档清单:
- 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张表定稿,所有决策已确认
2026-02-17 13:27:34 +01:00

202 lines
8.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 2026-02-17 日记
## 上午/下午
### 1. 补充 VPS 环境文档
- 对比记忆 vs Gitea 文档,发现几处缺漏
- 已补充推送到 Giteahttps://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 3javax → jakarta 迁移)
- 开发阶段用 `pigx-boot` 单体模式,一个 JAR 跑全部;上线后按需拆微服务
- 管理后台pigx-uiVue3 + TypeScript + Tailwind
- 用户端:独立 H5 项目,响应式移动端优先
- 仓库规划3个独立仓库ishare-backend / ishare-admin / ishare-web
- 开发周期:约 7-8 周到 MVP不含支付
- **下一步待定:开始执行哪个 Phase**
## 晚上
- /compact 压缩后 /new 新开 session
- Ami 粘贴了上次对话记录,同步上下文
---
## ✅ 待办iShare 开发执行
### 项目概况
- **产品**流媒体订阅合租分享平台Netflix/Spotify 等)
- **技术栈**PigX 5.11.0Java 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周用户端 H5ishare-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 MariaDBCI/CD 复用 Drone
### 下一步
→ 确认从 **Phase 0** 开始执行
---
## 🛠️ OpenClaw 配置修复2026-02-17 晚)
### QMD 记忆后端修复
- **问题**`qmd-wrapper.sh` 强制用 nvm v24 Node`better-sqlite3` 编译于 v22MODULE_VERSION 127版本冲突导致 `qmd update` 每次都失败
- **修复**:改 wrapper 用 `/usr/bin/node`(系统 v22兼容 better-sqlite3
- **文件**`/home/macsvr/clawd/scripts/qmd-wrapper.sh`
- **结果**QMD 正常索引 78 个文档BM25 记忆检索恢复正常
### Local EmbeddingmemorySearch
- 重新启用(之前临时关闭)
- 模型:`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
- 建表 SQLhttps://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 tokenMS 助手启停方法
- 安全基础Swap 4GB、Fail2ban
文档地址https://git.puro.im/purovps/vps_env/src/branch/main/vps-environment.md
### iShare 规划来源
- 旧版代码(基于 PigX 5.2https://git.puro.im/purovps/pigx_ishare/src/branch/pigx_ishare
- 新版 PigX 框架https://git.puro.im/purovps/pigx
- 已有资产:旧版代码 + 数据库设计 + Figma 设计稿iShare_Design/iShare_设计文档.html