anenreo个人数字操作系统文档

← 返回首页

多 AI 连接、模型路由与隐私配置

# 多 AI 连接、模型路由与隐私配置

## 目标

anenreo 的 AI 配置不是单一 API Key 开关,而是一套持久化、可审计、可回滚的多连接编排系统。PC Web 管理配置;移动端只读取运行状态,不接触密钥。

## 连接维度

协议与网络位置分开保存:

- 协议:Mock、OpenAI Responses、Chat Completions、OpenAI Compatible、Anthropic Messages、Ollama Native。
- 网络位置:公网云、API 服务本机、局域网、VPN、HTTPS 隧道、自建反向代理。

例如,同一个 OpenAI Compatible 适配器可以连接公网网关、本机 LM Studio、局域网 Ollama 或通过 HTTPS 隧道暴露的自建 vLLM。

## 持久化与秘密

普通配置写入 `ai_provider_connection`,认证秘密写入独立 `ai_provider_secret`,使用服务端根密钥执行 AES-256-GCM 加密。客户端只能得到 `hasSecret` 和不可恢复掩码,永不回显密钥明文。

`SETTINGS_ENCRYPTION_KEY` 必须由服务端环境或 Secret Manager 显式注入,至少 32 个 UTF-8 字节,并由密码学安全随机源生成。开发、测试和生产均不提供公开默认回退;缺失、空白、过短或使用公开占位值时 API 失败关闭。源码候选包不携带任何 `.env*`、运行备份或 Provider 密文,根密钥必须与数据库备份分离保存。

## 默认本地 Mock 身份与初始化

系统默认连接由 `ownerId + 本地 Mock AI + MOCK + mock://local` 共同识别,默认模型再由该连接与 `anenreo-mock-v1` 共同识别。`ensureDefaults` 不得无序选取任意现有连接,也不得把默认模型挂到用户新建、编辑或测试用 Provider。连接、模型、Prompt、脱敏档案、模型档案、路由和隐私偏好在同一事务内按各自唯一业务键执行冲突忽略,随后必须精确回读 winner 的真实持久化编号;PC 首屏七个并发配置读取只能收敛到一套完整默认图,loser 不得沿用自己未落库的 ULID。

旧版本若留下“自动生成的 `anenreo-mock-v1` 被挂到用户 Provider”污染,系统只在模型和保留名档案均为 `revision=1` 且其他系统默认字段、Prompt 引用完全一致时,把档案的 `primaryModelId` 改回 canonical 模型。迁移不删除旧用户连接或旧模型,也不改写 Prompt 内容、路由参数或脱敏内容;保留名档案/路由的 revision 较新或关键引用不兼容,以及保留名 Prompt 的工作负载身份不兼容时失败关闭,要求用户先重命名自定义配置,禁止凭名称猜测并覆盖。

配置中心浏览器验收删除临时 Provider 时,必须在点击前监听精确的 DELETE 地址,等待响应完整结束,再独立回读 Provider 列表。只有 DELETE 成功且回读无目标编号时才清空清理句柄;失败时由 `finally` 再次删除,并把残留记录为 `absent`、`present` 或 `unknown`,不得用固定延时或盲轮询推断成功。

## 模型删除与引用并发(AUD-121)

删除模型先在事务中按 ownerId + modelId 锁定目标,不可见或已删除的编号统一返回 404。随后检查主模型与回退模型引用,存在引用时保持拒绝;健康记录、父模型及删除成功审计共同提交或回滚。父删除实际影响零行时返回冲突,不得追加成功审计。

档案写入在同一事务中按稳定编号顺序对所有引用模型持有共享锁;默认档案初始化也锁定其模型。这样,引用写入先取得锁时,删除等待其提交后重新检查引用;删除先完成时,后续档案写入不能继续引用已不存在的模型。现有 SQL 迁移不改写。

## 连接探测结果(AUD-120)

网关返回 success=false 时,HTTP 业务结果与健康事实都必须为 UNAVAILABLE,测试审计记录失败。探测正常返回不等于探测成功;连接探测也不代表真实业务生成已验收。

Provider 抛出的未转换异常只映射为固定安全原因码,不把异常正文保存为健康错误码。网络探测在事务外执行;随后健康事实与测试审计共同提交。健康或审计存储失败返回服务端错误,不再次写入一份虚构的 Provider 失败结果。

连接级健康记录的 modelId 为空,复合唯一键不能消除重复探测。写入时锁定父连接,并在同一事务中替换该连接的当前健康事实,归并历史重复行;模型级健康记录保持独立。重复或并发探测后,配置回读与最近一次已提交结果保持一致,历史测试仍保存在审计中。

## 配置保存与冲突恢复(AUD-122)

模型、模型档案、脱敏档案、路由和隐私偏好的条件更新必须检查实际返回行。更新影响零行时返回 HTTP 409,不写成功审计;更新、成功审计与本次结果回读在同一事务中完成,审计故障回滚配置修改。

