这里到底下了多少雨?雷达估算与雨量筒的读数
为什么你那块地的雷达雨量和雨量筒里的水很少对得上,两个数各自该用在什么事情上,以及怎样用几场雨把它们比清楚。
阅读全文AgentsMesh 团队的一手工程实录:iOS 架构、Go 服务端、可观测性与 Agent 基础设施,每篇都写清问题、取舍与验证方式。
为什么你那块地的雷达雨量和雨量筒里的水很少对得上,两个数各自该用在什么事情上,以及怎样用几场雨把它们比清楚。
阅读全文把宠物小组件放上主屏幕和锁定屏幕,点一下就能喂食抚摸,提醒只在它真的需要你时出现。一篇给 iPhone 用户的上手指南。
阅读全文从比你觉得需要的更慢的速度开始,稳了再提速,离目标越近步子越小。一套把曲子一步步练到老师要求速度的实用方法。
阅读全文视频日记能坚持下去,靠的是每天只花几秒,而不是一晚上的剪辑。讲清拍什么、什么时候拍、漏了一天怎么办,以及怎么让日记只属于你自己。
阅读全文给 iPhone 视频加字幕,先按发布平台选硬字幕还是 SRT 字幕文件,再按每行字数、停留时长和竖屏安全区来排,观众才读得完。
阅读全文过敏、不耐受和乳糜泻是三套规则。按人建过敏档案、记下严重程度,写好急救计划,再配上 iPhone 医疗急救卡和出行用的翻译卡。
阅读全文在「照片」的「截屏」里滑动手指就能批量选中删除;动手前先查验证码、发票和车票,再确认 iCloud 没有超限,否则删了就找不回来。
阅读全文AI能读出成分表、标出已知致敏原,却看不到浓度、pH和你的皮肤病史。成分分析能推断什么、永远推断不了什么,这里一次讲清。
阅读全文小组件只在你还看得见它的时候才有用。讲清视觉习惯化、iOS 17 可交互小组件、锁定屏幕与待机显示,分别改变了情绪打卡的什么。
阅读全文iPhone 小组件不是迷你 App,而是系统按预算刷新的快照,常看的一天也只刷新 40 到 70 次。照数据、尺寸、布局、空状态四步做,放上主屏才经得起看。
阅读全文iPhone 录音降噪想不出水声、不发闷:先分清是哪种噪声,录音时先治本,降噪只降一点,最后在响度一致时对比前后。
阅读全文同一件衣服在不同照片里取出的 HEX 色号不一样,原因在光线、相机处理、JPEG 压缩和色彩空间。学会取平均、按 sRGB 读数,并判断何时该实测。
阅读全文两项研究比较过番茄钟式的固定休息和自主休息:疲劳、专注和完成量各有什么差别,以及背单词、写论文、备考等不同任务更适合哪种节奏。
阅读全文GPS 水印让人一眼看到时间和地点,却很容易被裁掉或仿造;防篡改记录能让软件发现任何改动,却没法用眼睛读。两者各适合什么场合,怎样叠加。
阅读全文真正有用的避雷清单很短:只写斑贴试验或过敏记录证实过的成分,而不是所有听起来吓人的成分。教你一步步建一份自己的清单。
阅读全文WidgetCraft 小组件在小组件中心搜不到、显示“未选择小组件”,或者一直停在旧数据?这里按症状逐条给出原因和对应的解法。
阅读全文专注模式、屏幕使用时间的限额,以及基于 Apple 屏幕使用时间接口的拦截工具,挡的东西不同、失效方式也不同。讲清怎样设一个守得住的边界。
阅读全文在 iPhone 上听无损,音质取决于链路里最弱的一环:文件格式、蓝牙、解码器和响度均衡。逐一讲清每一环做了什么、该怎么检查。
阅读全文Apple Watch 记录的心率变异性是 SDNN,会随年龄、睡眠、饮酒、生病和测量时段变化。为什么要和自己的滚动基线比,以及怎样读趋势才不过度解读。
阅读全文无账号、无广告的音乐播放器要拿出证据:看懂 App Store 隐私标签,查跟踪请求、App 隐私报告和权限,再对照一份检查表逐项核实。
阅读全文主张加班费要先证明加班事实。当天记下、写得具体、前后一致、有旁证的个人记录更有说服力。附每班该记的项目、单位的留存义务和仲裁时效。
阅读全文2025年起法定节假日共13天。长假里只有法定那几天要在正常工资外另付300%,其余是休息日,可补休或付200%;调休上班的周末是普通工作日。
阅读全文在 iPhone 上去人声、提取伴奏之前先弄清原理:声道相减为什么会失败,AI 分离在公开测试里能做到几分,版权边界又在哪里。
阅读全文落座前说清过敏,问清油锅、酱汁和配料;欧盟、英国、美国的餐厅各有什么过敏原告知义务,交叉污染为什么只能靠你自己问。
阅读全文刚学的字忘得最快。与其反复抄读,不如隔一天、隔一周让孩子自己回忆一次。讲清艾宾浩斯曲线、SM-2和FSRS怎么排期,附间隔表和自评标准。
阅读全文编程 Agent 应该跑在服务器的 tmux 里,手机只当遥控器。怎么连过去、密钥和网络怎么收紧、审批提示怎么在 iPhone 上安全地回答,一篇讲清楚。
阅读全文把配色卡存成图片:P3 什么时候比 sRGB 好,为什么 PNG 能让平涂色块保持准确,P3 文件进了只认 sRGB 的应用又会怎样。
阅读全文删截图前,先用「实况文本」把取件码、地址、单号拷进真正要用它的 App;密码、付款码和身份证照片则根本不该留在相册里。
阅读全文SFTP、SCP、FTPS、SMB 和 sshfs 在 iPhone 上有何不同,传到一半失败怎么续传,怎样用校验和确认文件完整,「文件」App 又能做到哪一步。
阅读全文笔顺有国家规范,声调有四声加轻声,说话时还会变调,拼音却通常只标原调。讲清笔顺规则、变调规律和标调位置,附一个字一次学完的步骤。
阅读全文在 iPhone 上做卡点视频,关键是把 BPM 换算成帧:每拍时长等于 60 除以 BPM。附 24、30、60 帧对照表、防漂移算法,以及该在哪些拍子上下刀。
阅读全文SHA-256 哈希只能证明照片自算出哈希起没被改过,可信时间戳和区块链存证证明它不晚于何时已存在;拍摄地点、拍摄人和现场真伪,哪一种都证明不了。
阅读全文第三方输入法想在任意 App 里接入 AI,必须打开「允许完全访问」。这个开关放行了什么、输入法在哪些地方会失灵,以及系统自带的替代办法。
阅读全文照片取色只是第一步:按主体定主色,用 6:3:1 分配面积,量一量色相角度,再按 WCAG 4.5:1 检查文字对比度,配色才真正能用。
阅读全文iOS 16 起「照片」能自动找出重复项目并合并,只留画质最高的一份;连拍、几乎一样的照片、重复截图和视频,还得另外处理。
阅读全文用语音创作能被接着改的内容,光会语音输入不够:要有可编辑的源文件、会跟着走的署名链,还要把指令说成结构。
阅读全文要打印、要提交、要按顺序复习的笔记适合分页笔记本,越画越大的想法适合无限画布。在 iPad 上怎么选,以及哪些 Apple Pencil 功能真正有用。
阅读全文想在 iPhone 上剪出不带水印的视频,先导出一段 5 秒的测试片,再把分辨率、帧率、编码和 HDR 按素材与发布平台设好。
阅读全文从备孕、产检到三岁儿保,哪些记录以后会被问到:出生孕周、孕期并发症、生长数据、接种证和发育观察。附分阶段清单,讲清一条时间线为什么胜过四个App。
阅读全文从几万张照片里挑好照片,靠两遍筛:先一眼淘汰糊片、闭眼和近似重复,再在每组相似照片里按清晰、表情、光线和独一无二来挑。
阅读全文情绪打卡能不能坚持,关键在动作够小、挂在已有的日常动作上、用固定量表打分。结合习惯研究,讲清 66 天、锚点和情绪命名各起什么作用。
阅读全文Flowtime 工作法用正计时代替番茄钟的 25 分钟倒计时,记下打断,再按工作时长安排休息。讲清完整流程、休息时长参考和每周复盘怎么做。
阅读全文国内新国标 2027 年起强制标示八类致敏物质,美国要求九种、欧盟十四种,「可能含有」都不强制。吃之前,配料表和扫描各能告诉你什么。
阅读全文能平息纠纷的施工照片报告,要让同一位置有施工前、施工中、施工后的照片,由远及近拍、标注清楚,并在离开工地前查漏补缺。
阅读全文孩子天天看见招牌和包装,并不等于认得字。研究发现,幼儿离开商标就难认出熟悉的品牌字。要把看见变成认得,靠的是捕捉、拆解和隔天复现。
阅读全文好看的 iPhone 主屏是一套小型设计系统:颜色从墙纸里取,字体只配一对,边距和圆角统一,再提前想好“色调”外观下小组件会变成什么样。
阅读全文赏月先挑月相再挑时间:看环形山选上弦前后,满月反而最平;月出平均每天推迟约 50 分钟,深秋却只晚二十多分钟。再看高度、云量和视宁度。
阅读全文用 iPhone 录歌:有线监听、24 位录音、拼出最好的一遍、做第一版混音,母带按 −14 LUFS 和 −1 dBTP 的流媒体规范留足余量。
阅读全文成分表有法定写法:按含量降序,0.1%以下归入「其他微量成分」,香精和色素各有规矩。学会自己读,也弄清扫码为什么查不到或查错。
阅读全文iOS 切到后台几秒就会挂起 App,Wi-Fi 换成 5G 又会让 TCP 连接失效。SSH 保活、Mosh 和 tmux 各自能救哪一种断线,一张表说清楚。
阅读全文不把曲库拷进手机也能在 iPhone 上听 NAS 音乐:SMB、WebDAV、DLNA、Subsonic 怎么选,码率要多少,外网怎样安全访问,硬盘休眠为何卡顿。
阅读全文照片证据要让对方核验得了:由远及近带比例尺拍、保留原图、尽早记下哈希、不转换格式地交付原件,并记清每一次流转。
阅读全文加班费=小时工资×加班时长×倍数。月薪先按21.75天、174小时折成时薪,再按工作日150%、休息日200%、法定节假日300%计算,附算例和估算盲区。
阅读全文「翻译」App 和实况文本几秒就能读出外语菜单,但写意菜名、方言音译和花体字会让直译失真。出国点菜前,这样拍、这样读、这样问。
阅读全文汇率表里缺一个币种,就让一笔订阅的收入从所有 USD 汇总里消失,而且处处无报错。修法是在钱的入口处问一个不同的问题。
阅读全文获取成本阈值在两个安装的样本上开火。我们砍掉了三个关键词,两个是健康的。现在仪器报不出一个不带样本量的判决。
阅读全文WaveCraft 曾经有看起来像轨道、却不是信号路径的行。我们让每一次编辑、效果、声像与导出共用一张图,并让工程跨重启存活。
阅读全文我们下掉一个功能,忘了 App Review 备注——它仍然让审核员去按一个已经不存在的按钮。同一份文案住在四个各自独立的文件里。
阅读全文我们做了个工具来给自己排名上的词分类,好从此不再靠猜。它身上有三个自我印证的偏差,然后很自信地叫我们删掉最好的词。
阅读全文上游一次发布用一行替换了默认的 iOS 测试 runner,正文是空的。我们 1,070 个测试目标在一夜之间离开了模拟器产能租约,而症状不是报错。
阅读全文六个 Apple 签名私钥在仓库里躺了十一个月,到达了每一次 clone、每一个 worktree、每一个 CI 作业。而那条标着 critical 的守卫不可能找到它们。
阅读全文我们要在模拟器上证明 3D 引擎真的画出东西,而「画面非空」「非纯白」两种判据都恒为真:wgpu 画出第一帧之前,那块矩形读到的是一片平铺底色。判据得绑到具体内容。
阅读全文所有测试套件全绿,出厂 APK 却一进 3D 场景就崩。R8 把一个 JNI 按名字解析的类改了名,而每一条测试跑的都是 R8 从没碰过的那份构建。
阅读全文我们的输入引擎每次启动都把出厂的 80 MB 数据哈希一遍——557 毫秒,而一次按键解码只要 224 微秒。而这些数据早就被证明过一次了,由写入它的那一方。
阅读全文一个场景的路由有四种可能,而旧形状只给了其中两种起了名字,于是健康的那一行渲染成红色故障、正常的那一行挂着一句永久的红字。一句永远在的告警不是告警。
阅读全文目录说这台模型看得见图,于是 app 发了图,中继把它静悄悄丢掉,端上、服务端、日志三处都不报错。那个交集被两个地方各自手算了一遍,相隔一行。
阅读全文两个 Android SDK 常量被挪进了「看起来最合理」的那个文件——而那个文件正被一个 module extension 加载。我们的锁文件失效了,CI 在 Go linter 上变红。
阅读全文一次 Play 发布死在 400 上,而我们的代码把这个 400 归为可重试;解释这个修复的注释却写的正好相反。两条注释在同一个函数里,只有一条能成立。
阅读全文Loopal 的跨平台不是复制页面做出来的。我们把准入、连接器、记忆与事件投影收进一套 Rust 运行时,让每个宿主各自对自己的边界负责。
阅读全文我们的 agent loop 有一份 Rust 的、一份 Swift 的。删掉 Swift 那份移走了 22,207 行、新增 5 行。重复从来不是免费的,而账单以永远修不完的一次性补丁的形式寄到。
阅读全文让 Riff、QuipKey 和 WaveCraft 同时走 App Store 与 Play,需要一台持久状态机,而不是两份脚本。账本现在拥有意图、证据与恢复。
阅读全文WidgetCraft 不再维护第二份 UI 实现:一份文档包现在同时喂给创作预览、扩展与渲染器,并且走同一棵经过测试的树。
阅读全文加上上文让排序缺陷变得更糟,五个看似合理的根因全错。真因是一个未做平滑的估计比它自己的基线还低 3.46 bit——而修它的办法悄悄关掉了上下文。
阅读全文我们的 agent 只有在用户连上自己的账号后才能触达某个邮箱。一个布尔值描述不了这件事,而那个错误的两态答案,先索要日历权限、再告诉用户我们需要 Gmail。
阅读全文CI 编排器靠刮 stdout 重新推导成败,于是重试后通过的测试被判红。判决现在来自 Bazel 的事件流,下游任何一环都不得重算。
阅读全文我们的构建图用「加载全部 23 份产品声明」来推导一张跨产品身份表。因为 Bazel 按文件而非按符号失效,改一个产品的依赖就会重跑所有兄弟产品的测试——而把导出的符号收窄,一点用都没有。
阅读全文消费者按 poll 水位提交,于是后一批可以提交到一条还没处理完的 record 之前。三个月的数据无声消失——把游标交给一个 owner 就修好了。
阅读全文我们拿自己词库和一个五倍大的词库做了基准对比。大的那个分更低:top-1 42.36% 对我们的 47.71%,内存 86 MiB 对 18。真正有意思的是我们拿这个结果去做了什么。
阅读全文我们的架构守卫一边监视着它正在校验的那个仓库。那个监视器的测试在 macOS 通知时序上反复 flake,而结局是删掉了它们本来要守的那条不变式。
阅读全文十条 UI 测试各等满一分钟,就为了同一个不出现的元素——一个 70 分钟的作业里有 50 分钟花在这儿。修法是记住负判定,因为一次等待失败是一个事实,而等待成功是一次测量。
阅读全文GetStringUTFChars 返回的不是 UTF-8,是一种改过的 UTF-8:任何 BMP 之外的字符都被拆成两个三字节的代理项,六个字节取代标准的那四个。一个信任了它的 Rust 边界会直接拒绝这个字符串。
阅读全文架构规则原本是贡献指南里的散文,代码就安静地漂了。现在每条规则都是一份清单,工具能在你正要敲下的那几行上强制它。
阅读全文CI 的 docker runner 连 8GiB 都申请不下来。两次用 JVM 参数覆盖去修它,每次都带一个「把堆调到 16m 构建必须失败」的检查,两次都过,两次 CI 依旧 OOM。第三次读的是真正被读的那个值。
阅读全文用类型化图谱 + append-only 事件日志替代向量库做 agent 记忆,让召回跨会话强化。实测 MRR +7.4%、R@10 +16.1%。
阅读全文YAML remote config 没有构建期语义:幽灵 key、越域取值、实验权重不等于 100 都配得出来。拆成 .def.rc / .ctl.rc 后由编译器拒掉。
阅读全文去掉 Sentry,iOS crash 链路搬回自家:发版 stage 上报 dSYM 到 MinIO,symbolicator 符号化,agent 经 mainline-cli 分析。
阅读全文一条性能 metric 链路编译通过、注册成功,却连续数月落库零行。四个串联的 silent gap,每一个都能通过全部绿灯。
阅读全文我们对遥测做采样来控制成本。比值和分位数在采样下是免费的——但业务总量不是,而「除以采样率还原」会悄悄骗你。本文讲清这个救了我们仪表盘的区分。
阅读全文两个小 DSL 把一份 spec 投影成 Swift、Go、TypeScript、Proto 与 ClickHouse DDL:一个 Rust binary、一产物一 genrule。
阅读全文一个 binary 同时做 ingest、enrich、query、admin。我们拆成三个进程、迁到 Connect-RPC,并让测试数据到不了生产看板。
阅读全文共享单队列让每天 100 条的批量任务挤掉亚秒级 cron。按 kind 拆成九个队列各带并发预算,并先把 OTel metric 上报与 trace 导出解耦。
阅读全文三条审计路径(静态 CSV 检查、Swift 源码扫描、伪本地化 OCR)把一个 App 的硬编码 leak 从 247 清到 0,覆盖率保持 95% 以上。
阅读全文agent 运行时启动挂死 30 秒,根因是一个进程在另一个开始读之前就发了 IPC。用 typestate bootstrap 链把错误时序变成编译期错误。
阅读全文把 CI/CD 平台和五层 analytics 管道并入 iOS monorepo:边界划在哪、Go 与 pnpm 依赖怎么共享、哈希端口怎么让多 worktree 不撞车。
阅读全文pod 每跑一次创建-销毁就泄漏一个 defunct 进程,根因是 Release() 不改父子关系。长生命周期子进程改走一个 double-fork 管理器。
阅读全文一个带点的 Google 邮箱原样进了 username,被拼成 org slug,后端用 422 拒掉。修法不是补一次校验,而是六层各自 fail-closed 的契约。
阅读全文Loopal 的 agent 缺一层「准则冲突时谁说了算」的仲裁。六条 Prime Axiom 放进 priority-110 的 prompt 片段,各修一种失败模式。
阅读全文每个 agent tool 都手写一份 JSON schema,再手写一份解析器,两者各管各的、会漂移。一个 Rust trait 让参数 struct 成为两者唯一的来源。
阅读全文Agent 沙箱用硬错误拦掉了用户本可以批准的运维操作,且用户无从覆盖。修法是不再把路径越界当致命错误,而是让它走已有的权限系统。
阅读全文一个 deep-research 请求派生了 38 个 agent,更早一个任务派生 129 个。深度降级工具、原子 hub 预算、fork context 在不设硬上限下收住整棵树。
阅读全文把 channel 从全局单 store 改成 per-channel 缓存 + IM 标准滚动,并把 @mention 接成直达 pod PTY 的转发链。
阅读全文macOS/Linux 走 Unix socket、Windows 走命名管道:两套传输、两条测试路径、104 字节上限。全部合并到 TCP loopback + 会话 token。
阅读全文终端粘贴图片在美国部署返回 502:15 秒服务端超时短于 proxy 到 S3 的往返。改用 presigned PUT/GET,服务端退出数据通路,净删约 900 行。
阅读全文从最初的想法到最终的产品,我们花了整整一年的时间来打磨 WidgetCraft。这篇文章将分享我们的心路历程、设计决策,以及为什么我们认为小组件定制是一个值得投入的方向。
阅读全文Swift 6 的严格并发检查给我们带来了不少挑战,但也让我们的代码质量得到了质的飞跃。本文将分享我们在迁移过程中遇到的问题和最终的解决方案。
阅读全文在有限的屏幕空间里创造出既美观又实用的小组件并非易事。这篇指南将分享我们在 WidgetCraft 开发过程中总结的设计原则和最佳实践。
阅读全文为什么叫 AgentsMesh?从最初的构想到成为专注 iOS 生态的技术团队,这篇文章将讲述我们的起源故事。
阅读全文