auto backup 2026-05-29 08:10:01

This commit is contained in:
--git_token 2026-05-29 08:10:01 +08:00
parent bcb25d62e4
commit a933482462
12 changed files with 509 additions and 12 deletions

View File

@ -12,6 +12,6 @@ vala_git_workspace_backup.vala 4cf352bec88fe84af065ba1ffcbb06647b77df0e01860faaf
user-feedback-collector c0320451bf7ea0ce3d8ceaa603ae0a7b55c373c048363a5142258a4c23f45e81 user-feedback-collector c0320451bf7ea0ce3d8ceaa603ae0a7b55c373c048363a5142258a4c23f45e81
user-feedback-data-source a95eb9142f3019fd193c46f89147dc7e0bf01dfe250202565a86f8bc52f37b13 user-feedback-data-source a95eb9142f3019fd193c46f89147dc7e0bf01dfe250202565a86f8bc52f37b13
user-feedback-processor 61783a8e9f03a973c187b359a87749ad1993dc71f8364b0a853d8b3ff64c75e8 user-feedback-processor 61783a8e9f03a973c187b359a87749ad1993dc71f8364b0a853d8b3ff64c75e8
feishu-feedback-sync 9c9ca1f0c42a289e037289cd394299b7debf7e240d3b30429899da42b601d953
feishu-group-msg-sync 953534cc3d1cf4489060afe1cf10cad75faedd3f2d699ffa7478d178d528dc51 feishu-group-msg-sync 953534cc3d1cf4489060afe1cf10cad75faedd3f2d699ffa7478d178d528dc51
tencent-cos-upload 2505dbc8c7acdaf95f2228598ae12010e09599a25df4319587c4a3109d828053 tencent-cos-upload 2505dbc8c7acdaf95f2228598ae12010e09599a25df4319587c4a3109d828053
feishu-feedback-sync 066a9fd4da5ddb9dd2d4dc27412e593787747d87a6b4183e39354fd3f6443b4b

View File

@ -1 +1 @@
1772 1777

View File

@ -23,3 +23,4 @@
{"type":"memory.recall.recorded","timestamp":"2026-05-26T03:40:24.708Z","query":"小葵小葵群 chat_id 分发消息群","resultCount":1,"results":[{"path":"memory/2026-04-18.md","startLine":1,"endLine":5,"score":1}]} {"type":"memory.recall.recorded","timestamp":"2026-05-26T03:40:24.708Z","query":"小葵小葵群 chat_id 分发消息群","resultCount":1,"results":[{"path":"memory/2026-04-18.md","startLine":1,"endLine":5,"score":1}]}
{"type":"memory.recall.recorded","timestamp":"2026-05-27T02:15:55.251Z","query":"小葵小葵群 chat_id 反馈同步","resultCount":1,"results":[{"path":"memory/2026-04-18.md","startLine":1,"endLine":5,"score":1}]} {"type":"memory.recall.recorded","timestamp":"2026-05-27T02:15:55.251Z","query":"小葵小葵群 chat_id 反馈同步","resultCount":1,"results":[{"path":"memory/2026-04-18.md","startLine":1,"endLine":5,"score":1}]}
{"type":"memory.recall.recorded","timestamp":"2026-05-27T02:50:23.510Z","query":"pycache python 缓存 导入错误","resultCount":3,"results":[{"path":"memory/2026-05-27.md","startLine":22,"endLine":32,"score":1},{"path":"memory/2026-05-27.md","startLine":1,"endLine":27,"score":1},{"path":"memory/2026-04-10.md","startLine":20,"endLine":52,"score":1}]} {"type":"memory.recall.recorded","timestamp":"2026-05-27T02:50:23.510Z","query":"pycache python 缓存 导入错误","resultCount":3,"results":[{"path":"memory/2026-05-27.md","startLine":22,"endLine":32,"score":1},{"path":"memory/2026-05-27.md","startLine":1,"endLine":27,"score":1},{"path":"memory/2026-04-10.md","startLine":20,"endLine":52,"score":1}]}
{"type":"memory.recall.recorded","timestamp":"2026-05-28T02:10:48.034Z","query":"小葵小葵群 反馈发送 分发 chat_id","resultCount":1,"results":[{"path":"memory/2026-04-18.md","startLine":1,"endLine":5,"score":1}]}

View File

@ -1,6 +1,6 @@
{ {
"version": 1, "version": 1,
"updatedAt": "2026-05-27T02:50:23.510Z", "updatedAt": "2026-05-28T02:10:48.034Z",
"entries": { "entries": {
"memory:memory/2026-04-18.md:1:5": { "memory:memory/2026-04-18.md:1:5": {
"key": "memory:memory/2026-04-18.md:1:5", "key": "memory:memory/2026-04-18.md:1:5",
@ -9,13 +9,13 @@
"endLine": 5, "endLine": 5,
"source": "memory", "source": "memory",
"snippet": "# 2026-04-18 工作日志 ## 术语共识 [李若松确认] 术语「飞书反馈消息数据库」默认指代用户反馈收集技能中的飞书内部测试反馈MySQL数据表 `vala_test.lark_group_message`存储「内容测试问题反馈」群oc_fabff7672e62a9ced7b326ee4a286c26的同步消息数据。", "snippet": "# 2026-04-18 工作日志 ## 术语共识 [李若松确认] 术语「飞书反馈消息数据库」默认指代用户反馈收集技能中的飞书内部测试反馈MySQL数据表 `vala_test.lark_group_message`存储「内容测试问题反馈」群oc_fabff7672e62a9ced7b326ee4a286c26的同步消息数据。",
"recallCount": 8, "recallCount": 9,
"dailyCount": 0, "dailyCount": 0,
"groundedCount": 0, "groundedCount": 0,
"totalScore": 8, "totalScore": 9,
"maxScore": 1, "maxScore": 1,
"firstRecalledAt": "2026-04-30T03:47:21.989Z", "firstRecalledAt": "2026-04-30T03:47:21.989Z",
"lastRecalledAt": "2026-05-27T02:15:55.251Z", "lastRecalledAt": "2026-05-28T02:10:48.034Z",
"queryHashes": [ "queryHashes": [
"353f9765c086", "353f9765c086",
"a6b740c99377", "a6b740c99377",
@ -24,7 +24,8 @@
"42fe8210f22c", "42fe8210f22c",
"81f7a2647922", "81f7a2647922",
"261597c52d5b", "261597c52d5b",
"3fe44d618bf6" "3fe44d618bf6",
"06538386c796"
], ],
"recallDays": [ "recallDays": [
"2026-04-30", "2026-04-30",
@ -32,7 +33,8 @@
"2026-05-07", "2026-05-07",
"2026-05-25", "2026-05-25",
"2026-05-26", "2026-05-26",
"2026-05-27" "2026-05-27",
"2026-05-28"
], ],
"conceptTags": [ "conceptTags": [
"vala-test.lark-group-message", "vala-test.lark-group-message",

View File

@ -0,0 +1,41 @@
{
"date": "2026-05-27",
"descriptions": [
{
"index": 1,
"description": "用户完成课相关人员无法解锁下一节课,即使重复学习也无法解决。"
},
{
"index": 2,
"description": "【频繁】在移动端,[聊天记录] 学堂助理软软和静沐暖扬 静沐暖扬: 软软老师我自己试用了这个app体验感不好不知反应慢等"
},
{
"index": 3,
"description": "无明确问题"
},
{
"index": 4,
"description": "游戏内英相关人员频不发声"
},
{
"index": 5,
"description": "在APP上课过相关人员出现网络加载音频丢失退出重进后选择继续上次内容时完全没有声音重新开始也可能无效且需重复多次。"
},
{
"index": 6,
"description": "有用户在学习过相关人员几乎每天都会遇到音频播放异相关人员题,已提供设备信息及问题录屏合集。"
},
{
"index": 7,
"description": "课相关人员成后显示已通过,但返回后状态仍显示未完成(感叹号),导致下一课无法解锁。"
},
{
"index": 8,
"description": "课相关人员习平台中,用户完成课相关人员状态显示为未完成(感叹号),需重新学习才能解锁下一节课。"
},
{
"index": 9,
"description": "在设备调试环节相关人员询问设备能否成功下载APP用相关人员课。"
}
]
}

View File

@ -0,0 +1,209 @@
{
"date": "2026-05-27",
"descriptions": [
{
"index": 1,
"description": "无明确问题"
},
{
"index": 2,
"description": "无明确问题"
},
{
"index": 3,
"description": "无明确问题"
},
{
"index": 4,
"description": "L1 unit6-2《秘密惊喜》课相关人员容没有图片用户退出重进后仍未恢复。"
},
{
"index": 5,
"description": "在移动端,大概率也是网络不好下载不了 ↳ 回复 相关人员: 英相关人员频不发声了"
},
{
"index": 6,
"description": "无明确问题"
},
{
"index": 7,
"description": "APP上课过相关人员出现音频丢失导致无声音重新进入或重开课相关人员题仍可能复现。"
},
{
"index": 8,
"description": "用户在课相关人员习过相关人员频繁出现音频异常,导致无法正相关人员成学习并需重学。"
},
{
"index": 9,
"description": "用户在移动端使用App时遇到操作反应慢、体验不佳的问题。"
},
{
"index": 10,
"description": "无明确问题"
},
{
"index": 11,
"description": "无明确问题"
},
{
"index": 12,
"description": "在应用商店中搜索不到APP。"
},
{
"index": 13,
"description": "无明确问题"
},
{
"index": 14,
"description": "无明确问题"
},
{
"index": 15,
"description": "无明确问题"
},
{
"index": 16,
"description": "无明确问题"
},
{
"index": 17,
"description": "无明确问题"
},
{
"index": 18,
"description": "无明确问题"
},
{
"index": 19,
"description": "用户在学习课相关人员反复停留在第一课,无法进入下一课。"
},
{
"index": 20,
"description": "课相关人员习中反复停留在第一节课,后续课相关人员法解锁。"
},
{
"index": 21,
"description": "无明确问题"
},
{
"index": 22,
"description": "无明确问题"
},
{
"index": 23,
"description": "无明确问题"
},
{
"index": 24,
"description": "无明确问题"
},
{
"index": 25,
"description": "重新登录后相关内容仍未解锁的问题"
},
{
"index": 26,
"description": "无明确问题"
},
{
"index": 27,
"description": "无明确问题"
},
{
"index": 28,
"description": "重新登录后0-2关卡仍显示为锁定状态。"
},
{
"index": 29,
"description": "无明确问题"
},
{
"index": 30,
"description": "无明确问题"
},
{
"index": 31,
"description": "相关功能仍未解锁"
},
{
"index": 32,
"description": "无明确问题"
},
{
"index": 33,
"description": "绘本阅读课《美食机器人》完成时显示通关,但返回后无法解锁下一章节,需重复学习。"
},
{
"index": 34,
"description": "用户上完课相关人员界面仍显示未完成状态(感叹号),需重新上课才能解锁下一节课。"
},
{
"index": 35,
"description": "在客户端进行第六单元听力挑战时,题目选项未显示,导致用户无法完成关卡并解锁下一节课。"
},
{
"index": 36,
"description": "用户在华为应用市场和应用宝内均搜索不到该应用的下载入口"
},
{
"index": 37,
"description": "无明确问题"
},
{
"index": 38,
"description": "无明确问题"
},
{
"index": 39,
"description": "无明确问题"
},
{
"index": 40,
"description": "无明确问题"
},
{
"index": 41,
"description": "无明确问题"
},
{
"index": 42,
"description": "无明确问题"
},
{
"index": 43,
"description": "正在确认游戏在纯血鸿蒙系统上是否存在兼容性问题。"
},
{
"index": 44,
"description": "无明确问题"
},
{
"index": 45,
"description": "无明确问题"
},
{
"index": 46,
"description": "用户端在纯模式下无法上课,需更换设备。"
},
{
"index": 47,
"description": "无明确问题"
},
{
"index": 48,
"description": "相关人员询问设备能否调试成功并下载app听课。"
},
{
"index": 49,
"description": "安卓端是否设定了最低版本"
},
{
"index": 50,
"description": "无明确问题"
},
{
"index": 51,
"description": "无明确问题"
}
]
}

View File

@ -0,0 +1,213 @@
{
"date": "2026-05-27",
"total_clusters": 9,
"clusters": [
{
"index": 1,
"cluster_id": "5689688935179088396",
"location": {
"端": "未知",
"环节": "听力挑战",
"课程": "",
"角色/组件": "UI"
},
"priority": "P0",
"priority_detail": "",
"category": "启动/运行异常",
"conclusion": "**当前问题排查结论:** 暂无结论排查中",
"messages": [
{
"sender": "嘿哈",
"content": "不能解锁的问题,各位老师如果遇到特别着急的家长可以让用户重新再玩一下,如果不着急的话,服务端正在修复数据,晚一点重新进一下就好了。",
"msg_type": "text",
"media_url": "",
"time": "2026-05-27 19:35:15"
}
]
},
{
"index": 2,
"cluster_id": "6989476639343962898",
"location": {
"端": "未知",
"环节": "未知",
"课程": "",
"角色/组件": ""
},
"priority": "P1",
"priority_detail": "",
"category": "关卡/内容类",
"conclusion": "**当前问题排查结论:** 暂无结论排查中",
"messages": [
{
"sender": "瓦拉英语-花花班班早10晚7-周末休息)",
"content": "[聊天记录] 静沐暖扬和瓦拉英语-花花班主任早10晚7\n静沐暖扬: [视频]\n静沐暖扬: [视频]",
"msg_type": "link",
"media_url": "",
"time": "2026-05-27 14:04:39"
}
]
},
{
"index": 3,
"cluster_id": "2723326983638239209",
"location": {
"端": "未知",
"环节": "未知",
"课程": "",
"角色/组件": ""
},
"priority": "P2",
"priority_detail": "",
"category": "其他问题",
"conclusion": "**当前问题排查结论:** 暂无结论排查中",
"messages": [
{
"sender": "瓦拉英语-萌萌老师早10晚7",
"content": "@莎莎是个男老师好的\n ↳ 回复 莎莎是个男老师: @瓦拉英语-萌萌老师早10晚7看起来是配置问题我等下到了公司看下",
"msg_type": "link",
"media_url": "",
"time": "2026-05-27 09:20:15"
}
]
},
{
"index": 4,
"cluster_id": "9132806750199402624",
"location": {
"端": "移动端",
"环节": "未知",
"课程": "",
"角色/组件": "音频、组件、网络"
},
"priority": "P2",
"priority_detail": "",
"category": "声音/音频类",
"conclusion": "**当前问题排查结论:** 暂无结论排查中",
"messages": [
{
"sender": "王欢",
"content": "@.oO(王_计)Oo.",
"msg_type": "text",
"media_url": "",
"time": "2026-05-27 12:47:40"
}
]
},
{
"index": 5,
"cluster_id": "7718570567683413173",
"location": {
"端": "移动端",
"环节": "关卡内",
"课程": "",
"角色/组件": "音频、网络"
},
"priority": "P1",
"priority_detail": "",
"category": "声音/音频类",
"conclusion": "**当前问题排查结论:** 暂无结论排查中",
"messages": [
{
"sender": "王欢",
"content": "[聊天记录] 群聊的聊天记录\n王欢: 家长您好,已经查到了,问题是网络加载过程中音频丢失了,您试试 APP 大退一下,重新登录并加载就可以了\nyanping: 几乎每次上课都会这样 实在太影响体验感了 。退出重进 如果选继续上次内容 就完全没有一点声音,只得重新开始,有时重新开始也不一定好,要重复很多次,很费时间。 有更好的解决办法吗",
"msg_type": "link",
"media_url": "",
"time": "2026-05-27 12:52:12"
}
]
},
{
"index": 6,
"cluster_id": "8549517841086446939",
"location": {
"端": "移动端",
"环节": "未知",
"课程": "",
"角色/组件": "音频"
},
"priority": "P2",
"priority_detail": "",
"category": "声音/音频类",
"conclusion": "**当前问题排查结论:** 暂无结论排查中",
"messages": [
{
"sender": "王欢",
"content": "问题录屏合集",
"msg_type": "text",
"media_url": "",
"time": "2026-05-27 13:11:49"
}
]
},
{
"index": 7,
"cluster_id": "380363450969345795",
"location": {
"端": "未知",
"环节": "未知",
"课程": "",
"角色/组件": "UI"
},
"priority": "P2",
"priority_detail": "",
"category": "UI显示类",
"conclusion": "**当前问题排查结论:** 暂无结论排查中",
"messages": [
{
"sender": "瓦拉英语-茉茉老师早10晚7",
"content": "这节课重复做了好几遍了,做的时候显示通关出来之后就不能进入下一节课",
"msg_type": "text",
"media_url": "",
"time": "2026-05-27 19:09:53"
}
]
},
{
"index": 8,
"cluster_id": "5136939664432261180",
"location": {
"端": "未知",
"环节": "未知",
"课程": "",
"角色/组件": ""
},
"priority": "P1",
"priority_detail": "",
"category": "其他问题",
"conclusion": "**当前问题排查结论:** 暂无结论排查中",
"messages": [
{
"sender": "梁音",
"content": "收到🫡",
"msg_type": "text",
"media_url": "",
"time": "2026-05-27 19:10:29"
}
]
},
{
"index": 9,
"cluster_id": "3081277245335302491",
"location": {
"端": "未知",
"环节": "未知",
"课程": "",
"角色/组件": ""
},
"priority": "P2",
"priority_detail": "",
"category": "其他问题",
"conclusion": "**当前问题排查结论:** 暂无结论排查中",
"messages": [
{
"sender": "嘿哈",
"content": "让它扫码试试吧\n ↳ 回复 瓦拉英语-益达老师: 老师们请问这个设备有望调试成功下载app听课吗",
"msg_type": "link",
"media_url": "",
"time": "2026-05-27 20:49:22"
}
]
}
]
}

View File

@ -1562,10 +1562,37 @@ def main():
rows = query_messages(target_date, next_day) rows = query_messages(target_date, next_day)
day_msgs = [r for r in rows if r[6][:10] == target_date] day_msgs = [r for r in rows if r[6][:10] == target_date]
if not day_msgs: if not day_msgs:
print(f"{target_date} 无数据") # 数据库无数据,尝试从 cluster_context JSON 重建
sys.exit(1) workspace_root = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))))
ctx_path = os.path.join(workspace_root, "output", "daily_feedback", f"cluster_context_{target_date}.json")
sorted_msgs, clusters, cluster_order = sort_threads(day_msgs) if not os.path.exists(ctx_path):
print(f"{target_date} 无数据,且上下文文件不存在")
sys.exit(1)
print(f" 📝 数据库无数据,从上下文文件重建: {ctx_path}")
with open(ctx_path, "r", encoding="utf-8") as cf:
ctx = json.load(cf)
clusters = {}
cluster_order = []
for c in ctx["clusters"]:
cid = c["cluster_id"]
msgs = []
for m in c["messages"]:
msgs.append((
m.get("message_id", cid),
m["sender"],
m.get("msg_type", "text"),
m["content"],
"",
m.get("quote_message_id", ""),
m.get("time", ""),
0,
))
if cid not in clusters:
clusters[cid] = []
cluster_order.append(cid)
clusters[cid].extend(msgs)
else:
_, clusters, cluster_order = sort_threads(day_msgs)
summary_md, has_content, _ = generate_summary(clusters, cluster_order, ai_placeholders=True) summary_md, has_content, _ = generate_summary(clusters, cluster_order, ai_placeholders=True)
# 替换占位符 # 替换占位符
@ -1579,6 +1606,10 @@ def main():
# 获取文档并覆盖写入(通过文件避免 shell 转义问题) # 获取文档并覆盖写入(通过文件避免 shell 转义问题)
title = f"飞书-{target_date} 用户反馈问题归纳" title = f"飞书-{target_date} 用户反馈问题归纳"
nodes = list_child_nodes() nodes = list_child_nodes()
if title not in nodes:
print(f" 📝 创建新文档: {title}")
update_summary_doc_as_children({target_date: summary_md}, title_prefix="飞书-")
nodes = list_child_nodes()
if title not in nodes: if title not in nodes:
print(f"❌ 未找到文档: {title}") print(f"❌ 未找到文档: {title}")
sys.exit(1) sys.exit(1)