From 493efc00fd81b2f64bb8a6ee172a08849eded05d Mon Sep 17 00:00:00 2001 From: Loren Eteval Date: Fri, 18 Sep 2026 23:15:22 +0800 Subject: [PATCH] Document search and log interaction contracts Signed-off-by: Loren Eteval --- Furious/Window/AGENTS.md | 5 +++++ tests/README.md | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/Furious/Window/AGENTS.md b/Furious/Window/AGENTS.md index 017cf71..34df3ab 100644 --- a/Furious/Window/AGENTS.md +++ b/Furious/Window/AGENTS.md @@ -38,6 +38,11 @@ This scope owns persistent page composition and top-level presentation, not shar the result window and stops on close; a malformed item cannot retarget or invalidate completed tabs. Resizing scales the cached module image at integer factors with its quiet zone, rather than regenerating or smoothing secret-bearing QR content. Reuse plugin export semantics and never log the encoded URI. +- Search debounce belongs to the persistent page: clear/submit cancels pending work, hide stops it, and show applies + only the current query. Find shortcuts are page-scoped; document editing shortcuts stay with their document widget. +- Pausing a log view freezes its displayed document, selection, and filters without stopping collection or extending + manager retention. Resume resynchronizes from retained entries; export while paused uses the displayed snapshot. + Verify clear/eviction/navigation during pause, not just ordinary append. - Log views keep per-filter cursors and catch up on visibility; metrics pages derive series from shared raw history. Switching pages, ranges, or filters must not reset collection or create a second history. Metric buckets use the shared monotonic timeline: moving the visible range must not regroup unchanged historical samples. Preserve missing diff --git a/tests/README.md b/tests/README.md index e037b25..613b6c0 100644 --- a/tests/README.md +++ b/tests/README.md @@ -236,3 +236,7 @@ The reusable `source-tests.yml` workflow runs full unittest discovery on Windows Linux, and macOS with Python 3.13 and PySide6 6.8.3. The publication workflow requires that job before PyPI publication. Opt-in tests and packaged/manual smoke checks remain separate; local Windows results do not establish the other CI targets. + +The Home/Log workflow regressions exercise debounced typing, explicit submit/clear, navigation catch-up, focus-scoped +Find/edit shortcuts, and paused log selection/export across eviction and clear. These are real Qt tests in +`test_qt_interactions.py` and `test_ui_behavior.py`; no production log source or profile network is started.