---
url: /docs/agentbuff-stack/completion-audit-2026-10-11.md
---
# I0—I16 当前验收核对 · 2026-10-11

核对源码基线：`c910fcdf2d90b37ce2fa6ff930bc1fb1a4630dec`，北京时间；模板仍为 `0.3.0`。本页逐项保留[原计划](./development-plan)的要求和验收条件，区分已有本地证据、受控供应商契约与真实外部验收。**完整目标未完成**，本地回归不能替代真实模型、云端运行或两个真实产品。

## 当前执行范围

用户后续明确：`stack.agentbuff.dev` 是模板官网域名，先做好配置、暂不云端发布、暂不接真实产品。官网的独立静态配置与本地预览是当前范围；真实模型、云端验收及两个真实产品保留在原计划后续阶段，不作为这一步官网配置的前置条件。此前将该域名用于产品测试环境是理解错误，已撤回。

## 本轮新证据

* 当前全仓回归：108 个测试文件、1092 项通过；不是 1092 项真实服务测试。
* 本地配置诊断通过；Google / GitHub、Stripe、Crisp、Rewardful、营销 / 通知和观测模块在主预览关闭，邮件仅本地捕获。
* 产品测试发布离线预检拒绝域名、发信地址及两个 Hyperdrive ID 占位。后续曾误将官网域名用于产品测试配置，现已按用户澄清恢复产品示例域名；官网自定义域名声明在独立静态站配置。历史三个字段缺项的预检结果不作为当前配置的通过证据。
* 本机 Wrangler 只读登录检查返回 `loggedIn: false`；私有仓库可读的 Actions 秘密名称列表为空。尚不能核对真实账号、资源及该域名的管理权限；不据此认定远程资源不存在。
* 当前没有 `.env.staging.local` / `.env.production.local`。以主预览变量运行 staging 配置检查还会被 ENVIRONMENT 不一致拒绝；这只是本地诊断，不证明远程账号或资源不存在。
* 实际任务消费者只接受 `text-normalize` 版本 1；没有真实模型调用、供应商请求 ID、模型用量或输出质量 / 费用样本。
* 官网案例目录没有已登记的产品 Markdown；现有 JSON / 文本演示不是两个真实产品。

本轮命令：`bun run test -- --run`、`bun config:check`、`bun config:check --target staging`、`bun deploy:check --target staging`，及已有主预览保护入口。staging 两项非零结果是明确的未就绪证据。本轮未重新执行全部原生 Worker / 浏览器流程，未调用真实供应商、迁移远程库或部署。原生与界面历史证据见[迭代记录](./iteration-progress)；本机日志在忽略的 `.local/completion-audit-*`。

历史增量复验（澄清域名用途前）：生成器按环境重写域名，复制与二次复制、资源隔离、发布检查及交付包四个文件共 32 项测试通过。公开页、工作台与邮件分别构建到忽略的独立产物目录；三个入口文件、17 个页面规范链接、sitemap / RSS 的域名核对通过，原本地及正式配置保持。产物检查没有连接域名或上传代码，不冒充真实云端验收；记录在 `.local/staging-domain-*`。

## 源码与复验入口

下面的路径已核对存在；测试文件属于本轮全仓回归，原生脚本为复验入口，不表示本轮逐一运行。每个阶段的全部任务、接口 / 文件位置及验收原文在后面的逐项表保留。

