2025-11-16

37 篇热帖

1. Heretic: Automatic censorship removal for language models (github.com)

Heretic:语言模型自动去审查工具

Heretic 是一款无需昂贵后训练即可自动移除基于 Transformer 的语言模型审查(安全对齐)的工具。它结合了方向消融(Abliteration)的高级实现与基于 Optuna 的 TPE 参数优化器,旨在完全自动化地生成高质量的去审查模型,同时最大程度保留原始模型的智能。

核心技术与工作原理

Heretic 实现了参数化的方向消融技术。它通过计算“有害”与“无害”提示首 token 残差的均值差来确定每层的“拒绝方向”,并将注意力输出投影和 MLP 向下投影矩阵与该方向正交化,从而抑制拒绝行为。其核心创新包括:

  • 灵活的权重核形状:结合自动参数优化,有效改善合规性与模型质量的权衡。
  • 浮点数方向索引:支持相邻拒绝方向向量的线性插值,解锁更优的消融方向空间。
  • 组件级独立参数:为 Attention 和 MLP 组件分别设置消融权重,减少 MLP 干预对模型能力的损害。

主要特点

  • 完全自动化:通过联合最小化拒绝率和与原模型的 KL 散度来自动寻找最佳参数,用户无需具备 Transformer 内部知识。
  • 效果卓越:生成的模型在拒绝抑制率上媲美人工专家手动调整的模型,且 KL 散度更低(对原模型能力损害更小),社区已利用其生成超 3000 个模型。
  • 广泛的模型支持:支持大多数稠密模型、多模态模型、多种 MoE 架构及混合模型(如 Qwen3.5),暂不支持纯状态空间模型。

使用方法

  • 环境要求:Python 3.10+ 及 PyTorch 2.2+(部分量化模型需更高版本)。
  • 安装与运行:通过 pip install -U heretic-llm 安装,使用 heretic <模型名称> 即可一键全自动运行。
  • 资源优化:支持 bitsandbytes 4位量化(设置 bnb_4bit),大幅降低 VRAM 需求。
  • 后续操作:处理完成后可直接保存模型、上传至 Hugging Face、进行对话测试或运行基准评估。

研究功能

通过安装 heretic-llm[research] 可解锁模型内部可解释性研究功能:

  • 残差向量可视化:使用 --plot-residuals 生成有害/无害提示残差向量在 2D 空间的 PaCMAP 投影图及层间转换动画 GIF。
  • 残差几何分析:使用 --print-residual-geometry 输出包含余弦相似度、L2 范数和轮廓系数等指标的详细定量分析表格。

其他信息

  • 项目由 Philipp Emanuel Weidmann 从零独立开发,未复用现有开源消融代码。
  • 采用 AGPL-3.0 开源许可证。
2. Maybe you’re not trying (usefulfictions.substack.com)

本文通过作者解决网络跟踪狂的个人经历,探讨了人们在生活不同领域中表现出的“选择性能动性”问题,并提出了打破思维僵局的建议。

个人经历与问题引出

作者曾遭遇长达数年的网络跟踪狂。在处于人生低谷时,作者采取了“无视”的消极策略。即使后来跟踪狂行为升级并实施敲诈,作者仍感到无能为力。然而,在其丈夫介入并联系FBI、领事馆及当地警方后,问题在几个月内便迎刃而解。这促使作者反思:为何自己无法采取有效行动,即没有“真正尝试(Actually Trying)”。

核心观点

  1. 选择性能动性(Selectively Agentic):人的能动性并非全局一致。生活可分为工作、人际关系和自我关系三大领域。人们通常在至少一个领域中停滞在早期的低能动性阶段,用不成熟的资源去应对成年后的复杂问题(例如工作上极具创新,却在人际关系中束手无策)。
  2. 初始策略锁定:人们往往会被困在初次面对问题并失败时所采用的策略和资源水平上。例如,年轻时尝试某种心理治疗无效后便放弃,即使成年后在工作等其他领域已具备不断试错和寻找新解法的能力,却不再为旧问题寻找新方案。
  3. 错误的感官认知(Faulty Sensory Appreciation):借用亚历山大技巧的概念,习惯性紧张会扭曲感官认知。在解决生活问题时,人们常把“挣扎”和“消耗意志力”误认为“已经尽力”。实际上,持续需要意志力硬扛往往是方法不当的标志,而非真正穷尽了所有解决方案。

行动建议

作者建议读者假设自己在生活的某个领域不知不觉被“冻结”在过去。应审视工作、人际关系和自我关系三大领域,找出最大的痛点(可能表现为悲伤或愤怒等情绪),并自我拷问:

  • 是否已调动现有全部资源去寻找潜在的解决方案?
  • 是否像帮助朋友那样尽力帮助自己?
  • 如何确认自己是在“真正尝试”而非仅仅在“挣扎”?

附加信息

作者于2026年出版了《You Can Just Do Things》一书,作为培养个人能动性的实用指南。

3. When UPS charged me a $684 tariff on $355 of vintage computer parts (oldvcr.blogspot.com)

事件背景

作者(一位位于加州的复古电脑收藏家)从欧盟卖家处购买了价值约355美元的苹果复古电脑零件(含逻辑板、ROM、缓存及显卡),并支付了UPS运费。卖家使用了常规的HTS代码(8473.30,最高税率35%)进行海关申报。

关税争议与232条款申报

运输期间,UPS触发了针对钢铝产品的“232条款”关税审查。作者如实申报了显卡挡板所含的约149克钢材(估值0.48美元)。然而,作为报关行和名义进口商的UPS,最初向作者评估了高达698美元(含14美元经纪费)的关税账单,该金额远超商品本身价值。

应对策略:先付款以避免仓储费

为防止包裹被扣留并产生高昂的仓储费(超2天每天20美元+每磅0.04美元,15天后移交海关 General Order 仓库还会产生额外费用),作者在包裹派送当天选择先行全额支付了该笔争议关税。

申诉流程与最终结果

付款后,作者通过UPS客服渠道获取了“售后团队(post entry team)”的专用申诉邮箱,并在邮件主题中严格注明“Disputing Duties and Custom Charges”及包裹追踪号。随后,UPS修正了7501表格(进口报关单),最终结果如下:

  • 申报价值:根据汇率调整为342美元。
  • HTS代码更新:主要部分归入8473.30.2000(印刷电路组件零件,免税)。
  • 最终关税:新增9903.02.20代码(针对欧盟产品的15%关税),最终关税大幅降至51.30美元。

退款处理与经验总结

UPS承诺将在2至6周内自动退还多收的约632.70美元差额。作者对UPS初期错误的关税评估,以及延迟通知(直到包裹即将派送才告知最终费用,导致收件人陷入被动)的糟糕服务体验提出了批评。

核心操作建议: 无论使用哪家快递公司,遇到不合理的高额海关评估时,务必先支付关税,然后再进行申诉。切勿拒收包裹或让其滞留仓库,否则不仅会面临高额仓储费,还可能因快递公司(作为名义进口商)已垫付关税而导致钱货两空。先清关后申诉是避免损失的标准流程。

4. Astrophotographer snaps skydiver falling in front of the sun (www.iflscience.com)

天体摄影师 Andrew McCarthy 与跳伞者 Gabriel C. Brown 合作,创作了一幅名为《伊卡洛斯之坠》(The Fall of Icarus)的突破性天文摄影作品。该照片捕捉了 Brown 在太阳前方跳伞下落时的清晰剪影,将天文摄影的构图与创意提升到了新的高度。

作品视觉与技术细节

  • 拍摄波段:照片采用氢阿尔法(Hydrogen Alpha)特定波长拍摄,清晰勾勒出太阳明亮表面之上湍流的氢层。
  • 精准构图:跳伞者的下落轨迹被完美定格在多个太阳黑子(太阳表面温度略低的活跃区域)之间,人物剪影与太阳表面的细节形成极具视觉冲击力的对比。

拍摄过程与挑战

  • 灵感与策划:该创意源于两人几个月前的一次跳伞活动及随后的探讨,最终决定利用动力伞(paramotor)升至高空进行跳跃拍摄。
  • 高难度协作:拍摄需要极高的空间精确度。McCarthy、Brown 和动力伞飞行员通过三方通话保持实时沟通。飞行员通过观察地面阴影来判断航线,在接近预设机位时收起动力,滑翔穿过太阳前方;McCarthy 则在看到剪影后实时发出转向微调指令。
  • 克服困难:前五次尝试均因设备故障等意外未能成功。在第六次尝试中,团队终于将跳伞者与太阳黑子完美对齐,并成功下达了跳跃指令,最终完成了这幅杰作。

目前,这幅天文摄影作品的限量版印画已在 McCarthy 的个人网站上开放发售。

5. IDEmacs: A Visual Studio Code clone for Emacs (codeberg.org)

IDEmacs 项目总结

项目简介与目标受众

IDEmacs 旨在提供一套 Emacs 配置,带来类似流行 GUI IDE(尤其是 Visual Studio Code)的开箱即用体验。其主要目标用户包括:

  1. 从其他 IDE 转向 Emacs 的程序员,或仅熟悉办公软件的编程初学者。
  2. 需要 Emacs 核心功能(如 Sly/Geiser 和结构化编辑)但不想进行繁琐配置或适应陌生快捷键的 Common Lisp 和 Scheme 初学者。
  3. 需要功能齐全、支持快捷键且对鼠标友好的 Org、Markdown 或 LaTeX 编辑器的非程序员。

