标签

全栈

HubSpot 用规则引擎重构 JITA 授权:把条件判断变成可观测的决策图

来源: infoq.com 42
Just-In-Time Access(JITA)要解决的是一个看似简单、实际很难维护的问题:用户在特定时间、特定理由和特定审批条件下,能否临时获得某项权限。随着例外、审批链和安全策略不断增加,集中式条件判断很容易演变成难以解释的授权代码。 HubSpot 的重构思路是把访问请求交给一组相互独立的规则评估,并将规则组织成有向无环图(DAG)。与此同时,...

用规则 DAG 重构即时访问授权:HubSpot JITA 架构的工程价值

来源: infoq.com 36
即时访问授权(Just-In-Time Access,JITA)解决的是一个敏感问题:用户只在需要时获得权限,并在条件不再满足后失去权限。随着审批条件、资源类型和治理要求增加,把所有判断堆进一段条件代码,很快会形成难以解释、难以测试、也难以审计的授权逻辑。 HubSpot 对 JITA 授权系统的重构给出了一条清晰路径:把访问决策拆成独立规则,再用有向...

把 Agent Skill 当成产品:Google 如何构建、评测并规模化治理智能体技能

来源: cloud.google.com 43
AI 编码智能体的能力上限,不只由模型决定,还取决于它拿到了什么指令、上下文和工具。Google Agent Skills 的核心思路,是把 Google Cloud 等领域知识编码成结构化、开源、可被智能体读取的操作说明,让智能体减少幻觉、遵循最佳实践,并更稳定地完成真实任务。 真正困难的部分并不是写出第一批 Skill,而是在越来越多团队参与后,仍...

守住变更局部性:让演进式架构不再依赖跨团队协调

来源: infoq.com 62
一个看似简单的功能,如果突然需要三个团队开会、修改四个服务并协调同一天发布,问题往往不在需求本身,而在系统已经失去了变更局部性:一项业务变化无法被限制在拥有该业务能力的边界内。边界漂移通常悄无声息,却会持续增加认知负担,最终让“演进式架构”只剩下口号。 假设电商系统要增加一条规则:VIP 客户可以免除订单取消手续费。理想情况下,这条规则应由订单或取消策...

WebAssembly 走进 JVM:从解释执行、JIT 到 Endive 的服务端演进

来源: infoq.com 42
WebAssembly 已经不再只是浏览器中的编译目标。Andrea Peruffo 的讨论把视角转向服务端 JVM:Wasm 运行时正在从解释执行走向更高效的即时编译,并开始承担边缘计算、插件隔离和模块化扩展等生产任务。与此同时,向 Endive 的过渡也提醒 JVM 开发者,评估 Wasm 不能只看单次基准测试,还要看运行时架构、宿主边界和长期维护...

Zadig v5.0 上线 AI 发布与审查专员:把交付瓶颈从人工队列移回流水线

来源: my.oschina.net 43
AI 编码工具提高了代码产量,却没有同步扩大审查和发布能力。结果是 PR 越积越多,合并风险变得模糊,发布窗口一再后移。Zadig v5.0 上线 AI 审查专员与 AI 发布专员,瞄准的正是这个新瓶颈:让 AI 不只参与代码生成,也进入审查、发布和风险决策链路。 来源摘要提到,团队原本两天能完成的审查工作被拖到五天,甚至出现代码已经进入 ,团队却没有...

Dgraph v25.4.0:用 Zero 的 security superflag 集中管理安全参数

来源: oschina.net 59
Dgraph v25.4.0 已发布。本次公开更新中,一个值得集群运维人员注意的变化是:Zero 现在支持 superflag,可以通过 的形式集中传入安全配置。它看起来只是启动参数调整,却会直接影响容器编排、Secret 管理、升级脚本和故障排查方式。 Dgraph 是带图后端的原生 GraphQL 数据库。它不仅提供 GraphQL 接口,也会控制...

用一个 HTML 文件复刻竹知了:手势、陀螺仪与 Web Audio 的组合实践

来源: oschina.net 51
竹知了是一种结构简单、声音鲜明的民间玩具:竹签、竹筒、细线和松香共同把旋转动作变成类似蝉鸣的振动。如今实物不常见,开源项目“竹知了”把这套交互搬进浏览器:按住屏幕画圈,或者直接甩动手机,就能触发声音与页面反馈。更值得开发者研究的是,它可以被压缩进一个零依赖的单文件 HTML。 普通网页音效通常由点击按钮触发,竹知了却需要连续感知运动。浏览器要完成三步转...