Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
104 changes: 85 additions & 19 deletions docs/CURRENT_STATE.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,17 @@
"documentsAndCodeIntegrityVerified": true
},
"production": {
"evidence": "Formal v1.0.0 publication receipts, Sites metadata/source and read-only public checks on 2026-10-13; private environment values and subscriber rows were not read",
"evidence": "Sites v14 deployment/source and public read-only HTTP checks on 2026-10-13; private environment and subscriber rows not read",
"url": "https://ag-ui.ai",
"platformUrl": "https://ag-ui-ai.channely.chatgpt.site",
"projectId": "appgprj_6a5dcacfcbb4819193bac2b2104ed926",
"publishedVersion": 13,
"versionId": "appgprj_6a5dcacfcbb4819193bac2b2104ed926~appgver_e5bc604caacc819184c81bd223d5c9ee",
"deploymentId": "appgdep_6ace04b15f408191ad18bdcbbe4be3d3",
"publishedVersion": 14,
"versionId": "appgprj_6a5dcacfcbb4819193bac2b2104ed926~appgver_c60692fd0b988191b251e97a8b7b285e",
"deploymentId": "appgdep_6ace173e29688191b6636567e98e443d",
"deploymentStatus": "succeeded",
"deploymentCompletedAt": "2026-10-13T10:15:25.780042+00:00",
"sourceCommit": "8512d230c7df3bece70c503af02ff2acce0dbe9d",
"sourceTree": "661f59e806ce2174a33d6d87b9b44d0959400554",
"deploymentCompletedAt": "2026-10-13T11:34:36.106757+00:00",
"sourceCommit": "32af985205988054ac77619828f0d5ab0112eee0",
"sourceTree": "545ab7adf8b2a8f5040ba1c8f8d51f4cdcdebd2b",
"githubReleaseCommit": "71ff116e033f0295a44415d13acd92bf1c0b97b6",
"environmentSetRevision": 12,
"hasMcp": true,
Expand All @@ -38,25 +38,26 @@
},
"existingSchedulesPreserved": true,
"automationCountAtObservation": 2,
"observedOn": "2026-10-13"
"observedOn": "2026-10-13",
"githubIterationCommit": "ce64f39c158e72e06549cde97c6810c77a2ff5d8"
},
"github": {
"observedOn": "2026-10-13",
"repository": "AutoGenUI/ag-ui.ai",
"defaultBranch": "main",
"mainAtObservation": "71ff116e033f0295a44415d13acd92bf1c0b97b6",
"evidence": "Formal release publication receipts; later documentation commits are not part of the immutable release tag",
"mainAtObservation": "ce64f39c158e72e06549cde97c6810c77a2ff5d8",
"evidence": "Subscription polish PR7 and main verify succeeded; separate documentation receipt may follow without redeployment",
"syncBranch": null,
"pullRequest": "https://github.com/AutoGenUI/ag-ui.ai/pull/5",
"pullRequest": "https://github.com/AutoGenUI/ag-ui.ai/pull/7",
"draftAtObservation": false,
"mergedAtObservation": true,
"mergedAt": "2026-10-13T10:13:52Z",
"validatedPullRequestHead": "04c99295995993c93c0cb3596a55f049369601f7",
"validatedTree": "661f59e806ce2174a33d6d87b9b44d0959400554",
"mergedAt": "2026-10-13T11:32:18Z",
"validatedPullRequestHead": "96e7930fc0bcef8ba5c11517440031d01099b430",
"validatedTree": "545ab7adf8b2a8f5040ba1c8f8d51f4cdcdebd2b",
"requiredCheck": "verify",
"branchProtectionPreserved": true,
"branchPolicy": "Keep only main after completed iterations; temporary PR branches allowed and cleaned after verified merge",
"documentationFollowup": "Public receipt updates use a temporary PR branch; no new Sites deployment and no movement of v1.0.0 tag",
"documentationFollowup": "Public v14 receipt via protected temporary PR; no further Sites deployment and no movement of v1.0.0 tag",
"recoverablePreCleanupBundleVerified": true,
"protectedManagedWorktreeRetained": true
},
Expand Down Expand Up @@ -273,7 +274,7 @@
"Observe real queued cancellation and additional bounce scenarios only under authorized acceptance",
"Before authorized production maintenance, refresh account permissions, full DNS/DKIM inventory, actual Sites deployment, D1 migration ledger and backup/restore capability, schedules and provider allowance"
],
"refreshRule": "Before the next iteration read live GitHub state and docs/operations/README.md. The completed v1.0.0 release receipt is dated evidence, not live configuration. GitHub merge does not deploy Sites. Preserve immutable release tag and keep private operational data outside this repository.",
"refreshRule": "Read current GitHub and operations/README.md before maintenance. Subscription polish v14 is dated evidence; docs-only receipts may follow deployed source. GitHub merge does not deploy Sites. Preserve immutable v1.0.0 tag and keep private operational data outside repository.",
"operationsHandoff": {
"scope": "Public maintenance documentation; not production account inspection or deployment",
"index": "docs/operations/README.md",
Expand Down Expand Up @@ -520,7 +521,7 @@
},
"subscriptionPolish": {
"recordedOn": "2026-10-13",
"phase": "local-verification-complete-awaiting-required-CI-and-Sites-publication",
"phase": "published",
"baseMain": "c67f707b9e6c7f9e9b297dbde72757a1b545ecc9",
"notes": "docs/iterations/2026-10-13-subscription-polish.md",
"behavior": [
Expand Down Expand Up @@ -572,14 +573,79 @@
"Form before signup feedback; no return-to-form button"
],
"consoleErrors": 0
}
},
"links": "passed in PR and main required verify"
},
"schemaChanged": false,
"productionSecretsRead": false,
"productionSubscriberRowsRead": false,
"realMailSent": false,
"productionConfigurationChanges": false,
"newReleaseTagCreated": false,
"immutableReleaseTag": "v1.0.0"
"immutableReleaseTag": "v1.0.0",
"githubCommit": "ce64f39c158e72e06549cde97c6810c77a2ff5d8",
"githubTree": "545ab7adf8b2a8f5040ba1c8f8d51f4cdcdebd2b",
"pullRequest": "https://github.com/AutoGenUI/ag-ui.ai/pull/7",
"requiredVerify": {
"status": "passed",
"url": "https://github.com/AutoGenUI/ag-ui.ai/actions/runs/38390726523/job/115273567567"
},
"mainVerify": {
"status": "passed",
"url": "https://github.com/AutoGenUI/ag-ui.ai/actions/runs/38390910990/job/115274178851"
},
"sites": {
"version": 14,
"versionId": "appgprj_6a5dcacfcbb4819193bac2b2104ed926~appgver_c60692fd0b988191b251e97a8b7b285e",
"sourceCommit": "32af985205988054ac77619828f0d5ab0112eee0",
"treeMatchesGithub": true,
"deploymentId": "appgdep_6ace173e29688191b6636567e98e443d",
"status": "succeeded",
"completedAt": "2026-10-13T11:34:36.106757+00:00",
"environmentRevision": 12,
"hasMcp": true,
"automationCount": 2
},
"publicHttp": [
{
"path": "/zh/subscribe",
"http": 200
},
{
"path": "/en/subscribe",
"http": 200
},
{
"path": "/zh/feed.xml",
"http": 200
},
{
"path": "/en/feed.xml",
"http": 200
},
{
"path": "/feed.xml",
"http": 200
},
{
"path": "/api/subscription/status",
"http": 200,
"publicAggregate": {
"enabled": true,
"confirmedCount": 1,
"capacity": 250,
"remaining": 249,
"full": false,
"dailyLimit": 300,
"weeklyLimit": 250
}
},
{
"path": "/api/admin",
"http": 403
}
],
"productionBrowser": "Agent in-app browser rejected both custom and platform domain navigation; no production DOM acceptance claimed. Synthetic local browser acceptance passed.",
"immutableReleaseTagVerified": true
}
}
8 changes: 6 additions & 2 deletions docs/PROJECT_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,18 @@

