From 899fc3c912b3d20ff35592de37ff6242003ae1e1 Mon Sep 17 00:00:00 2001 From: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com> Date: Mon, 8 Jun 2026 11:25:39 +0100 Subject: [PATCH] fix(telemetry): drop conditional fee attrs from txq.enqueue required set The txq.enqueue span sets tx_hash, tx_type, and txq_status on every code path (TxQ.cpp:746/748/751), but fee_level_paid and required_fee_level are set only on the fee-evaluated path (TxQ.cpp:895-898), which is reached after the rejected and applied_direct early exits. They are therefore not guaranteed on every txq.enqueue span, so requiring them caused the validation harness to fail whenever a txq.enqueue span took an early-exit path. Remove the two conditional attributes from required_attributes and document why in the span note. Co-Authored-By: Claude Opus 4.8 (1M context) --- docker/telemetry/workload/expected_spans.json | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/docker/telemetry/workload/expected_spans.json b/docker/telemetry/workload/expected_spans.json index 1b6530e583..a27bb5b180 100644 --- a/docker/telemetry/workload/expected_spans.json +++ b/docker/telemetry/workload/expected_spans.json @@ -84,16 +84,10 @@ "name": "txq.enqueue", "category": "transaction", "parent": "tx.process", - "required_attributes": [ - "tx_hash", - "tx_type", - "txq_status", - "fee_level_paid", - "required_fee_level" - ], + "required_attributes": ["tx_hash", "tx_type", "txq_status"], "config_flag": "trace_transactions", "optional": true, - "note": "Only fires when a tx is queued (fee below open-ledger level). Requires fee escalation — driven by the txq-burst workload phase." + "note": "Only fires when a tx is queued (fee below open-ledger level). Requires fee escalation — driven by the txq-burst workload phase. tx_hash/tx_type/txq_status are set on every code path; fee_level_paid/required_fee_level are conditional (TxQ.cpp ~895-898, after the rejected and applied_direct early exits), so they are NOT guaranteed on every txq.enqueue span and cannot be required." }, { "name": "txq.apply_direct",