| 证据组 | 当前源码 / 测试 / 原生入口 | 完整条件的缺口 |
| --- | --- | --- |
| C0 / I0 | `apps/api/worker.ts`；`apps/api/lib/bindings.ts`；`apps/api/local/runtime.ts`；`scripts/lib/create-site.test.ts`；`db/migrations/meta/_journal.json` | 已有本地资源与复制隔离证据；本轮全仓回归支持当前源码，云端不在本项证据范围。 |
| C1 / I1 | `db/schema/files.ts`；`apps/api/lib/files/storage.ts`；`apps/api/lib/files/storage.test.ts`；`apps/api/routers/files.ts`；`apps/api/local/validate-files.ts` | 已有本地私有文件 / 数据约束证据；真实 R2 与 Neon 仍需 I15 验收。 |
| C2 / I2 | `apps/app/components/files/workspace.tsx`；`apps/app/components/files/workspace.test.tsx`；`apps/api/lib/files/cleanup.ts`；`apps/api/lib/files/cleanup.test.ts`；`scripts/lib/create-site.ts` | 已有本地工作台、四种手机主题组合与两份生成站证据；未重新执行本轮浏览器验收。 |
| C3 / I3 | `apps/api/lib/turnstile.ts`；`apps/api/lib/turnstile.test.ts`；`apps/app/components/security/turnstile.tsx`；`apps/api/lib/tasks/policy.ts`；`apps/api/lib/files/storage.ts` | 原子限制与受控 Siteverify 已本地验；真实 Turnstile widget / 域名仍待验。 |
| C4 / I4 | `db/schema/tasks.ts`；`apps/api/lib/tasks/consumer.ts`；`apps/api/lib/tasks/lifecycle.ts`；`apps/api/lib/tasks/tasks.test.ts`；`apps/api/local/validate-tasks.ts` | 文本样例、队列 / 租约 / 死信 / 私有结果已本地验；真实供应商的不确定调用与取消仍待 I7。 |
| C5 / I5 | `apps/api/lib/credits.ts`；`apps/api/lib/tasks/charges.ts`；`apps/api/lib/tasks/charges.test.ts`；`apps/api/local/validate-task-charges.ts`；`apps/api/local/validate-paid-tasks.ts` | 本地预扣 / 结算 / 返还、并发与故障证据已有；真实收费模型仍待 I7。 |
| C6 / I6 | `apps/api/lib/payments/payments.test.ts`；`apps/api/lib/subscriptions.test.ts`；`apps/api/local/validate-payments.ts`；`apps/api/local/validate-subscriptions.ts`；`apps/api/lib/subscriptions/recovery.ts` | 本地签名、权益、乱序 / 重复、退款 / 争议与个人 / 团队边界已有证据；真实 Stripe 沙箱未验。 |
| C7 / I7 | `apps/api/lib/tasks/consumer.ts`；`packages/core/tools.ts`；`apps/api/lib/tasks/policy.ts` | 真实模型处理器尚未实现；不能用文本规范化替代本项。 |
| C8 / I8 | `apps/api/lib/organization-invitations.test.ts`；`apps/api/lib/organization-mutations.ts`；`apps/api/lib/session-management.test.ts`；`apps/api/lib/passkey-management.test.ts`；`apps/api/local/validate-organizations.ts` | 邀请、角色、所有者、会话与 Passkey 协议已有本地证据；真实发信、OAuth 和实际 Passkey 设备仍待验。 |
| C9 / I9 | `apps/api/routers/admin.ts`；`apps/api/routers/admin.test.ts`；`apps/api/lib/admin-mutations.ts`；`apps/api/lib/admin-credits.test.ts`；`apps/app/components/admin/admin-audit-panel.test.tsx`；`apps/api/local/validate-admin-operator.ts` | 本地角色 / 明确初始化 / 封禁 / 财务与审计已有证据；真实远程权限及本站保留安排待验。 |
| C10 / I10 | `apps/api/lib/api-keys/access.ts`；`apps/api/lib/api-keys/api-keys.test.ts`；`apps/api/lib/api-keys/management.ts`；`apps/api/local/validate-api-keys.ts` | 本地签发、个人作用域、撤销 / 过期 / 封禁、限额与账本已有证据；真实外部调用待验。 |
| C11 / I11 | `apps/api/lib/tool-observations.test.ts`；`apps/api/lib/server-activity.test.ts`；`apps/api/lib/team-activity.test.ts`；`apps/api/lib/marketing/marketing.test.ts`；`apps/api/lib/marketing/contact-sync.test.ts`；`apps/api/local/validate-server-activity.ts` | 本地同意、去重、确认 / 退订、同步 / 恢复与实际业务观测已有证据；真实 Resend / Stripe 与统计供应商仍待验。 |
| C12 / I12 | `apps/api/lib/task-notifications.test.ts`；`apps/api/lib/operator-notifications.test.ts`；`apps/api/local/validate-task-notifications.ts`；`apps/api/local/validate-operator-notifications.ts`；`apps/api/worker.ts` | 本地独立接收者、稳定事件、投递记录、有限恢复已有证据；真实邮件 / Discord 送达仍待验。 |
| C13 / I13 | `packages/core/locales.ts`；`apps/app/lib/locale-routing.ts`；`apps/app/lib/locales/es.ts`；`apps/email/locales.ts`；`scripts/lib/locales.test.ts`；`scripts/lib/branding.test.ts` | 本地英 / 西路径、实际字典、SEO、邮件语言与品牌已有证据；译文人工审校及真实外部显示 / 回跳待验。 |
| C14 / I14 | `scripts/validate-support.ts`；`apps/api/lib/affiliates/events.ts`；`apps/api/lib/affiliates/orders.ts`；`apps/api/lib/affiliates/scans.ts`；`apps/api/local/validate-affiliates.ts`；`apps/api/local/validate-affiliate-bindings.ts` | Crisp / Rewardful 的受控本地契约、选择与支付归因 / 退款核查已有证据；真实工作区、SDK、计佣 / 结算未验。 |
| C15 / I15 | `scripts/deploy-check.ts`；`scripts/lib/deployment-check.test.ts`；`scripts/validate-backups.ts`；`scripts/validate-file-backups.ts`；`scripts/validate-app-role.ts`；`scripts/validate-upgrades.ts` | 离线发布门禁和本地恢复 / 轮换 / 权限 / 升级证据已有；真实云端、用量、成本与完整恢复未验。 |
| C16 / I16 | `scripts/lib/create-site.test.ts`；`scripts/lib/product-package.test.ts`；`scripts/lib/dependency-inventory.test.ts`；`scripts/lib/create-site.ts`；`scripts/package-site.ts`；`scripts/dependency-inventory.ts`；`apps/website/content.config.ts` | 独立生成、再次生成、开发包、安装 / 构建、依赖报告已有证据；两个真实独立产品及正式交付条件未证明。 |

## 原计划逐项结果

编号按原计划每阶段的任务条目顺序分配，E 是完整验收原文，P 是计划指定的接口 / 位置。标注本地证据不意味着整项完成；缺少对应外部或真实产品证据的条件继续保留。

### I0：本地资源、配置与迁移规则

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I0.1 | 在当前版本的 Wrangler / Workers 模拟环境中验证 R2 读写、队列事件和定时处理入口；先做最小运行验证再确定预览启动方式，新增内部端口统一进入 `preview.config.json`。 | 已有本地资源与复制隔离证据；本轮全仓回归支持当前源码，云端不在本项证据范围。 | C0 |
| I0.2 | 统一资源绑定类型与运行时注入；`worker.ts`、`dev.ts`、`local.ts` 的环境校验与资源处理有明确分工，普通字段和 `R2Bucket` / `Queue` 等对象分别处理。 | 已有本地资源与复制隔离证据；本轮全仓回归支持当前源码，云端不在本项证据范围。 | C0 |
| I0.3 | API Worker 组合 `fetch`、`queue`、`scheduled` 入口，保留 Hono 的请求处理、权限与错误行为；事件消费者独立调用业务服务，不通过伪造登录 HTTP 请求执行任务。 | 已有本地资源与复制隔离证据；本轮全仓回归支持当前源码，云端不在本项证据范围。 | C0 |
| I0.4 | 保留本地邮件捕获；新运行模式不允许把本地邮件静默转为外部发送。本地资源默认独立持久化，重启后可恢复，生成站不共享状态目录。 | 已有本地资源与复制隔离证据；本轮全仓回归支持当前源码，云端不在本项证据范围。 | C0 |
| I0.5 | 将本项目后续迁移确定为增量历史，更新与现状冲突的贡献说明；保留已发布迁移，生成站不修改已应用迁移。迁移生成与执行区分。 | 已有本地资源与复制隔离证据；本轮全仓回归支持当前源码，云端不在本项证据范围。 | C0 |
| I0.6 | 统一模块三种运行状态：关闭、启用但缺配置、已配置但服务故障。新增模块完成后才加入公开配置契约，不提前批量放入不可运行的选项。 | 已有本地资源与复制隔离证据；本轮全仓回归支持当前源码，云端不在本项证据范围。 | C0 |
| I0.E | 两个新生成站的本地 R2 互不相见；队列发送触发消费者；定时处理可手动触发；认证与捕获邮件回归通过；关闭资源模块仍可启动；没有连接远程资源。只有本地并发模拟通过不能宣称线上并发验证完成。 | 已有本地资源与复制隔离证据；本轮全仓回归支持当前源码，云端不在本项证据范围。 | C0 |
| I0.P | 代码位置：`apps/api/{worker,dev,local}.ts`、`lib/{context,env}.ts`、`scripts/preview.py`、预览配置、相关 Wrangler 配置、数据库规范和生成器。 | 原位置及主要入口已落地；实现的最终名称以对应源码为准，草案本身不能作为接口成功证据。 | C0 |

