每日HackerNews RSS

## 持续集成:价值在于失败 持续集成 (CI) 是一种在代码提交后、部署*之前*自动运行检查的过程。虽然看似简单,但它的真正价值并不在于成功“通过”——那只是开销——而在于当存在错误时**“失败”**。 如果没有 CI,错误只会*在*部署后才会暴露,导致回滚和潜在损害。CI 缩短了反馈循环,尽早发现问题并防止问题影响用户。然而,CI 无法捕获*所有*错误,只能捕获一部分,因此尽早检测至关重要。 有趣的是,如果没有错误发生,CI 会增加不必要的摩擦,减慢部署速度而没有提供任何好处。“不稳定的 CI”——重新运行后就能解决的失败——破坏了对系统的信心。 最终,CI 的价值只有在它*阻止*错误部署时才能体现。将“失败”重新定义为积极的结果——一个问题被阻止的信号——可以帮助开发者更好地理解它在维护代码质量和稳定性方面的作用。下一步是优化 CI,使其更早地失败,直接在开发者的机器上。

## Hacker News 讨论:持续集成的目的是失败 最近 Hacker News 的讨论围绕一篇博客文章展开,该文章认为持续集成 (CI) 的*重点*在于**失败**,并且团队常常通过简单地重新运行失败的构建来破坏这一目的,而不是调查根本原因。 许多评论者同意“仅仅重试”是一种有害的做法,尤其是在“不稳定的”测试(那些间歇性地通过和失败的测试)中。这些不稳定性常常掩盖潜在的问题,例如竞争条件或间歇性服务超时,从而延迟了真实问题的检测。 对话强调了 CI 的价值不仅仅在于捕获错误。它能够更快地集成代码,更好地记录,并允许开发人员更有效地构建彼此的工作。 几位用户指出,大多数 CI 失败并非无法修复;通常,它们源于数据库不一致、时序依赖或基础设施问题,这些问题可以通过适当的日志记录和可重复性(例如,记录测试执行顺序)来诊断。 最终,讨论强调了测试——以及 CI 作为一个整体——应该被设计用来*揭示*问题,而不是提供虚假的安全性。

医疗设备制造商史赛克目前正应对一场“严重”的全球网络攻击,导致全球系统中断。伊朗黑客组织Handala声称对此负责,称这是对伊朗美国轰炸的报复。 据悉,此次攻击始于美国东部时间凌晨3:30左右,涉及篡改登录页面以显示Handala标志,并在超过20万台服务器、系统和员工设备上部署了一种擦除数据的恶意软件。员工报告称系统普遍中断,无法访问账户,以及从注册公司计划的个人设备中丢失数据。 史赛克是美国军方的主要供应商,与国防物流局签订了重要合同,正在努力恢复系统并已激活业务连续性计划。此次中断影响了史赛克的全部笔记本电脑和联网系统,影响了其全球56,000名员工,并可能影响患者护理。这起事件与过去被归因于伊朗、俄罗斯和朝鲜的擦除器攻击相呼应,凸显了针对关键基础设施和与地缘政治冲突有关联的公司,具有破坏性的网络攻击日益增长的威胁。

黑客新闻 新 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 伊朗黑客攻击医疗设备制造商斯特莱克并擦除了系统 (zetter-zeroday.com) 54点 由 strict9 22小时前 | 隐藏 | 过去 | 收藏 | 2评论 帮助 input_sh 21小时前 | 下一个 [–] 重复:https://news.ycombinator.com/item?id=47346091 回复 dang 17小时前 | 父级 | 下一个 [–] 评论已移动至此。谢谢!回复 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请YC | 联系 搜索:

## 使用 obscrd 保护您的内容 obscrd 是一个开源的内容保护系统,旨在保护网站免受抓取和人工智能机器人侵害。它采用多层方法,混淆 HTML 并阻止恶意爬虫,同时不影响用户体验。 **主要功能包括:** * **客户端保护:** 混淆文本,保护电子邮件/电话号码,保护图像(使用 canvas 渲染),并拦截剪贴板以防止轻松复制。 * **服务器端阻止:** 自动执行 `robots.txt` 以阻止超过 20 种人工智能爬虫,并为流行的框架(如 Express 和 Fastify)提供中间件支持。 * **轻松集成:** 利用 React 组件 (`@obscrd/react`) 和 CLI 工具,实现快速的项目设置和种子生成。 obscrd 对人类正常渲染内容,同时向抓取器呈现混淆数据,确保用户获得视觉一致性,并为您的宝贵内容提供强大的保护。加入候补名单以获取抢先体验和更新!

