From 6c31697ff4be237cc40609d736e26e3c43617fb6 Mon Sep 17 00:00:00 2001
From: WardLu
- v1.3.9 · MIT License · Vite + Vanilla JavaScript + Supabase
+ v1.3.10 · MIT License · Vite + Vanilla JavaScript + Supabase
@@ -185,7 +185,7 @@ tests/e2e/ 离线、云端和数据生命周期测试 ## 当前边界 -影伴当前仓库版本为 v1.3.9,生产地址为 [sm.shadow.wang](https://sm.shadow.wang/)。它是面向家庭的开源 PWA,不包含广告;当前通过 [Vercel Web Analytics](https://vercel.com/docs/analytics/privacy-policy) 记录匿名、聚合的页面访问数据,也没有儿童独立账号体系。数据范围和删除方式见 [隐私说明](https://sm.shadow.wang/privacy),安全问题请按 [安全政策](SECURITY.md) 私下报告。 +影伴当前仓库版本为 v1.3.10,生产地址为 [sm.shadow.wang](https://sm.shadow.wang/)。它是面向家庭的开源 PWA,不包含广告;当前通过 [Vercel Web Analytics](https://vercel.com/docs/analytics/privacy-policy) 记录匿名、聚合的页面访问数据,也没有儿童独立账号体系。数据范围和删除方式见 [隐私说明](https://sm.shadow.wang/privacy),安全问题请按 [安全政策](SECURITY.md) 私下报告。 ### 英语发音 diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 2854aeb..928bf56 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,5 +1,32 @@ # Release Notes +## v1.3.10 - 2026-08-23 + +- 修复每日写作积分在跨月、跨年和月份切换时选择错误 workbook 的问题。 +- 修复家庭档案切换期间的并发竞态,覆盖 active tuple、profile-scoped IndexedDB、fail-closed 和 outbox lease。 +- 包含 Shadow Portal 控制面迁移 `20260819120000_growth_loop_legacy_points_import.sql` 的发布前置依赖;该迁移必须先于前端上线完成并登记验收。 + +### 验证结果 + +- 代码合并提交:`f65e3e8f98bd996ba7ff570252eb9fc4488e3d85`。 +- `npm run verify`、云端 E2E `48/48`、定向 sign-out 回归和 GitHub PR checks 已通过。 +- 生产迁移、生产部署、生产响应头和真实账号验收:待本次正式发布流程完成后回填;当前不宣称已上线。 + +### 发布包 + +文件:`shadow-mate-v1.3.10.zip` + +SHA-256:发布时以 GitHub Release 产物为准回填。 + +### 部署清单(待完成) + +- [ ] 生产迁移 `20260819120000` dry-run 仅列出目标迁移,并完成受控 apply。 +- [ ] `schema_migrations`、目标函数、约束、索引、ACL/RLS 验收通过,Shadow Portal ledger 更新为 `applied/verified`。 +- [ ] Git tag `v1.3.10` 与最终 `main` 合并提交一致,并发布 GitHub Release 及压缩包。 +- [ ] `release-to-production` 完成 `production` 快进和 Vercel 部署。 +- [ ] `https://sm.shadow.wang/` 验证版本、CSP、HSTS、X-Frame-Options、HTTPS 和核心回归。 +- [ ] 使用脱敏真实账号完成两个 bug 的生产验收,并记录结果。 + ## v1.3.9 - 2026-08-19 - Growth Loop 积分模块上线:积分账本、自定义积分项/自定义成长项目、奖励与兑换;后端表与 RPC 已部署共享 Supabase(控制面执行并登记)。 diff --git a/package-lock.json b/package-lock.json index c36c877..8e34765 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "shadow-mate", - "version": "1.3.9", + "version": "1.3.10", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "shadow-mate", - "version": "1.3.9", + "version": "1.3.10", "dependencies": { "@supabase/supabase-js": "2.111.0", "@vercel/analytics": "^2.0.1", diff --git a/package.json b/package.json index aeaefcf..c464df7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "shadow-mate", - "version": "1.3.9", + "version": "1.3.10", "private": true, "type": "module", "scripts": {