{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"    from comate_cli.terminal_agent.exit_watchdog import ExitWatchdog\n"},"line_number":25,"absolute_offset":892,"submatches":[{"match":{"text":"exit_watchdog"},"start":35,"end":48},{"match":{"text":"ExitWatchdog"},"start":56,"end":68}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"    exit_watchdog: ExitWatchdog | None = None,\n"},"line_number":482,"absolute_offset":15075,"submatches":[{"match":{"text":"exit_watchdog"},"start":4,"end":17},{"match":{"text":"ExitWatchdog"},"start":19,"end":31}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"                exit_watchdog.remaining_s() if exit_watchdog is not None else None\n"},"line_number":501,"absolute_offset":15683,"submatches":[{"match":{"text":"exit_watchdog"},"start":16,"end":29},{"match":{"text":"exit_watchdog"},"start":47,"end":60}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"    exit_watchdog: \"ExitWatchdog | None\",\n"},"line_number":723,"absolute_offset":23656,"submatches":[{"match":{"text":"exit_watchdog"},"start":4,"end":17},{"match":{"text":"ExitWatchdog"},"start":20,"end":32}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"    remaining_s = exit_watchdog.remaining_s() if exit_watchdog is not None else 0.0\n"},"line_number":728,"absolute_offset":23789,"submatches":[{"match":{"text":"exit_watchdog"},"start":18,"end":31},{"match":{"text":"exit_watchdog"},"start":49,"end":62}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"    exit_watchdog: \"ExitWatchdog | None\",\n"},"line_number":763,"absolute_offset":25086,"submatches":[{"match":{"text":"exit_watchdog"},"start":4,"end":17},{"match":{"text":"ExitWatchdog"},"start":20,"end":32}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"        if exit_watchdog is not None:\n"},"line_number":802,"absolute_offset":26496,"submatches":[{"match":{"text":"exit_watchdog"},"start":11,"end":24}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"            exit_watchdog.arm()\n"},"line_number":803,"absolute_offset":26534,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"            exit_watchdog=exit_watchdog,\n"},"line_number":834,"absolute_offset":27613,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25},{"match":{"text":"exit_watchdog"},"start":26,"end":39}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"            exit_watchdog=exit_watchdog,\n"},"line_number":855,"absolute_offset":28372,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25},{"match":{"text":"exit_watchdog"},"start":26,"end":39}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"    exit_watchdog: \"ExitWatchdog | None\",\n"},"line_number":923,"absolute_offset":30450,"submatches":[{"match":{"text":"exit_watchdog"},"start":4,"end":17},{"match":{"text":"ExitWatchdog"},"start":20,"end":32}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"            exit_watchdog=exit_watchdog,\n"},"line_number":931,"absolute_offset":30700,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25},{"match":{"text":"exit_watchdog"},"start":26,"end":39}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"        exit_watchdog=exit_watchdog,\n"},"line_number":942,"absolute_offset":31003,"submatches":[{"match":{"text":"exit_watchdog"},"start":8,"end":21},{"match":{"text":"exit_watchdog"},"start":22,"end":35}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"    exit_watchdog: \"ExitWatchdog | None\" = None,\n"},"line_number":1058,"absolute_offset":34990,"submatches":[{"match":{"text":"exit_watchdog"},"start":4,"end":17},{"match":{"text":"ExitWatchdog"},"start":20,"end":32}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"            exit_watchdog=exit_watchdog,\n"},"line_number":1188,"absolute_offset":40247,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25},{"match":{"text":"exit_watchdog"},"start":26,"end":39}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"lines":{"text":"            exit_watchdog=exit_watchdog,\n"},"line_number":1269,"absolute_offset":43691,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25},{"match":{"text":"exit_watchdog"},"start":26,"end":39}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/app.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":129151,"human":"0.000129s"},"searches":1,"searches_with_match":1,"bytes_searched":45395,"bytes_printed":5772,"matched_lines":16,"matches":30}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_exit_lifecycle.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_exit_lifecycle.py"},"lines":{"text":"            exit_watchdog=watchdog,\n"},"line_number":126,"absolute_offset":3303,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_exit_lifecycle.py"},"lines":{"text":"        exit_watchdog=_Watchdog(),\n"},"line_number":229,"absolute_offset":6237,"submatches":[{"match":{"text":"exit_watchdog"},"start":8,"end":21}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_exit_lifecycle.py"},"lines":{"text":"        exit_watchdog=_FakeArmedWatchdog(remaining=10.0),\n"},"line_number":260,"absolute_offset":7484,"submatches":[{"match":{"text":"exit_watchdog"},"start":8,"end":21}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_exit_lifecycle.py"},"lines":{"text":"        exit_watchdog=_FakeArmedWatchdog(remaining=10.0),\n"},"line_number":318,"absolute_offset":9480,"submatches":[{"match":{"text":"exit_watchdog"},"start":8,"end":21}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_exit_lifecycle.py"},"lines":{"text":"            exit_watchdog=watchdog,\n"},"line_number":452,"absolute_offset":13883,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_exit_lifecycle.py"},"lines":{"text":"        exit_watchdog=_Deadline(),\n"},"line_number":561,"absolute_offset":17182,"submatches":[{"match":{"text":"exit_watchdog"},"start":8,"end":21}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_exit_lifecycle.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":43733,"human":"0.000044s"},"searches":1,"searches_with_match":1,"bytes_searched":17457,"bytes_printed":1916,"matched_lines":6,"matches":6}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/main.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/main.py"},"lines":{"text":"from comate_cli.terminal_agent.exit_watchdog import ExitWatchdog\n"},"line_number":15,"absolute_offset":222,"submatches":[{"match":{"text":"exit_watchdog"},"start":31,"end":44},{"match":{"text":"ExitWatchdog"},"start":52,"end":64}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/main.py"},"lines":{"text":"    exit_watchdog = None if rpc_stdio else ExitWatchdog()\n"},"line_number":559,"absolute_offset":18136,"submatches":[{"match":{"text":"exit_watchdog"},"start":4,"end":17},{"match":{"text":"ExitWatchdog"},"start":43,"end":55}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/main.py"},"lines":{"text":"                        exit_watchdog=exit_watchdog,\n"},"line_number":597,"absolute_offset":19652,"submatches":[{"match":{"text":"exit_watchdog"},"start":24,"end":37},{"match":{"text":"exit_watchdog"},"start":38,"end":51}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/main.py"},"lines":{"text":"        if runner_closed and exit_watchdog is not None:\n"},"line_number":609,"absolute_offset":20046,"submatches":[{"match":{"text":"exit_watchdog"},"start":29,"end":42}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/main.py"},"lines":{"text":"            exit_watchdog.disarm()\n"},"line_number":610,"absolute_offset":20102,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/main.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":47138,"human":"0.000047s"},"searches":1,"searches_with_match":1,"bytes_searched":20177,"bytes_printed":1751,"matched_lines":5,"matches":8}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/exit_watchdog.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/exit_watchdog.py"},"lines":{"text":"class ExitWatchdog:\n"},"line_number":18,"absolute_offset":273,"submatches":[{"match":{"text":"ExitWatchdog"},"start":6,"end":18}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/exit_watchdog.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":13164,"human":"0.000013s"},"searches":1,"searches_with_match":1,"bytes_searched":2834,"bytes_printed":416,"matched_lines":1,"matches":1}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_shutdown.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_shutdown.py"},"lines":{"text":"            await app_module.run(profile=profile, exit_watchdog=watchdog)\n"},"line_number":220,"absolute_offset":7926,"submatches":[{"match":{"text":"exit_watchdog"},"start":50,"end":63}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_shutdown.py"},"lines":{"text":"                exit_watchdog=SimpleNamespace(remaining_s=lambda: 8.0),\n"},"line_number":504,"absolute_offset":19057,"submatches":[{"match":{"text":"exit_watchdog"},"start":16,"end":29}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_shutdown.py"},"lines":{"text":"                exit_watchdog=SimpleNamespace(remaining_s=lambda: 8.0),\n"},"line_number":521,"absolute_offset":19756,"submatches":[{"match":{"text":"exit_watchdog"},"start":16,"end":29}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_shutdown.py"},"lines":{"text":"                exit_watchdog=SimpleNamespace(remaining_s=lambda: 0.05),\n"},"line_number":578,"absolute_offset":21900,"submatches":[{"match":{"text":"exit_watchdog"},"start":16,"end":29}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_shutdown.py"},"lines":{"text":"            await app_module.run(exit_watchdog=_Watchdog())\n"},"line_number":715,"absolute_offset":27323,"submatches":[{"match":{"text":"exit_watchdog"},"start":33,"end":46}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_shutdown.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":46605,"human":"0.000047s"},"searches":1,"searches_with_match":1,"bytes_searched":27748,"bytes_printed":1723,"matched_lines":5,"matches":5}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog.py"},"lines":{"text":"from comate_cli.terminal_agent.exit_watchdog import ExitWatchdog\n"},"line_number":5,"absolute_offset":54,"submatches":[{"match":{"text":"exit_watchdog"},"start":31,"end":44},{"match":{"text":"ExitWatchdog"},"start":52,"end":64}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog.py"},"lines":{"text":"    watchdog = ExitWatchdog(timeout_s=10.0, monotonic=clock.monotonic)\n"},"line_number":18,"absolute_offset":370,"submatches":[{"match":{"text":"ExitWatchdog"},"start":15,"end":27}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog.py"},"lines":{"text":"    watchdog = ExitWatchdog(\n"},"line_number":30,"absolute_offset":743,"submatches":[{"match":{"text":"ExitWatchdog"},"start":15,"end":27}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog.py"},"lines":{"text":"    watchdog = ExitWatchdog(timeout_s=0.03, force_exit=record_force_exit)\n"},"line_number":49,"absolute_offset":1270,"submatches":[{"match":{"text":"ExitWatchdog"},"start":15,"end":27}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog.py"},"lines":{"text":"    disarmed = ExitWatchdog(\n"},"line_number":59,"absolute_offset":1604,"submatches":[{"match":{"text":"ExitWatchdog"},"start":15,"end":27}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog.py"},"lines":{"text":"    expired = ExitWatchdog(\n"},"line_number":70,"absolute_offset":1933,"submatches":[{"match":{"text":"ExitWatchdog"},"start":14,"end":26}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":35436,"human":"0.000035s"},"searches":1,"searches_with_match":1,"bytes_searched":2214,"bytes_printed":1959,"matched_lines":6,"matches":7}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_profile_entry.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_profile_entry.py"},"lines":{"text":"    assert run.await_args.kwargs[\"exit_watchdog\"] is None\n"},"line_number":44,"absolute_offset":1169,"submatches":[{"match":{"text":"exit_watchdog"},"start":34,"end":47}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_profile_entry.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":7530,"human":"0.000008s"},"searches":1,"searches_with_match":1,"bytes_searched":1909,"bytes_printed":439,"matched_lines":1,"matches":1}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/fixtures/exit_watchdog_child.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/fixtures/exit_watchdog_child.py"},"lines":{"text":"from comate_cli.terminal_agent.exit_watchdog import ExitWatchdog\n"},"line_number":11,"absolute_offset":152,"submatches":[{"match":{"text":"exit_watchdog"},"start":31,"end":44},{"match":{"text":"ExitWatchdog"},"start":52,"end":64}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/fixtures/exit_watchdog_child.py"},"lines":{"text":"    watchdog = ExitWatchdog(timeout_s=0.2)\n"},"line_number":26,"absolute_offset":505,"submatches":[{"match":{"text":"ExitWatchdog"},"start":15,"end":27}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/fixtures/exit_watchdog_child.py"},"lines":{"text":"    watchdog = ExitWatchdog(timeout_s=0.2)\n"},"line_number":44,"absolute_offset":1031,"submatches":[{"match":{"text":"ExitWatchdog"},"start":15,"end":27}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/fixtures/exit_watchdog_child.py"},"lines":{"text":"        exit_watchdog=watchdog,\n"},"line_number":54,"absolute_offset":1353,"submatches":[{"match":{"text":"exit_watchdog"},"start":8,"end":21}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/fixtures/exit_watchdog_child.py"},"lines":{"text":"        watchdog = kwargs[\"exit_watchdog\"]\n"},"line_number":68,"absolute_offset":1723,"submatches":[{"match":{"text":"exit_watchdog"},"start":27,"end":40}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/fixtures/exit_watchdog_child.py"},"lines":{"text":"    main_module.ExitWatchdog = lambda: ExitWatchdog(timeout_s=0.2)\n"},"line_number":84,"absolute_offset":2197,"submatches":[{"match":{"text":"ExitWatchdog"},"start":16,"end":28},{"match":{"text":"ExitWatchdog"},"start":39,"end":51}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/fixtures/exit_watchdog_child.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":49455,"human":"0.000049s"},"searches":1,"searches_with_match":1,"bytes_searched":2672,"bytes_printed":2086,"matched_lines":6,"matches":8}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_args.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_args.py"},"lines":{"text":"            patch.object(main_module, \"ExitWatchdog\", return_value=watchdog) as watchdog_cls,\n"},"line_number":42,"absolute_offset":1252,"submatches":[{"match":{"text":"ExitWatchdog"},"start":39,"end":51}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_args.py"},"lines":{"text":"        self.assertIs(run.await_args.kwargs[\"exit_watchdog\"], watchdog)\n"},"line_number":66,"absolute_offset":2455,"submatches":[{"match":{"text":"exit_watchdog"},"start":45,"end":58}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_args.py"},"lines":{"text":"            patch.object(main_module, \"ExitWatchdog\", return_value=watchdog),\n"},"line_number":106,"absolute_offset":3689,"submatches":[{"match":{"text":"ExitWatchdog"},"start":39,"end":51}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_args.py"},"lines":{"text":"            patch.object(main_module, \"ExitWatchdog\") as watchdog_cls,\n"},"line_number":128,"absolute_offset":4746,"submatches":[{"match":{"text":"ExitWatchdog"},"start":39,"end":51}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_args.py"},"lines":{"text":"        self.assertIsNone(run.await_args.kwargs[\"exit_watchdog\"])\n"},"line_number":136,"absolute_offset":5127,"submatches":[{"match":{"text":"exit_watchdog"},"start":49,"end":62}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_args.py"},"lines":{"text":"    def test_app_run_accepts_optional_keyword_only_exit_watchdog(self) -> None:\n"},"line_number":465,"absolute_offset":18622,"submatches":[{"match":{"text":"exit_watchdog"},"start":51,"end":64}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_args.py"},"lines":{"text":"        parameter = inspect.signature(app.run).parameters[\"exit_watchdog\"]\n"},"line_number":470,"absolute_offset":18777,"submatches":[{"match":{"text":"exit_watchdog"},"start":59,"end":72}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_main_args.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":52823,"human":"0.000053s"},"searches":1,"searches_with_match":1,"bytes_searched":27203,"bytes_printed":2389,"matched_lines":7,"matches":7}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                    exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":72,"absolute_offset":2318,"submatches":[{"match":{"text":"exit_watchdog"},"start":20,"end":33}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                    exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":172,"absolute_offset":6426,"submatches":[{"match":{"text":"exit_watchdog"},"start":20,"end":33}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                        exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":298,"absolute_offset":12055,"submatches":[{"match":{"text":"exit_watchdog"},"start":24,"end":37}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                            exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":344,"absolute_offset":13938,"submatches":[{"match":{"text":"exit_watchdog"},"start":28,"end":41}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                            exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":382,"absolute_offset":15384,"submatches":[{"match":{"text":"exit_watchdog"},"start":28,"end":41}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                            exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":422,"absolute_offset":16950,"submatches":[{"match":{"text":"exit_watchdog"},"start":28,"end":41}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                            exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":472,"absolute_offset":18899,"submatches":[{"match":{"text":"exit_watchdog"},"start":28,"end":41}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                            exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":529,"absolute_offset":21065,"submatches":[{"match":{"text":"exit_watchdog"},"start":28,"end":41}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                            exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":582,"absolute_offset":23286,"submatches":[{"match":{"text":"exit_watchdog"},"start":28,"end":41}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                            exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":686,"absolute_offset":26877,"submatches":[{"match":{"text":"exit_watchdog"},"start":28,"end":41}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                            exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":726,"absolute_offset":28394,"submatches":[{"match":{"text":"exit_watchdog"},"start":28,"end":41}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"                            exit_watchdog=_RecordingWatchdog(events),\n"},"line_number":779,"absolute_offset":30364,"submatches":[{"match":{"text":"exit_watchdog"},"start":28,"end":41}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"            exit_watchdog=watchdog,\n"},"line_number":934,"absolute_offset":36518,"submatches":[{"match":{"text":"exit_watchdog"},"start":12,"end":25}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"lines":{"text":"    assert run_print_mode.await_args.kwargs[\"exit_watchdog\"] is watchdog\n"},"line_number":938,"absolute_offset":36612,"submatches":[{"match":{"text":"exit_watchdog"},"start":45,"end":58}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_app_print_mode.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":90700,"human":"0.000091s"},"searches":1,"searches_with_match":1,"bytes_searched":38799,"bytes_printed":4590,"matched_lines":14,"matches":14}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog_subprocess.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog_subprocess.py"},"lines":{"text":"    child = Path(__file__).parent / \"fixtures\" / \"exit_watchdog_child.py\"\n"},"line_number":14,"absolute_offset":217,"submatches":[{"match":{"text":"exit_watchdog"},"start":50,"end":63}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog_subprocess.py"},"lines":{"text":"    child = Path(__file__).parent / \"fixtures\" / \"exit_watchdog_child.py\"\n"},"line_number":34,"absolute_offset":753,"submatches":[{"match":{"text":"exit_watchdog"},"start":50,"end":63}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog_subprocess.py"},"lines":{"text":"    child = Path(__file__).parent / \"fixtures\" / \"exit_watchdog_child.py\"\n"},"line_number":58,"absolute_offset":1613,"submatches":[{"match":{"text":"exit_watchdog"},"start":50,"end":63}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_exit_watchdog_subprocess.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":22039,"human":"0.000022s"},"searches":1,"searches_with_match":1,"bytes_searched":2557,"bytes_printed":1145,"matched_lines":3,"matches":3}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_startup_profile.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_startup_profile.py"},"lines":{"text":"            patch.object(main_module, \"ExitWatchdog\", return_value=MagicMock()) as watchdog_cls,\n"},"line_number":498,"absolute_offset":19696,"submatches":[{"match":{"text":"ExitWatchdog"},"start":39,"end":51}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_startup_profile.py"},"lines":{"text":"        self.assertIs(call_kwargs[\"exit_watchdog\"], watchdog_cls.return_value)\n"},"line_number":518,"absolute_offset":20850,"submatches":[{"match":{"text":"exit_watchdog"},"start":35,"end":48}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/tests/test_startup_profile.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":32683,"human":"0.000033s"},"searches":1,"searches_with_match":1,"bytes_searched":21056,"bytes_printed":808,"matched_lines":2,"matches":2}}}
{"type":"begin","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/print_mode.py"}}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/print_mode.py"},"lines":{"text":"    from comate_cli.terminal_agent.exit_watchdog import ExitWatchdog\n"},"line_number":17,"absolute_offset":376,"submatches":[{"match":{"text":"exit_watchdog"},"start":35,"end":48},{"match":{"text":"ExitWatchdog"},"start":56,"end":68}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/print_mode.py"},"lines":{"text":"    exit_watchdog: \"ExitWatchdog | None\" = None,\n"},"line_number":198,"absolute_offset":6044,"submatches":[{"match":{"text":"exit_watchdog"},"start":4,"end":17},{"match":{"text":"ExitWatchdog"},"start":20,"end":32}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/print_mode.py"},"lines":{"text":"                if exit_watchdog is not None:\n"},"line_number":258,"absolute_offset":8404,"submatches":[{"match":{"text":"exit_watchdog"},"start":19,"end":32}]}}
{"type":"match","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/print_mode.py"},"lines":{"text":"                    exit_watchdog.arm()\n"},"line_number":259,"absolute_offset":8450,"submatches":[{"match":{"text":"exit_watchdog"},"start":20,"end":33}]}}
{"type":"end","data":{"path":{"text":"/home/andy/works/agent-sdk/packages/comate_cli/comate_cli/terminal_agent/print_mode.py"},"binary_offset":null,"stats":{"elapsed":{"secs":0,"nanos":27490,"human":"0.000027s"},"searches":1,"searches_with_match":1,"bytes_searched":8932,"bytes_printed":1494,"matched_lines":4,"matches":6}}}
{"data":{"elapsed_total":{"human":"0.033332s","nanos":33331974,"secs":0},"stats":{"bytes_printed":26488,"bytes_searched":218953,"elapsed":{"human":"0.000598s","nanos":597947,"secs":0},"matched_lines":76,"matches":98,"searches":13,"searches_with_match":13}},"type":"summary"}