## Obscrd:一种对抗AI爬取的SDK Larsmosr是一位独立开发者,他创建了Obscrd (obscrd.dev),这是一款免费且开源的SDK,旨在使网络爬取更加困难,特别是针对AI爬虫。由于对`robots.txt`无效性的不满,Obscrd使用字符和单词混排来扰乱HTML内容,并通过CSS将其视觉上重新组装。 该SDK包括电子邮件/电话号码混淆、AI蜜罐、剪贴板拦截以及用于检测内容盗用的法医“面包屑”等功能。虽然并非万无一失——它容易受到无头浏览器和坚定的逆向工程的攻击——但其目标是提高爬取成本,使其超越简单的HTTP请求。 讨论强调了可用性问题(破坏复制/粘贴)以及对使用辅助技术的用户的可访问性。开发者承认这些问题并正在努力改进,强调该SDK是可选的,旨在保护专有内容,而不是妨碍访问公开信息。未来的开发包括更强大的混淆技术,例如字体重映射,以对抗日益复杂的AI解码方法。 [https://github.com/obscrd/obscrd](https://github.com/obscrd/obscrd)

## Axe:命令行 LLM 代理编排 Axe 是一款 CLI 工具,用于构建和运行专注、可组合的 LLM 驱动代理,它采用了不同于典型聊天机器人中心化 AI 工具的方法。它将代理视为 Unix 程序——每个代理都设计用于单一任务,在 TOML 配置文件中定义,并通过命令行执行,数据输入并输出结果。 主要特性包括支持多种 LLM 提供商(Anthropic、OpenAI、Ollama)、声明式代理定义、子代理委托、持久化内存以及用于可重用指令的技能系统。Axe 可以无缝集成到现有的工具中,如 cron、git 钩子和 CI/CD 管道,避免了专用守护进程或 GUI 的需要。 代理配置有系统提示、模型选择以及对沙盒化工具的访问,用于文件操作和命令执行。Axe 优先考虑简单性和控制力,提供诸如干运行模式、JSON 输出和内存垃圾回收等功能。它可以通过 `go install` 或从源代码构建获得,并提供 Docker 镜像以进行隔离执行。

## Axe:轻量级AI代理运行器 - 摘要 Axe是一个新的12MB二进制工具,旨在以专注、可组合的“类Unix”程序方式运行LLM代理。由jrswab创建,它解决了作者对AI框架优先考虑聊天机器人式、长期会话的 frustation。相反,Axe将代理视为由TOML配置定义的单一用途工具,允许用户通过命令行、cron作业或CI/CD管道将它们链接在一起。 主要特性包括对多个LLM提供商(OpenAI、Anthropic、Ollama等)的支持、持久内存、路径沙盒化的文件操作以提高安全性,以及内置工具如网络搜索。它避免了对Python和Docker的依赖,旨在实现简单性和可移植性。 讨论重点关注其在自动化方面的潜力、与现有工具(如`sgpt`和`dotprompt`)的比较,以及对安全性和成本控制的疑问。作者欢迎反馈,并计划添加会话管理和Gemini支持等功能。该项目强调向更小、更易于管理的AI组件转变,反映了Unix操作系统哲学。

## Rudel:Claude 代码分析工具 Rudel 提供了一个仪表盘,用于分析你的 Claude 代码编程会话,提供关于 token 使用量、会话时长、模型性能等方面的洞察。它可以通过 CLI 工具轻松集成:使用 `npm install -g rudel` 安装,登录,并使用 `rudel enable` 启用自动上传。 Rudel 捕获详细的会话数据——记录、时间戳、git 上下文和子代理使用情况——并将其安全地存储在 ClickHouse 中进行分析。可以通过仪表盘授予团队访问权限。 过去的会话也可以批量上传。 **重要安全提示:** Rudel 摄取*完整*的会话数据,可能包括敏感信息,例如代码和密钥。仅在上传此数据可接受的项目中使用它。 虽然 Rudel 不会通过托管服务访问记录中的个人数据,但在使用前请查看他们的隐私政策。 在他们的 GitHub 仓库中可以找到 CLI 命令、自托管和安全报告的文档。 在 [app.rudel.ai](https://app.rudel.ai) 免费试用托管版本。

