BASE — real T3 server schedule_task runtime capture Commit: ae49f4d2a7963590e7d6b67dbf98f549cb46f376 Environment: Linux x64; source server; fresh isolated database; deterministic ACP agent driver. Transport: actual authenticated thread-scoped MCP over HTTP; analytics captured by local HTTP batch recorder. Seeding: two synthetic git projects added by t3 project add; agent started in Project A by t3 thread start. All scheduled tasks disabled; interval 3600000ms. No tests, mocks, or telemetry-function calls. This text pairs actual MCP responses and recorded analytics in invocation order. Client identity fields distinct_id and installId are omitted from this public export. a cross-project create, binding omitted MCP arguments: {"enabled": false, "projectId": "52d450b5-6000-40e3-93b3-c510a4e9c726", "prompt": "Synthetic scheduled proof", "schedule": {"everyMs": 3600000, "type": "interval"}, "title": "Unbound task"} MCP response: {"content": [{"text": "{\"scheduledTaskId\":\"scheduled-task:2a175a49-5b08-48b4-9ede-5d3c755b1095\",\"title\":\"Unbound task\",\"prompt\":\"Synthetic scheduled proof\",\"enabled\":false,\"projectId\":\"52d450b5-6000-40e3-93b3-c510a4e9c726\",\"boundThreadId\":null,\"freshSession\":false,\"schedule\":{\"type\":\"interval\",\"everyMs\":3600000},\"nextRunAt\":null,\"lastRunStatus\":\"never\"}", "type": "text"}], "isError": false, "structuredContent": {"boundThreadId": null, "enabled": false, "freshSession": false, "lastRunStatus": "never", "nextRunAt": null, "projectId": "52d450b5-6000-40e3-93b3-c510a4e9c726", "prompt": "Synthetic scheduled proof", "schedule": {"everyMs": 3600000, "type": "interval"}, "scheduledTaskId": "scheduled-task:2a175a49-5b08-48b4-9ede-5d3c755b1095", "title": "Unbound task"}} Captured analytics event: {"event": "mcp.tool.invoked", "properties": {"$process_person_profile": false, "arch": "x64", "bindToCurrentThread": true, "callerDepth": 0, "callerOrigin": "agent", "callerProvider": "acpRegistry", "clientType": "cli-web-client", "durationMs": 38, "outcome": "ok", "platform": "linux", "serverAppVersion": "0.1.9", "serverArch": "x64", "serverMode": "web", "serverOs": "Linux", "t3CodeVersion": "0.1.9", "telemetryChannel": "dev", "tool": "schedule_task"}, "timestamp": "2026-11-14T11:48:50.510Z", "uuid": "01a1d9e3-8ace-762a-978e-a307cb44cefb"} b update, binding omitted MCP arguments: {"scheduledTaskId": "scheduled-task:2a175a49-5b08-48b4-9ede-5d3c755b1095", "title": "Updated unbound task"} MCP response: {"content": [{"text": "{\"scheduledTaskId\":\"scheduled-task:2a175a49-5b08-48b4-9ede-5d3c755b1095\",\"title\":\"Updated unbound task\",\"prompt\":\"Synthetic scheduled proof\",\"enabled\":false,\"projectId\":\"52d450b5-6000-40e3-93b3-c510a4e9c726\",\"boundThreadId\":null,\"freshSession\":false,\"schedule\":{\"type\":\"interval\",\"everyMs\":3600000},\"nextRunAt\":null,\"lastRunStatus\":\"never\"}", "type": "text"}], "isError": false, "structuredContent": {"boundThreadId": null, "enabled": false, "freshSession": false, "lastRunStatus": "never", "nextRunAt": null, "projectId": "52d450b5-6000-40e3-93b3-c510a4e9c726", "prompt": "Synthetic scheduled proof", "schedule": {"everyMs": 3600000, "type": "interval"}, "scheduledTaskId": "scheduled-task:2a175a49-5b08-48b4-9ede-5d3c755b1095", "title": "Updated unbound task"}} Captured analytics event: {"event": "mcp.tool.invoked", "properties": {"$process_person_profile": false, "arch": "x64", "bindToCurrentThread": true, "callerDepth": 0, "callerOrigin": "agent", "callerProvider": "acpRegistry", "clientType": "cli-web-client", "durationMs": 12, "outcome": "ok", "platform": "linux", "serverAppVersion": "0.1.9", "serverArch": "x64", "serverMode": "web", "serverOs": "Linux", "t3CodeVersion": "0.1.9", "telemetryChannel": "dev", "tool": "schedule_task"}, "timestamp": "2026-11-14T11:48:50.531Z", "uuid": "01a1d9e3-8ae3-71ba-b88d-5d16b3a50464"} c cross-project explicit true MCP arguments: {"bindToCurrentThread": true, "enabled": false, "projectId": "52d450b5-6000-40e3-93b3-c510a4e9c726", "prompt": "Synthetic scheduled proof", "schedule": {"everyMs": 3600000, "type": "interval"}} MCP response: {"content": [{"text": "{\"_tag\":\"OrchestratorMcpFailure\",\"code\":\"invalid_request\",\"message\":\"bindToCurrentThread binds to this thread, which belongs to a different project.\"}", "type": "text"}], "isError": true} Captured analytics event: {"event": "mcp.tool.invoked", "properties": {"$process_person_profile": false, "arch": "x64", "bindToCurrentThread": true, "callerDepth": 0, "callerOrigin": "agent", "callerProvider": "acpRegistry", "clientType": "cli-web-client", "durationMs": 11, "errorCode": "unknown", "outcome": "error", "platform": "linux", "serverAppVersion": "0.1.9", "serverArch": "x64", "serverMode": "web", "serverOs": "Linux", "t3CodeVersion": "0.1.9", "telemetryChannel": "dev", "tool": "schedule_task"}, "timestamp": "2026-11-14T11:48:50.539Z", "uuid": "01a1d9e3-8aeb-7506-9a9f-2ff5bed17117"} d same-project control, binding omitted MCP arguments: {"enabled": false, "prompt": "Synthetic scheduled proof", "schedule": {"everyMs": 3600000, "type": "interval"}, "title": "Bound control"} MCP response: {"content": [{"text": "{\"scheduledTaskId\":\"scheduled-task:c1c7769d-aed7-4811-bc88-21441ce128b0\",\"title\":\"Bound control\",\"prompt\":\"Synthetic scheduled proof\",\"enabled\":false,\"projectId\":\"56cedaff-6778-42dc-be2f-cf72ade445f1\",\"boundThreadId\":\"mcp:95f76845-8e70-4049-b17b-96092c9dbbb7\",\"freshSession\":false,\"schedule\":{\"type\":\"interval\",\"everyMs\":3600000},\"nextRunAt\":null,\"lastRunStatus\":\"never\"}", "type": "text"}], "isError": false, "structuredContent": {"boundThreadId": "mcp:95f76845-8e70-4049-b17b-96092c9dbbb7", "enabled": false, "freshSession": false, "lastRunStatus": "never", "nextRunAt": null, "projectId": "56cedaff-6778-42dc-be2f-cf72ade445f1", "prompt": "Synthetic scheduled proof", "schedule": {"everyMs": 3600000, "type": "interval"}, "scheduledTaskId": "scheduled-task:c1c7769d-aed7-4811-bc88-21441ce128b0", "title": "Bound control"}} Captured analytics event: {"event": "mcp.tool.invoked", "properties": {"$process_person_profile": false, "arch": "x64", "bindToCurrentThread": true, "callerDepth": 0, "callerOrigin": "agent", "callerProvider": "acpRegistry", "clientType": "cli-web-client", "durationMs": 9, "outcome": "ok", "platform": "linux", "serverAppVersion": "0.1.9", "serverArch": "x64", "serverMode": "web", "serverOs": "Linux", "t3CodeVersion": "0.1.9", "telemetryChannel": "dev", "tool": "schedule_task"}, "timestamp": "2026-11-14T11:48:50.553Z", "uuid": "01a1d9e3-8af9-71c9-bc50-985e50793f0e"} e failed explicit false MCP arguments: {"bindToCurrentThread": false, "enabled": false, "projectId": "missing-project-for-proof", "prompt": "Synthetic scheduled proof", "schedule": {"everyMs": 3600000, "type": "interval"}} MCP response: {"content": [{"text": "{\"_tag\":\"OrchestratorMcpFailure\",\"code\":\"invalid_request\",\"message\":\"Project missing-project-for-proof was not found.\"}", "type": "text"}], "isError": true} Captured analytics event: {"event": "mcp.tool.invoked", "properties": {"$process_person_profile": false, "arch": "x64", "bindToCurrentThread": false, "callerDepth": 0, "callerOrigin": "agent", "callerProvider": "acpRegistry", "clientType": "cli-web-client", "durationMs": 5, "errorCode": "unknown", "outcome": "error", "platform": "linux", "serverAppVersion": "0.1.9", "serverArch": "x64", "serverMode": "web", "serverOs": "Linux", "t3CodeVersion": "0.1.9", "telemetryChannel": "dev", "tool": "schedule_task"}, "timestamp": "2026-11-14T11:48:50.572Z", "uuid": "01a1d9e3-8b0c-7048-9f4b-bb5a04685259"} Persisted task rows (read-only query of this run database): {"enabled": 0, "thread_id": null, "thread_mode": "new_thread", "title": "Updated unbound task"} {"enabled": 0, "thread_id": "mcp:95f76845-8e70-4049-b17b-96092c9dbbb7", "thread_mode": "continue", "title": "Bound control"} Privacy check: no thread ID property and no saved bound thread ID value occurs in the five analytics events. Observed analytics bindings in call order: true, true, true, true, false