Skip to content

Releases

v0.0.22

Choose a tag to compare

@github-actions github-actions released this 09 Oct 19:24
80c3e39

[0.0.22] - 2026-10-09

Added

  • session: 会话记录主登录方式 auth_method 并随跨主机交接保留,出站 SAML 对社交登录与企业 SSO 会话不再断言密码类 AuthnContextClassRef (567fe5e)
  • passkey: 根域账户页交接到组织地址登记或 step-up 后交回根域原页面并携带 step-up,提示已验证;PasskeySection 按主题拆分 (823a856)
  • sso: 出站 SAML 按 RequestedAuthnContext 判定认证强度,需要时补 MFA 或重新登录,满足不了回 NoAuthnContext,断言写入实际满足的 AuthnContextClassRef 与认证时间 (2450212)
  • passkey: 登录页与 MFA 页提供「使用较早地址创建的 passkey」入口,账户页标出早期凭证,账户登记、step-up 与第二因子在根域时跳到组织地址完成 (cec2640)
  • console: 审计日志为 passkey 吊销、attestation 可信根、出站 SAML 证书轮换与 MAU 补报写出完整句子 (08727b5)
  • console: 认证策略页新增 passkey 证明分节与可信根管理,无可信根时禁止选择 direct;单点登录分节开放强制 SSO 与密码登录开关 (4aeb21a)
  • auth-policy: 开放 force_sso 与 allow_password_login 读写,强制 SSO 需 active 连接,direct attestation 需可信根 (b3cd46e)
  • saml: 新增以断言为根元素的 SAML 2.0 断言验证,供 WS-Federation 使用 (928eab7)
  • sso: Atlassian 出站预设发出不可变用户 ID,Console 出站应用输入类型支持 metadata 导入 (ad64aac)
  • console: 出站 SAML 应用创建和编辑支持按 URL 或粘贴 XML 导入 SP metadata,错误按字段显示 (37ef65b)
  • sso: 出站 SAML 属性映射支持 userId 键输出 XID user id (7a30680)
  • webauthn: Attestation 新增 tpm、android-key、apple 格式校验,android-safetynet 明确拒绝 (4d8df30)
  • console: 企业 SSO 预设只提供服务端已有的 SAML,旧协议按字段填写地址与只写密钥,支持上传 metadata XML、稳定用户 ID 属性和 IdP 发起登录落地页,详情页提示 metadata 刷新失败 (93e472e)
  • saml: 新增构造并签名非 Success 状态 Response 的函数 (51f6289)
  • saml: 新增 SAML 1.1 断言验证,供 WS-Federation 令牌使用 (0fd197a)
  • sso: 出站 SAML 签名证书按 next、active、retiring 轮换,cron 提前 60 天发布下一张并告警,metadata 同时发布,管理员显式切换 (7cb5708)
  • passkey: 新增 /v1/webauthn/trusted-roots 管理租户 attestation 可信根,注册仪式合并实例级与租户级根 (f2aace2)
  • saml: AuthnRequest 校验结果返回 RequestedAuthnContext 的 Comparison 与 AuthnContext 引用 (a127867)
  • saml: 语义校验可选不要求 SubjectConfirmationData Recipient,验证结果返回 SubjectConfirmationData NotOnOrAfter (88b872b)
  • account: 安全页挂载应用登录区块 (020b281)
  • sso: LegacyProfile 增加 legacyIdpId,WS-Fed 改用 idpId 属性后沿用按 NameID 建立的账号 (194b4b9)
  • account: 账户门户新增应用登录区块,成员可保存、删除 SWA 凭据并打开应用 (ede048e)
  • console: 用量页列出待在 Stripe 核对的 MAU 上报,支持标记为已上报或重新上报 (4f62904)
  • auth: 配置 Apple Team ID、Key ID 和私钥时按需签发短期 ES256 client_secret,部分配置时拒绝 (85410c9)
  • users: 管理员可吊销单个 passkey,吊销后撤销该用户全部会话并写 user.passkey_revoked 审计 (e6b6321)
  • saml: AuthnRequest 校验结果返回 ForceAuthn、IsPassive 和 NameIDPolicy (f6dfcea)

