PyCForge 1.3.1 — Windows and laptop acceptance checks

This is the remaining native acceptance work, not work claimed to have passed
in the Linux/offscreen audit. Use the complete 1.3.1 wheel from this package.

1. Install the wheel into a separate Python 3.11–3.13 environment with its normal
   dependencies. Confirm About reports 1.3.1 and the installed module location.
   Omit --no-deps; run python -m pip check after installation.
2. Start/cancel/restart startup; use Ctrl+H while Find has focus and Ctrl+Enter
   in both Typed and Runtime modes. Check modal dialogs at normal/high DPI.
   Confirm the whole splash logo and subtitle descenders are visible. Move the
   pointer onto and away from X; its highlight must clear. Initial keyboard
   focus belongs to Cancel/Close. Repeat for the startup-error display.
3. Repeatedly Open/New/close the final module and reopen; confirm navigator,
   folding, selection, undo, saved files and source do not become stuck.
4. Exercise Jedi completion/hints, definition/return, rename review, autopep8
   document/selection formatting, gutter navigator Copy, regex/selection/bundle
   search, Help and the generated-C pane. Close with work queued or active.
5. Compile Typed and Runtime examples with PCFC11 at O0/O1. Include multiple
   modules, classes, formatting and UTF-8 files/paths. Confirm source edits cancel
   builds, failed/stale builds do not overwrite good output, cancel stops compiler
   descendants, and closing the application leaves no PyCForge child processes.
6. From the extracted source directory run:
     python tools/profile_resources.py --cycles 100 --idle-seconds 60 --output windows-resources.json
   Omit --offscreen. For the installed package instead of the checkout add
   --installed. Check handle/RSS/thread trends and post-close counts. This probe
   forces garbage collection and is not a busy-work performance benchmark.
7. On the same laptop, fixed brightness/power mode and comparable background load,
   record battery power/discharge and CPU wakeups over several minutes with the
   IDE closed, idle with files open, typing/analysis, and repeated conversion/build.
   Record hardware, OS, battery/power settings and workload. Do not infer wattage
   from the Linux idle CPU percentages.
8. Leave the app in a mixed-use soak for several hours, including sleep/resume,
   external file replacement, unavailable network storage and repeated cancel/
   close/reopen. Inspect Task Manager/process handles after shutdown.
9. On an unrestricted Linux native host run the selected Runtime sanitizer tests
   with PYCF_TEST_CFLAGS=-fsanitize=address,undefined -fno-omit-frame-pointer
   -fno-sanitize-recover=all and ASAN_OPTIONS=detect_leaks=1:halt_on_error=1.
   Keep full stderr. LeakSanitizer could not inspect processes in this audit host.

Preserve raw measurements and failures. A passing short soak is not proof of
zero leaks or universal stability; unresolved native failures need reproduction.