### I1：私有文件 API 与元数据

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I1.1 | 新增文件表，建议字段为 `id`、`userId`、`objectKey`、原始名称、检测类型、字节数、状态、用途、校验摘要、过期时间及创建 / 更新时间。对象 key 唯一；用户、状态和过期时间支持必要查询索引。 | 已有本地私有文件 / 数据约束证据；真实 R2 与 Neon 仍需 I15 验收。 | C1 |
| I1.2 | 首版采用登录用户个人文件，与现有个人结果历史一致。工作台说明归属；切换组织不会改变文件所有权。团队共享文件后续另设实际权限契约，不预埋未使用的多态所有者系统。 | 已有本地私有文件 / 数据约束证据；真实 R2 与 Neon 仍需 I15 验收。 | C1 |
| I1.3 | 元数据采用 tRPC；二进制上传、预览和下载采用 Hono HTTP 路由。先做经服务端校验的受限上传与读取，优先 R2 原生绑定；暂不为了直传引入 S3 凭据和签名体系。 | 已有本地私有文件 / 数据约束证据；真实 R2 与 Neon 仍需 I15 验收。 | C1 |
| I1.4 | 首版演示允许 PNG、JPEG、UTF-8 文本和 JSON，小文件上限建议为 5 MiB，这是产品初始策略而非平台额度。各限制从完成的配置读取；文件名、后缀与客户端 MIME 都不能单独决定实际类型。 | 已有本地私有文件 / 数据约束证据；真实 R2 与 Neon 仍需 I15 验收。 | C1 |
| I1.5 | 状态包含 `uploading`、`ready`、`deleting`、`failed`；数据库与对象存储没有共同事务，明确写对象前后的失败补偿与恢复路径。 | 已有本地私有文件 / 数据约束证据；真实 R2 与 Neon 仍需 I15 验收。 | C1 |
| I1.6 | 每次读写从会话解析所有者并查新鲜数据，不接受客户端传来的 userId 或任意对象 key 作为授权。私有下载设置适当缓存策略；未知与可执行内容默认作为附件下载。 | 已有本地私有文件 / 数据约束证据；真实 R2 与 Neon 仍需 I15 验收。 | C1 |
| I1.7 | 文件操作具有大小 / 数量限制和请求频率保护；先实现必要保护，再在 I3 统一到任务侧策略。 | 已有本地私有文件 / 数据约束证据；真实 R2 与 Neon 仍需 I15 验收。 | C1 |
| I1.E | 合法文件上传后字节与摘要一致；其他用户不能列出、读取或删除；无会话、超限、伪装类型和非法文本拒绝；R2 写入失败不形成可下载记录；对象缺失呈现明确状态。 | 已有本地私有文件 / 数据约束证据；真实 R2 与 Neon 仍需 I15 验收。 | C1 |
| I1.P | 接口草案：`files.list`、`files.get`、`files.remove`；`POST /api/files`、`GET /api/files/:id/content`。最终命名在实现前固定，避免同一动作维护两套写入口。 | 原位置及主要入口已落地；实现的最终名称以对应源码为准，草案本身不能作为接口成功证据。 | C1 |

### I2：文件工作台、清理与资源复制

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I2.1 | 在 `apps/app/routes/(app)/files.tsx` 提供上传进度、文件列表、大小、状态、查看、下载、删除、过期提示和空状态。上传百分比只代表传输，不能代表后台处理百分比。 | 已有本地工作台、四种手机主题组合与两份生成站证据；未重新执行本轮浏览器验收。 | C2 |
| I2.2 | 更新工作台导航、`APP_PATHS` 和边缘路由验收；进入文件页、刷新与登录回跳都正确。 | 已有本地工作台、四种手机主题组合与两份生成站证据；未重新执行本轮浏览器验收。 | C2 |
| I2.3 | 定时清理过期对象、超时上传与失败删除；按批次处理，重复执行不重复扣减配额。为清理保留可排查记录。 | 已有本地工作台、四种手机主题组合与两份生成站证据；未重新执行本轮浏览器验收。 | C2 |
| I2.4 | 并发上传的额度检查需要数据库原子预留与释放，不能通过“先查总量再写文件”绕过上限。文件被任务引用后的保留与删除规则在 I4 扩展。 | 已有本地工作台、四种手机主题组合与两份生成站证据；未重新执行本轮浏览器验收。 | C2 |
| I2.5 | 更新生成器的 R2 名称、绑定占位与本地资源路径；不复制源项目资源 ID，生成后需要重新配置生产资源。 | 已有本地工作台、四种手机主题组合与两份生成站证据；未重新执行本轮浏览器验收。 | C2 |
| I2.6 | 交付 `文件与存储` 中文教程：类型 / 大小策略、本地预览、私有访问、清理与故障处理。 | 已有本地工作台、四种手机主题组合与两份生成站证据；未重新执行本轮浏览器验收。 | C2 |
| I2.E | 浏览器走完上传 → 查看 → 下载 → 删除；并发上传不超额；清理失败后可恢复；320 / 390 像素和浅深主题可用；生成两个站运行同一流程且资源隔离。 | 已有本地工作台、四种手机主题组合与两份生成站证据；未重新执行本轮浏览器验收。 | C2 |

### I3：执行限制与 Turnstile

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I3.1 | 定义各操作限制：上传、提交任务、查询、下载与外部 API，登录用户、访客采用各自策略。收费任务首版只接受登录用户。 | 原子限制与受控 Siteverify 已本地验；真实 Turnstile widget / 域名仍待验。 | C3 |
| I3.2 | 使用可核对的原子计数或预留策略。起步按现有 PostgreSQL 条件更新 / 唯一约束实现和测负载；有真实性能证据后再迁到专用存储，不先叠加多种限流后端。 | 原子限制与受控 Siteverify 已本地验；真实 Turnstile widget / 域名仍待验。 | C3 |
| I3.3 | Turnstile 前端交互与服务端验证一起交付，检查预期 action / hostname；缺凭据、失效 token、服务异常有明确结果。关闭时不加载脚本；登录认证已有的限制继续保留。 | 原子限制与受控 Siteverify 已本地验；真实 Turnstile widget / 域名仍待验。 | C3 |
| I3.4 | 返回稳定错误码和重试提示，客户端避免连续自动提交；跨项目配置不共享计数。 | 原子限制与受控 Siteverify 已本地验；真实 Turnstile widget / 域名仍待验。 | C3 |
| I3.E | 并发绕过按钮仍受服务端限制；批量请求逐项受约束；无效验证不能触发任务 / 扣费；验证服务故障不会静默放行已要求验证的操作；本地测试与真实验证码验收分开记录。 | 原子限制与受控 Siteverify 已本地验；真实 Turnstile widget / 域名仍待验。 | C3 |

