Lemon-miaow
4d8e9af240
feat(cli): apply coordinated updates during maintenance
2026-10-04 17:36:21 +08:00
Lemon-miaow
cb3ed94026
fix(panel): streamline system settings and server creation
...
Use shared action buttons and default to the login space. Allow staff to save startup-only experience settings while running and request a durable restart through the existing operator flow.
Grant the API PVC list permission needed to detect retained worlds before server creation, and show internal failures with a request ID. Cover permission, maintenance, restart and UI behavior with regression checks.
2026-10-04 16:26:03 +08:00
Lemon-miaow
10bd2ddad0
feat: customize login and lobby spaces from the panel
2026-10-04 12:38:39 +08:00
Lemon-miaow
efbbe27629
feat: initialize panel access before linking Minecraft accounts
...
Configure connection and storage before creating or resuming the one-time Owner login. Remove Minecraft prerequisites from setup and preserve established login credentials.
Let staff preview and confirm roles from configured authentication sources using the existing account-link storage and game UUID mapping. Retain in-game code proof for players, add client-version and lobby guidance, and support NodePort passkey origins.
2026-10-04 03:05:05 +08:00
Lemon-miaow
2e4f118939
feat(login): 未绑定 Owner 时说明原因和绑定方式
2026-10-02 19:38:36 +08:00
Lemon-miaow
8d78d245b2
fix(updater): 官方仓库 404 不再提示私有仓库
2026-10-02 18:12:29 +08:00
Lemon-miaow
47a2dec4bc
fix(setup): 绑定码可重试并说明连接方式
2026-10-02 17:07:53 +08:00
Lemon-miaow
ce8c7893fe
docs: 重写 README
2026-10-02 16:08:42 +08:00
Lemon-miaow
109701a276
fix(ci): 修正分布式实现的 staticcheck 错误
...
迁移 CLI 不再遮蔽 BeginMigration 的错误,拒绝启动时正确返回失败。规范节点批准错误文案和归档 HTTP 状态常量;tar.Reader 已将旧普通文件类型归一化,无需引用已弃用常量。
验证:CI 固定版本 staticcheck 全量通过;cmd/felis、archivetransfer、backup、distributed 的 go test -race 通过。
2026-10-01 20:06:08 +08:00
Lemon-miaow
adf563ffe3
feat(distributed): 支持单主控多节点部署和停服迁移
...
复用现有 k3s 调度和 Job 生命周期,增加 worker 接入与批准、受保护节点身份、归档传输、持久迁移锁及活动 PVC 切换;同步管理员 API、CLI、面板和隔离规则。分布式模式默认关闭,保持单机兼容。
验证:Go 全量测试与 vet;面板 874 个测试、lint/build;Linux VM 安装器测试、清单服务端 dry-run、网络命名空间防火墙实测。A/B/C 三机 WireGuard、Velocity 和迁移验收仍待完成。
2026-10-01 19:48:37 +08:00
flyemoji
c0ee75efe4
fix(panel): mark the webview acknowledgement cookie secure
2026-09-29 14:08:23 +09:00
flyemoji
118e3bc0c4
fix(rcon): refuse an oversize command before its length wraps
2026-09-29 14:08:04 +09:00
flyemoji
3922aae9a7
fix(api): require reauthentication for changes to own email and passkeys; update OpenAPI descriptions
2026-09-29 13:39:35 +09:00
Lemon-miaow
ab4d8c2bf7
test(staticcheck): 删掉没人调用的 mustRead 和一次没被读的赋值
2026-09-29 03:25:26 +08:00
Lemon-miaow
3c0322a5c6
test(pgint): 只读绑定账号的测试角色带密码登录,CI 的 PG 要求密码验证
2026-09-29 02:28:50 +08:00
Lemon-miaow
01cd69692f
test(watchdog): 状态文件先拨回上一轮的时间,Linux 粗粒度 mtime 下备用文件不再和它同刻
2026-09-29 02:28:50 +08:00
Lemon-miaow
20c4ae5567
test(exports): 等待浏览器的导出上传在子测试内取走并等它返回,-race 下不再和下一个子测试改领取时限撞车
2026-09-29 02:28:50 +08:00
Lemon-miaow
94864473ce
fix(files): 服务器运行时下载文件的拒绝说明改为先停服再操作文件
2026-09-29 01:45:43 +08:00
Lemon-miaow
2b9cd1869c
fix(files): 编辑器保存和打开也逐跳核对 SHA-256,途中变了的内容不写盘也不打开
2026-09-29 01:43:37 +08:00
Lemon-miaow
cb3065da1d
fix(files): 模组包上传也逐段核对 SHA-256、长文件名能写、卡住的导出按时停掉、世界被占用时文件页说明原因并等它结束
2026-09-29 01:26:24 +08:00
Lemon-miaow
1d1549cea2
feat(files): 大文件分片上传、停服解压 zip 先列冲突再覆盖、文件和文件夹可下载;导出和下载不再带出 RCON 密码与转发密钥
2026-09-28 22:44:03 +08:00
Lemon-miaow
5dffadb40d
feat(backups): 主人和管理员可下载单个备份、导出停服世界,字节经一次性票据从导出 Job 流式转给浏览器,备份按 sha256 核对
2026-09-28 00:58:42 +08:00
Lemon-miaow
34b81ee8fe
feat(schedules): 每台服务器可设计划任务,按星期和时区定时发命令、重启、停服、开服或备份,重启和备份前可在游戏内提醒
2026-09-27 22:48:49 +08:00
Lemon-miaow
ab9a6f0bdb
fix(operator): 服务器 pod 先等出站围栏生效再启动镜像,新 pod 第一个请求不再能连到内网
2026-09-27 20:10:41 +08:00
Lemon-miaow
051cc1c9f5
feat(files): 文件管理可新建、建目录、删除、重命名和上传,写入内容拆成多个环境变量不再超内核单变量上限
2026-09-27 19:58:28 +08:00
Lemon-miaow
b6751eac0f
feat(backups): 主人和管理员可删除单个备份,归档由 reaper 下一轮删除、异地副本随下次同步删除,恢复可能在读时拒绝
2026-09-27 18:09:49 +08:00
Lemon-miaow
840d339760
fix(dbbackup): 备份新鲜度按最新的 daily 包算,手动或异地包不再掩盖停掉的定时任务
2026-09-27 16:40:50 +08:00
Lemon-miaow
46f99a7104
fix(watchdog): 状态文件写不进时把状态留在 /run 下的后备文件,下一轮读较新的一份,同一封告警不再每 2 分钟重发
2026-09-27 16:23:33 +08:00
Lemon-miaow
a32e8c19f7
fix(api): 契约检查对请求体按字段严格比对且不看 Content-Type,补上 approve 的 expected_digest 请求体
2026-09-27 16:14:52 +08:00
Lemon-miaow
1e42e9a87b
fix(velocity): 休眠服 MOTD 按唤醒策略说明谁能唤醒,闲置回收期间加入给出回收提示
2026-09-27 15:02:16 +08:00
Lemon-miaow
249d675bd7
fix(operator): 每次运行首次就绪后留 3 分钟到达窗口再开始空服计时,停服或重启时清掉旧计时
2026-09-27 14:53:40 +08:00
Lemon-miaow
56a4bbcf4c
refactor(api): 删掉没有调用方的 QuotaAvailable,修正 passkey last_used_at 的过时注释
2026-09-27 14:20:20 +08:00
Lemon-miaow
e9e9a7a622
fix(api): 收到 API 时钟的 repo 写操作一律用它打时间戳,不再和 PG now() 混用
2026-09-27 14:15:03 +08:00
Lemon-miaow
e491e063cf
fix(api): 消费 op-login 请求时要求已审批,fake 同步
2026-09-27 14:04:34 +08:00
Lemon-miaow
009e81b4cf
fix(api): op-login finish 拒绝审批后被停用或删除的账号
2026-09-27 14:00:33 +08:00
Lemon-miaow
1124413876
fix(api): setup 链接在同一事务里消费并建会话,存储故障回 500 且链接仍可重试
2026-09-27 13:55:56 +08:00
Lemon-miaow
26d997cb40
fix(submit): 本地上传存储在 rename 前 fsync 文件、rename 后 fsync 目录
2026-09-27 13:46:51 +08:00
Lemon-miaow
c54bd2d9eb
fix(submit): 上传途中投稿被撤回或删除时,由上传自己删掉刚落地的 blob
2026-09-27 13:43:41 +08:00
Lemon-miaow
372c8972f9
fix(submit): 已批准的投稿不再占上传者的存储额度,只计入存储总量
2026-09-27 13:38:34 +08:00
Lemon-miaow
0d485992c6
fix(operator): 服务器停服或删除时丢掉内存里的 RCON 失败计数
2026-09-27 13:34:42 +08:00
Lemon-miaow
c272e2ea24
fix(operator): 回到 Starting 时清掉 readySignalAt,每次启动都记入启动时长指标
2026-09-27 13:32:25 +08:00
Lemon-miaow
67a7e27f8d
fix(api): 服务器显示名称限 64 个可见字符,拒绝换行、控制符和不可见格式符
2026-09-27 13:30:28 +08:00
Lemon-miaow
b8da4e2318
fix(api): ownerOnly/adminOnly 包在已有的包装外层,路由的每层门禁都生效
2026-09-27 13:22:18 +08:00
Lemon-miaow
fef8d962c9
fix(api): UserDetail 读不到绑定账号时返回错误,不再显示为未绑定
2026-09-27 13:18:37 +08:00
Lemon-miaow
01408014b2
fix(api): quantityToMB 按 MiB 向上取整,配额不再少算零头
2026-09-27 13:16:49 +08:00
Lemon-miaow
2c5a85a033
fix(api): 调整资源先在 owner 的认领锁内核配额并写缓存再 patch 集群,集群拒绝时缓存回到集群的大小
2026-09-27 13:15:18 +08:00
Lemon-miaow
7f203b9245
fix(api): ListUsers 的 total 按同一组过滤条件计数,面板不再翻出空页
2026-09-27 13:01:12 +08:00
Lemon-miaow
e91886822c
fix(api): mc_uuid 统一校验为 UUID,非法值返回 400 bad_mc_uuid 并按规范形式存储
2026-09-27 12:57:40 +08:00
Lemon-miaow
5b0686dc06
fix(api): 停服时 CR 已不存在返回 404 not_found,与唤醒一致
2026-09-27 12:49:46 +08:00
Lemon-miaow
f692725bed
fix(migrate): 兑换迁移码在双方认领锁下检查目标配额,超出返回 403 migrate_quota_exceeded 且码不消耗
2026-09-27 12:46:49 +08:00