核心特性

  • GUI 与鼠标支持:默认不隐藏 GUI 元素,支持通过 custom GUI 进行配置(因此不使用 straight 包管理器)。
  • 符合主流 IDE 习惯的快捷键:超越基础的 CUA 模式,提供符合直觉的快捷键体验(排除默认使用 Evil 模式的配置)。
  • 开箱即用与代码易读性:提供功能齐全、快速且免配置的 Emacs 体验。配置代码采用标准 Elisp 编写并附带丰富注释,便于用户学习。 项目追求“足够好”的体验,而非完美复刻 IDE 的所有细微差别。

VSCode 配置 (开发中)

这是目前唯一提供的 IDE 配置,致力于还原 VSCode 的界面与操作习惯,代码使用 use-package 组织:

  • 界面与插件集成:包含 VSCode Dark Plus 主题、Treemacs(侧边栏)、Centaur Tabs(标签栏)、面包屑导航、符号高亮、版本控制(Magit, diff-hl, blamer)、自动补全(Vertico, Consult, Company 等)、Lisp 编辑支持及终端模拟器(eat)。
  • 快捷键映射:广泛覆盖了 VSCode 的通用、基础编辑、富语言编辑、多光标选择、显示、搜索替换、编辑器和文件管理等快捷键。
  • 待完善项:部分快捷键尚未绑定,且某些功能(如快速打开文件、折叠区域、多文件替换 UI 等)的行为与 VSCode 仍有差异,已标记为 FIXME 或 TODO 待后续优化。

社区参与与贡献

项目呼吁社区协助以推动发展:

  • 用户:使用并观察新手体验,通过 Jabber/XMPP 房间或 Issues 提供反馈,并帮助宣传。
  • 开发者:关注 Issues 和 TODO.org 中的主要问题,在源码中搜索 "FIXME" 修复小问题,提交 Pull Requests 并协助宣传。

相关背景

项目参考了先前的类似作品 mousemacs,后者也是一个将 Emacs 包装为类似 Sublime Text 或 VSCode 的鼠标友好型发行版。

6. The internet is no longer a safe haven (brainbaking.com)

文章摘要:互联网不再是安全避风港

事件背景

作者的个人小型服务器近期遭到AI抓取机器人(Scraping bots)的恶意攻击导致短暂宕机。此类事件不仅消耗了服务器资源,也严重打击了软件爱好者独立托管服务的积极性。作者认为,AI爬虫正在破坏环境、个人创作热情以及批判性思维。

攻击特征与技术排查

  • 资源耗尽:服务器出现严重延迟,系统监控显示Gitea和Fail2ban进程占用了几乎所有CPU资源。Nginx访问日志被大量针对Git commit记录的GET请求(返回502状态码)淹没。
  • 高度伪装:攻击流量伪造了常见的Mac/Chrome浏览器User-Agent,导致常规的User-Agent检查机制失效。
  • 分布式IP与异常Referer:攻击并非来自单一IP,而是集中在阿里云(新加坡节点)的 47.79.x.x IP段。此外,服务器还接收到大量伪造知名网站(如微软、麦当劳等)Referer头的异常流量,疑似用于刷取点击量。

防御措施与局限

  • 常规防御失效:由于日志文件体积暴增,Fail2ban解析日志并应用封禁规则的速度过慢;通过Shell管道命令(catgrepcut)提取IP并实时封禁的效率也无法应对庞大的攻击规模。
  • 紧急阻断:作者最终绕过Fail2ban,直接使用 iptables 命令(sudo iptables -I INPUT -s 47.79.0.0/16 -j DROP)在网络层丢弃整个恶意IP段的流量,迅速缓解了服务器压力。

困境反思与未来规划

  • 独立托管的困境:应对攻击耗费精力且治标不治本。虽然可以采用Anubis等激进防护工具或接入CloudFlare,但这会增加系统配置复杂性,并迫使流量经过带有追踪机制的中心化服务器,违背了作者保护隐私和去中心化的初衷。
  • 服务迁移计划:为减轻自建服务器的运维压力,作者计划将Gitea代码托管实例迁移至Codeberg等外部平台。
  • 核心观点:日益猖獗的爬虫和攻击正在“惩罚”喜欢折腾自建服务器的个人开发者,迫使他们向中心化解决方案妥协。互联网已不再是软件爱好者的“安全避风港”,但作者依然拒绝屈服,坚持独立托管的信念。
7. $1900 Bug Bounty to Fix the Lenovo Legion Pro 7 16IAX10H's Speakers on Linux (github.com)

目的

本指南旨在解决联想 Legion Pro 7 (16IAX10H) 及其他兼容机型(如 16AFR10H、16IRX9、IAX10H)在 Linux 系统下的扬声器和内置麦克风音频失效问题。由于该修复尚未完全集成至 Linux 主线内核,作者呼吁社区志愿者协助完成代码的上游化(upstream)工作。

核心修复步骤

  1. 安装固件:将 aw88399_acf.bin 固件文件部署至系统的 /lib/firmware/ 目录。
  2. 获取并修补内核:下载受支持的 Linux 内核源码(如 v7.0 或 v6.19.11),在源码根目录应用专用的音频补丁文件。
  3. 配置内核:在内核配置(.config)中必须启用 AW88399 编解码器及 SOF Intel 音频相关模块(如 CONFIG_SND_HDA_SCODEC_AW88399CONFIG_SND_SOC_SOF_INTEL_MTL 等)。
  4. 编译与安装:编译自定义内核及模块,并将其安装至系统引导目录。
  5. 安装显卡驱动:安装 Nvidia DKMS 驱动,确保自定义内核下的图形模块正常编译与集成。
  6. 生成 Initramfs 与更新引导
    • Arch Linux:使用 mkinitcpio 生成 initramfs 镜像,并配置 GRUB 或 systemd-boot 引导项。
    • Fedora:使用 dracut 生成 initramfs 镜像,并更新相应的引导加载程序配置。
  7. 重启验证:重启设备并引导至修补后的新内核,音频功能即可永久恢复正常。

声明与致谢

  • 项目提供“按原样(AS IS)”的免责声明,使用者需自行承担修改内核的风险。
  • 该修复由多位开发者(包括 Lyapsus、Nadim Kobeissi、Gergo K.、Richard Garber 和 Marco Giunta)历时数周协作完成,涵盖了底层驱动编写、固件提取、麦克风修复及补丁重构。社区筹集的 1900 美元漏洞赏金已全数归于核心工程贡献者 Lyapsus。
8. Brimstone: ES2025 JavaScript engine written in Rust (github.com)

Brimstone:基于 Rust 的 ES2025 JavaScript 引擎

项目概述

Brimstone 是一个完全使用 Rust 从头编写的 JavaScript 引擎,旨在全面支持 JavaScript 语言并严格实现 ECMAScript 规范。该项目目前仍处于开发阶段(已通过超过 97% 的 test262 测试用例),尚不适用于生产环境。其架构设计深受 V8 和 SerenityOS LibJS 的启发,除使用 ICU4X 外,引擎的几乎所有组件均从零实现,外部依赖极少。

核心特性

  • 字节码虚拟机 (Bytecode VM):架构设计深受 V8 的 Ignition 虚拟机启发。
  • 垃圾回收器 (GC):采用压缩式垃圾回收机制,使用大量 unsafe Rust 代码编写。
  • 自定义核心组件:包含完全自定义的正则表达式引擎和语法解析器。
  • 内置对象支持:几乎按照规范实现了所有的 JavaScript 内置对象和函数。

构建与运行

项目使用标准的 Rust cargo 工具链进行构建和运行:

  • 使用 cargo build 构建项目,生成名为 bs 的可执行文件。
  • 使用 cargo run 直接从源码运行。
  • 通过 bs 可执行文件运行 JavaScript 脚本,例如:./target/debug/bs ./hello.js

测试机制

Brimstone 高度依赖第一方和第三方集成测试套件,尤其是官方的 test262 测试集。

  • 集成测试:包含自定义的集成测试运行器,可通过 cargo brimstone-test 命令执行。
  • 单元与快照测试:通过标准的 cargo test 命令运行。
  • 模糊测试 (Fuzz testing):可通过执行 ./tests/fuzz/run.sh 脚本来运行。

缺失特性

该引擎已实现截至 ES2024 的所有特性,以及截至 2025 年 2 月 TC39 会议的所有 Stage 4 提案。目前尚未实现的特性仅包括:

  • SharedArrayBuffer
  • Atomics
9. Windhawk Windows classic theme mod for Windows 11 (windhawk.net)

Windhawk Windows 11 经典主题模组概述

本文档介绍了适用于 Windows 11 系统的 Windhawk 经典主题(Classic Theme)模组 及其运行平台的核心功能。

平台简介:Windhawk

Windhawk 是一个专为 Windows 操作系统及其应用程序设计的自定义修改市场(Customization Marketplace)。其主要功能包括:

  • 应用现有代码:用户可以直接使用平台上提供的现有代码片段,对各类程序进行个性化定制。
  • 自主创建修改:支持用户自行编写代码,创建专属的自定义修改方案。

模组内容:经典主题 (Classic Theme)

该模组是基于 Windhawk 平台开发的具体项目,旨在为 Windows 11 系统提供经典主题的界面定制与修改。

10. Report: Tim Cook could step down as Apple CEO 'as soon as next year' (9to5mac.com)

苹果加速CEO继任计划:蒂姆·库克或最早于明年卸任

核心事件

据《金融时报》报道,苹果董事会和高管团队近期加大了CEO继任计划的筹备力度,现任CEO蒂姆·库克(Tim Cook)可能最早于明年卸任。

潜在继任者与决策进度

  • 苹果硬件工程高级副总裁约翰·特努斯(John Ternus) 被视为最有可能的继任者。
  • 目前尚未做出最终决定,知情人士提醒,任何公告的具体时间仍有可能发生变化。