### I4：任务生命周期与可靠投递

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I4.1 | 新增任务表和必要执行记录，保存所有者、处理器 ID / 版本、输入文件引用、参数、请求幂等键、状态、尝试次数、领取租约、结果引用、错误分类与时间。`userId + requestKey` 唯一。 | 文本样例、队列 / 租约 / 死信 / 私有结果已本地验；真实供应商的不确定调用与取消仍待 I7。 | C4 |
| I4.2 | 使用明确状态：`pending`、`queued`、`running`、`retry_wait`、`reconciling`、`succeeded`、`failed`、`canceled`。把任务阶段与进度百分比分开，首版不伪造连续百分比。 | 文本样例、队列 / 租约 / 死信 / 私有结果已本地验；真实供应商的不确定调用与取消仍待 I7。 | C4 |
| I4.3 | 创建数据库任务后发送队列；投递失败保留待发送记录，定时处理补投。处理“消息先消费、生产者还没更新投递状态”的竞争，不能把迟到的投递标记覆盖任务终态。 | 文本样例、队列 / 租约 / 死信 / 私有结果已本地验；真实供应商的不确定调用与取消仍待 I7。 | C4 |
| I4.4 | 消费者原子领取租约并使用领取版本保护写回；重复消息、旧消费者和已完成任务不能再次发布结果。重启和租约过期后按规则恢复。 | 文本样例、队列 / 租约 / 死信 / 私有结果已本地验；真实供应商的不确定调用与取消仍待 I7。 | C4 |
| I4.5 | 仅可重试错误使用有限重试；死信、超时和处理中失联均可核查。手动重试创建明确的新尝试，遵守次数与权限限制。 | 文本样例、队列 / 租约 / 死信 / 私有结果已本地验；真实供应商的不确定调用与取消仍待 I7。 | C4 |
| I4.6 | 外部服务可能已成功但响应丢失时进入 `reconciling`。支持供应商查询 / 幂等键时据此对账，无法确认时暂停自动重试；不承诺所有外部操作都能严格只执行一次。 | 任务状态与恢复边界已有；供应商请求查询 / 幂等对账未接，需 I7 真实处理器证据。 | C4 |
| I4.7 | 取消尚未执行任务立即终止；已发起的外部调用先记录取消请求，依据真实供应商能力停止或继续对账。取消不是立即退款的同义词。 | 本地任务取消和权益一致性有证据；外部请求停止 / 继续对账尚未验证。 | C4 |
| I4.8 | 文件引用有保留规则：输入被运行任务占用时拒绝删除或延后删除；输出文件只在成功完成后成为用户可下载结果。 | 文本样例、队列 / 租约 / 死信 / 私有结果已本地验；真实供应商的不确定调用与取消仍待 I7。 | C4 |
| I4.9 | 使用确定性文本文件规范化处理器验收实际输入、队列、输出文件和下载；同步 JSON 工具继续保留同步执行。 | 文本样例、队列 / 租约 / 死信 / 私有结果已本地验；真实供应商的不确定调用与取消仍待 I7。 | C4 |
| I4.E | 创建成功而消息发送失败可补投；重复与并发消费只留下一个有效结果；旧租约不能覆盖新结果；超时、重试耗尽和死信可恢复；刷新浏览器不丢任务；跨账号访问拒绝。 | 文本样例、队列 / 租约 / 死信 / 私有结果已本地验；真实供应商的不确定调用与取消仍待 I7。 | C4 |
| I4.P | 界面与接口：`tasks.submit/list/get/cancel/retry`、任务列表 / 详情，真实状态轮询、断线恢复、输入与结果文件链接。 | 原位置及主要入口已落地；实现的最终名称以对应源码为准，草案本身不能作为接口成功证据。 | C4 |

### I5：任务收费与账本事务

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I5.1 | 明确积分语义：`balance` 表示可用积分，预扣即减少可用余额；每个收费任务对应固定报价快照与预扣记录，成功后标为结算，失败按规则一次性返还。 | 本地预扣 / 结算 / 返还、并发与故障证据已有；真实收费模型仍待 I7。 | C5 |
| I5.2 | 改造现有积分方法的事务边界：任务创建、余额锁定、预扣账本与待投递状态在同一个事务完成。外部队列和模型调用在事务提交后执行。 | 本地预扣 / 结算 / 返还、并发与故障证据已有；真实收费模型仍待 I7。 | C5 |
| I5.3 | 保留现有账户与账本唯一事件约束，增加必要任务关联 / 结算记录；不另建第二套积分账户。稳定事件键关联预扣与返还。 | 本地预扣 / 结算 / 返还、并发与故障证据已有；真实收费模型仍待 I7。 | C5 |
| I5.4 | 终态更新与返还一致提交；成功 / 失败 / 取消并发时只有一个最终结算决定。重试沿用原预扣，不每次重试再扣用户。 | 本地预扣 / 结算 / 返还、并发与故障证据已有；真实收费模型仍待 I7。 | C5 |
| I5.5 | 前端先展示服务端报价与余额，用户确认后提交。请求重复返回原任务；同一幂等键携带不同参数时报冲突，不覆盖原任务。 | 本地预扣 / 结算 / 返还、并发与故障证据已有；真实收费模型仍待 I7。 | C5 |
| I5.6 | 供应商结果仍不确定时保持预扣与对账状态，运营人员有明确处理路径，不能一面退款一面继续产生有效收费结果。 | 本地预扣 / 结算 / 返还、并发与故障证据已有；真实收费模型仍待 I7。 | C5 |
| I5.E | 并发请求不会负余额；任务插入失败不扣积分；余额不足不创建可执行任务；重试不再次扣费；重复终态不重复退款；管理员尚未完成时保留可核对的只读记录与本地诊断路径。 | 本地预扣 / 结算 / 返还、并发与故障证据已有；真实收费模型仍待 I7。 | C5 |

