feat(vwb): harden supervised verdict evidence

This commit is contained in:
Dom
2026-05-29 18:54:54 +02:00
parent d515b22d1b
commit 47377226f2
6 changed files with 121 additions and 0 deletions

View File

@@ -671,6 +671,8 @@ function App() {
verdictEndpoint={appState.execution.verdict_endpoint}
competenceId={appState.execution.competence_id}
executionId={appState.execution.id}
workflowId={appState.execution.workflow_id}
stepResults={appState.execution.step_results}
onResume={async (ackIds) => {
const replayId = appState.execution?.replay_id || appState.execution?.id;
if (replayId) {

View File

@@ -18,6 +18,8 @@ interface Props {
verdictEndpoint?: string;
competenceId?: string;
executionId?: string;
workflowId?: string;
stepResults?: unknown[];
onResume: (acknowledgedIds: string[]) => Promise<void>;
onCancel: () => void;
}
@@ -30,6 +32,8 @@ export default function PauseDialog({
verdictEndpoint,
competenceId,
executionId,
workflowId,
stepResults,
onResume,
onCancel,
}: Props) {
@@ -85,6 +89,8 @@ export default function PauseDialog({
verdict_id: newVerdictId(),
verdict_kind: verdictKind,
verdict_by: 'human:dom',
workflow_id: workflowId || '',
step_results: Array.isArray(stepResults) ? stepResults : [],
context_signature: {
machine_id: `browser:${window.navigator.platform || 'unknown'}`,
screen_state_initial: '',
@@ -92,11 +98,13 @@ export default function PauseDialog({
},
evidence: {
execution_id: executionId || '',
workflow_id: workflowId || '',
pause_reason: pauseReason || '',
},
source: {
frontend: 'vwb_v4',
execution_id: executionId || '',
workflow_id: workflowId || '',
},
comments: `Verdict humain VWB: ${verdictKind}`,
}),

View File

@@ -346,6 +346,7 @@ export interface Execution {
failed_steps: number;
total_steps: number;
error_message?: string;
step_results?: unknown[];
// === QW4 — Pause supervisée (renvoyés par /replay/state quand status = paused_need_help) ===
pause_reason?: string;
pause_message?: string;