2025 07 10 HackerNews

2025-07-10 Hacker News Top Stories #

  1. Supabase 的 Model Context Protocol(MCP)可能导致 SQL 数据库泄露。
  2. 美国法院推翻了 FTC 的“点击取消”规定,认为其制定过程存在程序缺陷,规定要求公司提供与注册服务同样简便的取消服务方式。
  3. Rust 的 Tree Borrows 通过树结构替代栈结构,解决了 Stacked Borrows 的限制,在 30,000 个包的测试中表现优异,获得了 PLDI'25 杰出论文奖。
  4. Git 的 CVE-2025-48384 漏洞通过回车符注入,攻击者可在克隆子模块时执行远程代码,用户需更新 Git 至修复版本并谨慎使用 –recursive 选项。
  5. Ikea 转向 Thread 和 Matter 标准,推出 20 多款智能家居设备,取代 Zigbee 设备,支持与其他品牌设备兼容,计划于 2025 年 1 月发布。
  6. 林达・亚卡里诺(Linda Yaccarino)离任 X 公司 CEO,任职两年,未具体说明离职原因,公司在马斯克收购后经历了重大变化。
  7. 许多所谓的“RESTful”API 并不完全遵循 REST 原则,尤其在超媒体驱动(HATEOAS)方面存在不足,Fielding 的论文定义了 REST 的核心约束。
  8. 保加利亚将于 2026 年 1 月 1 日正式加入欧元区,列弗兑换欧元汇率为 1.95583,标志其在经济一体化方面的重要进展。
  9. Astro 框架以静态 HTML 为核心,仅在需要交互时加载 JavaScript,采用“岛屿架构”优化性能,适合内容驱动型网站,但不适合复杂 SPA。
  10. RapidRAW 是一款非破坏性且 GPU 加速的 RAW 图像编辑器,由 18 岁开发者创建,目标是成为 Adobe Lightroom 的现代替代品。

Supabase MCP can leak your entire SQL database #

https://www.generalanalysis.com/blog/supabase-mcp-blog

这篇文章讨论了 Model Context Protocol(MCP)在与外部工具交互时可能引发的安全问题,特别是针对 Supabase 的 MCP 集成。文章通过一个示例展示了攻击者如何利用 Supabase 的 MCP 集成泄露开发者的私有 SQL 表数据。

问题概述: 大型语言模型(LLMs)通常根据预定义的指令处理数据。系统提示、用户指令和数据上下文都作为文本提供给 LLM。核心问题是 LLM 无法区分指令和数据的界限。如果用户提供的“数据”看起来像是指令,模型可能会将其作为指令处理。

设置环境: 文章作者创建了一个 Supabase 项目,模拟了一个典型的多租户客户支持 SaaS。实例中只包含虚拟数据,启用了行级安全性(RLS),没有引入额外的扩展或策略。攻击利用的是“开箱即用”的配置,包括标准服务角色、默认模型、RLS 和一个代表开发者发出 MCP 调用的语言模型助手。

角色与权限边界:

  • 客户/攻击者:使用公共“提交工单”表单,无角色(RLS 限制)。
  • 支持代理:使用支持仪表板,支持角色(RLS 限制)。
  • 开发者:使用 Cursor IDE 和 Supabase MCP,服务角色(绕过 RLS)。
  • IDE 助手:由 Cursor 调用的 LLM,以服务角色执行 SQL。

应用程序: 支持应用程序允许工作人员开启支持工单并与代表交流。信息保存在由 Supabase 管理的 SQL 数据库中。开发者可能偶尔使用 Cursor 的代理列出最新的支持工单及其消息。

正常工作流程: 支持应用程序允许用户开启工单并与支持代理交换消息。所有数据,包括消息和支持工单,都存储在 Supabase 管理的 SQL 数据库中。开发者偶尔使用 Cursor 中的 AI 助手查看开放的工单。Cursor 通过 Supabase MCP 服务器查询数据库并生成最近支持活动的摘要。

攻击过程: 攻击者通过提交一个新工单并发送一个精心构造的消息开始攻击。消息正文包括一个友好的问题和一个非常明确的指令块,直接针对 Cursor 代理。指令要求代理读取 integration_tokens 表并将所有内容作为新消息添加到工单中。当开发者后来使用 Cursor 查看开放工单时,代理会按照嵌入的指令操作,导致敏感数据泄露。

缓解措施: 这种攻击源于两个设计缺陷的结合:过度权限的数据库访问(服务角色)和对用户提交内容的盲目信任。虽然 MCP 解锁了强大的自动化能力,但需要谨慎处理以避免安全退步。文章建议团队可以采取两个立即步骤来减少暴露:使用只读模式的服务角色和对用户提交的内容进行验证和清理。


HN 热度 811 points | 评论 442 comments | 作者:rexpository | 1 day ago #

https://news.ycombinator.com/item?id=44502318

  • Supabase 工程师正在努力通过文档更新和测试来降低 LLMs 受到攻击的风险
  • 尽管采取了措施,但提示注入仍然是一个未解决的问题,任何包含私有数据的数据库或信息源都存在风险
  • 正在开发更细粒度的权限控制和更多的文档警告,以提高安全性
  • 有人质疑将 MCP 作为安全边界的合理性,认为应该有分离的 LLM 上下文来处理不同的任务
  • 有人担心“劝阻”计算机不执行某些操作的安全性,认为编程应该是明确的
  • 有人指出,与传统编程不同,现在的 AI 技术引入了模糊的输入和输出
  • 有人对模糊输入和输出表示担忧,认为这与他们对计算机的期望相反
  • 有人提到,尽管人类在没有模糊性的情况下也难以确保程序的安全,但现在的情况更加复杂
  • 有人批评当前的安全实践,认为 MCPs 绕过了现有的安全屏障,增加了风险
  • 有人对当前的网络安全状况表示悲观,认为企业更关心的是快速竞争而不是安全
  • 有人提到微软云服务被黑客攻击的频率,并质疑其安全性
  • 有人指出,由于网络攻击导致的损失巨大,不重视安全的组织可能无法生存