### I6：积分包与订阅完整流程

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I6.1 | 在产品价格配置增加类型明确的积分包，包含 SKU、整数最小货币单位金额、币种、积分数量与真实 Price ID。由同一配置生成购买卡片和服务端商品映射。 | 本地签名、权益、乱序 / 重复、退款 / 争议与个人 / 团队边界已有证据；真实 Stripe 沙箱未验。 | C6 |
| I6.2 | 从服务端创建 Checkout，只信任服务端商品与会话用户；支付完成页查询购买状态，不依据 URL 成功标记发放积分。 | 本地签名、权益、乱序 / 重复、退款 / 争议与个人 / 团队边界已有证据；真实 Stripe 沙箱未验。 | C6 |
| I6.3 | 新增购买记录与支付事件去重记录；验签、校验模式 / 商品 / 金额 / 币种 / 归属后，购买终态和积分发放在同一个事务完成。延迟支付只在实际成功后发放。 | 本地签名、权益、乱序 / 重复、退款 / 争议与个人 / 团队边界已有证据；真实 Stripe 沙箱未验。 | C6 |
| I6.4 | 事件写入与业务处理可安全重试；不同事件指向同一支付对象时仍不能重复发放。退款与争议事件可关联原购买，不能按到达顺序覆盖新状态。 | 本地签名、权益、乱序 / 重复、退款 / 争议与个人 / 团队边界已有证据；真实 Stripe 沙箱未验。 | C6 |
| I6.5 | 退款积分已被使用时，不强行将当前非负余额改成负数。先进入人工核查状态并限制进一步收费使用，显示原因，待明确业务规则后处理差额；部分退款有独立数量与账目规则。 | 本地签名、权益、乱序 / 重复、退款 / 争议与个人 / 团队边界已有证据；真实 Stripe 沙箱未验。 | C6 |
| I6.6 | 保留 Better Auth 对已有订阅的状态维护，完善购买、试用结束、续费失败、取消、到期与门户回跳验收。积分包先属于个人；组织订阅不自动变成组织积分池或给个人重复发额度。 | 本地签名、权益、乱序 / 重复、退款 / 争议与个人 / 团队边界已有证据；真实 Stripe 沙箱未验。 | C6 |
| I6.7 | 锁定当前已安装 Stripe / Better Auth 插件的接口与事件职责，避免一次事件同时由两个处理器维护同一订阅或发放同一权益。 | 本地签名、权益、乱序 / 重复、退款 / 争议与个人 / 团队边界已有证据；真实 Stripe 沙箱未验。 | C6 |
| I6.E | 错误签名拒绝；重复 / 乱序 / 处理失败再投递无重复积分；延迟成功与失败正确；退款和争议可核对；个人 / 组织账单权限正确。凭据未提供时记录“沙箱待验收”，不把本地签名测试当真实支付。 | 本地签名、权益、乱序 / 重复、退款 / 争议与个人 / 团队边界已有证据；真实 Stripe 沙箱未验。 | C6 |

### I7：一个真实 AI 处理器与成本记录

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I7.1 | 先根据真实产品的输入与输出选择一个模型服务。SDK 和模型版本在接入时核对官方资料，不预先铺设多个供应商、模型路由器和全能 AI Playground。 | 真实模型处理器尚未实现；不能用文本规范化替代本项。 | C7 |
| I7.2 | 请求只在服务端发起；模型密钥、预算和供应商回调配置不进入 core 或页面。公开的处理器目录只描述产品能力与输入约束。 | 真实模型处理器尚未实现；不能用文本规范化替代本项。 | C7 |
| I7.3 | 每次执行记录供应商请求 ID、模型版本、用量和可核实成本；未知成本留空，不写成零。输入内容的保存目的、时长与结果清理有配置。 | 真实模型处理器尚未实现；不能用文本规范化替代本项。 | C7 |
| I7.4 | 对结果做格式、尺寸或结构检查，必要时使用真实输入人工验收质量；质量失败按确定规则进入失败 / 退款路径，不能只检查 HTTP 200。 | 真实模型处理器尚未实现；不能用文本规范化替代本项。 | C7 |
| I7.5 | 处理超时、限流、余额不足、拒绝生成、坏结果和供应商回调乱序；无法确认的调用沿用 `reconciling`。 | 真实模型处理器尚未实现；不能用文本规范化替代本项。 | C7 |
| I7.6 | 如果当前没有可用凭据或产品尚未选定，文件与任务能力可发布本地版本，AI 保持待接入；演示处理器不会标成真实模型。 | 源码和文档遵守此边界：只有本地演示处理器，AI 明确待接入；不是 I7 完成。 | C7 |
| I7.E | 一组固定真实输入记录输出、耗时、失败率与费用来源；完成预览和下载；密钥不出现在客户端产物或日志；不确定结果不会自动重复造成成本。 | 真实模型处理器尚未实现；不能用文本规范化替代本项。 | C7 |

### I8：账号与团队操作完整性

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I8.1 | 补齐组织邀请创建、邮件、接受 / 拒绝、取消、过期与再次邀请；处理现有 `invitation(organizationId, email)` 唯一约束对再次邀请的限制。 | 邀请、角色、所有者、会话与 Passkey 协议已有本地证据；真实发信、OAuth 和实际 Passkey 设备仍待验。 | C8 |
| I8.2 | 角色编辑、移除、退出与所有者转移分别授权；最后一名 owner 不能被移除或降级。已失去成员资格的旧会话不能继续访问组织数据。 | 邀请、角色、所有者、会话与 Passkey 协议已有本地证据；真实发信、OAuth 和实际 Passkey 设备仍待验。 | C8 |
| I8.3 | 补齐 Passkey 添加、命名、列表和撤销，以及会话列表与撤销。删除最后一种可用登录方式前，确保用户仍有可验证的恢复路径。 | 邀请、角色、所有者、会话与 Passkey 协议已有本地证据；真实发信、OAuth 和实际 Passkey 设备仍待验。 | C8 |
| I8.4 | 邀请、恢复与安全邮件复用现有发送入口，提供中文维护说明和英文用户文案；本地捕获与真实邮箱验收区分。 | 邀请、角色、所有者、会话与 Passkey 协议已有本地证据；真实发信、OAuth 和实际 Passkey 设备仍待验。 | C8 |
| I8.5 | OAuth / Passkey 在真实浏览器与第三方环境验收，不把登录按钮出现当流程成功。 | 未完成：真实 OAuth 浏览器及 Passkey 系统 / 设备验收缺失。 | C8 |
| I8.E | 过期、已使用、被取消和错误身份的邀请拒绝；角色变更立即影响接口权限；Owner 边界正确；撤销会话 / Passkey 后实际访问或登录失败；现有注册与恢复仍正常。 | 邀请、角色、所有者、会话与 Passkey 协议已有本地证据；真实发信、OAuth 和实际 Passkey 设备仍待验。 | C8 |

