diff --git a/CHANGELOG.md b/CHANGELOG.md index 6ebefcb..ab6b010 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,44 @@ --- +## [0.8.0] - 2026-06-16 + +### Added — 探测实时链路(Phase 10) + +- **3D 球冠探测**:`DetectionCalculator.IsInCoverage`(水平距离 + 俯仰角 + 高度门限),planner 与运行时共用 +- **EarliestDetection 采样法**:线段-圆求交改为沿航路采样(步长≤50m)调 `IsInCoverage` +- **DetectionEntity**:运行时探测实体 + per-drone 状态机(Undetected ⇄ Detected),Tick 第5步扫描 +- **实时探测事件**:`OnTargetDetected` / `SimEventType.TargetDetected` / `PlanningFailed` +- **EquipmentDeployment + DetectionSource**:+4 个 3D 球冠字段(MinElevation/MaxElevation/MinDetectAlt/MaxDetectAlt) +- **默认数据全部加入 3D 球冠参数**(地基 -5°~85°、空基 -80°~30°) + +### Added — Planner 诊断 + 拦截点计算 + +- **InterceptCalculator**:抛物线与直线联立方程求解拦截点(地基可变角度 + 空基固定水平 θ=0°) +- **HasInterceptWindow**:拦截窗口可行性检查(从探测边界算有效飞行时间) +- **TryGenerateFireEvents**:每个 `return events` 带拒绝原因 +- **Planner Summary**:含失败原因 + 建议值(探测范围/弧长/反应时间) +- **PlannerConfig**:+`ReactionTime`(5s)/ `ExpansionFactor`(0.9)/ `TimingSafetyMargin`(1s) + +### Changed — 消除硬编码 + +- **速度从 waypoint.Speed 读取**:`DroneEntity.CruiseSpeed` / `GetDroneSpeedKph` 不再用 `TargetConfig.TypicalSpeed` +- **`AmmunitionSpec` +`Phase2Duration`**(30s):`CloudExpansionModel` 不再写死 `30f` +- **`GetArrivalTime` 基于 DetectArc**:从探测点到中点算到达时间(而非航路起点) +- **TestData 改为从 seeded 数据库读取**(不再内嵌 JSON 重复 defaults.json) + +### Changed — 默认想定参数 + +- 巡航导弹速度 300→200 km/h +- 空基航路 10km→20km,平台位置 1500→6000,巡航速度 55→80 m/s +- 地基火力单元放航路终点,探测范围按 80% 规则 + +### Metrics + +- 测试 204 → **231**(+27),全量通过 7s + +--- + ## [0.7.0] - 2026-06-15 ### Breaking — 概念升级:编组拆分 + Group 表移除 diff --git a/VERSION b/VERSION index a918a2a..a3df0a6 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.6.0 +0.8.0