PC 模型和隐私表单发生冲突时保留原草稿与原版本,单独读取服务器最新配置并显示业务字段对比。用户可以明确采用服务器配置,或确认保留草稿、采用最新编辑基线后再次点击保存;确认比较本身不发起覆盖写入。隐私草稿不会被“刷新配置”或其他配置的回读覆盖,未保存的开关不表示策略已经生效。四个隐私开关具有独立的可访问名称。

## 工作负载路由

模型不会直接绑定数据库表或表单字段。字段只声明工作负载,例如:

- 隐私分类
- 实体路由
- 结构化提取
- 标题与摘要
- 图片理解、OCR、语音转写
- 关系推断、个人模型推断、决策分析
- 助手对话、代理规划和工具执行规划

`ai_model_profile` 定义主模型、回退链、温度、结构化输出、Prompt、重试和超时;`ai_route_policy` 再按照工作负载、模块、字段、隐私等级、能力与网络位置选择模型档案。

## 隐私路由

系统硬规则优先级最高:

1. `PUBLIC`:可以使用本地或云端。
2. `SHARED`:默认允许脱敏云端,可由用户关闭。
3. `PRIVATE`:默认禁止云端;用户可以在 PC 打开全局开关,也可以对单次请求明确授权脱敏云端。
4. `SECRET`:强制禁止云端与公网隧道。
5. `LEGACY_ONLY`:强制本地,并且需要合法数字遗产权限上下文。

即使 PRIVATE 开关开启,字段的 `NEVER_SEND_TO_CLOUD`、工作负载禁令和系统硬规则仍然不能被覆盖。

## SSRF 与网络安全

Provider Base URL 由 NestJS 服务端访问。服务端必须:

- 仅允许 HTTP/HTTPS;
- 禁止云元数据、文件协议和危险重定向;
- 对私网、明文 HTTP 和关闭 TLS 校验进行显式风险确认;
- 限制响应体、超时、并发和允许主机;
- 记录安全错误码,不记录请求正文与秘密。

## 审计

每次 AI 调用至少记录工作负载、实体、隐私等级、连接、模型、路由、脱敏档案、发送字段路径、输入摘要哈希、Token、延迟、结果和远端请求编号。默认不保存完整请求正文。

## PC 页签交互约束

AI 连接和任务路由中会改变安全、隐私或模型选择逻辑的字段,统一提供标签帮助入口。鼠标悬浮可查看完整业务说明,并可复制说明;短标签不再承担全部解释责任。

AI 配置中心的连接、模型、任务路由、隐私、Prompt 与审计六个页签采用独立显隐区域。切换页签时必须同时更新选中状态和业务内容,不能只改变高亮而保留上一页签内容。配置中心共享页签、卡片、表格、开关列表与双栏表单样式由 Web 全局设计系统统一维护。

## 云端候选与发送内容(AUD-116~118)

每个实际模型候选按其网络位置生成独立消息。本地、局域网和 VPN 使用原输入;外部候选,包括公网云、HTTPS 隧道与反向代理,重新读取并应用云端脱敏档案。PRIVATE/SHARED 必要档案缺失或禁用时不得外发,不能复用本地主模型已生成的消息。路由模拟的 requiresPrivacyTransform 覆盖整个回退链。

所有外部请求都剥离 forbiddenCloudFields,包括 PUBLIC、未绑定可选档案、档案 disabled 和历史 stripHiddenFields=false。后者仅为数据合同兼容字段;PC 页展示“禁止云端字段始终剔除”。正文和每个结构化字符串共用相同的电话、邮箱、账号、姓名与地点替换规则,同一调用使用一致伪名;账号规则支持英文及中文前缀。原输入对象保持不变,替换映射不发送给 Provider。

审计跟随每个候选的实际发送档案和字段列表。未进入 Provider 的拒绝记录不声明已发送字段;该安全修复不改变 AI 输出必须经过审核的领域边界。

## Provider 响应预算(AUD-119)

JSON 响应在读取实际解压后的流时累计字节,最多缓存 8 MiB。Content-Length 仅用于提前拒绝,缺失或虚报长度仍受同一上限;UTF-8 在完整受限字节上解码。超限、超时、重定向和非成功状态取消流并释放 reader,禁止先完整缓冲再检查。真实本地 HTTP 长流、停滞响应、精确上限和字符分片由定向测试验证,不等于外部账号验收。

## 2026-09-30 统一验证修复:配置输入错误

AI 连接超时输入失败统一通过安全错误展示,不直接显示异常 message;校验在请求前返回并保留当前连接草稿。秒到整数毫秒的换算、允许范围、已保存密钥的保留/替换/清除意图及权限门禁不变。

页面真实 script setup 状态回归覆盖非法超时不写入、草稿保留和既有模型/隐私冲突流程。运行环境新增依赖以真实共享展示包接入测试,不通过删除断言、伪造成功或放宽授权来取得通过。Web 完整测试、类型检查和生产构建分别有自动化结果;浏览器和真实 Provider 验收仍需独立证据,详见相邻验证报告目录的 2026-09-30-Web-UIUX自动化结果.json。


## 2026-10-02 第二批界面修复候选

