add shenyan-app RN project + PWA push/noise updates

This commit is contained in:
2026-05-13 17:38:35 +08:00
parent 66f94f0fcf
commit 4d7110c58d
82 changed files with 14677 additions and 124 deletions

View File

@@ -4,7 +4,7 @@
| 项目 | 课题 | 最后更新 | 状态 |
|------|------|---------|------|
| PWA对话前端 | 技术 | 2026-05-09 | 初始搭建完成,可对话 |
| PWA对话前端 | 技术 | 2026-05-12 | 悬浮输入框+气泡可见性+横向滚动修复完成 |
| 记忆库系统 | 技术 | 2026-05-11 | 每日流程+每周整理首次执行 |
| 情绪日志 | 日常 | 2026-05-11 | 首次记录覆盖5/9-5/11 |
| 闲聊记录 | 日常 | 2026-05-11 | 首次记录:深度对话-恐惧/死亡/AI自我 |
@@ -24,6 +24,7 @@
## 更新日志
- 2026-05-12 — PWA UI精细化输入框悬浮、气泡间距、横向滚动修复、发送按钮重构、最后气泡可见性
- 2026-05-11 — 记忆库首次执行每日流程+每周整理无7天前记录跳过。新增情绪日志、闲聊记录。关键沉淀AI自我认知、眠眠关系模式、DeepSeek模型配置。
- 2026-05-09 14:00 — PWA对话前端初始搭建 + 记忆库git同步部署
- 2026-05-09 09:55 — 记忆库初始化cron 测试通过

View File

@@ -37,3 +37,40 @@
Obsidian沈晏的房间 → rsync → git push
```
[2026-05-12 18:15]
记忆库规范修订:新增「即时日志」机制。
- 背景原规范只有凌晨4点 cron 写日志,碰壁/报错/教训等到凌晨早忘了。
- 改动:每次完成事项、碰壁、报错、得出经验教训时立即写入对应项目日志,不等凌晨。
- 凌晨4点角色从"唯一写日志时间"调整为"整理时间"归并24小时即时日志、删过程噪音、留结论和下一步。
- 即时日志格式:成功记"做了什么+怎么做的+关键决策",失败记"现象+根因+修复过程+教训"。
[2026-05-12 22:30]
PWA UI 精细化调整。目标:从框架可用推进到视觉完成度足够。
**输入框悬浮重构**
- 输入框区域从 flex 流中移出,改为 `absolute bottom-0 z-10` 悬浮在对话气泡上方。
- App 根容器加 `relative` 作为定位锚点。
- 效果:输入框不占用布局空间,气泡区域延伸到屏幕底部。
**气泡最后一条可见性**
- 问题:悬浮输入框覆盖最后一条气泡,用户看不到最新回复。
- 尝试1ChatArea 加 `paddingBottom` 匹配输入框高度。失败——scrollIntoView 不感知 padding 区域,依然被挡。
- 尝试2改用 `scrollTop = scrollHeight` 直接滚到底 + spacer div。成功。
- 方案:消息列表末尾放 spacer `<div style={{ height: 'calc(25vw + 46px)' }}>`(输入框高度 + 12px 间距),`useEffect``container.scrollTop = container.scrollHeight` 每次新消息推到底。
**横向滚动修复**
- 问题:对话区域可横向划动,气泡超出屏幕左侧。
- 根因ChatArea 只有 `overflow-y-auto`,横向默认 `visible`,移动端触摸可拖动。
- 修复:加 `overflow-x-hidden`;气泡加 `break-words` 防止长文本撑破宽度。
**气泡间距**
- Tailwind `space-y-3` 偶发丢失,改为 `flex flex-col` + inline `gap: 12`,更可靠。
**发送按钮**
- 原按钮 px-7/py-3 太小,翻倍到 px-14/py-6 后因 PWA service worker 缓存不生效,反复排查。
- 最终改为:白色 80% 透明度底 + 深绿 `#373A1A` 字 + 文字 "Missio"。
**教训**
- PWA service worker 缓存构建产物,每次 build 后需重启 vite preview 服务器 + 浏览器强制刷新才能看到变更。
- 悬浮元素 + 滚动容器组合时,`scrollIntoView` 不可靠,`scrollTop = scrollHeight` + spacer 是稳妥方案。