继任背景与时机

  • 此次加速继任计划与苹果当前的业绩表现无关,公司预计iPhone在年底的销售旺季将取得优异表现。
  • 苹果不太可能在1月底发布涵盖关键假日销售期的下一份财报之前宣布新CEO人选。

近期其他高管变动

苹果近期经历了多项高层人事交接,为领导层过渡奠定了基础:

  • 首席运营官(COO):前COO杰夫·威廉姆斯(Jeff Williams)于7月宣布退休,并于近日正式结束了在苹果的工作。其运营领导权已移交萨比赫·汗(Sabih Khan),其余职责已重新分配给包括特努斯在内的其他高管。
  • 首席财务官(CFO):长期担任财务主管的卢卡·马埃斯特里(Luca Maestri)卸任,由前财务规划与分析副总裁凯文·帕雷克(Kevan Parekh)接任。
11. Where do the children play? (unpublishablepapers.substack.com)

儿童玩耍空间的演变:从物理森林到数字前沿

本文探讨了西方社会儿童成长环境的变迁,指出儿童在物理空间中失去了独立性,转而投向数字空间以寻找人类进化过程中必需的“独立同伴文化”。

物理空间的过度保护与数字空间的失控

人类学研究表明,在如刚果BaYaka部落等传统社会中,儿童在远离成人监督的自然环境中自由探索,这种“独立同伴文化”是人类发展的常态。然而,现代西方儿童在物理世界中受到极度保护,缺乏独立购物、出行或使用工具的经验;与此同时,他们在数字空间中却完全脱离成人掌控,过早接触大语言模型、网络陌生人甚至不良内容。

独立同伴文化的缺失与物理活动范围的缩减

历史和跨文化证据显示,儿童天生倾向于建立没有成人干预的独立同伴群体。但在西方,自20世纪70年代以来,儿童的独立出行率大幅下降。这并非由互联网引起,而是源于城市化、汽车依赖、生活方式改变以及家长对“陌生人危险”和交通事故的担忧。物理“秘密基地”的消失严重损害了儿童的身心健康与幸福感。

数字空间作为替代的“秘密森林”

由于现实中无处躲藏且缺乏同龄人互动的物理空间,儿童将社交媒体和电子游戏(如《堡垒之夜》、《Roblox》)作为逃避成人视线的替代空间。尽管科技公司的成瘾性设计(如战利品箱)加剧了问题,但儿童沉迷数字世界的根本动机是渴望在没有成人监督的情况下与同伴互动。多数儿童自身也意识到屏幕时间过长的问题,但受限于现实环境,他们只能选择数字空间来满足社交与探索的进化需求。

结论与未来展望

社会无法倒退回原始的物理森林,必须承认并接纳数字空间作为儿童建立同伴文化的新前沿。现有的数字平台充满危险与成瘾机制,因此,解决方案并非单纯限制屏幕时间,而是呼吁开发更优质的数字平台。理想的平台应类似《Minecraft》的开放服务器,保留数字空间赋予儿童的自由、探索性和多人互动,同时消除剥削性设计和安全隐患,从而真正满足儿童对独立同伴文化的内在需求。

12. FBI Director Waived Polygraph Security Screening for Three Senior Staff (www.propublica.org)

FBI局长豁免三名高管测谎安全审查

FBI局长Kash Patel为副局长Dan Bongino、国会联络人Marshall Yates及局长个人助理Nicole Rucker豁免了常规的测谎审查,使这三位缺乏FBI经验的新任高管得以获取美国最高级别的机密信息。多名前FBI官员及政府官员表示,高级官员获此豁免史无前例。

涉事高管背景与职责

  • Dan Bongino(副局长): 负责FBI日常运营、监督全国56个外地办事处,并接收包含CIA和NSA情报的“总统每日简报”。Bongino曾任特勤局特工和纽约警察,后成为拥有数百万粉丝的保守派媒体人,曾宣扬2020年大选阴谋论。其任职期间伴随泄密指控及与内阁官员的公开冲突。
  • Marshall Yates(国会联络人): 曾任致力于推翻2020年大选结果的“选举诚信网络”执行董事。作为FBI与国会的最高联络人,他能广泛接触内部文件及过往调查记录,而该职位传统上由深谙FBI运作的无党派职业官员担任。
  • Nicole Rucker(局长助理): 曾任白宫高官Stephen Miller的助理。她最初在无安全许可的情况下由人陪同进入局长办公室,后获得许可并随Patel出访参与敏感情报会议。

测谎豁免争议与FBI回应

测谎审查旨在评估应聘者的吸毒史、犯罪记录及外国联系等。若结果显示欺骗或“无结论”,应聘者将无法获得安全许可。

  • FBI的否认与辩护: FBI发言人坚决否认三人测谎失败,称相关报道“充满谎言”。发言人最初辩称三人属于“C类”(Schedule C)政治任命员工,因此“不需要”测谎。
  • 专家与指南反驳: 国家安全律师及前官员指出,政治任命身份不能豁免测谎。FBI官方就业指南明确规定,所有员工必须通过包含测谎在内的背景调查以获得“绝密”许可。

内部投诉与国会审查

  • 内部抗议: FBI安全部门一名员工提出正式投诉,指控测谎豁免违反机构政策,该投诉已提交至司法部监察长办公室。
  • 国会质询: 参议院司法委员会民主党高层Dick Durbin在听证会上指出,Patel高管团队中有人因测谎出现“取消资格的警报”而依靠高层个人豁免留任。Patel在听证会上拒绝直接回答相关问题。

机构清洗与政治化背景

此次豁免事件发生在FBI大规模人事变动背景下。自1月以来,政府已解雇或逼退50多名职业FBI官员,包括拥有数十年经验的反恐高管及参与过调查特朗普和1月6日国会山事件的探员。Patel以宪法第二条赋予的总统权力为由为解雇行为辩护。此外,多名前员工透露,FBI近期利用测谎仪调查高级员工是否对Patel发表过负面言论或向媒体泄密,引发了外界对FBI安全审查程序被政治化的严重担忧。

13. UK's first small nuclear power station to be built in north Wales (www.bbc.com)

英国首个小型核电站将在北威尔士建设

项目概述

英国政府宣布,将在北威尔士安格尔西岛(Anglesey)的Wylfa站点建设英国首个小型模块化反应堆(SMR)核电站。该项目由公有企业Great British Energy-Nuclear负责建设,并获得英国政府25亿英镑的投资。工程预计于明年开工,目标是在2030年代中期实现发电。该站点初步将建设三个SMR,未来最多可容纳八个。

经济与社会影响

该项目预计将为约300万户家庭供电,创造多达3000个就业岗位,并带来数十亿英镑的投资。英国首相基尔·斯塔默表示,此举将扭转该地区长期被忽视的局面,带来数十年的就业机会。威尔士首席部长埃卢内德·摩根(Eluned Morgan)也对该项目为当地带来的巨大利益表示欢迎。英国中小企业联合会(FSB)认为这将为当地就业、供应链和基础设施带来“一代人一次”的推动。

技术特点

SMR的工作原理与大型核反应堆类似,通过核反应产生热量来发电,但其体积仅为大型反应堆的一小部分,发电量约为三分之一。班戈大学核未来研究所所长指出,SMR采用模块化方式在工厂制造,然后运至现场组装,类似于“核能版的宜家椅子”。反应堆由劳斯莱斯设计,最终合同预计于今年晚些时候签署。

争议与反对意见

尽管政府看好其前景,该项目仍面临多方质疑:

  • 发电量与技术成熟度:影子威尔士大臣指出其发电量远低于吉瓦级大型电站;反对团体批评SMR是“未经证实的技术”。
  • 环保与替代能源:威尔士绿党领袖认为该项目成本高昂,是对现有清洁、廉价可再生能源的干扰;反对者还指出英国尚未就核废料的长期储存设施达成一致。
  • 国际反应:美国驻英大使对英国选择SMR而非美国西屋公司的大型核电站计划表示“极度失望”。唐宁街回应称,此举并未排除未来与美国制造商合作的可能。

历史背景与未来规划

Wylfa旧核电站于2015年关闭,此前日本日立公司的大型替代计划因成本超支于2021年流产。此次Wylfa在竞争中击败了格洛斯特郡的Oldbury站点。此外,Great British Energy-Nuclear还受命在全英寻找另一个大型核电站的选址,并将于2026年秋季汇报。

政治意义

该决定具有重大政治意义。英国工党政府希望借此展示其在大型基础设施投资上的决心。同时,在威尔士议会选举前六个月,这一重大投资宣布也有助于威尔士首席部长在争取额外资金和权力下放方面取得政治平衡与成果。

14. Show HN: Continuous Claude – run Claude Code in a loop (github.com)

Continuous Claude 项目摘要

项目简介

Continuous Claude 是一个自动化 CLI 工具,通过循环运行 AI 编码代理(如 Claude Code 或 Codex CLI)来处理大型、多步骤的开发任务。它解决了现有 AI 工具单次任务后即停止、缺乏自我改进能力且难以维持长上下文的问题,使开发者能够在无人值守时自动完成提升测试覆盖率或大规模代码重构等任务。

核心工作原理

该工具借鉴 CI/CD 实践,将 AI 代理置于连续循环中,并深度集成 GitHub 工作流:

  1. 自动化 PR 生命周期:每次迭代中,脚本创建新分支,调用 AI 生成代码并提交,随后推送并创建 Pull Request。
  2. CI 检查与合并:自动监控 PR 的 CI 检查和审查。通过则自动合并;失败则关闭 PR 并丢弃更改,利用失败经验在下次迭代中优化方案。
  3. 上下文持久化:通过共享的 Markdown 文件(如 SHARED_TASK_NOTES.md)作为外部记忆。AI 在迭代结束时记录进度和计划,确保跨迭代的上下文连续性,避免上下文漂移,实现“接力赛”式开发。

