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
182 changes: 162 additions & 20 deletions docs/CURRENT_STATE.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,18 +13,18 @@
"documentsAndCodeIntegrityVerified": true
},
"production": {
"evidence": "Sites v16 terminal succeeded; exact scoped read-only diagnosis validated request-limit cause, without publication of personal records",
"evidence": "Sites v17 terminal succeeded; exact release tree and read-only public HTTP verified",
"url": "https://ag-ui.ai",
"platformUrl": "https://ag-ui-ai.channely.chatgpt.site",
"projectId": "appgprj_6a5dcacfcbb4819193bac2b2104ed926",
"publishedVersion": 16,
"versionId": "appgprj_6a5dcacfcbb4819193bac2b2104ed926~appgver_f7abc864d99c8191a6482bde72aa5821",
"deploymentId": "appgdep_6ace3312371881918fd20416f1bc40fc",
"publishedVersion": 17,
"versionId": "appgprj_6a5dcacfcbb4819193bac2b2104ed926~appgver_e9520e6fde348191a354c9847bc078b5",
"deploymentId": "appgdep_6ace369800908191869b5b0e3df5297d",
"deploymentStatus": "succeeded",
"deploymentCompletedAt": "2026-10-13T13:33:22.540158+00:00",
"sourceCommit": "dd7ca226a4fa106a5a6005be28674fc8b5cdcb95",
"sourceTree": "ea724ec5720479c84155222216926aca226c9bd4",
"githubReleaseCommit": "71ff116e033f0295a44415d13acd92bf1c0b97b6",
"deploymentCompletedAt": "2026-10-13T13:48:23.323550+00:00",
"sourceCommit": "88a840a2052d312dbd5b1a04a3f5cb7c36422744",
"sourceTree": "93352d2871a89b8c9b398bc5aaf2e8bae0c88861",
"githubReleaseCommit": "fae53ff09c26ca10985e5a48d04a76fc1511046b",
"environmentSetRevision": 12,
"hasMcp": true,
"publicAccessMetadataVerified": true,
Expand All @@ -39,25 +39,25 @@
"existingSchedulesPreserved": true,
"automationCountAtObservation": 2,
"observedOn": "2026-10-13",
"githubIterationCommit": "618f661dbaac21f43a49576bcaf480b41f131511"
"githubIterationCommit": "fae53ff09c26ca10985e5a48d04a76fc1511046b"
},
"github": {
"observedOn": "2026-10-13",
"repository": "AutoGenUI/ag-ui.ai",
"defaultBranch": "main",
"mainAtObservation": "618f661dbaac21f43a49576bcaf480b41f131511",
"evidence": "PR11 required verify passed; publication receipt follows through protected PR",
"mainAtObservation": "fae53ff09c26ca10985e5a48d04a76fc1511046b",
"evidence": "PR13 verify passed; main initial HTTP failure preserved, exact-commit attempt 2 passed; immutable tag and Sites v17 verified",
"syncBranch": null,
"pullRequest": "https://github.com/AutoGenUI/ag-ui.ai/pull/11",
"pullRequest": "https://github.com/AutoGenUI/ag-ui.ai/pull/13",
"draftAtObservation": false,
"mergedAtObservation": true,
"mergedAt": "2026-10-13T13:32:53Z",
"validatedPullRequestHead": "26f3bd6d5c73c0832be2e8b09c20a6564f5a023c",
"validatedTree": "ea724ec5720479c84155222216926aca226c9bd4",
"mergedAt": "2026-10-13T13:47:08Z",
"validatedPullRequestHead": "542ee0457738e11f344ad5528166a514f4859938",
"validatedTree": "93352d2871a89b8c9b398bc5aaf2e8bae0c88861",
"requiredCheck": "verify",
"branchProtectionPreserved": true,
"branchPolicy": "Keep only main after completed iterations; temporary PR branches allowed and cleaned after verified merge",
"documentationFollowup": "v1.0.1 authorized; actual tag and deployment evidence will be recorded after completion",
"documentationFollowup": "Receipt-only protected PR after publication; does not redeploy Sites or move v1.0.1; query current GitHub main for its final SHA",
"recoverablePreCleanupBundleVerified": true,
"protectedManagedWorktreeRetained": true
},
Expand Down Expand Up @@ -336,7 +336,7 @@
"productionConfigurationChanges": false,
"rolloutLimit": "New client requires subscriptionType; use matching client and Worker and refresh open pages after rollback",
"historical": true,
"archivedBy": "release.version 1.0.0; original candidate evidence retained without rewriting its phase"
"archivedBy": "releaseHistory.v1.0.0; original candidate evidence retained without rewriting its phase"
},
"productionV12Snapshot": {
"historical": true,
Expand Down Expand Up @@ -387,16 +387,158 @@
},
"release": {
"version": "1.0.1",
"phase": "authorized-preparing-protected-PR-and-deployment",
"phase": "completed",
"authorizedOn": "2026-10-13",
"baseMain": "b0dbe4bd2a41be7c8908425050d8d275fc86e6c7",
"notes": "docs/releases/v1.0.1.md",
"authorization": "User explicitly requested v1.0.1 tag, code push and updated deployment; this supersedes earlier release waiting gates, not new inbox acceptance",
"tagCreated": false,
"tagCreated": true,
"githubReleaseCreated": false,
"realMailSent": false,
"schemaChanged": false,
"configurationChanged": false
"configurationChanged": false,
"recordedAt": "2026-10-13T13:51:50.500997+00:00",
"github": {
"commit": "fae53ff09c26ca10985e5a48d04a76fc1511046b",
"tree": "93352d2871a89b8c9b398bc5aaf2e8bae0c88861",
"pullRequest": "https://github.com/AutoGenUI/ag-ui.ai/pull/13",
"mergedAt": "2026-10-13T13:47:08Z",
"pullRequestHead": "542ee0457738e11f344ad5528166a514f4859938",
"requiredVerify": {
"status": "passed",
"url": "https://github.com/AutoGenUI/ag-ui.ai/actions/runs/38407234999/job/115329927797"
},
"postMergeVerify": {
"status": "passed",
"url": "https://github.com/AutoGenUI/ag-ui.ai/actions/runs/38407815213/job/115333188937",
"attempt": 2,
"initialFailure": "Attempt 1: first anonymous local /mcp request returned 500 instead of 403; later MCP test passed. Exact-commit rerun passed. Initial worker log unavailable; transient local runtime is plausible, not proven."
},
"annotatedTag": "v1.0.1",
"tagObject": "986027696d707dfc023fa411c9cb6e8e66a011d7",
"peeledCommit": "fae53ff09c26ca10985e5a48d04a76fc1511046b",
"remoteTagVerified": true,
"tagUrl": "https://github.com/AutoGenUI/ag-ui.ai/tree/v1.0.1",
"previousTagUnchanged": true
},
"sites": {
"projectId": "appgprj_6a5dcacfcbb4819193bac2b2104ed926",
"versionNumber": 17,
"versionId": "appgprj_6a5dcacfcbb4819193bac2b2104ed926~appgver_e9520e6fde348191a354c9847bc078b5",
"sourceCommit": "88a840a2052d312dbd5b1a04a3f5cb7c36422744",
"sourceTree": "93352d2871a89b8c9b398bc5aaf2e8bae0c88861",
"matchesGithubReleaseTree": true,
"deploymentId": "appgdep_6ace369800908191869b5b0e3df5297d",
"status": "succeeded",
"completedAt": "2026-10-13T13:48:23.323550+00:00",
"environmentSetRevisionPreserved": 12,
"hasMcp": true,
"active": true,
"audience": "public",
"automationCount": 2
},
"validation": {
"ciTests": {
"base": 35,
"newsAndMail": 64,
"subscriptionUi": 12,
"localHttp": 8,
"total": 119
},
"ciChecks": [
"security:audit",
"content:validate",
"typescript",
"lint",
"build",
"check:bundle",
"links"
],
"localSitesBuild": "passed",
"localD1Isolated": true,
"localMailDisabled": true,
"browserEvidence": "Prior v14/v15/v16 local synthetic browser evidence reused; release changes metadata/docs only. No new production DOM or real-inbox assertion.",
"audit": {
"moderate": 8,
"high": 0,
"critical": 0
},
"lintWarnings": 2,
"bundle": {
"javascriptBytes": 919961,
"javascriptGzipBytes": 267637,
"cssBytes": 116185,
"cssGzipBytes": 23035,
"budgetsPreserved": true,
"javascriptRawMarginBytes": 39
},
"productionReadOnlyChecks": {
"observedAt": "2026-10-13T13:49:03.665784+00:00",
"checks": [
{
"path": "/zh/subscribe",
"status": 200,
"contentType": "text/html; charset=utf-8",
"bytes": 20767
},
{
"path": "/en/subscribe",
"status": 200,
"contentType": "text/html; charset=utf-8",
"bytes": 20801
},
{
"path": "/zh/feed.xml",
"status": 200,
"contentType": "application/rss+xml; charset=utf-8",
"bytes": 19996
},
{
"path": "/en/feed.xml",
"status": 200,
"contentType": "application/rss+xml; charset=utf-8",
"bytes": 19604
},
{
"path": "/feed.xml",
"status": 200,
"contentType": "application/rss+xml; charset=utf-8",
"bytes": 19604
},
{
"path": "/api/subscription/status",
"status": 200,
"contentType": "application/json",
"bytes": 114,
"publicStatus": {
"enabled": true,
"confirmedCount": 1,
"capacity": 250,
"remaining": 249,
"full": false,
"dailyLimit": 300,
"weeklyLimit": 250
}
},
{
"path": "/api/admin",
"status": 403
}
],
"scope": "Read-only HTTP. QA user agent. No signup, signed-link navigation, owner write or real mail."
},
"network": "Current configured egress HTTP passed; no new direct-network test or all-networks claim."
},
"boundaries": {
"schemaChanged": false,
"dnsChanged": false,
"productionMailGatesChanged": false,
"schedulesChanged": false,
"subscriberDataRead": false,
"newRealMailSent": false,
"newPaidActions": false
},
"documentationFollowup": "Receipt-only protected PR may lead the immutable release commit. No redeployment or tag movement for this documentation update."
},
"subscriptionPolish": {
"recordedOn": "2026-10-13",
Expand Down
8 changes: 4 additions & 4 deletions docs/PROJECT_CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@

## 当前发布:v1.0.1(2026-10-13)

用户已明确要求创建 v1.0.1 标签、提交推送及更新部署,覆盖此前等待验收后再打标签的门槛。本轮仅将此前已部署的订阅改进归入版本,更新工程版本为 1.0.1,保留全部运行逻辑、配置、限额及历史标签。标签、CI 与 Sites 的实际完成凭据记入 [v1.0.1 发布回执](releases/v1.0.1.md) 和机器状态;发布授权不等于新增真实收件验收。
已完成 [v1.0.1 标签](https://github.com/AutoGenUI/ag-ui.ai/tree/v1.0.1) 推送,固定至发布提交 `fae53ff09c26ca10985e5a48d04a76fc1511046b`,由 [PR #13](https://github.com/AutoGenUI/ag-ui.ai/pull/13) 正常合入。Sites **v17** 于 13:48:23 UTC 正式部署成功,源码 tree 与标签提交一致;env revision 12、公开权限、MCP、两项任务及邮件额度不变。119 项 CI、构建及原预算通过;main 首次本地 HTTP 失败与同提交重跑通过均保留在 [发布回执](releases/v1.0.1.md)。中英订阅页、RSS、公开状态 200,匿名管理 403。工程版本为 1.0.1,本轮不改运行逻辑、不新增真实收件或生产 DOM 验收。下文等待标签的表述均为当时的历史门槛,已由用户本次明确授权覆盖。

## 前一迭代:订阅申请限流反馈(2026-10-13)

普通订阅身份释放后的无效申请已复现为一个独立的申请限流路径:旧版超限也返回“查看邮件”,却不产生待发邮件。修复返回明确 HTTP 429 和下一固定窗口时间,并加入仅 owner、精确匹配固定目标的无发信只读诊断。邮箱的固定日申请窗口在新加坡每天 08:00 更新,用户届时须主动重试;它与每日发信额度不同。

[PR #11](https://github.com/AutoGenUI/ag-ui.ai/pull/11) 已正常合入 `618f661dbaac21f43a49576bcaf480b41f131511`,PR 与 main required verify 均成功。119 项本地测试、TypeScript、内容、审计、lint、构建、预算及本地中英浏览器通过;JS 919961/gzip267637,原预算仅余39字节。Sites **v16** 于 2026-10-13 13:33:22 UTC 部署成功,源码 `dd7ca226a4fa106a5a6005be28674fc8b5cdcb95` 的 tree `ea724ec5720479c84155222216926aca226c9bd4` 与 GitHub 验证版本一致,环境 revision12、MCP 与原公开权限保留。部署后的精确只读诊断确认申请限流是本次阻塞原因;公众中英页面和状态 HTTP200、匿名管理403。未读取私有邮箱或密钥,未发邮件、未重置任何计数,也没有替用户完成订阅。逐人诊断不写入公开文档;v1.0.1 继续等用户验收。详细证据见 [本轮记录](iterations/2026-10-13-subscription-throttle.md)。
[PR #11](https://github.com/AutoGenUI/ag-ui.ai/pull/11) 已正常合入 `618f661dbaac21f43a49576bcaf480b41f131511`,PR 与 main required verify 均成功。119 项本地测试、TypeScript、内容、审计、lint、构建、预算及本地中英浏览器通过;JS 919961/gzip267637,原预算仅余39字节。Sites **v16** 于 2026-10-13 13:33:22 UTC 部署成功,源码 `dd7ca226a4fa106a5a6005be28674fc8b5cdcb95` 的 tree `ea724ec5720479c84155222216926aca226c9bd4` 与 GitHub 验证版本一致,环境 revision12、MCP 与原公开权限保留。部署后的精确只读诊断确认申请限流是本次阻塞原因;公众中英页面和状态 HTTP200、匿名管理403。未读取私有邮箱或密钥,未发邮件、未重置任何计数,也没有替用户完成订阅。逐人诊断不写入公开文档;当时 v1.0.1 等待用户验收,现已由上述明确发布授权覆盖。详细证据见 [本轮记录](iterations/2026-10-13-subscription-throttle.md)。

## 前一迭代:普通订阅身份与统一卡片顺序(2026-10-13)

Expand All @@ -22,7 +22,7 @@

Sites 平台版本 **15** 于 12:42:27 UTC 部署成功,version ID `appgprj_6a5dcacfcbb4819193bac2b2104ed926~appgver_5439f39b4eec8191923b907739149ead`,deployment `appgdep_6ace27243ef4819182c1308c573c4305`;源码 `40a5fe54ce86e261c031321d8ed823dde94ed178`,tree `20002bc90b075a584c4ab883860684e6bd15d3f1` 与 GitHub 已验版本一致。env revision 12、public、active、MCP 和原 2 项任务保留;无 schema、DNS、邮件开关或计划修改。公开中英订阅与三个 RSS HTTP 200、匿名管理 403、人数仍 1/250,余位249。没有新生产 DOM 验收结论;本地浏览器与生产 native/HTTP 证据分开记录。

`v1.0.1` 标签须等待用户验收确认,本轮只部署供验收;不创建该标签、GitHub Release 或移动 `v1.0.0`。详细记录见 [本轮维护说明](iterations/2026-10-13-normal-subscription.md)。
该迭代当时只部署供验收,尚未创建 `v1.0.1`;现已由上述明确发布授权覆盖,历史 `v1.0.0` 仍未移动。详细记录见 [本轮维护说明](iterations/2026-10-13-normal-subscription.md)。

## 历史:订阅体验优化 v14(2026-10-13)

Expand Down Expand Up @@ -59,7 +59,7 @@ Sites 数字版本 **14** 于 11:34:36 UTC 部署成功,version ID `appgprj_6a

本次修复突出邮件落地页的最后一步主动确认、明确邮件两步说明,并保留签名页语言切换与回到原页刷新。发布前用户报告新邮箱已主动确认、公众人数为 1;此真实成功案例只归因用户报告,不扩大为本地验收的跨物理设备证据。没有读取秘密或订阅行,也没有新增真实邮件或付费调用。当前配置出口访问为 200、直连出口仍为 403,不承诺全网络或中国大陆可达。

完整 [版本回执](releases/v1.0.0.md) 与机器状态的 `release` 保存最终映射。生产 v12、73/90 项旧验证和发布候选在下文及 JSON 中保留为历史;旧段落的“本轮”“尚未部署”只描述此前 GitHub 同步/维护阶段,不能覆盖本节正式发布状态。下一轮重新核对实时状态和授权,不将本说明当作配置值。
完整 [版本回执](releases/v1.0.0.md) 与机器状态的 `releaseHistory.v1.0.0` 保存该版本映射。生产 v12、73/90 项旧验证和发布候选在下文及 JSON 中保留为历史;旧段落的“本轮”“尚未部署”只描述此前 GitHub 同步/维护阶段,不能覆盖本节正式发布状态。下一轮重新核对实时状态和授权,不将本说明当作配置值。

## 历史交接:证据时间与状态区分

Expand Down
4 changes: 2 additions & 2 deletions docs/operations/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

## 当前主线与证据

2026-10-13 用户已授权 **v1.0.1 标签、代码推送及更新部署**,此前等待验收的门槛由此覆盖。最新完成状态、源码、tag 和 Sites 映射以 [v1.0.1 回执](../releases/v1.0.1.md) 与 [CURRENT_STATE.json](../CURRENT_STATE.json) 的 `release` 为准。以下 v1.0.0 项保留为历史证据,不作为最新运行版本;当前发布不新增真实收件验收或改变邮件额度。
2026-10-13 **v1.0.1 标签已推送、正式站点已更新为 Sites v17**;发布提交 `fae53ff09c26ca10985e5a48d04a76fc1511046b`,部署 13:48:23 UTC 成功,119 项 CI 与原构建预算通过。首次本地 HTTP 失败及同提交重跑成功均保留。最新完成状态、源码、tag 和 Sites 映射见 [v1.0.1 回执](../releases/v1.0.1.md) 与 [CURRENT_STATE.json](../CURRENT_STATE.json) 的 `release`。以下 v1.0.0 项保留为历史证据,不作为最新运行版本;当前发布不新增真实收件验收或改变邮件额度。

- GitHub 主线为 [AutoGenUI/ag-ui.ai 的 main](https://github.com/AutoGenUI/ag-ui.ai)。[PR #5](https://github.com/AutoGenUI/ag-ui.ai/pull/5) 已正常合并,远端带注释 tag [v1.0.0 / 正式 Release](https://github.com/AutoGenUI/ag-ui.ai/releases/tag/v1.0.0) 指向 `71ff116e033f0295a44415d13acd92bf1c0b97b6`;[PR 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) 通过。每次迭代可使用临时 PR 分支,合并并核对内容后清理,长期仅保留 main,不改主分支保护。
- 正式 v1.0.0 已于 2026-10-13 10:15:25.780042 UTC 部署至原 Sites 项目,数字版本序号 13,deployment `appgdep_6ace04b15f408191ad18bdcbbe4be3d3` 终态 succeeded。Sites source `8512d230c7df3bece70c503af02ff2acce0dbe9d` 的 tree 与 release tree `661f59e806ce2174a33d6d87b9b44d0959400554` 一致。完整 version_id、tag 对象及验收见 [发布回执](../releases/v1.0.0.md)。GitHub 合并仍不自动代表 Sites 部署;本次两者各有独立凭据。
Expand Down Expand Up @@ -41,7 +41,7 @@

## 尚需后续验证

- 8 项 moderate 依赖问题与 v1.0.0 JS 原始体积仅 375 字节余量(919625 / 920000):未来依赖/页面修改重新审计和构建,不降门槛。旧 CI 修复的 1169 字节余量仅属于历史构建。
- 8 项 moderate 依赖问题与 v1.0.1 JS 原始体积仅 39 字节余量(919961 / 920000):未来依赖/页面修改重新审计和构建,不降门槛。旧 CI 修复的 1169 字节余量仅属于历史构建。
- 邮件匿名跟踪已按交接接受并披露;完全关闭像素与链接改写尚未验证。中国大陆可访问性不保证。
- 当前账户权限、完整 DNS 清单、DKIM selector、实际部署版本、迁移 ledger、托管 D1 备份/恢复方式、实时任务状态与 provider 剩余额度均需在授权的生产维护中刷新。
- 真实 queued cancellation 与完整退信场景未全部观察;本地测试和历史验收不能扩写为所有生产情形都已验收。
Expand Down
Loading
Loading