{"slug": "our-minimum-telemetry-map-for-an-ai-agent-12-fields-4-places", "title": "Our Minimum Telemetry Map for an AI Agent: 12 Fields, 4 Places", "summary": "A Decoding AI telemetry audit found that the author's own retry-test harness recorded only 3 of the 12 fields in a proposed minimum telemetry map for AI agents, and all 3 came from the orchestrator. The map assigns 3 fields to the orchestrator (run_id, final_status, evaluation_result), 5 to the tool wrapper (call, exit, http_status, rows, complete), 2 to the file reader (path, generated_at) and 2 to the write step (records_changed, keys), each tied to a failure the tests hit, including a stale-input case dated 30 September versus 9 October and a wrong-scope edit that changed 3 records where 1 was requested. The harness logged a run ID and final status for all 40 attempts but kept only a call count per attempt for tools, so the tool wrapper recorded 0 of its 5 fields, leaving half the root causes unknown from status alone.", "body_md": "**A telemetry map for an AI agent says which facts get recorded, where in the system they get written, and which failure each one exists to catch.** This week’s tests gave us one. Twelve fields, written from four places, would have proven every failure we hit this month. **Then we ran the map against our own retry-test harness. It recorded 3 of the 12.** Everything it captured lived in the orchestrator; nothing came from the tools.\n\n*Written with AI assistance; every number comes from a measurement we ran and log with the draft. This is the method note behind* *Flagship 3* *and* *the six trace fields**.*\n\n**What is the minimum telemetry an AI agent needs? From our tests: the orchestrator records the run ID, final status and evaluation result; the tool wrapper records each call, exit code, HTTP status, row count and completeness; the file reader records the path and date of each input; the write step records how many records changed and which. Twelve fields, each tied to a failure we actually hit.**\n\n**Because a field is only useful if the right component writes it.** The agent cannot be trusted to report what its tools returned: in our tests, agents summed half the data and said “done”. The record has to come from the code that saw the fact. So the map is organised by place, not by field.\n\n**Fields:** **run_id,** **final_status,** **evaluation_result.**\n\n**Fields:** **call,** **exit,** **http_status,** **rows,** **complete.**\n\n**Fields:** **path,** **generated_at.** The stale-input failure was proven by two dates: 30 September for the file the agent read, 9 October for the one it skipped. A read without a date is a guess about freshness.\n\n**Fields:** **records_changed,** **keys.** The wrong-scope edit produced valid JSON with three changed records where one was asked for. The count was the whole diagnosis.\n\n**3 of 12, all orchestrator fields.** The harness behind our retry test recorded a run ID and final status for all 40 attempts, and an evaluation result per policy. For the tools, it kept only a call count per attempt: no exit codes, no row counts, no completeness. No file dates. No write counts.\n\nThat fits what we saw. We could say which runs were wrong in seconds. To explain *why*, we needed the agents’ own reports and the answer key. A production system has neither.\n\n**List the fields your traces actually contain and compare.** This is the whole check:\n\n```\nMAP = {  # where each record is written, and the failure it exists to catch    \"orchestrator\": [\"run_id\", \"final_status\", \"evaluation_result\"],    \"tool wrapper\": [\"call\", \"exit\", \"http_status\", \"rows\", \"complete\"],    \"file reader\":  [\"path\", \"generated_at\"],    \"write step\":   [\"records_changed\", \"keys\"],}def missing(trace_lines):    seen = {k for line in trace_lines for k in line}    return {where: [f for f in fields if f not in seen] for where, fields in MAP.items()}\n```\n\nFeed it a day of your trace records as dictionaries. Every missing field is a failure you will diagnose by guessing. Tell us in the comments which place your stack is missing.\n\n**What is a telemetry map for an AI agent?** A list of the facts to record, which component records each one, and which failure each one catches.\n\n**Where should AI agent telemetry be recorded?** In the code that sees the fact: the orchestrator, the tool wrapper, the file reader and the write step, not the agent’s own report.\n\n**Which telemetry gap is most common?** In our own harness, the tool wrapper: 0 of its 5 fields were recorded.\n\n**Is the agent’s final status enough?** No. In our test, status alone left half the root causes unknown.\n\nHow many of the 12 does your agent record today?\n\n*Tomorrow: Flagship 4, where a tool times out halfway through a task. Follow Decoding AI to get it.*\n\nToday we drew the map and failed our own audit. Tomorrow a tool goes quiet mid-task, and we find out what the map misses.\n\n**NEXT → tool timeouts · halfway through · Friday**\n\n**If this showed you where your telemetry stops, clap so more people running agents see it, tell us in the comments which place your stack is missing, and follow Decoding AI — then hit subscribe so Friday’s timeout test lands in your inbox.**\n\n[Our Minimum Telemetry Map for an AI Agent: 12 Fields, 4 Places](https://pub.towardsai.net/our-minimum-telemetry-map-for-an-ai-agent-12-fields-4-places-ca78c70cf889) was originally published in [Towards AI](https://pub.towardsai.net) on Medium, where people are continuing the conversation by highlighting and responding to this story.", "url": "https://wpnews.pro/news/our-minimum-telemetry-map-for-an-ai-agent-12-fields-4-places", "canonical_source": "https://pub.towardsai.net/our-minimum-telemetry-map-for-an-ai-agent-12-fields-4-places-ca78c70cf889?source=rss----98111c9905da---4", "published_at": "2026-11-13 13:31:02+00:00", "updated_at": "2026-11-13 13:53:37.044403+00:00", "lang": "en", "topics": ["ai-agents", "mlops", "ai-tools"], "entities": ["Decoding AI", "Flagship 3", "Flagship 4"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/our-minimum-telemetry-map-for-an-ai-agent-12-fields-4-places", "markdown": "https://wpnews.pro/news/our-minimum-telemetry-map-for-an-ai-agent-12-fields-4-places.md", "text": "https://wpnews.pro/news/our-minimum-telemetry-map-for-an-ai-agent-12-fields-4-places.txt", "jsonld": "https://wpnews.pro/news/our-minimum-telemetry-map-for-an-ai-agent-12-fields-4-places.jsonld"}}