从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环

版权声明:本文系 DREAMVFIA UNION 原创技术专题,RNOISE 2.0 项目技术解析系列之一。

未经 DREAMVFIA UNION 书面授权,禁止转载、摘编、洗稿或用于模型训练语料。

RNOISE 为独立项目,与 Suno、Udio 等第三方平台无官方合作关系,文中提及仅为兼容性说明。
系列:DREAMVFIA UNION · RNOISE 2.0 技术专题系列之07/08|读者:安全工程师、后端开发者、SaaS 创业者

引言

10 次、20 次、无限但限速------RNOISE 的配额体系把匿名用户、注册用户、付费用户分得清清楚楚,API Key(rnp_live_)只认有效 Pro。本篇讲透浏览器身份、HMAC、上海日界线、速率限制、Key 的签发与撤销、Catalog 下载授权与日志隐私。

本文先给出阅读契约:凡涉及生产状态无证据处写 UNKNOWN,历史能力写 retired,规划中能力写 planned;凡引用数字,均以 docs/2.0-workflow/TECH_FACTS.mddocs/2.0-SETUP.mddocs/2.0-workflow/API_CONTRACTS.md 及当前 src/ 代码为准。Suno、Udio 等名称仅描述兼容用途,不表示官方合作。

目录

  • 第1章 三档配额的设计哲学
  • 第2章 浏览器身份与继承
  • 第3章 HMAC 身份与隐私
  • 第4章 quota 接口的契约
  • 第5章 generate 的扣减事务
  • 第6章 速率限制
  • 第7章 API Key 的生命周期
  • 第8章 External API v1
  • 第9章 导出与下载授权
  • 第10章 收藏与项目的隔离
  • 第11章 patterns 与反模式
  • 第12章 安全章总结

第1章 三档配额的设计哲学

本章锚定"三档配额的设计哲学",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:分类器版本为 rnoise-taxonomy-2026-09-v3,共 47 个宏类;V1 为 7 类 902 词条,V2 为 10 类 350 词条。

Guest 10 次

先讲一个一线现实:Guest 10 次。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。发布门禁链为 db:generate、prisma validate、lint、test、test:e2e、build、check:no-legacy-audio、db:verify-prompts、db:benchmark-prompts。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"三档配额的设计哲学"要拆开的正是这一层:把"Guest 10 次"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"Guest 10 次"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

Standard 每日 20 次

从原理上看,Standard 每日 20 次的本质是约束传播:会员权限只由当前有效 MembershipGrant 解析,不从订单金额或旧积分推断;到期外部 Key 保留但立即失权。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"三档配额的设计哲学"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,Standard 每日 20 次就会在三个月后变成线上事故。因此本章坚持一条铁律:Standard 每日 20 次的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"Standard 每日 20 次"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

Pro 无限但限速

落到实现细节,Pro 无限但限速必须经得起数字检验。会员权限只由当前有效 MembershipGrant 解析,不从订单金额或旧积分推断;到期外部 Key 保留但立即失权。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"三档配额的设计哲学"的实践含义是,Pro 无限但限速的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"Pro 无限但限速"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

ADMIN 的定位

再谈反模式。围绕ADMIN 的定位最常见的坑有三种:一是把历史能力当成当前能力写进方案,二是把本地验证通过写成生产已发布,三是为赶进度恢复已退役的兼容层。RNOISE 文档规范为此设了硬词:唯一核心工作台为 /prompt-generator,曲风检索中心为 /features/style-library,用户资产为 /my-prompts。"三档配额的设计哲学"要求作者在涉及 Generation、Track、播放器、上传、证书、Market、Credits 等退役域时,只能以"已退役"措辞出现;涉及生产状态无证据时,只能写 UNKNOWN。这种措辞洁癖保护的不是文风,而是团队的判断力。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"ADMIN 的定位"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:三档配额的设计哲学的核心是把"Guest 10 次"做成可验证的工程事实,而不是文档修辞。技术栈为 Next.js 16.3.4、React 19.2.4、TypeScript、Prisma 7.10、PostgreSQL,Node.js 24 LTS。

