update at 2025-10-15 15:41:17

This commit is contained in:
douboer
2025-10-15 15:41:17 +08:00
parent 4671f3f6ee
commit 7329a2f3da
3 changed files with 249 additions and 2 deletions

64
test-json-generation.sh Executable file
View File

@@ -0,0 +1,64 @@
#!/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 '.'