US Court nullifies FTC requirement for click-to-cancel #

https://arstechnica.com/tech-policy/2025/07/us-court-cancels-ftc-rule-that-would-have-made-canceling-subscriptions-easier/

美国联邦上诉法院近日推翻了一项“点击取消”规定,该规定要求公司提供与注册服务一样简便的取消服务方式。原定于 7 月 14 日生效的联邦贸易委员会(FTC)规定被美国第八巡回上诉法院宣告无效。

由三名法官组成的小组一致裁定,拜登时代的 FTC,当时由主席莉娜·汗领导,未能遵循美国法律要求的完整规则制定程序。裁决指出:“虽然我们当然不支持在负面选择营销中使用不公平和欺骗性的做法,但委员会规则制定过程中的程序缺陷在这里是致命的。”

法官们表示,他们对 FTC 的动机表示同情,许多美国人“发现自己无意中被注册到循环订阅计划中,继续为不需要的产品或服务付费,因为他们忽略了取消订阅。”去年,FTC 更新了 1973 年的负面选择规则,增加了“禁止卖家歪曲重大事实并要求披露重大条款、明确消费者同意和简单取消机制”的条款。

FTC 被要求在一项规则的年度经济影响估计超过 1 亿美元时进行初步监管分析。FTC 在《拟议规则通知》(NPRM)中估计,该规则不会有 1 亿美元的影响。但后来一名行政法官发现,该规则的影响超过了这一阈值,指出合规成本将超过 1 亿美元,“除非每家企业使用的专业服务时间少于 23 小时,且是按估计的最低小时费率计算”,第八巡回法院的裁决说。尽管行政法官发现了这一点,FTC 并未进行初步监管分析,而是“仅发布了最终监管分析和最终规则”。

法官们拒绝了 FTC 的论点,FTC 辩称美国法律“不要求委员会在规则制定过程后期进行初步监管分析”,并且“任何所谓的错误都是无害的,因为 NPRM 讨论了对 1973 年[负面选择]规则的拟议修正案的替代方案,并分析了记录保存和合规成本”。法官们不同意 FTC 的观点,写道“法定语言‘应发布’要求在任何情况下,只要委员会发布了拟议规则通知,并且超过了 1 亿美元的阈值,就必须进行单独的初步分析,供公众审查和评论”。

包括有线电视公司在内的许多行业团体和企业在四个联邦巡回法院起诉 FTC。这些案件被合并到第八巡回法院,由巡回法官詹姆斯·洛肯、拉尔夫·埃里克森和乔纳森·科贝斯决定。洛肯由乔治·H·W·布什任命,而埃里克森和科贝斯是特朗普任命的。法官们表示,由于缺乏初步分析,行业团体和企业没有足够的时间来质疑 FTC 的发现。


HN 热度 529 points | 评论 485 comments | 作者:gausswho | 1 day ago #

https://news.ycombinator.com/item?id=44504699

  • 法官根据实际法律而非听起来合理的东西做出裁决,FTC 在制定规则时存在程序上的缺陷
  • 法院关注法律实际规定,但历史上也有选择性适用法律的案例,如 Wickard v Filburn 案
  • 法官可能根据助手筛选的信息做出裁决,存在对成本估算的夸大空间
  • 法院有时遵循法律,有时为了特定目的而选择性适用法律
  • 法院遵循法律裁决是正确的,不应批评
  • 法院的选择性法律适用可能服务于非法议程
  • 法院的裁决有时对商业有利,有时对消费者不利,这种选择性是危险的
  • FTC 和政府机构如果总是低估规则的经济影响,将削弱监管能力
  • 法院的裁决有助于维护监管机构的制衡
  • 法院的裁决可能过于强调程序,忽视了消费者因未取消订阅而损失的巨额资金
  • 法官裁决有时似乎遵循法律,但有时又与法律背道而驰
  • 100 万美元的规则影响门槛在当前经济环境下显得过低,许多小企业的成本影响可能远超此数

Tree Borrows #

https://plf.inf.ethz.ch/research/pldi25-tree-borrows.html

这个网页是关于“Tree Borrows”的研究介绍,属于 ETH Zurich(苏黎世联邦理工学院)的 D-INFK(计算机科学系)下属的编程语言基础实验室(Programming Language Foundations Lab)的研究项目之一。

Rust 编程语言以其基于所有权的类型系统而闻名,该系统提供了强大的保证,如内存安全和数据竞争自由。然而,Rust 也提供了不安全的逃逸口,这些逃逸口不自动保证安全,必须由程序员手动维护。这造成了一种紧张关系:一方面,编译器希望利用类型系统的强保证,特别是关于指针别名的保证,以解锁强大的过程内优化。另一方面,这些优化很容易被“表现不佳”的不安全代码所破坏。为了确保这些优化的正确性,就需要明确定义什么是“表现不佳”的不安全代码。

为了解决这些问题,研究者们提出了 Tree Borrows。顾名思义,Tree Borrows 通过将 Stacked Borrows 核心的栈替换为树来定义。这种方法克服了上述限制:在对 30,000 个最广泛使用的 Rust crates 进行评估时,Tree Borrows 比 Stacked Borrows 拒绝了更少的测试用例(54%)。此外,研究者们还在 Rocq 中证明了 Tree Borrows 保留了 Stacked Borrows 的大部分优化,并且还能实现重要的新优化,尤其是读-读重排序。

该研究的论文(PDF 格式)、工具和源代码可以通过提供的外部链接访问。Tree Borrows 的研究在 PLDI'25 上获得了杰出论文奖。


HN 热度 379 points | 评论 59 comments | 作者:zdw | 9 hours ago #

