This website requires JavaScript.
Explore
Help
Register
Sign In
Henry_Du
0 Followers
·
0 Following
Joined on
2026-06-27
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues.
Learn more about blocking a user.
User to block:
Optional note:
The note is not visible to the blocked user.
Cancel
Block
Repositories
7
Projects
Packages
Public Activity
Starred Repositories
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 12:32:57 +08:00
a55fa96952
fix(build): SSR 安全化 PlaylistCardGenerator canvasHeight 避免 Nitro 构建 OOM(exit 137)
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 12:22:33 +08:00
ac4727551c
feat(admin): 图片歌单改导入酷狗+自动排入按期望时段+日期滚动修复
Henry_Du
pushed to
main
at
Henry_Du/BYWCloudreve
2026-09-13 12:18:04 +08:00
0959d10f35
chore(ci): 开启 workflow_dispatch 支持手动触发 Actions
Henry_Du
pushed to
main
at
Henry_Du/BYWCloudreve
2026-09-13 12:10:01 +08:00
62e2250202
feat(admin): 用户管理增强 - CSV 批量导入用户、批量状态/组操作、登录审计日志
Henry_Du
pushed to
main
at
Henry_Du/BYWCloudreve
2026-09-13 11:55:29 +08:00
32959c7330
ci(workflow): 修复 deploy 步骤 bash 语法,改为数组参数并适配 docker run 直接部署
Henry_Du
pushed to
main
at
Henry_Du/BYWCloudreve
2026-09-13 11:48:16 +08:00
6fecb708fd
ci: 新增 Gitea Actions 构建部署工作流和多阶段构建 Dockerfile
Henry_Du
pushed to
main
at
Henry_Du/BYWCloudreve
2026-09-13 11:29:10 +08:00
2a7b03ab1d
chore: 初始化 Cloudreve 源码仓库
Henry_Du
created branch
main
in
Henry_Du/BYWCloudreve
2026-09-13 11:29:10 +08:00
Henry_Du
created repository
Henry_Du/BYWCloudreve
2026-09-13 11:13:25 +08:00
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 10:29:18 +08:00
27d718bf01
fix(admin): 日期组件进入界面后应滚动到当前日期/选中项居中
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 10:09:51 +08:00
456bc39e3e
perf(ci): deploy.yml workflow 全量提速 30-45%:preflight 步骤合并+npm 本地磁盘缓存;新增 meta-warmup 与 Preflight 并发跑系统/检出/Builder 初始化;build-image 复用 meta-warmup 输出省 6 步;--no-cache 改为 inputs.skip_build_cache 条件触发;timeout 收紧 40→30;deploy 依赖改为 [preflight, build-image] 双成功校验
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 09:58:19 +08:00
28d06dfdb2
fix(admin): 修正日期滚动范围过小导致找不到今天的问题
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 09:29:11 +08:00
604749d08a
chore(auth): 临时硬关闭微信聚合登录(aggregate=false)\n\n用户反馈:先暂时不做微信登录了。\n\n双重保险:\n1) 构建期开关:nuxt.config.ts runtimeConfig.public.oauth.aggregate 由\n 原来的 !!process.env.AGGREGATE_OAUTH_APP_ID 改为硬编码 false。\n 影响范围:\n - 登录页 OAuthButtons.vue 中的 v-if 分支不再渲染绿色微信按钮\n - app/pages/account/index.vue 中 hasOAuthProviders aggregate=false → 个人页\n 第三方绑定分区即使其他 provider 都没配也会显示其它 provider,\n 但微信卡片 OAuthBindingCard.vue 因 config.public.oauth.aggregate=false\n 被 v-if 直接拿掉不渲染\n - app/utils/oauth.ts getProviderDisplayName 中 aggregate→微信 映射还保留,\n 恢复时无需再改\n2) 运行期强制关:server/utils/oauth-strategies.ts loadAggregateSettings\n 返回值 aggregateOAuthEnabled 硬编码 false(即使 process.env.AGGREGATE_OAUTH_APP_ID\n 和 system_settings 表都配齐也不启用)。并加 _hardDisabledReason 字段给后续日志\n 留解释,避免以后排查为何 ENV/DB 都有值却 500 说未配置。\n\n后续恢复步骤(两处同时改回即可):\n A. nuxt.config.ts public.oauth.aggregate 改回\n aggregate: !!process.env.AGGREGATE_OAUTH_APP_ID\n B. server/utils/oauth-strategies.ts loadAggregateSettings 返回对象\n aggregateOAuthEnabled 改回原本逻辑:\n enabled && !!(appId && appKey && endpoint)\n 并删除 _hardDisabledReason 字段即可。\n\n注意:Gitea Repository Secrets 中的 6 条 AGGREGATE_OAUTH / OAUTH_* 没有删除,\n保留在仓库里,下次恢复不用重新输入一遍。
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 09:19:54 +08:00
ec39f6ab56
perf(admin): 调小日期滚动条的滚动跨度,避免一次飞太远
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 08:36:54 +08:00
71bbd88bb8
fix(admin): 修复日期选择器与选曲日期的 UTC 时差错位
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 02:05:03 +08:00
19ab33b102
feat(admin): 优化后台日期选择器和播出时段交互流程
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 01:05:43 +08:00
a481e0ae4c
fix(auth): 微信登录按钮放大+主题色 & /api/auth/aggregate 500 诊断日志\n\nUI 改动(微信登录按钮 + 个人页绑定卡片):\n- OAuthButtons.vue:aggregate 微信按钮 48x48 → 56x56,SVG 图标 22px→28px;默认背景微信绿 #07C160,hover #06ad56,active #059a4c;正常态加绿色阴影,纯 #fff 文字;不再和相邻 Google/GitHub 保持原尺寸不变\n- OAuthBindingCard.vue 个人页卡片:aggregate(aggregate):微信图标框 40x40→48x48(h-10→h-12),图标 22px→26px,背景/边框/文字用微信绿 #07C160;未绑定微信色 立即绑定微信 按钮 字号从 xs→sm,py 1.5→2.5,文案 立即绑定→立即绑定微信\n\n500 排错日志(/api/auth/aggregate):\n- loadAggregateSettings:先取 env fallback 前置,DB select 包 try/catch 不抛;并打印 [AggregateOAuth] enabled/appId/appKey 长度/loginType/endpoint 状态(DB=? 配置 / ENV=? 配置 / dbEnabled回退逻辑\n- auxxStrategy.getAuthorizeUrl 全链路结构化日志:\n 1) 参数打印(enabled/endpoint/safe_ok/redirect_uri/state_len\n 2) 配置缺失时逐条枚举原因(APP_ID 空 / APP_KEY 空 / ENDPOINT 空 / enabled=false)\n 3) endpoint 不合法时单独打印 [AggregateOAuth][auxx][getAuthorizeUrl] endpoint 不合法 + JSON(endpoint)\n 4) 请求 auxx.cn/connect.php?act=login 前打印 GET URL(appkey 替换为 ***,日志绝不输出真实密钥)\n 5) $fetch 成功打印 code/msg/has_url/url_prefix\n 6) $fetch 异常打印 err/status/body (response._data 或 data 前 400 字)\n 7) $fetch 加 15000ms 超时,避免 Runner 到 auxx 不通卡死一直挂 30s\n 以上;30s+ 才被 Nitro 强制 500
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 00:43:45 +08:00
9fd8a9ccbd
fix(ci,build): 双路径双 Job 注入 OAuth 6 条 secrets 到构建期\n\n根因(Run
#71
已确诊):\n - Preflight Job 的「执行 nuxt build」step 的 env 注入在当前 Gitea Actions 版本下没生效(整个日志中搜不到 [OAuth] 字样)\n - 构建镜像 Job 的 docker buildx build 完全没透传 OAuth 变量,镜像内 RUN npm run build 看不到 process.env.AGGREGATE_OAUTH_APP_ID\n - nuxt.config.ts runtimeConfig.public.oauth.aggregate = !!process.env.AGGREGATE_OAUTH_APP_ID 两个路径都拿不到值 → 一直 false\n - 前端登录页第三方登录分区一直渲染占位提示,不出微信按钮\n\n修复(两条独立链路,任一条成功按钮都会出现):\n ① 链路 A(preflight 产物):preflight Job 加「注入 OAuth secrets 到 GITHUB_ENV」Step(_append_env 双引号包住值写 $GITHUB_ENV),保证后续所有 step(含 nuxt build)的进程级 process.env 都有 6 个变量\n ② 链路 B(容器镜像):Dockerfile COPY . . 后新增 6 个 ARG(OAUTH_REDIRECT_URI / OAUTH_STATE_SECRET / AGGREGATE_OAUTH_APP_ID / APP_KEY / LOGIN_TYPE / ENDPOINT)并 ENV 导出,保证 RUN node scripts/memory-build.js(npm run build)能读到\n ③ deploy.yml build-image Job:新增「注入 OAuth secrets 到 GITHUB_ENV」Step(与 preflight 同样的 _append_env 逻辑),紧接着的「构建并推送镜像」Step 把这 6 条变量逐个非空判后拼进 BUILD_ARGS=(--build-arg ...),并打印每条是否已注入(不打印值)\n\n配合 Deploy Job 原本已实现的远端 /data/opt/byw-voicehub/.env upsert(SSH 运行期写入):\n - 运行期容器(docker-compose env_file: [.env])也有同一套 6 条变量 → server/utils/oauth-strategies.ts loadAggregateSettings 的 env fallback 能读到 auxx.cn 凭据,完成微信扫码登录/绑定全链路。\n\n诊断日志(新的 Run
#72
中应出现):\n [OAuth-secrets] AGGREGATE_OAUTH_APP_ID=已注入 (len=4) (若配置过 Secrets)\n [OAuth build-args] AGGREGATE_OAUTH_APP_ID=已注入\n [OAuth] build-time AGGREGATE_OAUTH_APP_ID 已配置(前端第三方登录按钮会显示), LOGIN_TYPE=wx
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 00:21:15 +08:00
f5b7bef285
fix(ci): Preflight npm ci 防超时 + Deploy job 误触发保护\n\n- deploy.yml preflight/安装依赖 Step:新增「双 registry 切换 + 3 轮重试 + npm fetch-retries=5 + fetch-timeout=5min + prefer-offline」\n - 主站
https://registry.npmmirror.com
备用
https://mirrors.cloud.tencent.com/npm/(两套独立
CDN 节点),奇偶次交替\n - npm 内部 read ETIMEDOUT(exit 146)自动走 fetch-retries 重试;整轮失败 bash 层 15s 后再跑下一轮\n - 失败 3 轮才真正 exit 1,并在日志中明确提示可覆盖 NPM_REGISTRY_PRIMARY/FALLBACK\n- deploy.yml deploy job:if 条件从 \x27!cancelled() && !failure()\x27 改为 \x27always() && needs.build-image.result == \x27\x27success\x27\x27\x27\n - 之前 build-image 被 skip(preflight 先失败)时,!failure() 为真导致 deploy 被触发但 IMAGE_NEW 空 → exit 9 误报为 deploy 本身错\n - 现在仅当 build-image 真的 success 时才会执行 deploy,build-image 被跳过/失败时 deploy 自动显示为 skipped(符合语义)
Henry_Du
pushed to
main
at
Henry_Du/BYW-VoiceHub
2026-09-13 00:11:02 +08:00
a64fa6bc72
ci(deploy): Gitea Actions 自动接入微信OAuth(构建期+运行期双链路注入)\n\n- deploy.yml preflight/nuxt build step: env 注入 6 条 OAuth secrets;显式 export 给子进程,构建日志打印 AGGREGATE_OAUTH_APP_ID 有无值便于排错\n- deploy.yml deploy/SSH step: env 注入 6 条 OAuth secrets 传给远端 bash -s\n - 远端新增 upsert_env_key():对 .env 做 awk 整行覆盖 / 不存在追加,幂等(保证不破坏原有 POSTGRES_* / JWT_SECRET / NUXT_PUBLIC_* 等其它变量)\n - 仅当 AGGREGATE_OAUTH_APP_ID 非空才写入,避免把空值覆盖已有配置\n - 合并写入后立即在日志输出 [OAuth] 成功/跳过提示,无需手改服务器 .env\n- docker-compose.yml 已含 env_file: .env,合并写入后的变量会被容器自动加载为 process.env
Previous
4
Next