feat(awooop): expose multi product log taxonomy contract
All checks were successful
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Successful in 20s
CD Pipeline / build-and-deploy (push) Successful in 3m50s
CD Pipeline / post-deploy-checks (push) Successful in 1m10s

This commit is contained in:
Your Name
2026-06-29 18:11:37 +08:00
parent 5abc1cc438
commit 00212d2afe
5 changed files with 309 additions and 8 deletions

View File

@@ -93,6 +93,16 @@ type RuntimeReceiptReadback = {
learning_source_family_count?: number | null;
} | null;
} | null;
multi_product_taxonomy?: {
status?: string | null;
missing_product_scope_ids?: string[] | null;
rollups?: {
product_scope_count?: number | null;
contract_ready_product_scope_count?: number | null;
runtime_adapter_active_count?: number | null;
missing_required_dimension_count?: number | null;
} | null;
} | null;
agent_decision_wiring?: {
status?: string | null;
missing_required_stage_ids?: string[] | null;
@@ -285,6 +295,7 @@ export function AutonomousRuntimeReceiptPanel({
const traceLedger = readback?.trace_ledger;
const logTaxonomy = readback?.log_integration_taxonomy;
const logRollups = logTaxonomy?.rollups ?? {};
const multiProductRollups = readback?.multi_product_taxonomy?.rollups ?? {};
const decisionRollups = readback?.agent_decision_wiring?.rollups ?? {};
const decisionMissing = readback?.agent_decision_wiring?.missing_required_stage_ids ?? [];
const learningRollups = readback?.learning_loop?.rollups ?? {};
@@ -605,7 +616,7 @@ export function AutonomousRuntimeReceiptPanel({
})}
</div>
<div className="grid gap-px border-t border-[#e0ddd4] bg-[#e0ddd4] md:grid-cols-5">
<div className="grid gap-px border-t border-[#e0ddd4] bg-[#e0ddd4] md:grid-cols-2 xl:grid-cols-6">
<div className="bg-white px-4 py-3">
<p className="text-xs font-semibold text-[#77736a]">{t("taxonomy.sources")}</p>
<p className="mt-1 text-sm font-semibold text-[#141413]">
@@ -614,6 +625,32 @@ export function AutonomousRuntimeReceiptPanel({
{numberValue(rollups.live_log_source_family_count ?? logRollups.source_family_count)}
</p>
</div>
<div className="bg-white px-4 py-3">
<p className="text-xs font-semibold text-[#77736a]">{t("taxonomy.products")}</p>
<p className="mt-1 text-sm font-semibold text-[#141413]">
{numberValue(
rollups.live_multi_product_taxonomy_contract_ready_count
?? multiProductRollups.contract_ready_product_scope_count
)}
{" / "}
{numberValue(
rollups.live_multi_product_taxonomy_product_scope_count
?? multiProductRollups.product_scope_count
)}
</p>
<p className="mt-1 text-xs leading-5 text-[#5f5b52]">
{t("taxonomy.productsDetail", {
active: numberValue(
rollups.live_multi_product_taxonomy_runtime_adapter_active_count
?? multiProductRollups.runtime_adapter_active_count
),
missing: numberValue(
rollups.live_multi_product_taxonomy_missing_dimension_count
?? multiProductRollups.missing_required_dimension_count
),
})}
</p>
</div>
<div className="bg-white px-4 py-3">
<p className="text-xs font-semibold text-[#77736a]">{t("taxonomy.labels")}</p>
<p className="mt-1 text-sm font-semibold text-[#141413]">