Step 661: pilot queue panel model

This commit is contained in:
Bill
2026-02-17 22:15:13 -07:00
parent 782af1a77f
commit 8c178644a6
4 changed files with 96 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
#pragma once
// Step 661: Pilot queue panel model
#include <string>
#include <vector>
enum class PilotDecision { Pending, Approved, Rejected, Modified };
struct PilotQueueItem {
std::string jobId;
std::string summary;
bool escalate = false;
double ambiguity = 0.0;
PilotDecision decision = PilotDecision::Pending;
std::string strategyNote;
};
class PilotQueuePanelModel {
public:
static bool needsHumanReview(const PilotQueueItem& item, double threshold = 0.5) {
return item.escalate || item.ambiguity > threshold;
}
static void approve(PilotQueueItem* item) {
if (!item) return;
item->decision = PilotDecision::Approved;
}
static void reject(PilotQueueItem* item) {
if (!item) return;
item->decision = PilotDecision::Rejected;
}
static void modify(PilotQueueItem* item, const std::string& note) {
if (!item) return;
item->decision = PilotDecision::Modified;
item->strategyNote = note;
}
};