Commit Graph

  • 4baf24f6f8 feat(server): 自动更新 /version 清单端点(镜像 jiu) wangjia 2026-07-07 00:12:46 +08:00
  • ec0942e1e7 feat(usercenter): SSO /sso 落地页(拿票兑会话→自动登录) server-v1.0.3 wangjia 2026-07-07 00:02:48 +08:00
  • 1e13f35219 feat(server): SSO 换票端点(App→Web 免登握手) wangjia 2026-07-06 23:54:15 +08:00
  • e4de308ba4 fix(usercenter): 首屏直接渲染登录页(修"空白")+ html suppressHydrationWarning wangjia 2026-07-06 23:40:24 +08:00
  • 97caae95b8 feat(web): 官网 Windows 下载按钮上线(client CI 已产出 exe) wangjia 2026-07-06 23:12:57 +08:00
  • 4561ee4cc3 fix(ci): fetch-desktop-bin curl 加固(windows 外网 GFW 抖动) client-v1.0.54 client-v1.0.53 wangjia 2026-07-06 22:56:20 +08:00
  • a53bbe743e fix(ci): release-deploy 合并为单次 download-artifact + flatten client-v1.0.52 wangjia 2026-07-06 22:44:17 +08:00
  • 7b1f49c182 fix(ci): compile-windows 传 ISCC 用 Windows 路径(cygpath) client-v1.0.51 wangjia 2026-07-06 22:31:40 +08:00
  • 8c8486f9af fix(ci): deploy-client 用 env 传 REF_NAME(防 Actions 注入)+ job.status 同法 client-v1.0.50 wangjia 2026-07-06 22:22:00 +08:00
  • 7d0f4c8065 ci: 恢复 build-windows job(windows-runner 已提级 user 级) client-v1.0.49 wangjia 2026-07-06 22:15:06 +08:00
  • 3d521973ab feat(server): CORS 中间件(Web 用户中心跨域调 /v1/*) server-v1.0.2 wangjia 2026-07-06 21:52:33 +08:00
  • cb8e4bddd8 feat(web): 官网恢复登录入口 → usercenter(app.yanmeiai.com) wangjia 2026-07-06 21:48:59 +08:00
  • 4cfe4d0ccb chore(ci): deploy-client 本轮 Android-only(暂无 windows runner, 移除 build-windows) client-v1.0.48 wangjia 2026-07-06 20:51:18 +08:00
  • 366695ffd6 chore(web): Windows 下载按钮暂改「即将推出」(其 CI 未产出 exe;本轮仅 Android 真下载) wangjia 2026-07-06 19:58:18 +08:00
  • 2e631ed3b5 feat(server+web): 客户端下载闭环——pangolin-server /downloads + 官网下载链接 server-v1.0.1 wangjia 2026-07-06 19:48:57 +08:00
  • 2698116696 feat(ci): 客户端 CI 脚手架(Android+Windows, 照 jiu)——起草+Android 本地验证 wangjia 2026-07-06 19:40:34 +08:00
  • 973c2c021b fix(ci): 网络操作加超时(runner 长任务 ~14min 无日志崩溃 → 快失败可诊断) server-v1.0.0 wangjia 2026-07-06 18:43:59 +08:00
  • f1950ffb6f fix(ci): release-server 首次实跑修复 + go 工具链 sha256 pin wangjia 2026-07-06 18:04:51 +08:00
  • 8850c94e96 fix(ci): deploy-server 先装 go(runner 无 go → compile exit 127) wangjia 2026-07-06 17:55:33 +08:00
  • 4d67a90659 fix(ci): deploy-server 隧道 healthcheck 改非致命(本地 healthz 才是权威闸) wangjia 2026-07-06 16:59:52 +08:00
  • cccbb7b56b docs: 控制面 CF Tunnel/端口布局说明 + 方案 HTML 登记 index wangjia 2026-07-06 16:53:36 +08:00
  • 06ba76e22b feat(deploy): 8080 收 loopback + 关 8080 防火墙 + 健康检查改本地/隧道(退役明文控制口) wangjia 2026-07-06 16:47:32 +08:00
  • e2ffce90d3 feat(deploy): PANGOLIN_PUBLIC_URL 改 https://api.yanmeiai.com(客户端规则集走隧道) wangjia 2026-07-06 16:45:00 +08:00
  • 1b091f3be0 ci: 守护 Android manifest 禁全局明文(#25 控制面已 https) wangjia 2026-07-06 16:41:59 +08:00
  • a5aea9438a feat(client): 控制面基址默认 https://api.yanmeiai.com + 移除 Android 明文开关 wangjia 2026-07-06 16:37:42 +08:00
  • 9b56e2667b feat(deploy): cloudflared 出站隧道前置控制面 API(api.yanmeiai.com→127.0.0.1:8080) wangjia 2026-07-06 16:32:32 +08:00
  • bac79017ae docs(plan): #25 控制面 CF Tunnel 实现方案 wangjia 2026-07-06 16:30:11 +08:00
  • 5c647235aa chore(todo): #25 方案 propose/approve + #32 fallback 登记 wangjia 2026-07-06 16:28:45 +08:00
  • f8e870fd6a fix(ci): backup 大小 sanity 阈值 50k→1k(小库压缩后 <50k 被误删) wangjia 2026-07-06 15:34:18 +08:00
  • 84b042394d ci(backup): 备份步骤输出 tee 到 NAS _last-run.log(便于排障) wangjia 2026-07-06 15:32:10 +08:00
  • e557a94ed0 fix(ci): lib-ssh 加 IdentitiesOnly+BatchMode(修 Too many auth failures) wangjia 2026-07-06 15:05:44 +08:00
  • e1a17acbe4 feat(ci): SQLite 每日备份到 NAS(异地容灾,#26/F2) wangjia 2026-07-06 14:55:11 +08:00
  • 3efd67297e ci(server): 编译/测试直接在 runner 跑,去嵌套 docker(修 DinD;go 工具链自动下载) wangjia 2026-07-06 14:40:09 +08:00
  • f6e565ffdc ci(site): 官网构建/部署直接在 runner 跑,去掉嵌套 docker(修 DinD 挂载) site-v0.0.3 wangjia 2026-07-06 14:34:12 +08:00
  • ba5f71b716 ci: runs-on nas → ubuntu-latest(匹配 nas runner 实际 label) site-v0.0.2 wangjia 2026-07-06 13:33:27 +08:00
  • 7c26050cdb docs(spec): 官网部署改 Cloudflare Pages(架构变更说明) site-v0.0.1 wangjia 2026-07-06 10:08:20 +08:00
  • 673914783d refactor(ci): 官网部署改用 Cloudflare Pages(替代 rsync 到 pangolin1) wangjia 2026-07-06 09:59:58 +08:00
  • 443d4e3a11 feat(ci): test.sh(go test / flutter test) wangjia 2026-07-06 00:37:48 +08:00
  • 0825170044 fix(ci): 服务端流水线注入加固(tag 校验/JSON 转义/workflow env)+ gitignore server/out wangjia 2026-07-06 00:33:47 +08:00
  • 4fb3fe3fee feat(ci): 服务端 server-v* 编译+release+部署(备份/迁移/回滚,复用 lib-ssh/lib-forgejo) wangjia 2026-07-06 00:24:18 +08:00
  • 91d1355721 fix(ci): 部署脚本 —— 私钥清理 trap 前移 + rsync 空目录守卫 + 主机密钥 accept-new(评审 Critical/Important) wangjia 2026-07-06 00:17:37 +08:00
  • 9bac5c8dcb feat(ci): 官网 site-v* 构建+部署脚本(compile-site/deploy-site/lib-ssh/workflow) wangjia 2026-07-06 00:10:53 +08:00
  • f0a8c6dd98 ci(checks): 触发路径纳入 scripts/ci(否则 CI 脚本改动不触发 lint) wangjia 2026-07-06 00:05:26 +08:00
  • 0b9f291ff1 ci(checks): shellcheck 覆盖 scripts/ci wangjia 2026-07-06 00:03:05 +08:00
  • ff8fc36726 fix(ci): lib-forgejo TLS 校验默认开启,-k 改显式 opt-in(安全) wangjia 2026-07-05 23:55:56 +08:00
  • b8343a8788 feat(ci): scripts/ci 基座(_env/lib-forgejo/notify) wangjia 2026-07-05 23:49:59 +08:00
  • 6be777dff5 docs(plan): CI/CD 实现计划(#30) —— .md 真相源 + HTML 阅读版 + 索引 wangjia 2026-07-05 23:40:59 +08:00
  • 0ab31b4c58 docs(spec): CI/CD 密钥命名对齐 jiu(MACOS_*/APPSTORE_*/ANDROID_*) wangjia 2026-07-05 23:19:29 +08:00
  • fe9a3a6cdb docs: CI/CD 方案 HTML 阅读版 + 登记 docs/index.html(#30) wangjia 2026-07-05 22:06:25 +08:00
  • f30097172a docs(spec): CI/CD 全流程设计方案(#30) wangjia 2026-07-05 22:02:40 +08:00
  • 70d3293251 refactor(website): 域名/邮箱/渠道收口到 src/config/site.ts 单一真相源 wangjia 2026-07-05 19:23:19 +08:00
  • a454c63c4e fix(website): 落定真实域名/邮箱/Telegram wangjia 2026-07-05 19:19:58 +08:00
  • c1c6b7ccf5 fix(website): Docs 卡片暂改不可点(去掉「阅读」死链) wangjia 2026-07-05 18:09:07 +08:00
  • 75ed293151 fix(website): 移除无效的「登录」按钮(死 span,无链接) wangjia 2026-07-05 17:56:49 +08:00
  • 95abb74db2 fix(website): 价格按语言分币种 —— 英文版显示美元(P0) wangjia 2026-07-05 17:43:44 +08:00
  • 1c8f6cb56b fix(website): 去除夸大宣传 + 隐藏占位 Blog 区(官宣页上线前 P0) wangjia 2026-07-05 17:35:49 +08:00
  • 08fb915b5e test(devices): #27 同机换账号登录注册 E2E(SQLite,服务层) wangjia 2026-07-05 13:11:25 +08:00
  • eb7c3c1062 feat(agent): WARP 域名分流 —— 命中域名走 Cloudflare 干净出口(#29) wangjia 2026-07-02 13:40:00 +08:00
  • f035552ff5 fix: disconnect 吊销每设备凭证 + 客户端断开时真正调用(F4,#28) wangjia 2026-07-02 13:29:01 +08:00
  • 63d1baeb01 fix(server): devices 唯一键改 (user_id,uuid) —— 同机换账号不再 403 死结(F3,#27) wangjia 2026-07-02 13:16:40 +08:00
  • bbe149fd41 docs: 全栈设计审查 2026-07(前端/后端/数据库,13 项发现分级) wangjia 2026-07-02 12:52:08 +08:00
  • 14bcdc2e79 docs(contact): 落定渠道二级页设计 —— 统一单表 + LINE 灰置 wangjia 2026-07-02 12:30:24 +08:00
  • 91a890428f docs: 联系我们渠道二级页交互设计(Telegram/LINE 多频道群组,DB 配置) wangjia 2026-07-02 12:23:02 +08:00
  • 2c804d4ebf fix(scripts): local_test.sh 对齐当前 macOS 架构(sysext 标识符名 + 静态 libbox) wangjia 2026-07-02 11:11:05 +08:00
  • 8937044f55 fix(client/macos): 最小化托盘后点 Dock 图标唤回窗口(1.0.48+49) wangjia 2026-07-02 10:50:40 +08:00
  • 76126f7a0c chore: bump 1.0.47+48 (弱网自动重连#18 + 用量去计) wangjia 2026-07-02 09:58:27 +08:00
  • be27529054 feat(client): 弱网抖动先自动重连当前节点,不再动不动报「节点异常」(#18) wangjia 2026-07-02 09:57:19 +08:00
  • daaed39bac fix(server): 用量分钟数按墙上时钟去重 —— 多设备并发不再 N× 超计(bug) wangjia 2026-07-02 09:57:19 +08:00
  • 837bf55f6a fix(client): 「今日剩余」不再冻结 —— 倒计时兜底启动 + 会话后静默刷新 /me(1.0.46+47) wangjia 2026-07-02 01:54:53 +08:00
  • 038e5b6ab5 fix(server): 被移除的设备会话轮询判活 —— dev 行不存在应判「失效」而非「有效」(bug) wangjia 2026-07-02 01:54:53 +08:00
  • a274cc40c8 fix(client): 额度卡「今日剩余」标签不再被省略 + 短「免费版」标签(1.0.45+46) wangjia 2026-07-02 01:40:50 +08:00
  • fc8c03f2c3 chore: bump 1.0.44+45 (免费版倒计时+看广告加时 #21) wangjia 2026-07-02 01:01:42 +08:00
  • b461a476a2 feat(client): 免费版连接倒计时 + 到点切断 + 灰按钮 + 看广告加时(#21 前端) wangjia 2026-07-02 00:33:21 +08:00
  • e023fb6579 feat(server): 免费版账户级分钟卡控 + 累加式看广告加时(#21 后端) wangjia 2026-07-01 23:44:10 +08:00
  • 0bedd1c4d1 fix(server): 连接删掉账户级 dp_uuid 回退,未注册设备直接拒(#16) wangjia 2026-07-01 22:51:12 +08:00
  • 6ea2ec4a32 chore: bump 1.0.43+44 (含连接设备上限 backstop 客户端 UX) wangjia 2026-07-01 22:25:38 +08:00
  • 0a70a24cdb feat: 连接设备上限 backstop — 兜住"已登录的超限设备"(#16) wangjia 2026-07-01 22:11:13 +08:00
  • 8afe1f050c chore(windows): installer 版本 1.0.41→1.0.42 对齐 pubspec wangjia 2026-07-01 21:30:46 +08:00
  • fdca3d84a7 chore: bump 1.0.42+43 wangjia 2026-07-01 21:24:39 +08:00
  • e6f622d605 docs: 设备数量限制 + 超限 UX 设计文档(#16) + 登记 index wangjia 2026-07-01 19:26:51 +08:00
  • 34d980d875 feat(client): 设备数超限挡板 DeviceLimitScreen(#16 前端) wangjia 2026-07-01 19:25:14 +08:00
  • 6bac7fd2f0 feat(server): 设备上限登录闸(超限非硬拒登,返回 device_limit 信号)#16 wangjia 2026-07-01 19:16:10 +08:00
  • 27dc59ed63 feat(server): pro 套餐设备上限 5 → 3 wangjia 2026-07-01 18:07:03 +08:00
  • 58211d2fb8 fix(client): 连接时长按墙上时钟算,切后台/锁屏不漏计 wangjia 2026-07-01 09:53:49 +08:00
  • 002eea7562 build(scripts): build-libbox apple 按平台分发产物,避免覆盖另一端 Frameworks wangjia 2026-07-01 09:37:09 +08:00
  • 37c1724b67 fix(client): 切后台停看门狗 — 后台 urltest 被限流不再误判节点死断连 wangjia 2026-07-01 08:54:16 +08:00
  • b23377acde build(scripts): 各端 libbox 构建脚本修正 + 自动部署产物 wangjia 2026-07-01 07:53:35 +08:00
  • 07861ea04b fix(client): 看门狗后台唤醒不再误判节点死→假重连 (#18) wangjia 2026-07-01 07:10:34 +08:00
  • 6bcdbbe752 revert(macos): killswitch 回退 L0(低优先级暂缓) wangjia 2026-07-01 06:38:47 +08:00
  • a32d87c9c0 fix(macos): killswitch 撤掉 includeAllNetworks(堵死整机网络) — 改 enforceRoutes+on-demand wangjia 2026-07-01 06:09:04 +08:00
  • 97c0fdbbad test(macos): local_test.sh 加 killswitch fail-closed 漏测子命令 wangjia 2026-07-01 00:01:51 +08:00
  • 680f1af205 feat(macos): KillSwitch L0→L3 — NE includeAllNetworks+enforceRoutes+on-demand wangjia 2026-06-30 23:54:32 +08:00
  • e2440e44cc docs: 补 CLAUDE.md 移动端/跨端统计章节 + 新增 urltest 排障文档 wangjia 2026-06-30 22:56:10 +08:00
  • 53fb6492b1 chore: 整理——gitignore android/.gradle 构建缓存 + 同步 todo 看板 wangjia 2026-06-30 22:52:32 +08:00
  • 00bec95255 chore(client): 清理 tablet golden 旧命名孤儿文件(#11) wangjia 2026-06-30 22:47:39 +08:00
  • d0d39c93f6 fix(client): 设备列表离线时间改用 last_seen「最后在线」(原 last_login 不准) wangjia 2026-06-30 22:30:43 +08:00
  • 1666b1d462 fix(client/android): libbox 包名 io.nekohasekai.libbox(原 import libbox.* 编不过) wangjia 2026-06-30 22:20:52 +08:00
  • e994c44116 feat(client/android): urltest 延迟与 iOS/macOS 对齐 + 开明文(联调 http API) wangjia 2026-06-30 22:06:11 +08:00
  • 328d34a320 fix(client): 「我的」页加「设置」入口(我的设备下面)——iPad 竖屏/手机可达设置 wangjia 2026-06-30 21:48:54 +08:00
  • 849e30dd05 fix(client): iPad(tablet)对齐桌面——侧栏补设置/联系我们 + 顶部避让状态栏 wangjia 2026-06-30 21:36:33 +08:00