diff --git a/.daemon/logs/signet-2026-02-21.log b/.daemon/logs/signet-2026-02-21.log index 0e6114e62..fab46cbb6 100644 --- a/.daemon/logs/signet-2026-02-21.log +++ b/.daemon/logs/signet-2026-02-21.log @@ -975,3 +975,425 @@ {"timestamp":"2026-02-21T08:23:31.671Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code","project":"/home/nicholai/signet/signetai"}} {"timestamp":"2026-02-21T08:23:31.672Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":1}} {"timestamp":"2026-02-21T08:23:31.673Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} +{"timestamp":"2026-02-21T08:23:36.701Z","level":"info","category":"git","message":"Auto-committed","data":{"message":"2026-02-21T08-23-36_auto_memory/memories.db-wal","filesChanged":1}} +{"timestamp":"2026-02-21T08:26:08.089Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:08.089Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.089Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:08.089Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.089Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:08.089Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.089Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:08.090Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:08.092Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:08.093Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.096Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:08.096Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.099Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:08.099Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":1,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.102Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test","project":"/home/user/myproject"}} +{"timestamp":"2026-02-21T08:26:08.102Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.103Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:08.103Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:08.105Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:08.108Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:08.112Z","level":"info","category":"hooks","message":"User prompt submit","data":{"memoryCount":1,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:08.121Z","level":"info","category":"hooks","message":"User prompt submit","data":{"memoryCount":4,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:08.124Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"7740dbdf-69b0-4068-9885-a6507ef47764","type":"preference","pinned":false}} +{"timestamp":"2026-02-21T08:26:08.127Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"29ae9ba4-be00-4f36-a705-e1116a85836b","type":"rule","pinned":true}} +{"timestamp":"2026-02-21T08:26:08.130Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"b9a27f3d-b8fc-4d14-b419-c29163e766c0","type":"fact","pinned":false}} +{"timestamp":"2026-02-21T08:26:08.130Z","level":"error","category":"hooks","message":"Remember failed","error":{"name":"Error","message":"DbAccessor not initialised — call initDbAccessor() first","stack":"Error: DbAccessor not initialised — call initDbAccessor() first\n at getDbAccessor (/home/nicholai/signet/signetai/packages/daemon/src/db-accessor.ts:162:13)\n at handleRemember (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:918:3)\n at (/home/nicholai/signet/signetai/packages/daemon/test/hooks.test.ts:731:18)"}} +{"timestamp":"2026-02-21T08:26:12.992Z","level":"warn","category":"git","message":"Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:26:12.992Z","level":"warn","category":"git","message":"Periodic sync failed: Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:26:14.912Z","level":"warn","category":"hooks","message":"Failed to parse LLM output as JSON"} +{"timestamp":"2026-02-21T08:26:14.916Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"manual"}} +{"timestamp":"2026-02-21T08:26:14.919Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"scheduled"}} +{"timestamp":"2026-02-21T08:26:14.919Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"manual"}} +{"timestamp":"2026-02-21T08:26:14.920Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:14.920Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:14.920Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:14.920Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:14.920Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:14.920Z","level":"error","category":"hooks","message":"Failed to get project memories","error":{"name":"Error","message":"DbAccessor not initialised — call initDbAccessor() first","stack":"Error: DbAccessor not initialised — call initDbAccessor() first\n at getDbAccessor (/home/nicholai/signet/signetai/packages/daemon/src/db-accessor.ts:162:13)\n at getProjectMemories (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:297:16)\n at handleSessionStart (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:551:19)\n at (/home/nicholai/signet/signetai/packages/daemon/test/hooks.test.ts:980:18)"}} +{"timestamp":"2026-02-21T08:26:14.920Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:14.920Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:14.920Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:14.931Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:14.931Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":1,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:14.934Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:14.934Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:15.052Z","level":"info","category":"daemon","message":"Serving dashboard","data":{"path":"/home/nicholai/signet/signetai/packages/cli/dashboard/build"}} +{"timestamp":"2026-02-21T08:26:15.153Z","level":"warn","category":"pipeline","message":"Failed to parse extraction JSON","data":{"preview":"this is not valid json at all"}} +{"timestamp":"2026-02-21T08:26:15.154Z","level":"warn","category":"pipeline","message":"Extraction LLM call failed","data":{"error":"connection refused"}} +{"timestamp":"2026-02-21T08:26:15.165Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:15.176Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"ae12b8fc-5dd8-4729-b003-b1094fd0e993","memoryId":"mem-proc","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:15.365Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:15.367Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:15.378Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"9537ef72-aea7-4099-b456-efbd083df663","memoryId":"mem-hist","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:15.567Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:15.570Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:15.581Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"cf90f33d-a193-49d8-8cc0-f1cef6b99436","memoryId":"mem-payload","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:15.771Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:15.773Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:15.974Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:15.976Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:15.986Z","level":"warn","category":"pipeline","message":"Extraction LLM call failed","data":{"error":"LLM unavailable"}} +{"timestamp":"2026-02-21T08:26:15.986Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"634ddb68-21dc-45ee-b734-44397d85f5b1","memoryId":"mem-llm-err","facts":0,"entities":0,"proposals":0,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:16.177Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:16.179Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:16.230Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"f5243e85-8e97-4175-879e-e6c9f073eb82","memoryId":"mem-slow","facts":0,"entities":0,"proposals":0,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:16.230Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:16.232Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:16.232Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:16.234Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:16.245Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"5b33fea6-f14b-4391-a87f-f39674a3ec2e","memoryId":"mem-src-add","facts":1,"entities":1,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:16.485Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:16.488Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:16.498Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"869134ae-a402-431f-8fd9-08a5e9371eca","memoryId":"mem-src-add-no-emb","facts":1,"entities":1,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:16.737Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:16.739Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:16.750Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"3264469f-b409-47c7-90f3-fbf0f1ac0417","memoryId":"mem-src-dedupe-1","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:16.761Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"49e0a2a1-47b6-4774-bd2f-85eb665cf956","memoryId":"mem-src-dedupe-2","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":1,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:17.089Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:17.092Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:17.102Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"84b373df-128f-4f09-bb1d-b98ae94fba4e","memoryId":"mem-src-lowconf","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":1,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:17.342Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:17.345Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:17.355Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"9246fe4c-eaba-4dfe-b01d-90c6eaf32e28","memoryId":"mem-src-empty-normalized","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":1,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:17.594Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:17.597Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:17.608Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"c3919e4c-b394-473a-98e7-b890b6f8586e","memoryId":"mem-src-delete","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":1}} +{"timestamp":"2026-02-21T08:26:17.898Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:17.901Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:17.911Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"ae93115d-d915-46b7-9cc8-00a90b63c59f","memoryId":"mem-src-none","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:23.988Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:23.988Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.989Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:23.989Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.989Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:23.989Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.989Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:23.989Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.992Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:23.992Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.992Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:23.992Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.993Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:23.993Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.993Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:23.993Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.993Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:23.993Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.993Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:23.993Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.996Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:23.996Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:23.999Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:23.999Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":1,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:24.002Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test","project":"/home/user/myproject"}} +{"timestamp":"2026-02-21T08:26:24.003Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:24.003Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:24.003Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:24.006Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:24.009Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:24.012Z","level":"info","category":"hooks","message":"User prompt submit","data":{"memoryCount":1,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:24.023Z","level":"info","category":"hooks","message":"User prompt submit","data":{"memoryCount":4,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:24.026Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"0e2dd322-b565-4e0f-a120-a6bcc55f3a2f","type":"preference","pinned":false}} +{"timestamp":"2026-02-21T08:26:24.029Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"2a485e6a-d734-49d3-ada6-1048201444aa","type":"rule","pinned":true}} +{"timestamp":"2026-02-21T08:26:24.032Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"2fef0243-883b-473d-a273-ab410f2d3016","type":"fact","pinned":false}} +{"timestamp":"2026-02-21T08:26:24.032Z","level":"error","category":"hooks","message":"Remember failed","error":{"name":"Error","message":"DbAccessor not initialised — call initDbAccessor() first","stack":"Error: DbAccessor not initialised — call initDbAccessor() first\n at getDbAccessor (/home/nicholai/signet/signetai/packages/daemon/src/db-accessor.ts:162:13)\n at handleRemember (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:918:3)\n at (/home/nicholai/signet/signetai/packages/daemon/test/hooks.test.ts:731:18)"}} +{"timestamp":"2026-02-21T08:26:37.614Z","level":"warn","category":"hooks","message":"Failed to parse LLM output as JSON"} +{"timestamp":"2026-02-21T08:26:37.619Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"manual"}} +{"timestamp":"2026-02-21T08:26:37.621Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"scheduled"}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"manual"}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"error","category":"hooks","message":"Failed to get project memories","error":{"name":"Error","message":"DbAccessor not initialised — call initDbAccessor() first","stack":"Error: DbAccessor not initialised — call initDbAccessor() first\n at getDbAccessor (/home/nicholai/signet/signetai/packages/daemon/src/db-accessor.ts:162:13)\n at getProjectMemories (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:297:16)\n at handleSessionStart (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:551:19)\n at (/home/nicholai/signet/signetai/packages/daemon/test/hooks.test.ts:980:18)"}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:37.622Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:37.634Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:37.634Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":1,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:37.637Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:37.637Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:37.743Z","level":"info","category":"daemon","message":"Serving dashboard","data":{"path":"/home/nicholai/signet/signetai/packages/cli/dashboard/build"}} +{"timestamp":"2026-02-21T08:26:37.819Z","level":"warn","category":"pipeline","message":"Failed to parse extraction JSON","data":{"preview":"this is not valid json at all"}} +{"timestamp":"2026-02-21T08:26:37.819Z","level":"warn","category":"pipeline","message":"Extraction LLM call failed","data":{"error":"connection refused"}} +{"timestamp":"2026-02-21T08:26:37.830Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:37.841Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"51f882a0-e43b-45d4-94b5-b33d884b72ef","memoryId":"mem-proc","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:38.029Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:38.032Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:38.049Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"42473238-eb65-49ff-b0c2-a39d6662993b","memoryId":"mem-hist","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:38.231Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:38.233Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:38.244Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"4d795e5d-e55b-49ef-9b3f-0fea61245da6","memoryId":"mem-payload","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:38.434Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:38.436Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:38.637Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:38.640Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:38.650Z","level":"warn","category":"pipeline","message":"Extraction LLM call failed","data":{"error":"LLM unavailable"}} +{"timestamp":"2026-02-21T08:26:38.650Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"2477424e-5f21-4573-b6b9-dd32ea690e6c","memoryId":"mem-llm-err","facts":0,"entities":0,"proposals":0,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:38.840Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:38.843Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:38.894Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"76b03fae-db9b-4332-96ed-596ee29bae0d","memoryId":"mem-slow","facts":0,"entities":0,"proposals":0,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:38.894Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:38.897Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:38.898Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:38.900Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:38.912Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"4f81c2f4-d66b-4647-9659-73e0036122d0","memoryId":"mem-src-add","facts":1,"entities":1,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:39.151Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:39.153Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:39.164Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"6e17dfc1-d9d5-4a45-ac31-10afbaf37d39","memoryId":"mem-src-add-no-emb","facts":1,"entities":1,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:39.403Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:39.406Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:39.417Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"fb639b44-713f-4be5-9977-419b51d2991c","memoryId":"mem-src-dedupe-1","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:39.427Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"0df02717-f86c-4a50-87fe-8c1077ff76e4","memoryId":"mem-src-dedupe-2","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":1,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:39.756Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:39.758Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:39.769Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"e60b62e3-f185-4a5b-aad8-0012455b05dc","memoryId":"mem-src-lowconf","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":1,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:40.009Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:40.011Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:40.022Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"4b29e582-f95d-4759-bb9a-a1ebf6dfbced","memoryId":"mem-src-empty-normalized","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":1,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:40.261Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:40.264Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:40.274Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"7bbfde28-22b5-4eb8-87b3-bee8f598b96d","memoryId":"mem-src-delete","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":1}} +{"timestamp":"2026-02-21T08:26:40.565Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:40.567Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:40.578Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"fcf521d0-47fb-4e24-806b-1c4a408f0aa9","memoryId":"mem-src-none","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:40.868Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:40.870Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:40.881Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"1ac68e27-e80f-4796-8b99-c31824b43245","memoryId":"mem-src-frozen","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:47.037Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:47.037Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.037Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:47.037Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.038Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:47.038Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:47.038Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:47.038Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.041Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:47.041Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.041Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:47.041Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.042Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:47.042Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.042Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:26:47.042Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.042Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:47.042Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.042Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:47.042Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.046Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:47.046Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.049Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:47.049Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":1,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.052Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test","project":"/home/user/myproject"}} +{"timestamp":"2026-02-21T08:26:47.053Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:47.053Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:47.053Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:47.056Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:47.059Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:47.062Z","level":"info","category":"hooks","message":"User prompt submit","data":{"memoryCount":1,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:47.073Z","level":"info","category":"hooks","message":"User prompt submit","data":{"memoryCount":4,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:47.075Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"923e5def-d6bd-4502-ac1b-7f0472d407c3","type":"preference","pinned":false}} +{"timestamp":"2026-02-21T08:26:47.078Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"4db3540b-6eb1-479a-8c98-9d163e6edef2","type":"rule","pinned":true}} +{"timestamp":"2026-02-21T08:26:47.081Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"6bde6057-7e93-4cd7-ae7c-9f79e5d4c1b9","type":"fact","pinned":false}} +{"timestamp":"2026-02-21T08:26:47.082Z","level":"error","category":"hooks","message":"Remember failed","error":{"name":"Error","message":"DbAccessor not initialised — call initDbAccessor() first","stack":"Error: DbAccessor not initialised — call initDbAccessor() first\n at getDbAccessor (/home/nicholai/signet/signetai/packages/daemon/src/db-accessor.ts:162:13)\n at handleRemember (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:918:3)\n at (/home/nicholai/signet/signetai/packages/daemon/test/hooks.test.ts:731:18)"}} +{"timestamp":"2026-02-21T08:26:54.659Z","level":"warn","category":"hooks","message":"Failed to parse LLM output as JSON"} +{"timestamp":"2026-02-21T08:26:54.664Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"manual"}} +{"timestamp":"2026-02-21T08:26:54.667Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"scheduled"}} +{"timestamp":"2026-02-21T08:26:54.667Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"manual"}} +{"timestamp":"2026-02-21T08:26:54.667Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:54.667Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:54.667Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:54.667Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:54.667Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:54.668Z","level":"error","category":"hooks","message":"Failed to get project memories","error":{"name":"Error","message":"DbAccessor not initialised — call initDbAccessor() first","stack":"Error: DbAccessor not initialised — call initDbAccessor() first\n at getDbAccessor (/home/nicholai/signet/signetai/packages/daemon/src/db-accessor.ts:162:13)\n at getProjectMemories (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:297:16)\n at handleSessionStart (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:551:19)\n at (/home/nicholai/signet/signetai/packages/daemon/test/hooks.test.ts:980:18)"}} +{"timestamp":"2026-02-21T08:26:54.668Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:54.668Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:54.668Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:54.679Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:54.680Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":1,"durationMs":1}} +{"timestamp":"2026-02-21T08:26:54.683Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:26:54.683Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":0}} +{"timestamp":"2026-02-21T08:26:54.809Z","level":"info","category":"daemon","message":"Serving dashboard","data":{"path":"/home/nicholai/signet/signetai/packages/cli/dashboard/build"}} +{"timestamp":"2026-02-21T08:26:54.888Z","level":"warn","category":"pipeline","message":"Failed to parse extraction JSON","data":{"preview":"this is not valid json at all"}} +{"timestamp":"2026-02-21T08:26:54.889Z","level":"warn","category":"pipeline","message":"Extraction LLM call failed","data":{"error":"connection refused"}} +{"timestamp":"2026-02-21T08:26:54.900Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:54.912Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"23876614-e3e2-4cda-b370-4086909f8cee","memoryId":"mem-proc","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:55.100Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:55.102Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:55.113Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"108eb89b-a326-40d7-8eb4-eeb4aa592888","memoryId":"mem-hist","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:55.302Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:55.306Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:55.316Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"9c8821f5-7f14-4e12-9924-93fa8f8fbc29","memoryId":"mem-payload","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:55.506Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:55.508Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:55.709Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:55.711Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:55.721Z","level":"warn","category":"pipeline","message":"Extraction LLM call failed","data":{"error":"LLM unavailable"}} +{"timestamp":"2026-02-21T08:26:55.722Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"e4a9636f-486d-4294-81b9-eade421106b6","memoryId":"mem-llm-err","facts":0,"entities":0,"proposals":0,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:55.911Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:55.913Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:55.964Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"fa9b49f6-54ae-4bcf-a292-5b3fc8e54e9b","memoryId":"mem-slow","facts":0,"entities":0,"proposals":0,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:55.964Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:55.966Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:55.966Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:55.968Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:55.980Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"fdc66763-cd14-4def-bef1-afc4c423ea1d","memoryId":"mem-src-add","facts":1,"entities":1,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:56.219Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:56.221Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:56.232Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"39a640e1-bdad-4881-b3a6-9822cf16ce89","memoryId":"mem-src-add-no-emb","facts":1,"entities":1,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:56.472Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:56.474Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:56.485Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"aa4165f3-6e2e-4c1a-b0f7-81404d707cd9","memoryId":"mem-src-dedupe-1","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:56.496Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"c93bbebc-94ef-4065-b388-b87d5cde7b9d","memoryId":"mem-src-dedupe-2","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":1,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:56.824Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:56.826Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:56.837Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"98bb559d-8551-4a20-84da-28b8a9dec922","memoryId":"mem-src-lowconf","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":1,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:57.077Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:57.079Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:57.090Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"490c0138-7519-4a2b-b3e9-ca58fa67c1ac","memoryId":"mem-src-empty-normalized","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":1,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:57.330Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:57.332Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:57.343Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"46108bc7-38a4-48a2-bcc9-fc72f2c398c6","memoryId":"mem-src-delete","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":1}} +{"timestamp":"2026-02-21T08:26:57.632Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:57.634Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:26:57.645Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"b137ceeb-9b17-43e7-827b-9e0df520c031","memoryId":"mem-src-none","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:26:57.934Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:26:57.936Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:26:57.947Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"8eacc130-b19c-41db-ba09-ed03038c8d12","memoryId":"mem-src-frozen","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:31:12.993Z","level":"warn","category":"git","message":"Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:31:12.993Z","level":"warn","category":"git","message":"Periodic sync failed: Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:36:13.016Z","level":"warn","category":"git","message":"Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:36:13.016Z","level":"warn","category":"git","message":"Periodic sync failed: Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:39:35.749Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:39:35.749Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.749Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:35.749Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.749Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:39:35.749Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.749Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:39:35.750Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":1}} +{"timestamp":"2026-02-21T08:39:35.752Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":1}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code"}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:35.753Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.756Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:35.756Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.759Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:35.759Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":1,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.762Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test","project":"/home/user/myproject"}} +{"timestamp":"2026-02-21T08:39:35.762Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.762Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:35.763Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:35.765Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:35.768Z","level":"info","category":"hooks","message":"Pre-compaction hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:35.771Z","level":"info","category":"hooks","message":"User prompt submit","data":{"memoryCount":1,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.781Z","level":"info","category":"hooks","message":"User prompt submit","data":{"memoryCount":4,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:35.784Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"e12f6d59-28a8-4b94-b93b-c16d404adb78","type":"preference","pinned":false}} +{"timestamp":"2026-02-21T08:39:35.787Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"479b2147-8a7d-4d3f-a033-3a7381d58def","type":"rule","pinned":true}} +{"timestamp":"2026-02-21T08:39:35.789Z","level":"info","category":"hooks","message":"Memory saved","data":{"id":"51c1060e-8166-43cf-b8fe-6f3e58b4428b","type":"fact","pinned":false}} +{"timestamp":"2026-02-21T08:39:35.790Z","level":"error","category":"hooks","message":"Remember failed","error":{"name":"Error","message":"DbAccessor not initialised — call initDbAccessor() first","stack":"Error: DbAccessor not initialised — call initDbAccessor() first\n at getDbAccessor (/home/nicholai/signet/signetai/packages/daemon/src/db-accessor.ts:162:13)\n at handleRemember (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:919:3)\n at (/home/nicholai/signet/signetai/packages/daemon/test/hooks.test.ts:733:18)"}} +{"timestamp":"2026-02-21T08:39:37.751Z","level":"warn","category":"hooks","message":"Failed to parse LLM output as JSON"} +{"timestamp":"2026-02-21T08:39:37.756Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"manual"}} +{"timestamp":"2026-02-21T08:39:37.759Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"scheduled"}} +{"timestamp":"2026-02-21T08:39:37.759Z","level":"info","category":"hooks","message":"Synthesis request","data":{"trigger":"manual"}} +{"timestamp":"2026-02-21T08:39:37.759Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:37.759Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:37.759Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:37.759Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:37.759Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:37.759Z","level":"error","category":"hooks","message":"Failed to get project memories","error":{"name":"Error","message":"DbAccessor not initialised — call initDbAccessor() first","stack":"Error: DbAccessor not initialised — call initDbAccessor() first\n at getDbAccessor (/home/nicholai/signet/signetai/packages/daemon/src/db-accessor.ts:162:13)\n at getProjectMemories (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:297:16)\n at handleSessionStart (/home/nicholai/signet/signetai/packages/daemon/src/hooks.ts:552:19)\n at (/home/nicholai/signet/signetai/packages/daemon/test/hooks.test.ts:982:18)"}} +{"timestamp":"2026-02-21T08:39:37.760Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":1}} +{"timestamp":"2026-02-21T08:39:37.760Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:37.760Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":0,"durationMs":0}} +{"timestamp":"2026-02-21T08:39:37.771Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:37.772Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":1,"durationMs":1}} +{"timestamp":"2026-02-21T08:39:37.774Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"test"}} +{"timestamp":"2026-02-21T08:39:37.775Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":1}} +{"timestamp":"2026-02-21T08:39:37.893Z","level":"info","category":"daemon","message":"Serving dashboard","data":{"path":"/home/nicholai/signet/signetai/packages/cli/dashboard/build"}} +{"timestamp":"2026-02-21T08:39:37.956Z","level":"warn","category":"pipeline","message":"Failed to parse extraction JSON","data":{"preview":"this is not valid json at all"}} +{"timestamp":"2026-02-21T08:39:37.956Z","level":"warn","category":"pipeline","message":"Extraction LLM call failed","data":{"error":"connection refused"}} +{"timestamp":"2026-02-21T08:39:37.968Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:37.980Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"874de814-c346-4f88-b497-db00e4ace4b2","memoryId":"mem-proc","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:38.168Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:38.171Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:38.182Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"922cfa92-4fb1-4e64-90ee-7c04ab146df0","memoryId":"mem-hist","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:38.371Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:38.373Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:38.384Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"66930289-3fb0-4d4d-b409-f07cd139e515","memoryId":"mem-payload","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:38.573Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:38.575Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:38.776Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:38.778Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:38.789Z","level":"warn","category":"pipeline","message":"Extraction LLM call failed","data":{"error":"LLM unavailable"}} +{"timestamp":"2026-02-21T08:39:38.789Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"6a355fda-36f9-4d53-80c0-4807bc8eaaa1","memoryId":"mem-llm-err","facts":0,"entities":0,"proposals":0,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:38.978Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:38.981Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:39.031Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"5c3c5c20-d421-42bb-83b3-10394eb075d8","memoryId":"mem-slow","facts":0,"entities":0,"proposals":0,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:39.031Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:39.033Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:39.033Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:39.035Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:39:39.047Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"f6751613-e623-4380-bf25-428e3ebdc3f5","memoryId":"mem-src-add","facts":1,"entities":1,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:39.286Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:39.288Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:39:39.299Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"0883812a-2090-4c2f-a69f-d8f37dff979c","memoryId":"mem-src-add-no-emb","facts":1,"entities":1,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:39.538Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:39.541Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:39:39.552Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"12272495-6a9d-4b68-b32d-4b817a78f7bc","memoryId":"mem-src-dedupe-1","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":1,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:39.562Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"d1c31294-da3a-48e0-9718-84068cb2e175","memoryId":"mem-src-dedupe-2","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":1,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:39.891Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:39.894Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:39:39.905Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"1c2c4547-67e4-42a8-a7da-c82e8e2e02ed","memoryId":"mem-src-lowconf","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":1,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:40.144Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:40.147Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:39:40.157Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"a2a242ee-6522-4508-a846-96d4df128818","memoryId":"mem-src-empty-normalized","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":1,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:40.396Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:40.399Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:39:40.410Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"5e6ff5ea-4e88-48c5-a3ff-1ba6ce8921a7","memoryId":"mem-src-delete","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":1}} +{"timestamp":"2026-02-21T08:39:40.698Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:40.701Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"controlled-write"}} +{"timestamp":"2026-02-21T08:39:40.712Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"cdbc3303-3ee0-492f-af1d-a5730096fbf3","memoryId":"mem-src-none","facts":1,"entities":0,"proposals":1,"writeMode":"phase-c","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:41.002Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:41.005Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:41.015Z","level":"info","category":"pipeline","message":"Extraction job completed","data":{"jobId":"a8802abb-ff5d-48ac-994f-3ae4b636757d","memoryId":"mem-src-frozen","facts":1,"entities":1,"proposals":1,"writeMode":"shadow","added":0,"deduped":0,"skippedLowConfidence":0,"blockedDestructive":0}} +{"timestamp":"2026-02-21T08:39:41.254Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:41.257Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":1,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:41.267Z","level":"warn","category":"pipeline","message":"Job failed","data":{"jobId":"7d97a752-12da-484c-bda1-3eabd03c57cb","error":"DB write failed","attempt":1}} +{"timestamp":"2026-02-21T08:39:41.557Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:39:41.559Z","level":"info","category":"pipeline","message":"Worker started","data":{"pollMs":10,"maxRetries":3,"model":"qwen3:4b","mode":"shadow"}} +{"timestamp":"2026-02-21T08:39:41.570Z","level":"warn","category":"pipeline","message":"Job failed","data":{"jobId":"15500293-e7b5-40d2-9c09-16d7f81afa76","error":"transient failure","attempt":1}} +{"timestamp":"2026-02-21T08:39:41.709Z","level":"info","category":"pipeline","message":"Worker stopped"} +{"timestamp":"2026-02-21T08:41:12.999Z","level":"warn","category":"git","message":"Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:41:12.999Z","level":"warn","category":"git","message":"Periodic sync failed: Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:46:13.006Z","level":"warn","category":"git","message":"Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:46:13.006Z","level":"warn","category":"git","message":"Periodic sync failed: Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:51:13.015Z","level":"warn","category":"git","message":"Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:51:13.015Z","level":"warn","category":"git","message":"Periodic sync failed: Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:56:13.006Z","level":"warn","category":"git","message":"Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:56:13.006Z","level":"warn","category":"git","message":"Periodic sync failed: Push failed: To https://github.com/Signet-AI/signetai.git\n ! [rejected] HEAD -> main (non-fast-forward)\nerror: failed to push some refs to 'https://github.com/Signet-AI/signetai.git'\nhint: Updates were rejected because the tip of your current branch is behind\nhint: its remote counterpart. If you want to integrate the remote changes,\nhint: use 'git pull' before pushing again.\nhint: See the 'Note about fast-forwards' in 'git push --help' for details.\n"} +{"timestamp":"2026-02-21T08:57:11.471Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code","project":"/home/nicholai/signet/signetai"}} +{"timestamp":"2026-02-21T08:57:11.472Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":2,"durationMs":1}} +{"timestamp":"2026-02-21T08:57:11.473Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} diff --git a/memory/memories.db-shm b/memory/memories.db-shm index f365b8ca3..b015b3ecd 100644 Binary files a/memory/memories.db-shm and b/memory/memories.db-shm differ diff --git a/memory/memories.db-wal b/memory/memories.db-wal index 03b130b5d..207f26abe 100644 Binary files a/memory/memories.db-wal and b/memory/memories.db-wal differ