Merge remote-tracking branch 'origin/master' into feat/pikaoa-test-runtime
This commit is contained in:
@@ -121,6 +121,6 @@
|
||||
|
||||
解决 [UniDesk #2034](https://github.com/pikasTech/unidesk/issues/2034):确认 `908c5515a` 与 `dcff1b205` 汇合后产生的重复 `pikainc/pikaoa` override 已由 `3bded7e0` / PR #2020 精确删除;通过 PR #2038 保护并吸收固定 `/root/unidesk` 的 4 个并行提交,再按 P0 执行 `stash -u`、`pull --ff-only` 与 `stash apply`,不新增 parser/validator、warning normalization、credential authority、fallback、锁或租约;最后以 #2537 continuation task 做最短 Artificer canary,完成任务后将详细报告写入[任务报告](./details/artificer-runtime-capabilities/R9_Task_Report.md)。
|
||||
|
||||
## R10 [in_progress]
|
||||
## R10 [completed]
|
||||
|
||||
解决 [UniDesk #2044](https://github.com/pikasTech/unidesk/issues/2044):定位首次引入 `/responses/compact` 响应消息缺少 `role` 的提交或镜像版本,并精确反向移除该回归以恢复既有 compact 合同;保持 Artificer、Codex app-server、Sub2API 与原 session 单一路径,不增加 retry、fallback、role 猜测、第二 authority 或新 session 绕行;经 YAML-first 自动交付后复用 HWLAB #2541 原 session continuation 验证,属于 Artificer 自身运行链故障,必须由原生子代理执行,完成任务后将详细报告写入[任务报告](./details/artificer-runtime-capabilities/R10_Task_Report.md)。
|
||||
|
||||
@@ -0,0 +1,99 @@
|
||||
# R10 任务报告
|
||||
|
||||
## 结果
|
||||
|
||||
- 已解决 [UniDesk #2044](https://github.com/pikasTech/unidesk/issues/2044) 跟踪的 Artificer `/responses/compact` 协议回归。
|
||||
- PK01 已恢复 Sub2API `0.1.155`。
|
||||
- HWLAB #2541 原 session 在同一 continuation 路径成功 compact 并继续执行。
|
||||
- 本次没有创建新 session,也没有增加以下机制:
|
||||
- retry;
|
||||
- fallback;
|
||||
- `role` 猜测;
|
||||
- 兼容层;
|
||||
- 第二 authority。
|
||||
|
||||
## 引入点
|
||||
|
||||
- 首次把故障重新引入当前 PK01 运行面的是:
|
||||
- UniDesk commit:`6829826ef7ab3ff707de9503834b161bc36b85dd`;
|
||||
- [PR #2021](https://github.com/pikasTech/unidesk/pull/2021)。
|
||||
- 该变更在 2026-07-14 10:29Z 唯一修改 owning YAML:
|
||||
- PK01 镜像从 `0.1.155` 回退到 `0.1.147`;
|
||||
- 只验证镜像、health 与 dry-run;
|
||||
- 没有给出业务回退原因;
|
||||
- 没有执行 compact 合同验收。
|
||||
|
||||
### Upstream 证据
|
||||
|
||||
- `16c0613b` 明确记录:
|
||||
- `v0.1.147` 会把 unary compact JSON 原样返回给按 Responses SSE 消费的 Codex。
|
||||
- `2cffe1cf` / `000f6dc6` 修复:
|
||||
- SSE 到 JSON 时没有保留 raw `output_item.done` 与 compact item。
|
||||
- `84bb7d07` 保留:
|
||||
- `remote_compaction_v2` 原生 Responses 链。
|
||||
- 版本包含关系:
|
||||
- `0.1.155` 包含上述修复;
|
||||
- `0.1.147` 不包含上述修复。
|
||||
|
||||
### 运行面证据
|
||||
|
||||
- 故障 trace:`8eda7eb2719f69bcdbf9cd48f438e6a0`。
|
||||
- Trace 中 AgentRun manager 与 runner span 均存在。
|
||||
- 原 run:`run_d52387b2aae64b2e8026c81aaf72869a`。
|
||||
- 该 run 从 2026-07-14 14:11Z 开始,在不同 payload 位置重复报 `missing field role`。
|
||||
- 错误位置变化证明故障不是固定位置的传输截断。
|
||||
|
||||
## 精确修复
|
||||
|
||||
- 修复 commit:[`4646760c`](https://github.com/pikasTech/unidesk/commit/4646760c208c537c0a573a57d6370e209a13d0d6)。
|
||||
- 修复 PR:[#2047](https://github.com/pikasTech/unidesk/pull/2047)。
|
||||
- merge commit:`9235a8c5c62baebb7afaf79cace3c7b3f737db96`。
|
||||
- 唯一代码差异:
|
||||
- 路径:`config/platform-infra/sub2api.yaml#targets.PK01.image.tag`;
|
||||
- 修改:`0.1.147` 恢复为 `0.1.155`;
|
||||
- 语义:精确反向移除 `6829826e`。
|
||||
|
||||
## 交付验证
|
||||
|
||||
- 受控 apply job:`platform_infra_sub2api_apply_pk01_20260714152435687_5ae6e6`。
|
||||
- Job 结果:
|
||||
- 状态:`succeeded`;
|
||||
- exit:`0`;
|
||||
- 耗时:18 秒;
|
||||
- 公网 exposure 子任务:成功。
|
||||
- 实际镜像:`docker.1panel.live/weishaw/sub2api:0.1.155`。
|
||||
- 实际 revision:`41cec0db059ffb82d0efdcfcf07a24ab51fbfe97`。
|
||||
- `status` 与 `validate` 全部通过。
|
||||
|
||||
## 原 session 验收
|
||||
|
||||
- 复用 session:`sess_artificer_b7854f952db117b2cd630180`。
|
||||
- Continuation 资源:
|
||||
- run:`run_14c95984920146e29c49918abda0d850`;
|
||||
- command:`cmd_c5dd41287dea41148abc19f79241ca50`。
|
||||
- 该 run 完成 thread resume 与 compact 后明确报告:
|
||||
- “Compact 上下文已成功恢复”。
|
||||
- 随后已连续执行:
|
||||
- Target worktree skill 读取;
|
||||
- 现场核对;
|
||||
- 实现命令。
|
||||
- 该 run 已越过原失败点,未再出现 `missing field role`。
|
||||
|
||||
## 边界与风险
|
||||
|
||||
- 本任务没有修改:
|
||||
- AgentRun;
|
||||
- Codex app-server;
|
||||
- 账号池 runtime;
|
||||
- Kafka 投影;
|
||||
- 数据库;
|
||||
- Secret;
|
||||
- Redis;
|
||||
- Caddy;
|
||||
- 其他 target。
|
||||
- PK01 host-Docker 当前不由 PR merge 自动 rollout 覆盖:
|
||||
- 本次按唯一受控 `platform-infra sub2api apply` 入口收敛;
|
||||
- 该交付边界不影响本次 compact 修复成立。
|
||||
- HWLAB #2541 的剩余页面实现:
|
||||
- 已由恢复后的原 Artificer run 继续执行;
|
||||
- 不属于 R10 closeout 范围。
|
||||
@@ -0,0 +1,19 @@
|
||||
# R1.3.5 任务报告
|
||||
|
||||
## 结果
|
||||
|
||||
统一业务伙伴与甲方分类主数据已合并到 `pikainc/pikaoa master`。伙伴、分类和联系人使用服务端 UUIDv7;伙伴与分类通过 typed ID 关联,合同、发票及后续模块只引用伙伴 ID。空业务伙伴 PATCH 返回 typed `invalid_argument`,不会刷新 `updatedAt` 或写入 store、audit、outbox。
|
||||
|
||||
## 交付
|
||||
|
||||
- Issue: [pikasTech/unidesk#1990](https://github.com/pikasTech/unidesk/issues/1990)
|
||||
- PR: [pikainc/pikaoa#5](https://github.com/pikainc/pikaoa/pull/5)
|
||||
- 合并方式: merge,未 squash
|
||||
|
||||
## 验证
|
||||
|
||||
子代理在 NC01 完成伙伴/category PATCH 专项、一次性 PostgreSQL 全仓测试、`go vet ./...` 和 `make build`。主代理审核了 UUIDv7、平级关系、分类筛选、同事务审计/outbox 与空 PATCH 行为,未发现阻塞问题。
|
||||
|
||||
## 边界
|
||||
|
||||
未连接 PK01、未部署正式 namespace;真实专用测试集群集成验收由 R1.3.10 与 R1.5.7 接续。
|
||||
@@ -0,0 +1,19 @@
|
||||
# R1.3.6 任务报告
|
||||
|
||||
## 结果
|
||||
|
||||
统一附件元数据、对象引用和可替换文件存储端口已合并到 `pikainc/pikaoa master`。附件和引用分别使用独立 UUIDv7,引用仅保存 `attachmentId`、`objectType` 与 `objectId`;元数据通过平级 `/api/v1/attachments/{id}` 读取,下载前重新校验字节数与 SHA-256。
|
||||
|
||||
## 交付
|
||||
|
||||
- Issue: [pikasTech/unidesk#1991](https://github.com/pikasTech/unidesk/issues/1991)
|
||||
- PR: [pikainc/pikaoa#6](https://github.com/pikainc/pikaoa/pull/6)
|
||||
- 合并方式: 在吸收伙伴 head 后使用 merge,未 squash
|
||||
|
||||
## 验证
|
||||
|
||||
子代理在 NC01 完成附件、伙伴和 CLI 联合专项、一次性 PostgreSQL 全仓测试、`go vet ./...`、`make build` 与 `git diff --check`。主代理审核了平级资源、完整性、路径约束、授权入口以及事务内审计/outbox,未发现阻塞问题。
|
||||
|
||||
## 边界
|
||||
|
||||
未连接 PK01、未部署正式 namespace;对象存在性与跨模块一致性不作为首版阻塞门禁,专用测试集群集成验收由 R1.3.10 与 R1.5.7 接续。
|
||||
@@ -0,0 +1,29 @@
|
||||
# R2.2.36 任务报告
|
||||
|
||||
## 交付
|
||||
|
||||
由 Artificer task `qt_009a43bec988410398c5b205093fa546` 在独立 worktree `/root/unidesk/.worktree/sub2api-profit-summary` 完成 Sub2API 利润统计 CLI 优化,交付 [Issue #2043](https://github.com/pikasTech/unidesk/issues/2043) 与 [PR #2048](https://github.com/pikasTech/unidesk/pull/2048)。最终源码提交为 `12b13509`,PR preflight 为 `MERGEABLE/CLEAN/ready`。
|
||||
|
||||
首次 Artificer runner 因 `agentrun-v02-tool-github-repository-overrides` Secret 尚未受控同步而进入 `CreateContainerConfigError`。原生 worker 在既有 [Issue #2014](https://github.com/pikasTech/unidesk/issues/2014) / MDTODO `R5.8` 边界内完成单对象 `secret-sync`,脱敏验证 `present=true`、fingerprint 匹配、`valuesPrinted=false`;原 runner 原位恢复并继续业务 turn,没有复制 task 或手工写 Secret。
|
||||
|
||||
## CLI 优化结果
|
||||
|
||||
- 默认 Kubernetes 风格输出不再先展开全部账号,而是直接返回收入、已确认盈利池/自用成本、未知成本扣除前的利润基数、未知成本 API USD 基数、完整性和两种参数化利润公式。
|
||||
- 显式 JSON 返回同一稳定紧凑汇总,不嵌入完整账号数组,保留账号总数与语义化下钻命令。
|
||||
- `--accounts` 固定每页 8 条,使用由分类、分组、账号 ID 和名称构成的 opaque `--page-token`;实测连续两页零重叠,避免同一账号跨分组重复导致游标错误。
|
||||
- `--missing-costs` 单独返回缺失成本账号的完整名称、ID、分类、分组和 API USD 基数。
|
||||
- 不提供手工 `limit`,不依赖 dump 或外部 `jq`,账号名称继续完整显示。
|
||||
- 主代理 review 将误导性的 `confirmedProfitCny` 纠正为 `profitBeforeUnknownCostsCny`;该字段只表示扣除已知成本后的待定利润基数,完整状态下才等于最终利润。
|
||||
|
||||
## 验证
|
||||
|
||||
- PK01 7 天默认汇总:约 123 秒,stdout 1161 字节,未触发输出保护。
|
||||
- PK01 7 天 JSON:2473 字节,可直接解析,不含完整账号数组。
|
||||
- PK01 7 天账号页:5526 字节,返回 8/32 条及下一页 opaque cursor,未触发输出保护。
|
||||
- PK01 7 天缺失成本下钻:返回 12 条完整账号名称、ID 与 API USD 基数,未触发输出保护。
|
||||
- 短窗口复测确认新利润字段和人类表头语义一致;完整状态下待定利润基数与最终利润相等。
|
||||
- `git diff --check`、相关 Bun 语法检查和 PR preflight 通过。
|
||||
|
||||
## 边界
|
||||
|
||||
所有 Sub2API 查询均为原生 admin usage 只读聚合,`mutation=false`。未修改 runtime、账号、分组、优先级、配置、部署或人民币倍率算法。7 天原生聚合仍约需 2 分钟;在 60 秒短连接执行面中使用既有 submit-and-poll 方式验收。
|
||||
@@ -37,11 +37,11 @@
|
||||
#### R1.3.4 [completed]
|
||||
|
||||
实现 pgx 同事务审计、PostgreSQL outbox、Watermill handler pipeline、幂等 Worker 与 OTel/Prometheus,执行记录见 [pikasTech/unidesk#1985](https://github.com/pikasTech/unidesk/issues/1985),完成任务后将详细报告写入[任务报告](./details/pikaoa-enterprise-platform/R1.3.4_Task_Report.md)。
|
||||
#### R1.3.5 [in_progress]
|
||||
#### R1.3.5 [completed]
|
||||
|
||||
实现统一业务伙伴、甲方分类、角色、联系人、标签、归档、筛选和 CLI;持久化 REST 资源使用 UUIDv7,伙伴与分类只通过 typed ID 关联,并将业务、审计、outbox 保持同事务,执行记录见 [pikasTech/unidesk#1990](https://github.com/pikasTech/unidesk/issues/1990),完成任务后将详细报告写入[任务报告](./details/pikaoa-enterprise-platform/R1.3.5_Task_Report.md)。
|
||||
|
||||
#### R1.3.6 [in_progress]
|
||||
#### R1.3.6 [completed]
|
||||
|
||||
实现统一附件元数据、对象引用、可替换存储端口、完整性校验、授权 API 和 CLI;附件使用 UUIDv7 平级资源身份,业务对象仅通过 typed ID 关联,执行记录见 [pikasTech/unidesk#1991](https://github.com/pikasTech/unidesk/issues/1991),完成任务后将详细报告写入[任务报告](./details/pikaoa-enterprise-platform/R1.3.6_Task_Report.md)。
|
||||
|
||||
@@ -54,9 +54,12 @@
|
||||
#### R1.3.9 [in_progress]
|
||||
|
||||
复用 append-only 审计唯一真相实现 UUIDv7 平级审计资源、RBAC 查询 API、actor/resource/action/time/requestId/traceId 筛选和 audit list/get CLI,执行记录见 [pikasTech/unidesk#1994](https://github.com/pikasTech/unidesk/issues/1994),完成任务后将详细报告写入[任务报告](./details/pikaoa-enterprise-platform/R1.3.9_Task_Report.md)。
|
||||
### R1.4
|
||||
#### R1.3.10 [in_progress]
|
||||
|
||||
在 R1.3 CLI 后端验收通过后实现 HWLAB v0.3 同族 Vue 工作台、响应式页面与同路径业务流,完成任务后将详细报告写入[任务报告](./details/pikaoa-enterprise-platform/R1.4_Task_Report.md)。
|
||||
增加可由 YAML-first 专用测试集群临时 Job 调用的统一 PostgreSQL 后端验证入口,明确披露 DSN presence 和 integration passed/skipped,去掉迁移测试对最新编号的共享硬编码,执行记录见 [pikainc/pikaoa#10](https://github.com/pikainc/pikaoa/issues/10),完成任务后将详细报告写入[任务报告](./details/pikaoa-enterprise-platform/R1.3.10_Task_Report.md)。
|
||||
### R1.4 [in_progress]
|
||||
|
||||
前端与后端并行实现 HWLAB v0.3 同族 Vue 企业工作台、响应式页面、平级 UUIDv7 资源与同路径业务流;最终在 CLI 后端验收通过后,通过同一公开 HTTP API 完成 Web 等价集成验收,执行记录见 [pikainc/pikaoa#11](https://github.com/pikainc/pikaoa/issues/11),完成任务后将详细报告写入[任务报告](./details/pikaoa-enterprise-platform/R1.4_Task_Report.md)。
|
||||
|
||||
### R1.5 [in_progress]
|
||||
|
||||
|
||||
@@ -130,7 +130,7 @@
|
||||
#### R2.2.35 [completed]
|
||||
|
||||
只读计算 PK01 Sub2API 最近7天成本与利润:使用已修正的 CNY per API USD 口径,从原生 admin usage 按完整账号名称聚合标准 API 美元计费基数、人民币收入和人民币采购成本,分别给出不扣除自用成本与扣除自用成本的人民币利润;不修改 runtime,完成任务后将详细报告写入[任务报告](./details/sub2api-upstream-reliability/R2.2.35_Task_Report.md)。
|
||||
#### R2.2.36 [in_progress]
|
||||
#### R2.2.36 [completed]
|
||||
|
||||
由 Artificer 优化 Sub2API 利润统计 CLI 的单次聚合与渐进披露,减少 7 天成本利润计算中的重复查询、外部解析和手工算术;默认 Kubernetes 风格与显式 JSON 都应直接保留紧凑汇总,账号明细语义化下钻,缺失历史成本时输出参数化利润公式;不修改 runtime 或部署,关联 [GitHub issue #2043](https://github.com/pikasTech/unidesk/issues/2043),完成任务后将详细报告写入[任务报告](./details/sub2api-upstream-reliability/R2.2.36_Task_Report.md)。
|
||||
### R2.3 [completed]
|
||||
|
||||
Reference in New Issue
Block a user