feat(release): a Studio version ships with notes of its own

The release body was one fixed template, so 2.0.0 would have published a
first release that said nothing about what it is. A version's notes now live
in release-notes/studio/<version>.md and the workflow appends the standing
text about signing, installation and self-update to them.

Publishing without that file still works — it warns and carries the standing
text alone — because a missing note is not a reason to fail a build that is
already signed and verified.

2.0.0's notes are this line's first, so they read as an introduction rather
than a diff: what the workspace does, how models and accounts are named, what
extensions may redraw, and the three limits that outlive the release.
This commit is contained in:
esengine committed 2026-08-18 06:51:27 -07:00
1 parent 4a037ce62c
commit f1fdcf8d64
3 files changed
+64 -12

No files matched your search

+16 -12
View File
@@ -264,25 +264,29 @@ jobs:
TAG: ${{ needs.resolve.outputs.tag }}
VERSION: ${{ needs.resolve.outputs.version }}
run: |
notes=$(cat <<EOF
Reasonix Studio $VERSION — built from the \`studio\` branch and published as a
prerelease, so it never takes the repository's "latest" from the CLI line.
# A version's own notes live in release-notes/studio/<version>.md. The
# release still publishes without one, carrying only the standing text.
notes="$RUNNER_TEMP/release-notes.md"
: > "$notes"
if [ -f "release-notes/studio/$VERSION.md" ]; then
cat "release-notes/studio/$VERSION.md" >> "$notes"
printf '\n' >> "$notes"
else
echo "::warning::no release-notes/studio/$VERSION.md; publishing the standing text only"
fi
cat >> "$notes" <<'BODY'
---
**macOS** is signed with a Developer ID and notarized: it opens without clearing
quarantine. **Windows is unsigned** — Authenticode signing is bound to protected
\`main-v2\`, which this branch is not, so SmartScreen will warn: choose "More info"
then "Run anyway". **Linux** installs from the \`.deb\`.
**macOS** 已用 Developer ID 签名并公证,打开时不需要清除隔离属性。**Windows 包未签名** —— Authenticode 签名绑定在受保护的 `main-v2` 上,本分支拿不到它,所以 SmartScreen 会告警:选「更多信息」,再选「仍要运行」。**Linux** 从 `.deb` 安装。
Self-update works on all three: Linux upgrades through its package, Windows runs
the next installer, macOS replaces its own bundle.
EOF
)
三个平台都能自更新:Linux 走自己的包,Windows 运行下一个安装器,macOS 替换自身 bundle。
BODY
if gh release view "$TAG" >/dev/null 2>&1; then
gh release upload "$TAG" dist/* --clobber
else
gh release create "$TAG" dist/* \
--title "Reasonix Studio $VERSION" \
--notes "$notes" \
--notes-file "$notes" \
--prerelease \
--latest=false
fi
+6
View File
@@ -43,7 +43,13 @@ running builds will not see the new version.
## Cutting a release
Write the version's notes first. `release-studio.yml` reads
`release-notes/studio/<version>.md` and appends the standing text about signing,
installation and self-update; without that file it publishes the standing text
alone and warns.
```bash
$EDITOR release-notes/studio/2.0.0.md
git checkout studio
git tag studio-v2.0.0
git push origin studio-v2.0.0
+42
View File
@@ -0,0 +1,42 @@
> Reasonix Studio 是重写的桌面端:新的工作区、可扩展的面板、三平台原生安装与自更新。这是 Studio 线的第一个发布。
## 工作区
- **按可用空间折叠的布局** —— 侧轨可以拖动改宽,折叠状态看得见;布局按它实际拥有的空间折叠,而不是按窗口尺寸猜。界面缩放也不再停在 1080p 窗口够用的那个上限。
- **回到你说过的话** —— 右侧导航轨取代滚动条,列出这次对话里你的每一次发言,点一下就跳回去;模型说过的话可以删掉。
- **轨迹** —— 一个回合里发生了什么按活动逐条展开,模型轮次只是其中一种活动;轨迹可以离开主窗口单独放。
- **输出读得懂** —— 数学公式、emoji 和富文本都会正常渲染;长文件读取折叠成行数,shell 命令显示退出状态。
- **压缩不再是一分钟的沉默** —— 折叠时能看见摘要正在写入,事后能看到这次折叠花了多少、摘要保留了什么。
- **@ 和 / 背后是同一个补全引擎**,两者行为一致。
## 模型与账户
- **粘贴一个 URL 和一个密钥就能加模型源**;源可以改名和编辑,名字在别处也认得出。
- **模型选择器按账户和「门」分组**,同一个账户开第二扇门会复用它的密钥。
- **能力是声明出来的** —— 哪些模型能读图、谁负责哪种任务、web search 挂在真正支持它的门上。
- **连接会自己说还能不能用**;首次连接不再默认你用的是 DeepSeek。
## 扩展与主题
- **插件包、扩展视图槽位与主题令牌** —— 扩展可以在侧轨占一个固定位置,可以重绘卡片,也可以替换面板的解释器。
- **外观是装上去的,不是编译进去的** —— 主题作为包安装,自带配图。
- **MCP 服务器和技能可以从任意前端开关**;服务器按它文档给的任意形式安装,也能卸掉。
## 少操心的地方
- 一个回合没做完的事会自己做完,**不用再打「继续」**。
- 网络断了会说清是哪一层断的,而不是在对话里干等超时。
- 记忆存下的那一刻就能看见,**并且带着撤回**;上一回合真正用到了哪些记忆也会标出来。
- 机器上没有 git 也能安装,并且会告诉你为什么某些功能不可用。
## 安装与更新
- macOS 的 `.dmg`、Windows 的安装器、Linux 的 `.deb` —— 三平台给的都是装得上的包。
- **三平台都能自更新**:Linux 走自己的包,Windows 运行下一个安装器,macOS 替换自身 bundle。
- 版本面板可以**回滚到上一个版本**。
## 已知限制
- **Windows 包未签名**,安装时会看到 SmartScreen 警告。
- 没有 windows/arm64 构建。
- 已经装了 1.x 桌面版的用户读的是另一份版本目录,不会自动升级到 Studio,需要手动下载。