关键功能

  • 多提供商支持:支持 Claude Code 和 Codex CLI 作为代码执行和审查代理。
  • 灵活的终止条件:可通过最大迭代次数(--max-runs)、成本预算(--max-cost)或运行时间(--max-duration)限制循环,支持组合使用。
  • 并行执行:利用 Git worktrees 支持多实例同时运行,互不冲突,适合处理单体仓库的不同模块。
  • 自动代码审查:支持在迭代后运行 Reviewer pass,自动验证更改、运行测试并修复问题。
  • 容错与限流:具备瞬态命令重试、速率限制处理及连续失败时的暂停诊断功能。
  • 早期停止:当代理连续发出项目完成信号时,可提前终止循环。

安装与依赖

  • 安装方式:提供 macOS/Linux 的 Bash 一键安装脚本和 Windows 的 PowerShell 脚本,亦支持手动下载配置。
  • 前置依赖:需安装并认证 AI 编码 CLI(Claude Code 或 Codex)、GitHub CLI (gh),以及 jq(Windows PowerShell 版本原生支持 JSON 解析,无需 jq)。
15. Dissecting Flock Safety: The Cameras Tracking You Are a Security Nightmare [video] (www.youtube.com)

核心主题

该内容主要探讨 Flock Safety 监控摄像头存在的严重安全漏洞,指出这些用于追踪的摄像头实际上构成了巨大的网络与隐私安全隐患。

关键发现

  • 系统极度脆弱:视频演示了如何在不到 30 秒的时间内成功入侵 Flock Safety 摄像头,直观地暴露了该设备在网络安全防护方面的严重缺陷。
  • 安全反噬:文章与视频标题强调,这些本应提升安全性的追踪摄像头,因其极易被黑客攻破,反而成为了名副其实的“安全噩梦”。

公众反响与争议

  • 观众对这类监控技术公司及其背后的资本表达了强烈批评。一条高赞评论指出,不应将这类企业美化为普通的“初创公司”,它们本质上是“由亿万富翁资助的社会问题”,深刻反映了公众对大规模监控技术滥用的担忧与反感。

附加信息

  • 视频描述中包含对新闻聚合平台 Ground News 的商业推广,提供了获取全球新闻报道的订阅折扣链接。
16. Nevada Governor's office covered up Boring Co safety violations (fortune.com)

核心事件

内华达州州长办公室涉嫌不当政治干预,迅速撤销了对埃隆·马斯克旗下Boring Company超40万美元的安全罚款,并删除了相关公共会议记录,引发对该机构监管独立性的严重质疑。

事件起因

两名消防员在Boring Company的拉斯维加斯隧道演练中,因接触有毒化学泥浆遭受永久性烧伤。内华达州职业安全与健康管理局(OSHA)调查后,于5月28日开出三项“故意”且“严重”的违规罚单,罚款逾40万美元,为该机构近十年来开出的最大罚单之一。

政治干预与记录掩盖

罚款下达数小时后,Boring公司总裁致电州长办公室。次日,多名州政府高官(含前特斯拉员工)与Boring高管会面,会议伊始OSHA即宣布撤销罚单。随后,公共档案中州长办公室参会的记录被无故删除,案件卷宗出现文件缺失、撤销理由遗漏等多处违规操作。前OSHA官员与律师指出,此类高层政治干预严重违反法定程序。

官方回应

内华达州OSHA辩称,撤销罚款是因原罚单不符法律要求,记录问题属“无心之失”,并在媒体质询后修正了文件。官方称州长办公室介入企业投诉是“标准做法”,并随后出台新规,要求对“高调”或大型雇主案件增加30天的法律审查期。

持续的安全隐患与后续影响

  • 现场危险频发:Boring隧道内安全文化堪忧,员工称化学烧伤几乎每天发生且缺乏防护培训,近期还发生了工人骨盆被压碎及触电等重伤事故。
  • 监管士气受挫:OSHA内部员工因担忧遭到报复而对监管Boring公司感到恐惧,认为机构的独立执法与问责能力已被削弱。
  • 屡遭其他处罚:Boring公司近期还因违规向下水道排放废水并隐瞒事实,被环保部门罚款近50万美元。迄今为止,该公司从未向OSHA缴纳过任何安全违规罚款。
17. A new documentary about the history of forced psychiatric treatment in Spain (www.bbc.co.uk)

西班牙强制精神治疗历史纪录片背景:Mariona的真实经历

背景与拘禁起因 1968年,16岁的Mariona在极度保守的右翼天主教家庭中成长。受当时反独裁和民权思潮影响,她开始接触左翼及反佛朗哥活动家,并参与街头抗议。1969年,因朋友被捕,Mariona为躲避警察夜不归宿,引发父母愤怒并遭到严厉禁足。夏末,她留信试图离家出走,被父母以“未成年逃跑”为由报警并在港口逮捕。

Patronato系统的“再教育” Mariona未被带回家,而是被父母直接送入西班牙司法部下属的Patronato系统修道院。该系统有权拘留25岁以下的“不顺从”女性进行所谓的“再教育”。Mariona被归类为“叛逆和堕落女性”,遭受严苛管控:

  • 隔离与禁言:被拘禁者被严格禁止交谈,以防“坏”女孩影响他人,试图交友者会被强行隔离或转移。
  • 繁重劳作与思想灌输:日常包括祈祷、打扫以及在修女朗读声中进行长时间的缝纫劳作(以防止交谈)。机构对她们进行洗脑,逼迫其承认行为恶劣并请求宽恕。

反抗、绝食与强制精神治疗 四个月后,Mariona获准回家过圣诞但趁机逃跑,数小时后被抓回并注射镇静剂。在修道院遭到严重孤立后,她开始绝食抗议。因体重急剧下降,她被转入精神病诊所,遭受了残酷的强制治疗:

  • 电击与胰岛素昏迷疗法:她接受了电击治疗以及当时在多国因致命风险已被停用的“胰岛素昏迷疗法”(通过注射胰岛素诱导深度低血糖昏迷,企图“重置”大脑)。
  • 身心摧残:每日的治疗使她精神迟钝、被迫顺从,并造成了不可逆的记忆损伤。因察觉记忆衰退,她开始秘密写日记。

纪录片的渊源与结局 由于绝食未见好转,精神科医生将她绑在床上强迫进食。在绝望中濒临自杀边缘的Mariona,被医生告知只有达到40公斤的目标体重才会被释放。Mariona在1971年写下的这本日记,在半个多世纪后成为了她女儿Marina拍摄这部揭露西班牙强制精神治疗历史纪录片的核心素材。

19. Anthropic's report smells a lot like bullshit (djnn.sh)

本文作者对AI公司Anthropic近期发布的一份关于“破坏中国国家级黑客利用AI进行网络间谍活动”的报告提出严厉批评,认为其缺乏技术实质,本质上是一篇不负责任的营销软文。

缺乏技术细节与偏离行业标准

合格的威胁情报报告应提供妥协指标(IoCs)、战术技术和程序(TTPs)、MITRE ATT&CK映射及具体工具细节,以帮助安全团队检测和防御攻击。然而,Anthropic的报告完全缺失这些关键信息。报告中关于“AI自主代理独立执行80-90%战术操作”及“进行主动漏洞利用和数据窃取”的声明,均缺乏可验证的事实证据和技术细节支撑,无法帮助其他机构保护自身网络。

毫无根据的国家级归因

报告将攻击归咎于名为“GTG-1002”的中国国家支持的黑客组织。作者强调,网络攻击的国家级归因极其严肃,可能引发外交后果。Anthropic在未提供任何实质性证据或归因依据的情况下随意指控,是极不负责任的行为。作者质疑,所谓的“高级威胁行为者”可能仅仅是使用自动化工具的普通黑客。

真实的营销动机

作者指出,报告在缺乏技术细节的情况下,其真实目的暴露在结尾的建议中——呼吁安全团队“尝试将AI应用于防御”。这表明Anthropic发布报告的根本动机是通过夸大AI在网络攻击中的威胁来制造恐慌,进而推销其自家的AI安全产品。

总结

作者认为,该报告完全达不到专业安全公司的发布标准,无法通过任何审查。Anthropic为了商业利益和制造噱头,牺牲了基本的职业道德与事实依据。作者呼吁安全行业应拒绝接受此类缺乏证据的报告,并要求科技公司提供更高标准、基于事实的威胁情报。

20. AirPods libreated from Apple's ecosystem (github.com)

LibrePods 项目总结

项目概述

LibrePods 是一个开源项目,旨在打破 Apple 生态限制,使非 Apple 平台(目前支持 Android 和 Linux)能够使用 AirPods 的专有功能。项目通过逆向工程实现了 AirPods 与 Apple 设备间数据交换的专有协议。 注:因开发者备考,项目开发暂停至 2026 年 6 月,期间可能无法及时回复 PR 和 Issue。

核心功能

项目在 Android 和 Linux 上实现了多项 AirPods 专属功能:

  • 已实现功能:切换聆听模式(降噪/通透等)、入耳检测、精确电池状态、设备重命名、对话感知及自动连接。
  • 平台差异:头部手势目前仅 Android 支持;Linux 暂不支持部分常规与辅助功能配置。

技术实现与结构

  • 协议逆向:核心基于开发者自行逆向工程的通信协议,并参考了社区的 Wireshark 协议解析插件。
  • VendorID 欺骗 (Spoofing):将蓝牙 VendorID 伪装为 Apple(Linux 修改 main.conf,Android 使用 Xposed 模块),可解锁“降低高音量”、“助听器”和“通透模式自定义”等高级特性。
  • AI 辅助开发:部分模块由 AI 生成,包括 Android 端的头部手势(逻辑与 UI)、Xposed 偏移设置、故障排除工具,以及 Linux 端的部分 Rust 代码(由 Kotlin 翻译)和音频集成。核心的蓝牙管理服务(AACP/ATT)及主要 UI 均为手动编写。

高级特性与规划

  • 多设备连接:支持最多两台设备同时连接,实现音频与控制的无缝切换,并同步原生级别的设备接管提示弹窗。
  • 无障碍与助听器:支持配置助听器听力图及通透模式的高级参数(如放大、平衡、环境降噪等)。
  • 待开发/受限功能:“查找 (Find My)”、“头部追踪空间音频”、“心率监测”和“高质量双向音频”仍在计划或研究中,部分功能在 Android 上可能需要 Root 权限。纯立体声空间化不在项目范围内。

许可与替代方案

  • 开源许可:项目基于 GNU General Public License v3.0 (GPLv3) 许可证发布。
  • 替代方案:文档推荐了其他平台的替代应用,如 Android 端的 CAPod,以及 Windows 和 Steam Deck 端的 MagicPods。
21. FPGA Based IBM-PC-XT (bit-hack.net)

项目目的

本项目旨在使用真实元件与现代FPGA技术复刻1980年代的IBM XT个人电脑。核心目标是完美运行EGA版游戏《猴岛小英雄1》,要求具备完整的鼠标支持、可写硬盘(用于存档)以及Adlib音频输出。

硬件结构

  • 处理器:采用低功耗NEC V20 CPU(兼容Intel 8088),其低功耗特性简化了与3.3V FPGA的IO电平匹配。
  • 内存:使用1MB低功耗SRAM芯片提供XT所需的640KB系统内存。
  • 核心控制:基于Lattice LFE5U-25F芯片的icesugar-pro FPGA开发板。
  • 外设与接口:双PS/2接口(键盘和鼠标)、Micro SD卡槽(作为固定硬盘)、YM3014B DAC(音频数模转换)、压电蜂鸣器、复位开关及状态LED。
  • PCB设计:使用EasyEDA设计,并由JLCPCB进行SMT贴片加工(SRAM芯片因缺货为手工焊接)。

关键功能与门级开发 (Gateware)

  • 总线控制器:设计状态机以处理V20 CPU的总线周期(如内存读写、IO操作),精确控制时序,确保CPU信号采样与驱动的正确性。
  • 内存管理架构:BIOS加载至FPGA Block RAM;显存写入同时发送至Block RAM和系统SRAM,而读取仅来自SRAM。此设计释放了Block RAM的读取端口,专供VGA信号发生器读取显存数据。
  • 系统测试与引导:初期通过简单的汇编程序(点亮LED)验证总线;随后使用诊断ROM测试SRAM、可编程间隔定时器(i8253)和中断控制器(i8259);系统稳定后替换为通用XT BIOS实现正常引导。
  • 存储系统(硬盘模拟):通过Verilog编写SPI控制器访问Micro SD卡,并开发Option ROM处理BIOS INT13H中断。利用8088汇编实现SD卡读写协议,将SD卡映射为512字节扇区的DOS硬盘。开发期间使用了自制的软件模拟器进行代码调试。
  • 鼠标支持(PS/2转串口桥接):由于早期BIOS不支持双向通信的PS/2协议,作者使用Verilog实现了一个桥接器。FPGA主动向PS/2鼠标请求事件,并将其转换为伪UART外设数据。开发时通过逻辑分析仪抓取真实鼠标波形,辅助Verilator进行精确仿真。
  • 音频系统:利用PIT定时器驱动蜂鸣器,并在磁盘访问时输出脉冲以模拟硬盘寻道声。Adlib音频采用开源的YM3812(FM芯片)软核,通过自定义Verilog模块将PCM数据转换为YM3014B DAC所需的3:10浮点格式,还原真实的FM音色。

其他特性

项目还实现了CGA和EGA图形支持,并包含一个USB转UART桥接器,可直接从主机PC向SD卡传输文件。外观采用CNC加工的透明亚克力面板以保护裸板。所有源代码、原理图及Gerber文件均已在GitHub(bit-hack/iceXt)开源。

22. I don’t need a Steam Machine (brainbaking.com)

文章背景

Valve宣布了Steam产品线的新硬件,其中包括专为客厅主机游戏设计的Steam Machine。该设备运行SteamOS,性能是Steam Deck的六倍,预计于明年春季发售。

核心内容

为了克制购买冲动,作者列举了大量自己“不需要”Steam Machine的理由,主要可归纳为以下几类:

  • 硬件与环境限制:电视不支持4K,无需过高画质性能;电视柜无多余空间放置新盒子;HDMI接口已满,需额外购买切换器;电视常被家人占用,且该设备不具备Switch的掌机模式。
  • 游戏偏好与积压:偏好实体卡带和GOG平台,排斥Steam数字版;不喜欢3A大作;已有大量未玩的Switch实体游戏和GOG数字游戏积压;喜欢的独立游戏最终多会登陆Switch。
  • 替代方案充足:作为复古游戏玩家不需要六倍性能;MacBook配合CrossOver已能流畅模拟Windows游戏,且未来计划升级MacBook;不需要用该设备处理办公事务。
  • 成本与时间精力:传闻售价超600欧元,还需额外购买Steam Controller;无法作为公司开销报销;缺乏玩游戏和折腾按键映射配置的时间;前置LED显示屏等花哨功能在新鲜感过后会显得多余。

最终结论

尽管作者详细列举了二十多条说服自己“不需要”该设备的理性理由,但在文章结尾,作者依然放弃了克制,决定购买一台Steam Machine。

23. Why use OpenBSD? (www.tumfatig.net)

本文总结了在 UNIX Social Camp 上关于使用 OpenBSD 理由的演讲内容,详细阐述了该操作系统的核心优势与特点。

OpenBSD 概述

OpenBSD 是一个免费的类 UNIX 操作系统,于 1995 年从 NetBSD 分支而来。其开发高度集中于可移植性和安全性,支持 10 多种硬件架构,并孕育了 OpenSSH、LibreSSL 和 pf 等被广泛使用的知名软件。

使用 OpenBSD 的核心原因

  1. 开放与高兼容性:代码完全开源,安装介质免费下载。系统不仅支持多种硬件平台,还兼容 Qemu、KVM、VirtualBox、VMware 等主流虚拟化环境。
  2. 功能丰富且注重安全
    • 安全性:内置权限分离、栈保护、地址随机化、pledge(2)unveil(2) 等多项安全创新机制。
    • 服务器端:自带构建防火墙(pf)、路由器(bgpd)、堡垒机(sshd)、Web/反向代理(httpd/relayd)、邮件服务器(smtpd)及 DNS/DHCP/LDAP 等全套网络服务组件。
    • 工作站端:集成 xenodm、Xorg、多种窗口管理器(如 cwm、fvwm)以及 tmux、vi、ksh 等经典终端、多路复用器和编辑工具。
  3. 完善的二进制包生态:为 amd64、arm64 等所有支持的架构提供上万个二进制软件包,涵盖 Apache、PostgreSQL、Node.js 等服务器软件,以及 Firefox、LibreOffice、Chromium、KDE 等主流桌面应用。
  4. 设计简洁易用
    • 提供跨架构统一的文本安装向导和详尽的 man 文档(如 afterboothier)。
    • 系统管理高度简化且逻辑清晰:使用 rcctl 管理服务,fw_update 管理非自由固件,pkg_add/info/delete 处理软件包及依赖,并通过 syspatchsysupgrade 轻松完成安全补丁与系统升级。

学习与进阶资源

文章建议新用户遵循“RTFM”原则,优先查阅官方 FAQ、手册页(Manual Pages)和邮件列表存档。此外,还提供了进一步学习的指引,包括作者的博客与视频教程、OpenBSD Amsterdam VPS 提供商,以及 OpenBSD Journal、pf 官方教程和多位社区知名开发者的优质博客资源。

24. Iran begins cloud seeding operations as drought bites (www.arabnews.com)

伊朗正面临数十年来最严重的干旱,当局已启动人工增雨作业以缓解缺水危机。

核心行动与技术

  • 作业区域:本水文年(9月起)的首次人工增雨飞行在西北部的乌尔米耶湖盆地开展。该湖为伊朗最大湖泊,目前已因干旱大面积干涸成盐床。后续作业将在东、西阿塞拜疆省进行。
  • 技术手段:通过飞机向云层喷洒碘化银和盐等颗粒触发降雨。伊朗于去年宣布已自主研发该技术。

严峻的干旱现状

  • 降水锐减:伊朗气象局指出,今年降水量较长期平均水平骤降约89%,国家正经历50年来最干旱的秋季。
  • 极端缺水:首都德黑兰降水量降至百年最低,全国半数省份连续数月无降水,多地供水水库水位创历史新低。
  • 局部天气:近期西部和西北部部分省份(如伊拉姆、克尔曼沙阿、库尔德斯坦等)出现降雨,德黑兰附近的托查尔山也迎来今年首场降雪,但未能根本扭转整体旱情。

官方警告与背景

  • 疏散警告:伊朗总统马苏德·佩泽什基安警告,若冬季前仍无降雨,德黑兰可能面临疏散居民的危机。
  • 气候背景:伊朗多为干旱气候,长期受旱灾和热浪困扰,且气候变化预计将使情况进一步恶化。
  • 区域举措:除伊朗外,阿联酋等地区国家也已采用人工增雨技术来应对缺水问题。
25. Hyundai Paywalls Brake Pads replacement on Ioniq 5 N (www.thedrive.com)