Fixed

  • sso: 未提供显示名的连接不再存预设英文默认名,Console 与账户页对空值和存量默认名显示本地化名称 (ebac679)
  • sso: 旧协议连接不参与邮箱域名路由,向导第 3 步与详情页改为说明成员如何登录,强制 SSO 只认 SAML 与 OIDC 连接 (e670053)
  • sso: 删除后新建连接复用原行时重置旧连接的 metadata、刷新错误、证书保留记录、密钥、落地页与显示名 (dc953c4)
  • console-audit: 审计日志补齐 SSO 连接删除与 SAML 应用增改删的事件句子 (01895f5)
  • console-saml: 证书表头与行对齐,下载链接按钮居中无下划线,列表与详情补齐边距,metadata 缺失错误显示在对应字段 (902e73b)
  • console-sso: 旧协议字段错误落到对应输入框,详情页按协议显示旧协议配置并隐藏 SAML 专属项,向导去掉原生边框与文件控件,详情标签区补齐左右边距 (7c6ffc4)
  • console-auth: 强制 SSO 缺少启用连接时给出明确提示,认证策略页与标题对齐,可信根指纹按 SHA-256 缩写显示,方式摘要按语言列举 (b03ca91)
  • sign-in: 浏览器支持自动填充时也显示较早地址通行密钥入口 (b502162)
  • account: 组织未开启通行密钥时不再提示为当前地址创建通行密钥 (932fea7)
  • mfa: MFA 因子列表不再返回号码不在允许区号内的 SMS 因子 (59d2c83)
  • db: 清理旧预设写入但从未生效的 idpId,并补齐 0030 至 0032 迁移元数据 (74b40d1)
  • cron: IdP metadata 中消失的旧证书记录消失时间,保留到 notAfter 与 30 天重叠期中较早者,手动保存证书时清空保留记录 (505e550)
  • mfa: 号码不在允许区号内的 SMS 因子不再出现在 MFA 方法列表 (3798541)
  • sso: 早期预设写入的 idpId=nameID 标记按未配置处理,存量 SAML 连接继续以 NameID 登录 (0664851)
  • cron: IdP metadata 刷新改为合并证书集合,新证书加入,消失的旧证书保留到自身 notAfter 后移除,只在新增证书时发送续期 webhook (edc08fe)
  • passkey: 交接携带 step-up 的验证与到期时间,目标主机按原到期时间为新会话重签,已到期不签发 (6914348)
  • scim: Daily cron 的出站全量入队与 org 级全量共用 full_sync_queued_at 去重,同一 target 未开始的自动全量只入队一次;手动立即同步不受去重限制 (3569730)
  • mfa: MFA 短信发码与 SMS 因子登记按短信区域白名单校验号码,不在白名单时返回 invalid_request (e11138a)
  • sso: OIDC 连接配置 idpId claim 时以它作稳定主键,缺值拒绝,按 sub 建立的旧绑定经 legacyIdpId 沿用 (8239186)
  • passkey: 存量根域 passkey 在组织地址可用,根域登记与 passkey 第二因子经双向会话交接转到组织主机完成,交接失败回登录页 (9729dd1)
  • console: 密码登录只保留 Sign-in methods 一个开关,同时写入 hostedAuth 密码方式与 loginPolicy.allowPasswordLogin (501e0ac)
  • passkey: 交接 state cookie 只在 grant 消费成功后清除 (91008fb)
  • passkey: 多租户 passkey 仪式只在组织 rpId 主机进行,根域经一次性交接 grant 与 __Host- state cookie 建立会话并续跑 /authorize (d118ccd)
  • sso: WS-Fed SAML 2.0 断言改用以断言为根的内核验证,不再套一层 Response (1392fdf)
  • saml: XID 发出的 XML 签名改用 exclusive C14N 规范化 SignedInfo,补独立实现签名的回归样本 (9452a96)
  • sso: WS-Fed 连接配置 idpId 属性时把 NameID 作为旧绑定传给 JIT,沿用迁移前的账号 (5501758)
  • console: OIDC 连接也可配置稳定用户 ID claim,编辑保存时不再丢弃 idpId 映射 (4d77731)
  • sso: WS-Fed 支持 SAML 1.1 断言并放宽 SAML 2.0 Recipient,假 IdP 改发签名 RSTR,dev 与生产走同一条验证路径 (b823a2f)
  • queues: 死信重放校验 SCIM 消息的 userId 与 cursor 类型 (fed5f95)
  • memberships: 改角色、移除、恢复和主动离开组织时只为该成员入队出站 SCIM 单用户同步 (9596f95)
  • delivery: 发送方缺省或为空时视为未配置,只对读取 from 的 provider 校验发送方格式 (c94df03)
  • sso: 删除出站 SAML 应用时一并删除该应用的成对持久 NameID (e72c792)
  • account: 注册 WebAuthn 可信根路由,删除已无调用方的 Conditional Create 参数,MFA 短信缺少来源 IP 时只做租户上限 (64a8f47)
  • privacy: 擦除时删除 SAML persistent NameID 映射,导出包含该映射 (f50df47)
  • scim: 核心 schema URN 下嵌套的 password 同样不入库;补 Bulk 子请求经外层 ExecutionContext 保活的测试;拆出 patch-paths.ts ([1c852ba](https://github.com/StringKe/xid/...
Read more

v0.0.21

Choose a tag to compare

@github-actions github-actions released this 09 Oct 14:38
fa89336

[0.0.21] - 2026-10-09

Fixed

  • scim: 字符串形式的 active 按布尔值处理,Entra 停用请求会撤销会话;password 不再写入 scim_raw,迁移清理已存的明文 (9627459)
  • sso: Header SSO 不再接受源码中公开的占位代理密钥,组织路由保存密钥时只存摘要并要求至少 32 位 (fccbd03)
  • hosted-auth: 发码成功即显示已发送,Turnstile 需要人工验证时在主操作上方显示说明并停用按钮而不是转圈 (67706b8)

Documentation

  • ai-config: 规则写明所有 packages 保持 private、不向任何 registry 发布,并用 stdagent 0.0.10 同步 (1f6b4b0)
  • sdk: SDK 统一改为仓库源码分发,给出 workspace 与 vendored tarball 的实际用法,移除 npm 发布相关表述 (958a5f8)

Testing

  • smoke: 本地 smoke 消费邮件、计量与审计队列,邮件验证码经 test provider 捕获,新增邮件验证码登录与 DAU/MAU 断言 (4bee5ed)

Build

  • db: 迁移兼容门禁精确放行 SCIM password 清理语句 (cad6de8)
  • packages: 全部 packages 设为 private 并移除 publishConfig,分发门禁改为校验源码 vendoring (dec4c68)

Maintenance

  • db: 格式化 0023 迁移的 drizzle 元数据 (b2d4d31)
  • i18n: Site 的 SDK 分发文案改为源码分发并补齐 7 种语言翻译 (27e35de)

v0.0.20

Choose a tag to compare

@github-actions github-actions released this 09 Oct 13:40
79af798

[0.0.20] - 2026-10-09

Added

  • console-ops: 平台概览待办与对比、审计筛选和链校验详情、死信按队列批量重放、事故受影响组件、公告状态、合规证据大小与下载校验 (8b8c7ea)
  • console-settings: 实例设置分节与部署状态,签名密钥列表和需 step-up 的显式启用 (278f1d2)
  • console-overview: 组织概览待办、登录走势与新组织引导,审计日志按操作者与目标检索并展开详情 (5d58534)
  • console-brand: 品牌草稿与发布及对比度校验、强制配色、邮件域名立即检查、登录域名 passkey 影响人数,每日域名检查记录结果 (6409610)
  • console-platform: 平台组织列表、详情、创建与删除确认,用户浏览筛选,实例管理员按邮箱授予,账户门户模拟登录横幅 (e17956a)
  • console-integrations: API key、Webhook、目录同步和出站 SCIM 页面按新设计重做,新增投递记录、可授予范围与创建者,修复 webhook 投递认领 SQL 在部分唯一索引上报错 (e5424f6)
  • console-auth: 登录与 MFA、社交登录、企业 SSO、SAML 应用和消息通道按新设计重做,补充洞察、证书解析与活动接口 (540653a)
  • db: 新增 0022 迁移,为 Console S5/S6 补充 webhook 投递耗时、API key 创建者、事故组件、合规与域名检查结果、管理员授予人列 (8acd102)

Fixed

  • console: 修正公告横幅与状态标记在浅色底上的前景色,复数计数不再显示字面 #,窄屏表格按优先级隐藏次要列,SSO 向导与实例设置补齐页面内边距,审计表格不再撑宽页面 (00f580c)

Changed

  • console: 删除改版后不再使用的查询 hook 与类型,按新页面结构更新共享页面测试 (01e1c00)

Documentation

  • console: 更新 API 契约、04/06/07 设计章节及中文镜像与 Management API 参考 (04f5a77)

Testing

  • smoke: 按新版 Console 页面结构更新 L3 浏览器冒烟断言 (59a0ad1)

Maintenance

  • i18n: 抽取 Console S5/S6 新文案并补齐 7 种语言翻译 (1b15a37)

v0.0.19

Choose a tag to compare

@github-actions github-actions released this 09 Oct 06:35
5815202

[0.0.19] - 2026-10-09

Fixed

  • hosted-auth: 注册 intent 的标签页标题改为创建账户,补齐 Console 用户与详情页标题,修正四种语言标题多余的分隔符 (7538fd5)
  • console: 切换会话或活跃组织后重置租户级查询缓存,侧栏 Users 计数按组织取数 (a067f24)
  • metering: 计量 consumer 同批写入当月 MAU,新租户首日 MAU 不再低于 DAU (faf72db)

v0.0.18

Choose a tag to compare

@github-actions github-actions released this 09 Oct 05:48
bcda70e

[0.0.18] - 2026-10-09

Fixed

  • console: 组织概览关键指标标签补上与页头之间的节距 (b4215e1)
  • onboarding: 创建组织与接受邀请后的 Console 跳转只带 orgId,不再把组织名写进 URL (be73092)
  • hosted-auth: 注册各步上下文改为创建账户,无资料字段时说明验证码发往何处,创建组织去掉重复的所有者说明 (ee9917d)
  • site: OG 卡 CJK 回退字体先下载到本地,下载失败中断构建;背景改用产品深色纯色 (df1373f)

v0.0.17

Choose a tag to compare

@github-actions github-actions released this 08 Oct 11:43
f2de193

[0.0.17] - 2026-10-08

Added

  • web-ui: Console 与账户门户菜单加入主题选择 (2643ac8)

Fixed

  • site: 用非 instance manager 的组织管理员重拍 Console 作用域切换截图 (371628c)
  • site: 首页 access token 改为明确标注的示例并按真实 claim 形状取值 (d91eef0)
  • site: OG 图改用官方 Geist 字体并为中日韩页面补 Noto Sans 回退 (a6eddf5)

Maintenance

  • account: 加宽账户门户顶栏控件间距 (b59d8ec)

v0.0.16

Choose a tag to compare

@github-actions github-actions released this 08 Oct 11:00
f7d005f

[0.0.16] - 2026-10-08

Added

  • site: 按 08 设计稿重做首页并新增 /pricing,画面改用真实产品截图 (316040c)
  • site: 网站外壳与文档界面改用统一设计语言,文档按产品分组并显示证据等级 (4a963d8)
  • web-ui: 新增 tokens.css 输出全部 --xid-* 变量,契约测试对齐 StyleX 源 (2b2c324)

Changed

  • web-ui: 图标字形改为不依赖框架的数据,Icon 组件按数据渲染 (bb0b484)
  • theme: 主题偏好统一存到 xid.theme,Core 与 Console 首帧脚本用同一规则 (c07649e)

Maintenance

  • i18n: 补齐网站新文案的 7 种语言翻译并重新编译目录 (3923abb)
  • site: 删除新外壳不再使用的组件、死代码和 astro-icon 依赖覆盖 (3ff2b35)

v0.0.15

Choose a tag to compare

@github-actions github-actions released this 08 Oct 08:02
25a9386

[0.0.15] - 2026-10-08

Fixed

  • nav: 侧栏导航项统一为 32px,粗指针下保持 44px 触控高度 (875ac0b)

Testing

  • smoke: 本地 D1 执行收敛为单一实现,与 dev server 写锁冲突返回 SQLITE_BUSY 时退避重试 (2ef3f03)

v0.0.14

Choose a tag to compare

@github-actions github-actions released this 08 Oct 07:04
692d2ac

[0.0.14] - 2026-10-08

Fixed

  • web-ui: 页面大标题与指标数值改为按断点取刻度字号,去掉流式插值字号 (baaefe4)
  • console: 控制台字号字重改用刻度 token,错误文案去掉 please 并给出下一步,补齐 7 种语言译文 (519ef5a)
  • server: 托管登录与账户门户的字号字重改用刻度 token (1b89247)
  • web-ui: 字号与字重统一取自设计系统刻度 token (d2ac4cf)

Documentation

  • ai-config: Frontend-design 技能写入去 AI 味规则,统一三端设计语言与评审计分门槛 (0bb6f11)

v0.0.13

Choose a tag to compare

@github-actions github-actions released this 07 Oct 13:27
240a140

[0.0.13] - 2026-10-07

Added

  • db: 迁移 0021 删除席位触发器并把席位配额改为只观测 (7fe0c8b)

Fixed

  • console: 资源配额项显示业务名称并保留键名,补齐 7 种语言译文 (50bbcd9)

Changed

  • console: 平台页改为资源配额与用量概览,计费区块只在开启时显示,并同步 8 种语言文案 (130ba18)
  • billing: 删除套餐与 Checkout,改为按量计费开关、资源配额和用量概览接口 (0b23c1f)

Documentation

  • 部署与接口文档改为可选按量计费,各语言 README 写明不设套餐 (d6e77f7)
  • ai-config: 新增「不设套餐」铁律并同步计费与配额参考资料 (11b3ad5)
  • design: 同步取消套餐后的中文设计文档 (b428413)
  • design: 取消套餐,计费只按 MAU 计量且可整体关闭,席位只观测 (1d3cd20)

Testing

  • smoke: 生产 harness 的 Console 路由改为 quotas 与 usage (b8c84f1)
  • rbac: 条件示例改用部门元数据,不再使用套餐字段 (f44a8cb)
  • smoke: 浏览器 harness 点击按钮前等待其可见且可用,避免验证码发送期间禁用造成误判 (478c712)