PC AI 配置卡片的描述和元信息使用页面局部 12–14px 基础字号并随既有字号缩放;新增连接行按当前密度留出底部间距。共享 header span 选择器收窄到元信息,避免覆盖 UBadge 自身样式。未改变连接保存、权限、密钥或模型路由,不调用真实 Provider。组件与 CSS 合同测试不代替明暗截图、读屏或真实连接验收;本批浏览器证据为 not_run。


## D02引用竞争35项及Partial合同后继已核验

D02 A38/OID658386真实PG17.11执行35/35:引用/删除两序、Prompt退休、发现与探测修订竞争、双删唯一成功、反序排序、首次七读、完整图不阻塞、历史坏图可修复、跨owner及9类实际审计INSERT后SQL故障回滚通过。1394执行输入保持;根第三READ ONLY核全415表摘要、90迁移原hash及3结构指纹、5类悬空均0、其他会话0。原35全部回调/请求/断言保持;R09真实两写者等待链由同一PG快照逐边证明。

公开UpdateAiConnectionInput原为Partial+revision必需;正式DTO改用PartialType且只有undefined可省略;13个原非空业务字段仍拒绝显式null,秘密字段沿用原null合同,类型/权限/CAS校验保持。新41 HTTP与原相关135合计(含41)通过;A38原部分更新并发请求保持且通过,未改成全量夹具。

- 已完成:标准API25构建exit0,1995输入前后SHA保持,3396归档文件/90SQL/4worker资产核等;纯等待图12/12及类型、注释门通过。A36第11停止与A37第21停止现场均保留,后者真实双写者传递等待被旧直接计数漏掉;r4只修观测,不减minimum2/5000ms/20ms、不改产品服务/DTO或原35例。
- 当前运行:已批准本地开发90、API4000 r19/Web3000 r22/H55173保持;新D02/Partial后继仅在隔离A38验证及API25归档,尚未切换到4000。原3300/15373/7743保持,最新9个只读健康检查全部200。
- 本地待补/待验:D03旧确认版本、D04强CAS、P01–P04配置消费、当前后继全角色UI,以及D05本地缺口:保留名档案/路由HTTP改绑可以成功,随后默认目录读取又按原保留身份规则409;需保存和回读保持一致且能恢复,不能自动覆盖用户改绑或放宽原拒绝断言。尚未实现,依据r4/ROOT-REVIEW.md。
- 设备与外部:App三目标CLI构建通过;iOS首次授权桥仍是本地未实现项,原生链接/安装包/真实权限与录音、真实Provider验收仍待条件。未启worker/调用真实Provider/远端部署。

原70项范围保持,完整验收0/70,14批仍partial,目标active。历史阶段的旧待验描述以本节及当前pending为准,不覆盖历史证据。

正式调用审计筛选(2026-10-25)

PC配置中心新增工作负载、隐私等级、结果状态及本地自然日组合筛选,支持每页10/20/50条、本地分页、清除筛选、空态和错误区间提示。范围明确为当前已加载最近最多100条,不表示全库历史查询;截止日期包含当天,跨夏令时按下一日午夜计算。真实9条审计中筛选失败得到1条、重置恢复9条,未触发模型调用。移动AI配置仍按既有架构只读;已存在连接/模型/档案CRUD不重复实现。

证据:_work/handoff/uiux-production-20261025-phase2;逐项范围见production-70-ledger.json,测试、截图和独立回读分别留证。

2026-10-25 正式设置P1审阅与版本边界

正式PC新增单规则只读诊断、脱敏规则差异审阅、同模板族已保存版本对比、复制新版本以及显式发布/废弃审阅。未重造既有配置CRUD。审阅冻结本次DTO,取消不写,确认写一次再独立GET回读;未知结果只核对,不盲目重发。409保留草稿,读取最新差异后需明确采用新编辑基线并再次审阅,读比较本身不覆盖配置。登录代次变化清理旧快照,迟到回包不能恢复旧操作。Prompt的null Schema按原语义保留。

本轮证据:_work/handoff/uiux-production-20261025-phase3。样例库只读,70项领域完成率不因此提升。

Prompt版本和状态规则

DRAFT可修改、发布或废弃;PUBLISHED内容及身份不可覆盖,只可保持发布或废弃;DEPRECATED不可重新激活,修改需复制新版本。启用模型档案只能引用同工作负载的已发布Prompt,废弃前必须迁移启用中的引用。引用共享锁与Prompt状态行锁配合;更新、审计和回读置于事务内。同名同版本竞争返回409。服务器若已发布或废弃正在编辑的草稿,重基线先拒绝覆盖,在弹窗保留错误与本地输入,并可明确将当前草稿另存新版本;此操作本身不写入,填写新版本号后仍需重新审阅。新PC页面始终携带expectedUpdatedAt检测旧基线;该字段对旧客户端保持可选兼容,不能扩称未提供基线的所有旧客户端都具备乐观锁。

版本比较针对当前仍保存的版本,不是已删除模板的完整历史。发布不自动切换模型档案引用;废弃保留版本,既有删除入口和其引用限制继续独立。

2026-10-25 十四批第1批认证、排序与历史分页