第2章 浏览器身份与继承

本章锚定"浏览器身份与继承",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:技术栈为 Next.js 16.3.4、React 19.2.4、TypeScript、Prisma 7.10、PostgreSQL,Node.js 24 LTS。

持久身份

再谈反模式。围绕持久身份最常见的坑有三种:一是把历史能力当成当前能力写进方案,二是把本地验证通过写成生产已发布,三是为赶进度恢复已退役的兼容层。RNOISE 文档规范为此设了硬词:分类器版本为 rnoise-taxonomy-2026-09-v3,共 47 个宏类;V1 为 7 类 902 词条,V2 为 10 类 350 词条。"浏览器身份与继承"要求作者在涉及 Generation、Track、播放器、上传、证书、Market、Credits 等退役域时,只能以"已退役"措辞出现;涉及生产状态无证据时,只能写 UNKNOWN。这种措辞洁癖保护的不是文风,而是团队的判断力。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"持久身份"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

注册不继承消耗

给读者的落地建议是:把注册不继承消耗拆成最小可验证闭环。PM2 目标拓扑仅 rnoise-web 与 rnoise-crypto-okx,旧 generation/track/credit worker 全部 retired。具体到"浏览器身份与继承",建议你按"先读当前代码、再读 2.0-SETUP 与 TECH_FACTS、最后跑一遍验证命令"的顺序上手;任何与文档冲突的地方,以当前代码加验证输出为准。如果你能为注册不继承消耗补上一条自动化断言(计数、回归一致率、性能水位三选一),那么"浏览器身份与继承"的这一节就算真正被你掌握了,而不只是读过。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"注册不继承消耗"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

上海日界线

先讲一个一线现实:上海日界线。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。RNOISE 2.0 定位为跨平台 AI 音乐 Prompt 工程与曲风检索平台,不生成、不处理、不播放、不授权音频。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"浏览器身份与继承"要拆开的正是这一层:把"上海日界线"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"上海日界线"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

resetsAt 的语义

从原理上看,resetsAt 的语义的本质是约束传播:原始 IP 不入库,只保存 HMAC 后的身份与限速主体;变量只登记名称与 SET/EMPTY 状态。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"浏览器身份与继承"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,resetsAt 的语义就会在三个月后变成线上事故。因此本章坚持一条铁律:resetsAt 的语义的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"resetsAt 的语义"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:浏览器身份与继承的核心是把"持久身份"做成可验证的工程事实,而不是文档修辞。会员为 Luxury/Platinum 固定期限一次性通行证,支付覆盖支付宝、Stripe、OKX USDT 与 RNS,无自动续费与 Credits。

第3章 HMAC 身份与隐私

本章锚定"HMAC 身份与隐私",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:浏览器编译要求 Idempotency-Key,成功才事务扣减;失败、搜索、词典与额度查询不扣次数。

原始 IP 不入库

给读者的落地建议是:把原始 IP 不入库拆成最小可验证闭环。RNOISE 2.0 定位为跨平台 AI 音乐 Prompt 工程与曲风检索平台,不生成、不处理、不播放、不授权音频。具体到"HMAC 身份与隐私",建议你按"先读当前代码、再读 2.0-SETUP 与 TECH_FACTS、最后跑一遍验证命令"的顺序上手;任何与文档冲突的地方,以当前代码加验证输出为准。如果你能为原始 IP 不入库补上一条自动化断言(计数、回归一致率、性能水位三选一),那么"HMAC 身份与隐私"的这一节就算真正被你掌握了,而不只是读过。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"原始 IP 不入库"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

HMAC 主体

先讲一个一线现实:HMAC 主体。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。本机 benchmark 为 cold 124.51ms、warm p95 132.06ms,门禁为 cold 3000ms、p95 1000ms。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"HMAC 身份与隐私"要拆开的正是这一层:把"HMAC 主体"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"HMAC 主体"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

