Migration
Diese Seite wurde aus der AirSimTech MediaWiki migriert.
Human Verification Tests
Overview
This page tracks all MCDU page features that require live human testing on the A320 MCDU display. These items were identified during automated phase verification but cannot be confirmed without a running simulator session.
Each test has a status:
- PENDING — Not yet tested
- PASSED — Confirmed working in live MCDU session
- FAILED — Issue found, tracked for gap closure
- DEFERRED — Blocked by missing infrastructure (noted in remarks)
Summary
| Phase | Page(s) | Total Tests | Passed | Pending | Failed | Deferred |
|---|---|---|---|---|---|---|
| Phase 11 | INIT A/B, PERF 1-6 | 6 | 0 | 4 | 0 | 2 |
| Phase 12 | FPLN, DIR, HOLD, LATREV, VERTREV | 5 | 0 | 5 | 0 | 0 |
| Phase 13 | SID, SID TRANS, STAR, STAR TRANS, VIA, ADEP RWY, ADES RWY, AIRWAYS | 26 | 0 | 26 | 0 | 0 |
| Phase 14 | RADNAV, Climb Wind, Cruise Wind, Descend Wind, History Wind | 32 | 0 | 32 | 0 | 0 |
| Phase 15 | ACARS (index, sub, WX, messages), AOC, ATSU, DATA, STATUS | 35 | 0 | 35 | 0 | 0 |
| Phase 16 | MCDU Menu, Display Adjust, Sim, Xload, Nav Search, Co Rte, Sec FPLN, Misc | 40 | 4 | 36 | 0 | 0 |
| Phase 17 | Missing VB6 Pages, Startup Loading Progress | 5 | 4 | 1 | 0 | 0 |
| Phase 18 | INET 5339 Screen Buffer + Non-Screen Items | 8 | 4 | 4 | 0 | 0 |
| Phase 20 | PERF1 Performance Engine | 3 | 3 | 0 | 0 | 0 |
| Phase 21 | FPLN MCDU Page Overhaul | 6 | 0 | 6 | 0 | 0 |
| Phase 22 | FPLN State Recording and Replay | 5 | 3 | 2 | 0 | 0 |
| Phase 23 | FPLN Modification (Insert/Delete/Overfly/TMPY/DuplicateNames/Navigation/NavDb) | 23 | 0 | 23 | 0 | 0 |
| Phase 24 | FPLN Behaviour with ADEP/ADES (PPOS plan, partial entry, CLR protection, DISC-aware insert) | 8 | 0 | 8 | 0 | 0 |
| Phase 30 | SID Selection (E2E, RWY-only, revision re-stringing, response time) | 4 | 0 | 4 | 0 | 0 |
| Direct Fixes | TMPY toggle, ADEP/PPOS ident, sideview render, PPOS trajectory | 8 | 2 | 6 | 0 | 0 |
Phase 11: INIT, PERF, PROG, FUEL PRED
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 1 | INIT A | SimBrief block conditional | SimBrief-loaded flight plan shows populated fields; manual entry shows dashes/blanks — visual distinction matches VB6 | PENDING | — | Branch exists at InitAPage.vb line 85 |
| 2 | INIT B | ZFWCG/ZFW CLR multi-field side effect | Clearing ZFWCG or ZFW clears all three related fields (ZFW, ZFWCG, block fuel) and shows scratchpad confirmation message | PENDING | — | |
| 3 | PERF 1 | SEC/PRIM V-speed color distinction | SEC path: cyan brackets around V-speeds; PRIM path: amber dashes — color and bracket formatting must match VB6 | PENDING | — | Critical visual difference |
| 3a | PERF 1 | V1/VR/V2 entry persists across ticks | Enter V1 (e.g. 148) on PERF TAKEOFF. Value remains displayed after 2+ seconds (survives KernelTick snapshot cycle). CLR removes it. | PASSED | 2026-04-03 | Fixed: McduActor now sends SetKernelPerfSnapshot to KernelActor |
| 3b | INIT B | ZFWCG default 25, RTE RSV/FINAL large font | INIT B shows ZFWCG=25.0 by default. RTE RSV 5.0% and FINAL 0030 displayed in large (manual) font, not small (computed) | PASSED | 2026-04-03 | Fixed: FuelTableSnapshot defaults match VB6 |
| 4 | PERF 5 | QNH placeholder size branching | QNH field uses correct font size based on distance-to-destination threshold (large when far, small when near) | PENDING | — | Depends on DistToDest not yet in McduContext; uses conservative large placeholder |
| 5 | PERF 2/3 | APPR PHASE CONFIRM toggle | APPR PHASE arm/confirm toggle works correctly on CLB and CRZ pages | DEFERRED | — | Requires APPR_PHASE_ARM in PerfSnapshot |
| 6 | PERF 5 | ADES approach/RWY display (row 03) | Row 03 right side shows ADES approach type and runway | DEFERRED | — | Requires ADES_APPR / ADES_RWY in McduContext |
Phase 12: FPLN, DIR, HOLD, LATREV, VERTREV
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 7 | FPLN | Visual column alignment at MCDU display | Load a flight plan with 5+ waypoints and trajectory result. FPLN1 shows UTC at col 9, IAS/ALT at cols 15/18/19-25; toggle R6 to FPLN2 shows EFOB right-justified at col 14, T WIND at col 17. Columns visually match VB6 A320_MCDU display output | PENDING | — | Column alignment depends on ARINC 429 encoding and MCDU display renderer |
| 8 | FPLN | Circular scroll with large flight plan | Load 12+ waypoint flight plan. Scroll down past last waypoint using R6 scroll. Display wraps to show first waypoint again at bottom of visible slots (circular) | PENDING | — | Circular wrap depends on runtime topIndex state managed by McduActor |
| 9 | DIR | INSERT executes Direct-To and navigates to FPLN | Enter DIR page, select waypoint (L1-L4), confirm post-selection state (yellow title), press R6 INSERT. Active leg changes to selected waypoint; FPLN page displays with new active leg highlighted | PENDING | — | SetDirectTo + NavigateTo(Fpln) involves McduActor and FlightPlanActor coordination |
| 10 | HOLD | INSERT creates holding in flight plan | Select waypoint on FPLN, press R2 (LATREV), press L4 (HOLD), enter inbound course and turn direction, press R6 INSERT. HOLD pattern appears in FPLN display at selected waypoint | PENDING | — | SetHolding command flows through McduActor to FlightPlanActor |
| 11 | LATREV | Three-variant routing (ADEP vs en-route vs ADES) | Select ADEP leg, mid-route waypoint, and ADES leg on FPLN in sequence, pressing L2 (LATREV) for each. ADEP variant shows DEPARTURES at L2, no HOLD. En-route shows HOLD at L4. ADES shows ARRIVALS at R2, ALTN at L4 | PENDING | — | Variant selection depends on leg type in live flight plan |
Phase 13: SID, STAR, VIA, RWY, AIRWAYS
SID / SID TRANS
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 12 | SID | DEPARTURES title with green ADEP | Title shows "DEPARTURES FROM {ADEP}" with ADEP name in green at col 17+ | PENDING | — | fromFix rendered with ~g prefix |
| 13 | SID | Selected SID name in green at row 03 | Selected SID appears at row 03 col 09 in green; replaced on re-selection | PENDING | — | SidPage.HandleLsk -> SetDepartureSid |
| 14 | SID | SID list scroll by 4 entries | Press R6 scroll with 5+ SIDs. List shifts down by 4 entries | PENDING | — | sidTopIndex in McduContext |
| 15 | SID | L5 navigates to ADEP RWY page | Press L5 on SID page. Navigation goes to ADEP RWY page | PENDING | — | NavigateTo(AdepRwy) from HandleLsk L5 |
| 16 | SID TRANS | Selected SID shown with green-space prefix | Selected SID at row 03 in green with leading space (not arrow >) | PENDING | — | Space prefix distinguishes selected from unselected |
| 17 | SID TRANS | Unselected SIDs with cyan arrow prefix | Unselected SID names shown in cyan with > prefix on left column | PENDING | — | VB6 CreateSIDTRANS arrow prefix |
| 18 | SID TRANS | TRANS list right-justified with > suffix | Transition names right-justified in right column with > suffix | PENDING | — | Right column layout per VB6 |
STAR / STAR TRANS / VIA
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 19 | STAR | ARRIVALS title with ADES name | Title shows "ARRIVALS TO {ADES}" with ADES name in green | PENDING | — | toFix rendered with ~g prefix |
| 20 | STAR | APPR+RWY compound display at row 03 | Approach+runway concatenated at row 03 right side in large font | PENDING | — | Requires approach+runway both set |
| 21 | STAR | Selected STAR name in green | Selected STAR appears at row 03 col 01 in green | PENDING | — | StarPage.HandleLsk -> SetArrivalStar |
| 22 | STAR | L1 (VIAS) navigates to VIA page | Press L1 on STAR page. Navigation goes to VIA page | PENDING | — | NavigateTo(Via) from HandleLsk L1 |
| 23 | STAR TRANS | Selected STAR with green-space prefix | Selected STAR at row 03 in green with space prefix | PENDING | — | Same pattern as SID TRANS |
| 24 | STAR TRANS | Unselected STARs with cyan arrow prefix | Unselected entries shown with > prefix in cyan | PENDING | — | VB6 CreateSTARTRANS arrow prefix |
| 25 | VIA | VIA list from approach procedures | VIA list shows available approach transitions for selected approach | PENDING | — | From ProcedureQueryCache.ViaResult |
| 26 | VIA | Selected VIA appears on STAR page row 03 | Select VIA, page returns to STAR. STAR row 03 reflects selection | PENDING | — | SetArrivalVia command |
ADEP RWY / ADES RWY
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 27 | ADEP RWY | Runway list shows airport runways | List shows actual airport runway designators (not SID-derived), 4 per screen | PENDING | — | RunwayRecord data from NavDb |
| 28 | ADEP RWY | Two-line runway: designator, length, CRS + ILS | Line 1: designator, length (m), 3-digit magnetic CRS. Line 2: ILS ident + frequency (if equipped) | PENDING | — | ILS lines absent until McduActor NavDb wiring complete |
| 29 | ADEP RWY | Scroll shifts list by 4 entries | Press R6 scroll with 5+ runways. List shifts by 4 | PENDING | — | adepRwyTopIndex in McduContext |
| 30 | ADEP RWY | Runway selection navigates to SID page | Press L1-L4 to select runway. Page navigates to SID page | PENDING | — | SetDepartureRunway -> NavigateTo(Sid) |
| 31 | ADES RWY | Magnetic course differs from ADEP | CRS uses (TrueHeading - Variation) with 360 wraparound at ADES airport | PENDING | — | Magnetic variation applied at ADES |
| 32 | ADES RWY | Scroll shifts list by 3 entries | Press R6 scroll with 4+ runways. List shifts by 3 (not 4 as ADEP) | PENDING | — | VB6 different scroll step for ADES RWY |
| 33 | ADES RWY | Chr(0) designator shows NO IFR APPR AVAIL | Runway with Chr(0) designator shows "NO IFR APPR AVAIL" in green | PENDING | — | Special case in VB6 CreateADESRWY |
AIRWAYS
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 34 | AIRWAYS | Title color cyan initially | Title "AIRWAYS FROM {wpt}" in cyan with no entries | PENDING | — | Color variable starts as ~b |
| 35 | AIRWAYS | Title turns yellow with TMPY entry | Enter airway + TO point. Title turns yellow indicating TMPY chain | PENDING | — | Color ~y when complete entry exists |
| 36 | AIRWAYS | INSERT* yellow on PRIM, plain on SEC | PRIM: R6 "~yINSERT". SEC: R6 "INSERT" (no color) | PENDING | — | VB6 line 8339 vs 8352 |
| 37 | AIRWAYS | ERASE without yellow on SEC path | PRIM: L6 "~y<ERASE". SEC: L6 "<ERASE" (no color) | PENDING | — | VB6 line 8342 vs 8355 |
Phase 14: RADNAV, Wind Pages
RADNAV
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 38 | RADNAV | Two-column VOR1/VOR2 layout | VOR1 left-justified, VOR2 right-justified at col 14. Frequencies on row below | PENDING | — | Two-column header per VB6 CreateRADNAV |
| 39 | RADNAV | Three-variant dispatch | Standard mode, ILSOwn mode (Nav1IlsMode=True), ILSFS mode (OriginalIlsFreq set) render different layouts | PENDING | — | VB6 three-variant CreateRADNAV/Own/OwnILSFS |
| 40 | RADNAV | VOR2 OBS at col 22 | VOR2 OBS value displays at column 22 on right side | PENDING | — | VB6 VOR2 OBS right-aligned col 22 |
| 41 | RADNAV | ILS label "ILS /FREQ" with space | ILS row label shows space between "ILS" and "/FREQ" | PENDING | — | Exact VB6 spacing confirmed |
| 42 | RADNAV | ADF1/ADF2 two-column layout | ADF1 on left, ADF2 on right with matching header/frequency rows | PENDING | — | VB6 lines 10-11 |
| 43 | RADNAV | L1 VOR1 freq, L2 ILS freq, L3 VOR2 freq, L5 ADF1, R5 ADF2 input | Each LSK accepts correct frequency range and updates display | PENDING | — | ProcessRADNAV frequency entry handlers |
| 44 | RADNAV | R1 VOR1 OBS entry 0-360 | OBS value accepted 0-360; 361+ rejected with FORMAT ERROR | PENDING | — | VB6 OBS range check |
Climb Wind
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 45 | CLIMB WIND | Cyan bracket prompt "[ ]b/[ ]/[ ]" | Empty row shows cyan bracket prompt with b/ color switch | PENDING | — | VB6 line 609 |
| 46 | CLIMB WIND | Filled row cyan with b/ color switch | Entered wind shows "{dir}b/{spd:D3}/{alt}" with color change at b/ | PENDING | — | VB6 line 607 |
| 47 | CLIMB WIND | Speed over 250 rejected | Speed > 250 shows "ENTRY OUT OF RANGE" in amber | PENDING | — | VB6 speed range 0-250 |
| 48 | CLIMB WIND | Partial edit /ALT and DIR/SPD | Enter "/35000" to change altitude only; enter "270/015" to change dir+speed only | PENDING | — | VB6 partial-edit input |
| 49 | CLIMB WIND | R1 navigates to HISTORY WIND | Press R1 without scratchpad. Navigates to History Wind page | PENDING | — | VB6 Case 6 |
Cruise Wind
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 50 | CRUISE WIND | Per-waypoint pager (not table) | Single wind entry per waypoint with PREV/NEXT navigation, not a 5-row table | PENDING | — | VB6 CreateCRUISEWIND is structurally different from CLB/DES |
| 51 | CRUISE WIND | Title shows "CRUISE WIND AT {wpt}" | Title includes active cruise waypoint ident | PENDING | — | VB6 uses FPLNID waypoint name |
| 52 | CRUISE WIND | Direction no zero-padding | Direction=90 displays "90" not "090" (VB6 CStr) | PENDING | — | VB6 CStr(dir) confirmed no padding |
Descend Wind
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 53 | DESCEND WIND | ALTN WIND label + data on right side | Lines 02-03 right side show "ALTN WIND" label and ALTN wind entry (DIR/SPD only) | PENDING | — | VB6 lines 678-686 |
| 54 | DESCEND WIND | R1 ALTN wind entry DIR/SPD only | Enter "180/020" via R1. Two-part format accepted, no altitude | PENDING | — | VB6 ProcessDESCENDWIND ALTN handler |
| 55 | DESCEND WIND | Main rows cyan b/ format | Same b/ color switch as Climb Wind for filled entries | PENDING | — | VB6 line 671 |
History Wind
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 56 | HISTORY WIND | Entries in small green (@s~g) | History entries display in small green font with b/ color switch | PENDING | — | VB6 line 739 |
| 57 | HISTORY WIND | Bottom row always CLIMB WIND + INSERT | No CANCEL mode — L6 and R6 always shown | PENDING | — | VB6 lines 743-744 unconditional |
| 58 | HISTORY WIND | L1-L5 are read-only (no input) | Scratchpad not consumed on L1-L5; history rows are read-only | PENDING | — | VB6 only handles Case 5 (L6) and Case 11 (R6) |
| 59 | HISTORY WIND | R6 INSERT copies to climb wind | History entries copied to temp climb wind, navigates to Climb Wind page | PENDING | — | VB6 Case 11: WindDataTMPY(0) = WindData(4) |
| 60 | HISTORY WIND | Direction no zero-padding | Direction=90 displays "90" not "090" (VB6 CStr) | PENDING | — | VB6 CStr(dir) confirmed |
Phase 15: ACARS, AOC, ATSU, DATA, STATUS
ACARS Index + Sub-pages
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 61 | ACARS MAIN | Left+right column links | Title "ACARS MAIN INDEX", L1-L5 left links, R1-R5 right links (COMM>, REQUESTS>, etc.) | PENDING | — | VB6 CreateFAA_ACARS_MAIN_INDEX |
| 62 | ACARS SUB | Preflight/Enroute/Postflight L6 MAIN | All three sub-index pages show "<MAIN" at L6 navigating to main index | PENDING | — | VB6 ProcessFAA_ACARS_*_INDEX Case 5 |
ACARS Weather
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 63 | ACARS WX | 5-station slot entry | 5 ICAO entry slots, REQUEST* at R6 | PENDING | — | VB6 CreateACARSWX |
| 64 | ACARS WX RECV | 23-char text wrap | Weather text wraps at 23 chars per line (not 24) | PENDING | — | VB6 CreateACARSWXReceived wrap algorithm |
ACARS Messages
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 65 | ACARS MSG LOG | 4-msg scroll with page counter | 4 entries per page, P/T counter, new/old font distinction | PENDING | — | VB6 CreateFAA_ACARS_MESSAGE_LOG |
| 66 | ACARS CREATE | Line-by-line text entry | Scrollable 8-line array, bracket prompts, SEND> at R5 | PENDING | — | VB6 CreateFAA_ACARS_CREATE_MESSAGE |
| 67 | ACARS VIEW | Green small font message body | @s~g font, subject in title, ERASE L5, PRINT> R6 | PENDING | — | VB6 CreateFAA_ACARS_VIEW_MESSAGE |
AOC Pages
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 68 | AOC MAIN MENU | Full layout with correct LSK mapping | L1 GROUND SERVICE, R1 FLT LOG, L4 COMPANY MSG, R4 REPORTS, etc. | PENDING | — | VB6 CreateAOC_MAIN_MENU |
| 69 | AOC CONFIG | Amber brackets for unset Pilot ID | ~a[ ] when empty, white text when set | PENDING | — | VB6 CreateAOC_CONFIG |
| 70 | AOC WX REQ | 3-airport slots with per-slot msg type | METAR/TAF label per slot, SEND* at R6 | PENDING | — | VB6 CreateAOC_WEATHER_REQ |
| 71 | AOC GROUND SVC | 2-page scroll with task line | Page 1/2 indicator, 5 items per page, task at row 12 | PENDING | — | VB6 CreateAOC_GroundService |
ATSU / DATA / STATUS
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 72 | ATSU | Only 2 links (ATC MENU, AOC MENU) | No extra rows — just L1 and R2 | PENDING | — | VB6 CreateATSU1 |
| 73 | DATA 1 | Complete layout with MONITOR links | 3 MONITOR links, A/C STATUS, PRINT, AOC FUNCTION, DATA 2> at R6 | PENDING | — | VB6 CreateDATA1 |
| 74 | DATA 2 | Waypoint/navaid/runway grid | 4-row grid with PILOTS labels, F-PLN WINDS links, <DATA 1 at L6 | PENDING | — | VB6 CreateDATA2 |
| 75 | STATUS | Dynamic A/C type from OPCAMI | Title shows actual aircraft type, not hardcoded "A320-200" | PENDING | — | VB6 CreateSTATUS OPCAMI.ACType |
| 76 | STATUS | Dynamic engine type in green | Row 3 green engine type from OPCAMI.EngType | PENDING | — | VB6 CreateSTATUS |
| 77 | STATUS | IDLE/PERF factors and PILOT STORED | Dynamic factors, conditional waypoint count display, DELETE ALL> | PENDING | — | VB6 CreateSTATUS lines 3570-3585 |
Phase 16: Menus, Display, Sim, Xload, NavSearch, CoRoute, SecFPLN, Misc
MCDU Menus
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 78 | MCDU MENU 1 | Green FMGC at L1, skip L2 when active | L1 green "<FMGC", L2 empty when FMGCActive=True, L3 "<AIDS", L4 "<CFDS", L6 "<ATSU" | PENDING | — | VB6 CreateMCDUMENU1 row skip |
| 79 | MCDU MENU ILS | Paginated ILS correction editor | State A: amber placeholder. State B: ICAO+RWY, IDENT, AIRAC vs SIM FREQ/CRS, PREV/NEXT | PENDING | — | Major rewrite from placeholder |
| 80 | MCDU MENU 2 | Blue RESET FMGC at L5 | Title "MCDU SETUP", ~b<RESET FMGC at L5 | PENDING | — | VB6 CreateMCDUMENU2 |
Display Adjust / Sim / Xload
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 81 | MOVE LINES | 6-row selection with green/yellow highlight | Per-row ~gSELECTED/~y<LSKn driven by SetupSelectedLsk | PASSED | — | VB6 CreateMOVELINES |
| 82 | SIM POSITION | Lat/lon entry and INET register send | HandleLsk R6 sends position via INET registers | PENDING | — | VB6 ProcessSIMPOSITION |
| 83 | XLOAD 1-7 | All 7 pages show static P/N layout | Each page shows part number, no CO RTE import flow | PASSED | — | VB6 CreateXLOAD1-7 confirmed static |
Nav Search
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 84 | SEARCH WPT | Two-state: entry → rich result | State A: amber ident entry. State B: blue ident, green LAT/LONG, PBD data, N/M pagination | PENDING | — | Major rewrite from entry-only stub |
| 85 | SEARCH NAVAID | ILS right-column overlay | For ILS results: RWY IDENT, CATEGORY, COURSE at absolute lines 02-07 | PENDING | — | VB6 CreateSEARCHNAVAID ILS overlay |
Company Routes / SecFPLN
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 86 | SAVE CORTE | Amber placeholder without brackets | Title "SAVE CORTE", ~aaaaaaaaa placeholder (not ~a[ ]) | PENDING | — | VB6 CreateSAVECORTE |
| 87 | SEC INDEX | White SEC F-PLN, asterisk-prefix ACTIVATE | No ~b prefix, ~a*ACTIVATE SEC with asterisk before text | PENDING | — | VB6 CreateSECINDEX |
| 88 | SEC FPLN | Full trajectory columns (UTC/SPD/ALT) | 5-row waypoint display with sub-page toggle (SECFPLN1/SECFPLN2) | PENDING | — | Major rewrite from ident-only stub |
Misc Pages
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 89 | SCREENING | White text, EPRMode logic, INET registers | No ~b prefix, sends registers 2208/2731/2620 via HandleLsk | PASSED | — | VB6 CreateSCREENING; EPR state from reg 2731 via McduContext |
| 90 | GPS MONITOR | Dual GPS1+GPS2 layout | Two-column GPS status matching VB6 | PASSED | — | VB6 CreateGPSMONITOR |
| 91 | REGION | WARNING dialog per VB6 | Shows region warning before region change | PENDING | — | VB6 CreateREGION |
Phase 17: Missing VB6 Pages and Startup Loading Progress
STARTUP Sequence (FEAT-01)
| # | Test | Steps | Expected | Status |
|---|---|---|---|---|
| 17.1 | Startup SEQ shows on both MCDUs | Launch application, observe both Captain and F/O MCDU displays during startup | Both MCDUs show "START-UP" title with loading progress items appearing sequentially (AIRPORTS, NAVAIDS, WAYPOINTS, USER WAYPOINTS, SERVER DATA) | PASSED |
| 17.2 | Loading items show yellow LOADING/RECEIVING | Watch each item as it appears during startup sequence | Each new item shows yellow "LOADING..." (or "RECEIVING..." for SERVER DATA), previous items show green "COMPLETED" | PASSED |
| 17.3 | Startup completes to STATUS page | Wait for startup sequence to finish (all items show COMPLETED) | Both MCDUs automatically navigate to STATUS page after all items complete (not MCDU MENU 1) | PASSED |
| 17.4 | VB6 trailing dots quirk preserved | During startup, observe the NAVAIDS COMPLETED line after waypoints start loading (SEQ 4+) | Row 05 shows "COMPLETED..." with trailing dots (VB6 copy-paste artifact, not a bug to fix) | PASSED |
Gap Audit (FEAT-03)
| # | Test | Steps | Expected | Status |
|---|---|---|---|---|
| 17.5 | No missing MCDU pages | Navigate through all MCDU menu paths that exist in VB6 | Every page accessible in VB6 is also accessible in .NET (excluded: FAA Domestic Reports, McduMenu1_FAA, NewRouteFromFsFlightControl) | PENDING |
Phase 18: INET Screen Buffer Fixes and Final Verification
Software MCDU Display End-to-End (FEAT-02)
| # | Feature | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 18.1 | Screen Buffer | INIT A page renders on software MCDU | Launch .NET FMGC with A320_MCDU connected. Navigate to INIT A page. MCDU display shows INIT A layout with title, field labels, and color codes matching VB6 output. | PASSED | -- | Verifies INET 5339 lstMCDU path (sub-address 02631/02632) |
| 18.2 | Screen Buffer | Page navigation updates display | From INIT A, press NEXT PAGE to go to INIT B. Display updates within 1 second to show INIT B layout. Return via PREV PAGE shows INIT A again. | PASSED | -- | Verifies differential screen buffer updates |
| 18.3 | Heartbeat | Display stays active over 60 seconds | Leave .NET FMGC running on any page for 60+ seconds. Software MCDU display must NOT show "connection lost" or go blank. Heartbeat (sub-address 02637/02638) keeps display alive. | PASSED | -- | Verifies heartbeat wraparound at 254 boundary. Fixed: RenderActivePage on every KernelStateSnapshot tick |
| 18.4 | Heartbeat | Both CPT and FO displays active | If two A320_MCDU instances are running (CPT + FO), both receive independent heartbeats and both stay active simultaneously. | PASSED | -- | Verifies separate _heartbeatCpt and _heartbeatFo counters |
| 18.5 | Non-Screen 02251 | Altitude constraint received by display | Enter a flight plan with altitude constraints. Navigate past departure. Software MCDU constraint display (if supported) shows active constraint value matching the active waypoint. | PENDING | -- | May require A320_MCDU display version that reads 02251 |
| 18.6 | Non-Screen 02706 | ADEP/ADES pair received by display | Enter EGLL as origin and LFPG as destination on INIT A page. A320_MCDU display title bar (if supported) shows EGLL/LFPG. | PENDING | -- | Dependent on A320_MCDU display feature support |
| 18.7 | Screen Buffer | Scratchpad entry and error display | Type an invalid entry (e.g. "ZZZ" in CRZ FL field). Scratchpad shows error message in amber. Clear with CLR key. Error clears and scratchpad returns to empty. | PENDING | -- | Verifies scratchpad color encoding in lstMCDU |
| 18.8 | Screen Buffer | FPLN page scroll | Enter a flight plan with 10+ waypoints. Open FPLN page. Press scroll down. Display updates to show next set of waypoints. Scroll up returns to previous view. | PENDING | -- | Verifies multi-page screen buffer differential updates |
| QT-ihu.1 | GPS MONITOR | Live lat/lon display | With simulator connected and aircraft at a known position, navigate to GPS MONITOR page (MCDU MENU > GPS MONITOR). Row 3 shows GPS1 latitude in DDdMM.MN/S format and longitude in DDDdMM.ME/W format matching simulator position. | PASSED | -- | Verifies 260401-ihu KernelActor reg 1703/1704 -> McduContext pipeline |
| QT-ihu.2 | GPS MONITOR | Live TTRK and GS | On GPS MONITOR page with aircraft moving, Row 5 shows TTRK (true track in 000.0 format), UTC time (HH:MM:SS), and ground speed right-justified. All values update each second. | PASSED | -- | Verifies reg 1768 (TTRK) and reg 1766 (GS) forwarding |
| QT-ihu.3 | GPS MONITOR | Live GPS ALT | On GPS MONITOR page, Row 7 shows GPS ALT (barometric altitude in feet) left-padded to 5 chars, and "NAV/6" at column 18. Altitude updates as aircraft climbs/descends. | PASSED | -- | Verifies reg 1009 (altitude) and 5-char padding |
Phase 20: PERF1 Performance Engine
| # | Feature | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 20.1 | Live MDB Integration | Run full application with real FMGCPERF1.MDB. Observe log line "Perf1Engine: decrypted ok=N fail=M". | IsLoaded = True after LoadAndDecrypt; grid counts for VSCLB, FFCLB, VSDES, FFDES, FFCRZ all > 0. |
PASSED | 2026-04-03 | Test suite uses injected in-memory grids; actual MDB decryption requires real file. |
| 20.2 | Trajectory V/S plausibility during climb | Fly a full climb profile in the simulator. Observe trajectory log output for GetPerformanceCached V/S values. | Climb V/S values decrease with altitude (e.g., ~4500 ft/min near FL050 down to ~500 ft/min near FL350), clearly distinct from old hardcoded formula (2000 - alt/1000*40). | PASSED | 2026-04-03 | Requires live sim session with trajectory computation against real MDB data. |
| 20.3 | Checksum validation coverage | Inspect Perf1Engine log output for decryptFail count after MDB load. |
decryptFail should be 0 or very low. A high fail count indicates checksum formula deviates from VB6. |
PASSED | 2026-04-03 | Exact behaviour depends on real PERF table data. |
Phase 21: FPLN MCDU Page Overhaul
| # | Feature | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 21.1 | FPLN Color Paths | VB6 color paths match on MCDU display | Load a flight plan with trajectory. Normal waypoints and ADEP render in white (no color prefix). TMPY-flagged waypoints render in yellow (~y). MISSAPPR leg types (12, 15, 19, 21) render in cyan (~b). No green (~g) prefix on any waypoint ident. |
PENDING | -- | Visual rendering on hardware MCDU; no automated pixel comparison |
| 21.2 | Constraint Markers | Speed and altitude constraint markers render correctly | Create a flight plan with speed/altitude constraints and active trajectory. Matched constraints show magenta asterisk (~m*) before IAS/altitude value. Unmatched constraints show yellow asterisk (~y*). No constraint shows plain value with no asterisk. |
PENDING | -- | Requires constrained waypoints with trajectory predictions for match comparison |
| 21.3 | TRK Label | Magnetic track label on waypoint after active | During simulated flight with active guidance and non-zero magnetic variation, the waypoint immediately after the active WPT shows "TRK###°" in the label row, computed as prevLeg.TrackToNextDeg - ctx.MagneticVariationDeg, normalised 0-359. |
PENDING | -- | Requires simulated flight state with active guidance |
| 21.4 | BRG/DIST Labels | BRG/DIST from Guidance on active WPT when not slot 0 | When the active waypoint is scrolled so it appears in slot 1-4 (not slot 0), the label row shows "BRG###° DIST###" sourced from ctx.Guidance.MagTrackToWaypointDeg and ctx.Guidance.DistanceToWaypointNm. |
PENDING | -- | Requires active guidance with live BRG/DIST values |
| 21.5 | Fallback Mode | FPLN page displays before first trajectory compute | Start FMGC, enter a flight plan, open FPLN page before trajectory compute completes. Waypoints display from raw FlightPlan.GetAllLegs() wrapped with FromLeg(). No crash, no empty page. Prediction columns show dashes. |
PENDING | -- | Requires FMGC startup state before TrajectoryActor produces ComputedFlightPlan |
| 21.6 | Slot 0 Headers | Column headers when active WPT is in slot 0 | When active WPT is in slot 0 on FPLN1, label row shows "UTC SPD/ALT" in small font. On FPLN2 shows "EFOB T WIND". Hold leg in slot 0 shows "HOLD SPD/ALT". | PENDING | -- | Requires active waypoint visible in slot 0 position on simulator |
Phase 22: FPLN State Recording and Replay
| # | Area | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 22.1 | Record Button | Manual Record button saves valid JSON | Click Record on frmComputedFlightPlan toolbar with an active flight plan. A JSON file appears in recordings/ named yyyy-MM-dd_HHmmss_ADEP-ADES.json with all schema sections populated (FlightPlan, TrajectoryResult, KernelState, InetCache, trigger metadata). |
PASSED | 2026-04-04 | Requires running FMGC with active flight plan and computed trajectory |
| 22.2 | Auto-Record | Build() exception triggers auto-recording | Induce a Build() error (e.g. corrupt trajectory data). A recording appears in recordings/ with TriggerType=Exception and the exception message in TriggerMessage. KernelActor continues running. |
PENDING | -- | Requires inducing a runtime error inside the actor pipeline |
| 22.3 | Auto-Record | Trajectory sanity failure triggers auto-recording | A trajectory with negative FuelRemainingKg, NaN altitude, or altitude >FL500 triggers a SanityFailure recording before Build() proceeds. |
PENDING | -- | Requires live trajectory data satisfying sanity failure conditions |
| 22.4 | Replay Form | frmReplay lists files and performs actor pipeline replay | Open Diagnostics > Replay. Recording files appear in lvRecordings with route, timestamp, and trigger info. Click Replay — D-10 pipeline injection executes and replay log shows injection steps, Build() timing, and leg count. |
PASSED | 2026-04-04 | Requires running actor system and at least one recording on disk |
| 22.5 | Replay Accuracy | Replay produces identical ComputedFlightPlan | Replay a recording made from a known-good state. The comparison panel shows zero differences between the original and replayed ComputedFlightPlan. | PASSED | 2026-04-04 | Requires a valid recording and deterministic Build() output |
Phase 23: FPLN Modification via MCDU-FPLN Page
| # | Area | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 23.1 | Insert Ident | Scratchpad ident insert via L3 | Type "BPK" in scratchpad, press L3 on FPLN page. TMPY activates (yellow legs, INSERT*/ERASE on bottom row). Waypoint at correct position. Scratchpad clears. | PENDING | -- | NavDb LookupByIdent resolves ident; single match inserts directly |
| 23.2 | Insert LatLon | Lat/lon insert via scratchpad | Type "N48W012" in scratchpad, press L3. Lat/lon waypoint inserted with ident "N48W012". | PENDING | -- | WaypointInputParser handles N48W012, 48N012W, 4800N/01200W |
| 23.3 | Insert PBD | Place/bearing/distance insert | Type "BPK/045/10", press L3. PBD waypoint at computed position (045 bearing, 10 NM from BPK). | PENDING | -- | Great-circle bearing+distance formula |
| 23.4 | DISC After New Waypoint | DISC inserted after new waypoint | Insert waypoint where target is not DISC. New waypoint inserted BEFORE target; DISC inserted AFTER new waypoint (between new and target). Double DISCs coalesced. | PENDING | -- | VB6 InsertToFPLN behaviour; two sequential ApplyTmpyInsert messages |
| 23.5 | NOT IN DATA BASE | Unknown ident error | Type "ZZZZZ", press L3. Scratchpad shows "NOT IN DATA BASE". No TMPY activation. | PENDING | -- | NavDb returns 0 matches |
| 23.6 | CLR Delete | CLR+LSK waypoint deletion | Press CLR, then L2 next to deletable waypoint. TMPY activates, waypoint removed; DISC inserted at deletion point (unless deleted leg was DISC). | PENDING | -- | ClearCommand + scratchpad " CLR"; TmpyActor replaces deleted waypoint with DISC |
| 23.7 | NOT ALLOWED | Guard on ADEP/ADES | Press CLR then LSK on ADEP or ADES. Scratchpad shows "NOT ALLOWED". | PENDING | -- | Leg type guard |
| 23.8 | Overfly Toggle | "i"+LSK toggles overfly | Type "i", press L3 on en-route waypoint. Circle marker appears. TMPY activates. | PENDING | -- | FlightPlanLeg.WithOverfly copy-on-write |
| 23.9 | Overfly Guard | "i"+LSK on ADEP/ADES/DISC | Type "i", press LSK on ADEP, ADES, or DISC. "NOT ALLOWED" shown. | PENDING | -- | Guard on non-modifiable leg types |
| 23.10 | TMPY Yellow | Yellow rendering when TMPY active | Make any FPLN modification. All legs render yellow. Title shows flight number + "TMPY" in yellow. L6= |
PENDING | -- | McduFplnLegBuilder prefers TmpyComputedFlightPlan over raw TmpyFlightPlan |
| 23.11 | Undo | L6 undo reverts last change | Make TMPY modification, press L6. Last change reverts. Single-step undo only. | PENDING | -- | TmpyActor._undoSlot one-step backup |
| 23.12 | INSERT Accept | R6 accepts TMPY into active plan | Press R6 (INSERT*). TMPY accepted via CopyFromSecondary. White/green rendering restored without flicker. VNAV markers preserved. | PENDING | -- | McduActor caches plan, promotes _tmpyComputedFp for seamless first render |
| 23.13 | ERASE Discard | R6 discards TMPY | Make TMPY modification, press R6. Plan reverts to original. Green rendering restored. | PENDING | -- | TmpyActor publishes TmpyErased |
| 23.14 | Trajectory Recompute | Trajectory updates on TMPY mutation | Make TMPY modification, observe side view and map view. Trajectory profile reflects TMPY plan immediately. Diagnostic forms auto-switch to TMPY view; toggle syncs across all forms. | PENDING | -- | TmpyComputedFlightPlanResult; DiagnosticTmpyToggleChanged cross-form sync |
| 23.15 | Duplicate Names | Multi-match ident shows disambiguation | Type 3-letter ident with multiple matches, press L3. DUPLICATE NAMES page shows distance/lat-lon/frequency, sorted by distance. | PENDING | -- | VB6 CreateDUPLICATENAMES layout |
| 23.16 | Duplicate Select | Selecting match inserts waypoint | On DUPLICATE NAMES page, press L1-L6. Selected waypoint inserted into TMPY at stored position. | PENDING | -- | Routes through InsertWaypointFromScratchpad pipeline |
| 23.17 | Cursor Scrolling | Cursor up/down on FPLN page | On FPLN with >5 legs, up (14) scrolls list down, down (15) scrolls up (inverted, VB6 parity). Circular wrap. No scroll when <5 legs. | PENDING | -- | ScrollFplnCursor modular arithmetic |
| 23.18 | FPLN Title Row | FPLN page title layout | Title shows flight number followed by page content. No spurious "F-PLN" prefix. Matches VB6. | PENDING | -- | VB6 parity fix |
| 23.19 | DEST Row Colors | FPLN page DEST row | DEST label and data (ADES, UTC, DIST, EFOB) render white, not green. Label small font, ADES large font. | PENDING | -- | ~w (white) instead of ~g (green) |
| 23.20 | Scratchpad Output | Scratchpad to external MCDU | Scratchpad content appears on external MCDU software display. Clear sends "a" prefix. CPT=02257, FO=02356 on register 5339. | PENDING | -- | McduActor.SendScratchpad via INET 5339 |
| 23.21 | FPLN Page Reset | F-PLN hardkey resets scroll | Press F-PLN from any page. FPLN opens at top (_fplnTopIndex=0). | PENDING | -- | NavigateToPage resets on McduPageType.Fpln |
| 23.22 | Navaid Coordinates | Navaid position on map | Insert VOR/NDB via scratchpad. Navaid appears at correct position. ParseSignedDecimalCoord format. | PENDING | -- | Navaid lat/lon uses signed decimal, not DMS |
| 23.23 | Waypoint Coordinates | Waypoint position on map | Insert waypoint via scratchpad. Waypoint at correct position. ParseSignedDecimalCoord format. | PENDING | -- | Waypoint lat/lon also signed decimal |
Phase 24: FPLN Behaviour with ADEP/ADES
| # | Page | Test Description | Expected Behaviour | Status | Tested | Remarks |
|---|---|---|---|---|---|---|
| 24.1 | FPLN | PPOS plan at startup | Start FMGC, navigate to FPLN page immediately. Should show: PPOS (line 1), DISC (line 2), END OF F-PLN, END OF ALTN F-PLN. PPOS displayed in white/default color. | PENDING | -- | FlightPlanActor initialises with WithPposInitialLegs(0,0,0) |
| 24.2 | INIT A | Single ADEP entry stores without plan change | On INIT A, type "EGLL" in scratchpad, press R1. R1 should show "EGLL/aaaa" (partial display). Navigate to FPLN — structure still shows PPOS plan (unchanged per D-08). | PENDING | -- | _pendingAdep stores value; SetOriginDestination updates display only |
| 24.3 | INIT A | Single ADES completes pair and creates plan | On INIT A (after 24.2), type "/EDDM" in scratchpad, press R1. Both ADEP and ADES now set. Navigate to FPLN — should show ADEP (EGLL) → DISC → ADES (EDDM) → END OF F-PLN → END OF ALTN F-PLN. | PENDING | -- | Both pending set triggers NavDb lookup then InitializeFlightPlan |
| 24.4 | FPLN | CLR on ADEP leg blocked | On FPLN page with ADEP/ADES plan, press CLR then press L1 (on ADEP line). Should show "NOT ALLOWED" in white scratchpad. | PENDING | -- | ScratchpadError renders in McduColor.White |
| 24.5 | FPLN | CLR on ADES leg blocked | On FPLN page, press CLR then press LSK on ADES line. Should show "NOT ALLOWED" in white scratchpad. | PENDING | -- | Existing isAdes guard |
| 24.6 | INIT A | CLR on R1 (FROM/TO) blocked in amber | On INIT A page, press CLR then press R1. Should show "NOT ALLOWED" in amber scratchpad (not white). | PENDING | -- | ShowScratchpadMessage with Inet.McduColor.Amber |
| 24.7 | FPLN | DISC insert on ADEP/ADES plan | On FPLN page with ADEP/ADES plan, type a waypoint ident (e.g. "BIBOS") in scratchpad, press LSK on DISC line. Should create TMPY with: ADEP → BIBOS → DISC → ADES. Multiple inserts accumulate: ADEP → WPT1 → WPT2 → DISC → ADES. | PENDING | -- | ElseIf targetIsDisc branch inserts before DISC |
| 24.8 | FPLN | DISC insert on PPOS plan | Restart app (fresh PPOS plan). Type waypoint ident on DISC line of PPOS plan. Should create TMPY with: PPOS → DISC → WPT → DISC → END OF F-PLN. The permanent DISC after PPOS remains. | PENDING | -- | If targetIsDisc AndAlso isPposPlan inserts after DISC + adds trailing DISC |
Quick Task 260411-k5l: Sideview Internal Points
| # | Area | Test | Steps | Status | Remarks |
|---|---|---|---|---|---|
| QT-k5l.1 | Sideview | Internal points visible, curve points hidden | Load any flight plan with curved turns (SID/STAR). Open frmSideView and frmMapView side-by-side. Confirm: (1) small grey filled-circle dots appear along the sideview altitude profile at the same longitudinal positions as the grey dots on frmMapView (structural internal points); (2) NO dots appear on the sideview at the positions corresponding to frmMapView's ORANGE curve-point dots; (3) named waypoint diamonds still render on top; (4) phase lines, T/C, T/D, speed overlay, selection marker, click popup, and cross-view sync are unchanged. | PENDING | -- |
Direct Fixes 2026-04-12: TMPY Toggle, ADEP/PPOS Tagging, Sideview
| # | Area | Test | Steps | Status | Remarks |
|---|---|---|---|---|---|
| DF-01 | Layer 2 | ADEP ident tagged in Layer 2 | Load a flight plan with ADEP (e.g. EDDF). Open Layer 2 list. Confirm the first path point at ADEP position carries the ADEP ident label. | PENDING | -- |
| DF-02 | Sideview | Abeam-tagged curve-point labels visible | Load a plan with curved turns. Open sideview. Confirm abeam-projected labels (e.g. "NATOR") appear on curve points. Labels starting with ** should NOT appear. | PENDING | -- |
| DF-03 | Sideview | Sideview populates instantly on flight plan load | Load a flight plan. Confirm the sideview chart appears at the same time as the map view (no 2-3 second delay). | PASSED | 2026-04-12 |
| DF-04 | TMPY toggle | Single master TMPY toggle on Layer 2 form | Create a TMPY (e.g. insert a waypoint). Confirm: (1) the TMPY/ACT toggle appears only on the Layer 2 list form; (2) frmRawFpln, frmMapView, frmSideView have no toggle control; (3) toggling on Layer 2 switches all 4 views simultaneously. | PENDING | -- |
| DF-05 | MapView | TMPY path rendered in map view | Create TMPY, toggle to TMPY on Layer 2. Confirm map view shows the TMPY flight path (different route) instead of the ACT path. Toggle back — ACT path returns. | PENDING | -- |
| DF-06 | Sideview | TMPY path rendered in side view | Same as DF-05 but for the side view altitude profile. | PENDING | -- |
| DF-07 | PPOS | Bare PPOS plan populates all views | Start app fresh (bare PPOS plan, no ADEP/ADES). Confirm: (1) MCDU FPLN tab shows PPOS + DISC + END OF F-PLN; (2) Layer 1 shows same; (3) Layer 2 shows one point labeled "PPOS" with phase "Cruise"; (4) map view shows PPOS dot at aircraft position; (5) side view shows PPOS point. | PENDING | -- |
| DF-08 | frmRawFpln | No crash on slider toggle with empty data | Switch between Raw/MCDU/Layer1 tabs on frmRawFpln when no trajectory data is available. Should not throw VirtualMode exception. | PASSED | 2026-04-12 |
Phase 30: SID Selection
| # | Area | Test | Steps | Status | Remarks |
|---|---|---|---|---|---|
| 30.1 | DEPARTURE / FPLN | End-to-End SID Selection | On DEPARTURE page, select a SID for the active runway. Confirm: (1) TMPY flight plan is created with yellow TMPY header on FPLN page; (2) ND shows yellow dashed SID legs from runway to first en-route waypoint; (3) SID name appears on DEPARTURE page; (4) INSERT prompt appears on FPLN page. | PENDING | -- |
| 30.2 | DEPARTURE / FPLN | RWY-Only Fallback (no SID) | On DEPARTURE page, select a runway but do NOT select a SID. Confirm: (1) FPLN page shows a single CA leg at 1500ft AGL from the runway; (2) a F-PLN DISCONTINUITY follows the CA leg; (3) no SID name appears on DEPARTURE page; (4) TMPY is created correctly. | PENDING | -- |
| 30.3 | DEPARTURE / FPLN | SID Change with Revisions (FM Guide Example 4) | (1) Select initial SID (e.g. TOBAK1G). (2) INSERT the TMPY. (3) On FPLN page, INSERT a user waypoint between two SID legs. (4) Return to DEPARTURE, select a different SID (e.g. ANEKI5G). Confirm: (5) new TMPY shows new SID legs; (6) user-inserted waypoint from step 3 is preserved (re-stringing via revision prepend); (7) old SID legs are replaced, not duplicated. | PENDING | -- |
| 30.4 | MCDU | MCDU Response Time During SID Selection | While selecting a SID (steps in 30.1), observe MCDU page responsiveness. Confirm: page updates (key presses, line select) respond in under 100ms with no visible freeze or lag, even while the trajectory is recomputing in the background. | PENDING | -- |
How to Test
- Start the A320 FMGC .NET application
- Connect an MCDU display (A320_MCDU software or hardware panel)
- Navigate to the page under test
- Verify the expected behaviour matches exactly
- Report result: update this page and the corresponding
HUMAN-UAT.mdin.planning/phases/
Change Log
- 2026-04-13 — Phase 30 SID selection human verification items (4 tests: E2E SID selection, RWY-only fallback, SID change with revisions, MCDU response time)
- 2026-04-12 — Direct fixes: TMPY single-master toggle, ADEP/PPOS Layer 2 ident tagging, sideview instant render, bare PPOS trajectory synthesis, VirtualMode crash fix (8 tests: 2 PASSED, 6 PENDING)
- 2026-04-11 — Quick task 260411-k5l sideview internal points rendering (1 test: parity with mapview grey dots, curve points excluded)
- 2026-04-05 — Phase 24 FPLN behaviour with ADEP/ADES human verification items (8 tests: PPOS plan startup, partial ADEP/ADES entry, CLR protection on FPLN and INIT A, DISC-aware insert for both plan types)
- 2026-04-05 — Phase 23 expanded to 23 tests: added cursor scrolling, FPLN title/DEST colors, scratchpad INET output, page reset, NavDb coordinate parsing; updated DISC/CLR/INSERT/TMPY descriptions for post-phase fixes
- 2026-04-04 — Phase 23 FPLN modification human verification items (16 tests: insert ident/latlon/PBD, DISC normalization, CLR delete, overfly toggle, TMPY yellow/undo/insert/erase, trajectory recompute, duplicate names)
- 2026-04-04 — Phase 22 tests 22.1, 22.4, 22.5 marked PASSED
- 2026-04-04 — Phase 22 FPLN state recording and replay human verification items (5 tests: manual record, auto-record on exception, sanity failure auto-record, replay form, replay accuracy)
- 2026-04-03 — Phase 21 FPLN MCDU page overhaul human verification items (6 tests: color paths, constraint markers, TRK label, BRG/DIST labels, fallback mode, slot 0 headers)
- 2026-04-03 — Phase 20 PERF1 performance engine human verification items (3 tests: MDB integration, V/S plausibility, checksum coverage)
- 2026-04-01 — Quick task 260401-ihu GPS Monitor live data human verification items (3 tests)
- 2026-04-01 — Phase 18 INET screen buffer and non-screen data items human verification items (8 tests)
- 2026-04-01 — Phase 17 startup loading progress and gap audit human verification items (5 tests)
- 2026-03-31 — Phase 16 final audit human verification items (14 tests: Menus, Display, Sim, Xload, NavSearch, CoRoute, SecFPLN, Misc)
- 2026-03-31 — Phase 15 ACARS/AOC/ATSU/DATA/STATUS human verification items (17 tests)
- 2026-03-31 — Phase 14 RADNAV and wind page human verification items (23 tests: RADNAV, Climb Wind, Cruise Wind, Descend Wind, History Wind)
- 2026-03-31 — Phase 13 procedure page human verification items (26 tests: SID, SID TRANS, STAR, STAR TRANS, VIA, ADEP RWY, ADES RWY, AIRWAYS)
- 2026-03-31 — Added Phase 12 human verification items (5 tests: FPLN, DIR, HOLD, LATREV)
- 2026-03-31 — Initial page created with Phase 11 human verification items (6 tests)