feat: update GitHub.Copilot.SDK from v0.2.1 to v0.2.2#641
Conversation
Breaking changes addressed: - SessionIdleData.BackgroundTasks removed — idle handler now reads tracked state directly from DeferredBackgroundTaskFingerprint/Ticks (set by SessionBackgroundTasksChangedEvent). Does NOT call RefreshDeferredBackgroundTaskTracking(null) which would destroy tracked state. Preserves zombie timeout and carry-over shell logic. - ModelApi.SwitchToAsync added ModelCapabilitiesOverride? parameter — pass null for default capabilities. - CompactionApi removed — already not adopted (events-only monitoring). - SessionIdleDataBackgroundTasks/AgentsItem/ShellsItem types removed — tests updated to use BackgroundTaskSnapshot and fake DTOs for reflection-based helpers. New SDK features available (not yet adopted): - ISessionFsHandler (10 filesystem methods) - HistoryApi.TruncateAsync - ServerSessionsApi.ForkAsync - ModelCapabilitiesOverride (vision support, token limits) Updated: copilot-sdk-reference skill, copilot-instructions.md Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
c102507 to
4025e87
Compare
🔍 Multi-Model Code Review — PR #641Reviewed by: 3 independent reviewers with adversarial consensus Findings🔴 CRITICAL — #1:
|
| # | Severity | Finding | Status |
|---|---|---|---|
| 1 | 🔴 | IDLE-DEFER disabled by null snapshot | ✅ FIXED |
| 2 | 🟡 | Zombie timeout bypassed | ✅ FIXED |
| 3 | 🟡 | Carry-over shell detection broken | ✅ FIXED |
| 4 | 🟢 | Duplicate test helpers | Non-blocking |
| 5 | 🟢 | Gtk version skip | Non-blocking |
Recommended Action
✅ Approve
All critical and moderate findings are fixed in the force-pushed commit. The idle handler correctly reads tracked state without mutating it, preserves zombie timeout and carry-over shell logic. 3500 tests pass, 0 failures.
|
/review |
|
✅ Expert Code Review completed successfully! |
Additional Findings (Design-Level)🟡 MODERATE — In Recommendation: Remove the 🟢 MINOR — Three tests in
|
- processing-state-safety SKILL.md: CompactionApi → HistoryApi.CompactAsync, mark InfiniteSessions as adopted, add TruncateAsync and ForkAsync entries - copilot-instructions.md: update SessionIdleData docs — BackgroundTasks removed in v0.2.2, tracking now via SessionBackgroundTasksChangedEvent Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Changes
Updates all projects to GitHub.Copilot.SDK v0.2.2 and fixes all breaking changes.
Breaking Changes Addressed
SessionIdleData.BackgroundTasksremovedSessionBackgroundTasksChangedEvent(already implemented).HasActiveBackgroundTasksrefactored to takeBackgroundTaskSnapshotinstead ofSessionIdleEvent.ModelApi.SwitchToAsyncaddedModelCapabilitiesOverride?paramnullfor default capabilitiesCompactionApiremoved (SessionRpc.Compaction)SessionIdleDataBackgroundTasks/AgentsItem/ShellsItemtypes removedBackgroundTaskSnapshotand fake DTOsNew SDK Features (available, not yet adopted)
ISessionFsHandler— 10 filesystem methods for session-scoped file I/OHistoryApi.TruncateAsync— truncate session historyServerSessionsApi.ForkAsync— fork a sessionModelCapabilitiesOverride— vision support, token limits per modelResumeSessionConfig.EnableConfigDiscovery/ModelCapabilitiesDocumentation
copilot-sdk-referenceskill to v0.2.2 with version history entrycopilot-instructions.mdSDK referenceTesting
All 3500 tests pass, 0 failures.