From be7a3fea41783f655a1514184ea43912b7af9442 Mon Sep 17 00:00:00 2001 From: whyour Date: Sat, 29 Aug 2026 23:48:13 +0800 Subject: [PATCH] docs(ql3): record headless alpha milestone --- docs/QINGLONG_3_0_ARCHITECTURE_RFC.md | 6 ++++-- .../ADR-0511-runnable-local-alpha-quickstart.md | 6 +++--- .../ADR-0513-selectable-local-console-trial-kit.md | 3 ++- ...R-0514-stage-usable-first-automation-journey.md | 4 +++- docs/adr/README.md | 8 ++++---- docs/operations/ql3-alpha-candidate.md | 14 ++++++++++++-- 6 files changed, 28 insertions(+), 13 deletions(-) diff --git a/docs/QINGLONG_3_0_ARCHITECTURE_RFC.md b/docs/QINGLONG_3_0_ARCHITECTURE_RFC.md index 452be4eb..a53779c6 100644 --- a/docs/QINGLONG_3_0_ARCHITECTURE_RFC.md +++ b/docs/QINGLONG_3_0_ARCHITECTURE_RFC.md @@ -1,5 +1,7 @@ # QingLong 3.0 Architecture RFC +- 低配 Local headless v5 阶段交付已补齐:绑定提交 `d459c3b45c36e856f4a1cb3ce5147905977d939d` 的显式 Local headless milestone run `33258604609` 为 42 success/2 scope skip/0 fail,生成 187,535,348-byte amd64、184,766,964-byte arm64 Trial Kit 与 5,626-byte milestone,保留至 2026-09-28。三个 artifact 的 GitHub ZIP SHA-256 分别为 `4d45e3f0e90159cc683a319a53ffbffc0c3ad95343e37a6f50aa8dca571d8204`、`21b6c9379531e45ec029ef64ee5ba9d51cc04ffffb50c5e29b90b175209a8c54`、`ece393032ab97776e9fe961f8e6a36fec2c4d1b6f20b9bf765816a9e3d6659c3`;内部 Docker archive SHA-256 为 `071100133783638cdeb04807ca313a968ca254366745ff9f624de6b62a2da8cc`、`29b411e31ec31b5ffe38a62cd5248725a03b1c35e1b92c5cbb155745680ede46`。下载后三件套 checksum、两个 Trial Kit auditor 与 milestone auditor 均返回 `compatible=true`,确认 `headless`、source、run/attempt、双架构 manifest/image identity 闭合。该变体不含 listener、Console、示例 Task 或 Console 管理依赖,面向路由/NAS 的默认最小 fresh Alpha;它与 Console 是独立 archive,仍不是公开 release、2.x 生产升级、物理低配容量承诺或长期支持版本。 + - D-424/ADR-0519(已实现并交付同源双架构 Console Alpha Candidate):Local Console 新增 current-only Secret metadata list,以及要求 User credential、`secret.manage`、exact plaintext digest owner-private proof 和事务内 credential/Policy/RoleBinding fence 的 Secret create/rotate。既有 Local administration service 继续负责 AES-256-GCM 与 immutable version;HTTP/Console/audit/Task 均不返回或持久化 plaintext、ciphertext、key ID。Task 编辑器把 `ENV=secret[@version]` 解析成 pinned `SecretRef`,省略版本时立即固定当前版本,执行时仍由既有 materializer 解密。Fresh/adopted Profile 共用现有 SQLite connection/close fence;无新 package、migration、connection、cache、daemon、timer 或 watcher。默认 headless 无 API/Console surface,Cluster 不复用 Local proof/SQLite custody。18-package clean build/test `3,052 total / 3,030 pass / 22 conditional skip / 0 fail`,Local API `76/76`、Local SQLite `250/250`;package boundary、122-module Edge source import 和精确 Cluster dependency audit compatible。默认 Edge 2,760,847 bytes/332 files/59 modules,opt-in Edge/Standalone Console 4,210,024/4,210,168 bytes、482 files/111 modules,三资产 102,182 bytes,资源门均通过。提交 `f46fb44ac9534315b6965865bb3e990715bb2417` 的普通主 CI run `33250825989` 为 41 success/3 expected skip/0 fail,Kubernetes run `33250826046` 与 Security Administration Kubernetes run `33250825974` 成功;显式 Console milestone run `33252179178` 为 42 success/2 scope skip/0 fail,生成 187,988,434-byte amd64、185,220,050-byte arm64 Trial Kit 与 5,623-byte milestone,保留至 2026-09-28。下载后三件套 checksum 与双架构 Trial Kit/milestone auditor 均返回 `compatible=true`,绑定的内部 Docker archive SHA-256 分别为 `33e2c254c329dc67b1c359e3b2d76b69578feea255918531e8ad555b75561cef`、`71cdb40a555a093fe9d3b406ee863a14fb25f89620695ccccbbcb69790530bfe`。首次 artifact run `33251389615` 触发 x64 router 绝对 RSS 门;同源码 ordinary run 仅有约 1.73 MiB headroom,表现与 runner 基线波动一致。未提高预算或修改代码,第二次全新 run 通过同一门。D-424 因此成为当前可下载、可验真、可 fresh 试运行 Secret-backed 自动化的 `3.0.0-alpha.2` 阶段实物,但仍不是公开 release、2.x 生产升级、Cluster HA 交付或长期支持版本。 - D-423/ADR-0518(已实现并交付同源双架构 Console Alpha Candidate):Local Console 复用既有 immutable Trigger revision、固定 Task revision/content digest、semantic cron validation、durable schedule cursor 与原子 Run admission,新增有界 `GET /api/v3/projects/:projectId/triggers[/:triggerId]` 和强认证 `PUT /api/v3/projects/:projectId/triggers/:triggerId`。列表只返回低敏摘要,精确读取才返回完整 spec/Task digest;读取走 `task.read`,mutation 要求 User credential、`task.update`、两分钟一次性 owner-private exact-content proof、credential reconfirm,并由 request-scoped SQLite Trigger repository 在同一事务重验 Policy/RoleBinding/Task pin/credential fence、追加 immutable revision、初始化或更新 schedule 与 durable audit。Console 仅支持冻结的 `qinglong/cron@v1` expression/timezone/`skip|fire_once`,编辑、启停均追加 revision,不提供删除或通用 provider 编辑。Fresh/adopted Profile 共用现有 database close fence;不新增 package、migration、connection、daemon、watcher、每 Trigger timer 或第二 scheduler。默认 headless 不携带 API/Console 资产与 listener,Cluster 不复用 Local POSIX proof/SQLite authority。18-package clean build/test `3,044 total / 3,022 pass / 22 conditional skip / 0 fail`,完整 backend `1,653 total / 1,651 pass / 2 Linux conditional skip / 0 fail`,Local API `70/70`;package boundary、122-module Edge import 与精确 Cluster dependency audit compatible。默认 Edge 2,754,742 bytes/331 files/58 modules,opt-in Edge/Standalone Console 4,150,439/4,150,583 bytes、479 files/101 modules,三资产 84,401 bytes。提交 `b970e2aede516c350b1cdb409e0d0d3038a5deee` 的普通主 CI run `33244982727` 为 41 success/3 expected skip/0 fail,Kubernetes run `33244982694` 成功;显式 Console milestone run `33245745837` 为 42 success/2 scope skip/0 fail,生成 187,914,706-byte amd64、185,146,322-byte arm64 Trial Kit 与 5,623-byte milestone,保留至 2026-09-28。下载索引通过 checksum 与离线 auditor,返回 `compatible=true`。因此 D-423 已是可下载、可验真、可 fresh 试运行并配置 cron 自动化的 `3.0.0-alpha.2` 阶段实物,但仍不是公开 release、2.x 生产升级、Cluster HA 交付或长期支持版本。 @@ -23,9 +25,9 @@ 首次显式 artifact run `33164186855` 已让两个架构完成 exact Console quickstart,但 finalizer 因未安装根依赖而找不到 `semver`;两个大 archive 因缺少 milestone index 被如实保留为失败运行中间件。提交 `37abfa16` 为 Local、Cluster 与跨 Profile 三个 finalizer 补齐 frozen dependency install,并把该要求写入各自 workflow auditor;完整 backend 为 `1,653 total / 1,651 pass / 2 Linux conditional skip / 0 fail`,普通主 CI `33172587110` 与 Kubernetes live `33172587249` 同源成功。随后显式 Local Console milestone run `33173769047` 为 44/44 success,产出绑定 `37abfa160da7669b2628c0a70dbd52f50f7dcec1` 的 amd64 `187,712,409` bytes、arm64 `184,944,025` bytes Trial Kit 和 `5,623` bytes `qinglong/alpha-local-milestone@v2` 索引;GitHub artifact SHA-256 分别为 `baf9861b70ebaccccab45fb49714589dc2d2083da4dc122a4393052285890b2f`、`880574fcabf0214051eec424e1befd5a972dec907d386e5b06d0f8a6dcfe70dc` 与 `d3df83539969fbb77ff45c65c2f92bd9f74e30e50ebae5ba0eb688743fad89e8`,保留至 2026-09-27。重新下载的 milestone 通过 `SHA256SUMS` 和离线 auditor,返回 `compatible: true`。这使二十天研发首次形成部署者可下载、可验真、可一键 fresh 试运行并完成首自动化的阶段产品;它仍是隔离 Alpha,不是公开 release、2.x 生产升级或长期下载承诺。 -- D-419/ADR-0514(已实现,Console v5 双架构实物由 D-420 验收):二十天研发的阶段产物验收从“能下载、能启动、能打开 Console”推进到“能完成第一份真实自动化”。首 Owner bootstrap ready record 不再要求部署者手工拼接 token;短生命周期 operator 新增独立、no-replace、可幂等重放且不返回 Secret 的 `owner.credential-presentation.install-from-delivery`,在同 UID、`0700/0600`、deployment-root containment、no-symlink 和原子发布边界内生成标准 credential presentation,同时不修改 HIGH 风险的 delivery record/recovery/acknowledgement 协议。headless 与 Console 都获得后续管理所需的 presentation,但只有 opt-in Console quickstart 创建默认不自动运行、无网络/SecretRef/Trigger 的 `alpha-first-automation`;用户仍需核对 revision/content digest fence 后显式启动。原生 amd64/arm64 Console 门必须使用该真实 Owner credential 读取 Task、接受一次 fenced Run、等待 `succeeded` 并从 bounded log 看到固定工作标记。Trial Kit/verification 升为 `@v5/@v3`;默认低配 headless 不新增示例数据、listener、daemon、timer、依赖或稳态 RSS,Cluster 不复用本机 SQLite credential 路径。Console v5 已由 run `33173769047` 形成双架构 milestone;默认 headless v5 仍应单独生成,不能复用或改名 Console archive。 +- D-419/ADR-0514(已实现,Console/headless v5 双变体实物均已验收):二十天研发的阶段产物验收从“能下载、能启动、能打开 Console”推进到“能完成第一份真实自动化”。首 Owner bootstrap ready record 不再要求部署者手工拼接 token;短生命周期 operator 新增独立、no-replace、可幂等重放且不返回 Secret 的 `owner.credential-presentation.install-from-delivery`,在同 UID、`0700/0600`、deployment-root containment、no-symlink 和原子发布边界内生成标准 credential presentation,同时不修改 HIGH 风险的 delivery record/recovery/acknowledgement 协议。headless 与 Console 都获得后续管理所需的 presentation,但只有 opt-in Console quickstart 创建默认不自动运行、无网络/SecretRef/Trigger 的 `alpha-first-automation`;用户仍需核对 revision/content digest fence 后显式启动。原生 amd64/arm64 Console 门必须使用该真实 Owner credential 读取 Task、接受一次 fenced Run、等待 `succeeded` 并从 bounded log 看到固定工作标记。Trial Kit/verification 升为 `@v5/@v3`;默认低配 headless 不新增示例数据、listener、daemon、timer、依赖或稳态 RSS,Cluster 不复用本机 SQLite credential 路径。Console v5 已由 run `33173769047` 首次形成双架构 milestone;默认 headless v5 后续由 run `33258604609` 独立形成同样闭合的双架构 milestone,没有复用或改名 Console archive。 -- D-418/ADR-0513(已实现,首份真实双架构产物待授权):二十天研发形成的 headless 用户旅程与 opt-in Console 已闭合为部署者可选择的 Local Alpha 交付链。手动门新增默认 `headless` 的 `local_alpha_variant=headless|console`;一次授权 run 只生成所选变体,不把两套 Application 塞入同一 archive。默认 Docker/runtime 与路由/NAS 继续使用原 8 个内部 package、无 listener 的 headless 镜像;独立 `runtime-console` target 增加 Local API/Console,固定 12-package、6 MiB/640-file、AI-excluded 闭包。Console quickstart 仅支持 Linux Docker host,使用 host network 让容器内仍严格绑定 `127.0.0.1:5700` 的服务可由宿主访问,远程只能显式 SSH tunnel,不放宽为 `0.0.0.0` 或 public ingress。Trial Kit、verification、Local milestone 与 stage index 分别升级为 `qinglong/alpha-local-trial-kit@v4`、`qinglong/alpha-local-trial-kit-verification@v2`、`qinglong/alpha-local-milestone@v2`、`qinglong/alpha-stage-index@v2`,variant 贯穿 archive/SBOM/evidence/artifact name/deployment selection,拒绝跨变体与跨架构混用。普通双架构 CI 同时构建、Trivy 扫描、库存/SBOM 对账和实跑两种镜像;Console 必须完成 fresh Owner、loopback 首页 200、未认证 API 401 与 graceful stop。实际大 archive 仍只由维护者显式 `produce_alpha_artifacts=true` 生成;没有同 run/attempt 的双架构 milestone 时,单个 archive 仍只是工程中间物,不冒充 public release、生产 HA、签名或 LTS。 +- D-418/ADR-0513(已实现,headless/Console 双变体实物均已交付):二十天研发形成的 headless 用户旅程与 opt-in Console 已闭合为部署者可选择的 Local Alpha 交付链。手动门新增默认 `headless` 的 `local_alpha_variant=headless|console`;一次授权 run 只生成所选变体,不把两套 Application 塞入同一 archive。默认 Docker/runtime 与路由/NAS 继续使用原 8 个内部 package、无 listener 的 headless 镜像;独立 `runtime-console` target 增加 Local API/Console,固定 12-package、6 MiB/640-file、AI-excluded 闭包。Console quickstart 仅支持 Linux Docker host,使用 host network 让容器内仍严格绑定 `127.0.0.1:5700` 的服务可由宿主访问,远程只能显式 SSH tunnel,不放宽为 `0.0.0.0` 或 public ingress。Trial Kit、verification、Local milestone 与 stage index 分别升级为 `qinglong/alpha-local-trial-kit@v4`、`qinglong/alpha-local-trial-kit-verification@v2`、`qinglong/alpha-local-milestone@v2`、`qinglong/alpha-stage-index@v2`,variant 贯穿 archive/SBOM/evidence/artifact name/deployment selection,拒绝跨变体与跨架构混用。普通双架构 CI 同时构建、Trivy 扫描、库存/SBOM 对账和实跑两种镜像;Console 必须完成 fresh Owner、loopback 首页 200、未认证 API 401 与 graceful stop。实际大 archive 仍只由维护者显式 `produce_alpha_artifacts=true` 生成;没有同 run/attempt 的双架构 milestone 时,单个 archive 仍只是工程中间物,不冒充 public release、生产 HA、签名或 LTS。 - D-417/ADR-0512(已实现,部署交付由 D-418 闭合):开发约二十天后的阶段产物从“可直接启动的 headless runtime”继续推进到首个可操作 Web 产品面。既有可选 `@qinglong/local-api` 现在内置 `/`、`/console.css`、`/console.js` 三文件离线 Console,总计 43,252 bytes,无前端框架、CDN、网络字体、遥测或 Web Storage;它复用同一 Node 进程、loopback listener、SQLite authority、Bearer/Project Policy/durable audit/re-confirm 链,不新增 package、sidecar、数据库连接、timer、watcher 或 cache。部署者可以按 Project 查看 Task revision/content fence、显式确认启动,查看 durable Run、Workflow Step 数与 Event sequence,并对未终止 Run 提交显式 cancellation request;取消请求不会伪装成停止终态。Credential 只在当前页面内存,服务端固定 CSP/COOP/CORP/Permissions Policy/no-referrer/nosniff/DENY/no-store,远程设备只能由操作者建立 SSH tunnel,不开放 LAN/public listener。默认 Edge/Standalone 与 D-416 Trial Kit 继续 headless、零增量;Console 只进入 opt-in `edge-application-api|standalone-application-api`,两档 artifact 为 `3,953,346 / 3,953,490 bytes`、467 files、12 packages、90 loaded modules,低于 6 MiB/640-file 门。Local API 48/48、pruner 11/11、完整 backend `1,637 total / 1,635 pass / 2 conditional skip / 0 fail`、18-package clean build/test 退出 0;package boundary 保持 18 packages 且无 single-source/shallow package,Cluster dependency、122-module Edge import 与全部 14 档 Local artifact audit 均 compatible。桌面 1440×960 与手机 390×844 已检查 Task、Run/Event spine 和显式确认工作态。D-417 当时只形成 source/application-api 制品;其 Console image/quickstart 下载交付已由 D-418 完成,固定低性能物理 Edge 容量数据和 public release 仍是后续门。 diff --git a/docs/adr/ADR-0511-runnable-local-alpha-quickstart.md b/docs/adr/ADR-0511-runnable-local-alpha-quickstart.md index 2deffe1c..df79ed4e 100644 --- a/docs/adr/ADR-0511-runnable-local-alpha-quickstart.md +++ b/docs/adr/ADR-0511-runnable-local-alpha-quickstart.md @@ -1,6 +1,6 @@ # ADR-0511:可直接试运行的 Local Alpha Quickstart -- 状态:Accepted(首份实际 v3 Trial Kit 待维护者授权) +- 状态:Accepted(当前 v5 headless/Console 双变体 milestone 已交付) - 日期:2026-08-28 - 决策:D-416 - 关联:ADR-0193、ADR-0503、ADR-0504、ADR-0506、ADR-0508、ADR-0510 @@ -66,7 +66,7 @@ Cluster 节点继续使用 Cluster Integration Candidate 和 Kubernetes/CloudNat - bundle 从七个文件增加为八个小文件,不新增镜像 layer、workspace package、runtime dependency、端口、后台 timer 或稳态 RSS; - Edge/Standalone 继续共用同一镜像,差异只体现在 quickstart 的 memory/PID limit; - `@v2` 仍是历史 verification-evidence 阶段格式,首份面向部署者的实际下载物必须使用 `@v3`; -- 首份真实 amd64/arm64 v3 Trial Kit、Local milestone 与 stage index 仍需维护者显式授权 artifact workflow,普通 push 不生成大归档。 +- 真实 amd64/arm64 Trial Kit 仍需维护者显式授权 artifact workflow,普通 push 不生成大归档;当前严格 v5 的 Console 与 headless 已分别形成双架构 Local milestone,跨 Profile stage index 仍需独立 `all` scope run。 ## 验证 @@ -75,4 +75,4 @@ Cluster 节点继续使用 Cluster Integration Candidate 和 Kubernetes/CloudNat - Local operator workflow 静态审计要求 `create → audit → quickstart → stop → upload` 顺序; - 聚焦门为 `26/26`,完整 backend 为 `1636 total / 1634 pass / 2 conditional skip / 0 fail`,18-package clean build/test、package/dependency/Edge import、镜像/版本和 14 档 Local artifact audit 全部通过; - 历史同源 arm64 Application/operator 已物化为 184,648,192-byte v3 开发 bundle并通过 checksum、canonical audit、load 与 exact identity;Docker Desktop 在 Owner POSIX directory ownership 处按已知不等价失败关闭,未被记录为 native quickstart 成功; -- 手动 artifact job 在原生 amd64/arm64 runner 上执行将要上传的 exact quickstart;首份实际运行结果待维护者授权触发后记录。 +- 手动 artifact job 在原生 amd64/arm64 runner 上执行将要上传的 exact quickstart;Console v5 run `33252179178` 与 headless v5 run `33258604609` 均已生成双架构 milestone,下载后三件套 checksum/auditor 返回 `compatible=true`。 diff --git a/docs/adr/ADR-0513-selectable-local-console-trial-kit.md b/docs/adr/ADR-0513-selectable-local-console-trial-kit.md index aaa7d483..40c87b25 100644 --- a/docs/adr/ADR-0513-selectable-local-console-trial-kit.md +++ b/docs/adr/ADR-0513-selectable-local-console-trial-kit.md @@ -69,7 +69,7 @@ manifest、verification、SBOM、archive 名、artifact 名、milestone 和 stag - Console image 有独立 12-package、6 MiB/640-file 上限、SBOM、OS vulnerability policy 与双架构 live gate; - Local milestone 和 stage index 升级 schema,旧 v1/v3 索引不会被新 auditor 静默接受; - 该决策提供 Alpha/Linux 试运行产物,不等于 public release、生产 ingress、HA、签名或 LTS; -- 首份真实可下载双架构产物仍需维护者显式授权 workflow,普通 CI 成功只证明产物链可生成。 +- 真实可下载双架构产物仍需维护者显式授权 workflow,普通 CI 成功只证明产物链可生成;当前 Console v5 run `33252179178` 与 headless v5 run `33258604609` 已分别形成独立 Local milestone,没有跨变体复用 archive。 ## 验证 @@ -81,3 +81,4 @@ manifest、verification、SBOM、archive 名、artifact 名、milestone 和 stag - 本机实际镜像库存为 headless `10 packages / 425 files / 3,638,399 bytes`、Console `12 packages / 455 files / 3,831,208 bytes`,两者均在 128 MiB/64 PID entrypoint 门内且排除 AI; - macOS Docker Desktop 的 bind mount 不能提供与原生 Linux 等价的 POSIX Owner UID/mode 证据,Console fresh lifecycle 因此在 owner-private directory 门失败关闭;不得把该宿主限制冒充应用通过,最终双架构证据由推送后的原生 Linux CI 关闭; - GitNexus 变更审计、镜像静态门和 Docker 实物门在提交前执行。 +- 当前两个变体的下载后三件套均通过 checksum、双架构 Trial Kit auditor 与 milestone auditor;headless 明确不含 listener、Console、示例 Task 或 Console 管理 package。 diff --git a/docs/adr/ADR-0514-stage-usable-first-automation-journey.md b/docs/adr/ADR-0514-stage-usable-first-automation-journey.md index 163b3cba..7466176a 100644 --- a/docs/adr/ADR-0514-stage-usable-first-automation-journey.md +++ b/docs/adr/ADR-0514-stage-usable-first-automation-journey.md @@ -1,6 +1,6 @@ # ADR-0514:阶段可用的首个自动化旅程 -- 状态:Accepted(首份真实双架构 v5 Trial Kit 待维护者授权) +- 状态:Accepted(v5 headless/Console 双变体 milestone 已交付) - 日期:2026-08-28 - 对应 RFC 切片:D-419 @@ -64,3 +64,5 @@ Trial Kit 升级为 `qinglong/alpha-local-trial-kit@v5`(manifest schemaVersion ## 结果与剩余边界 D-419 形成“下载、验真、启动、认证、执行、观察终态”的首个阶段可用业务闭环。它仍是 fresh Alpha,不是 2.x 升级、生产 HA、公开 release、签名或 LTS。实际大 archive 继续只允许维护者显式设置 `produce_alpha_artifacts=true`;普通 push 的绿色 CI 证明源码可生成和实跑,不自动产生可下载大产物。 + +Console v5 已由 run `33252179178` 交付最新 Secret-backed 自动化闭环;默认低配 headless v5 随后由独立 run `33258604609` 形成双架构 milestone,只安装 Owner presentation,不创建示例 Task 或开放 listener。两个变体下载后三件套的 checksum 与仓库 auditor 均返回 `compatible=true`,没有把 Console archive 改名给 headless 用户。 diff --git a/docs/adr/README.md b/docs/adr/README.md index 39930b89..98714585 100644 --- a/docs/adr/README.md +++ b/docs/adr/README.md @@ -514,12 +514,12 @@ | [ADR-0508](./ADR-0508-cross-architecture-local-alpha-milestone-closure.md) | 跨架构 Local Alpha 里程碑闭合 | Accepted(首份实际 milestone artifact 待维护者授权) | | [ADR-0509](./ADR-0509-cluster-alpha-bundle-and-milestone-closure.md) | Cluster Alpha Bundle 与跨架构里程碑闭合 | Accepted(首份实际 Cluster milestone artifact 待维护者授权) | | [ADR-0510](./ADR-0510-cross-profile-alpha-stage-delivery-index.md) | 跨 Profile Alpha 阶段交付索引 | Accepted(首份实际 stage index 待维护者授权) | -| [ADR-0511](./ADR-0511-runnable-local-alpha-quickstart.md) | 可直接试运行的 Local Alpha Quickstart | Accepted(首份实际 v3 Trial Kit 待维护者授权) | +| [ADR-0511](./ADR-0511-runnable-local-alpha-quickstart.md) | 可直接试运行的 Local Alpha Quickstart | Accepted(v5 headless/Console 双变体 milestone 已交付) | | [ADR-0512](./ADR-0512-bounded-offline-local-web-console.md) | 有界、离线的 Local Web Console | Accepted(Trial Kit 交付已由 ADR-0513 闭合) | -| [ADR-0513](./ADR-0513-selectable-local-console-trial-kit.md) | 可选择的 Local Console Trial Kit | Accepted(首份实际双架构产物待维护者授权) | -| [ADR-0514](./ADR-0514-stage-usable-first-automation-journey.md) | 阶段可用的首个自动化旅程 | Accepted(Console v5 双架构实物已由 D-420 闭合) | +| [ADR-0513](./ADR-0513-selectable-local-console-trial-kit.md) | 可选择的 Local Console Trial Kit | Accepted(headless/Console 双变体 milestone 已交付) | +| [ADR-0514](./ADR-0514-stage-usable-first-automation-journey.md) | 阶段可用的首个自动化旅程 | Accepted(v5 headless/Console 双变体 milestone 已交付) | | [ADR-0515](./ADR-0515-bounded-local-console-run-log.md) | Local Console 的有界 Run 日志观察面 | Accepted(首份实际 Console v5 双架构 milestone 已交付) | -| [ADR-0516](./ADR-0516-request-scoped-local-console-task-mutation.md) | request-scoped Local Console Task mutation | Accepted(新双架构 Trial Kit 待本阶段 milestone) | +| [ADR-0516](./ADR-0516-request-scoped-local-console-task-mutation.md) | request-scoped Local Console Task mutation | Accepted(D-421 双架构 milestone 已交付) | | [ADR-0517](./ADR-0517-strong-local-console-task-authoring-lease.md) | 强认证 Local Console Task authoring lease | Accepted(D-422 双架构 milestone 已交付) | | [ADR-0518](./ADR-0518-local-console-cron-trigger-administration.md) | Local Console cron Trigger 管理 | Accepted(D-423 双架构 milestone 已交付) | | [ADR-0519](./ADR-0519-local-console-secret-backed-automation.md) | Local Console Secret-backed 自动化 | Accepted(D-424 双架构 milestone 已交付) | diff --git a/docs/operations/ql3-alpha-candidate.md b/docs/operations/ql3-alpha-candidate.md index a9b9106a..82de97c2 100644 --- a/docs/operations/ql3-alpha-candidate.md +++ b/docs/operations/ql3-alpha-candidate.md @@ -22,7 +22,7 @@ | 阶段产物 | 当前可用能力 | 仍缺少 | | --- | --- | --- | | Local Console Trial Kit v5 | 双架构实物已生成;一条 quickstart 完成 checksum、load、fresh setup、首 Owner、标准 credential presentation、loopback Console 与示例 Task;用户可显式运行并观察 bounded log | 仍是隔离 Alpha、无 public ingress/TLS/签名;Actions artifact 保留 30 天,不是长期 release 渠道 | -| Local headless Trial Kit v5 | 默认低配变体;同一源码支持 POSIX shell + Docker 一条命令完成 fresh setup、首 Owner与 Application active/stop;无 listener、示例 Task 或 Console 增量 | 尚未为当前提交单独触发 headless 双架构 milestone;不能把 Console archive 改名复用 | +| Local headless Trial Kit v5 | 默认低配变体的双架构实物已生成并验真;POSIX shell + Docker 一条命令完成 fresh setup、首 Owner与 Application active/stop;无 listener、示例 Task 或 Console 增量 | 仍是隔离 Alpha;Actions artifact 保留 30 天;无固定物理路由器容量承诺、2.x 生产升级或长期 release 渠道 | | D-419 Console 首自动化闭环 | quickstart 创建无网络/SecretRef/Trigger 的示例 Task;原生 CI 使用真实 Owner credential 完成 read、fenced start、`succeeded` 与 bounded log marker | 仍不提供 Web Task 编辑、2.x 升级或生产远程管理 | | D-420 Console Run 日志观察面 | 选择 Run 后经既有认证/Policy/Audit 链读取 latest Attempt 首个 32 KiB,展示 range、truncation、pending/retired 等明确状态 | 不自动轮询、不提供整文件下载;Web Task 创建/修订仍待独立强认证事务切片 | | D-421 Console Task 创建切片 | request-scoped credential fence、两分钟一次性本机 proof、同事务 Policy/Audit/Task mutation 已完成;Console 可创建 command Task;同源双架构 Console v5 Trial Kit 与 milestone 已生成并验真 | Web update 等待 authoring read/lease;Cluster 不复用 Local proof;仍不是生产或公开发布 | @@ -38,6 +38,16 @@ D-423 已从“源码候选”升级为阶段实物:18-package clean build/tes D-424 已从“源码候选”升级为阶段实物:本地 18-package clean build/test 为 `3,052 total / 3,030 pass / 22 conditional skip / 0 fail`,Local SQLite `250/250`、Local API `76/76`,默认 Edge 与 opt-in Console 资源门、Edge benchmark、package/source boundary 和 Cluster dependency audit 均通过。它证明 Secret metadata 不泄漏 custody 字段、create/rotate 必须 exact local presence、SQLite 只保存密文、Task 只保存 pinned `SecretRef`。提交 `f46fb44ac9534315b6965865bb3e990715bb2417` 的普通主 CI [run 33250825989](https://github.com/whyour/qinglong/actions/runs/33250825989) 为 41 success/3 expected artifact-finalizer skip/0 fail,同源 Kubernetes deployment [run 33250826046](https://github.com/whyour/qinglong/actions/runs/33250826046) 与三节点 Security Administration [run 33250825974](https://github.com/whyour/qinglong/actions/runs/33250825974) 成功;显式 Local Console milestone [run 33252179178](https://github.com/whyour/qinglong/actions/runs/33252179178) 为 42 success/2 scope skip/0 fail。首次 artifact run [33251389615](https://github.com/whyour/qinglong/actions/runs/33251389615) 触发 x64 router 绝对 RSS 门;同源码 ordinary run 的 peak process RSS 为 98,852,864 bytes,距 96 MiB 上限仅约 1.73 MiB,表现与 runner 基线波动一致。没有提高预算、改代码或复用 failed attempt,第二次全新 run 对同一 source 通过该门并闭合产物。 +默认低配 headless v5 也已从“可生成”升级为独立阶段实物。绑定提交 `d459c3b45c36e856f4a1cb3ce5147905977d939d` 的显式 Local headless milestone [run 33258604609](https://github.com/whyour/qinglong/actions/runs/33258604609) 为 42 success/2 scope skip/0 fail,完整矩阵继续覆盖双架构资源、Local/Cluster image、PostgreSQL HA、CloudNativePG、Secret/provider rotation 与 Local Profiles。该 run 没有复用 Console archive;下载后的两个 `headless` Trial Kit 与 milestone 均通过 `SHA256SUMS` 和仓库 auditor,返回 `compatible=true`。 + +当前最新可交付 Local headless v5 保留至 2026-09-28: + +- `ql3-alpha-d459c3b45c36e856f4a1cb3ce5147905977d939d-local-headless-amd64`:187,535,348 bytes,GitHub artifact SHA-256 `4d45e3f0e90159cc683a319a53ffbffc0c3ad95343e37a6f50aa8dca571d8204`,内部 Docker archive SHA-256 `071100133783638cdeb04807ca313a968ca254366745ff9f624de6b62a2da8cc`; +- `ql3-alpha-d459c3b45c36e856f4a1cb3ce5147905977d939d-local-headless-arm64`:184,766,964 bytes,GitHub artifact SHA-256 `21b6c9379531e45ec029ef64ee5ba9d51cc04ffffb50c5e29b90b175209a8c54`,内部 Docker archive SHA-256 `29b411e31ec31b5ffe38a62cd5248725a03b1c35e1b92c5cbb155745680ede46`; +- `ql3-alpha-d459c3b45c36e856f4a1cb3ce5147905977d939d-local-headless-milestone`:5,626 bytes,GitHub artifact SHA-256 `ece393032ab97776e9fe961f8e6a36fec2c4d1b6f20b9bf765816a9e3d6659c3`。 + +> headless milestone 的 `schema=qinglong/alpha-local-milestone-audit@v2`,确认 `3.0.0-alpha.2`、`headless`、amd64/arm64、run/attempt/sourceRevision 与两个下载 bundle manifest digest 全部闭合。它没有 Local API/Console listener,也不会创建 `alpha-first-automation`;需要图形操作面时必须选择下面独立的 Console artifact。 + D-418 防止把“20 天代码和测试”冒充“用户已经能下载并完整操作”:源码与普通 CI 已具备生成、审计和实跑两种 Trial Kit 的能力,但只有显式 artifact run 生成且被同 run 的双架构 milestone 收录后,才是可下载阶段产物。操作说明见 [Local Alpha Trial Kit](./ql3-local-alpha-trial-kit.md) 与 [Local Web Console](./ql3-local-web-console.md)。 当前最新可交付 Local Console v5 绑定提交 `f46fb44ac9534315b6965865bb3e990715bb2417` 与 [GitHub Actions run 33252179178](https://github.com/whyour/qinglong/actions/runs/33252179178),保留至 2026-09-28: @@ -71,7 +81,7 @@ D-418 防止把“20 天代码和测试”冒充“用户已经能下载并完 该本地 archive 不是新的 v2 Local Alpha Trial Kit。它在 ADR-0506 前生成,manifest v1 会无条件写入 `passed`,且 macOS Docker Desktop 因 bind-mount UID 映射无法对 exact 本地 archive 完成 Owner pepper 旅程;原生 CI 证明同源码实现,不自动证明另一个 archive 的 exact image bytes。它因此保留为工程候选,不冒充已获 workflow evidence 的用户 Alpha。 -ADR-0506 的 `qinglong/alpha-local-trial-kit@v2` 首次增加 source-bound verification,ADR-0511 的 `@v3` 增加 canonical quickstart,ADR-0513 的 `@v4` 再把 `headless|console` 变体绑定到 image、SBOM、verification、milestone 和 stage index,ADR-0514 的 `@v5` 增加标准 Owner credential presentation 与首自动化旅程。旧 runtime-only、v1/v2/v3/v4 bundle 均为历史工程证据,不能通过 v5 auditor。下一项 Local 外部里程碑是为同一阶段单独生成默认低配 headless v5;Cluster milestone、跨 Profile stage index 和 Public Release Set 仍分别受各自门禁约束。 +ADR-0506 的 `qinglong/alpha-local-trial-kit@v2` 首次增加 source-bound verification,ADR-0511 的 `@v3` 增加 canonical quickstart,ADR-0513 的 `@v4` 再把 `headless|console` 变体绑定到 image、SBOM、verification、milestone 和 stage index,ADR-0514 的 `@v5` 增加标准 Owner credential presentation 与首自动化旅程。旧 runtime-only、v1/v2/v3/v4 bundle 均为历史工程证据,不能通过 v5 auditor。当前 headless 与 Console v5 已分别形成双架构 milestone;下一项跨部署阶段实物仍是 Cluster milestone 和同 run 的跨 Profile stage index,Public Release Set 继续受更严格发布门禁约束。 ## 生成