| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-03-18 | refactor: extract pairTracker and extend fdTracker to reduce eventLoop ↵ | Paul Buetow | |
| responsibilities (task 428) The eventLoop struct held 20+ fields across 5+ responsibilities (SRP violation). Extract two cohesive sub-structs: - pairTracker: enter/exit pair matching, age-based LRU pruning, and DurationToPrev tracking. Replaces enterEvs/enterEvAges/prevPairTimes/ maxPendingEnterEvs/cacheAge fields with a single embedded value. - fdTracker (extended): absorbs procFdCache/procFdAges/maxProcFdCacheSize, moving all procfs-resolution cache logic (resolve, cache, prune, delete) off eventLoop and onto the tracker that already owns the fd table. eventLoop drops from 20 fields to 12. All methods that previously reached into eventLoop fields now live on the struct that owns the data. Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com> | |||
| 2026-03-18 | refactor: replace reflect.TypeOf dispatch in exit handlers with type switch ↵ | Paul Buetow | |
| (task 432) The exitHandlers map keyed by reflect.Type was a reflection-based dispatch table that incurred allocation and reflection overhead on every event pair in the hot processing path. Replace it with a plain type switch in handleTracepointExit, which the compiler resolves statically. Removes: initExitHandlers, typeKey, mustBeType, newTypedExitHandler, exitHandlerRegistry, the exitHandlers struct field, and the tracepointExitHandler type alias — all dead after the switch. Fixes a pre-existing uint→uint64 mismatch in stats(). Updates tests to target the new default branch directly. Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com> | |||
| 2026-03-13 | Handle procfs lookup errors in event loop (task 392) | Paul Buetow | |
| 2026-03-13 | Refactor event loop into focused units (task 389) | Paul Buetow | |
| 2026-03-11 | eventloop: factor malformed-event helpers (task 383) | Paul Buetow | |
| 2026-03-10 | eventloop: avoid fmt.Sprintf in proc comm lookup (task 426) | Paul Buetow | |
| 2026-03-10 | eventloop: bound pending enter and proc-fd caches (task 425) | Paul Buetow | |
| 2026-03-10 | task 434: unify trace filter plumbing | Paul Buetow | |
| 2026-03-08 | tui: restore global filter stack and anchored matches | Paul Buetow | |
| 2026-03-08 | tests: replace eventloop sleep synchronization with deterministic signaling | Paul Buetow | |
| 2026-03-08 | eventloop: remove gosched by snapshotting emitted fd state | Paul Buetow | |
| 2026-03-08 | task(ior): remove eventloop busy-wait polling (task 2b8f8f83) | Paul Buetow | |
| 2026-03-08 | task(ior): add comm resolver shutdown lifecycle (task fcd866dd) | Paul Buetow | |
| 2026-03-08 | task(ior): harden malformed raw-event decoding (task ed7a7a3f) | Paul Buetow | |
| 2026-03-06 | refactor: use pointer receivers for FdFile consistently (task 382) | Paul Buetow | |
| 2026-03-06 | refactor: make wrappers the only eventloop state maps (task 383) | Paul Buetow | |
| 2026-03-06 | refactor: remove dot imports for internal types (task 382) | Paul Buetow | |
| 2026-03-06 | refactor: bound comm resolver lookups with worker pool (task 384) | Paul Buetow | |
| 2026-03-06 | refactor: inject eventloop deps and registry exit handlers (task 389) | Paul Buetow | |
| 2026-03-06 | fix: return errors for invalid event filters (task 382) | Paul Buetow | |
| 2026-03-06 | refactor: remove web flamegrapher and keep TUI-only | Paul Buetow | |
| 2026-03-03 | Invalidate proc-fd cache on close_range | Paul Buetow | |
| 2026-03-03 | Use fast non-reflective event decoding on hot path | Paul Buetow | |
| 2026-03-03 | Cache procfs fd metadata for unknown descriptors | Paul Buetow | |
| 2026-03-02 | Launch live browser opener as invoking sudo user | Paul Buetow | |
| 2026-03-02 | Make --open a command template with no defaults | Paul Buetow | |
| 2026-03-02 | Add --open support for live flamegraph browser launch | Paul Buetow | |
| 2026-03-02 | Extract shared fd duplication helper | Paul Buetow | |
| 2026-03-01 | Use print callback for all event loop output modes | Paul Buetow | |
| 2026-03-01 | Extract fd and comm state helpers from eventLoop | Paul Buetow | |
| 2026-03-01 | Thread runtime config instead of global flags reads | Paul Buetow | |
| 2026-03-01 | Move comm procfs lookups off the hot path | Paul Buetow | |
| 2026-03-01 | Refactor tracepointExited into per-type handlers | Paul Buetow | |
| 2026-03-01 | Route non-fatal event-loop warnings to TUI | Paul Buetow | |
| 2026-03-01 | eventloop: replace raw-event switch with handler registry (task 314) | Paul Buetow | |
| 2026-03-01 | eventloop: inject runtime config instead of flags singleton (task 315) | Paul Buetow | |
| 2026-03-01 | eventloop: reuse comm resolver for pid seeding (task 317) | Paul Buetow | |
| 2026-02-27 | eventloop: wire live trie ingestion and server | Paul Buetow | |
| 2026-02-26 | tui: revamp status keys and add pid/tid reselection flow | Paul Buetow | |
| 2026-02-23 | Track pidfd_getfd returned fds in eventloop | Paul Buetow | |
| 2026-02-23 | Add getcwd tracing support and stabilize comm propagation test | Paul Buetow | |
| 2026-02-23 | Fix integration trace expectations and fd/open event handling | Paul Buetow | |
| 2026-02-22 | Fix event comm attribution and reduce integration log noise | Paul Buetow | |
| 2026-02-22 | Add copy_file_range support and tracepoint attach tests | Paul Buetow | |
| 2026-02-22 | Implement mmap/msync syscall support with unit and integration coverage | Paul Buetow | |
| 2026-02-22 | Implement sync_file_range coverage and document mage world bootstrap | Paul Buetow | |
| 2026-02-21 | fix: close_range path resolution - lookup fd before deleting from map | Paul Buetow | |
| Move e.files[fd] lookup before the close_range fd cleanup loop in the FdEvent handler so the file path is resolved while the fd still exists in the map. Previously, close_range events always fell through to file.NewFdWithPid() which couldn't resolve the path since the fd was already closed. Also add unit test assertion verifying ep.File resolves to the correct filename for close_range events. Task: 349 Amp-Thread-ID: https://ampcode.com/threads/T-019c8180-1da4-7048-9200-ae93bdd90cab Co-authored-by: Amp <amp@ampcode.com> | |||
| 2026-02-21 | Add byte count tracking to event pairs | Paul Buetow | |
| Amp-Thread-ID: https://ampcode.com/threads/T-019c8012-eaeb-768d-a264-5a704f3939ef Co-authored-by: Amp <amp@ampcode.com> | |||
| 2026-02-21 | Enable name_to_handle_at and io_uring fd attribution | Paul Buetow | |
| Amp-Thread-ID: https://ampcode.com/threads/T-019c7fec-eec9-706a-8338-3ce674802680 Co-authored-by: Amp <amp@ampcode.com> | |||
| 2026-02-21 | Track io_uring setup fds in event loop | Paul Buetow | |
| Amp-Thread-ID: https://ampcode.com/threads/T-019c7fd9-5870-77b7-9909-3eb7550d17bb Co-authored-by: Amp <amp@ampcode.com> | |||
