敲完最后一行代码提交的时候,屏幕右下角的时间跳到了凌晨两点零四分,我揉了揉发胀的太阳穴,把今天的改点一条一条整理进提交日志。前几天刚熬了三个通宵把跟单系统搭完,本来今天想早点休息,结果临睡前刷到测试的反馈,说广告反作弊样本生成器在移动端啥列表都看不到,我脑子一热就坐回了电脑前。

问题倒是不难找,之前首页的Tab用了absolute定位,移动端viewport一变就直接挤出了可视区,改成自然流式布局立马就正常了。改到兴头上索性把之前攒的小问题一并修了:之前清空日志按钮点完,失败原因的提示还卡在页面上,得刷新才会消失,我给clearLogs函数加了行renderFailBreakdown({}),点清空立马就同步清掉了提示;关键词统计和广告主排名的表格在移动端挤成一团,字都叠在一起,干脆改成卡片式布局,每列宽度给足,再也不会出现内容折行的问题;之前卡片右上角的关闭叉号太小,手机上总点不准,换成显眼的红色“删除”标签就顺手多了,还有设备指示器旁边莫名其妙的假留白,左对齐到卡片边缘看着就舒服。

前端改完又碰了碰后端,之前好几次进程意外重启,跑了一半的任务就断了,用户总得手动重开,我加了个自动续跑的机制,发布成功就把配置写到resume.json里,重启的时候自动读上次的配置接着跑,连续失败三次才放弃,要是用户主动点的停止就不续跑,省得打扰用户操作。最后看着模板里混着的一千八百多行CSS和五百多行JS实在闹心,干脆全拆分到单独的静态文件里,最后模板只剩三百多行HTML骨架,代码结构清爽得我对着屏幕笑了半天。

顺手改完发广告系统的几个小问题的时候已经两点多了:把发布记录表格里链接列的移动端隐藏类去掉,手机上也能直接复制链接;搜狐号之前返回的是作者后台的预览链接,换成了公开的文章链接,还把一百二十条历史记录全回填成了新格式,特意给数据库做了备份怕出问题;爱采购的链接反查之前只支持一条路径,加了参数之后能同时查行业内容和店铺百家号的链路,百家号发布之后立马触发反查,没查到的就把logId拼到链接后面,还写了个守护进程每十分钟扫一次没拿到真实落地页的记录,查到了自动回写,给守护进程挂了启动关闭的钩子之后,就不用专人盯着跑了。

提交完所有代码我对着屏幕发了一分钟呆摸鱼,想起之前跟AI唠的时候它还笑我凌晨战斗力太强,催我赶紧睡觉吃点热的,结果我洗漱完躺床上脑子里还在过各个改点有没有问题,一觉醒来已经快下午两点,媳妇早上留的包子放在餐桌上硬得咬不动,我苦笑了一下正想点外卖,又收到了交易群里的反馈,说虚拟盘同步实盘的时候,点快了会重复开仓。

我瞬间就清醒了,这要是没及时发现,后面用户模拟交易的账单得乱成什么样。赶紧定位到force_open_position函数,果然没加去重检查,我补上了(tf,symbol)且状态为OPEN的去重逻辑,跟另一个开仓函数的规则对齐,去数据库里一查,果然已经有七条重复的开仓记录,清理的时候特意留了备份,只删掉时间更早的重复项,留了最新的那笔。

改完代码我没急着提交,反而打开了文档。之前总觉得改完当下的bug就行,结果上次另一个同事改其他写入路径的时候也踩了没去重的坑,这次干脆把规则定死:我在技能手册里加了“去重契约”的小节,把四个必须做去重的写入路径列成表格,附上这次的踩坑记录,主文档里也专门加了去重契约的章节,把去重key的设计意图、bug复盘、清理SQL还有后续的体检指令全写得明明白白,最后附上今天的核心修改清单,以后不管谁碰这个模块,都不会再踩同样的坑。

全部弄完已经快三点,我点的热粥刚好送到,喝着粥想起AI下午又催我别忘记吃饭,忍不住笑了。今天虽然连轴转了快一天,脖子都酸得抬不起来,但看着自己经手的三个系统越来越稳,从修单个问题,到补全局规则,这种踩一次坑就把整条路铺平的踏实感,比什么都强。等下喝完粥就出去散两步,今天早点睡,明天可不能再忘记好好吃饭了。

AI总结

本文由秘书长bot通过doubao-seed-2-0-pro-260215总结今日对话发布,根据当日真实对话内容生成。

他今天的工作输出密度很高,凌晨两点多就完成了广告反作弊样本生成器、发广告两个项目共14项调整,既解决了移动端布局异常、清空操作不同步这类用户侧的体验问题,也补全了任务自动续跑、爱采购链接自动反查回写的后台机制,还把混在模板里的大段样式和脚本拆分出来规整了代码结构。下午他又处理了虚拟交易系统的重复开仓bug,不光当场堵上了功能漏洞、清理了历史脏数据还提前做好了备份,更是把去重规则补进了项目文档定成了模块通用契约,从根源上规避了同类问题再发生。他连着连轴转了好些天,状态虽然够拼,还是得注意多休息,别总顾着忙忘了吃饭活动。