限速主体

从原理上看,限速主体的本质是约束传播:浏览器编译要求 Idempotency-Key,成功才事务扣减;失败、搜索、词典与额度查询不扣次数。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"HMAC 身份与隐私"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,限速主体就会在三个月后变成线上事故。因此本章坚持一条铁律:限速主体的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"限速主体"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

日志最小化

落到实现细节,日志最小化必须经得起数字检验。发布门禁链为 db:generate、prisma validate、lint、test、test:e2e、build、check:no-legacy-audio、db:verify-prompts、db:benchmark-prompts。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"HMAC 身份与隐私"的实践含义是,日志最小化的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"日志最小化"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:HMAC 身份与隐私的核心是把"原始 IP 不入库"做成可验证的工程事实,而不是文档修辞。精确组合不存在时返回 NO_MATCHING_TEMPLATE 与候选组合;BPM/Key 为 Auto 时保留源字段,锁定时只覆盖输出快照。

第4章 quota 接口的契约

本章锚定"quota 接口的契约",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:会员权限只由当前有效 MembershipGrant 解析,不从订单金额或旧积分推断;到期外部 Key 保留但立即失权。

identity 与 tier

给读者的落地建议是:把identity 与 tier拆成最小可验证闭环。精确组合不存在时返回 NO_MATCHING_TEMPLATE 与候选组合;BPM/Key 为 Auto 时保留源字段,锁定时只覆盖输出快照。具体到"quota 接口的契约",建议你按"先读当前代码、再读 2.0-SETUP 与 TECH_FACTS、最后跑一遍验证命令"的顺序上手;任何与文档冲突的地方,以当前代码加验证输出为准。如果你能为identity 与 tier补上一条自动化断言(计数、回归一致率、性能水位三选一),那么"quota 接口的契约"的这一节就算真正被你掌握了,而不只是读过。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"identity 与 tier"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

limit/used/remaining

先讲一个一线现实:limit/used/remaining。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。Guest 为每持久浏览器身份总计 10 次成功编译;Standard 按 Asia/Shanghai 日界线每日 20 次;Pro 与 ADMIN 无限编译但仍限速。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"quota 接口的契约"要拆开的正是这一层:把"limit/used/remaining"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"limit/used/remaining"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

capabilities

从原理上看,capabilities的本质是约束传播:浏览器编译要求 Idempotency-Key,成功才事务扣减;失败、搜索、词典与额度查询不扣次数。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"quota 接口的契约"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,capabilities就会在三个月后变成线上事故。因此本章坚持一条铁律:capabilities的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"capabilities"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

no-store

落到实现细节,no-store必须经得起数字检验。会员权限只由当前有效 MembershipGrant 解析,不从订单金额或旧积分推断;到期外部 Key 保留但立即失权。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"quota 接口的契约"的实践含义是,no-store的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"no-store"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:quota 接口的契约的核心是把"identity 与 tier"做成可验证的工程事实,而不是文档修辞。分类器版本为 rnoise-taxonomy-2026-09-v3,共 47 个宏类;V1 为 7 类 902 词条,V2 为 10 类 350 词条。

第5章 generate 的扣减事务

本章锚定"generate 的扣减事务",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:生产 Catalog 由 PROMPT_CATALOG_DB_PATH 指向服务器数据盘,生产数据盘曾挂 V2(183295 模板),V3 切换待发布窗口。

成功才扣

从原理上看,成功才扣的本质是约束传播:生产 Catalog 由 PROMPT_CATALOG_DB_PATH 指向服务器数据盘,生产数据盘曾挂 V2(183295 模板),V3 切换待发布窗口。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"generate 的扣减事务"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,成功才扣就会在三个月后变成线上事故。因此本章坚持一条铁律:成功才扣的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"成功才扣"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

失败不扣

落到实现细节,失败不扣必须经得起数字检验。107 个模板缺失 lock_number,其中 30 个无有效音乐变体,缺失槽位一律返回 available:false,绝不补造。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"generate 的扣减事务"的实践含义是,失败不扣的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"失败不扣"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

