fix(ui): expose queue normalizer fields in work items
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 1s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Successful in 32s
CD Pipeline / build-and-deploy (push) Successful in 4m28s
CD Pipeline / post-deploy-checks (push) Has been cancelled
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 1s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Successful in 32s
CD Pipeline / build-and-deploy (push) Successful in 4m28s
CD Pipeline / post-deploy-checks (push) Has been cancelled
This commit is contained in:
@@ -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"
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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<string, string> = {
|
||||
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({
|
||||
<p className="mt-3 text-xs leading-5 text-[#77736a]">
|
||||
{t("subtitle")}
|
||||
</p>
|
||||
<div className="mt-4 grid gap-px border border-[#e0ddd4] bg-[#e0ddd4] sm:grid-cols-3">
|
||||
<div className="mt-4 grid gap-px border border-[#e0ddd4] bg-[#e0ddd4] sm:grid-cols-2 xl:grid-cols-4">
|
||||
{metrics.map((metric) => {
|
||||
const Icon = metric.icon;
|
||||
return (
|
||||
@@ -7893,6 +7908,21 @@ function AiLoopLogSourceTagsPanel({
|
||||
value: summary?.ai_loop_current_blocker_id ?? "--",
|
||||
})}
|
||||
</div>
|
||||
<div className="mt-3 border border-[#d8d3c7] bg-white px-3 py-2">
|
||||
<div className="text-[11px] font-semibold text-[#77736a]">
|
||||
{t("queueFields")}
|
||||
</div>
|
||||
<div className="mt-2 flex flex-wrap gap-1.5">
|
||||
{queueNormalizerFieldIds.slice(0, 7).map((id) => (
|
||||
<span
|
||||
key={id}
|
||||
className="max-w-full break-all border border-[#c9d8ea] bg-[#eef5ff] px-2 py-0.5 font-mono text-[10px] text-[#1f5b9b]"
|
||||
>
|
||||
{id}
|
||||
</span>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
<div className="mt-3 grid gap-2">
|
||||
{receiptMetrics.map((metric) => (
|
||||
<div
|
||||
|
||||
Reference in New Issue
Block a user