服务端认证方式切换要求明确替换或清除认证材料;省略秘密只保留原认证,禁止把旧Bearer、Basic用户名或头名解释为另一认证。清除与替换冲突、空白替换、Basic缺用户名和非法HTTP头名失败关闭。MOCK普通配置与秘密保存统一按有效NONE处理。

路由重排按稳定ID取行锁,保留用户priority;所有条件更新、成功审计和不创建默认图的完整顺序回读同事务。陈旧revision或审计已插入后异常均整组回滚。真实PG78项已通过,包含反序重排和重排/编辑的真实等待竞争,只一次200、另一方409。

旧GET /settings/ai/audits数组接口兼容;新增GET /settings/ai/audits/page按owner、工作负载、隐私、结果和绝对时间先过滤后分页。默认20、上限100;createdAt六位微秒+ULID稳定排序,游标绑定账号/筛选/数量,返回items、nextCursor、hasMore,不伪造total。首次上界只是导航边界,不是跨请求数据库快照。真实PG6项通过,包括155条历史、最近100之外筛选和相邻微秒续页。

正式PC使用独立审计历史组件:自然日换算[from,to),截止含当天;更换条件立即清旧数据,显式查询从首屏开始;失败只GET重试当前页,权限/会话/卸载撤销旧响应。独立查询失败不再阻断其余配置加载。Nuxt选择器、共享日期、44px同排操作及窄屏阅读卡沿用最初融合样例;H5仍只读运行状态,不新增密钥管理。

阶段证据位于_work/handoff/uiux-production-14batches-20261025;PC已核验选择器和日期展开、失败/恢复及390px等效布局,不能替代真实H5/小程序设备、完整主题/权限矩阵或70项全验收。

2026-10-25 只读路由诊断的版本与技术信息

诊断显示本次结果的合法正整数业务版本,以中文“第N版”呈现;非法版本待核实,不借当前route后续版本。模型有名称用名称,缺名显示“模型名称未加载”,内部ID只在既有showTechnicalCodes开启后作为中文辅助信息条件渲染。

候选状态和无候选策略沿用共享枚举,未知值默认中文占位。偏好切换不重发诊断、不调用Provider或改变请求原枚举。业务版本保留可验证锚点,技术开关不放宽异常正文展示;局部SFC、类型和第二轮构建证据不等于全部真实路由/Provider消费验收。

2026-10-25 0086验证与AI恢复边界

Agent共享guard跨表字段作用域已由前向0086修复,并在新PG17.11库25/25及独立只读5318列合同中验证;旧失败PATCH独立对账为DRAFT1且无成功更新事实,没有重发或重置旧AI库。

attempt03的INT002/PMD005真实Ollama候选及audit回读、PMD007确定性MATCH/DRIFT零模型调用继续保留。0086没有Provider调用,不据其通过补记AIA002/AIA003、LEG008或DEC008真实生成成功;新隔离attempt、PMD来源授权和AIA历史来源仍需独立推进。业务库没有因该测试迁移升级。

2026-10-25 PMD来源授权版本复核

PMD证据列表现使用真实MemoryPublicationSource,复用当前owner、权限、生命周期、privacy与revision/hash;来源不得高于目标entry,SECRET不增例外。每个非空稳定evidenceId必须唯一链接同owner/entry/module的不可变事实;缺失、歧义与跨对象在Provider前拒绝,不猜测补历史链。

Provider前冻结entry/link摘要,返回后落库前重核来源及授权版本;候选摘要绑定真实link,仍为CANDIDATE,原entry不改。空证据保留无证据假设语义,也不跳过当前AuthorizationService版本复核。候选读取逐个复核当前权限、ACTIVE、privacy和版本/hash,失效整次失败,不返回部分旧派生标签或伪造空数组。Provider后失败可能已有平台调用/审计,不能抹去这些事实。

62项定向unit和隔离nativePG17.11正式认证HTTP9/9通过,后者实际OrchestratedPersonalModelProvider调用0、AI审计0。五条USER_SUPPLIED/CANDIDATE是typed仓储插入的合成读取fixture,不是真模型输出;真实撤权/授回、隐私提升、版本变化及归档均独立核对拒绝。r6 API已包含本源码,未恢复AIA/LEG/DEC真实生成验收;PC/H5撤权提示、旧候选清除与迟到回包另待。

2026-10-25 真实平台调用与领域结果分层

新intent root_real04_20261025_1436唯一执行于14:38:20 UTC以exit1、failed-preserved-no-retry结束,整体不能写四项通过。四条真实平台audit均SUCCEEDED,绑定本轮本地qwen3.8:27b-zh;生产Provider/orchestrator/gateway真实绑定、Ollama状态与worker关闭事实分别核对,不能由AI_PROVIDER环境文字证明真实调用。

AIA002使用HISTORICAL Memory r1与不同当前r2,历史详情、public contextHash、候选GET/list/revisions/domain audit独立读回;AIA003为SIMULATION当前r2,两者真实生成PENDING/rev1,未采纳为本人事实、未执行工具。LEG008经各自step-up正式PLAN ACTIVATE与LIFE_BOOK APPROVE,终态APPROVED/rev2及回执/current/revisions/audits通过,只证明合成材料生成与审核机制,不证明事实真实性或真实投递。