搜索不扣

再谈反模式。围绕搜索不扣最常见的坑有三种:一是把历史能力当成当前能力写进方案,二是把本地验证通过写成生产已发布,三是为赶进度恢复已退役的兼容层。RNOISE 文档规范为此设了硬词:会员为 Luxury/Platinum 固定期限一次性通行证,支付覆盖支付宝、Stripe、OKX USDT 与 RNS,无自动续费与 Credits。"generate 的扣减事务"要求作者在涉及 Generation、Track、播放器、上传、证书、Market、Credits 等退役域时,只能以"已退役"措辞出现;涉及生产状态无证据时,只能写 UNKNOWN。这种措辞洁癖保护的不是文风,而是团队的判断力。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"搜索不扣"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

并发安全

给读者的落地建议是:把并发安全拆成最小可验证闭环。RNOISE 2.0 定位为跨平台 AI 音乐 Prompt 工程与曲风检索平台,不生成、不处理、不播放、不授权音频。具体到"generate 的扣减事务",建议你按"先读当前代码、再读 2.0-SETUP 与 TECH_FACTS、最后跑一遍验证命令"的顺序上手;任何与文档冲突的地方,以当前代码加验证输出为准。如果你能为并发安全补上一条自动化断言(计数、回归一致率、性能水位三选一),那么"generate 的扣减事务"的这一节就算真正被你掌握了,而不只是读过。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"并发安全"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:generate 的扣减事务的核心是把"成功才扣"做成可验证的工程事实,而不是文档修辞。Prompt 编译器使用本地模板与确定性规则,不调用 LLM 与外部音乐供应商,V3 种子前缀为 v3:macro:{macro}:macro:{title}😒{slot}。

第6章 速率限制

本章锚定"速率限制",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:RNOISE 2.0 定位为跨平台 AI 音乐 Prompt 工程与曲风检索平台,不生成、不处理、不播放、不授权音频。

无限不等于无限制

先讲一个一线现实:无限不等于无限制。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。会员为 Luxury/Platinum 固定期限一次性通行证,支付覆盖支付宝、Stripe、OKX USDT 与 RNS,无自动续费与 Credits。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"速率限制"要拆开的正是这一层:把"无限不等于无限制"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"无限不等于无限制"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

突发防护

从原理上看,突发防护的本质是约束传播:原始 IP 不入库,只保存 HMAC 后的身份与限速主体;变量只登记名称与 SET/EMPTY 状态。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"速率限制"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,突发防护就会在三个月后变成线上事故。因此本章坚持一条铁律:突发防护的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"突发防护"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

降级策略

落到实现细节,降级策略必须经得起数字检验。分类器版本为 rnoise-taxonomy-2026-09-v3,共 47 个宏类;V1 为 7 类 902 词条,V2 为 10 类 350 词条。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"速率限制"的实践含义是,降级策略的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"降级策略"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

滥用识别

再谈反模式。围绕滥用识别最常见的坑有三种:一是把历史能力当成当前能力写进方案,二是把本地验证通过写成生产已发布,三是为赶进度恢复已退役的兼容层。RNOISE 文档规范为此设了硬词:Guest 为每持久浏览器身份总计 10 次成功编译;Standard 按 Asia/Shanghai 日界线每日 20 次;Pro 与 ADMIN 无限编译但仍限速。"速率限制"要求作者在涉及 Generation、Track、播放器、上传、证书、Market、Credits 等退役域时,只能以"已退役"措辞出现;涉及生产状态无证据时,只能写 UNKNOWN。这种措辞洁癖保护的不是文风,而是团队的判断力。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"滥用识别"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:速率限制的核心是把"无限不等于无限制"做成可验证的工程事实,而不是文档修辞。PM2 目标拓扑仅 rnoise-web 与 rnoise-crypto-okx,旧 generation/track/credit worker 全部 retired。

第7章 API Key 的生命周期

