Remove retired ChannelRuntime direct callback endpoint#673
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. @@ Coverage Diff @@
## dev #673 +/- ##
==========================================
- Coverage 82.31% 82.31% -0.01%
==========================================
Files 932 932
Lines 59485 59485
Branches 7805 7805
==========================================
- Hits 48965 48964 -1
+ Misses 7160 7159 -1
- Partials 3360 3362 +2
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
| 3. Switch the Lark console callback URL to Nyx | ||
| 4. Remove the direct Aevatar Lark callback path from the supported runtime contract | ||
| 5. Return `410 Gone` for `POST /api/channels/lark/callback/{registrationId}` or delete that endpoint entirely | ||
| 5. Historical transition note: the retired direct endpoint could temporarily return `410 Gone`; the current runtime deletes the direct endpoint entirely. |
There was a problem hiding this comment.
[codex] severity=major, category=arch
This mutates an existing ADR even though CLAUDE.md says ADRs are immutable and may only be superseded (docs/adr/ governance). Note ADR-0011 is already status: superseded (superseded by ADR-0013), so editing its "required order" step is both a governance violation and unnecessary — the authoritative contract now lives in ADR-0013. Recommend reverting this ADR-0011 edit entirely; if a current-runtime clarification is needed, put it in the runbook/canon docs instead.
| EnvironmentName = "Development", | ||
| }); | ||
|
|
||
| var app = builder.Build(); |
There was a problem hiding this comment.
[v4-pro] severity=minor, category=test
WebApplication created by builder.Build() implements IAsyncDisposable but is never disposed, leaking the host and its DI container. Fix: await using var app = builder.Build(); and make the test async. Note: the sibling test MapChannelCallbackEndpoints_ShouldRequireAuthorization_ForDiagnosticErrors has the identical undisposed pattern — if you fix this, fix both for consistency.
Summary
ChannelCallbackEndpoints.direct_callback_retireddiagnostic path that only existed for that route./api/channels/.../callback/...routes.Fixes #671.
Validation
dotnet test test/Aevatar.GAgents.ChannelRuntime.Tests/Aevatar.GAgents.ChannelRuntime.Tests.csproj --nologodotnet test test/Aevatar.AI.Tests/Aevatar.AI.Tests.csproj --nologo --filter "FullyQualifiedName~NyxIdChatGAgentTests|FullyQualifiedName~NyxIdChatEndpointsCoverageTests"bash tools/ci/test_stability_guards.shgit diff --check