Release Notes
PortalV311
Coming Soon: Public Live Flight Viewer
LFV starts with "Map Extent Exceeded" on initial load
LFV: Access AAIR Program Information Link
LFV: Silent loading of flight list
LFV - scale ui on mobile
LFV - optimize screen space usage on mobile
LFV - drone icon in hex
LFV - show flights in specific hex
LFV - hex path coloring
LFV - drone icon in list
LFV - badge in list
LFV - selected state
Coming Soon: Filtering Enhancements
FS - implement api list filtering for work orders
FS - update work order filtering selector
FS - add new Sauron filters to the Operation (UI)
Cannot unselect "incident occurred" filter
FS - remove blurry overlay from filter drawer
BUG - Aircraft filtering on Operations List
FS - update flight log filtering ui
FS - update flight log filtering selector
FS - update work order filtering ui
FS - "Clear All" / "Reset" button
FS - modify filtered operations to use Sauron filters
Operate: Show "last updated" time for the selected flight
OPERATE - display the selected flight's last update time
Bug Fix
BUG: B4UFLY Sizing issue
Coming Soon: Dashboard
DSHBRD - Create Manage Overview page
DSHBRD - Donut Chart Legend
DSHBRD - Donut Chart Component
Operate: Helicopters now have their own traffic symbol
PORTAL: Add asset type roto_adsb
Coming Soon: Auto Sync Flight Logs Android App
Sync - Ensure Android 14+ compatibility
Flight Log - Upload button is gone after the upload process is completed.
Flight Log - "Failed to send the upload request" error on Portal.
Flight Log - File details not populating/displaying for specific logs.
Flight Log - Some videos don't have preview images in the Flight Details drawer.
Flight Log - Flight Details Drawer has issues rendering after a quick upload.
Flight Log - Uploads button doesn't respond to interaction for a couple seconds after app is launched.
Flight Log - "Upload in progress" state stuck after the upload completed.
Flight Log - App is crashing while loading flight details.
Fix for portal side of flight logs upload issue.
New: Launch of Airhub Portal Support website
PORTAL -Update Support URL
PortalV308
Performance Improvement
PORTAL - eslint config migration
SEARCH - MapView location search abstraction
OPERATE - remove
flight-last-position
pre-load queryOPERATE - remove nibbler subscription via group.
B4UFLY - update to v2
OPERATE - update uncrewed purge to 30 sec
Coming Soon: Auto Sync Flight Logs Android App
SYNC - update description for public release
SYNC - Make the app sync files in background
SYNC - Fine tune landscape layout UI
SYNC - login page changes to support controller
Coming Soon: Work Order Management
WOM - Edit View Form Validation & Sumbit
WOM - display work orders in Operate
WOM - add work order section to operation details
WOM - reconfigure sub nav
WOM - show general notes
WOM - operation details panel should use a silent loadable
Coming Soon: Public Live Flight Viewer
LFV: create hex layer
LFV: manual refresh button
LFV: calculate extent threshold
LFV: refresh on pan
LFV: make OperateList and FlightItem common components
LFV: incorporate common OperateList and OperateListItem and FlightItem components into LFV map widget
LFV: create architecture
LFV: Control Data by URL- Extent and Org ID
LFV: Initialize Map by Location
LFV: Initialize Map by Address
LFV: Create map widget container
Bug Fix: Missing symbol for some assets in Operate
BUG - Missing uas-passive drone symbol in Operate
Bug Fix: Custom maps are now available on Operate
OPERATE - display custom map layers
Bug Fixes
YAPPS - survey123 query params
OPERATE - widget hover bug
FS - Table Column Sort Icon Spacing
BUG - filter drawer sorting regression
Bug Fix: Altitude is now shown with thousands separator
OPERATE - display altitude number with thousands separator
Coming Soon: Filtering Enhancements
FS - update orderAsc url param
FS - implement api list filtering for flight logs
FS: Aircraft sort / filter new columns
FS: User sort / filter new columns
FS - enable column header sorting on tables
Bug Fix: Changing user permissions on mobile was failing
BUG - unable to save user permission form on mobile
PortalV307
Coming Soon: Work Order Management
WOM - implement workorder service, replace mocks
WOM - Details View Map
WOM - Empty/Loading List
WOM - Edit view
WOM - Search
WOM - List Map View Initial Extent
WOM - Schedule Operation button
WOM - Cancelled status view
WOM - Link WO on Operation save
Performance Improvement
OPERATE - keep operate widget open
PORTAL - improve posthog feature flag experience
OPERATE - Truncate long flight ID
OPERATE - Widgets z-order
PORTAL - migrate off of growthbook onto posthog FF
Bug Fix
OP DETAILS - App Slot Drawer Open makes Expand section disappear
Coming Soon: Auto Sync Flight Logs Android App
SYNC - swap order of permissions request
PortalV306
Performance Improvement
MARKETPLACE - Fix Undefined Table Key
PORTAL - clean up feature flags
OPERATIONS - display entire operation shape
CARD - Replace Remaining CardListItem Usage
Proxy posthog through /api
Coming Soon: Operation Center
OPERATE - redirect current traffic
OPERATE - Crewed Traffic with No Heading Symbol
OPERATE - Update Crewed purge options
OPERATE - update today's operations list/map based on time
OPERATE - update weather
OPERATE - bug related to uncrewed purging
OPERATE - fix 401 from message-login
OPERATE - fix layer order and hit test
OPERATE - selecting a flight no longer scrolls the list to it
Coming Soon: Auto Sync Flight Logs Android App
SYNC - sort entries newest -> oldest
SYNC - Add git tag to app version
SYNC - cleanup copied files
SYNC - style status badge
SYNC - check upload status for pending flights
SYNC - autosync new files only
SYNC - filter files to 30 days in the past
SYNC - Permissions warning is missing on Files Screen
SYNC - Auto sync should only upload new files
Coming Soon: Work Order Management
WOM - Operation tab
WOM - Overview tab
PortalV305
Performance Improvement
CARD - Replace Manage Cards
CHORE - cleanup arc-gis server references
BRIEFING - investigate how to measure request time of /location endpoint and add logging to FN app.
CARD - Replace Operation Cards
Coming Soon: Operation Center
OPERATE - Empty List View Updates
OPERATE - Map Widget Config Updates
OPERATE - Map location search hook up
OPERATE - Crewed Traffic Symbol Update
OPERATE - Uncrewed Traffic Symbol Update
OPERATE - Crewed View when Map Extent Exceeds Max Extent
OPERATE - Upsell FOO bug
OPERATE - uncrewed height/altitude
OPERATE - Different track for crewed flights
OPERATE - Scrollable flights list container
Coming Soon: Auto Sync Flight Logs Android App
SYNC - Permission card fragment
SYNC - build and release
SYNC - create local sync log
SYNC - Soft Permissions Prompt
SYNC - connect auth0
SYNC - automatic files upload
SYNC - Files list pull to refresh
Coming Soon: Work Order Management
WOM - create map layer for points
WOM - sorting and filtering
WOM - create map layer for polygons
WOM - drawer routing
WOM - create layouts
WOM - setup new @@module
Feature Improvement: Operation Compliance Status is a bit smarter to inform user of what is truly required
OPERATIONS - Compliance rollup + LAANC
Improved API usage analytics
BRIEFING - add M2M token auth to Portal API
Bug Fix: User surveys were redirecting users incorrectly
Deploy new flutter builds to app stores
Bug Fix: There was an issue with viewing flight information when selecting an encroachment
BUG - Encroachments Flight Details
Bug Fix: The Operation Details Report was not working properly
APP - Operation Details Bug
Improved User Interface Styling
HEXGEN - Missing widget title
Feature Improvement: Support Marketplace Apps in Aircraft and User Details View
YAPPS - Portal Aircraft and User Slot
Bug Fix: There was an issue requesting weather sometimes on operation details
WEATHER - operation detail /timelines request failing in production
PortalV304
Bug Fix: Mobile Operation list scrolling was not smooth
PLAN - Operation List Safari Scroll Bug
Coming Soon: Marketplace App slot on aircraft and user
YAPPS - DB and SDK user and aircraft slot
Coming Soon: Operation Center
OPERATE - Uncrewed selected flight location race condition
OPERATE: Uncrewed flight duration
OPERATE - selected state slow to appear
NIBBLER - send extent on POST message-login
NIBBLER - add user_id to the joinGroup message
OPERATE - Operation start time timezone issue
OPERATE - make nibbler a singleton
OPERATE - Operation Layer issues with failed requests
OPERATE - Uncrewed selected map point
OPERATE - list click-away
OPERATE - uncrewed controller layer
OPERATE - uncrewed hot path and historical
OPERATE - Briefing Widget
OPERATE - Weather Widget
OPERATE - operate collections change too frequently
OPERATE - Upsell UI
OPERATE - Update Fricke units
Bug Fix: B4UFLY was making a second briefing API call to UTM without the feature enabled
UTM - utm briefing being requested with feature flag off
Coming Soon: Briefing API observability from Portal and Flysafe
BRIEFING - Route /location request through Portal API
Bug Fix: Button group styling padding was off in the map widget
BUG - ButtonMike button group regression (HexGen, Operate)
Performance Improvement
PERF - set refreshInterval for VectorTileLayers containing volatile flag
DESIGN - Purge old Button component
BRIEFING - update Portal to use v2
PERF - check latest version of ESRI JS SDK for volatile MVT flag
Feature Improvement: Operation Compliance Status is a bit smarter to inform user of what is truly required
OPDETAILS - change overall operation status
OPDETAILS - change compliance roll up status
OPERATIONS - LAANC rollup status conditions
Bug Fix: Public flight viewer now available for anonymous users
YELLOWAPPS - Public Flight Viewer not available for anonymous users
Feature Improvement: Important notifications such as rescinded approvals are not dismissable
PORTAL - non-dismissible notifications
Bug Fix: Community advisory duplicating workflow was broken
BUG - can’t duplicate advisory
Improved User Interface Styling
DESIGN - wire up ButtonMike in rest of product
Bug Fix: User profile updates did not refresh the display
BUG: saving name on profile page doesn't refresh
PortalV303
Coming Soon: Operation Center
OPERATE - Empty/Error States for Crewed/Uncrewed lists
OPERATE - Crewed Traffic Selected Map Item
Bug Fix: Discover map not working on Firefox 92 which some API customers use
Discover map regression Firefox '92
PortalV302
Coming Soon:
Operation Center:
Routes and Operation Details Drawer
List View
Open individual operation from operation link
User Drawer from operation link
Uncrewed Map Layer
Expanded Flight View
Operations Layer
Throttle flights list update
Switch WS to use Keepalive message
Blocked by API not finalized, requiring the context payload (i.e. groups, extent, etc).
Empty List Update
Create Crewed traffic Map Layer component
Remove client-side flight calculation
Add session_start to the websocket data. We will wait to work on this work item until it is complete.
Support new denial reason for further coordination
LAANC - add support for DENY_NO_STSFY_MTGTN reason
Feature Improvements:
Improved User Interface Styling:
Wire up ButtonMike in Home
Grey Collaboration
Wire up ButtonMike in Plan
Wire up ButtonMike in Manage and Discover
Implement operations
Slate Collaboration
Implement surface profiles
Remove WidgetCard
Operations loading UI
Home Operations/Advisories
Marketplace Showcase now available for anonymous users
Bug Fixes:
Bug Fix: Briefing widget sometimes wouldn't load on operation details
The initial investigation revealed this being an issue in UTM error handling. The cause of the issue seems to be the /utm/area API that returns 500 for the specific geometry and when lowerAltitude == upperAltitude.
Bug Fix: Flight log custom app required two clicks to load
Performance Enhancements:
Update PWA icon meta tag
Org Operations locks up in pentest org
Whitelabel change data loading
PortalV301
Coming Soon:
ADSB Traffic Feed:
Map is not updated correctly after WS reconnect
Support Altitude vs Height
Note: Implementation revamping, only Nibbler data would have height and/or altitude, but not Koop data.
It appears that we are currently not using the
height
at all. In Historic traffic, we only usemax_altitude
. In current traffic initial (Koop) data, we usemax_altitude
(and display Max Altitude label). In current traffic web socket (Nibbler) data, we usegeometry.z
(and display Current Altitude label).Koop v2 does not have
altitude
andheight
props.
Remove session_end where clause
Only select needed fields
Collaborate with Fricke on Traffic Positions v2
Note: Code migration to nibbler v2 has been initiated.
Migrate from asset_source_id to session_id
Keep Alive
Note: Implemented sending keep-alive message in open WS, backend resets timeout upon receiving messages.
UTM Operation Workflow:
Briefing on create/edit operation
Feature Improvements:
Improved User Interface Styling:
Advisory Details Summary Spacing Regression
Add button props to ButtonMike
Make ButtonMike handle linkTo prop
Add loading border to ButtonMike
Collaborate with Taryn on Icon/Text Colors
Note: Icon colors consolidated to special cases, default behavior to match icon to associated text. Cases where icons need to contrast with the text (like a danger icon) use the corresponding --asl-icon-color token.
Note: Icon library in Figma updated with a weight selector for lighter weight icons.
Create ButtonMike Component
Note: Migrated from Shoelace Button to a custom component.
Implement Loading States
Note: Loading states for cards are skeletons for loading content.
Note: Skeletons composition updated in Figma.
Improved Home page styling
Weather aggregate indicators now require appropriate permission
Note: Weather alerts are now also permission-based.
Marking Flight Log as Public now requires appropriate permission
Bug Fixes:
Bug Fix: Crewed flight has a controller symbol
Bug Fix: Planner users sometimes could not navigate to Plan
Bug Fix: Flight log would error upon opening
Bug Fix: Flight log map would not pan on search
Bug Fix: Description clamping not recalculated on resize
Performance Enhancements:
Verify email 429 error handling
Limit list size
Add More Security Headers
Console error in telemetry dropdown
Enable All Posthog on Sandbox
WS: Reconnect on error
Operations cleanup refresh check
PortalV300
New Features:
Marketplace Showcase: Launched with various card styles, HexGen in Operation Details, improved YA App Drawer, and more.
Organization Operation Approval Workflow: Implemented aggregate status.
Support Link to Document 360: Updated in the Portal.
Feature Improvements:
Home page styling, mobile Polygon Draw, Weather widget UI, date form entry, SGI Form enhancements, Map widgets tooltip support.
Bug Fixes:
Mobile search suggestions, TFRs on LAANC Compliance, Flight Log telemetry rendering, Multi Select remove item.
Performance Enhancements:
Created a Logger util for PostHog.
Coming Soon:
UTM Operation Workflow enhancements.
Operate - Ops Center View.
PortalV299
Flysafe Bundle permissions support
BUNDLES - make user management work with prefixes
ORGAPP - Implement Permissions
BUNDLES - HexGen Permission
BUNDLES - Flight Log File Tab Permission
BUNDLES - Org Operations Access
Improved Traffic User Interface Styling
Sidebar component should handle multiline header
TRAFFIC - Controller Map Display Widget Update
Coming Soon: UTM Operation Workflow
UTM - Operation Details: UI States for UTM Card
UTM - Operation Details: edit restriction dialogs/logic
UTM - Briefing Operation Only with Approval Provider
UI - Updates to ComplianceCard
UTM - Operation Shape on Map
UTM - Briefing Card + Count
Performance Improvement
UTM - Briefing Error Handling
OPERATIONSv2 - Remove OpsV1 After Launch
PORTAL - drop the V2 prefix in operations code
POSTHOG - Optimize bundle to not import recorder (and any other non-needed bundles)
MAP - debug auth custom webmaps and agol webmaps
BRIEFING - Remove feature flag and legacy B4UFLY code.
POSTHOG - Merge Feature Flag Components
POSTHOG - Proper Error Handling
Improved Map Widget styling
FIGMA - Gradients
WEATHER - Update Widget Icon Size to Match Other Map Widgets
Bug Fix: B4UFLY count was incorrect sometimes
BUG - Wrong and redundant briefing title count
Bug Fix: Operation PDF LAANC Contact information was not using the correct info
OPERATION - PDF Approval Text LAANC Contact
Feature Improvement: Copy Selected Traffic Flight Id to Clipboard
TRAFFIC - Selected Flight Id Copy To Clipboard
Feature Improvement: SGI Form Enhancements
SGI - Restrict access to the survey to only the yellowapp
Feature Improvement: Rescind and Invalid Alert is now in the Notifications in the header
OPERATIONSv2 - Rescind/Invalid Alerts Research
PortalV298
Performance Improvements:
Rearchitected MapView component for improved performance.
New Features: Embeddable FlySafe (BRIEFING-9617):
Updated to use the briefing API.
Bug Fixes and Enhancements:
Fixed an issue where the briefing map widget had an error on the operation details.
PortalV297
Performance Improvements:
Improved mobile search performance.
Addressed loading state reflow issues on the Home page.
New Features:
Traffic: Drone controller location is now displayed on the traffic flight map (if available).
Operations: Improved user experience with the "Get LAANC" button on the operation details map.
Bug Fixes and Enhancements:
Operations: Operation conflicts now require appropriate permissions.
Home: Minor styling improvements, including additional spacing in the FAQ accordion.
Authorization: Updated three authorization email templates.
Coming soon
UTM: Introduction of a UTM Operation Workflow, including briefing rollup status and counts, and a dedicated briefing section.
Organization Operation Approval: Implementation of an Organization Operation Approval Workflow, including editing operations with pending approvals, viewing approvals (pending and responses), and associated panel enhancements.
HexGen: Integration of HexGen into Operation Details, including map tool icon and border updates, and improved surface profile validation text.
PortalV296
Minor styling updates
Minor styling updates to LAANC within Operation Details
Bug Fixes
Search was not working on mobile
Coming Soon
Organization Operation Approval Workflow (x5)
Updates to the SGI Waiver Form (x5)
UTM Operation Workflow (x2)
Controller Location on Traffic (x2)
HexGen in Operation planning (x2)
Updates to LAANC Authorization Workflow (x4)
PortalV295
Performance Improvements
Performance Improvement (x9)
Bug Fixes
Android sometimes crashes when selecting dates
Surface profile sketch path sometimes did not display
Unhandled LAANC error causes blank/edit page
Feature Improvements
Updates to map widgets styling and interactivity
Map Layers restore defaults button is less obtrusive
Operation conflicts now ignore past operations
Coming Soon
HexGen in Operation planning (x5)
Organization Operation Approval Workflow (x3)
Updates to LAANC Authorization Workflow (x5)
UTM Operation Workflow (x3)
Controller Location on Traffic (x2)
PortalV294
Feature Improvements
Marketplace App in Operation Details now appears in a panel that slides out from the right
Performance Improvements
Performance Improvement (x3)
Rename
Rename Surface Routing tab on Discover to HexGen Explorer
Minor Styling Updates
Minor styling updates to B4UFLY panel (x2)
Bug Fixes
Claim Operation workflow would not load
Coming Soon
Updates to LAANC authorization workflow in Operation planning (x7)
HexGen in Operation planning (x4)
PortalV293
Feature Improvements
Updates to map widgets styling and interactivity (x2)
Map Layers restore defaults button is less obtrusive
Operation conflicts now ignore past operations
Performance Improvements
Performance Improvement (x2)
Bug Fixes
Surface profile sketch path sometimes did not display.
Coming Soon
Updates to LAANC authorization workflow in Operation planning (x4)
Support for variable height LAANC authorizations
HexGen in Operation planning (x2)
PortalV292
Consistent Font Styling
Consistent Font Styling (x4)
Performance Improvements
Performance Improvement (x2)
Bug Fixes
Operation List was displaying the date twice
Upgrade
Upgrade to the latest version of the ArcGIS Maps SDK for Javascript (v4.30)
Improved Traffic User Interface Styling
Coming Soon
Updates to LAANC authorization workflow in Operation planning (x8)
Support for variable height LAANC authorizations (x2)
HexGen in Operation planning (x5)
Operation PDF with LAANC Authorization Text (x2)
PortalV291
Improved Traffic User Interface Styling
Performance Improvements
Bug Fixes
Historic Traffic filter timezone offset to UTC was incorrect
Current Traffic was not updating the selected flight
Map Layers List was not toggling with secured custom webmaps
Coming Soon
Operation PDF with LAANC Authorization Text
Updates to LAANC authorization workflow in Operation planning
HexGen in Operation planning
Last updated