DEC008生成POST返回503,但独立REPEATABLE READ READ ONLY确认领域已提交FAILED/rev1、AI_UNAVAILABLE、result_hash=null,同版失败修订与DECISION_SIMULATION_FAILED审计存在,幂等SUCCEEDED,建议0;原case仍rev1与原contentHash、未选方案。平台SUCCEEDED与领域FAILED同时成立,绝非零模型、零写或回滚;原响应曾unknown,随后才只读确认,不反写原时点。没有重发该请求。

完整item schema及脱敏诊断后继正在正式源专用RED修复,不在r7,也没有新真实生成成功证明。原失败artifact/key/intent保留,不放宽领域解析、不修补模型正文或重试已提交失败。新修复须新构建、测试和明确新intent独立验证,DEC008完整范围仍partial。

2026-10-25 DEC输出schema与正式运行边界

DEC008已确认的生产者/消费者合同缺口现以专用schema helper修复:按同owner、固定sourceCaseRevision的活动方案建立optionId enum,顶层与每项禁止附加字段,必需optionId/suggestionText,文本string/minLength1且非空白;数组min0/max本次方案数,合法空建议继续允许。

原consumer继续校验ID唯一、NFKC/trim/空白折叠后的1..10000码点;标准JSON Schema不能表达这两类规则,不能宣称Ajv覆盖全部后置校验。初段原始maxLength10000近似会拒绝规范化合法的长空白/组合文本,已被真实RED否决并删除,前像/失败保留;Emoji、零宽、全角、组合字符与规范化后超长均分别留控制。

上下文仅新增同来源revision已授权活动方案的optionId/label,不传owner、内部normalizedLabel或其它revision。实际AiPrivacyTransformService用JSON pointer精确/options剥整组ID/labels,原question/scores禁云与本地/LAN/VPN白名单保持,不用无效options.label作保护证据。

新28加原26共54/54,API类型、中文注释3382及diff检查通过。逆向剥离新schema/context/禁云及关联注释后,整个service前像hash与原RED一致,证明原consumer、权限/来源查询、事务、幂等、FAILED artifact及503语义未改。修复针对可证合同缺口,real04原文未保存,不能倒推本次具体失败谓词。

API r8构建exit0已含本修复,但正式4000仍r7 PID37972,Web仍r7;构建成功不等于已启动新源码。real05仅准备,尚未分配新库或执行,不记录真实模型成功,也不重发real04已提交FAILED artifact。真实新intent、领域回读/审核/complete仍待根。

本轮只新增已确认源码/构建/浏览器层级。API r8 build0尚未切换正式4000,正式API仍r7 PID37972、Web3000仍r7 PID45740;本代理只读TCP核对,不启停服务或读取命令/env。正式settings三连接的r7实际读图已保存,但页面读取不代表Provider真实可用。

real05处于prepare,未分配/执行;测试租约仍23库且未清理验证。已批准开发库85–87应用与88ledger/5327合同保持,不再pending;无新迁移、worker或远端授权。全70项fullAcceptance=false,旧失败/运行时点保留,不宣称全仓当前绿色。

2026-10-25 real05真实平台与正式API r8

新隔离intent root_real05_20261025_1514在精确DEC05库唯一execute,15:15:43 UTC以exit0结束。仅DEC008真实生成1次,产生2条建议并独立读回;逐项CONFIRMED后complete,终态REVIEWED/rev4、sourceCaseRevision1及resultHash严格匹配。没有为非空样本重复生成,合法空数组合同仍保持。

真实生产Provider/orchestrator/gateway与本地模型平台audit SUCCEEDED;独立REPEATABLE READ READ ONLY核对simulation、2条建议审核、4版历史、领域审计及幂等,并确认原case仍原revision/contentHash/未选方案。建议审核/REVIEWED不是将AI建议采纳成原case决定或本人事实。

这是新intent/新库的单次验证,不是重试real04旧key或已提交FAILED artifact,也没有复生成此前AIA002/AIA003/LEG008。旧real04平台成功、领域FAILED/rev1及其历史/审计/幂等原样保留。合同缺口修复后的本轮成功不反证旧模型具体失败谓词,原正文未留存的限制不变。

正式API4000已切换API r8,PID29452;Web3000仍r7,PID45740,没有前端重构建。runtime-approved-round8-readback于15:17:25 UTC实际READ ONLY确认开发库88ledger/hash、5327列及56aca7924fc2c105b464c9ec00f7f6e14dde6affe4af22b638183c89ec4907b6指纹保持,未再次迁移,validate-exact、workers=false,API live/ready与Web三GET200。

此前APIr8仅build0/正式仍r7的段落保留为旧时点,本节记录已启动的新事实。健康与schema只证明启动/合同,不能代替隔离real05业务验收或Web新控件实测。已批准的本地开发迁移85–87继续保持,无新迁移、远端部署、通知投递或worker启用。

