- 29 Jul, 2026 5 commits
-
-
chunhong.mu committed
-
根 CLAUDE.md 一份大文件不够精准:改 site 时不需要 SDK 规则,改 mini 时 需要的 pages.json/域名白名单等约定又放不进去。拆成 7 份目录级文件, 各自只写该包独有且容易写错的内容,不重复根文件。 新增: - packages/{admin,web,mini,site}/CLAUDE.md - common/{sdk,utils,vue-kit}/CLAUDE.md 根 CLAUDE.md 加「动手前必读」索引表(路径 → 必读文件 → 覆盖要点), 并在仓库结构树里标出这些文件。 为保证实际生效(不只依赖文档里的一句约定),加 PreToolUse hook: scripts/claude-scope-hint.mjs 在 Edit/Write/MultiEdit 命中子包文件时, 通过 hookSpecificOutput.additionalContext 注入「该包有独立 CLAUDE.md」 与一句红线摘要。异常输入静默放行,不阻塞开发。 eslint 忽略范围由 CLAUDE.md 扩为 **/CLAUDE.md:markdown 里的 ```ts 片段会被当成真实模块校验(no-unused-expressions 等),与 ARCHITECTURE.md 早先的处理方式一致。 顺带修正根 CLAUDE.md 里 admin 的技术栈描述:antd 是声明未使用, 不应写成技术栈的一部分。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>chunhong.mu committed -
减少改动本项目时的授权提示。三处问题: 1. defaultMode 原为 "auto",不在 Claude Code 支持的取值内 (default / acceptEdits / plan / bypassPermissions),实际未生效。 改为 acceptEdits:文件编辑不再逐次询问(改动都在 git 里可回溯), Bash 仍按白名单控制。 2. 部分条目缺尾部通配,带 `2>&1` 重定向就匹配不上,例如 `pnpm -F * type-check` 匹配不了 `pnpm -F admin type-check 2>&1`。 补齐 type-check*/lint*/build* 等形态与 --filter 长写法。 3. 补充实际高频的只读命令:npx tsc --noEmit*、pnpm why/outdated、 curl 对 localhost 的冒烟检查。 未加入(有意):pnpm install(改 node_modules)、git add/commit(提交应人工确认)、 rm/mv/cp/pkill(写操作)、npx vite|uni 与 node <file>(等价任意代码执行)、 curl 任意 URL(可外传数据)。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
chunhong.mu committed -
mini 的验证码登录与密码登录均无法登录:接口名写错,后端返回 HTTP 200 + rescode 9999 + "No signature of method"(不是 404), 在 Network 面板里看起来是成功的,极易误判。 问题来源:从 uniapp-mp-template 移植时带进来一份手写的 packages/mini/src/api/auth.ts,接口名为 snake_case,后端没有这些方法。 而 @common/sdk 里的 createLoginService/createVerifyService 才是正确实现 (admin/web 一直在用)。login.vue 恰好横跨两者——图形验证码与发短信走 SDK(正常),登录走手写实现(失败)。 已用测试后端逐个验证: - loginWithPassword
✅ 返回"用户名或密码错误"(login_with_password❌ 方法不存在) - loginWithVerifyCode✅ 返回"验证码不正确"(login_with_mobile❌ 方法不存在) - sendVerifyCode✅ 返回"请输入正确的计算结果"(send_verifycode❌ 方法不存在) - bind_phone✅ 在 anonymous/system.wechat 下 - 图形验证码不是接口,是同步拼 URL(get_image_code❌ 方法不存在) 改动: - mini 的 api/auth.ts 改为纯委托 @common/sdk 服务,删除手写实现; 微信登录接 WechatLoginService,utils/sdk.ts 补 getWechatLoginService() - 新增 @common/sdk 的 resolveSdkError():SDK 业务错误 reject 的是纯字符串 (拦截器 Promise.reject(errorMsg)),网络错误才是对象,原先各包写的 err?.message || "失败" 会把后端真实原因吞成兜底文案。admin/web/mini 三个包的 auth-service 全部换上 - login.vue 不再直连 SDK:发短信走 services、验证码走 api,符合分层约定; 图形验证码校验失败时自动换一张 - CLAUDE.md 加两条硬规则,ARCHITECTURE.md 补「登录/验证码接口一律走 SDK 服务」对照表与「SDK 错误 reject 是字符串」说明 校验:pnpm lint 全绿,4 包 type-check 与 build:test 通过, mini 产物中确认为 camelCase 接口名 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>chunhong.mu committed -
chunhong.mu committed
-
- 28 Jul, 2026 1 commit
-
-
包命名通用化,移植小程序模板与公共代码,补齐 Claude Code 配置。 包结构: - qqqf-admin → admin(Vue3 SPA 后台) - official-site-web → site(Nuxt 3 官网) - qqqf-mp → mini(UniApp 小程序) - 新增 web(Vue3 SPA H5/客户端),删除空目录 qqqf-web 公共代码: - @common/utils 补齐 common/date-time/mask/money/regex 纯工具函数 - @common/vue-kit 新增平台无关的 useLoading - @common/sdk 去业务化:ClientId/Product 枚举改为 string 类型,移除硬编码的 passport/wx-distributer 域名与监控上报地址凭证,改由 SdkConfig 与 webMonitor.setupEndpoint() 注入;根入口不再导出小程序模块, 避免 Web 项目引入 uni.* 类型 mini 包以 uniapp-mp-template 为准重建,SDK 接 @common/sdk:新增 stores/services/api-auth/composables/page-layout/utils-sdk(懒加载单例) 去业务化:所有 .env.* 清空为占位符(原含真实域名与 client secret), config 中业务值改为 TODO 占位 Claude Code 配置: - .claude/settings.json(权限白名单 + Figma MCP) - .claude/skills 移植 4 个 skill 并适配 monorepo, api-diff-sync 的文档根目录由硬编码改为可配置 - 新增 CLAUDE.md,重写 ARCHITECTURE.md 顺带修复: - 登录不持久化 Token:services/auth-service 补齐 saveToken2Storage + sdk.core.loginByToken + store 三步 - 跨端崩溃:token-manager/web-monitor 的 window 访问加 typeof 守卫 - dev:project/build:project 对 Vue/Nuxt 项目忽略 --env, 现按 dev:<env>/build:<env> 脚本执行 - .env.* 中的 NODE_ENV=production 导致 dev server 报警告,已移除 - unocss 0.58/0.64 与 Nuxt 3.21 的 Vite 7 不兼容,升级至 66.x - App.vue 的 @import 改为 @use(Dart Sass 3.0 将移除 @import) - 修复 pnpm-workspace.yaml 的 BOM 与 build-changed.ts 的 lint 报错 校验:pnpm lint 全绿,4 个包 type-check 通过, 4 个包 dev 与 build(含 build:project --env)全部通过 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
chunhong.mu committed
-
- 25 Jun, 2026 2 commits
-
-
chunhong.mu committed
-
chunhong.mu committed
-
- 24 Jun, 2026 4 commits
-
-
login/index.vue 改用项目内 login-service 替代未导出的 wechatLoginService http.ts 新增 UniStorage 适配器解决小程序无 localStorage 问题 移除 App.vue 中废弃的 UICore.setupSdk 调用 login.vue 更新服务导入路径
chunhong.mu committed -
移除 UICore 依赖,改用 LoginService/VerifyService 直接实例化,更新 auth.ts 导入来源
chunhong.mu committed -
将 SDK 代码按职责划分为 adapters/core/mini-program/services 四个子目录,更新 exports 配置支持按需引入,删除已废弃的 ui-core.ts
chunhong.mu committed -
- 新增 qqqf-admin 管理后台完整项目结构 - 新增 Web 平台 Axios 适配器适配 Web 环境 - 修复 common sdk 中验证码、文件操作、更新管理器等适配问题 - 补充 commitlint 配置项,新增 qqqf-admin 作用域 - 为 common sdk 补充类型定义与导出优化
chunhong.mu committed
-
- 23 Jun, 2026 9 commits
-
-
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-
1. 重构App.vue,简化模板结构并引入全局样式 2. 替换全量环境变量配置,适配多环境打包 3. 新增登录、设置、个人资料等核心业务页面 4. 搭建通用UI组件库与工具类样式系统
chunhong.mu committed -
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-
- 22 Jun, 2026 6 commits
-
-
- Add .npmrc with isolated node-linker for UniApp compatibility - Enhance dev-project.ts and build-project.ts with interactive selection - Support --project, --env, --platform parameters - Auto-detect UniApp vs Web projects for platform selection - Update ARCHITECTURE.md with new script usage - Add pnpm overrides for axios version lock - Update commitlint config scope rules
chunhong.mu committed -
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-
- 18 Jun, 2026 5 commits
-
-
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-
chunhong.mu committed
-