# Remote Dev Sync Runbook 更新时间: 2026-07-02 ## 目标 让远程开发电脑和当前生产主机的 Memind 代码版本保持一致,同时避免覆盖生产数据、密钥、用户文件和本机脏改动。 ## 当前基线 - 生产运行目录: `/Users/john/Project/Memind` - 生产 release manifest: `release_id=20260701-220548-4fc5972` - 生产来源提交: `4fc59729ee222734628dca001e172c127c84488f` - 干净同步分支: `memind-streaming-runtime-20260702` - 干净分支目录: `/Users/john/Project/memind-clean-main-20260702` - 远端仓库: `https://git.tkmind.cn/tkmind/memind.git` ## 硬约束 - 不在生产运行目录执行 `git reset --hard`、`git clean -fdx`、`rm -rf`、数据库清理或数据目录同步删除。 - 不提交生产 `.env`、数据库、`MindSpace/`、`data/`、`users/`、`.tailscale/`、`logs/`、证书、密钥和运行缓存。 - 本次 H5 public base 临时切到 `https://m.tkmind.cn`。 - 后续公网 H5 不再依赖 105 转发链路;105 只保留 legacy/rollback 说明。 ## 远程开发机拉取方式 ```bash git clone https://git.tkmind.cn/tkmind/memind.git memind cd memind git fetch origin git switch memind-streaming-runtime-20260702 ``` 如果远程开发机已有仓库: ```bash cd /path/to/memind git fetch origin git switch memind-streaming-runtime-20260702 git pull --ff-only ``` ## 配置方式 从 `.env.example` 复制生成本机 `.env`,然后只在本机填入密钥和数据库连接: ```bash cp .env.example .env ``` 生产关键项: ```text H5_PUBLIC_BASE_URL=https://m.tkmind.cn VITE_MINDSPACE_BASE=https://m.tkmind.cn MEMIND_RUNTIME_REDIS_URL=redis://127.0.0.1:6379/0 MEMIND_RUNTIME_REDIS_NAMESPACE=memind:runtime ``` ## 本分支包含的改造 - StreamController v1: SSE headers、flush、abort propagation、backpressure-aware pipeline。 - Redis Runtime Router v1: session pointer、worker score、active stream、drain。 - Runtime status: `/api/runtime/status`。 - Gateway SSE 示例: `m.tkmind.cn` 对应的 nginx SSE 配置。 - H5 public base: `m.tkmind.cn`。 - 普通用户默认不暴露 Aider/OpenHands,显式白名单保留。 ## 验证命令 ```bash node --check server.mjs node --check scripts/wechat-mp-menu.mjs curl -sk https://m.tkmind.cn/api/status curl -sk https://m.tkmind.cn/api/runtime/status ``` ## 回滚思路 - 代码回滚: 切回 `origin/main` 对应提交 `4fc59729ee222734628dca001e172c127c84488f`。 - 配置回滚: 恢复生产主机 `/Users/john/Project/Memind/.env.bak-mm-domain-20260702-0633`。 - Worker drain 回滚: 删除 Redis drain key,例如 `DEL memind:runtime:worker:goosed-3:drain`。