From 82fe5a125d944311b9f19ee2bb345a0455d0fbf7 Mon Sep 17 00:00:00 2001 From: leubeem Date: Wed, 17 Jun 2026 15:04:10 +0200 Subject: [PATCH] feat(pm): add IFR arrival scenarios to the chooser MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds the IFR arrival to the PM scenario picker: - Complete chain "IFR Arrival" (Enroute → Approach → Landing → Taxi-in), starting at ifr-enroute-arrival-v1. - Individual phases: Enroute Descent, IFR Approach, IFR Landing (taxi-in already present). All use the arrival airport for frequencies. Co-Authored-By: Claude Opus 4.8 --- app/pages/pm.vue | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/app/pages/pm.vue b/app/pages/pm.vue index 39e9fb2..5f66a49 100644 --- a/app/pages/pm.vue +++ b/app/pages/pm.vue @@ -1798,6 +1798,17 @@ const SCENARIOS: Scenario[] = [ noChain: false, airport: 'arr', }, + { + id: 'ifr-arrival', + name: 'IFR Arrival', + subtitle: 'Enroute → Approach → Landing → Taxi-in', + chain: 'ifr-enroute-arrival-v1 → ifr-arrival-v1 → ifr-tower-landing-v1 → taxi-in-v1', + icon: 'mdi-airplane-landing', + startFlow: 'ifr-enroute-arrival-v1', + isComplete: true, + noChain: false, + airport: 'arr', + }, // ── Individual phases ──────────────────────────────────────────────────── { id: 'clearance', @@ -1865,6 +1876,39 @@ const SCENARIOS: Scenario[] = [ noChain: true, airport: 'arr', }, + { + id: 'ifr-enroute', + name: 'Enroute Descent', + subtitle: 'Area Control stepped descent', + chain: 'ifr-enroute-arrival-v1', + icon: 'mdi-arrow-down-bold-circle-outline', + startFlow: 'ifr-enroute-arrival-v1', + isComplete: false, + noChain: true, + airport: 'arr', + }, + { + id: 'ifr-approach', + name: 'IFR Approach', + subtitle: 'STAR, vectors & ILS', + chain: 'ifr-arrival-v1', + icon: 'mdi-radar', + startFlow: 'ifr-arrival-v1', + isComplete: false, + noChain: true, + airport: 'arr', + }, + { + id: 'ifr-landing', + name: 'IFR Landing', + subtitle: 'Established, land and vacate', + chain: 'ifr-tower-landing-v1', + icon: 'mdi-airport', + startFlow: 'ifr-tower-landing-v1', + isComplete: false, + noChain: true, + airport: 'arr', + }, { id: 'taxi-in', name: 'Taxi-in',