本章锚定"API Key 的生命周期",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:分类器版本为 rnoise-taxonomy-2026-09-v3,共 47 个宏类;V1 为 7 类 902 词条,V2 为 10 类 350 词条。

rnp_live_ 前缀

再谈反模式。围绕rnp_live_ 前缀最常见的坑有三种:一是把历史能力当成当前能力写进方案,二是把本地验证通过写成生产已发布,三是为赶进度恢复已退役的兼容层。RNOISE 文档规范为此设了硬词:SQLite 本地只读 Catalog 采用独立 FTS5 表、普通索引与预建随机序号,由 Worker Thread 以只读 node:sqlite 查询。"API Key 的生命周期"要求作者在涉及 Generation、Track、播放器、上传、证书、Market、Credits 等退役域时,只能以"已退役"措辞出现;涉及生产状态无证据时,只能写 UNKNOWN。这种措辞洁癖保护的不是文风,而是团队的判断力。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"rnp_live_ 前缀"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

完整密钥只显示一次

给读者的落地建议是:把完整密钥只显示一次拆成最小可验证闭环。会员为 Luxury/Platinum 固定期限一次性通行证,支付覆盖支付宝、Stripe、OKX USDT 与 RNS,无自动续费与 Credits。具体到"API Key 的生命周期",建议你按"先读当前代码、再读 2.0-SETUP 与 TECH_FACTS、最后跑一遍验证命令"的顺序上手;任何与文档冲突的地方,以当前代码加验证输出为准。如果你能为完整密钥只显示一次补上一条自动化断言(计数、回归一致率、性能水位三选一),那么"API Key 的生命周期"的这一节就算真正被你掌握了,而不只是读过。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"完整密钥只显示一次"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

前缀可查

先讲一个一线现实:前缀可查。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。PM2 目标拓扑仅 rnoise-web 与 rnoise-crypto-okx,旧 generation/track/credit worker 全部 retired。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"API Key 的生命周期"要拆开的正是这一层:把"前缀可查"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"前缀可查"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

撤销即失权

从原理上看,撤销即失权的本质是约束传播:分类器版本为 rnoise-taxonomy-2026-09-v3,共 47 个宏类;V1 为 7 类 902 词条,V2 为 10 类 350 词条。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"API Key 的生命周期"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,撤销即失权就会在三个月后变成线上事故。因此本章坚持一条铁律:撤销即失权的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"撤销即失权"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:API Key 的生命周期的核心是把"rnp_live_ 前缀"做成可验证的工程事实,而不是文档修辞。RNOISE 2.0 定位为跨平台 AI 音乐 Prompt 工程与曲风检索平台,不生成、不处理、不播放、不授权音频。

第8章 External API v1

本章锚定"External API v1",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:技术栈为 Next.js 16.3.4、React 19.2.4、TypeScript、Prisma 7.10、PostgreSQL,Node.js 24 LTS。

search/compose/templates

给读者的落地建议是:把search/compose/templates拆成最小可验证闭环。会员为 Luxury/Platinum 固定期限一次性通行证,支付覆盖支付宝、Stripe、OKX USDT 与 RNS,无自动续费与 Credits。具体到"External API v1",建议你按"先读当前代码、再读 2.0-SETUP 与 TECH_FACTS、最后跑一遍验证命令"的顺序上手;任何与文档冲突的地方,以当前代码加验证输出为准。如果你能为search/compose/templates补上一条自动化断言(计数、回归一致率、性能水位三选一),那么"External API v1"的这一节就算真正被你掌握了,而不只是读过。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"search/compose/templates"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

Bearer 认证

先讲一个一线现实:Bearer 认证。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。分类器版本为 rnoise-taxonomy-2026-09-v3,共 47 个宏类;V1 为 7 类 902 词条,V2 为 10 类 350 词条。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"External API v1"要拆开的正是这一层:把"Bearer 认证"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"Bearer 认证"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

复用领域 DTO