### I9：站点管理员与操作审计

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I9.1 | 站点角色与组织角色分开。按已安装 Better Auth 的能力确定管理员集成和数据映射；新增插件表或字段时更新 ID 映射及迁移。 | 本地角色 / 明确初始化 / 封禁 / 财务与审计已有证据；真实远程权限及本站保留安排待验。 | C9 |
| I9.2 | 首个管理员通过受控初始化步骤明确指定，不能把第一个注册用户或任意组织 owner 自动提升为站点管理员。 | 本地角色 / 明确初始化 / 封禁 / 财务与审计已有证据；真实远程权限及本站保留安排待验。 | C9 |
| I9.3 | 增加服务端管理员过程与 `/admin` 路由，提供用户搜索、封禁 / 解封、任务与支付状态、积分账本和失败原因查看；默认不展示用户原始输入。 | 本地角色 / 明确初始化 / 封禁 / 财务与审计已有证据；真实远程权限及本站保留安排待验。 | C9 |
| I9.4 | 积分调整必须有原因并通过同一账本服务执行；重试 / 对账操作复用既有任务与结算规则，管理员也不能绕过扣费或退款幂等。 | 本地角色 / 明确初始化 / 封禁 / 财务与审计已有证据；真实远程权限及本站保留安排待验。 | C9 |
| I9.5 | 新增操作审计记录，保存执行者、动作、对象、必要变更和时间；审计失败时涉及权益变更的操作不能部分完成。 | 本地角色 / 明确初始化 / 封禁 / 财务与审计已有证据；真实远程权限及本站保留安排待验。 | C9 |
| I9.6 | 封禁应影响现有会话与后续 API Key 调用，同时定义已经运行任务的处理方式。后台前端菜单隐藏只负责呈现。 | 本地角色 / 明确初始化 / 封禁 / 财务与审计已有证据；真实远程权限及本站保留安排待验。 | C9 |
| I9.E | 普通用户、团队 admin 无法调用站点管理员 API；权限撤销及时生效；封禁用户不能继续新建收费任务；积分调整和恢复操作有可核对审计；列表分页不会泄漏全量私有内容。 | 本地角色 / 明确初始化 / 封禁 / 财务与审计已有证据；真实远程权限及本站保留安排待验。 | C9 |

### I10：可选用户 API Key

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I10.1 | 接入 Better Auth API Key 插件前核对当前安装版本、包、生成 schema、ID 和客户端接口；不与站主环境密钥混用。 | 本地签发、个人作用域、撤销 / 过期 / 封禁、限额与账本已有证据；真实外部调用待验。 | C10 |
| I10.2 | 增加创建、一次性展示、名称 / 前缀列表、过期和撤销界面；不自行保存可恢复明文密钥。作用域先覆盖真正公开的文件 / 任务接口，拒绝管理、支付和身份配置操作。 | 本地签发、个人作用域、撤销 / 过期 / 封禁、限额与账本已有证据；真实外部调用待验。 | C10 |
| I10.3 | 外部 API 明确版本、鉴权、请求幂等和错误码，不把全部 tRPC 管理接口直接暴露为可用能力。Key 解析出的用户仍需执行业务限制与所有权检查。 | 本地签发、个人作用域、撤销 / 过期 / 封禁、限额与账本已有证据；真实外部调用待验。 | C10 |
| I10.4 | 基于 Key 和账户限制请求与收费使用；撤销、过期、封禁及权限变化对后续请求生效。 | 本地签发、个人作用域、撤销 / 过期 / 封禁、限额与账本已有证据；真实外部调用待验。 | C10 |
| I10.5 | 默认关闭。没有对外 API 需求的产品仍只用浏览器会话，关闭后 API Key 路由和设置页不可用。 | 本地签发、个人作用域、撤销 / 过期 / 封禁、限额与账本已有证据；真实外部调用待验。 | C10 |
| I10.E | 缺失、撤销、过期或错误作用域拒绝；普通 Key 不能调用管理员操作；调用任务的积分与会话请求一致；明文只展示一次且不进入日志。 | 本地签发、个人作用域、撤销 / 过期 / 封禁、限额与账本已有证据；真实外部调用待验。 | C10 |

### I11：转化事件、候补名单与营销订阅

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I11.1 | 定义真实发生的事件：开始、成功、下载发起、购买确认。浏览器触发下载不证明用户最终保存；页面访问不代表使用或收入。 | 本地同意、去重、确认 / 退订、同步 / 恢复与实际业务观测已有证据；真实 Resend / Stripe 与统计供应商仍待验。 | C11 |
| I11.2 | 服务端购买事件与前端确认页去重，默认不记录输入、文件内容、邮箱和完整带参 URL。统计启用与同意策略有明确配置，默认不在私有工作台加载营销脚本。 | 本地同意、去重、确认 / 退订、同步 / 恢复与实际业务观测已有证据；真实 Resend / Stripe 与统计供应商仍待验。 | C11 |
| I11.3 | 候补名单与营销订阅区分账号；新增订阅状态、确认 token、同意时间 / 来源及退订时间，确认与退订链接可过期或幂等重用。 | 本地同意、去重、确认 / 退订、同步 / 恢复与实际业务观测已有证据；真实 Resend / Stripe 与统计供应商仍待验。 | C11 |
| I11.4 | 默认采用已有 Resend 邮件能力；当前 API 契约在实现时核对，不照搬旧 Audience 字段。注册和营销同意分别记录，恢复邮件不受营销退订影响。 | 本地同意、去重、确认 / 退订、同步 / 恢复与实际业务观测已有证据；真实 Resend / Stripe 与统计供应商仍待验。 | C11 |
| I11.5 | 处理重复邮箱、确认失败、退订、提供商异常和退订状态同步；联系人同步故障不会阻塞账号或任务。 | 本地同意、去重、确认 / 退订、同步 / 恢复与实际业务观测已有证据；真实 Resend / Stripe 与统计供应商仍待验。 | C11 |
| I11.E | 重复提交不会重复创建有效订阅；未确认状态不作为订阅成功；退订实际生效；匿名候补名单不强制登录；捕获邮件可检查，真实投递状态单独验收。 | 本地同意、去重、确认 / 退订、同步 / 恢复与实际业务观测已有证据；真实 Resend / Stripe 与统计供应商仍待验。 | C11 |

