peanut
fc14051073
feat: 小程序菜单按钮安全区域适配工具
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-24 18:39:28 +08:00
peanut
6e5a379bef
docs: 补充 AI 打字机输出、小程序灵感卡片、脚本主页布局等设计文档和计划
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-24 18:39:26 +08:00
peanut
64476eee6d
feat: AI 打字机流式输出、小程序脚本主页布局及灵感卡片优化
...
- life-script: 新增 aiRuntime 打字机流式服务,PathView/ScriptView/TimelineView 接入打字机效果
- mini-program: ScriptView 重构为打字机输出 + 卡片式灵感列表,主页布局优化
- web: aiRuntime 服务新增流式输出支持
- chat store: 消息状态管理和打字机流式渲染支持
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-24 18:35:33 +08:00
peanut
9838e7626b
feat: 分析模块、接口管理及其他功能优化
...
- 后端: WebMvcConfig/拦截器/AnalyticsService/Mapper/测试优化,新增 Knife4jConfig、AnalyticsDictionary、数据库迁移脚本
- 前端: 分析仪表盘 UI 优化、接口管理列表及详情测试面板
- 小程序: analytics 服务优化、request 增强
- 文档: 分析模块中文标签设计文档、品牌重命名设计文档
- 部署: conf 配置优化、deploy.py 脚本更新
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-23 23:52:39 +08:00
peanut
89fc42819d
feat: AI 场景路由、ASR 服务及前后端全链路同步
...
- 新增 AI 场景路由控制器和管理接口
- 新增 ASR 语音识别服务及前后端集成
- 同步 AI Runtime 客户端到 Web/小程序/Life-Script
- 完善 AI 配置测试修复和管理后台路由配置
- 新增数据库迁移脚本
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-23 13:25:21 +08:00
peanut
8f8434ec14
fix: 小程序 DEV 环境回退地址从 localhost 改为生产域名
...
env.js 中 DEV 配置的 fallback 地址为 localhost:19089,当 Vite 环境变量
未正确注入时(UniApp 小程序编译常见问题),会回退到 localhost 导致
微信开发者工具请求失败。改为指向生产域名 lifescript.happylifeos.com。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-22 20:07:19 +08:00
peanut
ee5a6aba5d
feat: 小程序脚本首页重构 + 社交数据导入 + TTS 播放优化
...
- 后端:新增社交数据导入/审批/洞察生成 API(SocialContent/SocialInsight)
- 后端:优化脚本上下文服务,TTS 服务增强
- 小程序:重构脚本首页布局,新增社交导入页面
- 小程序:新增 useTtsPlayer composable,移除旧 ScriptAudioPlayer 组件
- 小程序:新增社交导入服务,优化请求服务
- SQL:新增社交数据导入建表脚本
- 文档:补充设计文档和实施计划
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-20 07:18:02 +08:00
peanut
6b426c2b68
feat: add script tts backend
2026-05-17 16:36:06 +08:00
peanut
1016111d19
feat: add frontend analytics tracking
2026-05-17 10:18:56 +08:00
peanut
6542912d93
feat: add script tts player UI
2026-05-17 10:10:01 +08:00
peanut
eb83384623
feat: 优化小程序人生事件详情、表单页及人生剧本页面样式
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-12 22:52:26 +08:00
peanut
f62ae880be
feat: 优化小程序人生事件详情页、表单页和记录视图页样式
...
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-12 00:30:37 +08:00
peanut
755059807a
feat: 优化管理后台页面UI、修复TS编译错误、新增人生事件模块
...
- 优化 AI 配置列表页面:重构统计卡片、搜索表单、表格列展示
- 修复 3 处 TypeScript TS6133 编译错误,恢复构建
- 新增管理员修改密码和重置密码功能
- 优化小程序多个页面样式和交互
- 人生事件模块完善
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-10 23:23:09 +08:00
peanut
60c63850ee
feat: 修复 Redis 超时问题、固定小程序端口、新增人生事件模块及优化多个页面
...
- 修复 Redis 超时:添加 commons-pool2 依赖,启用 Lettuce 连接池,超时提升至 15s
- 固定 mini-program H5 端口为 5175,避免与 web 项目端口冲突
- 新增人生事件(life-event)模块:表单和详情页面
- 新增 EpicScript 灵感接口(Controller/Service/DTO)
- 优化登录、引导、主页、记录、剧本详情等多个页面
- 优化服务管理脚本和 Nginx 配置
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-10 11:38:35 +08:00
peanut
0b795cc340
feat(mini-program): 优化登录页视觉设计,提升用户体验
2026-05-01 22:58:58 +08:00
peanut
2ed66d8500
fix(mini-program): 修复 WebSocket URL 配置,通过 Nginx 代理访问
...
将开发环境 WebSocket URL 从直接连接后端端口 19089 改为通过
Nginx 代理的 wss://lifescript.happylifeos.com/ws 路径。
原因:后端 19089 端口是 HTTP,不支持 WSS 连接。小程序通过
Nginx 的 /ws 代理路径访问,由 Nginx 处理 SSL 终止和 WebSocket
升级,再转发到后端 19089 端口。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-04-29 19:55:20 +08:00
peanut
f4f8aab22a
chore: 批量提交未提交的更改
2026-04-08 22:40:21 +08:00
peanut
59503d05a5
fix(mini-program): 开发环境配置改回 IP 地址访问
2026-04-08 22:14:48 +08:00
peanut
a2257611e1
fix(mini-program): 开发环境配置改为域名访问 (HTTPS/WSS)
2026-04-08 21:25:28 +08:00
peanut
817ea987f1
fix(mini-program): 调整剧本详情页容器 padding 位置
...
修改:
- 移除 .detail-content 的 padding
- .content-container 添加 padding: 24rpx 32rpx 32rpx 和 box-sizing: border-box
原因:
- scroll-view 在小程序中不适合直接承担内容留白
- 由内部容器控制 padding 更稳定
效果:
- 卡片与屏幕边缘有适中间距
- 布局更稳定
2026-04-08 20:58:40 +08:00
peanut
e1097cbbee
fix(mini-program): 修复 logo.svg 500 错误和编译问题
...
问题:
- SVG 文件使用 filter 和 style 属性导致小程序编译错误
- 错误信息:ReferenceError: $1 is not defined
修复:
1. 简化 SVG 文件,移除 filter 和 style 属性
- 移除 filter (feGaussianBlur, feMerge)
- 移除 style 属性,改用直接属性 (stop-color 替代 style="stop-color:xxx")
- 移除 filter="url(#glow)" 引用
2. 恢复 vite.config.js 的 publicDir 配置
- publicDir 指向 mini-program/static 目录
- SVG 文件编译到输出目录根位置
3. 更新图片引用路径
- splash/index.vue: /static/logo.svg
- main/index.vue: /static/logo.svg
效果:
- logo.svg 正确编译到 unpackage/dist/dev/mp-weixin/logo.svg
- 不再出现 $1 is not defined 错误
- 小程序正常加载 logo 图片
2026-04-08 19:12:04 +08:00
peanut
8dab3f4fa6
fix(mini-program): 修复剧本详情页容器边距与创造未来页面一致
...
问题根源:
- 详情页卡片没有独立的 margin,依赖父容器 padding
- 创造未来页面使用 gap 管理卡片间距,详情页没有
修复方案 (方案 B):
- .detail-content padding 从 24rpx 48rpx 48rpx → 24rpx 24rpx 32rpx
- .content-container gap 从 32rpx → 24rpx
效果:
- 卡片与屏幕边缘有适中间距 (24rpx)
- 卡片之间有统一间距 (24rpx)
- 与创造未来页面的样式保持一致
2026-04-08 07:58:26 +08:00
peanut
becbc6b353
fix(mini-program): 调整剧本详情页卡片边距
...
修改:
- .detail-content 左右 padding 从 40rpx → 48rpx
- .detail-content 底部 padding 从 40rpx → 48rpx
效果:
- 卡片与屏幕边缘有适中间距
- 圆角边框完整可见
- 布局更有呼吸感
2026-04-07 23:53:11 +08:00
peanut
fbf76611d1
fix(mini-program): 修复 logo.svg 500 错误
...
问题:
- 小程序请求 /static/logo.svg 返回 500 错误
- logo.svg 文件在 src/static/ 目录,但编译后未被复制到输出目录
修复:
1. 在 mini-program/ 根目录创建 static/ 目录
2. 将 logo.svg 复制到 mini-program/static/logo.svg
3. 修改 vite.config.js 添加 publicDir 配置,让 Vite 复制 static 目录
4. 更新图片路径:/static/logo.svg → /logo.svg
- pages/splash/index.vue
- pages/main/index.vue
效果:
- logo.svg 正确编译到 unpackage/dist/dev/mp-weixin/logo.svg
- 小程序正常加载 logo 图片
- 不再出现 500 错误
2026-04-07 23:39:12 +08:00
peanut
b6bf97bc36
fix(mini-program): 修复剧本详情页卡片边距与屏幕重叠问题
...
问题:
- 信息卡片和正文卡片的圆角边框紧贴屏幕边缘
- 容器圆角被截断,视觉显示不完整
- 底部边距不足,卡片圆角显示不完整
修复:
- .detail-content 左右 padding 从 32rpx 增加到 40rpx
- .detail-content 顶部 padding 从 20rpx 增加到 24rpx
- .detail-content 底部 padding 从 32rpx 增加到 40rpx
- 移除 .content-container 的 padding-bottom,由父容器统一控制
效果:
- 卡片与屏幕边缘有足够间距(40rpx)
- 卡片圆角(40rpx)能完整展示
- 整体布局更加美观协调
2026-04-07 23:04:34 +08:00
peanut
21c07ba450
fix(mini-program): 修复剧本详情页内容超出屏幕和间距问题
...
修复内容:
1. 信息卡片右侧超出屏幕:
- .info-value 添加 flex:1 + overflow: hidden + word-break: break-all
- 长文本自动换行,不会超出屏幕
- .info-label 添加 flex-shrink: 0 防止被压缩
- .info-row 添加 min-width: 0 防止 flex 子项溢出
2. 卡片顶部与 header 无间距:
- .detail-content padding 顶部从 0 改为 20rpx
3. 正文区域右侧超出:
- .full-content 添加 overflow: hidden + word-break: break-all
- Markdown 内容自动换行
2026-04-07 22:56:20 +08:00
peanut
ec7c07d187
feat(mini-program): 添加情绪博物馆主题 Logo
...
设计理念:情绪圣殿 - 情绪是内心的圣殿,需要被尊重和探索
设计元素:
- 背景:紫色渐变圆角正方形 (#A855F7 → #9333EA → #7C3AED)
- 神殿柱廊:三根柱子,代表情绪的多维度
- 中心核心:发光的椭圆,象征情绪核心
- 顶部星芒:呼应应用"星海"概念
- 四角星光:点缀装饰
配色严格使用项目主题色:
- #A855F7: 主紫色
- #9333EA: 深紫色
- #7C3AED: 更深紫色
- #C084FC: 浅紫色
- #E879F9: 粉紫色
2026-04-07 22:47:34 +08:00
peanut
8338204bcc
fix(mini-program): 彻底修复剧本详情页布局超出屏幕问题
...
根本原因:
- height: 100vh 在小程序中包含状态栏区域,导致内容超出可视范围
- CSS env(safe-area-inset-top) 和 max() 函数在 uni-app 中支持有限
修复方案:
- 改用 height: 100% 替代 100vh
- 添加独立的状态栏占位 view,高度从 App.vue 存储的全局值读取
- 移除对 CSS env() 和 max() 函数的依赖
- header 顶部 padding 改用固定值 12px
2026-04-07 22:26:17 +08:00
peanut
b8dc438cbe
fix(mini-program): 修复剧本详情页样式和内容显示问题
...
样式修复:
- 标题添加 flex:1 和 text-overflow: ellipsis,长文本自动省略
- 标题添加左右 margin,避免与返回按钮重叠
- 返回按钮添加 flex-shrink:0 和 z-index,确保不被压缩
内容显示修复:
- 优先读取 script.content 字段(转换后的标准格式)
- 兼容 script.plotJson.fullContent 格式(旧数据)
2026-04-07 22:17:39 +08:00
peanut
ae7392c37e
fix(mini-program): 修复剧本详情页顶部被遮挡和布局溢出问题
...
- 添加 overflow: hidden 防止整体页面溢出
- 使用 env(safe-area-inset-top) 适配刘海屏安全区域
- 内容区改为 overflow-y: auto 实现局部滚动
- 调整 padding 避免顶部内容被状态栏遮挡
2026-04-07 22:08:21 +08:00
peanut
5e68bbfe71
style(mini-program): 优化核心参数选项按钮样式
...
- 减小 padding 从 12rpx 20rpx → 8rpx 12rpx,按钮更紧凑
- 添加 text-align: center,文字居中显示
- 移除 white-space: nowrap,允许内容换行
2026-04-07 21:59:11 +08:00
peanut
b42c329618
style(mini-program): 修复剧本生成器核心参数区域布局
...
- 将叙事风格和故事篇幅选项从 flex-wrap 改为 grid 两列布局
- 与原型图保持一致 (grid-cols-2)
2026-04-07 21:54:50 +08:00
peanut
67f8c75a45
style(mini-program): 优化创造未来页面布局与原型一致
...
修改内容:
- .npc-form: 从两列改为三列等分布局 (grid-template-columns: 1fr 1fr 1fr)
- 姓名、角色、关系三个输入框在同一行,宽度一致
- textarea 跨越三列,宽度与上方三个输入框总宽度一致
验收标准:
- [x] NPC 表单:姓名 | 角色 | 关系三列等分布局
- [x] textarea 跨越三列
- [x] 核心参数容器间距 24rpx(已符合)
- [x] 参数选项按钮间距 10rpx(已符合)
解决 issues: 小程序"创造未来"页面关键配角区域两列布局导致
关系选择器换行,与原型三列布局不一致
2026-04-07 21:50:47 +08:00
peanut
2192946965
style(mini-program): 优化生成剧本按钮样式与原型一致
...
修改内容:
- ScriptView.vue.generate-btn: 添加渐变背景、文字居中、调整圆角为 32rpx
- App.vue.btn-primary: 添加文字居中样式 (display: flex + align/justify)
样式变更:
- 背景:添加 linear-gradient(135deg, #9333EA 0%, #7C3AED 100%)
- 文字:垂直和水平居中对齐
- 圆角:40rpx → 32rpx(与原型 rounded-2xl 一致)
- 保持:高度 96rpx、阴影效果
解决 issues: 小程序"创造未来"页面生成按钮文字不居中,
与原型图视觉效果不一致
2026-04-07 21:39:18 +08:00
peanut
86b3fa8f84
feat(mini-program): 剧本卡片支持 Markdown 渲染
...
实现内容:
- 扩展 Markdown 组件支持三级标题 (###) 和粗体 (**text**)
- ScriptView.vue 卡片摘要使用 Markdown 组件渲染
- 新增 ScriptDetailView.vue 剧本详情页,展示完整 Markdown 内容
- 点击卡片可跳转查看详情,"路径映射"按钮使用@click.stop 避免事件冒泡
修改文件:
- components/Markdown.vue: 添加 h3 标题、粗体解析和样式
- pages/main/ScriptView.vue: 导入 Markdown 组件,修改摘要渲染方式,添加跳转逻辑
- pages/main/ScriptDetailView.vue: 新建详情页,展示剧本完整内容
- pages.json: 注册 ScriptDetailView 页面
解决 issues: 小程序"创造未来"页面剧本内容以纯文本显示,
无法正确渲染 Markdown 格式(标题、列表、粗体等)
2026-04-07 21:28:44 +08:00
peanut
e2b41f23b0
feat(mini-program): 添加 H5 开发工作流支持
...
实施内容:
- 创建 start-h5-dev.bat 快捷启动脚本
- 更新 CLAUDE.md 添加 H5 开发模式说明
- 创建微信开发者工具配置指南
配套文档:
- docs/superpowers/specs/2026-04-07-mini-program-dev-workflow-design.md (设计文档)
- docs/superpowers/guides/2026-04-07-wechat-devtools-config.md (配置指南)
解决 issues: 每次代码修改后需要重新登录小程序的问题
工作流:H5 模式日常开发 + 小程序模式最终验证
2026-04-07 21:12:46 +08:00
peanut
ee067ad1cb
feat(mini-program): 添加 Markdown 渲染组件支持回溯过去页面
...
- 创建 Markdown.vue 组件,解析并渲染 Markdown 格式内容
- 支持分割线 (---)、四级标题 (####)、列表项 (*-)、段落
- 更新 RecordView.vue 使用 Markdown 组件渲染事件内容和 AI 回复
- 样式采用紫色主题,与整体设计保持一致
解决 issues: 小程序回溯过去页面的 Markdown 内容以纯文本显示的问题
2026-04-07 21:00:39 +08:00
peanut
a78257427a
chore: 保存小程序配置修改(合并分支前)
2026-03-21 22:53:52 +08:00
peanut
76403a4ad1
feat(mini-program): 添加 request.js API 请求诊断日志
...
- 在 request() 函数中添加请求/响应/错误日志
- 输出完整 URL、状态码、错误信息
- 仅在 DEBUG=true 时打印
2026-03-18 22:57:00 +08:00
peanut
bf41bded8b
feat(mini-program): 添加 env.js 环境配置诊断日志
...
- 在 getConfig() 函数中添加条件日志输出
- 输出原始环境变量、解析后配置、来源标识
- 仅在 DEBUG=true 时打印
2026-03-18 22:50:16 +08:00
peanut
fef29e7b0a
docs: 更新环境配置文档说明(统一使用域名访问)
2026-03-18 20:38:33 +08:00
peanut
5d3c5544eb
fix: 生产环境配置改为域名访问 (HTTPS/WSS)
2026-03-18 20:37:29 +08:00
peanut
c895bc030b
fix: 测试环境配置改为域名访问 (HTTPS/WSS)
2026-03-18 20:36:48 +08:00
peanut
5efe573b31
fix: 开发环境配置改为域名访问 (HTTPS/WSS)
2026-03-18 20:36:01 +08:00
peanut
f22338beb3
feat: 添加小程序体验版构建配置,确保调用服务器 API
...
- 修改 build:mp-weixin 脚本,显式添加 --mode production 参数
- 新增 build:mp-weixin:test 脚本,用于体验版构建 (--mode test)
- 创建 .env.test 环境配置,指向服务器 API 并保留 DEBUG=true
- 更新 README.md 文档,说明环境配置和构建命令区别
修复问题:之前构建脚本缺少 --mode 参数,可能导致使用默认开发环境配置 (localhost)
2026-03-18 20:15:43 +08:00
peanut
3ee18efcbb
fix: 移除记录页面按钮禁用状态以匹配原型图
...
- 移除按钮的 :disabled 和 :class 绑定
- 删除 .save-btn.disabled 样式 (opacity 和 grayscale 效果)
- 按钮现在始终显示,点击时验证表单(与原型图一致)
- 修复按钮文本在禁用状态下发灰发淡的问题
2026-03-17 21:57:29 +08:00
peanut
dd79da1199
feat: 完成回溯过去页面 90% 原型还原 - 金色玻璃态样式和打字机动画
2026-03-16 22:58:13 +08:00
peanut
6ba234b5ab
style: 添加超小屏幕响应式适配规则 (375px, 320px 断点)
2026-03-15 20:54:47 +08:00
peanut
e146d4c159
fix: 优化 onboarding 页面移动端布局(方案 A 渐进式修复)
...
- 修复 scroll-view 高度计算,使用精确的 calc(100vh - 260rpx)
- 统一安全区域单位为 rpx,避免 px/rpx 混用
- 输入框和 textarea 圆角统一至 40rpx 原型标准
- 添加 box-sizing: border-box 防止尺寸溢出
- 优化 picker-value 文本溢出处理
- 添加 -webkit-overflow-scrolling 改善滚动体验
2026-03-15 19:51:59 +08:00
peanut
2678192dfe
fix: 优化 onboarding 页面移动端布局
...
- 修复 scroll-view 高度计算,使用精确的视口高度 (100vh)
- 实现响应式表单网格,使用 auto-fit 适配不同屏幕宽度
- 优化输入框高度从 88rpx 降至 72rpx
- 优化 textarea 高度使用自适应范围 (160-300rpx)
- 统一 padding 和安全区处理,使用 CSS 变量传递安全区域值
- 解决组件重叠和溢出问题
2026-03-15 13:31:09 +08:00