Files
KSP_project/reference/mission_merge_plan.md
ArmorandClaude Opus 4.7 e1d601a774 chore: add reference docs, scripts, tests, demo, prototypes
- Reference docs: known issues, user journey, location redesign, mission merge plan
- Scripts: fill_location_state, merge_missions, migrate_location, migrate_state
- Tests: e2e test suite, asset entries unit tests
- Demo: location board, hifi prototypes, test screenshots
- Data backup: asset log entries and state nodes
- Update .gitignore

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-01 15:29:47 +08:00

16 KiB
Raw Permalink Blame History

任务日志合并方案

目标

将同一个任务的 Outbound → Operations → Inbound 三条独立日志合并为一条日志。Outbound/Inbound 的 transition 事件改为 state node,合并三条日志中原有的 state node。

合并规则

基本规则

  1. **主日志(Operations**为保留对象

    • start_at 扩展为 Outbound 的 start_at
    • end_at 扩展为 Inbound 的 end_at
    • mission_label, summary, note 保持不变
    • state_label 合并三者:Transfer; <Operations state>; Transfer(或根据实际节点内容优化)
  2. Outbound 和 Inbound 日志删除,它们的 state node 迁移到主日志中

  3. 关键 transition 事件以 state node 形式记录在主日志中:

    • 从 Outbound 继承:Crew Arrival, Earth Departure, <Target> Arrival
    • 从 Inbound 继承:<Target> Departure, Earth Arrival
  4. 特殊处理

    • 如果 Outbound 和 Operations 之间有日期重叠(Outbound end > Operations start),按 Operations start 为准截断 Outbound
    • 如果 Inbound 没有 end_at(任务仍在进行中),则保持 end_at 为 NULL
    • ST-01 ISSEM-1 包含两个目标(Mercury + Venus),前后两段 transfer → operations → transfer,合并为一个复合任务条目

受影响资产 & 具体变更

以下用 >>> 标记 state node 迁移方向。


1. XH-01 羲和号

1.1 MMD — Mars Mission Demo

Before (3 entries):

Outbound  2054-07-10 → 2054-08-21  Transfer          Sun       [0 nodes]
Ops       2054-08-21 → 2055-01-10  Planetary Ops     Mars      [0 nodes]
Inbound   2055-01-10 → 2055-02-28  Transfer          Sun       [1 node]
  └─ 2055-02-28: Earth Arrival

After (1 entry):

MMD       2054-07-10 → 2055-02-28  Transfer → Planetary Ops → Transfer   Mars
  └─ 2055-02-28: Earth Arrival   (from Inbound)

注:Outbound 缺 state node(无 Crew Arrival / Earth Departure / Mars Arrival 记录)。保留空白,后续可补充。


1.2 MOCM-1 — Mars One Base Construction Mission 1

Before:

Outbound  2055-06-15 → 2055-07-30  Transfer          Sun       [2 nodes]
  └─ 2055-06-15: Crew Arrival
  └─ 2055-06-18: Earth Departure for Mars
Ops       2055-07-30 → 2056-02-07  Base Construction  Mars      [0 nodes]
Inbound   2056-02-07 → 2056-03-18  Transfer          Sun       [1 node]
  └─ 2056-03-18: Earth Arrival

After:

MOCM-1    2055-06-15 → 2056-03-18  Transfer → Construction → Transfer    Mars
  └─ 2055-06-15: Crew Arrival               (from Outbound)
  └─ 2055-06-18: Earth Departure for Mars    (from Outbound)
  └─ 2056-03-18: Earth Arrival              (from Inbound)

1.3 MOCM-3 — Mars One Base Construction Mission 3

Before:

Outbound  2056-07-30 → 2056-09-15  Transfer          Sun       [2 nodes]
  └─ 2056-07-30: Crew Arrival
  └─ 2056-08-02: Earth Departure for Mars
Ops       2056-09-15 → 2057-02-12  Base Construction  Mars      [0 nodes]
Inbound   2057-02-12 → 2057-03-25  Transfer          Sun       [1 node]
  └─ 2057-03-25: Earth Arrival

After:

MOCM-3    2056-07-30 → 2057-03-25  Transfer → Construction → Transfer    Mars
  └─ 2056-07-30: Crew Arrival               (from Outbound)
  └─ 2056-08-02: Earth Departure for Mars    (from Outbound)
  └─ 2057-03-25: Earth Arrival              (from Inbound)

1.4 ME-2 — Mars Expedition 2

Before:

Outbound  2057-05-05 → 2057-06-22  Transfer          Sun       [2 nodes]
  └─ 2057-05-05: Crew Arrival
  └─ 2057-05-09: Earth Departure for Mars
Ops       2057-06-22 → 2058-04-18  Planetary Ops     Mars      [2 nodes]
  └─ 2057-06-25: Mars EDL and surface operations begin
  └─ 2058-04-10: Begin Mars Departure preparations
Inbound   2058-04-18 → 2058-05-20  Transfer          Sun       [2 nodes]
  └─ 2058-04-18: Mars Departure for Earth
  └─ 2058-05-20: Earth Arrival

After:

ME-2      2057-05-05 → 2058-05-20  Transfer → Planetary Ops → Transfer    Mars
  └─ 2057-05-05: Crew Arrival                        (from Outbound)
  └─ 2057-05-09: Earth Departure for Mars             (from Outbound)
  └─ 2057-06-25: Mars EDL and surface operations begin (from Ops)
  └─ 2058-04-10: Begin Mars Departure preparations     (from Ops)
  └─ 2058-04-18: Mars Departure for Earth              (from Inbound)
  └─ 2058-05-20: Earth Arrival                         (from Inbound)

1.5 EE-1 — Europa Expedition 1

Before:

Outbound  2058-07-10 → 2058-09-25  Transfer          Sun            [3 nodes]
  └─ 2058-07-10: Crew Arrival
  └─ 2058-07-12: Earth Departure for Jupiter system
  └─ 2058-09-25: Europa Arrival
Ops       2058-09-25 → 2059-07-10  Planetary Ops     Jupiter System [7 nodes]
  └─ 2058-09-27: Europa descend
  └─ 2058-12-15: Europa ascend
  └─ 2058-12-20: Begin IO exploration
  └─ 2059-01-20: Return to Europa Outpost
  └─ 2059-06-20: Begin Europa Outpost departure preparations
  └─ 2059-06-25: Crew ascend from Europa Outpost
  └─ 2059-07-05: Begin Ganymede exploration
Inbound   2059-07-10 → 2059-11-15  Transfer          Sun            [0 nodes]

After:

EE-1      2058-07-10 → 2059-11-15  Transfer → Jupiter Exploration → Transfer   Jupiter System
  └─ 2058-07-10: Crew Arrival                        (from Outbound)
  └─ 2058-07-12: Earth Departure for Jupiter system   (from Outbound)
  └─ 2058-09-25: Europa Arrival                       (from Outbound)
  └─ 2058-09-27: Europa descend                        (from Ops)
  └─ 2058-12-15: Europa ascend                         (from Ops)
  └─ 2058-12-20: Begin IO exploration                  (from Ops)
  └─ 2059-01-20: Return to Europa Outpost              (from Ops)
  └─ 2059-06-20: Departure preparations                (from Ops)
  └─ 2059-06-25: Crew ascend from Europa Outpost       (from Ops)
  └─ 2059-07-05: Begin Ganymede exploration            (from Ops)

注:Inbound 无 state node,用户已补充:

  • 2059-07-10: Europa DepartureUses standard trajectory with 112km/s of departure burn
  • 2059-11-15: Earth Arrival, parking to Star Port for the first time
  • 2059-11-16: Europa Expedition 1 crew return

1.6 EE-3 — Europa Expedition 3 (进行中)

Before:

Outbound  2060-02-20 → 2060-05-01  Transfer          Sun            [0 nodes]
Ops       2060-05-01 → (ongoing)    Jupiter Exploration Jupiter System [7 nodes]
  └─ 2060-05-02: Io Arrival
  └─ 2060-05-07: Io descend
  └─ 2060-05-09: Io departure
  └─ 2060-05-11: Ganymede Arrival
  └─ 2060-05-12: Ganymede descend
  └─ 2060-05-21: Ganymede Departure for Callisto
  └─ 2060-05-25: Callisto Arrival

After:

EE-3      2060-02-20 → (ongoing)    Transfer → Jupiter Exploration   Jupiter System
  └─ (from Ops: all 7 state nodes preserved)
  └─ (Outbound 缺 arrival/departure 记录,后续可补充)

2. ST-01 万星源号

2.1 ISSEM-1 — Inner Solar System Exploration Mission 1

Before (5 entries — 含两个目标):

Mercury Transfer   2055-03-20 → 2055-04-17  Transfer          Sun       [3 nodes]
  └─ 2055-03-20: Crew Arrival
  └─ 2055-03-22: Earth Departure for Mercury
  └─ 2055-04-17: Mercury Arrival
Mercury Ops        2055-04-18 → 2055-08-14  Planetary Ops     Mercury   [4 nodes]
  └─ 2055-04-18: Orbital Survey of Mercury begins
  └─ 2055-06-14: First Crewed Surface Landing on Mercury
  └─ 2055-06-15: EVA operations commence
  └─ 2055-06-30: Surface operations complete
Venus Transfer     2055-08-15 → 2055-10-01  Transfer          Sun       [2 nodes]
  └─ 2055-08-15: Departure from Mercury for Venus
  └─ 2055-10-01: Venus Arrival
Venus Ops          2055-10-01 → 2056-03-24  Planetary Ops     Venus     [3 nodes]
  └─ 2055-10-02: Orbital Survey of Venus begins
  └─ 2055-10-10: Landing Probe Deployment
  └─ 2055-11-10: Upper Atmosphere Survey via Callisto MPV
Inbound            2056-03-24 → 2056-04-12  Transfer          Sun       [2 nodes]
  └─ 2056-03-24: Departure from Venus for Earth
  └─ 2056-04-12: Earth Arrival

After (1 entry):

ISSEM-1   2055-03-20 → 2056-04-12  Planetary Ops                Mercury → Venus
  └─ 2055-03-20: Crew Arrival                            (from Mercury Transfer)
  └─ 2055-03-22: Earth Departure for Mercury             (from Mercury Transfer)
  └─ 2055-04-17: Mercury Arrival                          (from Mercury Transfer)
  └─ 2055-04-18: Orbital Survey of Mercury begins         (from Mercury Ops)
  └─ 2055-06-14: First Crewed Surface Landing on Mercury  (from Mercury Ops)
  └─ 2055-06-15: EVA operations commence                  (from Mercury Ops)
  └─ 2055-06-30: Surface operations complete              (from Mercury Ops)
  └─ 2055-08-15: Departure from Mercury for Venus         (from Venus Transfer)
  └─ 2055-10-01: Venus Arrival                            (from Venus Transfer)
  └─ 2055-10-02: Orbital Survey of Venus begins           (from Venus Ops)
  └─ 2055-10-10: Landing Probe Deployment                 (from Venus Ops)
  └─ 2055-11-10: Upper Atmosphere Survey                  (from Venus Ops)
  └─ 2056-03-24: Departure from Venus for Earth           (from Inbound)
  └─ 2056-04-12: Earth Arrival                            (from Inbound)

2.2 MOCM-2 — Mars One Construction Mission 2

Before:

Outbound  2056-06-02 → 2056-07-01  Transfer          Sun       [4 nodes]
  └─ 2056-06-02: Crew Arrival
  └─ 2056-06-04: Picking up Mars One construction cargo
  └─ 2056-06-06: Earth Departure for Mars
  └─ 2056-07-01: Mars Arrival
Ops       2056-07-03 → 2056-10-12  Base Construction  Mars      [4 nodes]
  └─ 2056-07-03: Crew descend to Martian Surface
  └─ 2056-07-20: Heavy Cargo Delivery to Surface via Callisto MPV
  └─ 2056-09-17: MOCM-3 Crew Arrival via XH-01
  └─ 2056-10-12: MOCM-2 Crew ascend to Stellaria
Inbound   2056-10-15 → 2056-11-03  Transfer          Sun       [2 nodes]
  └─ 2056-10-15: Departure from Mars for Earth
  └─ 2056-11-03: Earth Arrival

After:

MOCM-2    2056-06-02 → 2056-11-03  Transfer → Construction → Transfer    Mars
  └─ (合并所有 10 个 state nodes)

2.3 EOCM-1 — Europa Outpost Construction Mission 1

Before:

Outbound  2056-12-15 → 2057-02-25  Transfer          Sun       [4 nodes]
Ops       2057-02-27 → 2057-10-01  Outpost Construction Europa   [3 nodes]
Return    2057-10-04 → 2057-12-20  Transfer          Europa    [2 nodes]

After: 合并为 1 条目 2056-12-15 → 2057-12-209 个 state node。


2.4 SEM-1 — Saturn Exploration Mission 1

Before:

Outbound  2058-06-01 → 2058-10-12  Transfer          Sun             [3 nodes]
Ops       2058-10-12 → 2059-07-01  Planetary Ops     Saturn System   [2 nodes]
Inbound   2059-07-01 → 2059-11-24  Transfer          Sun             [2 nodes]

After: 合并为 1 条目 2058-06-01 → 2059-11-247 个 state node。


2.5 OSSEM-1 — Outer Solar System Exploration Mission 1 (进行中)

Before:

Outbound  2060-02-11 → 2060-07-24  Transfer          Sun       [5 nodes]
  └─ 2060-02-11: Leave Star Port
  └─ 2060-02-12: Crew and Supply
  └─ 2060-02-13: Earth Departure for Neptune
  └─ 2060-07-21: Neptune SOI
  └─ 2060-07-24: Neptune Arrival Burn
Ops       2060-07-25 → (ongoing)    Exploration       Neptune   [4 nodes]
  └─ 2060-07-25: Course Correction Burn
  └─ 2060-07-25: Triton Arrival
  └─ 2060-08-13: Triton Surface Operation
  └─ 2060-11-01: Triton Departure

After:

OSSEM-1   2060-02-11 → (ongoing)    Transfer → Exploration          Neptune
  └─ (合并所有 9 个 state nodes)

3. ST-02 克里斯滕号

3.1 EOCM-2 — Europa Outpost Construction Mission 2

Before:

Outbound  2057-10-06 → 2058-01-19  Transfer          Sun       [0 nodes]
Ops       2058-01-19 → 2058-09-06  Outpost Construction Europa   [0 nodes]
Inbound   2058-09-06 → 2058-11-08  Transfer          Sun       [0 nodes]

After: 合并为 1 条目 2057-10-06 → 2058-11-08,无 state node(所有三段都没有)。


3.2 EE-2 — Europa Expedition 2

Before:

Outbound  2059-04-06 → 2059-06-25  Transfer          Sun       [3 nodes]
Ops       2059-06-25 → 2060-06-28  Planetary Ops     Europa    [3 nodes]
Inbound   2060-06-28 → 2060-08-30  Transfer          Sun       [2 nodes]

After: 合并为 1 条目 2059-04-06 → 2060-08-308 个 state node。


3.3 ME-1 — Mars Expedition 1

这是 ST-02 的一个特例:只有 Operations 条目,没有 Outbound/Inbound。

Ops       2056-11-19 → 2057-09-08  Planetary Ops     Mars      [0 nodes]

保持不变。


4. XH-02 太白号

4.1 AEM — Asteroid Exploration Mission

Before:

Outbound  2057-05-04 → 2057-07-17  Transfer          Sun       [0 nodes]
Ops       2057-07-17 → 2058-01-04  Asteroid Ops      Vesta     [0 nodes]
Inbound   2058-01-04 → 2058-04-17  Transfer          Sun       [0 nodes]

After: 合并为 1 条目 2057-05-04 → 2058-04-17。


4.2 ME-3 — Mars Expedition 3

Before:

Ops       2058-04-17 → 2059-05-04  Planetary Ops     Mars      [0 nodes]
Inbound   2059-05-04 → 2059-07-06  Transfer          Sun       [0 nodes]

After: 合并为 1 条目 2058-04-17 → 2059-07-06。

注:ME-3 没有显式 Outbound(可能 XH-02 在 AEM 返回后直接转入 ME-3)。


4.3 ME-4 — Mars Expedition 4 (进行中)

Before (复杂 — 含两段 outbound/inbound):

ME-3 Inbound        2059-11-04 → 2060-01-06  Transfer          Sun       [0 nodes]
Uncrewed Outbound   2060-01-22 → 2060-02-27  Transfer          Sun       [0 nodes]
ME-4 Ops Part 1     2059-10-24 → 2059-11-04  Planetary Ops     Mars      [2 nodes]
ME-4 Ops Part 2     2060-02-28 → 2060-10-30  Planetary Ops     Mars      [2 nodes]
ME-4 Outbound       2059-08-04 → 2059-10-24  Transfer          Sun       [2 nodes]

此 case 穿插了 ME-3 返航和无人往返,单独处理,不纳入本次合并


6. 缺失 Inbound State Node 的条目

以下 Inbound/Return 条目没有任何 state node,需用户补充 departure/arrival 信息:

Asset Mission Inbound 时段 备注
XH-01 EE-1 2059-07-10 → 2059-11-15 已补充(见上)
ST-02 EOCM-2 2058-09-06 → 2058-11-08 待补充
XH-02 AEM 2058-01-04 → 2058-04-17 待补充
XH-02 ME-3 (crewed) 2059-11-04 → 2060-01-06 待补充
XH-02 ME-3 (uncrewed) 2059-05-04 → 2059-07-06 待补充
Solar Shuttle 3 Mars Return 2060-11-05 → ongoing 待补充

7. ME-4 (XH-02) — 单独处理

不纳入本次合并。


汇总

受影响 条目数 (前 → 后) 备注
XH-01 20 → 8 (+2 已有单条目) 6 个 merged missions
ST-01 17 → 6 (+ 若干维护条目) 5 个 merged (ISSEM-1 五合一)
ST-02 7 → 3 (+ ME-1 单条) 2 个 merged
XH-02 10 → 4 2 个 merged (ME-4 待定)
JW-01 3 → 1 1 个 merged
Solar Shuttle 2 3 → 1 1 个 merged
总计 ~60 → ~23 约删 37 条 state 日志

待确认

  1. ME-4 (XH-02) 的处理方式 — 它有穿插的时间线和无人往返,需单独讨论
  2. Outbound/Inbound 条目中缺失的 arrival/departure state node(如 EE-1 Inbound 完全无 node)是否需要补充?
  3. 合并后 title 的命名规则 — 保持 Operations 原 title 还是改用更简洁的命名?
  4. state_label 字段 — 合并后是否用分号连接(如 "Transfer; Base Construction; Transfer")还是保留 Operations 的 label