### I12：任务通知与站主通知

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I12.1 | 用户通知首版提供站内任务状态与可选完成 / 失败邮件；站主通知首版提供一种明确配置的运营 Webhook，二者的接收者与内容策略分开。 | 本地独立接收者、稳定事件、投递记录、有限恢复已有证据；真实邮件 / Discord 送达仍待验。 | C12 |
| I12.2 | 从已提交的任务 / 支付结果生成通知投递记录，稳定事件键去重，有限重试与失败列表；通知失败不撤回已经成功的结果或支付权益。 | 本地独立接收者、稳定事件、投递记录、有限恢复已有证据；真实邮件 / Discord 送达仍待验。 | C12 |
| I12.3 | 通知只发送必要事件与内部详情链接，不附原始文件、提示词或外部服务密钥。目标地址来自站主服务配置，不能由普通用户传任意 Webhook URL。 | 本地独立接收者、稳定事件、投递记录、有限恢复已有证据；真实邮件 / Discord 送达仍待验。 | C12 |
| I12.4 | 优先沿用已有 Queues 与邮件入口，不创建第二套通知任务引擎。第三方不支持幂等且发送结果不确定时保留可排查状态，不承诺绝对无重复邮件。 | 本地独立接收者、稳定事件、投递记录、有限恢复已有证据；真实邮件 / Discord 送达仍待验。 | C12 |
| I12.E | 重复业务事件不创建重复通知记录；投递失败可重试和查看；没有配置时明确关闭；恶意接收地址不进入任意网络请求路径；业务成功不依赖通知成功。 | 本地独立接收者、稳定事件、投递记录、有限恢复已有证据；真实邮件 / Discord 送达仍待验。 | C12 |

### I13：多语言与品牌素材

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I13.1 | 默认继续英文单语言。以一个真实第二语言验证完整路径，维护教程仍中文；先记录译文负责人或译文来源，不生成无内容的语言目录。 | 本地英 / 西路径、实际字典、SEO、邮件语言与品牌已有证据；译文人工审校及真实外部显示 / 回跳待验。 | C13 |
| I13.2 | 建立共享语言配置与实际译文，Astro 公共页、React 工作台、邮件按各自入口消费；使用与当前框架适配的机制，不为采用 next-intl 迁移到 Next.js。 | 本地英 / 西路径、实际字典、SEO、邮件语言与品牌已有证据；译文人工审校及真实外部显示 / 回跳待验。 | C13 |
| I13.3 | 默认语言无前缀，其他语言采用固定前缀；工作台语言前缀同步处理边缘路由、登录回跳、API origin、静态资产及直接刷新。语言不改变租户和权限。 | 本地英 / 西路径、实际字典、SEO、邮件语言与品牌已有证据；译文人工审校及真实外部显示 / 回跳待验。 | C13 |
| I13.4 | canonical、hreflang、sitemap 与真实翻译内容对应，缺翻译采用明确回退或不发布策略；不发布空语言页。 | 本地英 / 西路径、实际字典、SEO、邮件语言与品牌已有证据；译文人工审校及真实外部显示 / 回跳待验。 | C13 |
| I13.5 | 品牌 Logo、favicon、OG 图片、社交链接和任务文案有清楚配置入口，保留哑光浅深主题、焦点状态和减少动画偏好。 | 本地英 / 西路径、实际字典、SEO、邮件语言与品牌已有证据；译文人工审校及真实外部显示 / 回跳待验。 | C13 |
| I13.E | 英文单语言构建和多语言构建都通过；无错域名、死链接与重复 canonical；登录 / 任务 / 邮件语言可预测；两种视口和主题验收；生成器不残留原品牌素材。 | 本地英 / 西路径、实际字典、SEO、邮件语言与品牌已有证据；译文人工审校及真实外部显示 / 回跳待验。 | C13 |

### I14：可选客服与联盟营销

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I14.1 | 客服选一个真实供应商，提供启用配置、必要 ID、按需加载与联系页回退；关闭时不加载第三方请求，任务输入不自动进入聊天上下文。 | Crisp / Rewardful 的受控本地契约、选择与支付归因 / 退款核查已有证据；真实工作区、SDK、计佣 / 结算未验。 | C14 |
| I14.2 | 联盟营销选一个真实供应商，明确推荐归因、支付元数据、过期、重复事件、退款撤销与结算核查。前端放脚本只能标记接入，完整计佣需真实流程验收。 | Crisp / Rewardful 的受控本地契约、选择与支付归因 / 退款核查已有证据；真实工作区、SDK、计佣 / 结算未验。 | C14 |
| I14.3 | 默认关闭；切换供应商发生实际需求后再确定公共接口。没有账号或测试能力时保持“外部验收待做”，不放虚假的佣金面板。 | Crisp / Rewardful 的受控本地契约、选择与支付归因 / 退款核查已有证据；真实工作区、SDK、计佣 / 结算未验。 | C14 |
| I14.E | 开关与实际网络加载一致；缺配置报告字段；推荐支付、重复事件、退款有可追踪记录；提供商异常不阻塞工具交付。 | Crisp / Rewardful 的受控本地契约、选择与支付归因 / 退款核查已有证据；真实工作区、SDK、计佣 / 结算未验。 | C14 |

