summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-02-20docs: add AGENTS.md and CLAUDE.md for AI agent instructionsPaul Buetow
2026-02-20test: add comprehensive unit tests for 82% coveragePaul Buetow
Added test suites: - types_test.go: Tests for Aggregate, HostAggregate, Epoch, Category, Metric, OutputFormat, word wrapping, and formatting functions - report_test.go: Tests for Reporter creation and report generation across different categories, metrics, and output formats - aggregate_test.go: Tests for file-based aggregation, context cancellation, and helper functions - db_test.go: Tests for database operations including schema creation, imports, record reset, and aggregate loading Coverage improved from 17.6% to 82.1%, exceeding the 70% target. Amp-Thread-ID: https://ampcode.com/threads/T-019c7c73-58f9-7516-958d-f30eb17a3bff Co-authored-by: Amp <amp@ampcode.com>
2026-02-20bump version to 0.2.1v0.2.1Paul Buetow
Performance improvement: - Use transactions for database imports (118x speedup) - Import time reduced from 11.2s to 0.076s Amp-Thread-ID: https://ampcode.com/threads/T-019c7c73-58f9-7516-958d-f30eb17a3bff Co-authored-by: Amp <amp@ampcode.com>
2026-02-20perf: use transactions for database imports (118x speedup)Paul Buetow
Previously, ImportFromDir was executing each of 2,587 records as individual INSERT statements, with each one creating its own transaction. This was extremely slow at ~11 seconds. Now wrap all inserts in a single database transaction, which is the standard approach for bulk data loading. This reduces import time from 11.2s to 0.076s (118x faster). Verified with: - Before: real 0m11.193s - After: real 0m0.076s Amp-Thread-ID: https://ampcode.com/threads/T-019c7c73-58f9-7516-958d-f30eb17a3bff Co-authored-by: Amp <amp@ampcode.com>
2026-02-20bump version to 0.2.0v0.2.0Paul Buetow
Major improvements: - Apply Go best practices (reorganized types, constructors, methods) - Remove obsolete files (guprecords.raku, compare-with-raku.sh) - Extract processRecordsFile helper function - Fix word-wrapping bug - Support database import/query workflow - Add database-backed uprecords Makefile target Amp-Thread-ID: https://ampcode.com/threads/T-019c7c73-58f9-7516-958d-f30eb17a3bff Co-authored-by: Amp <amp@ampcode.com>
2026-02-20refactor: apply Go best practices and remove obsolete filesPaul Buetow
- Reorganize types.go: place types and constructors before methods - Simplify main.go: improve flag handling and reduce code complexity - Extract processRecordsFile() in aggregate.go: reduce function size, ensure immediate defer - Change Reporter receivers to value semantics for read-only operations - Fix wordWrap() function: properly account for line length with leading space - Remove guprecords.raku: Go implementation is the primary version now - Remove compare-with-raku.sh: no longer needed - Update README.md and .gitignore accordingly All tests pass: go test ./... and ./goprecords test Amp-Thread-ID: https://ampcode.com/threads/T-019c7c73-58f9-7516-958d-f30eb17a3bff Co-authored-by: Amp <amp@ampcode.com>
2026-02-20Add Go implementation (goprecords)v0.1.0Paul Buetow
- cmd/goprecords: CLI with import, query, report-from-files, test - internal/goprecords: types, order, aggregate, db, report - internal/version: version constant (0.1.0) - SQLite import (repeatable: clears record table then inserts) - Magefile: Build, Test, Install, Uninstall - Table-driven unit tests; comparison script vs Raku guprecords - .gitignore: *.db, /goprecords binary Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-20updatePaul Buetow
2026-02-07add stats-order optionPaul Buetow
Allow custom section ordering for --all reports while keeping defaults and tests in place. Co-authored-by: Cursor <cursoragent@cursor.com>
2025-05-18update readme examplesPaul Buetow
2025-05-18update testsPaul Buetow
2025-05-18also show last kernelPaul Buetow
2025-01-08ignore empty stats filesPaul Buetow
2023-09-23refactor a bitPaul Buetow
2023-09-23fix testsPaul Buetow
2023-06-01fix testsPaul Buetow
2023-06-01downtime is only a quarter worth of uptimePaul Buetow
2023-04-29adjust readmePaul Buetow
2023-04-29update statsPaul Buetow
2023-04-29add include-kernel flagPaul Buetow
2023-04-29by default, exclude Kernel, as it is too verbosePaul Buetow
2023-04-02fix examplePaul Buetow
2023-04-02add more docsPaul Buetow
2023-03-30refactorPaul Buetow
2023-03-30is RO by default anywayPaul Buetow
2023-03-30update example outputPaul Buetow
2023-03-30add description outputsPaul Buetow
2023-03-29refactor to use gather/take rather than push @ret, ...Paul Buetow
2023-03-29gradual typingPaul Buetow
2023-03-29use UInt rather than NaturalPaul Buetow
2023-03-27fix testsPaul Buetow
2023-03-27add a test per output formatPaul Buetow
2023-03-27add unit testsPaul Buetow
2023-03-27add fixtures for estPaul Buetow
2023-03-27refactorPaul Buetow
2023-03-27update examplesPaul Buetow
2023-03-27remove of useless abstractionPaul Buetow
2023-03-27add Gemtext output formatPaul Buetow
2023-03-19update example outputPaul Buetow
2023-03-19initial output formatterPaul Buetow
2023-03-19prepare output-formatPaul Buetow
2023-03-19only aggregate oncePaul Buetow
2023-03-19add --all attributePaul Buetow
2023-03-19fix metric subset checkPaul Buetow
2023-03-18dedupPaul Buetow
2023-03-18add example outputsPaul Buetow
2023-03-18use enumsPaul Buetow
2023-03-18refactorPaul Buetow
2023-03-18refactoring command line parsingPaul Buetow
2023-03-09prettier tablePaul Buetow