最新postgres-dec-real05-leases为24具名测试库,未清理验证。Color43项/1017冻结只是候选源码证据,旧r8复开失败保留;r9 H5/MP仍等B11候选,构建与新浏览器未跑,不能预写通过。real05的真实后端通过不覆盖这些前端缺口。

2026-10-25 正式settings在API r8重启后读回

根CUA在API r8重启后重新加载正式3000/settings/ai,实际读到3连接、loading=false、configError=false,截图formal-api-r8-settings-readback.png已保存;Web仍r7。该页面读通证明设置读取,不替代Provider生成、全部能力/角色、CRUD或70项完整验收。

2026-10-26 设置上下文与反馈PG限定补验

SET06/SET07重基线与全局模拟保留草稿并拒绝退休响应,定向测试与Web r10构建分层通过。反馈nativePG r2双应用池和独立只读池11/11覆盖权限、竞争、审计回滚和存储补偿;原装配失败与空库证明保留。新H5/设备/未知响应断连与四策略后继仍待,不把局部通过升为70项完整验收。详见docs/设计与计划/验证记录/2026-10-25-正式UIUX十四批阶段记录.md及_work/handoff/uiux-production-14batches-20261025/root-settings-feedback-r10-stage-merge.json。

2026-10-26 正式源码r13阶段证据与边界

四策略已由正式resolver/orchestrator消费;仅静态网络交集不相交可跳规则,首适用规则终止。WAIT同步可恢复但没有持久队列,FAIL明确失败;云备用须本条ALLOW及完整隐私/脱敏/批准门,Mock备用只允许非生产显式配置。成功审计后复核授权,变化/读取失败均停止发布且不续调或虚构FAILED。原source空值对照已撤回,新真实Memory四表非空及nativePG三场景替代;真实模型和全设置页面仍待。

权威范围与历史更正:docs/设计与计划/验证记录/2026-10-25-正式UIUX十四批阶段记录.md;需求70项仍全部fullAcceptance=false,样例只读,未启worker或部署远端。

2026-10-26 安全规则与页面说明后继

安全扫描规则未改。授权状态变量仅alpha重命名并有等价证明,分页负例运行时生成UUID、原字段与断言不变;相关73及两端各14通过,不把旧15393全量基线改写成新夹具全量。Web当前结果与已配置回退策略分清,排序控件具有规则名称;真实r17浏览器和108回归分层通过。API r16与Web r17正常,原构建编排失败保留且未关闭类型检查。全部70项完整验收仍false,真实Provider/设备和全UI矩阵仍待。

2026-10-26 设置删除原子性与剩余验收

模型档案、脱敏档案与Prompt删除的原检查/DELETE/成功审计现共事务;权限、owner、引用与原无版本合同保持。可靠6故障RED及12健康、相关115通过;根native30实际21/21,含3次真实审计INSERT后当前事务SQLSTATE22012和独立Pool回滚读证。根独立READ ONLY核88迁移hash/412表/5327列/56aca792完整指纹保持,健康成功audit每类1。该真实证据仅绑定cd36源码快照。

D01路由删除另有2 RED/4健康,窄事务包装后相关121通过;去包装还原cd36全字节、前三方法AST与字节保持。新621d7a源码需独立native31七项验收;首次冻结后两行文件头注释变化被DB前守卫拦截,原失败保留,根安排新证据目录,不重写旧freeze。当前API4000尚未包含本次删除修复,不能从源码或测试推断运行已生效。

D02全部引用写者同锁协议、D03旧确认DELETE无revision/If-Match、D04 Prompt可选expectedUpdatedAt仍开放。P01公开云偏好/P02上下文字数/P04模块约束是待裁定消费设计与候选RED;P03未知发送结果不得盲重试。29条多角色UI/回读/故障计划已准备,未执行不是验收;真实Provider与设备单列,70项完整验收仍false。

完整规范及证据:docs/设计与计划/设计规格/2026-10-25-正式UIUX十四批收口设计.md、实施计划及阶段记录;_work/handoff/uiux-production-14batches-20261025/batch01-settings-final-matrix-20261026/。

2026-10-26 D01真实PG后继

根唯一native31-r2于2026-10-25 21:05:31 UTC结束exit0/sourceUnchanged=true,原6回调与断言加1真实同事务审计INSERT后SQLSTATE22012共7/7。真实audit INSERT1、事务连接PID与独立reader不同,提交前reader仍见原事实,失败后完整事实和audit回滚;schemaUnchanged true、Provider0。此为621d7a源码的独立后继,原native30 cd36快照21/21不被改写,原native31注释漂移拦截/空库证据保留。根最终独立READ ONLY回报另列;未将此局部PG通过当运行已部署、D02/D03/D04或全设置验收。

提示模板消费:资格与字符预算

显式绑定模板必须仍属于当前用户、已发布、工作负载匹配;仅目标模块为null时通用,其余精确匹配。模拟、诊断和实际发送复用资格,模拟未提供完整正文时不宣称预算已验证。固定当次模板字段及版本身份,每个候选发送前重验,失效不默默换模板。