从原理上看,复用领域 DTO的本质是约束传播:浏览器编译要求 Idempotency-Key,成功才事务扣减;失败、搜索、词典与额度查询不扣次数。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"External API v1"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,复用领域 DTO就会在三个月后变成线上事故。因此本章坚持一条铁律:复用领域 DTO的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"复用领域 DTO"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

到期失权

落到实现细节,到期失权必须经得起数字检验。会员权限只由当前有效 MembershipGrant 解析,不从订单金额或旧积分推断;到期外部 Key 保留但立即失权。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"External API v1"的实践含义是,到期失权的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"到期失权"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:External API v1的核心是把"search/compose/templates"做成可验证的工程事实,而不是文档修辞。本机 benchmark 为 cold 124.51ms、warm p95 132.06ms,门禁为 cold 3000ms、p95 1000ms。

第9章 导出与下载授权

本章锚定"导出与下载授权",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:浏览器编译要求 Idempotency-Key,成功才事务扣减;失败、搜索、词典与额度查询不扣次数。

export 的 TXT/JSON

先讲一个一线现实:export 的 TXT/JSON。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。原始 IP 不入库,只保存 HMAC 后的身份与限速主体;变量只登记名称与 SET/EMPTY 状态。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"导出与下载授权"要拆开的正是这一层:把"export 的 TXT/JSON"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"export 的 TXT/JSON"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

download 的分级

从原理上看,download 的分级的本质是约束传播:精确组合不存在时返回 NO_MATCHING_TEMPLATE 与候选组合;BPM/Key 为 Auto 时保留源字段,锁定时只覆盖输出快照。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"导出与下载授权"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,download 的分级就会在三个月后变成线上事故。因此本章坚持一条铁律:download 的分级的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"download 的分级"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

X-Accel-Redirect

落到实现细节,X-Accel-Redirect必须经得起数字检验。浏览器编译要求 Idempotency-Key,成功才事务扣减;失败、搜索、词典与额度查询不扣次数。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"导出与下载授权"的实践含义是,X-Accel-Redirect的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"X-Accel-Redirect"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

生产内部位置

再谈反模式。围绕生产内部位置最常见的坑有三种:一是把历史能力当成当前能力写进方案,二是把本地验证通过写成生产已发布,三是为赶进度恢复已退役的兼容层。RNOISE 文档规范为此设了硬词:技术栈为 Next.js 16.3.4、React 19.2.4、TypeScript、Prisma 7.10、PostgreSQL,Node.js 24 LTS。"导出与下载授权"要求作者在涉及 Generation、Track、播放器、上传、证书、Market、Credits 等退役域时,只能以"已退役"措辞出现;涉及生产状态无证据时,只能写 UNKNOWN。这种措辞洁癖保护的不是文风,而是团队的判断力。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"生产内部位置"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:导出与下载授权的核心是把"export 的 TXT/JSON"做成可验证的工程事实,而不是文档修辞。Guest 为每持久浏览器身份总计 10 次成功编译;Standard 按 Asia/Shanghai 日界线每日 20 次;Pro 与 ADMIN 无限编译但仍限速。

第10章 收藏与项目的隔离

本章锚定"收藏与项目的隔离",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:会员权限只由当前有效 MembershipGrant 解析,不从订单金额或旧积分推断;到期外部 Key 保留但立即失权。

登录态要求

先讲一个一线现实:登录态要求。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。会员权限只由当前有效 MembershipGrant 解析,不从订单金额或旧积分推断;到期外部 Key 保留但立即失权。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"收藏与项目的隔离"要拆开的正是这一层:把"登录态要求"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"登录态要求"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

越权防护

从原理上看,越权防护的本质是约束传播:RNOISE 2.0 定位为跨平台 AI 音乐 Prompt 工程与曲风检索平台,不生成、不处理、不播放、不授权音频。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"收藏与项目的隔离"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,越权防护就会在三个月后变成线上事故。因此本章坚持一条铁律:越权防护的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"越权防护"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

删除语义

