AFT requires an doctor --fix to fix aft binary missing issue, seemingly after every update?
[2026-08-17T07:58:34.879Z] INFO [aft-pi] Process exited during shutdown
[2026-08-17T08:03:38.457Z] INFO [aft-pi] Process exited during shutdown
[2026-08-17T08:06:27.976Z] INFO [aft-pi] Process exited during shutdown
[2026-08-17T08:15:05.651Z] INFO [aft-pi] Process exited during shutdown
[2026-08-17T12:26:20.726Z] INFO [aft-pi] [01a00e7b-e509-76ce-a527-9630d40797e0] Spawning binary: ~/.cache/aft/bin/v0.50.2/aft (cwd: <PROJECT>/Downloads/新資料夾)
[2026-08-17T12:26:20.729Z] INFO [aft-pi] bridge.spawnProcess: useFastembedBackend=true, parentORT=(unset), ortLibraryPath=(none)
[2026-08-17T12:26:21.469Z] INFO [aft-pi] [01a00e7b-e509-76ce-a527-9630d40797e0] hashline registration carrier transport=ndjson phase=configure edit_slot_survives=false
[2026-08-17T12:26:21.501Z] INFO [aft-pi] [aft] 2026-08-17T12:26:20Z [aft] log retention sweep: removed_files=0 bytes_freed=0
[2026-08-17T12:26:21.501Z] INFO [aft-pi] [aft] 2026-08-17T12:26:20Z [aft] started, pid 3383
[2026-08-17T12:26:21.501Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] project root set: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:26:21.596Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-03e41427b48efc75: background task layout not found
[2026-08-17T12:26:21.597Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-ba1753c17a5aa584: background task layout not found
[2026-08-17T12:26:21.597Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-e777d05c100c4c32: background task layout not found
[2026-08-17T12:26:21.597Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-8af1ce552845326e: background task layout not found
[2026-08-17T12:26:21.597Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-693d87ea5650e865: background task layout not found
[2026-08-17T12:26:21.597Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-2dfaab75e115c308: background task layout not found
[2026-08-17T12:26:21.597Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-c25036b2e6d345c9: background task layout not found
[2026-08-17T12:26:21.598Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-632aae4b59ca3ced: background task layout not found
[2026-08-17T12:26:21.598Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-fb119d399fe2e651: background task layout not found
[2026-08-17T12:26:21.598Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-f985656c0bb73245: background task layout not found
[2026-08-17T12:26:21.598Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-e507099762f6d12a: background task layout not found
[2026-08-17T12:26:21.598Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-21953076f1f869e2: background task layout not found
[2026-08-17T12:26:21.598Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-c35128c654a08e83: background task layout not found
[2026-08-17T12:26:21.599Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-1ed02be5f46f992d: background task layout not found
[2026-08-17T12:26:21.599Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-35c2193d09b4311a: background task layout not found
[2026-08-17T12:26:21.599Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-2ab229d5256a61d3: background task layout not found
[2026-08-17T12:26:21.599Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-970b81ea05afbe69: background task layout not found
[2026-08-17T12:26:21.599Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-8724df74b11a1361: background task layout not found
[2026-08-17T12:26:21.599Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-bea4d6f64f488bd4: background task layout not found
[2026-08-17T12:26:21.600Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-cda4ad961a4cd905: background task layout not found
[2026-08-17T12:26:21.600Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-0ccd3cf4edbf25ff: background task layout not found
[2026-08-17T12:26:21.600Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] quarantining unresolved background task bash-6a0f651ad7325b4f: background task layout not found
[2026-08-17T12:26:21.621Z] INFO [aft-pi] [aft] 2026-08-17T12:26:21Z [aft] watcher started: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:26:21.642Z] INFO [aft-pi] Binary version: 0.50.2
[2026-08-17T12:27:21.126Z] INFO [aft-pi] [aft] 2026-08-17T12:27:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=4 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:27:27.054Z] INFO [aft-pi] [aft] 2026-08-17T12:27:27Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] invalidated 2 files
[2026-08-17T12:27:42.315Z] INFO [aft-pi] [aft] 2026-08-17T12:27:42Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] invalidated 1 files
[2026-08-17T12:28:08.718Z] INFO [aft-pi] [aft] 2026-08-17T12:28:08Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] bash_wait_detach: session=01a00e7b-e509-76ce-a527-9630d40797e0 detached=false active_wait_sessions=0
[2026-08-17T12:28:19.256Z] INFO [aft-pi] [01a00e7b-e509-76ce-a527-9630d40797e0] hashline registration carrier transport=ndjson phase=tool_call edit_slot_survives=false
[2026-08-17T12:28:21.272Z] INFO [aft-pi] [aft] 2026-08-17T12:28:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] perf tick: watcher={ingested:2,paths:3,dropped:0} drains=7 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:29:16.207Z] INFO [aft-pi] [aft] 2026-08-17T12:29:16Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] invalidated 1 files
[2026-08-17T12:29:21.461Z] INFO [aft-pi] [aft] 2026-08-17T12:29:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] perf tick: watcher={ingested:1,paths:1,dropped:0} drains=14 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=1 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:29:42.286Z] INFO [aft-pi] [aft] 2026-08-17T12:29:42Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] bash_wait_detach: session=01a00e7b-e509-76ce-a527-9630d40797e0 detached=false active_wait_sessions=0
[2026-08-17T12:30:21.670Z] INFO [aft-pi] [aft] 2026-08-17T12:30:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=102 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:31:21.784Z] INFO [aft-pi] [aft] 2026-08-17T12:31:21Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=4 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:35:53.645Z] INFO [aft-pi] [aft] 2026-08-17T12:35:53Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] bash_wait_detach: session=01a00e7b-e509-76ce-a527-9630d40797e0 detached=false active_wait_sessions=0
[2026-08-17T12:36:22.106Z] INFO [aft-pi] [aft] 2026-08-17T12:36:22Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=4 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:36:54.642Z] INFO [aft-pi] [aft] 2026-08-17T12:36:54Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] bash_wait_detach: session=01a00e7b-e509-76ce-a527-9630d40797e0 detached=false active_wait_sessions=0
[2026-08-17T12:37:22.155Z] INFO [aft-pi] [aft] 2026-08-17T12:37:22Z [aft] [ses_01a00e7b-e509-76ce-a527-9630d40797e0] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=2 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:38:53.285Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:38:53.288Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:38:53.288Z] INFO [aft-pi] AFT extension loading (plugin v0.50.2)
[2026-08-17T12:38:53.301Z] INFO [aft-pi] Resolved binary: ~/.cache/aft/bin/v0.50.2/aft
[2026-08-17T12:38:53.302Z] INFO [aft-pi] AFT storage migration skipped for pi: no legacy data at ~/.pi/agent/aft; using ~/.local/share/cortexkit/aft for fresh install
[2026-08-17T12:38:53.303Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:38:53.332Z] INFO [aft-pi] Workflow hints injected (3827 chars)
[2026-08-17T12:38:53.333Z] INFO [aft-pi] AFT extension ready (surface=recommended)
[2026-08-17T12:38:53.335Z] INFO [aft-pi] Spawning binary: ~/.cache/aft/bin/v0.50.2/aft (cwd: <PROJECT>/Downloads/新資料夾)
[2026-08-17T12:38:53.335Z] INFO [aft-pi] bridge.spawnProcess: useFastembedBackend=true, parentORT=(unset), ortLibraryPath=(none)
[2026-08-17T12:38:53.484Z] INFO [aft-pi] hashline registration carrier transport=ndjson phase=configure edit_slot_survives=false
[2026-08-17T12:38:53.565Z] INFO [aft-pi] [aft] 2026-08-17T12:38:53Z [aft] log retention sweep: removed_files=0 bytes_freed=0
[2026-08-17T12:38:53.565Z] INFO [aft-pi] [aft] 2026-08-17T12:38:53Z [aft] started, pid 208
[2026-08-17T12:38:53.565Z] INFO [aft-pi] [aft] 2026-08-17T12:38:53Z [aft] project root set: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:38:53.565Z] INFO [aft-pi] [aft] 2026-08-17T12:38:53Z [aft] watcher started: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:38:53.565Z] INFO [aft-pi] Binary version: 0.50.2
[2026-08-17T12:39:09.822Z] INFO [aft-pi] [aft] 2026-08-17T12:39:09Z [aft] [ses_01a00fbb-4357-708d-80b8-f020c94bf65d] bash_wait_detach: session=01a00fbb-4357-708d-80b8-f020c94bf65d detached=false active_wait_sessions=0
[2026-08-17T12:39:53.522Z] INFO [aft-pi] [aft] 2026-08-17T12:39:53Z [aft] [ses_01a00fbb-4357-708d-80b8-f020c94bf65d] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=4 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:40:08.806Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:40:08.808Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:40:08.808Z] INFO [aft-pi] AFT extension loading (plugin v0.50.2)
[2026-08-17T12:40:08.817Z] INFO [aft-pi] Resolved binary: ~/.cache/aft/bin/v0.50.2/aft
[2026-08-17T12:40:08.817Z] INFO [aft-pi] AFT storage migration skipped for pi: no legacy data at ~/.pi/agent/aft; using ~/.local/share/cortexkit/aft for fresh install
[2026-08-17T12:40:08.818Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:40:08.835Z] INFO [aft-pi] Workflow hints injected (3827 chars)
[2026-08-17T12:40:08.835Z] INFO [aft-pi] AFT extension ready (surface=recommended)
[2026-08-17T12:40:08.837Z] INFO [aft-pi] Spawning binary: ~/.cache/aft/bin/v0.50.2/aft (cwd: <PROJECT>/Downloads/新資料夾)
[2026-08-17T12:40:08.837Z] INFO [aft-pi] bridge.spawnProcess: useFastembedBackend=true, parentORT=(unset), ortLibraryPath=(none)
[2026-08-17T12:40:08.970Z] INFO [aft-pi] hashline registration carrier transport=ndjson phase=configure edit_slot_survives=false
[2026-08-17T12:40:08.999Z] INFO [aft-pi] [aft] 2026-08-17T12:40:08Z [aft] log retention sweep: removed_files=0 bytes_freed=0
[2026-08-17T12:40:08.999Z] INFO [aft-pi] [aft] 2026-08-17T12:40:08Z [aft] started, pid 380
[2026-08-17T12:40:08.999Z] INFO [aft-pi] [aft] 2026-08-17T12:40:08Z [aft] project root set: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:40:09.027Z] INFO [aft-pi] [aft] 2026-08-17T12:40:09Z [aft] watcher started: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:40:09.082Z] INFO [aft-pi] Binary version: 0.50.2
[2026-08-17T12:40:27.508Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:40:27.509Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:40:27.510Z] INFO [aft-pi] AFT extension loading (plugin v0.50.2)
[2026-08-17T12:40:27.519Z] INFO [aft-pi] Resolved binary: ~/.cache/aft/bin/v0.50.2/aft
[2026-08-17T12:40:27.519Z] INFO [aft-pi] AFT storage migration skipped for pi: no legacy data at ~/.pi/agent/aft; using ~/.local/share/cortexkit/aft for fresh install
[2026-08-17T12:40:27.520Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:40:27.538Z] INFO [aft-pi] Workflow hints injected (3827 chars)
[2026-08-17T12:40:27.538Z] INFO [aft-pi] AFT extension ready (surface=recommended)
[2026-08-17T12:40:27.541Z] INFO [aft-pi] Spawning binary: ~/.cache/aft/bin/v0.50.2/aft (cwd: <PROJECT>/Downloads/新資料夾)
[2026-08-17T12:40:27.541Z] INFO [aft-pi] bridge.spawnProcess: useFastembedBackend=true, parentORT=(unset), ortLibraryPath=(none)
[2026-08-17T12:40:27.650Z] INFO [aft-pi] hashline registration carrier transport=ndjson phase=configure edit_slot_survives=false
[2026-08-17T12:40:27.690Z] INFO [aft-pi] [aft] 2026-08-17T12:40:27Z [aft] log retention sweep: removed_files=0 bytes_freed=0
[2026-08-17T12:40:27.690Z] INFO [aft-pi] [aft] 2026-08-17T12:40:27Z [aft] started, pid 504
[2026-08-17T12:40:27.690Z] INFO [aft-pi] [aft] 2026-08-17T12:40:27Z [aft] project root set: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:40:27.690Z] INFO [aft-pi] [aft] 2026-08-17T12:40:27Z [aft] watcher started: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:40:27.719Z] INFO [aft-pi] Binary version: 0.50.2
[2026-08-17T12:40:30.236Z] INFO [aft-pi] [aft] 2026-08-17T12:40:30Z [aft] [ses_01a00fbc-c8c4-72d1-8111-819d6ab5d371] bash_wait_detach: session=01a00fbc-c8c4-72d1-8111-819d6ab5d371 detached=false active_wait_sessions=0
[2026-08-17T12:41:27.727Z] INFO [aft-pi] [aft] 2026-08-17T12:41:27Z [aft] [ses_01a00fbc-c8c4-72d1-8111-819d6ab5d371] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=4 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:44:27.953Z] INFO [aft-pi] [aft] 2026-08-17T12:44:27Z [aft] [ses_01a00fbc-c8c4-72d1-8111-819d6ab5d371] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=2 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:45:35.018Z] INFO [aft-pi] [01a00fbc-c8c4-72d1-8111-819d6ab5d371] hashline registration carrier transport=ndjson phase=tool_call edit_slot_survives=false
[2026-08-17T12:45:35.329Z] INFO [aft-pi] [aft] 2026-08-17T12:45:35Z [aft] [ses_01a00fbc-c8c4-72d1-8111-819d6ab5d371] invalidated 1 files
[2026-08-17T12:45:48.347Z] INFO [aft-pi] [aft] 2026-08-17T12:45:48Z [aft] [ses_01a00fbc-c8c4-72d1-8111-819d6ab5d371] invalidated 2 files
[2026-08-17T12:46:28.126Z] INFO [aft-pi] [aft] 2026-08-17T12:46:28Z [aft] [ses_01a00fbc-c8c4-72d1-8111-819d6ab5d371] perf tick: watcher={ingested:2,paths:3,dropped:0} drains=2 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=1 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:46:54.466Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:46:54.468Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:46:54.468Z] INFO [aft-pi] AFT extension loading (plugin v0.50.2)
[2026-08-17T12:46:54.479Z] INFO [aft-pi] Resolved binary: ~/.cache/aft/bin/v0.50.2/aft
[2026-08-17T12:46:54.480Z] INFO [aft-pi] AFT storage migration skipped for pi: no legacy data at ~/.pi/agent/aft; using ~/.local/share/cortexkit/aft for fresh install
[2026-08-17T12:46:54.481Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:46:54.500Z] INFO [aft-pi] Workflow hints injected (3827 chars)
[2026-08-17T12:46:54.500Z] INFO [aft-pi] AFT extension ready (surface=recommended)
[2026-08-17T12:46:54.503Z] INFO [aft-pi] Spawning binary: ~/.cache/aft/bin/v0.50.2/aft (cwd: <PROJECT>/Downloads/新資料夾)
[2026-08-17T12:46:54.503Z] INFO [aft-pi] bridge.spawnProcess: useFastembedBackend=true, parentORT=(unset), ortLibraryPath=(none)
[2026-08-17T12:46:54.639Z] INFO [aft-pi] hashline registration carrier transport=ndjson phase=configure edit_slot_survives=false
[2026-08-17T12:46:54.671Z] INFO [aft-pi] [aft] 2026-08-17T12:46:54Z [aft] log retention sweep: removed_files=0 bytes_freed=0
[2026-08-17T12:46:54.671Z] INFO [aft-pi] [aft] 2026-08-17T12:46:54Z [aft] started, pid 693
[2026-08-17T12:46:54.671Z] INFO [aft-pi] [aft] 2026-08-17T12:46:54Z [aft] project root set: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:46:54.758Z] INFO [aft-pi] [aft] 2026-08-17T12:46:54Z [aft] watcher started: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:46:54.873Z] INFO [aft-pi] Binary version: 0.50.2
[2026-08-17T12:47:29.497Z] INFO [aft-pi] [aft] 2026-08-17T12:47:29Z [aft] [ses_01a00fc2-ac9c-7aa6-b3f0-b8a667f11a6c] bash_wait_detach: session=01a00fc2-ac9c-7aa6-b3f0-b8a667f11a6c detached=false active_wait_sessions=0
[2026-08-17T12:47:30.005Z] INFO [aft-pi] [aft] 2026-08-17T12:47:30Z [aft] [ses_01a00fc2-ac9c-7aa6-b3f0-b8a667f11a6c] invalidated 2 files
[2026-08-17T12:47:54.771Z] INFO [aft-pi] [aft] 2026-08-17T12:47:54Z [aft] [ses_01a00fc2-ac9c-7aa6-b3f0-b8a667f11a6c] perf tick: watcher={ingested:1,paths:2,dropped:0} drains=5 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:48:29.346Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:48:29.350Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:48:29.350Z] INFO [aft-pi] AFT extension loading (plugin v0.50.2)
[2026-08-17T12:48:29.360Z] INFO [aft-pi] Resolved binary: ~/.cache/aft/bin/v0.50.2/aft
[2026-08-17T12:48:29.360Z] INFO [aft-pi] AFT storage migration skipped for pi: no legacy data at ~/.pi/agent/aft; using ~/.local/share/cortexkit/aft for fresh install
[2026-08-17T12:48:29.362Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:48:29.387Z] INFO [aft-pi] Workflow hints injected (3827 chars)
[2026-08-17T12:48:29.387Z] INFO [aft-pi] AFT extension ready (surface=recommended)
[2026-08-17T12:48:29.389Z] INFO [aft-pi] Spawning binary: ~/.cache/aft/bin/v0.50.2/aft (cwd: <PROJECT>/Downloads/新資料夾)
[2026-08-17T12:48:29.389Z] INFO [aft-pi] bridge.spawnProcess: useFastembedBackend=true, parentORT=(unset), ortLibraryPath=(none)
[2026-08-17T12:48:29.505Z] INFO [aft-pi] hashline registration carrier transport=ndjson phase=configure edit_slot_survives=false
[2026-08-17T12:48:29.539Z] INFO [aft-pi] [aft] 2026-08-17T12:48:29Z [aft] log retention sweep: removed_files=0 bytes_freed=0
[2026-08-17T12:48:29.539Z] INFO [aft-pi] [aft] 2026-08-17T12:48:29Z [aft] started, pid 830
[2026-08-17T12:48:29.539Z] INFO [aft-pi] [aft] 2026-08-17T12:48:29Z [aft] project root set: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:48:29.572Z] INFO [aft-pi] [aft] 2026-08-17T12:48:29Z [aft] watcher started: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:48:29.637Z] INFO [aft-pi] Binary version: 0.50.2
[2026-08-17T12:48:40.688Z] INFO [aft-pi] [aft] 2026-08-17T12:48:40Z [aft] [ses_01a00fc4-1ea2-7ffc-b494-1510c315b769] bash_wait_detach: session=01a00fc4-1ea2-7ffc-b494-1510c315b769 detached=false active_wait_sessions=0
[2026-08-17T12:48:50.954Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:48:50.957Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:48:50.957Z] INFO [aft-pi] AFT extension loading (plugin v0.50.2)
[2026-08-17T12:48:50.966Z] INFO [aft-pi] Resolved binary: ~/.cache/aft/bin/v0.50.2/aft
[2026-08-17T12:48:50.967Z] INFO [aft-pi] AFT storage migration skipped for pi: no legacy data at ~/.pi/agent/aft; using ~/.local/share/cortexkit/aft for fresh install
[2026-08-17T12:48:50.968Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:48:50.993Z] INFO [aft-pi] Workflow hints injected (3827 chars)
[2026-08-17T12:48:50.993Z] INFO [aft-pi] AFT extension ready (surface=recommended)
[2026-08-17T12:48:50.996Z] INFO [aft-pi] Spawning binary: ~/.cache/aft/bin/v0.50.2/aft (cwd: <PROJECT>/Downloads/新資料夾)
[2026-08-17T12:48:50.996Z] INFO [aft-pi] bridge.spawnProcess: useFastembedBackend=true, parentORT=(unset), ortLibraryPath=(none)
[2026-08-17T12:48:51.111Z] INFO [aft-pi] hashline registration carrier transport=ndjson phase=configure edit_slot_survives=false
[2026-08-17T12:48:51.145Z] INFO [aft-pi] [aft] 2026-08-17T12:48:51Z [aft] log retention sweep: removed_files=0 bytes_freed=0
[2026-08-17T12:48:51.145Z] INFO [aft-pi] [aft] 2026-08-17T12:48:51Z [aft] started, pid 954
[2026-08-17T12:48:51.145Z] INFO [aft-pi] [aft] 2026-08-17T12:48:51Z [aft] project root set: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:48:51.234Z] INFO [aft-pi] [aft] 2026-08-17T12:48:51Z [aft] watcher started: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:48:51.235Z] INFO [aft-pi] Binary version: 0.50.2
[2026-08-17T12:48:52.700Z] INFO [aft-pi] [aft] 2026-08-17T12:48:52Z [aft] [ses_01a00fc4-76fd-7101-9588-c2167c7e8556] bash_wait_detach: session=01a00fc4-76fd-7101-9588-c2167c7e8556 detached=false active_wait_sessions=0
[2026-08-17T12:49:12.066Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:49:12.070Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:49:12.070Z] INFO [aft-pi] AFT extension loading (plugin v0.50.2)
[2026-08-17T12:49:12.078Z] INFO [aft-pi] Resolved binary: ~/.cache/aft/bin/v0.50.2/aft
[2026-08-17T12:49:12.079Z] INFO [aft-pi] AFT storage migration skipped for pi: no legacy data at ~/.pi/agent/aft; using ~/.local/share/cortexkit/aft for fresh install
[2026-08-17T12:49:12.080Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T12:49:12.104Z] INFO [aft-pi] Workflow hints injected (3827 chars)
[2026-08-17T12:49:12.104Z] INFO [aft-pi] AFT extension ready (surface=recommended)
[2026-08-17T12:49:12.106Z] INFO [aft-pi] Spawning binary: ~/.cache/aft/bin/v0.50.2/aft (cwd: <PROJECT>/Downloads/新資料夾)
[2026-08-17T12:49:12.106Z] INFO [aft-pi] bridge.spawnProcess: useFastembedBackend=true, parentORT=(unset), ortLibraryPath=(none)
[2026-08-17T12:49:12.218Z] INFO [aft-pi] hashline registration carrier transport=ndjson phase=configure edit_slot_survives=false
[2026-08-17T12:49:12.251Z] INFO [aft-pi] [aft] 2026-08-17T12:49:12Z [aft] log retention sweep: removed_files=0 bytes_freed=0
[2026-08-17T12:49:12.251Z] INFO [aft-pi] [aft] 2026-08-17T12:49:12Z [aft] started, pid 1078
[2026-08-17T12:49:12.251Z] INFO [aft-pi] [aft] 2026-08-17T12:49:12Z [aft] project root set: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:49:12.349Z] INFO [aft-pi] [aft] 2026-08-17T12:49:12Z [aft] watcher started: <PROJECT>/Downloads/新資料夾
[2026-08-17T12:49:12.349Z] INFO [aft-pi] Binary version: 0.50.2
[2026-08-17T12:49:19.336Z] INFO [aft-pi] [aft] 2026-08-17T12:49:19Z [aft] [ses_01a00fc4-c9bd-7271-b43b-8905a3fd6fb9] bash_wait_detach: session=01a00fc4-c9bd-7271-b43b-8905a3fd6fb9 detached=false active_wait_sessions=0
[2026-08-17T12:49:27.885Z] INFO [aft-pi] [aft] 2026-08-17T12:49:27Z [aft] [ses_01a00fc4-c9bd-7271-b43b-8905a3fd6fb9] bash_wait_detach: session=01a00fc4-c9bd-7271-b43b-8905a3fd6fb9 detached=false active_wait_sessions=0
[2026-08-17T12:49:59.801Z] INFO [aft-pi] [aft] 2026-08-17T12:49:59Z [aft] [ses_01a00fc4-c9bd-7271-b43b-8905a3fd6fb9] bash_wait_detach: session=01a00fc4-c9bd-7271-b43b-8905a3fd6fb9 detached=false active_wait_sessions=0
[2026-08-17T12:50:12.230Z] INFO [aft-pi] [aft] 2026-08-17T12:50:12Z [aft] [ses_01a00fc4-c9bd-7271-b43b-8905a3fd6fb9] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=8 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:50:19.266Z] INFO [aft-pi] [aft] 2026-08-17T12:50:19Z [aft] [ses_01a00fc4-c9bd-7271-b43b-8905a3fd6fb9] bash_wait_detach: session=01a00fc4-c9bd-7271-b43b-8905a3fd6fb9 detached=false active_wait_sessions=0
[2026-08-17T12:51:12.300Z] INFO [aft-pi] [aft] 2026-08-17T12:51:12Z [aft] [ses_01a00fc4-c9bd-7271-b43b-8905a3fd6fb9] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=1 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T12:54:44.397Z] INFO [aft-pi] [aft] 2026-08-17T12:54:44Z [aft] [ses_01a00fc4-c9bd-7271-b43b-8905a3fd6fb9] invalidated 1 files
[2026-08-17T12:55:12.473Z] INFO [aft-pi] [aft] 2026-08-17T12:55:12Z [aft] [ses_01a00fc4-c9bd-7271-b43b-8905a3fd6fb9] perf tick: watcher={ingested:1,paths:1,dropped:0} drains=4 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=1 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
[2026-08-17T13:17:13.468Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T13:17:13.471Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T13:17:13.471Z] INFO [aft-pi] AFT extension loading (plugin v0.50.2)
[2026-08-17T13:17:13.487Z] INFO [aft-pi] Resolved binary: ~/.cache/aft/bin/v0.50.2/aft
[2026-08-17T13:17:13.488Z] INFO [aft-pi] AFT storage migration skipped for pi: no legacy data at ~/.pi/agent/aft; using ~/.local/share/cortexkit/aft for fresh install
[2026-08-17T13:17:13.489Z] INFO [aft-pi] Config loaded from ~/.config/cortexkit/aft.jsonc
[2026-08-17T13:17:13.521Z] INFO [aft-pi] Workflow hints injected (3827 chars)
[2026-08-17T13:17:13.521Z] INFO [aft-pi] AFT extension ready (surface=recommended)
[2026-08-17T13:17:13.524Z] INFO [aft-pi] Spawning binary: ~/.cache/aft/bin/v0.50.2/aft (cwd: <PROJECT>/Downloads/新資料夾)
[2026-08-17T13:17:13.524Z] INFO [aft-pi] bridge.spawnProcess: useFastembedBackend=true, parentORT=(unset), ortLibraryPath=(none)
[2026-08-17T13:17:13.748Z] INFO [aft-pi] hashline registration carrier transport=ndjson phase=configure edit_slot_survives=false
[2026-08-17T13:17:13.836Z] INFO [aft-pi] [aft] 2026-08-17T13:17:13Z [aft] log retention sweep: removed_files=0 bytes_freed=0
[2026-08-17T13:17:13.836Z] INFO [aft-pi] [aft] 2026-08-17T13:17:13Z [aft] started, pid 1060956
[2026-08-17T13:17:13.836Z] INFO [aft-pi] [aft] 2026-08-17T13:17:13Z [aft] project root set: <PROJECT>/Downloads/新資料夾
[2026-08-17T13:17:13.836Z] INFO [aft-pi] [aft] 2026-08-17T13:17:13Z [aft] watcher started: <PROJECT>/Downloads/新資料夾
[2026-08-17T13:17:13.836Z] INFO [aft-pi] Binary version: 0.50.2
[2026-08-17T13:18:13.879Z] INFO [aft-pi] [aft] 2026-08-17T13:18:13Z [aft] perf tick: watcher={ingested:0,paths:0,dropped:0} drains=3 tier2=[none] semantic={collects:0,files:0,chunks:0,ms:0} callgraph_invalidations=0 executor_completed={interactive:0,maintenance:0} oldest_queued_ms={interactive:none,maintenance:none} toolcall={new:0,window:0,p50_total_ms:0,max_total_ms:0,p50_queue_ms:0,max_queue_ms:0} file_log_dropped=0
Description
AFT requires an doctor --fix to fix aft binary missing issue, seemingly after every update?
Environment
Diagnostics
Pi
Config paths
{ "configDir": "~/.pi/agent", "harnessConfig": "~/.pi/agent/settings.json", "harnessConfigFormat": "json", "aftConfig": "~/.config/cortexkit/aft.jsonc", "aftConfigFormat": "jsonc" }AFT flags
{ "$schema": "https://raw.githubusercontent.com/cortexkit/aft/main/assets/aft.schema.json" }Plugin cache
{ "path": "~/.pi/agent/extensions", "exists": false }Storage
{ "path": "~/.local/share/cortexkit/aft", "exists": true, "accessible": true, "sizesByKey": { "index": 0, "semantic": 0, "backups": 0, "url_cache": 0, "onnxruntime": 0 } }ONNX Runtime
{ "required": false, "systemPath": null, "systemVersion": null, "systemCompatible": null, "ignoredSystemPath": null, "ignoredSystemReason": null, "cachedPath": null, "cachedVersion": null, "cachedCompatible": null, "platform": "linux-x64", "installHint": "AFT auto-downloads ONNX Runtime on supported Linux (glibc)", "requirement": ">=1.20" }Log file
~/.local/share/cortexkit/aft/logs/aft-plugin.log(4696 KB)Binary cache
{ "versions": [ "v0.49.4", "v0.50.1", "v0.50.2", "v0.51.1" ], "activeVersion": "v0.51.1", "totalSize": 324480248, "path": "~/.cache/aft/bin" }LSP cache
{ "npm": { "path": "~/.cache/aft/lsp-packages", "entries": [ { "name": "@biomejs/biome", "path": "~/.cache/aft/lsp-packages/%40biomejs%2Fbiome", "size": 66534254 }, { "name": "@vue/language-server", "path": "~/.cache/aft/lsp-packages/%40vue%2Flanguage-server", "size": 54115126 }, { "name": "svelte-language-server", "path": "~/.cache/aft/lsp-packages/svelte-language-server", "size": 52061036 }, { "name": "pyright", "path": "~/.cache/aft/lsp-packages/pyright", "size": 19286295 }, { "name": "yaml-language-server", "path": "~/.cache/aft/lsp-packages/yaml-language-server", "size": 19155804 }, { "name": "bash-language-server", "path": "~/.cache/aft/lsp-packages/bash-language-server", "size": 14518988 }, { "name": "typescript-language-server", "path": "~/.cache/aft/lsp-packages/typescript-language-server", "size": 3226474 }, { "name": "dockerfile-language-server-nodejs", "path": "~/.cache/aft/lsp-packages/dockerfile-language-server-nodejs", "size": 2464588 } ], "totalSize": 231362565 }, "github": { "path": "~/.cache/aft/lsp-binaries", "entries": [], "totalSize": 0 }, "totalSize": 231362565 }Recent errors (last 20, sanitized)
Recent AFT tool failures
Logs (last 200 lines per harness)
Pi log (~/.local/share/cortexkit/aft/logs/aft-plugin.log)
Usernames and home paths have been stripped from this report.