### I15：生产验收、运行成本与恢复

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I15.1 | 编写可执行的资源与绑定清单：Workers、Hyperdrive、R2、队列、定时入口、Neon、邮箱、Stripe、模型；资源创建与代码部署的职责保持清楚。 | 产品离线清单已实现；产品测试域名、发信地址与 Hyperdrive 编号为占位，真实配置待后续。stack.agentbuff.dev 已归属独立官网，不能代替产品入口。 | C15 |
| I15.2 | 先做独立测试环境，核对域名、Cookie、CORS、私有文件、邮件链接和支付模式。使用真实服务验证队列并发、失败恢复及资源限制，本地模拟不能替代。 | 未选产品测试域名、未实际发布或执行云端验收；用户当前明确暂不发布。官网域名已配置，不计作本项产品测试域名。 | C15 |
| I15.3 | 按选定计划核算存储、请求、数据库、队列和模型费用；记录日期、来源及实际用量，免费额度不作为成本永远为零的保证。 | 未完成：没有本产品真实用量、负载和供应商成本记录。 | C15 |
| I15.4 | 做数据库备份与恢复、对象保留 / 删除验证、任务中断恢复与支付对账。升级采用兼容数据变更，版本回退不依赖删除用户数据或重写已应用迁移。 | 本地数据库 / 对象恢复、保留清理、任务恢复与旧 Worker 回退有证据；真实云端恢复和支付对账待验。 | C15 |
| I15.5 | 密钥轮换与操作权限安排写入维护步骤，不在模板生成时分发真实密钥；生产账号、资源、付费行为与发布由明确环境请求执行。 | 本地密钥轮换和受限数据库角色有证据；真实环境权限 / 资源 / 外部行为待安排。 | C15 |
| I15.E | 在测试环境完成注册 → 上传 → 收费任务 → 预览 → 下载及失败返还；恢复后能核对文件、任务、账本与购买；记录负载与费用，保留具体限制。 | 离线发布门禁和本地恢复 / 轮换 / 权限 / 升级证据已有；真实云端、用量、成本与完整恢复未验。 | C15 |

### I16：第二个独立产品与模板分发

| 编号 | 原要求 | 核对结果 | 证据 |
| --- | --- | --- | --- |
| I16.1 | 依据本项目新词研究规则选择真实任务，保存社区 / 查询 / 竞品证据；需求与订阅持续性分别验证，不把模板能力演示当市场需求。 | 未完成：第一真实产品与对应需求证据尚未确认，两个模板样例不能替代市场验证。 | C16 |
| I16.2 | 第一个和第二个产品使用独立仓库、数据库、资源、域名与模板 revision。优先选择不同交付形态验证复用边界，例如同步本地任务与异步文件任务；这只是验证结构，不是具体产品推荐。 | 未完成：没有两个真实产品各自仓库、数据库、域名、资源和运行记录的完整证据。 | C16 |
| I16.3 | 记录每站复用模块、自定义代码、迁移步骤、构建与运行成本。只有出现真实两处消费者的能力再回收到共享代码，保持产品业务可直接定位。 | 未完成：没有两个真实产品的复用 / 自定义差异、运行及构建成本记录。 | C16 |
| I16.4 | 新站生成、从生成站再次生成、已有站升级各走一遍；检查密钥、缓存、官网案例和源站资源 ID 均未混入。 | 本地生成 / 再生成和 0012 已有站升级已验；两个真实产品的业务自定义合并仍缺证据。 | C16 |
| I16.5 | 完善分发包、依赖与许可证说明、配置教程、升级说明、故障排查和真实案例。模板价格、授权方案、购买流程和支持范围另行确定，不复用演示站订阅充当模板销售。 | 开发包、来源 / 依赖报告与中文教程已交付；完整许可核对、真实案例、价格 / 授权 / 支持条件仍未确定。 | C16 |
| I16.E | 两站独立运行；可指出共用与自定义代码；生成和升级证据完整；官网只展示真实上线站点；销售状态与实际交付一致。 | 独立生成、再次生成、开发包、安装 / 构建、依赖报告已有证据；两个真实独立产品及正式交付条件未证明。 | C16 |

共核对 94 条任务、17 条阶段验收及原计划指定的接口 / 文件位置。

## 跨阶段发布门槛

| 原计划门槛 | 当前判断 |
| --- | --- |
| 通用底座、职责分离、原三 Worker 与单一配置入口 | 源码及本地证据存在；不新建平行任务、身份或支付平台 |
| 每轮代码 / 配置 / 故障 / 界面 / 中文教程一并交付 | 已有分批记录；本轮纠正文档中已过时的文件与转化状态，记录仍存在的真实验收缺口 |
| 增量迁移、原授权 / 账本 / 终态与不泄漏密钥 | 现有全仓回归与主预览保护支持本地行为；原迁移保持，主预览只应用已授权 0012 / 13 条。没有扩大主库可选迁移范围 |
| 0.4 / 0.5 本地文件与任务 | 已有受控本地里程碑证据；本轮未重跑每个浏览器 / 原生场景，也没有更新发布版本 |
| 0.6 商业与模型 | 真实 Stripe 沙箱及真实模型两项均缺，不能宣布达到 |
| 0.7 账号 / 运营、0.8 增长 / 语言 | 本地证据存在；对应真实身份 / 邮件 / 通知 / 客服 / 联盟与语言审校仍待，不能据按钮或模拟响应宣布整体完成 |
| I15 发布候选 | 缺独立云端注册 → 上传 → 收费处理 → 预览 → 下载 / 返还、完整恢复、负载与实际费用证据 |
| I16 1.0 交付 | 缺两个真实独立产品、每站复用 / 自定义 / 成本、真实上线案例和正式分发条件；开发包不能代替 |
| 每轮和里程碑的命令 / 截图 / 数据 / 记录 | 原计划列出的八个常用命令均存在；本轮只声明实际执行的检查，历史截图不冒充本轮新验收 |

## 后续阶段进入条件

后续 GitHub 干净检出暴露官网内容类型尚未生成的六处检查错误。已在独立已提交源码归档 / 冻结安装中复现，并修正统一命令为先同步 Astro 类型、再检查项目图；新生成产品的独立安装 / 冻结安装 / 强制类型检查，以及错误博客字段的拒绝均通过。这个证据补齐干净环境的检查准备，不替代真实处理器或云端验收。

2026-10-11 后续完成[候选图片转 SVG 的接口核对](./image-to-svg-contract)：已读取官方公开资料及实际 OpenAPI，发现模型版本未知、表单字段不一致和不确定重试的计费边界。它是 I7 的选择证据，不是处理器实现或收费调用验收；原 I7 各项未完成判断保留。

1. 确定第一真实任务及输入 / 输出，核对真实需求与一个可用服务的官方接口；随后把模型处理器接入原任务 / 账本 / 结果链路，补固定样本、质量、失败与费用记录。
2. 当前先完成 `stack.agentbuff.dev` 模板官网的独立配置与本地验证。真实产品和云端发布按用户要求暂缓；将来明确恢复该阶段时，再选独立产品测试域名、准备 Cloudflare / Neon 与各项真实配置，并确认环境操作范围。官网不依赖这些产品资源。
3. 完成第一产品云端验收后，按原计划选第二真实任务，核对独立资源、复用差异、升级和费用；官网只登记可核实的实际上线站。

这些是原计划进入条件，目标继续保持 I0—I16，不改成“本地测试通过即可完成”。
