[{"data":1,"prerenderedAt":195},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fv2\u002Ffleet\u002Fdebugging\u002Fio":3},{"id":4,"title":5,"body":6,"description":187,"extension":188,"meta":189,"navigation":190,"path":191,"seo":192,"stem":193,"__hash__":194},"docs\u002Fdocs\u002Fv2\u002Ffleet\u002Fdebugging\u002Fio.md","The I\u002FO timeline",{"type":7,"value":8,"toc":179},"minimark",[9,13,27,32,39,44,64,75,78,84,88,91,95,102,109,113,116,125,128,132,142,145,154,163,166,169],[10,11,5],"h1",{"id":12},"the-io-timeline",[14,15,16,17,21,22,26],"p",{},"Every feed the agent is reading from and writing to, on one clock. Not what it ",[18,19,20],"em",{},"said"," —\nwhat it was ",[23,24,25],"strong",{},"receiving"," while it decided.",[28,29],"terminal-image",{"alt":30,"src":31},"The I\u002FO pane listing channels down the left — \u002Fbody\u002Fbalance, \u002Fbody\u002Fjoints, cpu\u002Ffreq, gpu\u002F0, net\u002Fenp7s0, thermal\u002Fcoretemp and more, each labelled VECTOR with a channel count — and their waveforms drawn against a shared time axis","\u002Ffleet\u002Ffleet-io.webp",[14,33,34,35,38],{},"An Axon agent is not restricted to a chat box. It is a process with any number of\n",[23,36,37],{},"channels"," attached — sensors in, actuators out — streaming continuously whether or not\nanyone is talking to it. This pane is those channels, side by side, over time.",[40,41,43],"h2",{"id":42},"reading-it","Reading it",[14,45,46,47,50,51,54,55,59,60,63],{},"Channels run down the left. Each names its ",[23,48,49],{},"kind"," and its ",[23,52,53],{},"width",": ",[56,57,58],"code",{},"VECTOR · 27CH"," is\n27 numbers arriving together, ",[56,61,62],{},"VIDEO"," is frames. To the right, each one draws itself\nagainst a time axis shared by every row.",[14,65,66,67,70,71,74],{},"That shared axis is the whole point. A spike in ",[56,68,69],{},"\u002Fbody\u002Fpressure"," and a jump in\n",[56,72,73],{},"thermal\u002Fcoretemp"," are one event when they line up vertically, and a coincidence when they\ndon't — a question that is nearly unanswerable when each feed lives in its own log.",[14,76,77],{},"Rows fold. Collapsed, a vector channel is one summary band; expanded, it separates into\nits component channels. On an agent with forty feeds, folding is what makes the pane\nreadable — open the two you suspect, leave the rest as texture.",[14,79,80,83],{},[23,81,82],{},"OUT"," at the bottom is the same treatment for everything the agent emits. Inputs and\noutputs share the clock, so the delay between a stimulus arriving and the agent acting on\nit is a horizontal distance you can measure.",[40,85,87],{"id":86},"video-channels-carry-their-frames","Video channels carry their frames",[14,89,90],{},"Hover any point on a video channel and the frame at that instant appears.",[28,92],{"alt":93,"src":94},"Hovering the \u002Fscreen video channel in the I\u002FO pane: a tooltip shows the enlarged captured frame at that moment, labelled with the channel name, an IN direction badge, the timestamp 09:49:47.844, an 8ms duration and the sequence number #16325","\u002Ffleet\u002Ffleet-io-frame.webp",[14,96,97,98,101],{},"The tooltip names the channel, the direction (",[23,99,100],{},"IN","), the exact timestamp, how long the\nframe took, and its sequence number. The strip along the bottom is every other frame on\nthat channel, so you can scrub the run visually.",[14,103,104,105,108],{},"This is the answer to ",[18,106,107],{},"what was it actually looking at?"," — asked at a specific millisecond\nrather than in general. A screen-sharing agent that did something inexplicable is usually\nan agent that received a frame you didn't expect, and this is where you see the frame\nrather than infer it.",[40,110,112],{"id":111},"why-this-exists","Why this exists",[14,114,115],{},"The runtime was decoupled from the chat loop deliberately. Nothing in Axon assumes input\nis text, arrives in turns, or waits to be asked — a channel is a stream with a name, a\nkind, and a direction, and the cognet reads whatever is attached.",[14,117,118,119,124],{},"Once that is true, the console needs a view where a joint angle, a thermal reading and a\nvideo frame are the same kind of object on the same timeline. The ",[120,121,123],"a",{"href":122},"\u002Fdocs\u002Fv2\u002Ffleet\u002Fdebugging\u002Fevents","event\nlog"," records them faithfully but one per row, which is\nthe wrong shape for asking whether two feeds moved together.",[14,126,127],{},"Channels are recorded like every other part of a run, so this pane works on a finished\nsession exactly as it does live — and any agent with channels attached gets it without\nknowing the pane exists.",[40,129,131],{"id":130},"where-to-see-it","Where to see it",[14,133,134,135,141],{},"The screenshots are ",[23,136,137],{},[120,138,140],{"href":139},"\u002F@cody\u002Fio","@cody\u002Fio",", a small robot sim that streams sensor data\nthrough a cognet — the plainest demonstration of an agent taking many stimuli at once.",[14,143,144],{},"Two simulations are more fun to watch:",[14,146,147,153],{},[23,148,149],{},[120,150,152],{"href":151},"\u002F@cody\u002Fbraitenberg","@cody\u002Fbraitenberg"," — a vehicle with two light sensors and two\nwheels, steering toward the brighter side. No language model anywhere in it; the brain is\narithmetic. The I\u002FO pane shows sensors and wheels together, which is the entire organism.",[14,155,156,162],{},[23,157,158],{},[120,159,161],{"href":160},"\u002F@cody\u002Fglade","@cody\u002Fglade"," — a creature trying to survive in a 2D grid world, with\nyou playing the monster. Its channels are what it can perceive, so the timeline shows what\nit knew at the moment it ran.",[14,164,165],{},"Both are worth opening in the pane precisely because they are small: with four channels\ninstead of forty, the relationship between what arrived and what the agent did is visible\nin a glance.",[167,168],"hr",{},[14,170,171,172,178],{},"Next: ",[23,173,174],{},[120,175,177],{"href":176},"\u002Fdocs\u002Fv2\u002Ffleet\u002Fdebugging\u002Ftrace","Trace"," — the same run, laid against time.",{"title":180,"searchDepth":181,"depth":181,"links":182},"",2,[183,184,185,186],{"id":42,"depth":181,"text":43},{"id":86,"depth":181,"text":87},{"id":111,"depth":181,"text":112},{"id":130,"depth":181,"text":131},"Every feed the agent is reading from and writing to, on one clock. Not what it said —\nwhat it was receiving while it decided.","md",{},true,"\u002Fdocs\u002Fv2\u002Ffleet\u002Fdebugging\u002Fio",{"title":5,"description":187},"docs\u002Fv2\u002Ffleet\u002Fdebugging\u002Fio","z8eFCbRMqgJq0bP5R4epZiWJLVHhUoXCeT-3tuMFwA8",1786958247472]