Kevin
|
aa6df9eb55
|
docs: add TTS interrupt and read-aloud design plan
Made-with: Cursor
|
2026-03-26 14:32:30 +08:00 |
|
Kevin
|
a3f61fcc0f
|
feat(api+app): 对话阶段化、回忆录流水线与客户端会话体验
- DB: segments 用户输入文本(Alembic 0002)
- Chat: 阶段检测/阶段提示/回复限制,编排与访谈/画像 prompts 调整
- Memoir: 忠实度检查 agent,叙事与分类等链路更新
- Core: agent 日志、Alembic 启动、LangChain/日志/配置等
- Story: time_hints;Memory 检索与相关测试
- Expo: 助手头像、会话页与消息拆分、实时会话与文案/i18n
- Docs/scripts/tests: 迁移脚本、LLM JSON/记忆检索文档、新增单测
|
2026-03-26 12:13:36 +08:00 |
|
Kevin
|
49b089354c
|
Merge remote-tracking branch 'origin/development'
|
2026-03-25 17:40:16 +08:00 |
|
Kevin
|
805da8d789
|
replace with docker compose
|
2026-03-25 17:40:04 +08:00 |
|
Kevin
|
56c67871dd
|
feat/ move caddy out of container
|
2026-03-25 10:26:21 +08:00 |
|
Kevin
|
c3378015a7
|
fix production env
|
2026-03-23 14:59:45 +08:00 |
|
Kevin
|
62de478368
|
feat(app-expo): 聊天键盘与列表滚动改用 keyboard-controller,并收敛 Web 构建配置
聊天(conversation/[id])
- 根布局挂载 KeyboardProvider,会话页使用 react-native-keyboard-controller 的
KeyboardAvoidingView(padding + 仅文字模式 enabled),替代手写 keyboardLift 与
RN KeyboardAvoidingView 分端逻辑,改善 Android 键盘遮挡与布局一致性。
- 键盘:keyboardDidShow 后 scrollToEnd;iOS 用 keyboardWillShow 提前更新键盘可见状态;
收起使用 WillHide/DidHide;监听在 effect 中统一移除。
- 输入框高度:ChatInputBar 通过 onInputDisplayHeightChange 在 inputDisplayHeight 变化时
触发滚到底;保留底部容器 onLayout 以覆盖连接提示与整块高度变化。
配置与构建
- app.config:移除 web 块与 expo-sqlite Web 所需的 COEP/COOP headers;expo-router 插件
改为无参;Android 显式 softwareKeyboardLayoutMode: resize。
- metro.config:移除 wasm 资源与 COOP/COOP dev server
OC
|
2026-03-23 14:20:12 +08:00 |
|
Kevin
|
f58adb9670
|
修复环境变量,UI问题
|
2026-03-23 13:54:41 +08:00 |
|
Kevin
|
b9ecfd02a4
|
various fixes
|
2026-03-23 13:21:07 +08:00 |
|
Kevin
|
9c2e0329ca
|
chore/ update app name
|
2026-03-23 11:33:02 +08:00 |
|
Kevin
|
686de44d54
|
Merge remote-tracking branch 'origin/development'
|
2026-03-23 10:48:42 +08:00 |
|
Kevin
|
ac0bdba8ba
|
修改caddy为国内镜像
|
2026-03-23 10:48:28 +08:00 |
|
Kevin
|
1258f20df5
|
Merge remote-tracking branch 'origin/development'
|
2026-03-23 10:36:42 +08:00 |
|
Kevin
|
f8b3de6ff8
|
优化工作流,添加app-icon
|
2026-03-23 10:25:51 +08:00 |
|
Kevin
|
60e9486dc7
|
Merge remote-tracking branch 'origin/development'
|
2026-03-23 09:20:49 +08:00 |
|
Kevin
|
584fb9ffe9
|
deploy: use pgvector postgres mirror for prod and staging
|
2026-03-23 09:20:38 +08:00 |
|
Kevin
|
c500a9b51c
|
Merge remote-tracking branch 'origin/development'
|
2026-03-22 20:28:59 +08:00 |
|
Kevin
|
b6d9eab44d
|
deploy: use mainland-accessible postgres and redis mirrors
|
2026-03-22 20:27:16 +08:00 |
|
Kevin
|
9c0e2c4b6f
|
Merge remote-tracking branch 'origin/development'
|
2026-03-22 19:53:42 +08:00 |
|
Kevin
|
1b5b6ee36d
|
移除docker workflow里的手动sql 迁移
|
2026-03-22 19:53:23 +08:00 |
|
Kevin
|
aac8faf125
|
更新workflow
|
2026-03-22 19:22:34 +08:00 |
|
Kevin
|
80c8844436
|
更新workflow
|
2026-03-22 19:06:37 +08:00 |
|
Kevin
|
f81e5b7c94
|
chore/update .gitignore
|
2026-03-22 19:01:10 +08:00 |
|
Kevin
|
d8378bb326
|
chore/ 删除过期文档和skills
|
2026-03-22 18:17:43 +08:00 |
|
Kevin
|
786ebf8ae6
|
refactor(api,expo): 多智能体与会话收敛、回忆录兼容层移除、后端测试集大幅删减
- 对齐「多智能体收敛」与「回忆录 stories-first / markdown-first」方向:收紧运行时契约、
删除过渡兼容路径与双轨逻辑,并同步更新客户端与文档。
- Chat:以 ChatOrchestrator 为实时编排入口;删除独立 conversation_agent,精简 prompts。
- Memoir:删除 memory_agent;MemoirOrchestrator、classification / story_route 与 prompts 收敛到
prepare_batches + run_story_pipeline_for_category_batch 主链路。
- 将 agents 侧 processor 迁入 feature 层为 background_runner,并移除 features 下重复/过时
processor 封装。
- 新增 history_store,强化「conversation_messages 为 DB 真源、Redis 为缓存」模型。
- 调整 models、repo、service、session_history;精简 WS message_types,重构 pipeline 与 router。
- 移除章节占位、整章再生等旧路径;章节列表与封面逻辑要求 story 关联;收紧 cover 资格与
enqueue。
- helpers、repo、service、router、reading_segment_materialize、story_pipeline_sync、pdf_service
等按 canonical markdown / cover_asset_id 收缩;删除 memoir_images/provider 等冗余。
- tasks:memoir_tasks、chapter_cover_tasks 等大幅瘦身;story_image_tasks 等与当前图片任务对齐。
- core:config、logging、redis、task_tracker 小幅调整。
- auth / user / payment / quota:路由或服务侧删减过时接口或逻辑(如 payment router 行数减少)。
- pyproject.toml、development.sh、.env.example / .env.production、README 等同步说明或变量。
- Alembic 0001_initial_schema 微调(与当前 schema 叙事一致的小改动)。
- 回忆录:types / mappers / api、章节页与 memoir 页与后端契约对齐;markdown-renderer 调整。
- 语音:删除 voice/player,voice-segment-store 相应精简。
- api/tests:删除 conftest 及绝大部分既有测试文件(websocket_baseline、conversation、memoir
图片、PDF、SMS 等),属有意收缩/待按 backend-test-system 重建的信号。
- docs:新增多智能体收敛与移除兼容层计划摘要;更新 story-first 设计、backend-test-system、
multi-agent-refactor-plan、实施总结等。
BREAKING CHANGE: 后端对外契约、回忆录章节字段与若干路由/任务行为已变更;大量 API 测试被移除,
CI 若依赖这些用例需按新策略补测或调整流水线。
|
2026-03-22 18:10:28 +08:00 |
|
Kevin
|
70070216c4
|
修复一些已知问题
|
2026-03-20 17:25:42 +08:00 |
|
Kevin
|
8af37e5e8e
|
修复:CI 部署环境与 ref 错配、迁移碎片化、图片意图 source_span、章节物化脏版式、会话历史与本地语音不一致
新增:TTS 上传 COS 与分片、章节 reading_segments 物化与快照、markdown 清洗、会话消息 repository、语音 store 重构与相关测试
|
2026-03-20 16:43:02 +08:00 |
|
Kevin
|
7317bf10cd
|
fix/various fixes
|
2026-03-20 15:15:35 +08:00 |
|
Kevin
|
7f57f96c25
|
重构回忆录为 story-first / markdown-first 架构并整合图片意图与前端 UI 修复
本次 squash merge 将 codex-story-first-image-intent 的整体改动合入 development,核心内容包括:
1. 后端数据与迁移:新增 stories、story_versions、story_image_intents、chapter_cover_intents、assets 等模型与 Alembic 迁移,建立 story-first、markdown-first、asset-first 的主数据链路。
2. 生成与任务链:引入 StoryBuilderOrchestrator、ChapterComposerOrchestrator、story_image_tasks、chapter_cover_tasks,图片生成从正文占位符改为结构化 intent -> asset -> markdown 回填。
3. 并发与一致性:为 story/chapter intent 增加 claim_token、claimed_at、attempt_count,采用数据库原子 claim 为主、Redis 锁为辅,避免重复生成、锁误删和 processing 卡死。
4. Memoir 读写路径:章节 canonical_markdown 成为正文真源,列表/详情接口补齐 markdown、cover_asset、word_count 等字段,PDF 与 asset 解析链路同步升级。
5. Memory / Retrieval:扩展 transcript ingest、chunking、evidence 检索与 story 聚合基础设施,为后续 story-first RAG 与多 agent 编排提供底座。
6. App 端体验:章节页继续走 MarkdownRenderer 阅读链,同时吸收 fix3-19 的跨平台 UI glitch 修复;更新对话页、首页、文案资源与章节列表映射逻辑。
7. 测试与文档:补充 asset resolver、story image task、章节封面派发、markdown 映射等回归测试,并加入图片占位符退役设计文档。
|
2026-03-20 10:31:51 +08:00 |
|
Kevin
|
13e3124b85
|
docs: add story-first markdown-first design
|
2026-03-19 16:01:49 +08:00 |
|
Kevin
|
c6e07ce5ca
|
chore/ 删除无用文件
|
2026-03-19 14:36:40 +08:00 |
|
Kevin
|
2f60858c9c
|
Merge feat/multi-agent into development
- Resolved conflict in api/app/agents/memoir/prompts.py: kept archived_section for get_narrative_prompt compatibility
- Resolved conflict in api/app/tasks/memoir_tasks.py: use MemoirOrchestrator flow (feat/multi-agent)
- Multi-agent architecture: ChatOrchestrator, MemoirOrchestrator, ImagePromptOrchestrator
|
2026-03-19 14:23:27 +08:00 |
|
Kevin
|
7237b53b9b
|
feat/调整tts音色,调整封面图prompt,修复对话页输入框显示逻辑,待验证封面图生成功能
|
2026-03-19 14:14:52 +08:00 |
|
yangshilin
|
8dc47d200b
|
fix: 修复回忆录celery异常
|
2026-03-19 14:02:21 +08:00 |
|
yangshilin
|
4c75c6f4f4
|
feat: 引入deepseek结构化输出
|
2026-03-19 11:27:43 +08:00 |
|
yangshilin
|
f3629efec3
|
fix: 去除LLM直接生成图片占位符逻辑
|
2026-03-19 11:18:58 +08:00 |
|
Kevin
|
687f41df2e
|
chore(ui): 精简对话与回忆录页,移除冗余元素
- 移除对话/回忆录页顶部标题(与底部 Tab 重复)
- 移除回忆录卡片右上角状态图标
|
2026-03-19 11:03:30 +08:00 |
|
yangshilin
|
67fb5d2cb6
|
refactor: 进一步重构agents目录结构 符合多agent架构
|
2026-03-19 10:54:48 +08:00 |
|
Kevin
|
9a1d31c71f
|
feat: 章节软删除、对话左滑删除,移除已读状态
- 章节:详情页增加删除按钮,软删除(is_active=False),AI 不再修改但保留供参考
- 章节:get_chapter 增加 is_active 校验,已删除章节返回 404
- 章节:AI 生成时参考同类别已删除章节摘要
- 对话:左滑显示删除,调用 hard delete API,删除前二次确认
- 对话:根布局包裹 GestureHandlerRootView 以支持 Swipeable
- 对话:移除已读/未读状态展示及相关 i18n
|
2026-03-19 10:45:07 +08:00 |
|
yangshilin
|
c21cda3e78
|
feat: 生成图片提示词agent结构封装
|
2026-03-19 10:43:34 +08:00 |
|
yangshilin
|
4a1d6f0dcc
|
feat: 生成回忆录agent结构封装
|
2026-03-19 10:38:11 +08:00 |
|
yangshilin
|
b16bb2b96c
|
feat & refactor: 重构agents目录结构;AI回复模块agent结构封装
|
2026-03-19 10:36:55 +08:00 |
|
Kevin
|
1aa3d8593c
|
Merge origin/development: 整合 TTS(远端结构为主)+ memoir-cover,保留本地环境配置
Made-with: Cursor
|
2026-03-19 10:30:54 +08:00 |
|
yangshilin
|
b56fc859cc
|
docs: 多agent架构plan计划
|
2026-03-19 10:28:40 +08:00 |
|
Kevin
|
bcee000735
|
fix(conversation): 优化对话列表滚动与播放队列并发
- 使用 InteractionManager.runAfterInteractions 包裹 scrollToEnd,避免滚动卡顿
- 提取 flattenedData 变量,减少重复计算
- 输入框增加 minHeight:22,空内容时保持一行高度
- use-player: 用 isPlayNextInProgressRef 防止 playNext 并发执行
- hooks: 格式化 useEffect 依赖数组
|
2026-03-19 10:24:48 +08:00 |
|
Kevin
|
15512834d2
|
feat/ 添加app-expo三种环境切换,待测试 调整tts
|
2026-03-19 09:58:02 +08:00 |
|
Sully
|
b73370a9b5
|
feat/ memoir-cover (#16)
Co-authored-by: Kevin <kevin@brighteng.org>
|
2026-03-19 09:11:54 +08:00 |
|
Sully
|
92b7848c48
|
feat/tts (#15)
Co-authored-by: Kevin <kevin@brighteng.org>
|
2026-03-19 09:11:25 +08:00 |
|
Kevin
|
faf7607bf9
|
fix/ 补充打个招呼网络错误状态
|
2026-03-19 01:20:35 +08:00 |
|
Kevin
|
1d0f295169
|
fix/ 补充memoir页面的i18n
|
2026-03-19 01:17:28 +08:00 |
|