Sprint 65: Parallel Pair Upgrades and Queue Optimization — Steps 879-888

Implements priority-aware pair-upgrade queue with starvation prevention:
- PairUpgradeQueue: enqueue/dequeue/getActive sorted by priority (step 879)
- UpgradePriorityPolicy: critical/revenue/coverage/experimental classes (step 880)
- ParallelDispatchOptimizer: schedule N pairs with blocked-pair constraints (step 881)
- StarvationPrevention: detect and promote starved pairs (step 882)
- QueueHealthScorer: stall-rate-based health scoring (step 883)
- RetryBackoffStrategy: exponential backoff with max-attempts guard (step 884)
- whetstone_enqueue_pair_upgrade MCP tool (step 885)
- whetstone_get_upgrade_queue MCP tool with priority sorting (step 886)
- UpgradeQueueObservabilityPanel: snapshot model for queue visibility (step 887)
- Sprint65IntegrationSummary (step 888)

All 10 steps passing (94 tests). Routing rule: critical-tier regressions
preempt all experimental upgrades.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Bill
2026-02-22 18:58:04 -07:00
parent 484d9e3f8c
commit 0282e7ebb7
22 changed files with 932 additions and 0 deletions

View File

@@ -34,6 +34,8 @@
#include "SelfContainmentScorer.h"
#include "TaskitemQualityAuditor.h"
#include "AgentSessionRecorder.h"
#include "graduation/PairUpgradeQueue.h"
#include "graduation/UpgradePriorityPolicy.h"
#include "TaskCompletionMetrics.h"
#include "ABTestComparison.h"
#include "LanguageCapabilityMatrix.h"
@@ -276,6 +278,7 @@ private:
AgentSessionRecorder sessionRecorder_;
bool recordingActive_ = false;
std::string recordingSessionId_;
PairUpgradeQueue upgradeQueue_;
// ---------------------------------------------------------------
// Protocol handlers
@@ -739,4 +742,5 @@ private:
#include "graduation/MultiPlanAlternativeGenerator.h"
#include "graduation/BudgetPolicyEnforcer.h"
#include "mcp/RegisterCostPlanningTools.h"
#include "mcp/RegisterUpgradeQueueTools.h"
#include "mcp/RegisterOnboardingAndAllTools.h"