## Rudel:分析Claude Code会话 一个团队构建了Rudel (github.com/obsessiondb) 来了解他们对Claude Code的使用情况,通过分析超过1,573个会话,总计1500万+ tokens,发现了其中的规律。他们发现技能使用频率很低(4%的会话),26%的会话很快被放弃(在60秒内),会话成功率因任务而异——文档编写成功率最高,重构最低。早期错误通常预示着会话会被放弃。 这款开源工具允许用户跟踪他们与Claude Code的交互,从而可能提高生产力。用户可以自托管以保护隐私。讨论强调了维护良好的 `CLAUDE.md` 文件和调整技能触发条件以获得最佳性能的重要性,Claude 4.6 表现出改进。 该项目旨在建立“良好”代理性能的基准,并提供关于团队如何使用AI进行编码的见解,包括识别需要改进的领域和调试工作流程。虽然有些人表达了对隐私的担忧,但自托管选项可以解决这个问题。

## 系统编程中的动态类型:摘要 本文探讨了在静态类型系统中表示不同类型数据的技术,并借鉴了GNU Emacs、现代C++和其他实现中的经验。核心挑战是高效处理多态性——当单个变量需要持有不同数据类型时。 详细介绍了三种主要方法:**带标签的联合体**(如`std::variant`),为最大可能的类型分配空间;**胖指针**,在指针旁边添加额外空间来存储类型信息;以及**带标签的指针**,利用指针对齐中未使用的位来存储类型标签。Emacs 独特地使用带标签的指针来处理核心类型,并使用“简陋的继承”(结构体嵌入)来扩展类型表示,超越有限的标签空间,从而在资源受限的环境中优化性能和内存使用。 有趣的是,像LLVM这样的现代系统正在*重新发明*类似的技术,绕过标准的C++ RTTI以实现更快的编译时类型检查。这些标记策略也出现在其他系统,如Linux内核和JavaScript引擎(V8)中,证明了它们持续的相关性。这些方法之间的选择取决于在内存占用、性能和类型层次结构的复杂性之间取得平衡。

## Emacs 内部机制与指针标记:总结 这次Hacker News讨论围绕高效数据表示技术,特别是指针标记,以及Emacs、C++和Rust中如何处理它。原始帖子探讨了Emacs使用位运算操作指针的做法——这种做法依赖于特定的GCC行为,并且可能在标准的C/C++中导致未定义行为。 现代C++更倾向于使用`uintptr_t`或`intptr_t`来进行更安全的指针操作。一个新的C++标准提案(p3125r0)旨在创建一个专门用于指针标记的类型,以保留来源并允许针对特定目标的优化。 Rust提供了一个更强大的解决方案,即`ptr::map_addr`,它能够实现安全的指针修改,同时保持来源跟踪。与C++不同,Rust的设计将此功能集成到基本层面。 对话还涉及LLVM的优化挑战和潜在的不健全性,这会影响所有使用LLVM作为后端的语言。最后,讨论指向LLVM不断发展的RTTI实现,即`CastInfo`。

美国银行对私人信贷提供商的贷款正在显著增加,截至6月已近3000亿美元,对非存款金融机构(NDFI)的总贷款额贡献达到1.2万亿美元。这与十年前相比大幅增长,目前已占美国银行贷款的10%以上。 为了实现收入多元化和降低风险,富国银行、美国银行和摩根大通等银行正在与另类资产管理公司建立合作关系,并积极为非银行贷款机构提供资金——即使他们也在与之竞争。 然而,穆迪评级警告说,这种增长并非没有风险,引用了Tricolor Holdings等最近的破产案例,作为潜在的资产质量挑战的指标。尽管存在这些担忧,私人信贷资产在过去十年中增长了三倍,增速超过了大多数其他信贷领域。

## 美国银行与私募信贷 – 摘要 最近的 Hacker News 讨论强调了美国银行对私募信贷的敞口不断增加,预计到 2025 年将达到 3000 亿美元。与此同时,Fitch 报告称,美国私募信贷的违约率已达到创纪录的 9.2%。 评论员指出,私募信贷的问题并非隐藏风险,而是更广泛金融问题的症状。由于私募信贷是“真实债务”,且在偿还优先级上低于担保债务和股权,因此该领域的重大损失表明股权投资组合(如私募股权基金)中已经存在严重问题。 讨论澄清,私募信贷问题与 2008 年危机中的复杂金融工具不同,而是代表了基本的债务问题,可能预示着更广泛的系统性问题。原始帖子和持续讨论可以在 Hacker News 上通过链接的帖子 ID 找到。

