Skip to content

iter56 cluster-925: workflow binding query readmodel-only#926

Merged
loning merged 1 commit into
auto-refact-devfrom
refactor/iter56-cluster-925-binding-query-readmodel-only
May 23, 2026
Merged

iter56 cluster-925: workflow binding query readmodel-only#926
loning merged 1 commit into
auto-refact-devfrom
refactor/iter56-cluster-925-binding-query-readmodel-only

Conversation

@loning
Copy link
Copy Markdown
Contributor

@loning loning commented May 23, 2026

摘要

iter56 cluster-925 — Phase 9 r1 unanimous(3/3 一轮达成):

  • ProjectionWorkflowActorBindingReaderIActorRuntime / IAgentTypeVerifier 依赖
  • 删 runtime existence check + type fallback + 合成 unbound binding
  • binding query 只 map WorkflowActorBindingDocument readmodel(per CLAUDE "查询走 readmodel" 条款)
  • 不动 binding readmodel/query interface(保留)
  • 不动 domain actor / runtime path

边界

  • query 不再 side-read runtime existence/type — 完全 readmodel-based
  • 不依赖外部仓库

影响范围

2 files changed,LOC +103/-99(基本 wash)

Coverage

  • ProjectionWorkflowActorBindingReader line 81.08% / branch 59.09%

验证

  • dotnet test test/Aevatar.Workflow.Host.Api.Tests/... 373/373 PASS
  • bash tools/ci/workflow_binding_boundary_guard.sh PASS
  • bash tools/ci/query_projection_priming_guard.sh PASS
  • bash tools/ci/test_stability_guards.sh PASS
  • bash tools/ci/architecture_guards.sh PASS

Closes #925

🤖 Auto-loop / codex-refactor-loop iter56

⟦AI:AUTO-LOOP⟧

#925 Phase 9 r1 consensus(3/3 一轮:删 runtime fallback,readmodel-only):

- ProjectionWorkflowActorBindingReader 删 IActorRuntime / IAgentTypeVerifier 依赖
- 删 runtime existence check + type fallback + 合成 unbound binding
- binding query 只 map WorkflowActorBindingDocument readmodel(per "查询走 readmodel" 条款)
- 不动 binding readmodel/query interface
- 不动 domain actor / runtime path

LOC: ProjectionWorkflowActorBindingReader line 81.08%/branch 59.09%
Tests:373/373 PASS
test_stability + architecture + workflow_binding_boundary + query_projection_priming + build PASS

⟦AI:AUTO-LOOP⟧
@loning
Copy link
Copy Markdown
Contributor Author

loning commented May 23, 2026

📊 状态卡片 — reviewer 派出

维度
阶段 派出 codex(role=reviewer)
codex log review-pr926-omnibus-r1.log
工作目录 /Users/auric/aevatar
timeout 5400s(~90 min 上限)
上下文 omnibus r1 派出(binding query readmodel-only,删 IActorRuntime 依赖,373/373 PASS)
下一步自动会做 1. 三 reviewer 完成 verdict marker 2. controller 计算 consensus 3. unanimous → auto-merge / reject → fix r<N+1>
是否需要人介入 ❌ 否(自动推进)

🤖 controller status banner

⟦AI:AUTO-LOOP⟧

@loning
Copy link
Copy Markdown
Contributor Author

loning commented May 23, 2026

📊 codex 进展 review-pr926-omnibus-r1 (⏳ 进行中; 已跑 11 min)

Quality: naming is clear and the one refactor comment is explicit enough without adding noise.

Verification:
`test_stability_guards.sh` PASS  
`architecture_guards.sh` PASS  
`workflow_binding_boundary_guard.sh` PASS, with a non-fatal pre-existing `rg` missing-file message but exit 0  
`dotnet test test/Aevatar.Workflow.Host.Api.Tests/Aevatar.Workflow.Host.Api.Tests.csproj --nologo` PASS, 373/373

REVIEW_DONE:926:omnibus:approve
⟦AI:AUTO-LOOP⟧
tokens used
97,115
No blocking findings.