https://news.ycombinator.com/item?id=44510600

  • C 语言的严格别名规则被认为是糟糕的,而 Rust 提出的别名规则对编译器更有用,对程序员来说也不那么繁重。
  • Rust 提供了实际的 in-language opt-out 机制:使用裸指针,并且有工具可以检查代码。
  • Rust 的别名规则可能为编译器优化提供了一个新的平衡点,但是否正确还有待时间验证。
  • 在嵌入式开发中,Rust 的语义比 C 更清晰,没有 C 中关于 UB 的复杂和不明确的规则。
  • Rust 的 Tree Borrows 规则简化了对引用的理解,指针操作语义明确,没有 C 中抽象机器的复杂性。
  • 期待 Rust 的别名模型能够进入官方文档,使得 unsafe Rust 比 C 更容易自信且正确地编写。
  • Rust 的别名规则与 C 不同,Rust 的别名规则更精细,不关心“物理”类型,允许在同一内存上进行不同的类型解释。
  • 通过移除编译器中传递别名信息到 LLVM 的部分,可以评估别名信息对性能的影响。
  • 有人认为 Linus 对编译器的看法应该半信半疑,因为其专业领域与编译器不同。
  • 基本的别名分析对于性能提升非常重要,但更复杂的别名分析带来的性能提升有限。
  • 有人猜测,理论上完美的别名分析可能在非 HPC 代码上带来约 20% 的速度提升。
  • 有人提到,Apple 的编译器团队将默认设置改为严格别名后,关键工作负载速度提升了 5-10%,并且修复问题比预期容易。

Breaking Git with a carriage return and cloning RCE #

https://dgl.cx/2025/07/git-clone-submodule-cve-2025-48384

这篇文章讨论了一个关于 Git 的严重安全漏洞 CVE-2025-48384,该漏洞允许攻击者在 Unix-like 平台上通过使用 git clone --recursive 命令克隆不受信任的仓库来实现远程代码执行(RCE)。文章建议用户更新到修复了该漏洞的 Git 版本,以及其他嵌入 Git 的软件(包括 GitHub Desktop)。

文章首先介绍了机械打字机时代的遗留问题——回车(Carriage Return,CR)和换行(Line Feed,LF)。Unix 系统通过仅使用 LF 来分隔行来简化这个问题,而 Windows 和一些互联网协议则使用 CR+LF。Git 使用简单的.ini 风格的配置格式,这种格式不仅用于用户的配置文件,还用于.gitmodules 文件,该文件跟踪子模块。

文章解释了 Git 如何处理配置文件中的 DOS 行尾,以及如何读写配置文件。关键的问题在于,当配置文件中的值被写回时,如果值包含特定的字符(如空格、分号或井号),Git 会将其用双引号包围。但是,如果值以 CR 结尾,Git 在读取时会将其剥离,这可能导致安全问题。

文章进一步解释了这个漏洞如何影响 Unix 系统上的子模块处理。如果.gitmodules 文件中的路径以 CR 结尾,Git 在写入配置文件时会剥离 CR,导致路径验证后发生变化。这可能导致子模块克隆到错误的路径,类似于 CVE-2024-32002 漏洞。

文章提供了一个手动缓解措施,即在克隆时不使用 --recursive 选项,先检查.gitmodules 文件是否安全,然后再初始化子模块。但是,GitHub Desktop 默认使用 --recursive 选项,因此使用 GitHub Desktop 克隆可能会触发这个漏洞。

文章最后提到,这个漏洞的补丁相对简单,确保在写入包含 CR 的字符串时,将其用引号包围。这个漏洞可以用来将恶意文件放置在文件系统的几乎任何位置,实现任意文件写入。最直接的利用方式是写入.git 目录并创建钩子脚本,从而在 Git 运行钩子时执行攻击者控制的代码。文章没有提供概念验证(PoC),但提到这是一个对 CVE-2024-32002 漏洞利用的简单修改。文章还提到,这不是第一次 CR 导致 Git 问题,也不是第一次发现配置解析中的问题。


HN 热度 359 points | 评论 151 comments | 作者:dgl | 1 day ago #

https://news.ycombinator.com/item?id=44502330

  • 通过修改 Git 配置值中的回车符(CR),可以导致 Git 将文件错误地写入.git 目录而非子模块的工作目录,从而允许攻击者通过子模块的 post-checkout 钩子执行任意代码。
  • 攻击者需要在目标系统的.git/hooks 目录下写入 shell 脚本才能执行远程代码。
  • 这个问题对于 GitHub 来说很容易阻止,但许多 Git 仓库并不与 GitHub 有关。
  • 子模块可以是任何 URL,GitHub 完全阻止这个问题需要爬取其他代码托管服务,这可能导致安全错觉。
  • 即使可以写入.git/hooks,攻击者已经可以执行任意代码。
  • 任何时候如果能够任意文件写入,通常也就意味着可以远程代码执行。
  • 将.git 目录移出工作树目录,并使用无权限进程仅访问工作树目录来处理所有文件操作,可能可以缓解这个问题。
  • 即使不使用 GitHub,使用 Git 的人也不在少数,不能被视为边缘情况。
  • 攻击者可以利用.git 目录的特殊路径来执行钩子,即使 Git 在克隆操作期间不应该接受任何钩子。
  • 完整的 PoC(Proof of Concept,概念验证)展示没有安全影响,因为大多数人在 git clone 之后通常会运行构建命令,这也会执行来自仓库的任意代码。
  • 使用自定 DSL(领域特定语言)进行配置时,如果没有正式的语法规范,可能会导致解析器和序列化器之间的不同步,从而引发安全问题。

IKEA ditches Zigbee for Thread going all in on Matter smart homes #

https://www.theverge.com/smart-home/701697/ikea-matter-thread-new-products-new-smart-home-strategy

Ikea 正在打造一个更智能的家居环境