## zi2zi-JiT:中文字体风格迁移 zi2zi-JiT是一个基于JiT架构的扩散Transformer模型,用于合成中文字体。它将参考字形的风格转移到源字符上,从而实现字体风格的修改。该模型利用内容编码器(来自FontDiffuser)捕捉字符结构,风格编码器提取风格特征,并采用多源上下文混合方法进行条件设置。 JiT-B/16和JiT-L/16两个变体是在包含400多个字体的超过30万个字符图像的大型数据集上训练的(主要为简体和繁体中文,以及少量日语)。评估指标(FID、SSIM、LPIPS、L1)显示出强大的性能。 该项目提供了数据集创建、微调(使用LoRA在单个GPU上 – 约4GB VRAM)和字符生成工具。微调单个字体可以在一小时内完成。 预训练检查点可用,如果分发包含来自该项目派生的超过200个字符的产品,则需要署名。 代码采用MIT许可,并针对字体输出添加了特定条款。

一位开发者kaonashi-tyc-01正在进行“zi2zi-JiT”项目,该项目旨在利用字体合成技术创建实用、生产级别的中日韩(CJK)字体。该项目受到原始zi2zi项目的启发,采用Transformer架构,并注重速度和可用性,超越研究阶段。 作者已经基于古代书法生成了两套完整的中文字体(每套6763个字符),并已发布用于商业用途。这些字体,Zi-QuanHengDuLiang和Zi-XuanZongTi,可在GitHub上找到。 开发者承认目前存在一些局限性——特别是由于缺乏合适的训练数据,难以重现篆书等古代书写形式。他正在寻求反馈,以改进该项目,并使高质量CJK字体生成成为一项可行技术。该项目建立在METAPOST等先前工作之上,甚至呼应了早期的中文输入法。

访问被拒绝。您没有权限访问“http://www.marketscreener.com/news/us-private-credit-defaults-hit-record-9-2-in-2025-fitch-says-ce7e5fd8df8fff2d”上的服务器。 参考编号:18.c9a4c117.1773320745.1971e4f8 https://errors.edgesuite.net/18.c9a4c117.1773320745.1971e4f8

## 稀疏化:见证数据的新视角 本文探讨了“稀疏化”,这是一种在依赖类型理论中经常遇到的数学对象,但其应用范围不止于此。稀疏化充当**见证数据**——简化问题解决的信息,通常可以提高效率或清晰度。可以将满足赋值视为 SAT 问题可解性的见证。 具体来说,稀疏化解决了“子列表”问题(在更大的列表中找到一个序列)。它们可以被可视化为元素之间的非重叠路径,表示为位向量,并通过德布鲁因提升/降低等操作生成(类似于置换由交换生成)。至关重要的是,稀疏化可以被*组合*——顺序应用——提供一种强大的视角转变。 作者通过 Python 示例演示了这一点,展示了如何不仅*找到*一个列表是否是子列表,而且*生成一个证书*(稀疏化本身)来证明它。验证此证书通常比找到它更快。 这个概念与 lambda egraphs、并查集,甚至 Prolog 的证明搜索等领域相关联。稀疏化可以被视为一个范畴,继承诸如组合和单位元之类的属性。它们还与德布鲁因索引等概念相关,并可能为自由变量分析和高效数据结构提供一种新颖的方法,从而可能改进诸如哈希常量和名义统一之类的技术。最终,作者认为稀疏化对于良好作用域的项是基础的,超越了 lambda 演算,扩展到其他绑定器,如求和和积分。

黑客新闻 新的 | 过去的 | 评论 | 提问 | 展示 | 工作 | 提交 登录 稀疏化:子列表见证和德布鲁因索引偏移聚类 (philipzucker.com) 20 分,matt_d 发表于 15 小时前 | 隐藏 | 过去的 | 收藏 | 2 条评论 帮助 skybrian 发表于 11 小时前 [–] 寻找稀疏化似乎像是受限的差异算法,你只能删除东西?稀疏化是表示为位的差异。这不是很紧凑,但你可以进行行程长度编码。回复 philzook 发表于 11 小时前 | 父级 [–] 有趣。我认为如果你试图找到两个其他列表被稀疏化的“最佳”列表,那么相似之处就更多了。回复 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:

更多

联系我们 contact @ memedata.com