脱敏与现资格检查后,对实际所有消息正文按Unicode码点求和,包括系统提示和渲染后的正文、上下文、来源标签及内部覆盖模板;输出Schema外壳和二进制不计。超过已绑定模板上限时停止本次编排,不截断原文、不换云或Mock、不继续备用。已发生调用审计保留,未发送候选不伪造Provider失败。最后持久授权与成功后的RESULT_RELEASE仍保原语义。

三种受控公开拒绝为AI_PROMPT_UNAVAILABLE、AI_PROMPT_SCOPE_MISMATCH、AI_PROMPT_CONTEXT_LIMIT_EXCEEDED;只返回固定安全说明,不带正文或阈值。领域原文保存、确定性草稿、失败事实和未知提交保护由各消费者原合同保留,不能把本次AI拒绝解释为整个业务零写。

核心9源冻结见batch01-settings-prompt-consumption-20261026/production-freeze-core-r1.json。新增真实路由与编排31例由28失败/3健康到同字节31通过;分组API新78+旧100、展示新4+旧18通过,类型/文档/导入及完整性检查通过。领域传播、真实PostgreSQL、后继标准构建和浏览器验收由根独立整合;当前源码测试不代表已升级运行服务,也不代表70项完整验收。

R47 删除原版本确认与真实两类验收

R47/D03六类DELETE要求原版本:五类expectedRevision、Prompt expectedUpdatedAt;原锁后比对与最终DELETE谓词保持原基线,缺400/旧409。六类Nuxt主题确认冻结原票据、取消保稿、撤权失效及GET-only冲突刷新;长侧栏改普通文档流。API75/Web64相关测试通过,模型/Prompt真实双页面旧409、新审阅删除200及独立GET/目标PG通过;两次409前后所有目标JSON字段严格相等,最终各1成功删除审计。Terra审desktopDark/phoneLight、44px、初焦取消/Tab循环/Escape和reader自身禁写。

R47仅模型与Prompt两类浏览器实测;连接/档案/路由/脱敏实际浏览器、全部主题/角色组合、真机触摸/读屏仍待。新D03合同真实PG锁等待与审计故障回滚未重跑,原证明仅各冻结版本;D04真实PG竞争/故障仍待。3000/4000未切换;D05保留名配置保存/回读一致性仍待补。

完整证据:_work/handoff/uiux-production-14batches-20261025/batch01-ai-delete-baseline-r47-20261027/RESULT.md。此前D03无版本及D04可选基线为历史边界,以后继源码合同为准。

R48 默认档案与路由保存/恢复

R48/D05保留档案/路由身份在保存前409拒绝不兼容改绑及重命名,非身份参数保持;只读恢复目录不初始化,原图拒绝与五个锁/读取方法文本保持。主题界面提供身份只读说明、当前/默认对照、零写复制及只填草稿恢复。API新11(原10RED)与相关4文件37、Web新5RED后2文件69通过,API类型/Webwatch0。新隔离owner真实两处坏引用:普通409→恢复目录200且七类PG事实严格不变;两项各唯一PUT200到rev3及独立GET确认,其他字段/行保持、审计恰2,正常目录重读200零写;桌面审阅滚动/焦点已复验。

R48范围仅默认档案/路由;连接、模型、Prompt和脱敏保留身份的保存/读取兼容仍需独立核验。手机390 PNG仍裁切,DOM宽度/焦点/44px事实不代像素通过;reader仅自身禁写列表与表单,冲突恢复卡未实际进入。新合同真实PG并发/审计故障、用户副本实际创建、全部主题/真机/读屏仍待;3000/4000未切换。

证据:_work/handoff/uiux-production-14batches-20261025/batch01-default-catalog-recovery-r48-20261027/RESULT.md。此前允许保存后读取拒绝为历史边界,现已在两类保存入口保护,未放宽原默认图规则。

R49 四类删除与连接编辑确认

R49/D03余下连接、档案、路由、脱敏四类真实浏览器:各创建201、改名更新200、旧确认409、独立GET及重新审阅第2版删除200;档案/脱敏被新路由引用时各400。18次尝试/12成功写/12成功审计,四目标最终均无;四次409与两次引用拒绝均无目标事实变化,owner旧七类配置及旧AI审计严格保持。正式Web三处native确认改Nuxt主题票据,取消保稿/撤权卸载失效;Mock有效值展示与既有服务归一化一致,保留切回草稿,已有密钥仍需显式CLEAR。直接相关3文件90测试和最终类型检查通过;Terra独审桌面深浅截图、选择器展开、44px、Tab/Escape;8页原稿精确保留。

R49补齐D03四类基本删除浏览器,与R47模型/Prompt基本证据合计六类;不等于全状态全角色验收。真实秘密CLEAR/连接切换仍仅受控测试;reader冲突卡、完整权限/主题/手机像素、触摸和读屏待验。新D03/D04合同真实PG并发与故障回滚未重跑,历史证据只适用其冻结版本。D05连接、模型、Prompt、脱敏保留身份仍待核;3000/4000未切换。