## 最新迭代:订阅体验优化(2026-10-13)

在正式 v1.0.0 之后继续迭代,候选基线 main 为 `c67f707b9e6c7f9e9b297dbde72757a1b545ecc9`。当前候选已完成本地验证,GitHub required CI 与 Sites 发布结果随后单独记录;下节 v1.0.0 是不可变历史,不能代表本次候选已上线。
在正式 v1.0.0 之后继续迭代,候选基线 main 为 `c67f707b9e6c7f9e9b297dbde72757a1b545ecc9`。[PR #7](https://github.com/AutoGenUI/ag-ui.ai/pull/7) 已正常合入 main `ce64f39c158e72e06549cde97c6810c77a2ff5d8`,[PR verify](https://github.com/AutoGenUI/ag-ui.ai/actions/runs/38390726523/job/115273567567) 与 [main verify](https://github.com/AutoGenUI/ag-ui.ai/actions/runs/38390910990/job/115274178851) 均通过。下节 v1.0.0 是不可变历史。

原生与 Radix 下拉箭头增加右侧留白。申请订阅后保留表单,反馈和后续管理卡片位于其下方;去掉返回填写按钮,使用“查看邮件,确认订阅”。中英确认邮件与周报使用结构化 HTML 和纯文本后备,确认主按钮与管理/退订区域分开。

有效邮件确认落地页在实际可见、非预渲染且状态准备好时自动 POST 确认;普通 GET/HEAD/预取仍不修改订阅,失败保留手动重试。此前二次点击用于减少邮件扫描误确认;现在执行可见页面 JavaScript 的扫描器也可能确认,页面可见性不是人类证明。退订、取消申请与偏好修改仍需明确操作。退订后明确重新申请会轮换确认与管理链接、保留投递历史;硬退信、投诉、无效地址及提交结果不确定继续阻止发信,额度仍为每日 300、周报预算 250、confirmed 容量 250。

本地 35 基础 + 55 新闻/邮件 + 11 订阅 UI + 8 HTTP,共 109 项通过;TypeScript、内容、lint、构建与预算通过,审计 8 moderate、0 high、0 critical。隔离浏览器验证一次邮件按钮点击即可自动确认、语言切换、偏好保存、明确退订/取消、测试隔离及过期反馈;表单布局使用本地模拟 signup 响应。邮件是合成 HTML 预览,没有发送真实邮件。详细边界见 [本次迭代记录](iterations/2026-10-13-subscription-polish.md)。

Sites 数字版本 **14** 于 11:34:36 UTC 部署成功,version ID `appgprj_6a5dcacfcbb4819193bac2b2104ed926~appgver_c60692fd0b988191b251e97a8b7b285e`,部署 `appgdep_6ace173e29688191b6636567e98e443d`。源码 `32af985205988054ac77619828f0d5ab0112eee0` 的 tree `545ab7adf8b2a8f5040ba1c8f8d51f4cdcdebd2b` 与 GitHub 验证版本完全一致。环境 revision 12、public、active、MCP 和 2 项任务保留;无 schema、DNS、生产开关修改。平台数字版本不是新语义化 release;`v1.0.0` 标签仍指向原 commit。

公开 HTTP:中英订阅页、三项 RSS 和状态接口均 200,匿名管理接口 403;公开人数仍 1/250,剩余 249。代理浏览器对自定义域名和平台域名均阻止导航,未宣称生产 DOM 验收;本地隔离浏览器证据与 HTTP 部署证据分开记录。没有访问真实签名链接或发送真实邮件;当前邮箱客户端真实呈现仍未新增验收。

## 历史:v1.0.0 正式发布与接续

2026-10-13 已完成订阅体验修复并正式发布 [v1.0.0](https://github.com/AutoGenUI/ag-ui.ai/releases/tag/v1.0.0)。[PR #5](https://github.com/AutoGenUI/ag-ui.ai/pull/5) 于 10:13:52 UTC 正常 rebase 合入 main;release commit 为 `71ff116e033f0295a44415d13acd92bf1c0b97b6`,tree 为 `661f59e806ce2174a33d6d87b9b44d0959400554`。[PR required verify](https://github.com/AutoGenUI/ag-ui.ai/actions/runs/38381641758/job/115243248665) 和 [main verify](https://github.com/AutoGenUI/ag-ui.ai/actions/runs/38381929658/job/115244227252) 均通过,主分支保护保留。
Expand Down Expand Up @@ -77,7 +81,7 @@

- 网站正式 confirmed 订阅策略容量为 250。每日发送额度 300、周报预算 250 是交接时的免费档与网站策略;不是联系人上限。后续是否变化需重新核验,不自动购买或升级。
- pending、test、unsubscribed、suppressed 不占正式 confirmed 容量。确认原子取得名额;满额返回 `capacity-full`,偏好与退订继续可用;退订释放名额。
- 普通 GET/HEAD/预取不确认或退订;当前候选在可见确认落地页自动 POST,退订仍需明确按钮操作。执行可见 JavaScript 的扫描器可能确认,不能宣称完全排除机器人。保留原始 URL/纯文本后备、状态反馈、请求 epoch 和防旧请求覆盖逻辑。
- 普通 GET/HEAD/预取不确认或退订;当前版本在可见确认落地页自动 POST,退订仍需明确按钮操作。执行可见 JavaScript 的扫描器可能确认,不能宣称完全排除机器人。保留原始 URL/纯文本后备、状态反馈、请求 epoch 和防旧请求覆盖逻辑。
- 测试身份与正式订阅隔离,不能将测试收件人转为正式订阅。固定测试收件人只取服务器配置,不从工具参数指定。
- 保留 generation、最新 run 原子 claim、restart winner、过期检查、投递幂等和抑制机制;不确定提交不能自动重发。D1 字面前缀使用 `substr`,不要恢复曾触发长度限制的 LIKE prefix 实现。
- 交接记录两轮真实验收完成,合计 4 封测试邮件,用户已退订,鉴权 Delivered 回调与退订后停发通过。本轮没有重复此流程。没有真实 queued cancellation 证据;不宣称真实验证了全部退信情况。
Expand Down
10 changes: 6 additions & 4 deletions docs/iterations/2026-10-13-subscription-polish.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# 2026-10-13 订阅交互与邮件排版候选
# 2026-10-13 订阅交互与邮件排版发布

本文记录 [v1.0.0 正式发布](../releases/v1.0.0.md) 之后的本地候选迭代。新的 Sites 发布尚未发生,不预写下一平台版本序号、提交 SHA 或部署成功;`v1.0.0` tag/回执保留为历史且不移动。最新工程证据与最终发布映射由 [PROJECT_CONTEXT.md](../PROJECT_CONTEXT.md) 和 [CURRENT_STATE.json](../CURRENT_STATE.json) 记录。本页不含私有邮箱、签名链接、订阅行或秘密值。
本文记录 [v1.0.0 正式发布](../releases/v1.0.0.md) 之后的订阅迭代,Sites 平台 v14 已部署成功;`v1.0.0` tag/回执保留为历史且不移动。最新工程证据与最终发布映射由 [PROJECT_CONTEXT.md](../PROJECT_CONTEXT.md) 和 [CURRENT_STATE.json](../CURRENT_STATE.json) 记录。本页不含私有邮箱、签名链接、订阅行或秘密值。

## 交互与自动确认

Expand Down Expand Up @@ -35,12 +35,14 @@ suppressed、测试身份、历史硬失败和任意 sending/uncertain 不因公
| 隔离本地浏览器:过期确认 | 合成过期链接落地自动提交后显示“未能核验操作结果”与“重试确认”,不误报成功;公众 `0/250` 不变 |
| 隔离本地浏览器:pending 取消 | 管理 URL 的 `#unsubscribe` 仅显示尚未确认及下方取消申请;明确点击后显示已退订,公众 `0/250` 不变 |
| 本地控制台与视觉复核 | 测试确认、周报管理和过期页控制台错误均为 0;390px 确认邮件层次清晰、无横向溢出;桌面申请反馈截图中表单在反馈上方、无返回按钮 |
| 最新候选 required CI、PR 合并与 Sites 发布 | 本页未记录完成;需独立终态及源码映射 |
| required CI、PR 合并与 Sites 发布 | PR #7 与合并后 main verify 全通过;Sites v14 部署成功,源码树一致。完整 ID、SHA 与检查链接见 PROJECT_CONTEXT/CURRENT_STATE |

上述为本地候选证据,不证明真实确认邮件、周报、退信/投诉回调或 inbox 展示。本轮没有读取秘密或生产订阅行、发送新增真实邮件、变更 schema、DNS、生产邮件开关或定时任务,也没有新增付费调用。网络、提供商跟踪与真实投递的未核验范围继续保留,不凭页面 200 扩大结论。
上述本地验收证据,不证明真实确认邮件、周报、退信/投诉回调或 inbox 展示。本轮没有读取秘密或生产订阅行、发送新增真实邮件、变更 schema、DNS、生产邮件开关或定时任务,也没有新增付费调用。网络、提供商跟踪与真实投递的未核验范围继续保留,不凭页面 200 扩大结论。

## 来源与维护入口

[Brevo 双重确认官方文章 JSON](https://help.brevo.com/api/v2/help_center/en-us/articles/208771869.json) 描述邮件链接确认与可选重定向;没有要求额外网页按钮。[Brevo 邮件机器人官方文章 JSON](https://help.brevo.com/api/v2/help_center/en-us/articles/4406537065618.json) 说明安全软件会点链接并模拟用户,存在意外动作风险。它们是同 ID 官方帮助正文的机器入口,避免把 HTML 帮助页面 403 当成文章不存在;本轮公开读取两个 JSON 均 HTTP 200。

接手参见 [邮件维护](../operations/email-subscriptions.md)、[owner 管理](../operations/owner-management.md)、[部署维护](../operations/deployment-maintenance.md) 和 [采编合同](../../public/automation.md)。采编任务不得访问真实签名链接来代替读者确认、退订或发起 `mail-test`,不得重置生产订阅/投递记录。

生产只读 HTTP 的中英订阅页、三项 RSS 与状态接口通过,匿名管理 403,公开人数 1、余位 249。代理浏览器对两个生产域名阻止导航,没有生产 DOM 验收结论。Sites env revision 12、public、active、MCP 和原 2 项任务保留;来源历史 v1.0.0 标签未移动。后续公开回执是文档提交,不再次部署。
Loading