summaryrefslogtreecommitdiff
path: root/internal/daemon/upload.go
AgeCommit message (Collapse)Author
2026-04-14refactor: explicit HostAggregate.Stats, uploadKindExtension (ask 64)Paul Buetow
- Replace embedded Aggregate with Stats field to avoid promoted MetaScore pitfall - Forward AddRecord and IsActive to Stats - Replace package-level uploadKinds map with uploadKindExtension switch Made-with: Cursor
2026-04-14fix(report): propagate Write errors; shorten query/upload paths (ask 44)Paul Buetow
- Return io.WriteString errors from WriteReports via writeReportString - Split ParseReportQuery into small URL parsing helpers - Extract serveUploadPut and uploadAuthorized from upload handler closure - Build report header with strings.Builder Made-with: Cursor
2026-04-14task 13: upload API keys in SQLite, Bearer auth, create-client-key CLIPaul Buetow
- Add internal/authkeys with SHA-256 hashed tokens and KeyCount gate - PUT /upload/{host}/{kind} for uptimed files; auth when any key exists - Daemon -auth-db and Config.AuthDB; plain HTTP unchanged - CLI: goprecords --create-client-key HOSTNAME (-stats-dir|-auth-db) Made-with: Cursor