2026-02-23T07-37-56_auto_memory/memories.db-wal, memory/2026-02-23-auto-upd

This commit is contained in:
Nicholai Vogel 2026-02-23 00:37:56 -07:00
parent 0c5e4a73a1
commit d5fe6c72b3
4 changed files with 45 additions and 0 deletions

View File

@ -1376,3 +1376,22 @@
{"timestamp":"2026-02-23T07:37:40.035Z","level":"info","category":"summary-worker","message":"Enqueued session summary job","data":{"jobId":"e61667c1-bab2-4b93-8e12-a3aa597489e0","harness":"claude-code"}}
{"timestamp":"2026-02-23T07:37:40.035Z","level":"info","category":"hooks","message":"Session end queued for summary","data":{"jobId":"e61667c1-bab2-4b93-8e12-a3aa597489e0"}}
{"timestamp":"2026-02-23T07:37:40.035Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}}
{"timestamp":"2026-02-23T07:37:45.089Z","level":"info","category":"git","message":"Auto-committed","data":{"message":"2026-02-23T07-37-45_auto_memory/memories.db-wal","filesChanged":1}}
{"timestamp":"2026-02-23T07:37:46.288Z","level":"info","category":"summary-worker","message":"Wrote session summary","data":{"path":"/home/nicholai/.agents/memory/2026-02-23-auto-update-observability-plan.md"}}
{"timestamp":"2026-02-23T07:37:46.292Z","level":"info","category":"summary-worker","message":"Inserted session facts","data":{"total":14,"saved":14,"deduplicated":0}}
{"timestamp":"2026-02-23T07:37:46.293Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}}
{"timestamp":"2026-02-23T07:37:46.293Z","level":"info","category":"watcher","message":"File added","data":{"path":"/home/nicholai/.agents/memory/2026-02-23-auto-update-observability-plan.md"}}
{"timestamp":"2026-02-23T07:37:46.793Z","level":"info","category":"summary-worker","message":"Processing session summary","data":{"jobId":"e61667c1-bab2-4b93-8e12-a3aa597489e0","harness":"claude-code","attempt":1}}
{"timestamp":"2026-02-23T07:37:46.794Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}}
{"timestamp":"2026-02-23T07:37:46.968Z","level":"info","category":"memory","message":"Memory saved","data":{"id":"3426a7c2-c8c1-45f3-9d9d-e9e64b035c93","type":"rule","pinned":false,"embedded":true}}
{"timestamp":"2026-02-23T07:37:46.969Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}}
{"timestamp":"2026-02-23T07:37:46.986Z","level":"info","category":"memory","message":"Memory saved","data":{"id":"920ad8a5-cef5-49df-a695-a6944131e645","type":"fact","pinned":false,"embedded":true}}
{"timestamp":"2026-02-23T07:37:47.001Z","level":"info","category":"memory","message":"Memory saved","data":{"id":"12b75f20-4a0b-4c46-b8c6-c4eb6262b0c0","type":"fact","pinned":false,"embedded":true}}
{"timestamp":"2026-02-23T07:37:47.001Z","level":"info","category":"watcher","message":"Ingested memory file","data":{"path":"/home/nicholai/.agents/memory/2026-02-23-auto-update-observability-plan.md","chunks":3,"sections":3,"filename":"2026-02-23-auto-update-observability-plan"}}
{"timestamp":"2026-02-23T07:37:47.942Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}}
{"timestamp":"2026-02-23T07:37:50.988Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code","project":"/home/nicholai/signet/signetai"}}
{"timestamp":"2026-02-23T07:37:50.989Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":11,"durationMs":1}}
{"timestamp":"2026-02-23T07:37:50.990Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}}
{"timestamp":"2026-02-23T07:37:51.903Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code","project":"/home/nicholai/signet/signetai"}}
{"timestamp":"2026-02-23T07:37:51.904Z","level":"info","category":"hooks","message":"Session start completed","data":{"memoryCount":11,"durationMs":1}}
{"timestamp":"2026-02-23T07:37:51.905Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}}

View File

@ -0,0 +1,26 @@
# 2026-02-23 Session Notes
## Auto-Update Observability Plan
Nicholai provided a comprehensive plan to add observability to Signet's auto-update system. The daemon currently has full update mechanics (GitHub/npm checks, package manager invocation, timer) but zero observability—errors vanish into logs, agents never know when Signet is outdated, and `/api/status` is blind to update state.
Root causes identified: `autoInstall` defaults to false (users never see updates), all update state is trapped as module-scoped bindings in daemon.ts (inaccessible to other modules), `getDaemonVersion()` silently returns "0.0.0" on failure, package manager fallback order favors npm over bun (misaligned with project standards), and the diagnostics system lacks an update health domain.
## Implementation Strategy
The plan calls for extracting the update system to a dedicated `update-system.ts` module (~350 LOC) following the singleton pattern used by `llm.ts` and `db-accessor.ts`. The module will export `getUpdateState()` and `getUpdateSummary()` for read-only access from anywhere in the daemon.
Update status will be surfaced in the session-start hook via `handleSessionStart` in hooks.ts, making it visible to agents during session initialization. A new `categorizeUpdateError()` helper will translate raw errors (rate limits, network failures, permission denied, etc.) into actionable messages.
API surface will expand: `/api/status` gains an `update` field with version info and error state, `/health` adds two booleans (`updateAvailable`, `pendingRestart`), and a new `UpdateHealth` domain joins diagnostics scoring.
## Implementation Order
1. Extract update-system.ts from daemon.ts
2. Wire initUpdateSystem() in daemon main, update route handlers
3. Add categorizeUpdateError() helper
4. Add getUpdateSummary() and wire into handleSessionStart
5. Expand /api/status and /health endpoints (parallelizable)
6. Add UpdateHealth to diagnostics.ts (parallelizable)
The plan emphasized that extracting update-system.ts unblocks all downstream work. Verification includes typecheck, runtime endpoint testing, and error categorization scenarios.

Binary file not shown.

Binary file not shown.