mirror of
https://github.com/kuhyx/testsAndMisc.git
synced 2026-11-12 14:30:57 +01:00
The entry point now holds only the parser, mode dispatch and main. Three modules take one concern each: _usage_report_logs (where the logs are, the state file, per-day segment planning), _usage_report_emit (preflight, stdout, clipboard), _usage_report_run (the two run paths and the aggregation they drive). Verified by the 100%-coverage tests from the previous commit. An AST comparison of all 22 top-level defs and classes reports 22 identical, 0 mismatches. All four modules hold 100% line+branch. 204 tests before and after. Both CLI modes were run against the machine's real logs, which is the check the unit tests cannot make: they stub the collaborators, so only a real run proves the new import graph resolves. Two lessons, recorded because the next target is a 498-line file: This cut was too big. Two names had to be relocated after their first placement created an import cycle, and four modules' worth of monkeypatch targets needed re-pointing. A smaller first slice would have been cheaper. Patching a moved function must target the module whose namespace resolves it - the caller's, not the one it was moved to. Getting that wrong on _run_since made main() call the real function, which read the actual atop logs and hung the suite rather than failing. Three import bugs (Path and _fmt_h left under TYPE_CHECKING but used at runtime, dataclass missing where _Aggregates landed) were caught immediately by the coverage from the previous commit. Over-cap 38 -> 37. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011w2Pj4Ek3ZNMQVYcFHgXDY |
||
|---|---|---|
| .. | ||
| lib | ||
| __init__.py | ||
| conftest.py | ||
| test_android_guardian_post_fs_data.sh | ||
| test_android_guardian_service.sh | ||
| test_fast_count.py | ||
| test_hosts_file_monitor.sh | ||
| test_hosts_guard_pacman_integration.sh | ||
| test_i3blocks_efficiency.sh | ||
| test_i3blocks_persist_common.sh | ||
| test_makepkg_capped.sh | ||
| test_makepkg_wrapper.sh | ||
| test_monitor_report.py | ||
| test_music_parallelism.sh | ||
| test_network_diagnostics.bats | ||
| test_pacman_wrapper_security.sh | ||
| test_security_hardening.sh | ||
| test_session_autopsy_hooks.py | ||
| test_setup_dns_blocker.sh | ||
| test_shutdown_timer_monitor.sh | ||
| test_strip_workout_hosts.py | ||
| test_usage_monitoring_installer_efficiency.sh | ||
| test_usage_report_aggregate.py | ||
| test_usage_report_atop_build.py | ||
| test_usage_report_atop_io.py | ||
| test_usage_report_atop_pipeline.py | ||
| test_usage_report_cli.py | ||
| test_usage_report_emit.py | ||
| test_usage_report_format.py | ||
| test_usage_report_gpu_table.py | ||
| test_usage_report_host.py | ||
| test_usage_report_merge.py | ||
| test_usage_report_modes.py | ||
| test_usage_report_parse_records.py | ||
| test_usage_report_pmon_names.py | ||
| test_usage_report_render.py | ||
| test_usage_report_run_since.py | ||
| test_usage_report_segments.py | ||
| test_usage_report_since.py | ||
| test_usage_report_tables.py | ||
| test_validate_contract.py | ||
| test_validate_evidence.py | ||