mirror of
https://github.com/koala73/worldmonitor.git
synced 2026-04-25 17:14:57 +02:00
* refactor(intelligence): preserve digest threat fields through normalization (#2050) * fix(intelligence): shallow-copy cluster threat, add medium to GlobeMap color map and VALID_THREAT_LEVELS - _clustering.mjs: spread-copy threat object instead of passing reference to prevent downstream mutation from corrupting cluster data - GlobeMap.ts: add 'medium' to threatLevel color guards (marker render + tooltip) so new digest taxonomy shows yellow/orange instead of falling through to the info-blue default - InsightsPanel.ts: extend VALID_THREAT_LEVELS to include new taxonomy values (medium/low/info) so the safeThreat guard stays in sync * fix(intelligence): normalize proto threat levels and use tier-sorted cluster threat P1: digest items store THREAT_LEVEL_HIGH/MEDIUM/etc (proto enum strings from toProtoItem). Copying item.threat verbatim caused threatLevel: 'THREAT_LEVEL_HIGH' to land in output, missing every downstream check (THREAT_RGB, badge render, GlobeMap color switch). Add normalizeThreat() with PROTO_TO_LEVEL map at read time so values arrive as 'high'/'medium'/etc. P2: cluster threatItem was found via group.find() on the unsorted insertion-order array. A low-tier item first in the array would win over a Reuters item. Switch to sorted.find() (already tier/date sorted for primary selection) to prefer the highest-quality source's threat classification.
6.4 KiB
6.4 KiB