Repository navigation
Release v1.9.9: explain the process table's wait instead of rendering it blank - #71
Merged
Merged
Conversation
Toggling the table on with `p` cannot produce rows for up to two intervals (~4s at the default): the sample already in flight was started with the process walk off, so the first snapshot back carries none. The bordered panel rendered empty for that whole window and read as a broken table. The table now renders a placeholder row saying why it is empty: `collecting process samples…` until the first walk lands, `paused — press space to resume` when polling is paused (no sample is coming at all), and `no processes match filter` once collection is running but nothing matched — previously also a blank panel. MetricsUpdated carries a `processes_included` flag because `snapshot.processes == []` means both "collection was off" and "the filter matched nothing"; the flag is what separates the two. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Behavior change
Toggling the process table on with
pcannot produce rows for up to two intervals (~4s at the default--interval 2): the sample already in flight was started with the process walk off, so the first snapshot back carries no processes. The bordered panel rendered empty for that whole window, which reads as a broken or hung table.The table now renders a placeholder row that says why it is empty:
pcollecting process samples…paused — press space to resumeno processes match filter(previously also blank)MetricsUpdatedgained aprocesses_includedflag:snapshot.processes == []means both "collection was off this tick" and "the filter matched nothing", and the flag is what separates the two.Release
Patch bump
1.9.8→1.9.9;[Unreleased]moved into a dated[1.9.9]section. User-visible fix, so it warrants a release perCLAUDE.md→ When to cut a release.Validation
Tested on macOS (Darwin 25.5.0) + Apple M4 Max (4E+12P+40GPU).
Live run under tmux (
.venv/bin/python -m actop.actop --interval 2), all four states confirmed by hand:…replaced ~2 intervals later by real rows:
Test
One functional test added,
test_process_table_says_it_is_collecting_until_the_first_walk_lands: drives the real poll worker and the realpkey press (pilot.press), asserts the placeholder row is there on that frame and that real PID rows replace it once a walk lands. No mocks, no private attrs, no shape-only assertions.🤖 Generated with Claude Code