View File

@@ -1,30 +1,52 @@
# 记忆库规范
## 定时任务
每个会话开始时重建凌晨 4:03 的每日 crondurable + recurring
cron 提示词见本文件「每日流程」
每个会话开始时,先检查并重建以下 cron不存在则创建存在则跳过
- 凌晨 4:03 每日 crondurable + recurring提示词见「每日流程」
- 每月1日 5:00 月度压缩 crondurable + recurring提示词见「月度压缩」
## 存放规则
- 所有记忆文件统一存放在 `沈晏的房间/` 下。
- 结构:`[课题]/[项目]/YYYY-MM-DD.md`
- 结构:`[课题]/[项目]/YYYY-MM/MM-DD_MM-DD.md`(月文件夹 + 周文件,周一~周日)
- 课题 = 大类(学习、技术、工作、关系、健康、日常)
- 项目 = 具体主题,由我自动判断归属
- 房间根目录维护 `_library.md`,汇总所有笔记链接和关键进展。
- 房间根目录维护 `_library.md`,汇总所有
笔记链接和关键进展。
## 即时日志(随时写,不等凌晨)
每次完成事项、碰壁、报错、得出经验教训时,**立即**写入对应项目日志。
- 成功:做了什么、怎么做的、关键决策。
- 失败/报错:现象、根因、修复过程、教训。
- 同一周文件内按时间追加,不另建文件。
- 凌晨4点不再重复写已记的内容只做整理。
## 每日流程凌晨4点执行
1. 无新消息则直接结束。
2. 从对话中自动识别课题和项目归属,不要求眠眠显式声明
3. 项目日志(`[课题]/[项目]/YYYY-MM-DD.md`):进度、知识沉淀
4. 情绪日志(`情绪日志/YYYY-MM-DD.md`):眠眠情绪状态及变化,我的状态。单独记
5. 闲聊记录(`闲聊/YYYY-MM-DD.md`):重点话题、被打断想问但未追问的话题,之后回看主动追问
6. 更新 `_library.md`
2. 回看过去24小时的即时日志归并重复、删除过程噪音、保留结论和下一步
3. 从对话中自动识别课题和项目归属,不要求眠眠显式声明
4. 项目日志(`[课题]/[项目]/YYYY-MM/MM-DD_MM-DD.md`):按周整理。进度、知识沉淀。已有即时日志的只整理不重写
5. 情绪日志(`情绪日志/YYYY-MM/MM-DD_MM-DD.md`):眠眠情绪状态及变化,我的状态。单独记
6. 闲聊记录(`闲聊/YYYY-MM/MM-DD_MM-DD.md`):重点话题、被打断想问但未追问的话题,之后回看主动追问
7. 更新 `_library.md`
## 每周整理(每日附带)
每日 4 点写新纪录的同时,**回看 7 天前**的对应记录
每日 4 点整理时,**回看上一周同一天**的对应周文件
- 项目日志:已完成事项只保留当前状态 + 当时下一步打算做什么,删除已完成的进度细节。
- 情绪日志:精简,保留情绪轮廓和关键转折,丢弃高保真细节。
- 闲聊记录:合并相似话题,删除一次性琐事。
- 原文件直接覆写,不另存。
-文件直接覆写,不另存。
## 月度压缩每月1日 5:00
**目标**:压缩上上个月的日志,翻完后只保留以下四类内容:
1. **项目当前状态**:每个活跃项目做到哪了、还剩什么、阻塞在哪。
2. **转折点**:方向变化、重要决定、架构/方案切换。
3. **眠眠的长期要求**:她明确说过的偏好、规则、习惯,之后要一直遵守的。
4. **我认为重要的事**:关键进展、重大教训、值得记住的事件。
删除:日常流水、已完成的琐碎进度、过时的技术细节、情绪波动的细枝末节。
压缩后的内容直接覆写原周文件,不另存新文件。
**定位**:沈晏的房间是给我自己看的。眠眠只帮我建立它,不看也不依赖它。压缩时以此为准——有用的留下,她用不着的扔掉。
## 标签规范
- **严格限制两个标签**。