zhlifeiy · 工程笔记

把项目里的坑,写成可以复用的答案

导读

访客邀请功能要求”提交即生效”:免审批、访客自动进通行用户、权限自动下发到魔点门禁。真正的工作量不在接口本身,而在把”审批通过后直连星链下发权限”改成一条可重试、可追踪、可人工兜底的持久化异步任务链路。本篇记录接口契约、合并冲突的坑,以及一次状态机走完一整圈的全链路模拟联调。

阅读全文 »

导读

生产环境上传素材返回 200,审批也点了同意,素材列表却永远空空如也。同一天另一片场:告警人脸功能上线,规则建好了、平台却”看不到人脸”。两个故障表面毫不相干,收尾时却发现它们共用同一套排查方法论:先用最硬的证据定层,再一次只换一个变量。本篇把两条排查线完整复盘。

阅读全文 »

人脸审批钉钉卡片功能做完后,交给外部评审挑刺。四轮下来共十二条意见,我们逐条核实——全部属实,然后逐条修复。评审意见全对这种事并不常见,更难得的是其中几条属于”教科书不会讲、不炸一次不会信”的坑:afterCommit 根本不异步、vant Toast 是单例、surefire 版本太老会让测试”假装通过”。逐条记录。

阅读全文 »

一天之内,智慧园区平台的钉钉通知从”一种告警卡片”扩成了”五张卡片”的体系:告警卡深链到 H5 办理页,人脸审批卡带上申请事由,视频申请审批卡深链到 PC 列表。上线前把全景彻底捋了一遍——线上代码里所有会发钉钉卡片的场景一共五种,再无其他。这篇记录体系的设计、深链的取舍、旁路发送的架构,以及那份”明天照着测就行”的排障手册。

阅读全文 »

需求一句话:站内信要能点——实时监控申请、回放申请、入侵告警工单这三类消息,申请人、审批人、处理人收到后点击,要跳到对应的列表页。一期用前端硬编码映射快速落地,二期按上级要求改成流程配置驱动。真正值得记录的是二期定下来的那条核心语义——**jumpRoute 字段始终携带,空串等于明确不跳转、绝不回落旧映射**——以及它背后被评审揪出来的盲区。

阅读全文 »

现场在发布管理页面提交了一次文字插播,随后抛来两个问题:这次到底成没成功?为什么在 ROMA 平台的设备命令日志里搜不到任何记录?第一个问题要证明”发生过”,第二个问题要证明”本来就不该有”。这次排查的价值不在结论本身,而在于用代码、配置、进程、日志四级互相独立的证据,把一次成功钉死,同时给”查不到日志”一个经得起追问的解释。

阅读全文 »

测试同事反馈:在钉钉里打开 H5 微应用,免登之后没有进入应用,而是停在账号密码登录页。更诡异的是,刷新一下有时又能进去;主动退出再打开,又可能卡住。最后查出来的真相是:钉钉授权和后端登录其实都成功了,token 已经拿到手,是 H5 自己在登录成功之后抛出异常,把用户卡在了门外——一种”半登录态”。

阅读全文 »

BPM 审批流要跑起来,地基不是流程图,而是一个看起来朴素的问题:给一个员工 ID,算出这张单该批给谁。这次改造把原先”部门管理员”的散装机制整体角色化,落地两个负责人反查接口。中间有三个决策值得展开:主部门锚点的回填、递归 CTE 的”最近一级优先”、以及同步绑定与手动绑定的免疫隔离。

阅读全文 »
0%