证据:_work/handoff/uiux-production-14batches-20261025/batch01-ai-four-controls-r49-20261027/RESULT.md。原14批/70项完整验收仍0;原生确认实现断言改为主题零写保稿行为断言,其余业务断言保持。

R50 默认连接、模型与脱敏身份保护

R50/D05核原合同后只补三类缺口:默认连接名称/协议、默认模型所属连接/远端编号、默认脱敏名称在保存前拒绝身份破坏,原默认图与15个锁/读取/DELETE方法逐字保持;超时、显示名、规则等非身份参数及用户自建项仍可保存回读。Prompt既有已发布/废弃锁定实际核对后保持,不重复实现。7个新HTTP业务RED后10个新增与原11合计21通过;Web3新RED后3spec93、API/Web类型exit0。Terra审真实新Web桌面浅色三类锁定/说明、非身份可编辑及新建不误锁;全程零业务写,指定owner七类配置和旧AI审计严格保持,无日期豁免。

D05默认档案/路由R48真实恢复证据保持;R50其他三类新保存保护仅受控HTTP/类型及新Web零写检查,7780仍R48源码,未加载或真实PG验证新guard。Prompt原已发布保护已核,不新增改写能力。真实非身份保存/拒绝、权限/撤权/竞争/审计故障、历史坏身份恢复、完整主题/手机像素/触摸/读屏继续待验;3000/4000/5173未切换。

证据:_work/handoff/uiux-production-14batches-20261025/batch01-default-identity-r50-20261027/RESULT.md。真实Web只读检查和受控HTTP合同分开,不把当前7780旧源码当作新保护的实际PG验证。

R51 默认身份保护真实PG与浏览器保存

R51复用R50四源SHA不改业务实现,新隔离源码API7781实际加载新保护;全新合成owner,根7身份破坏HTTP各唯一409,逐次目标PG七配置/AI审计/健康/秘密计数全字段严格不变,普通GET可读。Terra实际3次非身份保存:连接超时5→6秒、模型显示名、脱敏邮箱true→false,各PUT200且独立目录GET完整回执相等;逐阶段PG仅对应业务字段+revision1→2+updated_at变化,其他原行保持。创建反例Mock连接1次,合计11尝试/4成功写/4成功AI审计,0范围或运输失败;新只读页面再次观察3持久值后PG严格不变,旧R48配置/审计精确等R50及本轮前值,8页草稿原文保持。

R51已补三类指定身份拒绝和各一项非身份真实串行保存/独立回读;不是所有可编辑字段或全领域验收。新guard权限撤回/竞争/审计故障、历史坏身份恢复、完整主题/手机像素/真机触摸/读屏仍待。D03/D04最新合同真实PG并发与审计故障仍按冻结边界补验;Prompt既有发布保护不重做。正式3000/4000/5173未切换,原7780/旧有限代理及草稿保持。

证据:_work/handoff/uiux-production-14batches-20261025/batch01-default-identity-pg-r51-20261027/RESULT.md。R50曾未加载新API的边界由本轮指定7拒绝/3保存实际验证补齐;受控测试未重跑,源码4SHA保持,未扩张为所有参数/权限/并发验收。

R52 Prompt编辑基线真实并发与回滚

R52/SET07 D04新增正式integration spec,复用原Prompt实现不重复开发。当前PG6项通过:4种缺基线400、合法200/旧409、临时测试app与实际7781双HTTP同基线,单PG快照2真实Lock路径后仅一200一409/唯一审计;创建和更新各在原AuditService实际INSERT后SQL22012、HTTP500,全部指定owner配置/审计严格回滚;匿名401/reader403/其他owner404保持。Terra双页实际新200、旧409,双空格草稿保留/确认禁用,只GET读取服务器比较不重写;PG仅赢家正文/时间/1审计变化,旧409和后续GET全事实不变,null Schema保持。第一轮跨realm复制比较失败保留且独立协调,旧夹具未重放;新r2六项通过,原43业务断言逐项相同。4业务源SHA及R51旧配置/审计保持,9草稿逐字保持。

R52只覆盖所列DRAFT编辑基线、两客户端争用、2类审计后SQL故障及指定权限HTTP;未替代全部Prompt历史/调用来源、发布废弃引用并发、未知写跨卸载、撤权和多角色屏幕、全主题/手机/真机/读屏/真实Provider。D03最新DELETE合同真实PG竞争及审计故障仍待,历史D02证据仅其冻结版本;正式3000/4000/5173未切换。

证据:_work/handoff/uiux-production-14batches-20261025/batch01-prompt-native-r52-20261027/RESULT.md。原首次失败与新r2证据分别保存;业务源码4SHA保持,新增正式6项integration spec,原43业务断言未放宽。

R46 Prompt更新必需基线

已有模板更新必须提供非空expectedUpdatedAt;权限先判定,缺失400不进事务,锁后旧基线409,创建仍可省略。原状态机/SQL CAS/审计保持。此为早期可选合同的后继收紧,旧客户端需先读取。服务17和真实Nest/pg-mem HTTP3通过,目标独立GET与审计不变;不是实PG或浏览器/运行部署证据。