Skip to content

Merge pull request #407 from aevatarAI/feat/2026-04-25_streaming-sink… #1500

Merge pull request #407 from aevatarAI/feat/2026-04-25_streaming-sink…

Merge pull request #407 from aevatarAI/feat/2026-04-25_streaming-sink… #1500

Triggered via push April 25, 2026 06:01
Status Success
Total duration 15m 18s
Artifacts 1

ci.yml

on: push
changes
6s
changes
slow-test-guards
2m 32s
slow-test-guards
coverage-quality
15m 14s
coverage-quality
distributed-3node-smoke
0s
distributed-3node-smoke
distributed-mixed-version-smoke
0s
distributed-mixed-version-smoke
Matrix: split-test-guards
fast-gates
37s
fast-gates
console-web
8m 1s
console-web
projection-provider-e2e
2m 35s
projection-provider-e2e
kafka-transport-integration
9m 23s
kafka-transport-integration
event-sourcing-regression
4m 45s
event-sourcing-regression
Fit to window
Zoom out
Zoom in

Annotations

58 warnings
changes
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, dorny/paths-filter@v3. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
fast-gates
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
slow-test-guards
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v4, actions/checkout@v4, actions/setup-dotnet@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
slow-test-guards: src/workflow/Aevatar.Workflow.Core/Modules/MapReduceModule.cs#L24
'HandleAsync' has a cyclomatic complexity of '27'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
slow-test-guards: src/workflow/Aevatar.Workflow.Core/Modules/ConnectorCallModule.cs#L42
'HandleAsync' is coupled with '44' different types from '17' different namespaces. Rewrite or refactor the code to decrease its class coupling below '41'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
slow-test-guards: src/workflow/Aevatar.Workflow.Core/Modules/ConnectorCallModule.cs#L42
'HandleAsync' has a cyclomatic complexity of '36'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
slow-test-guards: src/workflow/Aevatar.Workflow.Core/Execution/WorkflowExecutionKernel.cs#L196
'HandleStepCompletedAsync' has a cyclomatic complexity of '37'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
slow-test-guards: src/Aevatar.Scripting.Hosting/DependencyInjection/ServiceCollectionExtensions.cs#L33
'AddScriptCapability' is coupled with '41' different types from '21' different namespaces. Rewrite or refactor the code to decrease its class coupling below '41'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
slow-test-guards: src/Aevatar.Scripting.Application/Runtime/ScriptBehaviorDispatcher.cs#L31
'DispatchAsync' has a cyclomatic complexity of '31'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
slow-test-guards: src/Aevatar.Scripting.Core/ScriptDefinitionGAgent.cs#L35
'HandleUpsertScriptDefinitionRequested' is coupled with '41' different types from '14' different namespaces. Rewrite or refactor the code to decrease its class coupling below '41'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
slow-test-guards: src/Aevatar.Scripting.Core/ScriptDefinitionGAgent.cs#L35
'HandleUpsertScriptDefinitionRequested' has a cyclomatic complexity of '32'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
slow-test-guards: src/Aevatar.Scripting.Core/ScriptBehaviorGAgent.cs#L212
'ApplyCommittedFact' has a cyclomatic complexity of '32'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
slow-test-guards: src/Aevatar.Foundation.Runtime.Implementations.Orleans/Grains/RuntimeActorGrain.cs#L137
'HandleEnvelopeAsyncCore' has a cyclomatic complexity of '33'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
projection-provider-e2e
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v4, actions/checkout@v4, actions/setup-dotnet@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
projection-provider-e2e: src/Aevatar.AI.Core/Chat/ContextCompressor.cs#L80
'TruncateByImportance' has a cyclomatic complexity of '28'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
projection-provider-e2e: src/Aevatar.AI.Core/Chat/ChatRuntime.cs#L208
'ChatStreamAsync' is coupled with '50' different types from '15' different namespaces. Rewrite or refactor the code to decrease its class coupling below '41'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
projection-provider-e2e: src/Aevatar.AI.Core/Chat/ChatRuntime.cs#L208
'ChatStreamAsync' has a cyclomatic complexity of '46'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
projection-provider-e2e: src/Aevatar.AI.Core/RoleGAgent.cs#L31
'RoleGAgent' is coupled with '98' different types from '28' different namespaces. Rewrite or refactor the code to decrease its class coupling below '96'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
projection-provider-e2e: src/Aevatar.AI.Core/AIGAgentBase.cs#L156
'MergeEffectiveConfig' has a cyclomatic complexity of '26'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
projection-provider-e2e: src/Aevatar.AI.Core/Tools/StreamingToolExecutor.cs#L174
Dereference of a possibly null reference.
projection-provider-e2e: src/Aevatar.Scripting.Application/Runtime/ScriptBehaviorDispatcher.cs#L31
'DispatchAsync' has a cyclomatic complexity of '31'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
projection-provider-e2e: src/Aevatar.Scripting.Core/ScriptDefinitionGAgent.cs#L35
'HandleUpsertScriptDefinitionRequested' is coupled with '41' different types from '14' different namespaces. Rewrite or refactor the code to decrease its class coupling below '41'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
projection-provider-e2e: src/Aevatar.Scripting.Core/ScriptDefinitionGAgent.cs#L35
'HandleUpsertScriptDefinitionRequested' has a cyclomatic complexity of '32'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
projection-provider-e2e: src/Aevatar.Scripting.Core/ScriptBehaviorGAgent.cs#L212
'ApplyCommittedFact' has a cyclomatic complexity of '32'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
event-sourcing-regression
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v4, actions/checkout@v4, actions/setup-dotnet@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
event-sourcing-regression: src/Aevatar.AI.Core/Chat/ChatRuntime.cs#L208
'ChatStreamAsync' has a cyclomatic complexity of '46'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
event-sourcing-regression: src/Aevatar.AI.Core/RoleGAgent.cs#L31
'RoleGAgent' is coupled with '98' different types from '28' different namespaces. Rewrite or refactor the code to decrease its class coupling below '96'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
event-sourcing-regression: src/Aevatar.AI.Core/AIGAgentBase.cs#L156
'MergeEffectiveConfig' has a cyclomatic complexity of '26'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
event-sourcing-regression: src/Aevatar.AI.Core/Tools/StreamingToolExecutor.cs#L174
Dereference of a possibly null reference.
event-sourcing-regression: src/Aevatar.Foundation.Runtime.Implementations.Orleans/Grains/RuntimeActorGrain.cs#L137
'HandleEnvelopeAsyncCore' has a cyclomatic complexity of '33'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
event-sourcing-regression: src/Aevatar.Foundation.Runtime.Implementations.Orleans/Grains/RuntimeActorGrain.cs#L137
'HandleEnvelopeAsyncCore' has a cyclomatic complexity of '33'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
console-web
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4, pnpm/action-setup@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
kafka-transport-integration
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v4, actions/checkout@v4, actions/setup-dotnet@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
kafka-transport-integration: src/Aevatar.Scripting.Core/ScriptDefinitionGAgent.cs#L35
'HandleUpsertScriptDefinitionRequested' has a cyclomatic complexity of '32'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
kafka-transport-integration: src/Aevatar.Scripting.Core/ScriptBehaviorGAgent.cs#L212
'ApplyCommittedFact' has a cyclomatic complexity of '32'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
kafka-transport-integration: agents/channels/Aevatar.GAgents.Channel.NyxIdRelay/NyxIdRelayAuthValidator.cs#L147
Possible null reference argument for parameter 'principal' in 'string? PrincipalExtensions.FindFirstValue(ClaimsPrincipal principal, string claimType)'.
kafka-transport-integration: src/Aevatar.AI.Core/Tools/ToolCallLoop.cs#L75
'ExecuteCoreAsync' has a cyclomatic complexity of '33'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
kafka-transport-integration: src/Aevatar.AI.Core/Chat/ContextCompressor.cs#L80
'TruncateByImportance' has a cyclomatic complexity of '28'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
kafka-transport-integration: src/Aevatar.AI.Core/Chat/ChatRuntime.cs#L208
'ChatStreamAsync' is coupled with '50' different types from '15' different namespaces. Rewrite or refactor the code to decrease its class coupling below '41'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
kafka-transport-integration: src/Aevatar.AI.Core/Chat/ChatRuntime.cs#L208
'ChatStreamAsync' has a cyclomatic complexity of '46'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
kafka-transport-integration: src/Aevatar.AI.Core/RoleGAgent.cs#L31
'RoleGAgent' is coupled with '98' different types from '28' different namespaces. Rewrite or refactor the code to decrease its class coupling below '96'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
kafka-transport-integration: src/Aevatar.AI.Core/AIGAgentBase.cs#L156
'MergeEffectiveConfig' has a cyclomatic complexity of '26'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
kafka-transport-integration: src/Aevatar.AI.Core/Tools/StreamingToolExecutor.cs#L174
Dereference of a possibly null reference.
coverage-quality
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v4, actions/checkout@v4, actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea, actions/setup-dotnet@v4, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
coverage-quality: src/Aevatar.Scripting.Core/ScriptDefinitionGAgent.cs#L35
'HandleUpsertScriptDefinitionRequested' has a cyclomatic complexity of '32'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
coverage-quality: src/Aevatar.Scripting.Core/ScriptBehaviorGAgent.cs#L212
'ApplyCommittedFact' has a cyclomatic complexity of '32'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
coverage-quality: agents/channels/Aevatar.GAgents.Channel.NyxIdRelay/NyxIdRelayAuthValidator.cs#L147
Possible null reference argument for parameter 'principal' in 'string? PrincipalExtensions.FindFirstValue(ClaimsPrincipal principal, string claimType)'.
coverage-quality: src/Aevatar.AI.Core/Tools/ToolCallLoop.cs#L75
'ExecuteCoreAsync' has a cyclomatic complexity of '33'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
coverage-quality: src/Aevatar.AI.Core/Chat/ContextCompressor.cs#L80
'TruncateByImportance' has a cyclomatic complexity of '28'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
coverage-quality: src/Aevatar.AI.Core/Chat/ChatRuntime.cs#L208
'ChatStreamAsync' is coupled with '50' different types from '15' different namespaces. Rewrite or refactor the code to decrease its class coupling below '41'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
coverage-quality: src/Aevatar.AI.Core/Chat/ChatRuntime.cs#L208
'ChatStreamAsync' has a cyclomatic complexity of '46'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
coverage-quality: src/Aevatar.AI.Core/RoleGAgent.cs#L31
'RoleGAgent' is coupled with '98' different types from '28' different namespaces. Rewrite or refactor the code to decrease its class coupling below '96'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1506)
coverage-quality: src/Aevatar.AI.Core/AIGAgentBase.cs#L156
'MergeEffectiveConfig' has a cyclomatic complexity of '26'. Rewrite or refactor the code to decrease its complexity below '26'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1502)
coverage-quality: src/Aevatar.AI.Core/Tools/StreamingToolExecutor.cs#L174
Dereference of a possibly null reference.

Artifacts

Produced during runtime
Name Size Digest
coverage-quality-report
22.7 MB
sha256:ec208dd2a8f898540aeffd891a054f7c8258bb92b32280860330cd7eea3c9e50