瑞典家具巨头 Ikea 计划推出超过 20 款基于 Matter-over-Thread 协议的智能家居设备,以简化其智能家居系统并降低成本。Ikea 正在重新启动其智能家居产品线,使其低成本产品能够与其他品牌的产品协同工作,无论是否使用 Ikea 自家的智能中心。从 2025 年 1 月开始,Ikea 将发布一系列新的 Matter-over-Thread 智能灯具、传感器和遥控器,并将“推出更多新类型的产品和形式”,Ikea 瑞典的 David Granath 在接受 The Verge 独家采访时表示。Ikea 还在重启其音频产品线,以填补其货架上 Sonos Symfonisk 留下的空缺。新的一系列价格低廉、易于使用的家用蓝牙扬声器的前两款型号是 50 美元的复古风格 Nattbad 和将于 10 月上市的扬声器/台灯 Blomprakt,未来还将推出更多型号。

这些新产品是 Ikea 持续努力使其智能家居系统尽可能简单和实惠的一部分。“几年前,我们对智能家居和扬声器产品线的发展做出了一些战略决策,以 Ikea 的方式为更多人产生影响”,Granath 说。他提到了公司过去几年与 Zigbee 和 Sonos 合作的经验,以及参与创立和发展新的智能家居标准 Matter。“我们觉得我们已经到了那个点。有很多即将到来,但这都是第一步,把事情安排好。”

上周,Ikea 发布了其 Dirigera 智能家居中心的更新,目前处于测试阶段,将中心转变为 Matter 控制器并激活其长期休眠的 Thread 无线电,使其成为一个 Thread 边界路由器。这意味着它现在可以连接和控制任何兼容的 Matter 设备,包括其他品牌的设备,并在其 Home Smart 应用程序中控制它们。它还将与 Ikea 的新 Matter 设备一起工作,这些设备最终将取代现有的 Zigbee 设备,Granath 说。这是朝着更开放、即插即用的智能家居迈出的重要一步。

Blomprakt 是一款 LED 台灯,顶部集成了蓝牙扬声器。它是 Ikea 在从 Zigbee 和 Sonos 转型后,新关注智能家居和声音的一部分。图片:Ikea

最初,Dirigera 将只支持 Ikea 目前提供的 Matter 设备类型,因此不会有机器人吸尘器、门锁或冰箱。然而,Granath 表示,随着他们推出更多的智能家居产品,中心将更新以支持更多的设备类型。Dirigera 中心已经作为 Matter 桥接器,使基于 Zigbee 的 Ikea 设备能够连接到更大的 Matter 生态系统,如 Apple Home 和 Amazon Alexa。随着更新,它现在支持 Matter 1.4 和 Thread 1.4,使能量监测和加入现有 Thread 网络成为可能,等等。虽然完整的推广预计将在今年晚些时候进行,但测试版现在可以通过 Ikea 的 Home Smart 应用程序进行,但 Granath 表示,一些功能将受到限制。

Matter 为我们解锁了互操作性、易用性和可负担性

我们没有关于明年即将推出的 20 多款新设备的详细信息,但 Granath 确认它们将取代现有的功能。因此,新的智能灯泡、插头、传感器、遥控器、按钮和空气质量设备,包括温度和湿度监测器。它们还将采用新的设计。虽然“不一定是已经泄露的”,Granath 说,指的是今年早些时候出现的 Bilresa 双按钮的图片。他确实确认了一些新的产品类别将在 1 月到来,4 月及以后将有更多的产品,包括可能的 Matter-over-Wi-Fi 产品。定价将与之前的产品相当或更低,这些产品的价格从 10 美元以下开始。“可负担性对我们来说仍然是一个关键的优先事项。”

“使产品智能化的溢价已经不高了,所以你可以期待新的产品类型和形式的到来,”他说。“Matter 为我们解锁了互操作性、易用性和可负担性。标准化进程意味着更多的公司正在分担开发工作。”

尽管从 Zigbee 转型,Ikea 保留了 Zigbee 的 Touchlink 功能。这种点对点协议允许设备直接配对并一起工作,无需应用程序或中心,例如 Ikea 销售的灯泡和遥控器捆绑包。这意味着旧的 Zigbee 遥控器可以控制新的 Thread 灯泡,反之亦然,保留了与其 Tradfri 系列的向后兼容性。“Touchlink 和 Matter 将在新产品中共存,”Granath 说。“这对 Ikea 仍然非常重要——不是每个人都想要应用程序或中心。”有趣的是,Ikea 的新 Matter-over-Thread 产品也可以在没有 Ikea 中心或应用程序的情况下工作,因为它们可以直接在任何兼容的 Matter 智能家居生态系统中设置,如 Apple Home、Amazon Alexa、Google Home、Samsung SmartThings、Home Assistant 等。

Matter 的原生兼容性意味着你不必使用 Home Smart 应用程序和 Ikea 的中心。照片由 Thomas Ricker/The Verge 拍摄

Ikea 向 Matter 的全面采用转型,使其成为一个更开放的平台,这应该有助于其努力使智能家居更简单、更实惠。这也是行业的一个重大转变。Granath 说,Ikea 的目标是让客户从他们的产品中获得最大的价值——无论是与 Apple Home 一起使用,还是使用他们的中心,或者不使用任何中心。这就是为什么公司拥抱 Matter 的开放方法。“我们想要消除复杂性的障碍,我们希望它简单易用,我们只是希望它能工作,”他说。“如果你想要最用户友好的系统,选择我们的。但如果你是苹果用户,带上我们的灯泡,将其纳入你的苹果家庭。”

这次重启使 Ikea 成为将 Matter 带入主流市场的首批主要零售商之一。


HN 热度 356 points | 评论 220 comments | 作者:thunderbong | 14 hours ago #

https://news.ycombinator.com/item?id=44507971

  • IKEA 放弃 Zigbee 转向 Thread 和 Matter 标准,被认为不利于开放生态系统,且需要支付专利费用
  • 转向 Thread 会破坏与现有 Zigbee 设备的兼容性,用户可能需要更换设备或面临网络碎片化
  • 在 Home Assistant 平台上,运行多种类型的智能设备并不是问题,只需配置不同的无线电
  • 有用户表示,只使用 IKEA 智能家居产品,避免使用 Home Assistant,因为不想处理复杂的配置和故障排除
  • 有用户认为 Home Assistant 平台本身非常稳定,不需要频繁更新配置,但某些制造商的设备可能不稳定
  • 有用户提到,Home Assistant 的更新有时会导致问题,需要调试解决
  • 有用户表示,使用高质量的自动化灯光系统可以减少不稳定问题,而对不太重要的设备使用更便宜的解决方案
  • 有用户建议,对于只需要读取的传感器,最好避免使用蓝牙/Wi-Fi/Zigbee/Zwave,而是使用基本的、不需要更新的传感器
  • 有用户认为,某些设备的不稳定性是由于它们广播 API 的方式,而不是 Home Assistant 更新导致的连接问题

Linda Yaccarino is leaving X #

https://www.nytimes.com/2025/07/09/technology/linda-yaccarino-x-steps-down.html

林达・亚卡里诺(Linda Yaccarino)是埃隆・马斯克(Elon Musk)于 2023 年聘请的 X 公司的首席执行官,她于 2025 年 7 月 9 日宣布将离开该公司,任职两年。亚卡里诺在社交媒体平台 X 上发布了一条消息,表达了对马斯克的感激之情,称与他讨论 X 的愿景时,她意识到这是一个实现公司非凡使命的绝佳机会。虽然她没有具体说明离职的原因,但这一决定标志着 X 公司在马斯克接手后的动荡时期的一个阶段结束。

自马斯克在 2022 年以 440 亿美元收购 Twitter(现为 X)以来,公司经历了重大变化。马斯克削减了公司四分之三的员工,放松了平台上的言论限制,并将 X 作为政治发声的工具,这些改变曾让广告商感到不安,导致公司的广告业务下滑。此外,马斯克在 2023 年表示,他将 X 出售给了他的人工智能初创公司 xAI,这一不寻常的交易以全股票形式进行,X 的估值为 330 亿美元,而 xAI 的估值为 800 亿美元。

在此期间,马斯克的其他企业,如特斯拉和 SpaceX,仍在运作,他曾在华盛顿担任特朗普总统的顾问,并对外表示对组建第三个政党的兴趣。值得注意的是,在马斯克的各个公司中,管理层频繁变动,但 SpaceX 的总裁格温・肖特威尔(Gwynne Shotwell)自 2002 年公司成立以来一直担任该职务。

报道由《纽约时报》的技术记者迈克・艾萨克(Mike Isaac)和凯特・康格(Kate Conger)撰写。


HN 热度 338 points | 评论 501 comments | 作者:donohoe | 9 hours ago #

https://news.ycombinator.com/item?id=44510731

  • Linda Yaccarino 从 X 公司 CEO 变成了前 CEO。
  • 她公开演讲时表现不佳,没有实权,且明显是别人在幕后操控。
  • 尽管公司估值在她任职期间下降了 80%,但她并不应为此负责。
  • 她作为 CEO 没有权力,可能是公司表现不佳的原因之一。
  • 她同时向马斯克汇报并“管理”他,这种矛盾的职位设置令人惊讶。
  • 有人认为她作为 CEO 应该有能力为自己辩护,而不是完全顺从马斯克。
  • 如果她接受了一份完全是为了洗白马斯克声誉的 CEO 工作,那么她有社会责任不去接受。
  • 作为 CEO,她应该有能力站起来对抗马斯克,领导得更好。
  • 有人认为她没有权力对抗马斯克并不是一个有效的辩护。
  • 有人认为“只是遵循命令”并不是一个有效的辩护。
  • 有人认为她没有引起麻烦,保持了沉默。
  • 有人认为她作为替罪羊也应承担一部分责任。
  • 有人认为马斯克真正相信订阅模式,并且对 Twitter 上瘾,是一个冲动的赌徒。
  • 有人认为 Twitter 作为 AI 训练的来源可能比作为一个充满愤怒的社交网络更有价值。

Most RESTful APIs aren’t really RESTful #

https://florian-kraemer.net//software-architecture/2025/07/07/Most-RESTful-APIs-are-not-really-RESTful.html

这篇文章讨论了 REST(Representational State Transfer)架构风格在现代网络服务设计中的应用,以及许多所谓的“RESTful”API 实际上并不遵循 REST 原则的问题。

文章首先提到,要了解 REST,应该阅读 Roy Thomas Fielding 的博士论文《Architectural Styles and the Design of Network-based Software Architectures》,这篇论文首次提出了 REST 架构风格,并将其作为设计可扩展、高性能和可维护网络系统(特别是 Web 服务)的框架。Fielding 的论文分析了网络系统架构风格的优势和劣势,并定义了 REST 作为一种针对现代网络优化的特定架构风格,强调了可扩展性、简单性和适应性。

Fielding 在他的论文中并没有规定必须使用 HTTP 动词(如 GET、POST、PUT、DELETE)或者专注于 CRUD 风格的 API,这是 REST 经常被误解和简化的地方。他强调,许多所谓的“RESTful”API 没有实现 REST 的关键约束,尤其是使用超媒体来驱动应用状态转换。在他的 2008 年博客文章《REST APIs must be hypertext-driven》中,Fielding 明确指出,如果 API 不是由超文本驱动的,那么它就不能被称为 RESTful。