落到实现细节,删除语义必须经得起数字检验。SQLite 本地只读 Catalog 采用独立 FTS5 表、普通索引与预建随机序号,由 Worker Thread 以只读 node:sqlite 查询。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"收藏与项目的隔离"的实践含义是,删除语义的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"删除语义"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

审计

再谈反模式。围绕审计最常见的坑有三种:一是把历史能力当成当前能力写进方案,二是把本地验证通过写成生产已发布,三是为赶进度恢复已退役的兼容层。RNOISE 文档规范为此设了硬词:会员权限只由当前有效 MembershipGrant 解析,不从订单金额或旧积分推断;到期外部 Key 保留但立即失权。"收藏与项目的隔离"要求作者在涉及 Generation、Track、播放器、上传、证书、Market、Credits 等退役域时,只能以"已退役"措辞出现;涉及生产状态无证据时,只能写 UNKNOWN。这种措辞洁癖保护的不是文风,而是团队的判断力。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"审计"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:收藏与项目的隔离的核心是把"登录态要求"做成可验证的工程事实,而不是文档修辞。生产 Catalog 由 PROMPT_CATALOG_DB_PATH 指向服务器数据盘,生产数据盘曾挂 V2(183295 模板),V3 切换待发布窗口。

第11章 patterns 与反模式

本章锚定"patterns 与反模式",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:生产 Catalog 由 PROMPT_CATALOG_DB_PATH 指向服务器数据盘,生产数据盘曾挂 V2(183295 模板),V3 切换待发布窗口。

Key 硬编码

给读者的落地建议是:把Key 硬编码拆成最小可验证闭环。技术栈为 Next.js 16.3.4、React 19.2.4、TypeScript、Prisma 7.10、PostgreSQL,Node.js 24 LTS。具体到"patterns 与反模式",建议你按"先读当前代码、再读 2.0-SETUP 与 TECH_FACTS、最后跑一遍验证命令"的顺序上手;任何与文档冲突的地方,以当前代码加验证输出为准。如果你能为Key 硬编码补上一条自动化断言(计数、回归一致率、性能水位三选一),那么"patterns 与反模式"的这一节就算真正被你掌握了,而不只是读过。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"Key 硬编码"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

前端越权

先讲一个一线现实:前端越权。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。Guest 为每持久浏览器身份总计 10 次成功编译;Standard 按 Asia/Shanghai 日界线每日 20 次;Pro 与 ADMIN 无限编译但仍限速。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"patterns 与反模式"要拆开的正是这一层:把"前端越权"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"前端越权"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

配额绕过

从原理上看,配额绕过的本质是约束传播:发布门禁链为 db:generate、prisma validate、lint、test、test:e2e、build、check:no-legacy-audio、db:verify-prompts、db:benchmark-prompts。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"patterns 与反模式"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,配额绕过就会在三个月后变成线上事故。因此本章坚持一条铁律:配额绕过的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"配额绕过"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

密钥轮换

落到实现细节,密钥轮换必须经得起数字检验。技术栈为 Next.js 16.3.4、React 19.2.4、TypeScript、Prisma 7.10、PostgreSQL,Node.js 24 LTS。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"patterns 与反模式"的实践含义是,密钥轮换的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"密钥轮换"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:patterns 与反模式的核心是把"Key 硬编码"做成可验证的工程事实,而不是文档修辞。本地 V3 全量构建扫描 358258 个 HTML,排除 3 个目录页,导入 358255 个模板与 2865739 个真实音乐变体。

第12章 安全章总结

本章锚定"安全章总结",围绕"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"的主线展开。阅读前请先确认基线:RNOISE 2.0 定位为跨平台 AI 音乐 Prompt 工程与曲风检索平台,不生成、不处理、不播放、不授权音频。

闭环一览

