96ced766e6
- New 'All' analysis mode: client-side coordinator runs Static + every EDR profile in parallel; Dynamic waits only for Static (EDR is on a remote VM, no local resource contention). New /analyze/all/<target> route + analyze_all.html + analyze-all/core.js. Done banner exposes per-result jump links; rows linkify to their saved detail views (no auto-redirect). - /results/edr/<profile>/<target>: saved-view route that loads the saved JSON and renders via the same tools/edr.js module the live page uses, so the saved view shows MITRE chips, call stack, triggering API, memory region, expandable per-alert detail and raw _source. New edr_info.html embeds findings as window.__edrSavedResults; new edr-saved.js bootstraps the renderer. - Whiskers: chunked XOR write (64 KiB working buffer) replaces the byte-by-byte loop that was timing out the orchestrator on multi-MB payloads. AgentClient gains a separate exec_timeout (180s) for the multipart upload + agent-side decode path. - file_info.html: Dynamic button uses lb-btn-primary to match Static and EDR (drops the orphan yellow styling).