Architect: `ProjectionWorkflowActorBindingReader` no longer depends on `IActorRuntime` or `IAgentTypeVerifier`; runtime existence/type fallback and synthetic unbound binding paths are removed. Binding reads now come only from `WorkflowActorBindingDocument`, with missing docs returning `null`, projected `ActorKind` trusted as-is, and list/query paths no longer doing runtime filters.

Tests: the targeted Host API suite passed `373/373`. New/updated tests cover missing readmodel doc, projected kind trust, and no runtime filtering for `ListByRunIdAsync` / `QueryAsync`.

Quality: naming is clear and the one refactor comment is explicit enough without adding noise.

Verification:
`test_stability_guards.sh` PASS  
`architecture_guards.sh` PASS  
`workflow_binding_boundary_guard.sh` PASS, with a non-fatal pre-existing `rg` missing-file message but exit 0  
`dotnet test test/Aevatar.Workflow.Host.Api.Tests/Aevatar.Workflow.Host.Api.Tests.csproj --nologo` PASS, 373/373

自动更新每 10 分钟;edit-in-place 不堆评论;codex 完成后此 comment 自动删除(per Auric "完成后删掉就好了 否则太占空间")。
🤖 controller progress reporter

@codecov
Copy link
Copy Markdown

codecov Bot commented May 23, 2026

Codecov Report

❌ Patch coverage is 88.88889% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 83.36%. Comparing base (a3bca79) to head (e0bbc4b).

Files with missing lines Patch % Lines
...hestration/ProjectionWorkflowActorBindingReader.cs 88.88% 0 Missing and 1 partial ⚠️
@@                 Coverage Diff                 @@
##           auto-refact-dev     #926      +/-   ##
===================================================
+ Coverage            83.21%   83.36%   +0.14%     
===================================================
  Files                  991      991              
  Lines                63471    63434      -37     
  Branches              8211     8201      -10     
===================================================
+ Hits                 52820    52883      +63     
+ Misses                7107     6997     -110     
- Partials              3544     3554      +10     
Flag Coverage Δ
ci 83.36% <88.88%> (+0.14%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
...hestration/ProjectionWorkflowActorBindingReader.cs 87.89% <88.88%> (+51.30%) ⬆️

... and 2 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@loning loning merged commit 592b27a into auto-refact-dev May 23, 2026
12 checks passed
@loning
Copy link
Copy Markdown
Contributor Author

loning commented May 23, 2026

📊 codex 进展 bootstrap-audit-62-issues (⏳ 进行中; 已跑 2 min)

Opened:
- #927 `[refactor-design] cluster-062-voice-presence-callback-transport-fastpath`
- #928 `[refactor-design] cluster-062-script-readmodel-any-payload-public-query`
- #929 `[refactor-design] cluster-062-studio-workflow-obsolete-compat-shims`

Skipped: none.

Dedupe notes:
- No overlap with open #922 / #917 ChatRequestEvent.Telegram.
- No overlap with merged PRs #909 #913 #914 #915 #916 #918 #919 #923 #924 #926.
- No duplicate cluster found in audit-iter-56/57/58/59/60/61.
- Existing open #284 is related to obsolete workspace aliases, but not in the requested strict dedupe set and does not duplicate this server-side `AppScopedWorkflowService` wrapper cleanup scope.
tokens used
66,865
BOOTSTRAP_DONE:audit-iter-62:opened-3:skipped-0

Opened:
- #927 `[refactor-design] cluster-062-voice-presence-callback-transport-fastpath`
- #928 `[refactor-design] cluster-062-script-readmodel-any-payload-public-query`
- #929 `[refactor-design] cluster-062-studio-workflow-obsolete-compat-shims`

Skipped: none.

Dedupe notes:
- No overlap with open #922 / #917 ChatRequestEvent.Telegram.

自动更新每 10 分钟;edit-in-place 不堆评论;codex 完成后此 comment 自动删除(per Auric "完成后删掉就好了 否则太占空间")。
🤖 controller progress reporter

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant