This repository was archived by the owner on May 24, 2026. It is now read-only.
fix: address review findings round 1 (PR #798)#799
Closed
github-actions[bot] wants to merge 3 commits into
Closed
Conversation
Add 56 behavioral unit tests and 3 integration tests covering the orchestration recovery paths introduced in PR #375. Unit test coverage (OrchestrationRecoveryBehavioralTests.cs): - LoadHistoryFromDiskAsync: 11 tests parsing events.jsonl with user/assistant/tool/reasoning messages, timestamps, edge cases - bestResponse accumulation: 5 tests verifying longest-content-wins across multi-round recovery, null initial, progressive rounds - PrematureIdleSignal lifecycle: 8 tests exercising ManualResetEventSlim set/reset/wait/dispose/cross-thread signaling - OnSessionComplete handler: 5 tests for TCS pattern, name matching, cancellation registration, unsubscription - OCE handling: 4 tests verifying bestResponse preserved on cancellation with linked CTS timeout and user abort scenarios - dispatchTime filtering: 10 tests for timestamp-based message filtering including exact boundary, disk fallback, type exclusion - GetEventsFileMtime: 4 tests for file modification time detection - Constants validation: 4 tests verifying timeout values are reasonable - Recovery loop TCS pattern: 4 end-to-end simulations of the full recovery loop with multi-round accumulation Integration tests (OrchestrationRecoveryTests.cs): - Dashboard loads, new session button exists, settings page accessible Fixes #387 Co-authored-by: copilot-agentic-workflow[bot] <224017+copilot-agentic-workflow[bot]@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…gs 3, 5) Finding 3: Dashboard_NewSessionButtonExists computed 'exists' but never asserted it — test could not detect a missing button. Now asserts directly. Finding 5: Settings_ConnectionModeExists wrapped assertions inside if(navigated), allowing the test to pass with zero assertions when navigation failed. Now asserts navigation succeeds unconditionally. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Finding 1 (3/3): Renamed OnSessionComplete_HandlerFiresForMatchingSessionName to OnSessionComplete_SubscriptionDoesNotThrow — the test only verifies subscription + send don't throw (Demo mode can't fire OnSessionComplete). Added comment explaining why and pointing to TCS-based tests for behavioral coverage. Finding 4 (2/3): Initialize CurrentResponse, FlushedResponse, and PendingReasoningMessages backing fields in CreateSessionState() to prevent NullReferenceException if future tests call production methods. Added documentation listing all initialized fields. Finding 2 (2/3): Added documentation comments to §2, §3, §5, §6, §9 noting that these sections test production patterns in isolation rather than calling production methods. Documented the trade-off and noted §1, §7, §8 as the sections with real production code coverage. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Owner
|
Stale fix-round PR — fixes were pushed to the main PR branch. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Addresses 5 expert review findings from round 1 on PR #798.
Findings addressed
OnSessionComplete_HandlerFiresForMatchingSessionName→OnSessionComplete_SubscriptionDoesNotThrowwith clear documentation that Demo mode can't fireOnSessionCompleteDashboard_NewSessionButtonExistsnow assertsexistsdirectly instead of asserting dashboard loaded (which was a duplicate of another test)CreateSessionStatenow initializesCurrentResponse,FlushedResponse,PendingReasoningMessagesbacking fields to prevent future NREsSettings_ConnectionModeExistsnow assertsnavigatedunconditionally — can no longer pass with zero assertionsTest results
All 3,632 tests pass (0 failed, 0 skipped).
Warning
The following domain was blocked by the firewall during workflow execution:
192.0.2.1To allow these domains, add them to the
network.allowedlist in your workflow frontmatter:See Network Configuration for more information.