update at 2025-10-16 11:17:45
This commit is contained in:
1357
restructure.md
Normal file
1357
restructure.md
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,64 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# 测试 JSON 生成逻辑
|
|
||||||
|
|
||||||
echo "🧪 测试 Release JSON 生成"
|
|
||||||
echo "================================"
|
|
||||||
|
|
||||||
# 模拟提取的内容
|
|
||||||
VERSION="v1.0.3"
|
|
||||||
RELEASE_TITLE="重大功能:停止生成 & UI 优化"
|
|
||||||
TAG_MESSAGE="发布时间: 2025-10-15
|
|
||||||
|
|
||||||
### 🎯 重大功能:停止生成 & UI 优化
|
|
||||||
|
|
||||||
本版本实现了完整的停止生成功能。
|
|
||||||
|
|
||||||
#### ✨ 核心功能
|
|
||||||
|
|
||||||
**⏸️ 智能停止生成**
|
|
||||||
- 点击停止按钮立即中断 AI 回复
|
|
||||||
- 保留已生成的内容"
|
|
||||||
|
|
||||||
echo "📝 版本号: $VERSION"
|
|
||||||
echo "📌 标题: $RELEASE_TITLE"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 方法1:使用 jq -R -s(会导致 \n 转义)
|
|
||||||
echo "❌ 方法1 (有问题的):"
|
|
||||||
JSON_BAD=$(echo "$TAG_MESSAGE" | jq -R -s -c \
|
|
||||||
--arg version "$VERSION" \
|
|
||||||
--arg title "$VERSION - $RELEASE_TITLE" \
|
|
||||||
'{
|
|
||||||
tag_name: $version,
|
|
||||||
name: $title,
|
|
||||||
body: .,
|
|
||||||
draft: false,
|
|
||||||
prerelease: false
|
|
||||||
}')
|
|
||||||
echo "$JSON_BAD" | jq -r '.body' | head -n 5
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 方法2:使用 --arg(正确的)
|
|
||||||
echo "✅ 方法2 (正确的):"
|
|
||||||
JSON_GOOD=$(jq -n -c \
|
|
||||||
--arg version "$VERSION" \
|
|
||||||
--arg title "$VERSION - $RELEASE_TITLE" \
|
|
||||||
--arg body "$TAG_MESSAGE" \
|
|
||||||
'{
|
|
||||||
tag_name: $version,
|
|
||||||
name: $title,
|
|
||||||
body: $body,
|
|
||||||
draft: false,
|
|
||||||
prerelease: false
|
|
||||||
}')
|
|
||||||
echo "$JSON_GOOD" | jq -r '.body' | head -n 5
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
echo "🔍 比较:"
|
|
||||||
echo "方法1 body 长度: $(echo "$JSON_BAD" | jq -r '.body' | wc -c)"
|
|
||||||
echo "方法2 body 长度: $(echo "$JSON_GOOD" | jq -r '.body' | wc -c)"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
echo "📋 完整的 JSON (方法2):"
|
|
||||||
echo "$JSON_GOOD" | jq '.'
|
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# 测试脚本:验证从 release.md 中提取版本信息
|
|
||||||
|
|
||||||
echo "🧪 测试版本信息提取逻辑"
|
|
||||||
echo "================================"
|
|
||||||
|
|
||||||
if [ ! -f release.md ]; then
|
|
||||||
echo "❌ 未找到 release.md"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 提取最后一个版本号(去掉 ## 和空格)
|
|
||||||
VERSION=$(grep "^## v" release.md | tail -n 1 | sed 's/^## *//')
|
|
||||||
|
|
||||||
if [ -z "$VERSION" ]; then
|
|
||||||
echo "❌ release.md 中未找到版本号"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "📝 提取的版本号: $VERSION"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 提取该版本块的内容(从版本标题下一行到下一个版本或文件结尾)
|
|
||||||
TAG_MESSAGE=$(awk "
|
|
||||||
/^## $VERSION\$/ { flag=1; next }
|
|
||||||
/^## v[0-9]/ && flag { exit }
|
|
||||||
flag { print }
|
|
||||||
" release.md)
|
|
||||||
|
|
||||||
echo "📄 提取的内容长度: $(echo "$TAG_MESSAGE" | wc -l) 行"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
# 提取标题
|
|
||||||
RELEASE_TITLE=$(echo "$TAG_MESSAGE" | grep -m 1 "^###" | sed 's/^### *//' | sed 's/^[🎯✨🔧🐛📦]* *//')
|
|
||||||
|
|
||||||
if [ -z "$RELEASE_TITLE" ]; then
|
|
||||||
RELEASE_TITLE=$(echo "$TAG_MESSAGE" | grep -v "^$" | grep -v "^发布时间:" | head -n 1)
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$RELEASE_TITLE" ]; then
|
|
||||||
RELEASE_TITLE="Release $VERSION"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "📌 提取的标题: $RELEASE_TITLE"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
echo "📄 完整内容预览(前20行):"
|
|
||||||
echo "--------------------------------"
|
|
||||||
echo "$TAG_MESSAGE" | head -n 20
|
|
||||||
echo "--------------------------------"
|
|
||||||
echo ""
|
|
||||||
|
|
||||||
echo "✅ 测试完成"
|
|
||||||
echo ""
|
|
||||||
echo "🔍 提取结果总结:"
|
|
||||||
echo " 版本号: $VERSION"
|
|
||||||
echo " 标题: $RELEASE_TITLE"
|
|
||||||
echo " 内容行数: $(echo "$TAG_MESSAGE" | wc -l)"
|
|
||||||
echo " 完整标题: $VERSION - $RELEASE_TITLE"
|
|
||||||
22
todolist.md
22
todolist.md
@@ -1,6 +1,7 @@
|
|||||||
|
|
||||||
# todolist
|
# todolist
|
||||||
|
|
||||||
|
## 实现
|
||||||
1. 从cherry-studio代码中,移植:
|
1. 从cherry-studio代码中,移植:
|
||||||
“模型服务”
|
“模型服务”
|
||||||
“显示设置”
|
“显示设置”
|
||||||
@@ -16,9 +17,6 @@ https://ark.cn-beijing.volces.com/api/v3
|
|||||||
https://dashscope.aliyuncs.com/compatible-mode/v1
|
https://dashscope.aliyuncs.com/compatible-mode/v1
|
||||||
sk-2546da09b6d9471894aeb95278f96c11
|
sk-2546da09b6d9471894aeb95278f96c11
|
||||||
|
|
||||||
2. 大模型选择不知道是否生效?
|
|
||||||
✅
|
|
||||||
|
|
||||||
3. 阿里模型直接使用,模型ID。
|
3. 阿里模型直接使用,模型ID。
|
||||||
✅
|
✅
|
||||||
|
|
||||||
@@ -28,7 +26,21 @@ sk-2546da09b6d9471894aeb95278f96c11
|
|||||||
4. MCP 功能叠加。
|
4. MCP 功能叠加。
|
||||||
✅
|
✅
|
||||||
|
|
||||||
5. 优化消息交互。比如标题\内容超长怎么处理❓
|
## 优化
|
||||||
|
该项目经过反复重构,重构过程关注功能实现,没有关注性能、结构合理性、和实现的优雅性。全量分析,提供优化点及思路。
|
||||||
|
**先优化,在做数据库改造**。
|
||||||
|
|
||||||
6. 上下文的问题?上下文由谁维护❓以及如何维护❓
|
## 问题
|
||||||
|
1. 优化消息交互。比如标题\内容超长怎么处理❓
|
||||||
|
|
||||||
|
2. 上下文的问题?上下文由谁维护❓以及如何维护❓
|
||||||
|
可以在cherry-studio中验证。
|
||||||
|
|
||||||
|
3. 大模型选择不知道是否生效?
|
||||||
|
✅
|
||||||
|
|
||||||
|
4. 前端本地持久化(localStorage), 后端(Node/Express),不使用数据库,运行时内存保存。
|
||||||
|
Pinia store、localStorage、内存状态三处保存数据?
|
||||||
|
使用sqlite3 vs. better-sqlite3持久化?性能开销?
|
||||||
|
没有统一的数据源?
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user