文章接着解释了“由超文本驱动”的含义,即许多声称是 RESTful 的 API 缺少了作为应用状态引擎的超媒体(Hypermedia as the Engine of Application State,简称 HATEOAS)。HATEOAS 是 REST 的一个基本原则,要求客户端通过服务器响应中嵌入的超媒体链接动态发现动作和交互,而不是依赖于外部的知识(例如 API 文档)。文章通过一个 JSON 示例展示了 HATEOAS 如何工作,强调了它如何解决客户端与服务器命名空间耦合的问题,提高了系统的可演化性。

文章还探讨了“资源”在 REST 中的定义,指出资源可以是任何可以被 URI 命名的信息,包括文档、图像、服务、集合等。Fielding 强调,资源是一组实体的概念映射,而不是任何特定时间点上与映射对应的实体。他还提到,资源的语义是资源标识符分配和资源填充表示的结果,服务器或客户端软件不需要知道或理解 URI 的含义,它们只是作为资源创建者(人类命名权威)将表示与 URI 标识的语义关联的通道。

最后,文章引用了 RFC 3986,进一步说明了资源可以是任何可以通过 URI 标识的东西,无论是物理对象、概念、文档、服务,甚至是虚拟或抽象的东西,只要它们可以被唯一识别和表示。

文章总结了 Fielding 对 RESTful API 的看法,他对于许多人将任何基于 HTTP 的接口称为 REST API 感到沮丧,并提出了六个规则,这些规则是判断一个 API 是否可以被称为 RESTful API 的标准。这些规则涉及到 API 是否依赖于单一通信协议、是否包含对通信协议的更改、是否主要定义用于表示资源和驱动应用状态的媒体类型等方面。


HN 热度 272 points | 评论 436 comments | 作者:BerislavLopac | 16 hours ago #

https://news.ycombinator.com/item?id=44507076

  • RESTful API 的实际应用与理论定义存在偏差,但这种用法已被广泛接受。
  • 人们更倾向于使用简单、易于控制的系统,即使它们不是理论上最优的。
  • 重复性工作虽然不理想,但在某些情况下可能比复杂的系统更容易维护。
  • 单一数据源生成多个部分的做法可能会因为不同团队和不同时间表导致系统脆弱和难以维护。
  • 微服务架构有时会导致版本和规范不一致,产生额外的摩擦和混乱。
  • FastAPI 结合了 API 实现、数据类型和生成 Swagger 规范,减少了重复工作。
  • gRPC 或 ConnectRPC(基于 HTTP 的 gRPC)因其简单和严格而受到推崇。
  • gRPC 由于使用了 Protocol Buffers 而受到批评,因为 Protocol Buffers 没有字段要求功能。
  • RESTful API 的灵活性导致了多种实现方式,增加了复杂性。

Bulgaria to join euro area on 1 January 2026 #

https://www.ecb.europa.eu//press/pr/date/2025/html/ecb.pr250708~b9676a9fa8.en.html

根据欧洲中央银行(ECB)的公告,保加利亚将在 2026 年 1 月 1 日正式加入欧元区。此次加入的核心内容如下:

  1. ** 固定汇率 **:保加利亚的货币 —— 保加利亚列弗(BGN)将以 1.95583 列弗兑换 1 欧元的固定汇率进入欧元区。这个汇率是保加利亚在欧元汇率机制(ERM II)中的当前中央汇率,保加利亚于 2020 年 7 月 10 日加入该机制。
  2. ** 监测协议 **:欧洲中央银行与保加利亚国家银行(Българска народна банка)达成了一项协议,将持续监测保加利亚列弗与欧元在外汇市场上的表现,直至 2026 年 1 月 1 日正式加入欧元区。
  3. ** 监管框架 **:自 2020 年 10 月 1 日起,ECB 已根据与保加利亚国家银行的密切合作框架,直接监督保加利亚的四家重要金融机构,并对 13 家较不重要的金融机构进行监管。
  4. ** 加入条件 **:保加利亚参与 ERM II 并遵循正常的波动范围至少两年,是其加入欧元区所需满足的收敛标准之一。
  5. ** 法律修正 **:列弗的转换汇率是通过对(EC)第 2866/98 号条例的修正而设定的,该修正将于 2026 年 1 月 1 日生效。

这一决定标志着保加利亚在经济一体化方面的重要进展,预计将对该国的经济和金融稳定产生积极影响。


HN 热度 267 points | 评论 315 comments | 作者:toomuchtodo | 23 hours ago #

https://news.ycombinator.com/item?id=44505308

  • 欧盟单一货币是一个成功且仍在扩张的项目,保加利亚的加入使得从西班牙到希腊几乎可以完全通过欧元区旅行。
  • 波兰目前反对采用欧元,认为放弃对经济的控制权给超国家非民主组织会带来更多劣势。
  • 波兰认为,货币供应应与经济增长率相匹配,而欧元区国家间的差异导致新欧盟国家物价上涨更快,收入却未增加。
  • 波兰认为欧元作为第二货币而非唯一货币更有利,因为这样可以在欧元区使用欧元而不受欧洲央行货币政策影响。
  • 波兰经济的增长部分得益于欧盟补贴,因此反对加入欧元区的观点可能只适用于未来十年。
  • 波兰作为欧盟成员国,不使用欧元也能享受欧盟共同市场的好处,如统一规则、资本流动、补贴和工业政策。
  • 波兰加入欧元区可能会削弱使用欧元的优势。
  • 波兰目前的战略是大幅现代化和增强军事力量,这使得它不太可能很快满足加入欧元区的财政标准。
  • 波兰无法制定货币政策是一个强有力的反对理由,可以参考希腊和西班牙的欧元危机。
  • 波兰经济之所以表现良好,部分原因是欧盟数十年来的大量补贴。
  • 波兰拥有与西欧国家相当的人力资本和经济潜力,但历史上受到分割、二战、苏联和缺乏马歇尔计划投资的影响。
  • 欧盟帮助落后国家提升经济是一个双赢的局面,波兰拒绝共享货币可能让其他成员国感到不满。
  • 波兰从二战中遭受的损失远超过欧盟提供的 280 亿欧元补贴。
  • 采用欧元可以降低货币兑换成本,例如降低抵押贷款利率,并在旅行和贸易中减少货币兑换的麻烦。