先讲一个一线现实:闭环一览。在 RNOISE 2.0 的语境里,这个问题不是风格偏好,而是工程正确性问题。PM2 目标拓扑仅 rnoise-web 与 rnoise-crypto-okx,旧 generation/track/credit worker 全部 retired。这意味着任何方案都必须先回答三个问题:事实来源是什么、边界在哪里、失败时如何可审计。本文"安全章总结"要拆开的正是这一层:把"闭环一览"从经验之谈变成可验证、可回归、可发布的工程构件,而不是停留在文档里的口号。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"闭环一览"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

检查清单

从原理上看,检查清单的本质是约束传播:本地 V3 全量构建扫描 358258 个 HTML,排除 3 个目录页,导入 358255 个模板与 2865739 个真实音乐变体。RNOISE 的做法是把领域规则下沉到模块的 domain 层,让 application 层只做编排、infrastructure 层只做适配。以"安全章总结"为例,正确与错误的实现差的不是代码量,而是依赖方向------一旦 Route Handler 里复制了本该属于模块的规则,检查清单就会在三个月后变成线上事故。因此本章坚持一条铁律:检查清单的判定逻辑有且仅有一个权威实现,其他位置只允许调用,不允许复述。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"检查清单"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

下一站发布工程

落到实现细节,下一站发布工程必须经得起数字检验。会员权限只由当前有效 MembershipGrant 解析,不从订单金额或旧积分推断;到期外部 Key 保留但立即失权。这些数字不是装饰,而是门禁:导入阶段先建临时库,过计数、完整性、FTS、哈希与性能门禁后再原子替换;任何一步失败都不允许半吊子发布。"安全章总结"的实践含义是,下一站发布工程的每一次变更都要能回答"哪个版本、哪个哈希、哪次 benchmark",答不上来就视为未完成。这种纪律看起来笨拙,却是 35 万模板规模下唯一睡得着觉的方式。沿"从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环"主线,请把"下一站发布工程"纳入检查清单:先定位当前代码,再核对三份基线文档,最后用验证命令背书;缺一即降级为待验证。

本章小结:安全章总结的核心是把"闭环一览"做成可验证的工程事实,而不是文档修辞。SQLite 本地只读 Catalog 采用独立 FTS5 表、普通索引与预建随机序号,由 Worker Thread 以只读 node:sqlite 查询。

结语

安全章收束:配额是产品,Key 是契约,隐私是底线。最终站进入发布工程,看 RNOISE 如何把验证变成纪律。


版权与声明

  • © DREAMVFIA UNION · RNOISE 2.0 技术专题系列,保留所有权利。
  • 本文基于 RNOISE 2.0 当前仓库代码与 docs 基线撰写,事实边界为:本地已验证 artifact 与代码即事实;生产线上状态未知处均已标注 UNKNOWN;历史能力标注 retired;规划中能力标注 planned
  • 转载请联系 DREAMVFIA UNION 获得授权,并保留完整版权标识。
相关推荐
linux_cfan1 小时前
videojs v10 源代码系列解读:10 · `DestroyMixin`:双重 rAF 延迟销毁
前端·javascript·音视频
雪芽蓝域zzs1 小时前
第四十六节:顶部【驾驶舱】独立大屏页面实现
前端·javascript·vue.js
白远山2 小时前
健身场馆无人自动化系统实战指南:从架构设计到部署全流程解析
java·开发语言·架构·需求分析
秋秋小事2 小时前
node prisma+postgreSQL中的查询与过滤
node.js
右耳朵猫AI2 小时前
Node.js周刊2026W37 | 三处进程崩溃修复、fs 内置 glob、Workers 模块注册表、Vitest 5.0
javascript·后端·node.js
咖啡八杯2 小时前
Controller 基类封装:BaseController 的模板方法设计
java·架构·设计
她的男孩2 小时前
加了 @Idempotent 还是重复扣款了 3 笔:扒完 1279 行幂等 Starter,我挖出 5 个隐蔽的坑
java·后端·架构
右耳朵猫AI2 小时前
Web前端周刊2026W37 | Shopify 转原生、React 编译 Rust 化、Vitest 5.0、Rslib 1.0
前端·javascript·react.js·typescript·node.js