现代Ioniq 5 N刹车片更换限制与“维修权”争议

事件背景

一位2025款现代Ioniq 5 N车主反映,由于缺乏专门的计算机设备,无法自行更换刹车片。现代等品牌的电动车普遍采用电子驻车制动(EPB),更换刹车片时需通过计算机信号释放或缩回驻车制动,取代了传统的机械拉线操作。

技术与设备壁垒

普通的OBD扫描仪无法通过现代汽车的软件认证。要执行刹车片更换操作,必须使用以下设备之一:

  • 现代专有GDS系统:经销商级硬件和软件,售价约6000美元。
  • J2534标准第三方设备:现代推荐了三款符合SAE J2534标准的设备(售价800至2000美元不等),并需额外购买现代J2534诊断软件订阅(每周60美元)。

最终认证限制

即便购买了上述昂贵的设备,普通DIY车主仍无法操作。现代的技术文档明确规定,访问双向测试和特殊功能必须拥有NASTF(国家汽车服务工作组)颁发的“诊断专业人员”或“车辆安全专业人员”凭证,而该凭证仅面向专业机械师发放。

现代汽车官方回应

现代汽车表示,要求使用GDS或J2534应用将后卡钳置于维修模式,是为了确保车辆功能与客户安全。虽然敏感操作需要NASTF认证以维持安全性和问责制,但现代近期已更新J2534应用,放宽了部分售后市场的限制。官方强调GDS工具对公众开放购买,并正在探索平衡安全性与日常维护便利性的解决方案。

“维修权”争议与行业现状

  • 法规合规性:指责现代“向维修权宣战”在法律技术上并不准确。现代支持J2534标准,未将技术完全封锁在专有工具内,符合现行“维修权”法规。实际的限制来自于NASTF的认证门槛,而非现代直接拒绝。
  • 实际影响:尽管在法规层面合规,但技术壁垒确实将原本车主可自行DIY的基础维修变成了仅限专业修理厂的业务,实质上剥夺了车主的维修便利。
  • 行业普遍性:现代并非唯一设置此类障碍的车企。虽然车企出于防盗等安全考量限制敏感数据访问,但行业仍需在车辆安全与车主对自有车辆的完全访问权之间寻找更好的平衡。
  • 第三方工具:网络上存在可能绕过现有软件限制以释放电子刹车的第三方工具,但存在未知风险且未获任何官方认可。
26. Things that aren't doing the thing (strangestloop.io)

核心主旨:只有真正的执行才等于行动,任何周边行为都无法替代实际行动。

文章列举了人们在面对某项任务时,经常误认为是“正在做事”的无效行为,主要可归纳为以下四类:

  • 计划与筹备:做前期准备、安排专门时间、列待办事项清单。
  • 社交与宣告:把计划告诉他人、与朋友讨论、在社交媒体上发文宣扬。
  • 情绪与内耗:因未行动而自我厌恶、怨恨已成功的人、抱怨客观障碍、幻想成功后的赞美与追捧。
  • 学习与研究:阅读操作指南、研究他人的成功经验,甚至包括阅读这篇文章本身。

最终结论: 所有的筹备、计划、宣传、情绪波动和理论学习都不是任务本身。唯一能算作“做这件事”的行为,就是真正去“做这件事”。

27. libwifi: an 802.11 frame parsing and generation library written in C (2023) (libwifi.so)

libwifi 库总结

库简介

libwifi 是一个使用 C 语言编写的快速、简单的共享库,采用 Apache 2.0 许可证。它主要用于在 Linux 和 macOS 平台上生成和解析多种 802.11 无线帧。该库设计简单易用,同时暴露了支持高级功能的接口,并将代码的整洁与可读性放在首位。其核心目标包括跨架构支持、无警告编译以及严格的错误检查。

编译与使用要求

在使用 libwifi 时,必须确保系统已安装该共享库,并在编译链接时传递 -lwifi 参数。

核心功能与结构

1. 帧解析 (Parsing)

解析 802.11 帧的通用流程是:读取原始数据包、解析为通用数据类型,最后提取特定帧的数据。

  • 数据捕获:通常结合 libpcap 从文件或监听接口循环读取原始数据包,并识别链路类型(例如判断是否包含 Radiotap 头)。
  • 通用解析:将捕获的数据传递给 libwifi_get_wifi_frame() 函数。该函数会检查帧的有效性、类型和子类型,并将基础数据存储在 struct libwifi_frame 结构体中。
  • 特定数据提取:根据帧的类型和子类型(如管理帧中的 Beacon 帧),调用对应的解析函数(如 libwifi_parse_beacon())。解析结果会存储到专用的结构体中(如 struct libwifi_bss),从而方便开发者直接获取 SSID、信道等具体信息。

2. 帧生成 (Generation)

生成无线帧只需向对应的生成函数提供必要的参数数据。

  • 创建帧结构:调用特定的生成函数(如 libwifi_create_beacon()),传入广播地址、发送地址、SSID 和信道等参数,初始化相应的帧结构体。
  • 导出原始字节:使用长度获取函数(如 libwifi_get_beacon_length())计算所需内存并分配缓冲区,然后通过 dumper 函数(如 libwifi_dump_beacon())将帧以原始字节格式写入缓冲区。
  • 输出与清理:生成的原始字节流可直接用于写入 pcap 文件或通过监听模式接口进行注入发送。操作完成后,需调用专用的释放函数(如 libwifi_free_beacon())及 free() 来清理内存。
28. Transgenerational Epigenetic Inheritance: the story of learned avoidance (elifesciences.org)

跨代表观遗传:线虫学习回避行为的争议与验证

研究背景 识别并避免病原体对动物生存至关重要。秀丽隐杆线虫(C. elegans)能够学习避免致病菌铜绿假单胞菌(PA14菌株)。2019年,Murphy团队发现这种“学习到的回避”行为可通过表观遗传跨代传递,使未接触过PA14的后代(最多至第四代)也能获得 avoidance 能力。

科学争议与最新验证 近期,Hunter团队对F2代的遗传现象提出质疑,称仅观察到亲代(P0)和子一代(F1)的回避行为,未在F2代中观察到。Murphy团队回应称,这是由于Hunter团队修改了原始实验方案所致。随后,Vidal-Gadea团队发表研究,成功证实了Murphy团队的发现,确认对PA14的学习回避行为确实可遗传至F2代。

方法学差异与机制分析 研究分歧的核心在于实验方法与环境的差异:

  1. 线虫固定方式:标准实验使用叠氮化钠固定线虫,以捕捉其初始反应,防止线虫在实验过程中接触PA14后产生新的“学习回避”。而Hunter团队采用降温法(4°C)固定线虫,这允许线虫在实验结束前接触PA14并离开,从而无意中为实验(尤其是假设线虫从未接触过PA14的阴性对照组)引入了新的学习干扰。
  2. 初始吸引现象:未接触过PA14的线虫最初会被该菌吸引。Murphy和Vidal-Gadea团队均观察到了这一现象,而使用降温法的Hunter团队通常未能观察到。
  3. 分子机制(P11小RNA):PA14产生的小RNA P11是诱导跨代表观遗传和维持化学吸引所必需的。Murphy团队推测P11表达不足可能导致实验无法重复。尽管Hunter团队认为F1代的成功遗传排除了P11表达不足的可能,但低水平P11是否仅支持F1代遗传而阻断F2代遗传仍属未知。

结论 线虫的行为实验对环境信号高度敏感,极易受细微变量影响。Vidal-Gadea团队的验证结果支持了Murphy团队的观点,即Hunter团队在实验程序上的修改(如线虫固定方法的改变)是导致其未能观察到跨代表观遗传现象的主要原因。

29. AMD continues to chip away at Intel's x86 market share (www.tomshardware.com)

2025年第三季度x86处理器市场份额分析摘要

根据Mercury Research的数据,2025年第三季度AMD在x86处理器市场的各细分领域继续扩大份额,Intel份额相应下滑。本季度x86 CPU总出货量环比持平,打破了常规的季节性增长趋势,主因是Intel将产能转向服务器端,导致IoT和入门级移动处理器出货量大幅下降。

关键里程碑与整体表现

  • 总体份额突破:AMD的x86客户端和服务器CPU出货份额首次超过25%,达到25.6%(Intel为74.4%)。
  • 广义芯片份额:若计入嵌入式、IoT和游戏主机SoC,AMD的整体x86芯片份额达到30.9%,同比显著增长。

细分市场分析

桌面CPU

  • 出货量与份额:得益于Ryzen 9000系列在高端市场的强劲需求,AMD桌面CPU份额创下33.6%的历史新高。Intel因第13和14代Core处理器供应短缺及新产品吸引力不足,份额降至66.4%。
  • 收入表现:AMD桌面CPU收入创历史新高,高端SKU的强劲销售使其收入增速远超出货量增速,高利润市场地位进一步巩固。

移动CPU

  • 出货量与份额:AMD移动CPU份额环比增至21.9%,Intel因入门级小核处理器供应受限降至78.1%。但同比来看,AMD微降0.4%,Intel微增0.4%。
  • 收入表现:Intel低端CPU短缺推高了其平均售价(ASP),AMD则受益于中高端Ryzen移动处理器出货增加,双方收入均受产品组合改善的积极影响。

服务器CPU

  • 出货量与份额:服务器CPU出货量整体持平,AMD份额微增至27.8%,Intel降至72.2%。
  • 产品组合与收入:本季度核心变化在于产品组合优化。AMD加速推进高核心数EPYC 'Turin',Intel提升了Xeon 6 'Granite Rapids'的采用率。AMD凭借最新EPYC 9005系列平台的高溢价,服务器收入创下历史新高。

总结