Astro is a return to the fundamentals of the web #

https://websmith.studio/blog/astro-is-a-developers-dream/

Astro 是开发者的梦想框架

迁移多个项目从 WordPress 到 Astro 后,作者成为了这个框架的忠实粉丝。Astro 是一个在 2021 年推出的网络框架,它与众不同。大多数 JavaScript 框架都是从构建复杂应用开始,然后尝试适应更简单的网站,而 Astro 则相反。它从一开始就是为了内容驱动型网站而构建的。Astro 的理念非常简单:内容驱动、服务器优先,默认情况下不包含任何 JavaScript(确实如此),同时易于使用且工具出色。这就像是有人问:“如果我们专门为我们大多数人实际制作的网站类型构建一个框架会怎样?”

岛屿架构

Astro 引入了一种名为“岛屿架构”的概念,一旦理解了它,你就会想知道为什么我们之前一直在用其他方式做事。传统框架会用 JavaScript 来水合整个页面,即使你有一个只有一个交互式小部件的简单博客文章,整个页面也会接受 JavaScript 处理。Astro 颠覆了这一点。你的页面默认是静态 HTML,只有需要交互的部分才会变成 JavaScript “岛屿”。想象一下,一个有成千上万字的博客文章,在 Astro 中,所有这些文本都保持为纯 HTML。只有你的评论区或图片轮播需要加载 JavaScript。其他一切都保持极快的速度。这是一个简单而巧妙的解决方案。

真正的性能,真正的影响

Astro 网站速度快,我们说的是比传统 React 框架快 40% 的加载时间。但重要的是,这不仅仅是为了给其他开发者留下深刻印象。这些性能提升直接转化为更好的搜索排名、更快乐的用户,以及更多的转化。在慢速设备或不稳定的移动连接上,差异更加明显。

真正交付的开发者体验

在 Astro 中的开发者体验感觉像是有人真的考虑了我们的工作方式。设置新项目是直接的,你将由他们友好的设置助手 Houston 引导完成整个过程。

看到顶部的代码围栏了吗?那在构建时运行,而不是在浏览器中。你的数据获取、你的逻辑 - 所有这些都在用户加载页面之前发生。你得到了出色的 TypeScript 支持,而没有钩子、状态管理或生命周期方法的复杂性。你可以使用任何框架(或不使用),Astro 不会限制你只使用一种做事方式。需要 React 来处理复杂表单?放进去。更喜欢 Vue 进行数据可视化?去吧。想要保持大多数事情作为简单的 Astro 组件?完美。它们都在一起无缝工作。

构建管道是现代且完整的。TypeScript 直接工作,Sass 编译内置,图片通过 Astro 的 <Image /> 标签自动优化,你在开发期间得到热模块替换。不需要设置 Webpack 配置或与构建工具斗争。你还可以灵活地渲染页面。全部静态构建以获得最大速度,服务器端渲染以获得动态内容,或在同一项目中混合两种方法。Astro 适应你需要的任何方式。

Astro 真正闪耀的地方

作者发现 Astro 非常适合营销网站、博客、电子商务目录和作品集网站。基本上,任何内容是英雄,你不需要复杂的客户端状态管理的地方,Astro 都表现出色。

权衡

Astro 不是万能的。如果你正在构建一个具有大量客户端路由的复杂单页应用程序(SPA),需要 ISR(你好 Next.js),或者你需要在组件之间进行重状态管理,你可能需要其他东西,比如 Next.js。生态系统正在增长,但与 Next.js 相比仍然非常小。基于文件的路由在更大的项目中可能会感到限制(尽管有些人喜欢它)。

快速开始

开始真的很简单:

# 创建项目
npm create astro@latest my-site
cd my-site
# 如果需要,添加框架
npx astro add react
# 开始开发
npm run dev

将你的页面放在 src/pages/ 中,组件放在 src/components/ 中,你就可以开始构建一些伟大的东西了。

为什么 Astro 很重要

经过多年的 JavaScript 框架变得越来越复杂,Astro 感觉像是一股清新的空气。它回到了网络的基本 - 快速、可访问、内容优先的体验 - 但具有我们所期望的所有现代开发者便利。作者在迁移多个项目后最深刻的印象是 Astro 使正确的事情变得容易。想要一个快速的网站?那是默认的。想要添加交互性?简单,但只在你需要的地方。想要使用你最喜欢的框架?去吧,Astro 不会评判。

如果你正在构建任何内容驱动的东西,从简单的博客到完整的电子商务网站,认真考虑 Astro。你的用户将获得更快的体验,你将享受开发过程,你的核心网络指标将是惊人的。

注意 - 你正在阅读这篇博客的网站是用 Astro 构建的。


HN 热度 264 points | 评论 213 comments | 作者:pumbaa | 14 hours ago #

https://news.ycombinator.com/item?id=44507854

  • Astro 将网页默认为静态 HTML,只有需要交互的部分才会使用 JavaScript,这与过去的“渐进增强”或“网页”类似,现在被称为 JavaScript 岛屿
  • Astro 的主要价值在于它与 JS 框架集成,允许框架处理 HTML 的子树,将初始状态渲染为字符串,并在客户端用服务器预加载的数据进行水合
  • Astro 并不是渐进增强,因为加载前的 HTML 不需要工作,它只是匹配 JS 水合后的初始状态
  • Astro 听起来并不特别具有变革性,因为它依赖于 JavaScript 来接管表单等元素
  • Astro 的价值在于首先发送非功能性 HTML,然后通过后来执行的 JS 修复,这与全 JS 相比,可能会简化框架
  • Astro 的优势在于编写组件只需一次,服务器-客户端传递对开发者透明,这是传统框架所不具备的
  • Astro 提供了透明的服务器-客户端上下文切换,以及用户感知到的更好性能
  • Astro 的优雅之处在于它以更现代的方式实现了过去的理念,尽管概念本身并不新
  • Astro 找到了一个很好的平衡点,将服务器和客户端代码放在一个代码库中,能够定义哪些是服务器端代码,哪些是客户端代码,而不是全部依赖 SPA 架构

