Skip to content

Polish Inspector live pulse#638

Open
eanzhao wants to merge 4 commits into
devfrom
feat/2026-05-13_inspector-live-pulse
Open

Polish Inspector live pulse#638
eanzhao wants to merge 4 commits into
devfrom
feat/2026-05-13_inspector-live-pulse

Conversation

@eanzhao
Copy link
Copy Markdown
Contributor

@eanzhao eanzhao commented May 12, 2026

Summary

  • route the Inspector hierarchy demo ping through the actor publisher so repeated demo runs still emit runtime HandleEvent telemetry
  • add actor list/canvas hover highlighting and live pulse state driven by OTel agent tags
  • add regression coverage for repeated hierarchy runs emitting message activity

Validation

  • pnpm build
  • dotnet test test/Aevatar.Demos.Inspector.Tests/Aevatar.Demos.Inspector.Tests.csproj --nologo
  • bash tools/ci/inspector_tier_boundary_guard.sh
  • bash tools/ci/test_stability_guards.sh

Notes

  • Existing warnings remain: OpenTelemetry.Api NU1902 advisory and unrelated analyzer warnings.

eanzhao added 4 commits May 12, 2026 16:45
为方便开发者调试与观测Aevatar Actor运行状态,新增完整的本地Actor Inspector演示套件,包含.NET后端服务、React前端Web界面与协议定义文件。同时为运行时核心逻辑完善OpenTelemetry追踪支持,重构CQRS投影的服务注册与物料化器包装逻辑,更新项目文档并补充测试用例,修复部分项目依赖问题。
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 739378a6f0

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +39 to +42
}

public async IAsyncEnumerable<TelemetryFrame> ReadAllAsync(
[EnumeratorCancellation] CancellationToken ct = default)
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Broadcast telemetry to all SSE subscribers

When more than one Inspector UI tab or SSE client is connected, each ReadAllAsync call consumes from the same _frames.Reader, so the channel behaves like a work queue: the first reader that drains a frame removes it and the other clients never see that activity. This makes live pulses and recent-event lists inconsistent across multiple connected inspectors; use per-subscriber readers/channels or fan out each TelemetryFrame to all active subscribers.

Useful? React with 👍 / 👎.

@codecov
Copy link
Copy Markdown

codecov Bot commented May 12, 2026

Codecov Report

❌ Patch coverage is 74.57627% with 225 lines in your changes missing coverage. Please review.
✅ Project coverage is 72.05%. Comparing base (86889d3) to head (739378a).

Files with missing lines Patch % Lines
...ector/ReadModels/InspectorReadModelQueryService.cs 51.88% 44 Missing and 7 partials ⚠️
...os/Aevatar.Demos.Inspector/InspectorApplication.cs 78.36% 32 Missing and 5 partials ⚠️
...bstractions/Observability/AevatarActivitySource.cs 83.57% 21 Missing and 13 partials ⚠️
...ector/ReadModels/InspectorGAgentRegistryService.cs 58.57% 22 Missing and 7 partials ⚠️
...evatar.Demos.Inspector/Demo/InspectorDemoAgents.cs 0.00% 14 Missing ⚠️
...re/Observability/ObservedProjectionMaterializer.cs 76.47% 10 Missing and 2 partials ⚠️
...mos.Inspector/ReadModels/InspectorReadModelDtos.cs 71.42% 10 Missing ⚠️
...ntime/Runtime/ObservedProjectionWriteDispatcher.cs 73.52% 8 Missing and 1 partial ⚠️
....Implementations.Local/Actors/LocalActorRuntime.cs 70.00% 8 Missing and 1 partial ⚠️
....AGUIAdapter/WorkflowExecutionRunEventProjector.cs 81.08% 2 Missing and 5 partials ⚠️
... and 4 more
@@            Coverage Diff             @@
##              dev     #638      +/-   ##
==========================================
+ Coverage   72.01%   72.05%   +0.03%     
==========================================
  Files        1255     1267      +12     
  Lines       90723    91487     +764     
  Branches    11877    11940      +63     
==========================================
+ Hits        65338    65924     +586     
- Misses      20703    20838     +135     
- Partials     4682     4725      +43     
Flag Coverage Δ
ci 72.05% <74.57%> (+0.03%) ⬆️

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

Files with missing lines Coverage Δ
...ctor/ReadModels/InspectorActorCommandDispatcher.cs 100.00% <100.00%> (ø)
...evatar.Demos.Inspector/Telemetry/TelemetryFrame.cs 100.00% <100.00%> (ø)
...ncyInjection/ProjectionMaterializerRegistration.cs 100.00% <100.00%> (ø)
...DependencyInjection/ServiceCollectionExtensions.cs 100.00% <100.00%> (ø)
...undation.Runtime/Observability/EventHandleScope.cs 88.57% <100.00%> (ø)
...Runtime.Implementations.Local/Actors/LocalActor.cs 96.40% <0.00%> (-0.72%) ⬇️
...mos.Inspector/Demo/InspectorDemoScenarioService.cs 93.93% <93.93%> (ø)
demos/Aevatar.Demos.Inspector/Program.cs 0.00% <0.00%> (ø)
...spector/Telemetry/InspectorTelemetryBroadcaster.cs 91.07% <91.07%> (ø)
....AGUIAdapter/WorkflowExecutionRunEventProjector.cs 88.33% <81.08%> (-11.67%) ⬇️
... and 9 more

... and 6 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.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant