diff --git a/apps/web/messages/en.json b/apps/web/messages/en.json index 8c33176b..cd716b2e 100644 --- a/apps/web/messages/en.json +++ b/apps/web/messages/en.json @@ -9045,8 +9045,10 @@ "metrics": { "tags": "Tags", "groups": "Groups", - "contract": "Contract" + "contract": "Contract", + "queue": "Queue fields" }, + "queueFields": "Queue normalizer fields", "receipt": { "inputs": "Receipt inputs", "outputs": "Receipt outputs" diff --git a/apps/web/messages/zh-TW.json b/apps/web/messages/zh-TW.json index 4ab0f1aa..6628971e 100644 --- a/apps/web/messages/zh-TW.json +++ b/apps/web/messages/zh-TW.json @@ -9045,8 +9045,10 @@ "metrics": { "tags": "Tags", "groups": "分群鍵", - "contract": "Contract" + "contract": "Contract", + "queue": "Queue fields" }, + "queueFields": "Queue normalizer fields", "receipt": { "inputs": "Receipt inputs", "outputs": "Receipt outputs" diff --git a/apps/web/src/app/[locale]/awooop/work-items/page.tsx b/apps/web/src/app/[locale]/awooop/work-items/page.tsx index f9534a68..61a16744 100644 --- a/apps/web/src/app/[locale]/awooop/work-items/page.tsx +++ b/apps/web/src/app/[locale]/awooop/work-items/page.tsx @@ -1035,6 +1035,8 @@ type PriorityWorkOrderResponse = { ai_loop_current_blocker_harbor_recovery_receipt_input_ids?: string[] | null; ai_loop_current_blocker_harbor_recovery_receipt_output_contract_count?: number | null; ai_loop_current_blocker_harbor_recovery_receipt_output_ids?: string[] | null; + ai_loop_current_blocker_queue_readback_normalizer_contract_count?: number | null; + ai_loop_current_blocker_queue_readback_normalizer_field_ids?: string[] | null; ai_loop_log_source_grouping_key_count?: number | null; ai_loop_log_source_grouping_keys?: string[] | null; ai_loop_log_source_tagging_contract_count?: number | null; @@ -1045,6 +1047,7 @@ type PriorityWorkOrderResponse = { ai_loop_log_source_tagging_contract?: AiLoopLogSourceContract[] | null; ai_loop_current_blocker_harbor_recovery_receipt_input_ids?: string[] | null; ai_loop_current_blocker_harbor_recovery_receipt_output_ids?: string[] | null; + ai_loop_current_blocker_queue_readback_normalizer_field_ids?: string[] | null; } | null; }>; }; @@ -7798,6 +7801,10 @@ function AiLoopLogSourceTagsPanel({ summary?.ai_loop_current_blocker_harbor_recovery_receipt_output_ids ?? evidence?.ai_loop_current_blocker_harbor_recovery_receipt_output_ids ?? []; + const queueNormalizerFieldIds = + summary?.ai_loop_current_blocker_queue_readback_normalizer_field_ids ?? + evidence?.ai_loop_current_blocker_queue_readback_normalizer_field_ids ?? + []; const labelMap: Record = { project_id: t("tagLabels.projectId"), product: t("tagLabels.product"), @@ -7829,6 +7836,14 @@ function AiLoopLogSourceTagsPanel({ label: t("metrics.contract"), value: summary?.ai_loop_log_source_tagging_contract_count ?? contracts.length, }, + { + key: "queue", + icon: SearchCheck, + label: t("metrics.queue"), + value: + summary?.ai_loop_current_blocker_queue_readback_normalizer_contract_count ?? + queueNormalizerFieldIds.length, + }, ]; const receiptMetrics = [ { @@ -7870,7 +7885,7 @@ function AiLoopLogSourceTagsPanel({

{t("subtitle")}

-
+
{metrics.map((metric) => { const Icon = metric.icon; return ( @@ -7893,6 +7908,21 @@ function AiLoopLogSourceTagsPanel({ value: summary?.ai_loop_current_blocker_id ?? "--", })}
+
+
+ {t("queueFields")} +
+
+ {queueNormalizerFieldIds.slice(0, 7).map((id) => ( + + {id} + + ))} +
+
{receiptMetrics.map((metric) => (