RapidRAW: A non-destructive and GPU-accelerated RAW image editor #

https://github.com/CyberTimon/RapidRAW

RapidRAW 是一个美观、非破坏性且 GPU 加速的 RAW 图像编辑器,以性能为核心构建。它是 Adobe Lightroom® 的现代、高性能替代品,为 Windows、macOS 和 Linux 提供轻量级(小于 30MB)的功能丰富、美观的编辑体验。

该项目由一位 18 岁的开发者作为个人挑战开发,目标是为自己的照片编辑工作流程创建一个高性能工具,同时加深对 React 和 Rust 的理解,并得到 Google Gemini 的支持。RapidRAW 适合喜欢在干净、快速、简单的工作流程中编辑照片的摄影师。它优先考虑速度、美观的用户界面和强大的工具,让您能够快速实现创意色彩愿景。不过,它不适用于寻求绝对、完美色彩准确性的用户。虽然结果对大多数目的来说都很好,但重点在于流畅的创意过程,而不是完美的色彩精度。

RapidRAW 仍在积极开发中,尚未像 Darktable、RawTherapee 或 Adobe Lightroom® 这样的成熟工具那样完善。目前,重点是构建一个快速、愉快的核心编辑体验。如果用户在使用过程中遇到错误,欢迎报告以便开发者修复。反馈对改进产品非常有帮助。

近期更新包括:

  • 2025-07-08:能够切换单个调整部分的可见性,修复了左上角缩放错误,修正了裁剪面板中的缩放行为,保持默认的原始纵横比。
  • 2025-07-08:增加了图像评分过滤器,重新设计了带有改进布局、更清晰部分和嵌入式 GPS 地图的元数据面板。
  • 2025-07-07:改进了生成性 AI 功能,并更新了 AI 路线图。
  • 2025-07-06:与 ComfyUI 集成了初始的生成性 AI - 更多详情,请查看 AI 路线图。
  • 2025-07-05:能够用当前设置覆盖预设。
  • 2025-07-04:高速且精确的缓存,显著加速大图像编辑。
  • 2025-07-04:大幅改进的着色器,提供更好的去雾、更准确的曲线等。
  • 2025-07-04:预定义了 90° 顺时针旋转和翻转图像的能力。
  • 2025-07-03:从 rawloader 切换到 rawler,以支持更广泛的 RAW 格式。
  • 2025-07-02:AI 驱动的前景/背景遮罩。
  • 2025-06-30:AI 驱动的主题遮罩。
  • 2025-06-30:预编译的 Linux 构建。
  • 2025-06-29:新的 5:4 纵横比,新的低对比度灰色主题,以及更多相机支持(DJI Mavic 系列)。
  • 2025-06-28:发布清理,CI/CD 改进和次要修复。
  • 2025-06-27:初始发布。更多关于早期进展的信息,请查看初始开发日志。

RapidRAW 的关键特性包括:

  • 核心编辑引擎:所有图像调整都在 GPU 上使用自定义 WGSL 着色器进行处理,以实现快速反馈。
  • 遮罩:通过 AI 主题和前景检测立即创建精确遮罩。与传统的画笔、线性和径向遮罩结合,提供很好的控制。
  • 生成性编辑:通过文本提示移除对象或添加新元素。每个编辑都会创建一个非破坏性的补丁层,由可选的 ComfyUI 后端提供支持。
  • 全 RAW 支持:得益于 rawler,支持广泛的 RAW 相机格式。
  • 非破坏性工作流程:所有编辑都存储在一个 .rrdata 边车文件中,不触及您的原始图像。
  • 32 位精度:确保高质量调整,无带状或数据丢失。
  • 专业级调整:包括色调控制、色调曲线、色彩分级、细节增强和效果,以及变换工具等。

HN 热度 251 points | 评论 106 comments | 作者:l8rlump | 21 hours ago #

https://news.ycombinator.com/item?id=44505876

  • RawTherapee 是一个由色彩科学极客开发的 RAW 图像处理工具,具有 CLI 脚本功能,其配套的 RawPedia 提供了丰富的信息资源。
  • RawTherapee 缺乏 HDR 输出支持,但未来可能会通过 PNG v3 和 Rec. 2100 支持来实现。
  • RawTherapee 的曲线调整工具操作困难,难以进行精确调整,用户体验不佳。
  • Darktable 的“电影”仿真功能能够恢复过曝的 RAW 图像,而 RawTherapee 没有类似的工具。
  • RawTherapee 的用户界面不够直观,对于非技术用户来说难以上手。
  • Lightroom 的去噪功能优于 RawTherapee,用户体验更流畅。
  • 有些人因为不愿意购买软件而选择使用 Darktable 和 RawTherapee,但缺乏技术背景会很快遇到瓶颈。
  • 有人推荐 Nitro,这是一个由苹果前工程师团队创建的软件,适用于 macOS。
  • Pixelmator Pro 是 Mac 上的一个不错的选择,一次性购买,价格合理。
  • 开源编辑器由程序员而非摄影师制作,因此对于专业编辑 RAW 图像所需的工具要么隐藏在复杂功能中,要么完全缺失。
  • 这些软件由摄影师制作并使用,设计用于多种用途,不仅限于创意摄影,因此包含多种去马赛克算法。
  • 摄影师不需要开发软件的技能,而程序员可能会迷失在各种极客功能中,忽略了目标受众的实际可用性。