2025年第三季度,AMD凭借桌面端Ryzen 9000系列的强劲表现及服务器端新平台的推进,在出货量和收入上均取得增长,尤其在高端高利润市场表现突出。Intel虽在总出货量上仍占主导,但受制于供应短缺和产品过渡,其市场份额及高利润率阵地正持续向AMD转移。

30. AsciiMath (asciimath.org)

AsciiMath 概述

AsciiMath 是一种易于编写的数学标记语言,旨在通过直观的文本语法快速生成和渲染数学公式。

核心功能与配置方式

AsciiMath 提供两种主要的渲染集成方案:

  1. 使用 MathJax(推荐):通过引入 MathJax(支持 v4 和 v2)脚本,可在所有浏览器中稳定渲染公式。默认使用反引号(`)作为公式定界符,且支持自定义配置。
  2. 使用 ASCIIMathML.js:直接加载该脚本,将 AsciiMath 和部分 LaTeX 语法转换为 Presentation MathML。此方法依赖浏览器对 MathML 的原生支持,跨浏览器显示可能存在差异。

语法与符号系统

AsciiMath 的符号设计尽量模仿其渲染后的视觉外观(如用 oo 表示无穷大),并提供无需前导反斜杠的 TeX 替代写法。其内置符号库包含:

  • 操作与关系符号:基础运算、集合运算、等于/不等、包含关系及比例等。
  • 逻辑符号:与、或、非、蕴含、全称量词(AA)与存在量词(EE)等。
  • 杂项与结构符号:分数、根号、积分、微分、几何符号、各类箭头及分组括号(含绝对值、取整、范数等)。
  • 修饰与字体:重音符号(如向量、上划线)、上下大括号、颜色控制,以及黑体、空心、花体等多种字体命令。
  • 字母与函数:完整的希腊字母表(区分大小写及变体),以及三角函数、对数、极值等标准数学函数。

特殊排版与注意事项

  • 矩阵与布局:使用嵌套方括号(如 [[a,b],[c,d]])构建矩阵,圆括号构建列向量。支持增广矩阵,并可利用矩阵语法实现多行方程式的对齐布局。
  • 上下标规则:支持复杂上下标,但下标必须严格位于上标之前(如 int_0^1)。
  • 导数表示:使用撇号或分数形式,对于非 x,y,z,t 的变量,必须使用括号进行分组(如 (dq)/(dp))。
  • HTML 解析冲突:在使用 <> 符号时,务必在字符两侧添加空格,以防被 HTML 解析器误识别为标签。

解析语法结构

AsciiMath 采用巴科斯范式(BNF)定义了其底层解析语法,将公式结构逐层抽象为:

  • 基础词法:变量/数字(v)、一元符号(u)、二元符号(b)及左右括号(l, r)。
  • 表达式层级:由基础元素构成简单表达式(S),结合上下标生成中间表达式(I),最终通过并列或分数结构组合成完整的数学表达式(E)。
31. Garbage collection is useful (dubroy.com)

背景与目的

作者曾参与 J9 Java VM 的垃圾回收(GC)开发,其积累的 GC 底层知识在后续的高层开发中发挥了关键作用。当前,作者团队正使用 Ohm 解析文本文档,并在 ProseMirror 中渲染富文本,旨在实现文本与富文本的双向增量更新。

遇到的问题

Ohm 支持增量解析和增量转换,可通过定义“属性”(类似记忆化访问者)构建持久化数据结构,使编辑后的新抽象语法树(AST)与旧树共享大量节点。

为了构建 ProseMirror 的更新事务,系统需要找出存在于旧树但不在新树中的节点。作者最初采用了类似追踪垃圾回收(Tracing GC) 的算法:在每次编辑后遍历整个文档并记录所有节点,通过集合对比找出被删除的节点。然而,这种方法需要遍历所有存活节点,完全破坏了增量处理“仅处理变更部分”的性能优势,在处理长文档的小幅修改时效率低下。

解决方案与关键机制

受论文《垃圾回收统一理论》(A Unified Theory of Garbage Collection)的启发,作者认识到追踪 GC(处理存活的“物质”对象)与引用计数(处理死亡的“反物质”对象)在本质上是互为对偶的。

基于这一理论,作者将算法从“追踪”转换为“引用计数”机制:

  1. 为文档树中的所有节点维护引用计数。
  2. 当生成新文档时,递减旧根节点的引用计数(使其归零)。
  3. 递归递减其所有子节点的引用计数。

最终效果

通过引用计数机制,系统只需访问和递减那些未被新树复用的“死亡”节点,而无需遍历文档中大量保持不变的“存活”节点。这完美契合了增量处理的需求,高效地识别出被删除的节点,从而显著提升了长文档局部编辑时的更新性能。

32. The inconceivable types of Rust: How to make self-borrows safe (2024) (blog.polybdenum.com)

核心观点

本文探讨了如何在Rust中安全、零成本地实现“自借用(self-borrows)”。作者指出,Rust无法同时传递对象及其引用并非借用检查的固有限制,而是当前类型系统的设计缺陷。通过支持“安全的异步函数”,可从根本上解决自借用问题。

值层面的类型系统扩展

为手动解糖异步函数并命名局部变量类型,需对类型系统进行以下扩展:

  • 命名类型与生命周期:为闭包、异步函数等不可命名类型提供名称。引入 life 'aend 'a 语法,显式声明和结束生命周期。
  • 形式化“不可思议的类型”:将编译器影子类型检查器中的概念纳入正式类型系统:
    • 部分移动/借用:引入 Foo{bar} 语法表示部分字段有效或借用的类型。
    • 负生命周期界限:引入 !'a 语法,表示被借用变量在生命周期 'a 结束后才恢复有效的类型。
  • 绑定生命周期:引入 bind 'a in x 语法,允许将生命周期标记作为状态存储在结构体或枚举中。

字节层面的底层机制改进

解决Rust混淆“值所有权”与“内存所有权”带来的底层问题:

  • 所有权引用(Owned references):引入 &own T 类型。它拥有值的所有权但不拥有内存,允许在 Drop 中安全地移动和析构字段,并解决非移动类型的初始化问题。
  • 安全原地转换(Safe transmute):允许在内存布局和字段位置相同的情况下,对不同基础类型(如异步状态机的不同状态)进行安全的原地转换。
  • 安全的枚举更新:在 Future::poll 中,通过将枚举标签临时设为 Final 获取所有权引用,完成状态转换后再恢复标签,辅以编译器的局部别名分析确保安全。

Pin与Move的替代方案

  • Move自动特征:用 Move 特征替代现有的 Pin 机制,更自然地处理非移动类型。
  • 枚举细化(Enum refinements):引入 T: Trait if AutoTrait 语法(如 T: Future if Move),指定枚举的当前变体满足特定自动特征,而非要求所有变体均满足。
  • 稳定的解引用类型:允许 Box 等容器在借用内部数据时,自身仍保持可移动性。

结论

尽管受限于向后兼容性,这些改动几乎不可能在现有Rust中实现,但本文证明了自借用并非借用检查的理论盲区,而是Rust特定历史设计选择的产物。未来的系统级语言完全有能力原生支持该特性。

33. Wealth (saul.pw)

财富层级与结构性阶级差异总结

本文提出了一种基于数量级(指数)的财富分层模型,旨在通过宏观尺度揭示结构性阶级差异,避免同一层级内无意义的精确比较。该模型以1980年代初的美元为基准,文中数值均折算为2026年美元。

财富等级划分

文章将财富划分为13个数量级(↑-1至↑11),核心特征如下:

  • 生存挣扎与贫困(↑-1至↑2)
    • ↑-1 赤贫(<$3)与 ↑0 破产($3-$30):无法满足基本温饱,居无定所,完全依赖救济,无法就业或借贷。
    • ↑1 贫穷($30-$300)与 ↑2 下层阶级($300-$3k):住房极不稳定,依赖零工、慈善或政府援助。↑2阶层有稳定低收入,需基本理财技能以维持生活,难以承受意外支出。
  • 中产阶层(↑3至↑5)
    • ↑3 工人阶级($3k-$30k):住房稳定,依赖信用卡和车贷,能应对数月失业,但大额意外支出易致债务危机。
    • ↑4 中产阶级($30k-$300k):无不良债务,有储蓄和退休账户,可能拥有房产,享受一定生活自由,能应对一年失业。
    • ↑5 宽裕($300k-$3m):金钱不再是主要障碍,具备投资能力,可提前退休或留下遗产。
  • 富裕与巨富(↑6至↑8)
    • ↑6 富有($3m-$30m)至 ↑8 超级巨富($300m-$3b):就业通常为可选项。拥有世代财富、多处房产及奢侈品,雇佣专业团队管理资产,并高度依赖离岸避税和“买入、借贷、死亡”等高级税务筹划策略。
  • 顶级财富(↑9至↑11)
    • ↑9 多重亿万富翁($3b-$30b)与 ↑10 超级亿万富翁($30b-$300b):全球仅数百人,过去30年财富经通胀调整后仍增长10倍。
    • ↑11 巨型企业($300b-$3t):仅限极少数历史及现代科技巨头企业(如苹果、微软等)。

宏观财富对比示例

  • 国家与个人财富:全球总财富约↑14.7(500万亿美元)。小或贫穷国家为↑10,主要大国为↑13,中美为↑14。顶级个人财富可与国家匹敌,例如马斯克的个人财富等同于埃塞俄比亚全国,台湾的地区财富等同于整个非洲大陆。
  • 美国联邦预算:1910年至2020年间,美国预算增长了↑4(10000倍)。综合考量人口增长(↑0.5)、通货膨胀(↑1.5)和GDP增长(↑3.5),政府成本的扩张与国家经济和人口规模的增长呈合理的正相关。
34. Running the "Reflections on Trusting Trust" Compiler (2023) (research.swtch.com)

本文复现并分析了Ken Thompson在1983年图灵奖演讲中提出的经典编译器后门攻击。该攻击能在编译特定程序时植入后门,且源码不留痕迹。

攻击原理

  1. 自复制程序:编写能输出自身源码的程序(Quine)。
  2. 编译器“学习”:编译器编译自身时,将特定细节(如转义字符数值)保留在二进制中,无需源码体现。
  3. 注入与复制:修改编译器,使其在编译目标程序时插入后门,编译自身时插入修改代码。随后恢复干净源码,使后门仅存于二进制中。

代码复现与历史

作者获取了原始代码nih.a,在Unix V6模拟器中成功运行。通过执行脚本生成自复制C文件并替换系统编译器,最终使用隐藏密码“codenih”成功以root登录。 考证表明,代码写于1974-1975年间。它曾被PWB组复制,但因一个导致每次编译增加一个字节的bug,使编译器体积不断变大,最终被发现并清除。该后门从未传出贝尔实验室。

现代变体与安全反思

作者展示了该攻击在现代Go编译器中的变体,通过拦截输入流进行文本替换即可实现。基于此,作者提出以下反思:

  • 代码极简:实际后门仅约120行,通过简单文本替换实现,凸显了攻击的隐蔽与易用性。
  • Go的引导机制:Go编译器从早期的C语言版本(Go 1.4)逐步构建,不依赖自身编译自身,杜绝了二进制后门的隐藏空间。
  • 多样化双重编译(DDC):使用两个独立编译器分别编译源码并对比生成的二进制文件,可有效验证编译器是否被篡改。
  • 可重现构建:验证二进制的前提是构建过程完全可重现,这在现代系统中因环境变量等因素仍具挑战。
  • 供应链安全现状:当前生态盲目信任第三方代码,供应链风险远超以往,亟需加强构建验证与信任引导。
35. Archimedes – A Python toolkit for hardware engineering (pinetreelabs.github.io)

Archimedes:面向硬件工程的 Python 工具包

项目概述

Archimedes 是一个专为可部署控制系统工程设计的开源 Python 框架。其核心目标是成为“硬件领域的 PyTorch”,结合 Python 的高开发效率与 C 语言的硬件可部署性。它允许工程师使用 NumPy 开发、分析和验证算法,并自动生成用于嵌入式系统的优化 C 代码。

核心功能与结构

  • Python 到 C 的代码生成:解决 Python 无法直接部署到典型嵌入式系统的问题。底层依托 CasADi 库,将 NumPy 代码转换为 C++ 计算图并自动生成高效 C 代码(如卡尔曼滤波器),免去了手动翻译算法或依赖昂贵商业生态的痛点。
  • 函数编译与加速:通过 @arc.compile 装饰器将 Python 函数编译为 C++ 计算图。利用符号数组和 NumPy 数组分发机制,避免了传统 JIT 编译的开销,使复杂函数的执行速度比纯 Python 提升 5-10 倍。
  • 仿真、优化与求根:提供类似 SciPy 的接口,集成 SUNDIALS 的 CVODES 求解器(用于 ODE 仿真)、IPOPT(用于约束非线性优化)以及牛顿迭代法(用于求根),这些求解器均可嵌入计算图中以加速运行。
  • 自动微分:基于计算图实现高效的自动微分,自动计算梯度、雅可比矩阵等导数信息。广泛应用于系统线性化、参数估计和轨迹优化,替代了传统低效且不精确的有限差分法。
  • 结构化数据类型:引入 @struct 装饰器支持层次化数据操作(类似 JAX 的 PyTree),契合物理系统的模块化分解。结构化数据可展平为 1D 向量,并在生成的 C 代码中自动映射为嵌套的 struct 类型。

设计理念

控制系统开发需要在快速迭代与严谨部署间取得平衡。Archimedes 旨在解决现有工具在代码维护和硬件部署上的割裂问题,提供类似深度学习框架的整洁、模块化代码结构,同时满足工程级的高性能仿真与微控制器(MCU)部署需求。

项目状态与未来规划

  • 当前状态:项目目前处于“公开测试版”(Public Beta),核心功能已在实际工程应用中验证,API 保持稳定。借助成熟的 CasADi 后端,确保了符号与数值计算的高可靠性。
  • 发展路线图:未来 6-12 个月的开发重点包括:支持混合仿真(DAE、多速率控制)、增强硬件部署支持(HIL 测试、静态分析)、丰富物理建模组件(参考系、运动学树)以及高级算法开发(MPC、状态机、传感器融合)。
  • 社区参与:作为 GitHub 上的开源项目,鼓励开发者通过尝试框架、提交 Issue、参与 Discussion 讨论以及 Star 仓库来提供反馈并支持项目发展。
36. TiDAR: Think in Diffusion, Talk in Autoregression (arxiv.org)

研究背景与动机

扩散语言模型具备快速并行生成的潜力,而自回归(AR)模型凭借因果结构在生成质量上更具优势。现有方法难以在吞吐量、GPU利用率和生成质量间取得平衡:推测解码(Speculative Decoding)的起草效率较低,而现有的扩散模型解码方式往往牺牲了生成质量或丧失了并行性。

核心方法:TiDAR

论文提出 TiDAR(Think in Diffusion, Talk in Autoregression),一种序列级混合架构。该架构在单次前向传播中,利用专门设计的结构化注意力掩码,实现以下协同过程:

  • Think(思考/起草):通过扩散模型并行起草(生成)候选 token。
  • Talk(表达/输出):通过自回归方式对最终输出进行采样。

技术优势

  • 高效计算:充分利用 GPU 计算密度,在起草与验证能力间实现良好的平衡。
  • 低开销部署:作为独立模型设计,对推理服务(serving)非常友好。
  • 精确缓存:原生支持精确的 KV cache。

实验结果与突破

在 1.5B 和 8B 参数规模的生成与似然任务中,TiDAR 与 AR 模型、推测解码及扩散模型变体进行了广泛评估:

  • 吞吐量与效率:得益于并行起草、采样机制及精确 KV cache 支持,其实际吞吐量超越推测解码,并在效率和质量上全面优于 Dream 和 Llada 等扩散模型。
  • 重大突破:TiDAR 是首个在消除与 AR 模型质量差距的同时,将生成速度(tokens/second)提升 4.71倍至5.91倍 的架构。

论文元数据

  • 标题:TiDAR: Think in Diffusion, Talk in Autoregression
  • 报告类型:NVIDIA 技术报告
  • 研究领域:计算与语言 (cs.CL)、人工智能 (cs.AI)
  • 提交时间:2025年11月12日
37. PgFirstAid: PostgreSQL function for improving stability and performance (github.com)

PgFirstAid:提升 PostgreSQL 稳定性与性能的开源工具

项目简介 PgFirstAid 是一个易于部署的开源 PostgreSQL 函数和视图,旨在提供按优先级排序的优化操作列表,以提升数据库的稳定性和性能。该工具受 SQL Server 的 FirstResponderKit 启发,专为所有用户(包括非专业 DBA)设计,可在数秒内提供可操作的数据库健康洞察。

核心特性

  • 零依赖:仅需单个 SQL 函数,无需外部工具。
  • 结果分级:问题按严重程度(CRITICAL、HIGH、MEDIUM、LOW、INFO)进行优先级排序。
  • 可操作的建议:每个问题均提供具体的修复步骤及官方文档链接。
  • 深度查询检查:可选集成 pg_stat_statements 扩展以分析查询工作负载。

健康检查维度

  • 严重 (CRITICAL):缺少主键、未使用的大型索引(>10MB 且 0 次扫描)。
  • 高 (HIGH):表膨胀(>20%)、缺少统计信息、重复索引、非活跃复制槽、超大表(>100GB)及超多列表(>200列)。
  • 中 (MEDIUM):统计信息过时、索引效率低、过多顺序扫描、高连接数、长事务/长查询/阻塞查询,以及基于 pg_stat_statements 的多项查询性能指标(如执行时间长、缓存命中率低、临时块溢出等)。
  • 低 (LOW):缺少外键索引、长时间空闲连接、空表/单列表、无近期活动表、低使用率索引及从未登录的角色。
  • 信息 (INFO):数据库大小、PG 版本、已安装扩展、服务器运行时间及日志目录/大小信息。

安装与使用

  • 部署:将函数或视图定义复制到数据库并执行即可,无需配置。建议使用环境中的最高权限以避免权限问题。
  • 查询:通过 SELECT * FROM pg_firstAid();SELECT * FROM v_pgfirstAid; 运行。
  • 过滤:支持按 severity(严重程度)或 category(类别:表、查询、复制、系统、数据库健康)进行条件过滤和问题统计。

性能影响与兼容性

  • 轻量安全:仅执行只读操作,利用已缓存的系统目录视图,通常执行时间不到 1 秒,不会锁定或阻塞用户查询。
  • 兼容性:支持 PostgreSQL 10+(重点自动化验证 15-18 版本),兼容自建 PG 及主流云数据库(AWS RDS/Aurora、Azure Database、GCP Cloud SQL)。

最佳实践与注意事项

  • 运行时机:适用于日常巡检、部署前检查、重大变更后验证、性能故障排查及容量规划。
  • 权限要求:需要对系统目录(pg_catalog)的读取权限,非超级用户可能会返回较少结果。
  • 操作警告:执行修复建议(如 VACUUM FULL 或删除索引)前,务必在非生产环境测试并仔细审查,部分操作需要维护窗口。
  • 扩展增强:建议在各平台(自建或云环境)配置并启用 pg_stat_statements,以获取更深度的查询级健康检查。