Skip to content

Commit 4a06593

Browse files
committed
chore: release v1.5.1
1 parent 64dfecf commit 4a06593

9 files changed

Lines changed: 49 additions & 7 deletions

File tree

CHANGELOG.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,27 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [1.5.1] - 2026-06-07
9+
10+
### Added
11+
- **Auth error i18n** — login, register, forgot-password, and reset-password pages now return machine-readable error codes and display localized messages (EN/ZH).
12+
- **Branded HTML email templates** — verification and password reset emails use a responsive branded layout with logo, card design, and styled CTA button.
13+
- **Verify-email page** — dedicated verification result page with success/error UI replaces the previous server-only redirect; works on any device.
14+
- **Cross-device email verification** — after registration, the PC page polls for verification status and auto-redirects to sign-in once the email link is opened on another device.
15+
- **OAuth unlink safety** — prevents unlinking the last remaining auth method; re-links existing user by email when re-logging in via OAuth.
16+
- **Admin config display multiplier** — byte values now display as MB and millisecond values as seconds in the admin config panel.
17+
- **Leaderboard @username display** — shows `@username` below display name in leaderboard entries to distinguish users with identical display names.
18+
19+
### Fixed
20+
- **Leaderboard cache invalidation**`unbanUser` and `setUserRole` now properly invalidate the leaderboard cache.
21+
- **Cache-Control: no-store for API responses** — added `Cache-Control: no-store` to all `/api/` routes in hooks and directly on the leaderboard endpoint to prevent Cloudflare from caching dynamic API responses.
22+
- **Avatar upload body size limit** — removed invalid `bodySizeLimit` svelte.config.js option; adapter-node uses `BODY_SIZE_LIMIT` env var instead.
23+
24+
### Changed
25+
- **OAuth re-linking on login** — when a user logs in via OAuth and an account with the same email already exists, the identity is linked to the existing account instead of failing with a duplicate key error.
26+
27+
---
28+
829
## [1.5.0] - 2026-06-07
930

1031
### Added

CHANGELOG.zh-CN.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,27 @@
55
格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/)
66
并遵循 [语义化版本控制](https://semver.org/lang/zh-CN/)
77

8+
## [1.5.1] - 2026-06-07
9+
10+
### 新增
11+
- **认证错误国际化** — 登录、注册、忘记密码和重置密码页面现在返回机器可读的错误码,并显示本地化消息(中/英文)。
12+
- **品牌化 HTML 邮件模板** — 验证邮件和密码重置邮件使用响应式品牌布局,包含 logo、卡片设计和样式化 CTA 按钮。
13+
- **邮箱验证结果页面** — 专用的验证结果页面,显示成功/失败状态,替代之前的纯服务器重定向;在任何设备上均可正常显示。
14+
- **跨设备邮箱验证** — 注册成功后,PC 端自动轮询验证状态,在手机上点击验证链接后自动跳转到登录页。
15+
- **OAuth 解绑安全检查** — 防止解绑最后一个认证方式;通过 OAuth 重新登录时,自动关联已有账号。
16+
- **管理后台配置显示优化** — 字节值现在显示为 MB,毫秒值显示为秒。
17+
- **排行榜 @用户名显示** — 在排行榜条目中显示名下方展示 `@username`,区分显示名相同的用户。
18+
19+
### 修复
20+
- **排行榜缓存清除**`unbanUser``setUserRole` 现在正确清除排行榜缓存。
21+
- **API 响应 Cache-Control: no-store** — 在 hooks 和排行榜端点直接添加 `Cache-Control: no-store`,防止 Cloudflare 缓存动态 API 响应。
22+
- **头像上传大小限制** — 移除无效的 `bodySizeLimit` svelte.config.js 配置;adapter-node 通过 `BODY_SIZE_LIMIT` 环境变量控制。
23+
24+
### 变更
25+
- **OAuth 重新关联逻辑** — 用户通过 OAuth 登录时,如果已存在相同邮箱的账号,将身份关联到已有账号,而不是报 duplicate key 错误。
26+
27+
---
28+
829
## [1.5.0] - 2026-06-07
930

1031
### 新增

packages/cli/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@juliantanx/aiusage",
3-
"version": "1.5.0",
3+
"version": "1.5.1",
44
"type": "module",
55
"description": "Track and analyze AI coding assistant usage across Claude Code, Codex, and more",
66
"keywords": [

packages/core/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@aiusage/core",
3-
"version": "1.5.0",
3+
"version": "1.5.1",
44
"type": "module",
55
"main": "./dist/index.js",
66
"types": "./dist/index.d.ts",

packages/site/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@aiusage/site",
3-
"version": "1.5.0",
3+
"version": "1.5.1",
44
"private": true,
55
"type": "module",
66
"scripts": {

packages/site/src/routes/+layout.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@
9797
'@type': 'Organization',
9898
name: 'AIUsage'
9999
},
100-
softwareVersion: '1.5.0',
100+
softwareVersion: '1.5.1',
101101
downloadUrl: 'https://www.npmjs.com/package/@juliantanx/aiusage',
102102
featureList: zh
103103
? 'Token用量追踪,费用估算与分析,模型使用排名,工具调用分析,项目维度统计,配额监控,多设备同步,数据导出'

packages/site/src/routes/docs/+page.svelte

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@
297297
<div class="hero-meta">
298298
<span class="meta-tag">{zh ? '开源' : 'Open Source'}</span>
299299
<span class="meta-tag">MIT</span>
300-
<span class="meta-tag">v1.5.0</span>
300+
<span class="meta-tag">v1.5.1</span>
301301
</div>
302302
</header>
303303

packages/web/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@aiusage/web",
3-
"version": "1.5.0",
3+
"version": "1.5.1",
44
"type": "module",
55
"scripts": {
66
"dev": "vite dev",

packages/widget/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@juliantanx/aiusage-widget",
3-
"version": "1.5.0",
3+
"version": "1.5.1",
44
"private": false,
55
"description": "System tray widget for AIUsage — view AI token usage from your system tray",
66
"keywords": [

0 commit comments

Comments
 (0)