瑚琏
Abel
首页
博客
心法
博客
技术沉淀 · 工程实践 · 关于 hulianui 的思考
紧凑
舒适
全部
踩坑
调试
架构
React
MySQL
CSS
微信小程序
性能
ThinkPHP
Tauri
Next.js
PHP
安全
Electron
Vue
前端
并发
macOS
Node.js
Playwright
Element UI
Tailwind
企业微信
Git
Java
TypeScript
Docker
部署
SwiftUI
Swift
Python
Spring Boot
Rust
Canvas
GitHub Actions
nginx
跨平台
FastAdmin
Vitest
Linux
CI/CD
Cloudflare
Turbopack
工程实践
网络
WebGL
动画
测试
桌面应用
数据库
Windows
运维
iOS
工具
monorepo
hulianui
设计系统
DNS
CDP
Chrome DevTools Protocol
RPA
webpack
Vite
bash
HeroUI
桌面
SSH
Shell
数据同步
OCR
自动化
正则
后端
git
重构
XSS
MyBatis
缓存
SSL/TLS
JavaScript
WebSocket
竞态
文件处理
CORS
lucide
PDF
506 篇
2026
506 篇
06/06
lucide-react 升到 v1,Github 图标凭空消失了
React · lucide · 踩坑
06/06
读不了的 PDF:没装 poppler、文本层还是空的,用 macOS 自带 Swift PDFKit 渲染
macOS · PDF · Swift
06/06
项目 logo 张冠李戴:Tauri 的 src-tauri/icons 经常是兄弟项目的占位
Tauri · 踩坑 · 工具
06/05
Dialog 逃出手机框:Portal + fixed 联手坑穿 Demo 展示页
React · CSS · 踩坑
06/05
Canvas 动画剧烈闪烁?你把 RAF 时间戳当相位用了
Canvas · 性能 · 调试
06/05
changesets Release workflow 开 PR 403——org 级 Actions 开关才是真正的墙
GitHub Actions · 踩坑 · CI/CD
06/05
静态站点怎么检测访客国家——别用时区猜,Cloudflare 早给你留好后门了
Cloudflare · Next.js · 性能
06/05
Cloudflare Workers Git 部署静态站:没有 wrangler.jsonc 就是白给
Cloudflare · 部署 · 踩坑
06/05
跨 pnpm workspace 消费 Tailwind v4 设计系统包的三连坑
Next.js · Tailwind · 踩坑
06/05
在 monorepo 之外消费自家 Tailwind v4 设计系统包
Next.js · Turbopack · Tailwind
06/05
flex 行里 pill 错位:block 包裹层的行盒陷阱
CSS · Tailwind · 调试
06/05
用真实个人站驱动一个组件库的成长
hulianui · 设计系统 · 工程实践
06/05
DNS 改了没生效?其实是 Clash fake-ip 在骗你
调试 · 踩坑 · DNS
06/05
MSW 本地跑得好,静态部署后 Demo 永远转圈
Next.js · 调试 · 踩坑
06/05
Next.js App Router 点击没反应?进度条 + loading.tsx 双层方案
Next.js · React · 性能
06/05
Next.js 静态导出 + MDX 阅读体验踩坑:usePathname 让 output:export 全面崩溃
Next.js · 踩坑 · 架构
06/05
Next.js 静态导出子路由全 403,根源是 trailingSlash 没开
Next.js · nginx · 部署
06/05
Canvas 组件读 CSS 变量颜色,默认色全部不可见——正则解析 oklch 失效
CSS · 踩坑 · 调试
06/05
React Offscreen 重连时 ref.current 变游离节点,el.style 直接 undefined 崩溃
React · 调试 · 踩坑
06/05
Recharts 无头截图空白:clipPath 动画在 headless 里被饿死
React · 调试 · 踩坑
06/05
Recharts 图表在 flex 卡片里变白块:ResponsiveContainer 的宽度塌陷陷阱
React · CSS · 调试
06/05
rehype-pretty-code 双主题配置完全正确,代码却全灰——选择器打错了
CSS · Next.js · 调试
06/05
RSC 边界的隐形雷:Client 组件作为 render prop 传入时 type 变 undefined
Next.js · React · 踩坑
06/05
批量重命名 npm scope:锚定斜杠的 sed 和 grep 会系统性漏掉分隔符变体
踩坑 · 调试 · 架构
06/05
SwiftUI HStack layoutPriority 吃掉了兄弟组件:从 flex 行移植引发的布局灾难
SwiftUI · 调试 · 踩坑
06/05
SwiftUI macOS Menu 自定义标签只渲染第一个 Text
SwiftUI · 调试 · 踩坑
06/05
SwiftUI 没有字体回退栈:用 NSFontDescriptor.cascadeList 复刻 CSS font-family
SwiftUI · 调试 · 踩坑
06/05
Switch 亮色没问题,深色全黑消失——用了 surface token 的旋钮在暗主题里对比度反转
CSS · 踩坑 · React
06/05
TypeScript `in` 收窄被 `?: never` 悄悄废掉了
TypeScript · 踩坑 · React
06/05
WebGL 着色器渲染正常却全黑——负 z-index 被父级背景盖住了
CSS · WebGL · 调试
06/04
流动极光背景为什么巨卡:别动 background-position,动 transform
CSS · 性能 · 动画
06/04
Base UI MenuGroupLabel 放错位置,点击时整页崩溃
React · 踩坑 · 调试
06/04
cargo-swift 打包 Rust → Swift 的两个隐形炸弹
Tauri · 调试 · 踩坑
06/04
@提及高亮吞掉半句中文——空白符分词器在 CJK 场景下的过捕获陷阱
踩坑 · 调试 · 架构
06/04
组件「功能不够用」?先查命名是否混用了两个概念
架构 · React · 踩坑
06/04
dnd-kit 可拖拽卡片内链接/按钮点击被吞——在组件层统一拦截而非逐处打补丁
React · 踩坑 · 调试
06/04
嵌入式 PTY 终端里进程监控的错误路——pid 藏起来了,但它的子孙还在你树里
macOS · 调试 · 踩坑
06/04
mx-auto + max-w 居中列收缩到内容宽度——flex item 的反直觉尺寸陷阱
CSS · 踩坑 · 前端
06/04
多 Session 并行写同一文件,git add 会把别人的 WIP 偷进你的 commit
Git · 调试 · 踩坑
06/04
用 libghostty-spm 把真实终端嵌进 SwiftUI——三个你绕不过去的坑
Swift · macOS · 调试
06/04
骨架屏不该有边框——别把 Skeleton 塞进 Card 组件
React · CSS · 踩坑
06/04
Ad-hoc 签名让 macOS 隐私弹窗每次构建都重新弹出
macOS · Tauri · 调试
06/04
macOS Dock 图标大白底:Squircle 和留白必须烘焙进素材
macOS · Tauri · Electron
06/04
Next.js 16 Turbopack 热添加动态路由后 overlay 卡死——幽灵报错不是代码 bug
Next.js · 调试 · 踩坑
06/04
Next.js dev 日志无上限膨胀吃满磁盘,SSR 输出残缺伪装成你的 bug
Next.js · 调试 · 踩坑
06/04
Next.js 静态导出的动态路由必须拆服务端壳
Next.js · 踩坑 · 架构
06/04
并行 Agent 派发前未验证共享 API Cheatsheet,一行错误炸出 53 个编译错误
架构 · 调试 · 踩坑
06/04
滑动胶囊指示器:反色文字必须住在胶囊里,胶囊必须在按钮层之上
React · CSS · 踩坑
06/04
child.kill() 杀不死 Chrome:僵尸进程占端口导致 CDP 第二次跑必挂
调试 · 踩坑 · Node.js
06/04
sticky 毛玻璃头部内容穿透:WebKit 的两个耦合陷阱
CSS · Tauri · 调试
06/04
SwiftUI 动态渐变边框叠在 Material 上,风扇狂转 GPU 拉满
SwiftUI · 性能 · 踩坑
06/04
Tailwind Preflight 把 SVG 变成块级盒,非 flex 按钮里的图标换行了
CSS · Tailwind · 踩坑
06/04
Tailwind 颜色 Token 写错了却不报错,元素直接变黑
Tailwind · CSS · 调试
06/04
Tailwind v4 升级后边框全变黑了?是 currentColor 在作怪
CSS · Tailwind · 踩坑
06/04
Timeline 时间轴圆点对齐时间戳而非正文:翻转渲染顺序而非像素推移
CSS · React · 调试
06/04
Turbopack dev 首次截图全白:不是渲染门控,是冷编译时序坑
Next.js · 调试 · 踩坑
06/04
WebGL 组件「dev 坏、prod 好」:被 StrictMode 毒化的 canvas
React · WebGL · 踩坑
06/04
把 .woff2 字体打包进 macOS 应用,CoreText 静默回退到系统字体
调试 · 踩坑 · SwiftUI
06/03
Affix 吸顶栏「逃跑」:中间滚动容器里 scroll 事件不冒泡
CSS · 调试 · 踩坑
06/03
本地构建全绿、CI 爆红——barrel 入口提交了但组件源码没提交
调试 · 架构 · 踩坑
06/03
Base UI Accordion 折叠动画:别量 scrollHeight,用它内置的 CSS 变量
CSS · React · 踩坑
06/03
Base UI 箭头消失之谜:floating-ui 只算一半偏移
React · CSS · 踩坑
06/03
Base UI CheckboxGroup 静默失效:是 value 在匹配,不是 name
React · 踩坑 · 调试
06/03
Base UI 没有 Drawer?用 Dialog + transform 自己搓一个
React · CSS · 踩坑
06/03
Base UI 导航菜单面板塌缩成 2×2px 的根因:Content 不能脱离文档流
React · CSS · 踩坑
06/03
Base UI Slider 焦点环怎么都不出来——`:focus-visible` 打在了不接收焦点的元素上
React · CSS · 踩坑
06/03
Base UI Positioner 没有 Portal 直接崩:浮层组件的强制依赖陷阱
React · 踩坑 · 架构
06/03
Base UI rc.0 的 Select 没有 placeholder prop——用 null 项注入绕坑
React · 调试 · 踩坑
06/03
Base UI Toast 测试:关闭按钮明明在 DOM 里,getByRole 却找不到它
React · 调试 · 踩坑
06/03
裸 CDP 截图永远返回 undefined:你连的是 Browser 端点,不是 Page 端点
调试 · 踩坑 · Chrome DevTools Protocol
06/03
CDP 截图抓到 FOUC:轮询计算样式才是正解
Next.js · 调试 · 踩坑
06/03
主题色对了照样露黑底:color-scheme 缺失让 macOS overscroll 穿帮
CSS · 调试 · 踩坑
06/03
d3-geo 渲染中国地图两个无声的坑:多边形内外翻转 + SVG 默认 150px
调试 · 踩坑 · 架构
06/03
DeepSeek V4 踩坑:模型名换代 + 思考模式不再是独立模型
踩坑 · 调试 · 架构
06/03
dotted-map 连线弧偏移:默认投影是椭球墨卡托不是等经纬
踩坑 · 架构 · React
06/03
git commit -- pathspec 同样会把残损 worktree 快照进 HEAD
Git · 调试 · 并发
06/03
git worktree + 软链 node_modules 不等于隔离:pnpm monorepo 下的幻象验证
调试 · 踩坑 · 架构
06/03
HoverCard 无限闪烁:焦点乒乓死循环与 initialFocus={false} 的救场
React · 踩坑 · 调试
06/03
命令式 Toast 在组件展示系统里重复弹出——Provider 多次挂载是根因
React · 架构 · 踩坑
06/03
macOS 13+ 系统设置侧边栏只剩「通用」——旧版深链接的定时炸弹
macOS · Tauri · Electron
06/03
MCP 浏览器被并发 Session 占用时,用 executablePath 启动独立 Chromium
调试 · Playwright · 踩坑
06/03
主题切换后数字归零:React 的 reconciler 悄悄覆盖了你的命令式写入
React · 调试 · 踩坑
06/03
MUI 桥接 CSS 变量 palette 时 theme.alpha 抛 Unsupported color
React · CSS · 调试
06/03
MUI palette 传 var() 直接炸:augmentColor 无法解析 CSS 变量的根因与正解
React · CSS · Next.js
06/03
嵌套折叠动画抖动:用 CSS grid-template-rows 彻底告别 JS 测量
CSS · React · 调试
06/03
多 Agent 并发抢 next build 锁,用隔离 distDir 绕过
Next.js · 并发 · 调试
06/03
构建脚本 import .ts 报 ERR_UNKNOWN_FILE_EXTENSION,用 --experimental-strip-types 一行解决
Node.js · TypeScript · 踩坑
06/03
分页省略号坏味道:「1 … 3」比「1 2 3」更难看
React · 踩坑 · 架构
06/03
拖拽手柄在真实鼠标下正常、合成事件下死掉——setPointerCapture 抛异常吞掉了整条 handler
React · 踩坑 · 调试
06/03
React 批处理陷阱:合成事件 dispatch 后同步读 DOM 只拿到旧值
React · 调试 · 踩坑
06/03
编译绿了,类型检查却挂:React HTMLAttributes 同名 prop 冲突与 Omit 解法
React · TypeScript · 踩坑
06/03
行级权限只堵了主列表,子列表和搜索还在泄漏
安全 · 架构 · MySQL
06/03
行级数据权限开启后,创建者反而看不到自己数据
架构 · MySQL · 安全
06/03
目录导航点击无响应、高亮跑偏——Scrollspy 硬编码 window 在内层滚动容器里全失效
React · CSS · 调试
06/03
SVG 圆形进度环从 3 点开始?用 SVG transform 属性而非 CSS 旋转
CSS · React · 踩坑
06/03
TanStack Table 是无头的,aria-sort 和排序箭头得你自己加
React · 踩坑 · 调试
06/03
Tauri macOS 发布后用户说「还是老版本」:三处版本号必须同步改
Tauri · macOS · 调试
06/03
设计 Token 的 border-radius 把 Checkbox 变成了圆形
CSS · Tailwind · 踩坑
06/03
无头截图永远看到动画末态?四个混淆因素逐个击破
调试 · CSS · Playwright
06/03
Webview 里不规则揭幕动画整层消失:SVG/CSS 滤镜 fail-closed,用 canvas
Canvas · CSS · Tauri
06/02
阿里云百炼图生图:qwen-image-2.0 不支持输入图,必须用 pro
踩坑 · 调试 · 架构
06/02
阿里云百炼图生视频:Token Plan 根本调不了,必须换通用 key + DashScope 异步接口
踩坑 · 调试 · 架构
06/02
Base UI 没有 Textarea 原语:用 Field.Control render 道绕,但 TypeScript 会咬你
React · 踩坑 · 架构
06/02
Base UI Field.Error 外部受控时红框有、报错文字消失的根因
React · 踩坑 · 调试
06/02
Base UI Tabs 滑动指示器:两个让你白忙半天的 API 陷阱
React · CSS · 踩坑
06/02
macOS 检测 App 是否安装,osascript `path to application id` 会偷偷把它启动
macOS · Tauri · 调试
06/02
Next.js 16 按目录去重 dev 服务器,换端口没用
Next.js · Tauri · 调试
06/02
并行 Agent 的 git add -A 会偷走你已暂存的文件
调试 · 踩坑 · 架构
06/02
RSC 模块图陷阱:Registry 把渲染函数拖进服务端 bundle
Next.js · React · 架构
06/02
Tauri v2 默认吞掉 HTML5 拖拽——dragDropEnabled 的隐形拦截
Tauri · 踩坑 · 调试
06/02
tauri-plugin-single-instance 在 dev 模式下把自己踢出局
Tauri · Rust · 踩坑
06/02
Tauri RunEvent::Reopen 是 macOS 专属,移植 Windows 时编译必爆
Tauri · Rust · 跨平台
06/02
Turborepo Monorepo 里桌面 Shell 的 beforeBuildCommand 把前端构建触发了两次
Tauri · Electron · 架构
06/02
Turborepo 全量测试红了,但锅不是你的
调试 · 架构 · 踩坑
06/02
DOM eval 说「没问题」,截图说「完全爆了」——UI 布局验证的认知陷阱
调试 · 踩坑 · CSS
06/02
Windows GUI 应用 spawn 子进程:黑色 cmd 窗口无限闪的根因与解法
Tauri · Electron · 调试
06/01
明明已经登录,点按钮却说「需要验证」:Electron + Playwright 双引擎 Session 隔离陷阱
Electron · 调试 · 踩坑
06/01
表存在性校验:COUNT(*) 对比 array.length,重复项导致永久误报「缺表」
MySQL · 调试 · 踩坑
05/31
阿里云百炼接口没有 CORS,Tauri 桌面应用要走 tauri-plugin-http
Tauri · 踩坑 · 调试
05/31
DeepSeek 不需要 Native 代理:浏览器/Tauri Webview 可直接 fetch
Tauri · 调试 · 踩坑
05/31
Electron 原生视图宽度被砍两刀:inset 与 flex 兄弟节点的双重扣减
Electron · 调试 · 踩坑
05/31
WebContentsView 盖住了弹窗——z-index 永远赢不了原生层
Electron · 踩坑 · 调试
05/31
Playwright 自动填表踩坑:layui 政务表单五个反直觉的坑
Playwright · 调试 · 踩坑
05/31
Tauri 桌面 App 自包含:内置静态 ffmpeg + 把 OpenCV 算法移植到 Rust
Tauri · Rust · 踩坑
05/30
配置了字段却没存进去——配置驱动系统的「死字段」陷阱
架构 · MySQL · 调试
05/30
Electron BaseWindow 下载在 Windows 上静默失败,Mac 正常——根因是缺少 will-download 处理器
Electron · 踩坑 · 调试
05/30
Next.js dev 下 CSS @import 链改了没效果?根因是 .next 缓存没失效
Next.js · CSS · 调试
05/30
Turbopack 的 instrumentation 坑:守卫条件写错,dev 侧效默默不跑
Next.js · Turbopack · 调试
05/30
nginx rewrite break 之后的 set 指令永远不会执行,变量为空导致 500
nginx · 调试 · 踩坑
05/30
文件监听第一次响应、之后永久沉默——Rust notify 的 inode 置换陷阱
Rust · Tauri · 调试
05/30
pdfjs-dist 在 Next.js dev 下崩溃:eval-source-map 与内置 webpack 运行时的致命冲突
Next.js · 调试 · 踩坑
05/30
Tauri 自定义标题栏拖动后 IPC 卡死几秒——用 AppKit 原生拖拽绕过
Tauri · 调试 · 踩坑
05/30
Tauri macOS 隐藏到托盘后 Dock 图标失效:必须处理 RunEvent::Reopen
Tauri · macOS · 踩坑
05/29
Tauri 窗口拖拽每隔几秒才动一下:极光背景的大号 blur 动画在饿死原生拖拽
Tauri · Electron · 性能
05/29
backdrop-filter 祖先元素悄悄劫持了 fixed 弹层的定位原点
CSS · React · 调试
05/29
条件空状态 early-return 静默卸载持久子组件
React · 调试 · 踩坑
05/29
@fontsource 裸包 side-effect import 触发 TS2882,用 /index.css 子路径修复
TypeScript · Vite · 调试
05/29
HeroUI Tooltip.Trigger 的 inline-block 悄悄击穿了 flex 省略号
React · CSS · 踩坑
05/29
发版脚本只写部署清单、忘写 package.json,版本号在前端冻结半年
Electron · Next.js · 踩坑
05/29
Tauri 暗色 App 全屏菜单栏发白——window theme 只管窗口,菜单栏得用 NSApp
Tauri · macOS · 踩坑
05/29
Tauri 2 macOS 拖拽放大窗口闪出灰黑条纹:backgroundColor 才是真正的修法
Tauri · macOS · 调试
05/29
把 ghostty 渲染器嵌进 Tauri/Electron webview?这条路不存在
Tauri · Electron · 调试
05/29
xterm.js 6 的滚动条不是原生的,CSS 全部失效是正常的
调试 · 踩坑 · CSS
05/29
xterm.js FitAddon 列数卡死,ResizeObserver 无法自愈的根因
调试 · 踩坑 · Electron
05/29
xterm.js 多面板布局切换后终端只填半宽——PTY resize 是个坑
Electron · 调试 · 踩坑
05/28
PATCH 返回 200 数据却消失了——内存合并对象不等于数据库真相
踩坑 · 架构 · 调试
05/28
全角括号藏在半角里:MySQL 说相等,JS 说不认识
MySQL · 调试 · 踩坑
05/28
新增枚举值 API 返回 200 但数据消失——N 层白名单各自为政的静默丢弃
架构 · MySQL · 调试
05/28
「读取失败:读取失败」——真实错误栈藏在容器 stderr 里
调试 · 架构 · Docker
05/28
LLM Fallback Prompt 把「借来的公司名」写成事实:Identifying Field 必须剥离
调试 · 架构 · 踩坑
05/28
JSESSIONID 在浏览器自动化里是个骗子:登录检测要看重定向终点,不要看 Cookie 名
调试 · 踩坑 · Playwright
05/28
normalize 函数的白名单悄悄吃掉了你刚写入的字段
MySQL · 架构 · 调试
05/28
自动保存 + 关 Tab 时旧闭包把新内容覆盖回去了
React · 踩坑 · 调试
05/28
元数据平台的 Schema 在运行时注册,grep repo 必然空手而归
架构 · 调试 · 踩坑
05/27
Electron app.getVersion() 开发模式静默返回框架版本号
Electron · 调试 · 踩坑
05/27
Monospace + letter-spacing 套中文:末尾汉字孤立换行的根因
CSS · 调试 · 踩坑
05/27
多标签 SPA 里 usePathname() 永远返回 Shell URL
React · Next.js · 架构
05/27
MySQL DDL 隐式提交:「空跑验证」其实已写入生产
MySQL · 踩坑 · 数据库
05/27
Electron Preload 注入的 window 全局变量在渲染路径里触发 Next.js Hydration Mismatch
Next.js · Electron · React
05/26
下拉 API 字段投影过窄,undefined 静默渲染成 0
ThinkPHP · 调试 · 踩坑
05/26
自动保存静默丢数据:草稿模式与严格校验的双模式设计
React · 架构 · 踩坑
05/26
管道数据被 heredoc 静默吞掉:`python3 -` 与 `<<'PY'` 不能共存
bash · 调试 · 踩坑
05/26
批量写入接口返回 200 却悄悄丢数据:res.ok 陷阱
调试 · 踩坑 · 架构
05/26
Cron 批量任务行级 Claim Token:彻底消灭重复发送
MySQL · 并发 · 踩坑
05/26
两个服务同写一张子表,队列只保护了一个——Duplicate entry 的跨服务根因
MySQL · 并发 · 架构
05/26
改运维脚本前先 ssh 确认容器名——别让「模板意图」覆盖「服务器现实」
调试 · 踩坑 · 架构
05/26
一次点击触发 800 条 SQL:衍生状态持久化的写放大陷阱
性能 · MySQL · 架构
05/26
Electron iframe 里 window.electronAPI 是 undefined——contextBridge 不注入子帧
Electron · 踩坑 · 调试
05/26
Electron WebContentsView 位置偏高?你传的坐标系根本不对
Electron · 调试 · 踩坑
05/26
FastAdmin $noNeedRight 从 ['*'] 改成方法列表,竟然让所有人都 403
FastAdmin · ThinkPHP · 踩坑
05/26
卡片最后一行「飘」到边框外——外层 min-height 与嵌套 grid button 的 Chromium 布局陷阱
CSS · 调试 · 踩坑
05/26
HeroUI v3 在 Next.js App Router 里反复爆炸:server-default 文件的 client-only 陷阱
Next.js · React · HeroUI
05/26
HeroUI v3 Modal 偏左不居中?Backdrop 是包裹层不是自闭合标签
React · 踩坑 · 调试
05/26
HeroUI v3 Tabs.Indicator 炸出 SharedElement 错误:两个约束互斥的死局
React · 踩坑 · 调试
05/26
HeroUI v3 的 variant 不向后兼容:从 NextUI v2 迁移时所有 variant= 都是嫌疑人
React · 踩坑 · 调试
05/26
SPA 的 `<Link>` 会悄悄丢掉 `?embed=1`,然后 iframe 套娃递归了
Next.js · React · 踩坑
05/26
给父组件加了 'use client',framer-motion 扫光文字就消失了
React · Next.js · 踩坑
05/26
MySQL 并发写入 fsync 悬崖:rows_examined=0 却慢 1s 的根因
MySQL · 性能 · 并发
05/26
next build 触发 instrumentation 噪声:模块级去重为什么会失效
Next.js · 调试 · 踩坑
05/26
触控板捏合抖成筛糠?React 高频事件 + state-as-effect-dep 的连环坑
React · 性能 · 踩坑
05/26
批量任务「撤回」按标题模糊删,误伤了整张共享主表
MySQL · PHP · 踩坑
05/26
AbortError: Transition was skipped 不是 React 19 的锅,是 View Transitions API
React · Next.js · 调试
05/26
vue-element-admin 加菜单别只改路由:meta.roles 与 sys_menu 必须双写
Vue · 架构 · 踩坑
05/26
后台推订阅消息返回 success 但用户全没收到——微信授权 one-shot 机制踩坑
微信小程序 · 踩坑 · 调试
05/23
阿里云 OSS S3 兼容接口:LIST 必须用 Virtual-Host 模式
调试 · 踩坑 · 架构
05/23
Electron macOS Tray:setContextMenu 会吞掉 click 事件
Electron · macOS · 踩坑
05/23
Electron 打包后 runtime asset 消失:extraResources + process.resourcesPath 的正确姿势
Electron · 踩坑 · 调试
05/23
Electron 最小化到托盘:Tray 静默失败会留下无法退出的僵尸进程
Electron · 踩坑 · 调试
05/22
登录返回 200 但下一个请求立刻 401:Cookie Secure 标志在 HTTP 环境下的静默丢弃
安全 · 调试 · Tauri
05/22
抖音视频解析器成功返回 URL,但下载全部 404——iesdouyin 分享页 play_addr 死链排查
调试 · 踩坑 · Python
05/21
Element UI el-select 显示原始值而非 label:v-model 类型严格匹配的隐形坑
Vue · Element UI · 调试
05/20
Bun + Playwright 在 Windows 上卡死 180s:ws 解析 101 + 5-fd 管道双重陷阱
Tauri · Playwright · 踩坑
05/20
跨平台桌面 App 的隐形炸弹:Default 值悄悄伪装成另一个平台
Tauri · Electron · 跨平台
05/20
Docker 清理脚本用字典序排 SHA,把刚 build 的镜像删了
Docker · 调试 · 踩坑
05/20
ESM 顶层 await 之后的 const 声明会触发 TDZ 崩溃
调试 · 踩坑 · 架构
05/20
git status 看不见你的修改?文件是渲染产物,找模板才是正解
调试 · 踩坑 · Tauri
05/20
Next.js App Router 下 `_` 前缀目录路由静默消失,middleware 把 404 伪装成 403
Next.js · 调试 · 踩坑
05/20
国内 Playwright 装浏览器卡死:ECONNRESET + 只装一半的双重坑
Playwright · 踩坑 · 调试
05/20
PowerShell 5.1 设空字符串环境变量 = 静默删除它
调试 · 踩坑 · Tauri
05/20
re.sub 的替换字符串是第二套转义体系,raw string 救不了你
Python · 调试 · 踩坑
05/20
发版管线中途 prune devDeps,下游 check 集体失联
调试 · 踩坑 · Electron
05/20
发版日志全绿、用户装完却是旧版本——readdir 字典序吃掉新产物
Tauri · Electron · 调试
05/20
npm install 静默改了 lockfile,下次 release 的 git checkout 就挂了
调试 · 踩坑 · 架构
05/20
Tauri 2 多构建变体 ACL 报错:remote.urls 是权限门,不是标签
Tauri · 踩坑 · 调试
05/20
Tauri 2 event name 禁用点号——Mac 跑得好好的,Windows 一启动就崩
Tauri · 踩坑 · 调试
05/20
Tauri 2 OTA 完全沉默——updater plugin 注册了≠会自动 check
Tauri · 踩坑 · 调试
05/20
ThinkPHP `/d` 过滤器把 UUID 截成前导数字,查库永远 not found
ThinkPHP · PHP · MySQL
05/20
Windows CI 构建机:MSYS-ssh 读 known_hosts 失败的 NULL DACL 陷阱
调试 · 踩坑 · Windows
05/20
Windows 构建机 npm ci EPERM:是僵尸 node 进程锁住了原生 addon
Tauri · 调试 · 踩坑
05/20
ssh-copy-id 说成功了但还是密码登录:Windows OpenSSH 的三层陷阱
调试 · 踩坑 · 安全
05/19
set -u 下中文全角标点紧贴变量名导致「unbound variable」的诡异报错
调试 · 踩坑 · 架构
05/19
手写 Tauri 2 骨架的五个反直觉坑
Tauri · 踩坑 · Electron
05/19
Tauri 2 内网 OTA 静默失败:不是必须 HTTPS,是你少了一个 flag
Tauri · 踩坑 · 调试
05/18
Modal 一打开页面就跳:`place-items` 和 `place-content` 根本不是一回事
CSS · React · 踩坑
05/18
国内 Docker Registry Mirror 2026 存活清单:旧教程害人不浅
Docker · 运维 · 踩坑
05/18
装了根证书 Safari 亮绿锁 Chrome 却 ERR_CONNECTION_CLOSED
调试 · 踩坑 · 安全
05/18
Debian slim 镜像里 apt 换源必须用 http 不能 https
Docker · 调试 · 踩坑
05/18
Element UI el-cascader 显示对、校验红:整对象替换漏写 key,undefined 中间态卡死校验
Vue · Element UI · 调试
05/18
el-select 选了值还报「必填」——Element UI 表单验证触发器踩坑
Vue · Element UI · 踩坑
05/18
后端 SQL 已聚合正确,行被炸开的元凶却在前端 flatMap
Vue · 架构 · 调试
05/18
内存 Map 镜像 + 全量快照持久化:写入前不先 hydrate,悄悄清空所有并发 session
Node.js · Next.js · 架构
05/18
macOS 浏览器拒绝内网 HTTPS,curl 却完全正常——397 天叶证书硬限制
调试 · 踩坑 · 安全
05/18
curl 能通、浏览器不通——macOS TUN 代理劫持 LAN 流量的排查全记录
调试 · 踩坑 · macOS
05/18
Docker 里容器 env 明明是对的,客户端 URL 却死活不变——Next.js NEXT_PUBLIC_* 必须是构建参数
Next.js · Docker · 调试
05/18
Playwright CDPSession 类型定义是 CDP 协议的子集,运行正常却 tsc 报错
调试 · 踩坑 · 架构
05/18
我填的经纬度,保存后变成了湖州
调试 · 架构 · Java
05/18
systemd-resolved 把 NXDOMAIN 当终局答案:DNS 兜底列表为何永远不生效
调试 · 踩坑 · 架构
05/18
Tauri 2 打包 DMG 卡死:rw 镜像残留挂载的根因与 hdiutil 绕行方案
Tauri · macOS · 调试
05/18
Tauri --config 路径坑:相对于 CWD,而非 src-tauri
Tauri · 踩坑 · 调试
05/18
Claude Code 把 git push to main 拦了三次:auto mode classifier 与 trunk-based 部署的握手陷阱
调试 · 踩坑 · 架构
05/18
nohup 骗了我:Ubuntu 22.04 的 logind 会在 SSH 退出时杀掉所有后台进程
调试 · 踩坑 · 架构
05/18
Vitest 4 升级后启动崩溃:rolldown native binding 在 Node 20 上悄悄缺失
调试 · 踩坑 · Node.js
05/17
Tauri 白屏不报错,原来是 TLS 主机名不匹配
Tauri · 调试 · 踩坑
05/16
Ali-OSS 默认 30s 超时太激进,三层回退只挡 404 不挡抖动
调试 · 踩坑 · 架构
05/16
目录名末尾多了个空格,Windows CI 直接 exit 128
调试 · 踩坑 · Git
05/16
git push 报 HTTP 400 却提示「Everything up-to-date」——罪魁是 1MB 的上传缓冲区
调试 · 踩坑 · Git
05/16
cat /proc/PID/environ 没有你要的 key?别急着下结论
调试 · Linux · Node.js
05/16
重构改了入口路径,systemd 不知道——Release 轮转部署的致命盲区
部署 · 调试 · 架构
05/16
Tailwind v4 的 dark: 全部哑火——两套暗色系统互不相知
CSS · Tailwind · Next.js
05/16
Tauri 2 NSIS 自动更新流水线静默失败:.nsis.zip 已被移除
Tauri · 踩坑 · 调试
05/15
awk 范围模式的隐形陷阱:起始行同时匹配结束模式
调试 · 踩坑 · Shell
05/15
外部 API 返回 success,但数据压根没写进去——幽灵写入的排查与防御
架构 · 调试 · 踩坑
05/15
JVM 存活监控别盯 logback 滚动文件,要盯 stdout
Java · Spring Boot · 调试
05/15
监控告警用了永远为真的条件:createtime 从不被 UPDATE 触碰
MySQL · ThinkPHP · 调试
05/15
PHP heredoc 里写 // 注释,SQL 直接炸:用 -- 不用 //
PHP · MySQL · 踩坑
05/15
SPA 迁 Next.js 路由时的子标签碰撞:两个入口撞向同一个 URL
Next.js · React · 架构
05/15
Tailwind Preflight 让 docx-preview 浮动图片消失的真相
CSS · Tailwind · Next.js
05/15
Tauri 2 macOS 签名公证三层坑:dmg 无票、.node 未签、密码被 shell 吃掉
Tauri · macOS · 踩坑
05/15
ThinkPHP where('col', '') 无法匹配 NULL 行,UPDATE 永远返回 0
ThinkPHP · MySQL · PHP
05/15
用户说「时间字段错了」,但真正的坑藏在 WHERE 枚举里
MySQL · 调试 · 踩坑
05/15
Write 工具的 JSON 转义陷阱: 变成真实 NUL 字节写进文件
调试 · 踩坑 · 架构
05/14
宝塔面板 chattr +i 锁住 cron 文件:root 也写不进去
调试 · 踩坑 · 运维
05/14
Claude Code 本地日志比 Dashboard 多一倍?cache_read 的隐藏折扣坑
调试 · 架构 · 性能
05/14
DOCX 字段绑定连续改三次还在偏移?根因是坐标空间没对齐
调试 · 踩坑 · 架构
05/14
外部同步主表字段缺失,"懒回填"做完被同步任务一键洗空
MySQL · ThinkPHP · 数据同步
05/14
宝塔 chattr +i 锁死 /usr/bin,apt install 永远 Operation not permitted
调试 · 踩坑 · Linux
05/14
「等人」状态被当成「等机器」——轮询频率分类错误引发的请求爆炸
性能 · 架构 · 调试
05/10
Cron 阈值小于周期,TTL 资源必有失效空窗
踩坑 · 调试 · 架构
05/10
Drizzle ORM 的沉默丢字段:schema 漂移让写操作无声消失
架构 · 调试 · 踩坑
05/10
Node execFile 捕获不到子进程真实报错?错在只看 stderr
Node.js · 调试 · 踩坑
05/10
AI 做需求覆盖审计时 grep 抽样的致命误报
调试 · 架构 · 踩坑
05/10
Tauri Sidecar 与服务端双写竞态:旧二进制覆盖新代码的 90 分钟血案
Tauri · 并发 · 踩坑
05/10
php think 命令注册 OK 却跑不起来——PHP 8.2 把 null 传 hash_hmac 变成了 Fatal
ThinkPHP · PHP · 踩坑
05/10
企业微信 batch/get_by_user 写死 limit:100 不传 cursor,>100 客户必丢
企业微信 · 踩坑 · 调试
05/10
企业微信同步链路中 follow_user 字段漏写导致客户数静默归零
企业微信 · 调试 · 踩坑
05/09
看板显示零失败、运营说全断了——回调 service 的「静默冰山」陷阱
ThinkPHP · 架构 · 调试
05/09
Element UI Dialog 长内容把「确定」按钮挤出视区的根因与正解
Vue · Element UI · CSS
05/09
Element UI el-input readonly 灰底失效:inline style 只到外层 div,::v-deep 才能穿进去
Vue · Element UI · CSS
05/09
nohup 忘 kill:长跑 root 进程悄悄污染 PHP-FPM 共享 runtime
ThinkPHP · 调试 · 踩坑
05/09
并发 25 个 Agent 时上下文爆了——把 Payload 落磁盘就省了 96% token
架构 · 调试 · 踩坑
05/09
fastcgi_finish_request 救 ACK 不救业务 Token:PHP-FPM 双时钟模型踩坑
PHP · 踩坑 · 架构
05/09
PHP-FPM 与 CLI 的 disable_functions 不对称:SSH 实测通过不代表线上能用
PHP · 调试 · 踩坑
05/09
重构前置 service 调用前没 grep 内部 SELECT,结果字段渲染漏字
架构 · 调试 · 踩坑
05/09
Root Cron 污染 PHP-FPM 共享 runtime——看板绿灯、业务全断 38 小时
ThinkPHP · 踩坑 · 调试
05/09
改了 crontab -e 还是有 root 文件?Linux cron 三级投放点排查实录
调试 · 安全 · 踩坑
05/09
ThinkPHP 5 异步任务锁文件「消失」之谜:RUNTIME_PATH 不在你以为的地方
ThinkPHP · PHP · 调试
05/09
企业微信 41051:欢迎语发过一次就永久封死,换 welcome_code 没用
企业微信 · 踩坑 · 调试
05/09
企业微信回调链路:send 前置撞上隐式 SELECT 依赖,欢迎语渲染漏字永久阻断客户
企业微信 · PHP · 架构
05/09
企业微信回调日志多行 ≠ 客户重复操作,是平台的多级重试
企业微信 · PHP · 调试
05/09
window.confirm() 返回 undefined:按钮点了没反应的隐形陷阱
React · Tauri · Electron
05/08
国内云服务器 fetch 大厂 CDN 永远 403:datacenter IP 黑名单才是真凶
架构 · 踩坑 · Electron
05/08
Monorepo 同一次 push 触发两条 CI,Web 白跑一遍的根因与修法
GitHub Actions · 调试 · 架构
05/08
OpenRouter 中转也救不了:X-Forwarded-For 透传让境外模型在国内依然 403
架构 · 调试 · 踩坑
05/08
同一文件,两条路径:打包后 A 模块成功 B 模块 not-found
Tauri · 调试 · 踩坑
05/08
开发工具用自己的 repo 做测试,上线秒崩——「外部输入盲区」踩坑实录
调试 · 架构 · 踩坑
05/08
TypeScript strict 模式下 let + 闭包赋值导致类型收窄失效
TypeScript · 踩坑 · 调试
05/08
Vitest 并行跑测试,行消失了——fileParallelism 与共享 DB 行的竞争陷阱
调试 · 并发 · 踩坑
05/07
el-table fixed=right 弹窗内「幽灵列」透视:双 tbody + stacking context 串味
Vue · Element UI · CSS
05/07
FastAdmin admin 模块默认禁止外部路由,CORS 报错是假象
ThinkPHP · 踩坑 · 调试
05/07
前端筛了,导出却全量——服务端导出的筛选条件漂移陷阱
Vue · 前端 · 踩坑
05/07
下拉选项 value 对不上主数据 key,Element UI 静默失败显示原始编码
Vue · Element UI · 调试
05/07
ThinkPHP success() 被 catch 吃掉:HttpResponseException 的反直觉陷阱
ThinkPHP · PHP · 踩坑
05/07
ThinkPHP 5 的 max() 为什么把日期截成 4 位数字
ThinkPHP · 踩坑 · 调试
05/07
企业微信 send_welcome_msg 不替换占位符——UI 与 API 是两套渲染引擎
企业微信 · 踩坑 · PHP
05/06
ThinkPHP 5.0 的 leftJoin 根本不存在:Query Builder 跨版本兼容陷阱
ThinkPHP · PHP · 踩坑
05/06
Vue Object Prop 没有 default,$emit 被悄悄截断
Vue · 踩坑 · 调试
05/01
ali-oss SDK 签名不匹配:两个与 AccessKey 无关的隐藏陷阱
调试 · 踩坑 · 架构
05/01
DeepSeek Anthropic 兼容层的模型名谎言:res.model 不可信
调试 · 踩坑 · 架构
05/01
fetch 错误处理器里的 body stream 只能读一次陷阱
调试 · 踩坑 · 架构
05/01
PaddleOCR PP-StructureV3 响应结构与基础 OCR 不同,复用老解析器静默返回空文本
调试 · 踩坑 · OCR
05/01
tsx 下 page.evaluate 报 __name is not defined——esbuild --keep-names 的序列化陷阱
Playwright · 调试 · 踩坑
05/01
SPA 爬虫 Selector 每周静默失效,让 LLM 凭空编造内容
调试 · 踩坑 · 架构
05/01
只 grep 入口函数,SSOT 基线就是假的
架构 · 调试 · 踩坑
04/30
「布尔列」未必存 0/1:写 SQL 前先 GROUP BY 实测
MySQL · 踩坑 · 调试
04/30
CSS transition 进退场用同一个 class 写——进入顺滑、退出拖尾的根因
CSS · 微信小程序 · 调试
04/30
会员数据分析里的幽灵门店:默认渠道桶污染全复盘
MySQL · 踩坑 · 调试
04/30
PR 验证 grep 与 Required Changes 各自维护——「PASS」背后的静默漏检
调试 · 踩坑 · 架构
04/30
`import 'dotenv/config'` 不加载 .env.local,密钥永远 undefined
Node.js · Next.js · 调试
04/30
Element UI $confirm 把 h 函数渲染成源代码字符串的真相
Vue · Element UI · 踩坑
04/30
Playwright 登录检测假阳性:DOM 选择器骗了你,session cookie 才是真相
Playwright · 调试 · 踩坑
04/30
UI 列空白≠字段为 NULL:悬挂外键引用才是真凶
MySQL · 调试 · Java
04/30
第三方 POS 接口只传两个字段,开卡门店永远不更新
PHP · 踩坑 · 调试
04/30
微信小程序 swiper 受控双向绑定引发切后台重进抖动
微信小程序 · 踩坑 · 调试
04/29
架构师 Review 必须 grep 运行时,光看 Spec 会翻车
架构 · 调试 · MySQL
04/29
CHAR(36) 不等于 UUID:列类型不代表运行时语义
MySQL · 踩坑 · 调试
04/28
级联填充的「双重严格」陷阱:源行查找与目标投影必须用不同宽严度
架构 · 踩坑 · 调试
04/28
配置驱动的字段别名不是真实列:动态 SQL 生成前必须先做物理映射
MySQL · 架构 · 调试
04/28
一个 grep 差点删掉正在用的 Spring Bean
Java · Spring Boot · 架构
04/28
抄了同文件 sibling 却仍失败:输入象限没对齐才是真根因
微信小程序 · 调试 · 踩坑
04/28
贪心正则把中文备注吃掉了——枚举后缀剥离的经典误伤
正则 · 踩坑 · 前端
04/28
双层看门狗踩坑:用 start_time 判断任务存活,坑惨了
后端 · 架构 · 踩坑
04/28
权限从 fail-open 翻到 fail-closed,上线后用户看到空白页
安全 · 架构 · MySQL
04/28
全量封锁新 Lint 规则,反而让团队绕过 pre-commit hook
架构 · 调试 · 踩坑
04/28
.env 被 git 追踪后,「全量轮转 + 改写历史」的应激反应为什么是错的
安全 · 调试 · 架构
04/28
OSS 预签名 URL 存库 = 定时炸弹,批量 403 的根因与根治
安全 · 架构 · MySQL
04/28
axios 默认 JSON Body,PHP $_POST 却是空的——前后端参数透传的静默陷阱
PHP · ThinkPHP · 踩坑
04/28
PHP 长驻 Worker + PDO 持久连接 = 云数据库空闲后批量 500
PHP · ThinkPHP · MySQL
04/28
PII 脱敏上线 13 天,拨打按钮静默失效——下游消费者审计的血泪教训
安全 · 微信小程序 · 踩坑
04/28
11 轮全失败,用户一句话命中真因——AI 调试的「沉没成本陷阱」
微信小程序 · 调试 · 踩坑
04/28
微信小程序锁滚三轮排查:Canvas 越界才是橡皮筋的真凶
微信小程序 · CSS · 调试
04/28
微信小程序 scroll-view 锁滚失效:flex 链 4 件套不够用时,用 absolute inset:0 钉死
微信小程序 · CSS · 踩坑
04/27
地址下拉出现「市辖区」「县」:GB/T 2260 占位词污染数据库的三层防线
MySQL · 踩坑 · 调试
04/27
JDK 25 下 Lombok 1.18.x 静默不生成 getter/setter
Java · Spring Boot · 踩坑
04/27
Spring Boot 多模块只更新一个 JAR,写操作无声失败
Spring Boot · 架构 · 踩坑
04/27
macOS 菜单栏 App 重复启动留下幽灵图标,LSUIElement 单实例守卫
macOS · 调试 · 踩坑
04/27
「透传代理」不等于「无责代理」:中间层字段缺失的沉默数据损毁
PHP · 架构 · 踩坑
04/27
ERP 对接踩坑:organizationId 不是 counterCode,静默成功却写入 null
PHP · 架构 · 踩坑
04/27
position: relative + top 不会推移兄弟元素——CSS 偏移的反直觉陷阱
CSS · 踩坑 · 微信小程序
04/27
XCTest 全班 abrt 崩溃:一个空 deinit 解决 Swift 回部署运行时的 libmalloc 双释放
Swift · 调试 · 踩坑
04/27
wx:if 隐藏元素导致布局跳动?visibility:hidden 才是正解
微信小程序 · CSS · 踩坑
04/27
下拉选「全部」选了等于没选——Vendor 组件 Falsy 检查吞掉空字符串
Vue · 踩坑 · 调试
04/24
网易云音乐第三方库分页被锁死,绕过 weapi 加密用 legacy 接口救场
Python · 调试 · 踩坑
04/22
npm install -g 报成功却找不到包目录——postinstall 原子回滚坑
调试 · 踩坑 · Node.js
04/20
FastAdmin 默认 .gitignore 静默吞掉所有 *.sql 文件
调试 · 踩坑 · ThinkPHP
04/20
UNION 子查询修好了 OR 索引合并,却把 ORDER BY 索引打掉了
MySQL · 性能 · 调试
04/20
ThinkPHP 5.0 Config::get 第二参数是 scope 不是 default
ThinkPHP · PHP · 踩坑
04/20
ThinkPHP 5 Model 根本没有 newQuery()——Laravel 老手必踩的 ORM 迁移坑
ThinkPHP · PHP · 踩坑
04/20
ThinkPHP 5.0 分页接口一加关键词搜索就 HY093,根因是 count() 污染了 bindings
ThinkPHP · PHP · 调试
04/20
ThinkPHP 5.0 管道字段 LIKE 搜索:传单值静默丢条件或炸 PDO
ThinkPHP · PHP · MySQL
04/20
微信小程序统计文本不能挂 reveal flag:wx:if 导致整块闪烁
微信小程序 · 踩坑 · 调试
04/20
微信小程序弹窗滚动穿透:scroll-view 是杀手,4 件套才能封死
微信小程序 · CSS · 踩坑
04/20
微信小程序弹窗三段式 Flex:一个 min-height:0 救了整个布局
微信小程序 · CSS · 踩坑
04/20
微信小程序分包不能嵌套分包——一个让编译器报 should not contain 的隐藏禁令
微信小程序 · 踩坑 · 调试
04/20
微信小程序分包悄悄越线:亚稳态累积炸掉全员提交
微信小程序 · 调试 · 踩坑
04/20
van-popup 锁滚三件套:lock-scroll 只锁遮罩,背景穿透靠 page-meta
微信小程序 · 踩坑 · CSS
04/18
组织拆分后接口只改了一半,另一侧悄悄坏掉
架构 · 踩坑 · 安全
04/18
反规范化标签字段别让用户填——从 FK 派生,不是表单输入
MySQL · 架构 · 踩坑
04/18
「暂无数据」掩盖了三种截然不同的故障,用自诊断空态拆开它
React · 架构 · 踩坑
04/18
字段渲染器的 if-else 地狱——用策略注册表一刀斩断
React · 架构 · 踩坑
04/18
策略注册表里调 Hook 被 ESLint 封杀——PascalCase 子组件是唯一解
React · 架构 · 踩坑
04/18
DRY 害了我——用「消除重复」把历史遗留假设写死进常量的踩坑
架构 · 踩坑 · 调试
04/17
API 投影裁掉权限字段,前端过滤返回空表
架构 · 调试 · 踩坑
04/17
审批表单字段集来源读错节点,四轮修复全部打在症状上
架构 · 调试 · 踩坑
04/17
级联字段靠配置行识别,不靠 type 字段——一次多节点审批表单的踩坑实录
架构 · 调试 · 踩坑
04/17
级联下拉永远「暂无选项」——parent_field_key 指向了 alias 而不是实际存储 key
MySQL · 架构 · 踩坑
04/17
nginx 本地 200、外网超时——根在云安全组不在防火墙
调试 · 架构 · 踩坑
04/17
平台敏感 Bug:复制可工作的兄弟实现,比理论推断快 10 倍
微信小程序 · 调试 · 踩坑
04/17
前后端双层权限过滤漂移:让两个错误数字对齐并不等于修好了 Bug
架构 · 调试 · 踩坑
04/17
DDL 有字段不等于有数据:外部同步表的 100% 空字段踩坑
MySQL · 调试 · 踩坑
04/17
FastAdmin noNeedLogin 配了 ['*'] 还是 401,元凶是 new 了另一个 Controller
ThinkPHP · FastAdmin · 踩坑
04/17
字段别名方向判断陷阱:一行 alias 让条件分支永远为 false
架构 · 调试 · 踩坑
04/17
修了一个 URL 参数 bug,同名字面量从另外四个地方继续出血
架构 · 调试 · 踩坑
04/17
表单提交发全量状态,把 403 和审计污染一起发过去了
React · 前端 · 踩坑
04/17
后端悄悄换了 API 字段结构,前端在发布窗口期集体崩溃——规范化层救场
微信小程序 · 架构 · 踩坑
04/17
git fetch 显示 [new branch] 不是真分叉,是你自己在两台机器上重复提交了
Git · 调试 · 踩坑
04/17
功能明明「以前有」,现在代码里找不到——用 git pickaxe 反查被静默删除的历史
调试 · Git · 踩坑
04/17
catch:touchmove 让 iOS 真机 scroll-view 彻底罢工——WebKit Touch Session 所有权机制
微信小程序 · 踩坑 · 调试
04/17
按钮做完了,运营却翻了 18 页——列表操作功能的 UX 盲区
Vue · 踩坑 · 架构
04/17
React 多卡片页面:Stack Trace 指向的 Card 和用户说的不是同一个
React · 调试 · 踩坑
04/17
「已授权」背后的谎言:误导性完成态 Flag 让排查多走三条弯路
架构 · 调试 · 踩坑
04/17
PII 脱敏一刀切:把引流二维码当个人信息砍掉,C 端业务整体断裂
安全 · 踩坑 · 企业微信
04/17
25 个单元测试全绿,上线 5 分钟后用户报 bug
React · 踩坑 · 架构
04/17
本地跑得好好的备份 SQL,上了 RDS 直接 1786 报错
MySQL · 踩坑 · 架构
04/17
React Context Provider 收到 subset 就会静默失效
React · 踩坑 · 架构
04/17
软删除只改了写路径,读路径全是幽灵行地雷
MySQL · 数据库 · 踩坑
04/17
CSV 字符串被当等值匹配,仪表盘四个接口同时静默返空
MySQL · ThinkPHP · 调试
04/17
IN 查询扫了 200 万行却只取 10 条——用「日期夹逼」零 DDL 提速 3750 倍
MySQL · 性能 · 调试
04/17
「SSoT 漂移」误报:先确认谁是运行时真正的数据源
架构 · 调试 · MySQL
04/17
「已修复」与「还是坏的」同时成立:先查代码有没有部署再说
调试 · 踩坑 · 架构
04/17
van-popup 关闭动画中内容闪空壳——用 after-leave 解耦才是正解
微信小程序 · 踩坑 · CSS
04/17
Vitest 位置式 Mock 队列漂移:新增一条 SQL 让六个测试全红
Vitest · 调试 · 踩坑
04/17
Vitest 测 .tsx 报 React is not defined,构建却能过——esbuild classic runtime 惹的祸
React · Vitest · Next.js
04/17
自定义 TabBar 吃掉了最后一行点击——微信小程序 scroll-view 底部占位坑
微信小程序 · CSS · 踩坑
04/17
工作流配置页 Badge 数字对不上:分子分母来自不同候选集
架构 · React · 踩坑
04/16
Excel 导出列显示 UUID / 枚举 key,页面却显示正常——两条数据通路撕裂了
React · 踩坑 · 前端
04/15
AES-256-GCM 可逆密码存储的四个致命坑
Next.js · 安全 · 踩坑
04/15
点击「开始同步」后立刻刷新,为什么永远看到「空闲」?
Vue · 架构 · 踩坑
04/15
快速连点 Checkbox 触发中间表竞态:前端防抖 + 后端 INSERT IGNORE 双保险
MySQL · React · 并发
04/15
ThinkPHP 跨库 leftJoin 静默返回 null,用两步查询+PHP 内存合并替代
ThinkPHP · MySQL · PHP
04/15
外部 API 数据同步的 12 个无声陷阱
PHP · MySQL · ThinkPHP
04/15
v-html + Markdown 转换器的隐形 XSS 炸弹,DOMPurify 一行堵死
Vue · 安全 · 踩坑
04/15
多登录路径写入不对称,同一用户身份字段悄悄漂移
Java · MySQL · 架构
04/15
第三方 API 已成功但本地事务回滚,钱出去了记录没了
ThinkPHP · MySQL · 架构
04/15
外部数据同步:高水位标记提前写入导致明细永久跳过
架构 · 调试 · 踩坑
04/15
点击「审批通过」为什么会卡半秒?await 了一个不该等的通知
Vue · 架构 · 踩坑
04/15
git filter-repo 在生产机上跑完,nginx 开始 404——记一次仓库瘦身踩坑
调试 · 踩坑 · 架构
04/15
GitHub Actions SSH 脚本里嵌套 Heredoc 会让 ${{ secrets }} 炸掉
调试 · 踩坑 · 架构
04/15
表格列宽莫名膨胀到 150px?罪魁祸首是 input 的隐式 size=20
CSS · 踩坑 · React
04/15
HTML5 原生拖拽的幽灵图片坑:用 1×1 离屏 div 彻底接管拖拽视觉
React · CSS · 踩坑
04/15
BUILD SUCCESS 骗了我:Java @Async 方法下线 + 残缺仓库部署事故全记录
Java · Spring Boot · 踩坑
04/15
date() 混进 Hash 导致缓存每天失效——LLM 响应缓存的三个反直觉坑
架构 · 踩坑 · 性能
04/15
多后端混用 code 语义,页面静默空白却不报错
Vue · 调试 · 踩坑
04/15
多身份维度下「绑定状态」乱飞:前端自判 vs 后端权威字段
微信小程序 · 企业微信 · MySQL
04/15
MyBatis 局部更新的静默覆写陷阱:复用实体对象一行代码毁掉并发写
Java · MyBatis · 并发
04/15
多副本同时启动,Migration 被执行了两遍
MySQL · 并发 · 架构
04/15
MySQL OR 查询有索引却跑了 5 秒——index_merge sort_union 踩坑实录
MySQL · 性能 · 踩坑
04/15
MySQL 并发序列号重复:MAX+1 没加锁,压测一下就撞车
MySQL · 并发 · 踩坑
04/15
软删除 + 唯一索引的幽灵冲突:MySQL 不懂你的 is_deleted
MySQL · 踩坑 · 架构
04/15
分页接口 pagesize 翻 5 倍、延迟线性飙升——用 MySQL 8 窗口函数一刀切掉 N+1
MySQL · 性能 · 踩坑
04/15
mysql2 读 DATETIME 日期差一天:别让它经过 new Date()
MySQL · Node.js · 踩坑
04/15
mysql2 的 execute 吃动态 SQL 会炸:用 query 才是正解
MySQL · 踩坑 · 调试
04/15
mysql2 v3 升级后 JSON 列被二次解析,500 报错 Unexpected token o
MySQL · 调试 · 踩坑
04/15
对象展开顺序让服务端 UUID 被空字符串 id 悄悄覆盖
Next.js · 踩坑 · 调试
04/15
rsync --exclude 救不了服务器上的 .env.local
Next.js · 调试 · 踩坑
04/15
多人同时编辑同一文档,后保存的人把前人的内容悄悄覆盖了
并发 · MySQL · 架构
04/15
订单状态机被双写:先查再改中间的竞态窗口让两个请求同时"赢了"
MySQL · 并发 · 架构
04/15
「每日取消上限 3 次」被并发击穿:SELECT FOR UPDATE 才是正解
MySQL · 并发 · ThinkPHP
04/15
PHP catch 块把数据库报错直传前端——一个藏了很久的信息泄漏坑
PHP · ThinkPHP · 安全
04/15
whereOr 传空值,唯一性校验全军覆没
ThinkPHP · PHP · MySQL
04/15
PHP 服务用默认密钥上了生产——JWT 密钥缺失应快速失败
PHP · 安全 · 踩坑
04/15
PDO 参数绑定救不了你——MySQL LIKE 通配符注入的隐藏盲区
MySQL · ThinkPHP · 安全
04/15
PHP 金额计算用 float?一个坑吃掉两个隐患
PHP · 安全 · 踩坑
04/15
Dashboard 接口 p99 破秒,SQL 单条却只要 5ms
MySQL · 性能 · PHP
04/15
shadcn/ui Dialog 里 buttonVariants 循环依赖炸运行时
React · Next.js · 踩坑
04/15
批量派发 AI agent 时,成功返回的 skill 文件竟是空壳
架构 · 调试 · 踩坑
04/15
1:N 关联表上的「排除」查询,LEFT JOIN + WHERE != 会悄悄漏数据
MySQL · 踩坑 · 调试
04/15
状态枚举扩展后数据静默消失:用「排除终态」代替「白名单」
MySQL · 架构 · 踩坑
04/15
ThinkPHP 5 全局 htmlspecialchars 过滤器悄悄吃掉 JSON 参数
ThinkPHP · PHP · 踩坑
04/15
TP5 分页查询:count 之后 select 变空,根因是 Builder 状态被消费
ThinkPHP · PHP · 踩坑
04/15
ThinkPHP5 whereRaw 跨库子查询三重坑:表前缀消失 + 别名失效
ThinkPHP · MySQL · 踩坑
04/15
自定义 tabBar 下组件首屏永远空白:pageLifetimes.show 不触发之谜
微信小程序 · 踩坑 · 调试
04/15
微信小程序自定义 tabBar 切换闪烁:双 setData 竞态根因
微信小程序 · 踩坑 · 调试
04/15
微信小程序事件委托:e.target 还是 e.currentTarget?一字之差导致筛选栏间歇失效
微信小程序 · 踩坑 · 调试
04/15
小程序钻取筛选叠加——「只覆盖传入字段」破坏钻取语义
微信小程序 · 踩坑 · 调试
04/15
小程序内容页点击必有 300ms 空白?启动预取 + SWR 两步解决
微信小程序 · 性能 · 缓存
04/15
小程序列表页每次返回都闪骨架屏?onShow 三态刷新策略
微信小程序 · 性能 · 踩坑
04/15
小程序对接外部会员系统:占位名 + 逐字段锁,而非全局一刀切
微信小程序 · 踩坑 · 架构
04/15
微信小程序搜索框删空不刷新:「负向事件」被遗漏的坑
微信小程序 · 踩坑 · 调试
04/15
微信小程序朋友圈分享后按钮全哑火,scene 1154 沙盒坑
微信小程序 · 踩坑 · 调试
04/15
浏览器说证书没问题,微信小程序却一直报「证书无效」
微信小程序 · SSL/TLS · 踩坑
04/15
微信小程序原生地图被弹窗点不到?同层渲染的触摸事件黑洞
微信小程序 · 踩坑 · 调试
04/15
scroll-view 列表抖动的罪魁祸首:子节点 transform 与合成层打架
微信小程序 · CSS · 踩坑
04/15
微信小程序骨架屏 + Canvas 2D:onReady 已过,画布永远空白
微信小程序 · Canvas · 踩坑
04/15
wx.uploadFile 绕过全局 Token 刷新拦截器,导致上传静默失败
微信小程序 · 踩坑 · 调试
04/15
van-dialog 弹窗里 textarea 文字诡异跳行?罪魁是 scale 动画而非样式
微信小程序 · 踩坑 · CSS
03/28
FastAdmin 迁 ThinkPHP 8,成功码和错误码全部反转导致前端白屏
ThinkPHP · PHP · 踩坑
03/21
14 个接口全 404,后端日志却一条没有——多后端路由写错了
架构 · 调试 · 踩坑
03/21
PHP CSV 导出的两个隐形炸弹:注入攻击 + 框架生命周期破坏
PHP · 安全 · ThinkPHP
03/21
修完一个 Bug,下一轮 Review 又出同类坑——同领域扫描缺失的代价
调试 · 安全 · 踩坑
03/21
MVP 只写了 C 端,上线前炸出 6 个 P0 断链
架构 · 踩坑 · 调试
03/21
写完 Service 方法却忘了挂上去:死代码陷阱与集成检查清单
PHP · 架构 · 踩坑
03/15
axios.create() 实例偷带全局 Header 导致 CORS Preflight 炸掉
调试 · 踩坑 · 前端
03/15
Element UI $confirm 闭包竞态:操作打到了错误目标
Vue · Element UI · 并发
03/15
多步审批流「已完成」是假的——状态校验只检查了第一步
微信小程序 · 架构 · 踩坑
03/15
PHP CRUD 白名单过滤空字符串,编辑时字段清空后自动复原
PHP · ThinkPHP · 踩坑
03/15
PHP date('u') 永远输出零——datetime(6) 微秒精度静默丢失
PHP · MySQL · 踩坑
03/15
PHP 返回雪花 ID,前端点编辑却 404:JSON 大整数精度丢失全记录
PHP · ThinkPHP · JavaScript
03/15
PHP 8 升级后 BIT(1) 标志位判断全部静默失效
PHP · MySQL · ThinkPHP
03/15
Snowflake ID 遇上 intval():PHP + JS 双端静默截断的根因与正解
ThinkPHP · PHP · 踩坑
03/15
ThinkPHP .env Section 前缀陷阱:config() 静默返回默认值的真相
ThinkPHP · PHP · 踩坑
03/15
ThinkPHP Migration 跑到远端库时 Unknown database 的真相
ThinkPHP · MySQL · 踩坑
03/15
微信小程序页面跳转后 WebSocket 还没重连,消息就已经丢了
微信小程序 · WebSocket · 踩坑
03/15
微信小程序 Behavior 拦截 onShow 做异步守卫:definitionFilter 的三个坑
微信小程序 · 踩坑 · 竞态
03/15
微信小程序 disableScroll + 组件 scroll-view:三种滚动方案全部哑火
微信小程序 · 踩坑 · 调试
03/15
wx.openDocument「打开文件失败」:带查询参数的 OSS 链接吃掉了扩展名
微信小程序 · 踩坑 · 调试
03/15
微信小程序页面权限守卫:五轮失败后发现 definitionFilter 拦截 onShow 是条死路
微信小程序 · 踩坑 · 架构
03/14
串行外部 API 中途失败,积分已扣券没发——如何用补偿表兜住「双失」
架构 · 踩坑 · ThinkPHP
03/14
微信小程序自定义组件样式穿透失效:写了等于没写的 CSS
微信小程序 · CSS · 调试
03/14
微信小程序自定义 tabBar 的 switchTab 静默失败陷阱
微信小程序 · 踩坑 · 调试
03/14
把 Framer Motion 搬进微信小程序:三个让动画哑掉的反直觉坑
微信小程序 · CSS · 动画
03/14
onShow + onReady 同时拉数据,微信小程序页面首次加载 API 被调两次
微信小程序 · 踩坑 · 调试
03/14
微信小程序吸顶触发偏晚:把元素移出 scroll-view 后阈值没跟着更新
微信小程序 · 踩坑 · CSS
03/14
scroll-view 高度为零:min-height 打断 flex 链路的沉默 Bug
微信小程序 · CSS · 踩坑
03/14
微信小程序吸顶幽灵:scroll-view 状态残留三层根因
微信小程序 · 调试 · 踩坑
03/14
WXML 属性里的中文引号把编译器搞崩了
微信小程序 · 踩坑 · 调试
03/13
微信小程序 CSS 变量的四个反直觉陷阱
微信小程序 · CSS · 踩坑
03/12
数据同步里的自动打标签:8 个让数据悄悄出错的坑
MySQL · ThinkPHP · 踩坑
03/12
关系表存 A 系统 ID、查时传 B 系统 ID——静默返回空的隐形杀手
MySQL · ThinkPHP · 架构
03/12
一行 `$noNeedLogin = ['*']` 让后台 API 全裸奔
安全 · ThinkPHP · 踩坑
03/12
FastAdmin 新 Controller curl 200 但浏览器报网络错误的真相
ThinkPHP · FastAdmin · CORS
03/12
用 || 给表单赋初始值,价格是 0 的商品全部空白了
Vue · 踩坑 · 调试
03/12
Omix setData 之后派生值算出来是 0,根因是 this.data 还没同步
微信小程序 · 踩坑 · 调试
03/12
SSH heredoc 传 PHP 文件:$变量和\命名空间被 shell 吃掉
调试 · 踩坑 · ThinkPHP
03/12
Vue 表格列显示 NaN 的真相:Number(undefined).toFixed() 的隐患
Vue · Element UI · 调试
03/12
vue-router 3.0 的 .catch() 会无声吞掉后续所有代码
Vue · 踩坑 · 调试
03/12
z-index 更高却被遮住?层叠上下文隔离坑透底部弹窗
微信小程序 · CSS · 踩坑
03/12
WXML 不是 HTML:微信小程序特殊字符渲染的八个反直觉坑
微信小程序 · 踩坑 · 调试
03/12
翻页瞬间过滤条件消失:XtTablePage 分页事件整体覆盖 pageOptions
Vue · 踩坑 · 调试
03/11
骨架屏永远不消失——异步序列计数器被多处递增的经典坑
并发 · 踩坑 · 架构
03/11
API 返回 200、数据非空,页面偏偏一片空白——前后端字段名系统性错位
Vue · 架构 · 调试
03/11
外部 API 同步回写:`??` 静默吞 null、`insertAll` 遇唯一索引整批失败
PHP · MySQL · 踩坑
03/11
微信小程序 Canvas 2D 重绘失真:scale 矩阵累积导致图表越刷越放大
微信小程序 · 踩坑 · 调试
03/10
路径缓存的三个隐患:为什么文件处理要用内容哈希做 key
Python · 性能 · 架构
03/10
AI Agent 会偷偷篡改 .ruff.toml 来消除 lint 报错
调试 · 架构 · 踩坑
03/10
用 Swift Actor 替换 DispatchQueue 做持久化,三个坑差点让我退回老路
Swift · 并发 · 踩坑
03/10
Swift 6.2 并发模型:async 函数不再隐式跳线程,@concurrent 才是明确授权
Swift · 并发 · 踩坑