Release Notes
UI
- L2 Gas Lift/Well Performance: Resolved an issue where units of measure (UoM) were not converting correctly on the Setpoint Opportunity sections of the L2 Gas Lift and Well Performance pages.
- L2 Gas Lift: Updated the Setpoint History button to dynamically reflect UoM conversions and labels
- L2 Gas Lift: Updated the operating point indicator on the Valve Performance chart to display at the actual gas flow rate rather than max gas flow rate through each valve
- L2 Gas Lift: Fixed an issue where PSO and PSC values were not displaying correct unit of measure (UoM) conversions on the gas lift traverse chart
- L2 Liquid Loading: Removed fluid check for liquid loading
- General charts: Updated the I2 pages to use a date picker instead of a datetime picker, except for Time Series, Shut-In Analysis, and Choke Erosion sections, which retain the full datetime picker
- Added the ability to handle new anomaly types in schema
Compute
- Added tenant information to message headers to eliminate the need for deserializing the message payload in the notification service
- Added multi well gas lift optimization table cleanup on network delete events
- Simplified RabbitMQ configurations
- Enabled liquid loading alerts for gas lift wells which are considering liquid loading
- Enhanced gas lift/AGL logic to handle periods where production is 0 and gas lift injection rate is above 0
- Fixed an issue where we were incorrectly checking whether the well was on annular flow during PI decline categorization
- Corrected an issue in gas lift critical rate calculations, which were previously being performed at the reservoir node PVT instead of the gauge node PVT. This bug affected calculations only when using 7-day median inputs
- Refined gas lift valve diagnostic logic to handle edge cases, lift integrity issues and end of tubing injection
Data Platform
- Fixed an issue where network events were not working for all deletes
UI
- Data Quality Page: Added Downhole Equipment to the Data Quality page displaying Type, Run Date, Pull Date, Top MD and Bottom MD
- Data Quality Page: Added Forecast to the Data Quality page displaying Date, Oil Rate, Gas Rate, and Water Rate
- Data Quality: Added the following fields to the Production Data Quality page: isAnnularFlow, pcpDischargePressure, pcpIntakePressure, and pcpSpeed
- Data Quality: Added two new columns to the Gas Lift Data Quality page for R and Nominal Valve Size
- Data Quality: Added the following fields to the Formation Data Quality page: bulkDensity, InitialGasContent, langmuirPressure, and langmuirVolume
- Copilot/ESP screen: Launched a new ESP screen within the Copilot dropdown, featuring an ESP Performance chart, ESP Tornado chart, Traverse chart, and Production charts
- Model Settings: Added ESP Optimization to the Model Settings page
- L2 Production: THP (Tubing Pressure) and CHP (Casing Pressure) well tests have been added to display on the pressure chart
- L2: Updated wellhead diagram icon
- L2 Production: Modified the well test query and schema to support new use cases
- Reservoir Performance: Added Calc Reservoir Node Depth and Calc Gauge Node Depth as selectable axes
Compute
- Added a custom BHP profile scenario to support the Advisor/Scenario modeling
- Fixed a bug where missing downhole equipment would throw a warning
- Fixed an issue where the Production Traverse results had incorrect injection pressure and temperature when measured depth was 0
- Fixed a bug where the well forecast variance report GQL query would return NULL if Well XID was not requested
- Updated well test query and logic with new schema changes
- Fixed a minor issue with frictional pressure gradient on injection traverses
- Adjusted Forecast Variance and Prod Delta to exclude days with null BHP or invalid drawdown
- Enabled PIBF Forecast support for a new minimum of 14 valid production days (previously 30)
- Enhanced the DDV model to ensure reservoir pressure calculation is generated regardless of well production length. For cases with fewer than 14 valid production days, it will now assume initial formation pressure. If there are more than 14 days, DDV will fit as usual
- Added support for reservoir performance templates / saving templates
- Refined Hagedorn and Brown liquid holdup calculation to correct typos found in original publications
- Resolved an issue with inaccurate inclination when surveys are augmented for being shallower than the end of casing
Data Platform
- Fixed a bug where updating first/last entry on daily production did not work as expected on the production environment
- Fixed an issue where the well cycling tag was missing after a merge
- Added 3 new measurements to the time series configuration: Flowline Temperature, HP Separator Pressure, and LP Separator Pressure
- Refactor data platform to be schema-first for REST DTOs
- Added 5 new fields to the well test schema: Gas Lift Injection Rate, Condensate Gas Ratio, Water Gas Ratio, Salinity, Type. Oil, Gas and Water rate were also made nullable on the input object with no default value
- Added well forecast counts to GQL schema
- Fixed an issue where downhole equipment had the wrong counts for the well node on GQL
- Removed liftType parameter from the wellsCriteria in GQL
- Fixed an issue where the excel importer failed to parse lists on the network pipe schema
UI
- Improved storybook build time
- Updated the Copilot icon
- Forecast Variance: Removed dark transparent background when selecting filters
- Forecast Variance: Enhanced Forecast Variance Report by setting the filter bar to be expanded by default, adding a darker line between rows for readability, and applying a light blue hover effect over the entire row
- Gas Lift: Fixed an issue where multi well gas lift optimization points were not querying by date on the single well screen
Compute
- Updated backend to save forecast variance results even when the well models are invalid
- Modified RabbitMQ exchange type from direct to topic
- Added DQ checks for downhole equipment and well forecast, resolved an issue with tubing DQ errors, and refactored DQ checks
- Fixed a bug causing failures in well test nodal analysis when a new well test was more recent than the last daily production
- Added lift type determination edge case handling for wells that had gas lift but the entire time injection rate was > 0, CHP and/or THP were 0
- Improved well test nodal analysis to calculate BHP and PI with a merge of available data with daily production
- Improved error handling in ESP and GL optimization executors to prevent workflow failures
- Added forecast variance table truncate functionality to the API for administrators
- Fixed unhandled exceptions when daily production data was missing and when there is only one survey on a well with a single wellbore
Data Platform
- Updated C# client and excel uploader to include well forecast
- Fixed a bug where the first/last daily production dates were not getting updated on the well summary on delete of a daily production record
UI
- Reservoir Performance: Created a custom legend component for charts and resolved a scroll issue
- Reservoir Performance: Corrected a bug where the group icons were incorrect in the legend when charts were displayed in full-screen mode
- Gas Lift: New valve states are now displayed on the Gas Lift Traverse on the Copilot Opportunity tab, in the L2 Gas Lift view, and in the Valve Performance table on L2 Gas Lift. Additionally, a new gas lift valve type has been added to the Scenario Modeling Gas Lift Valve Configuration screen (Dummy Valve Type)
- L2 Gas Lift/UoM User Settings: Fixed an issue where the min and max values in the traverse chart incorrectly scaled when changing UoM units from feet to meters
- Well Performance/Copilot Opportunity tab: Fixed a bug that prevented the Critical Injection Rate line from displaying correctly on the chart
- Forecast Variance Screen: Introduced a new Forecast Variance screen with filter options for downtime hours, production delta, and lift type, displaying detailed variance information in an expandable format
- Copilot/ESP: Added a new chart in the ESP Copilot Opportunity tab for Frequency vs In Situ Rate which displays Pump Max Rate, Pump BEP, Pump Min Rate, Setpoint and other parameters
Compute
- Implemented model for initial ESP performance curves, along with model executor and settings
- Updated the naming convention for gas lift valve states and added support for dummy valves, including settings for port size, PSO, and PSC
- Fixed an issue in ESP optimization where multiple intersection points were not handled correctly, now defaulting to select the rightmost intersection; also ensured BEP rate aligns correctly with the minAllowedBHP line
- Refine forecast variance report resolver to account for various edge cases identified during testing
- Refined Gas Lift / Annular Gas Lift determination logic
Data Platform
- Resolved an issue where data ingest via REST APIs could return unpredictably when the payload contained both valid and invalid records
- Add user xid to user node on GQL to enable federation for reservoir performance templates
UI
- Reservoir Performance: Added 2 new fields to the reservoir performance axis selection under a group named Geomechanics: Minimum Horizontal Stress and Confining Stress
- Model Settings: Added a new "Daily Diagnostics" category to Model Settings, featuring Geomechanical Stress Settings for both conventional and unconventional configurations
- Reservoir Performance: Fixed a bug where adjusting the transparency of a series caused it to disappear
- Reservoir Performance: Prevent non-flowing data from plotting when Time On is selected on the x axis
- Opportunity Tab/ Gas Lift: Updated scatter plot symbols for Gas Lift to better distinguish PVO (hollow points) from PVC (filled points)
- User Tab: Introduced user specific settings in the profile menu which allows users to customize UoM
- All Charts: Updated all chart labels from "BHP (Gauge)" and "BHP (Reservoir)" to "Calc BHP (Gauge)" and "Calc BHP (Reservoir)" for consistency
- Integrated explicit Annular Natural Flow and Annular Gas Lift types to the lift type bar above charts, Advisor Scenario Modeling, and current lift type badges beside well names
Compute
- Added minimum horizontal stress and confining stress calculations with configurable geomechanical settings at well or tenant levels, along with updated performance grouping to handle new fields
- Upgraded Hot Chocolate minor version from 13.9.8 to 13.9.14
- Adjusted logic for lift type determination to avoid incorrect oscillations between Gas Lift (GL) and Annular Gas Lift (AGL)
- Renamed the ALTS executor to ensure the correct model name appears in the model history UI
- Updated Forecast Variance and Opportunity Sankey resolvers to support new lift types
- Made Annular Natural Flow (ANF) and Annular Gas Lift (AGL) explicit lift types in daily data and well models
- Updated schema documentation for WPAR to be explicit on psia vs psig
Data Platform
- Added missing UoM for gauge pressure
- Fixed an issue where timeseries was missing deletes in GQL
- Updated GQL schema to have UoM as non-null
- Fixed an issue where the python client was not setting the correct data format for datetime
- Adjusted the data platform schema to match compute by adding PCP, Annular Gas Lift and Annular Natural Flow to GQL schema as lift types
- Fixed a bug where table upserts keyed off of UWI did not give a valid error when the UWI was not found in the system
UI
- L2 Pages: Added packers to the wellbore diagram, showing top and bottom depth with a tooltip on hover (there is a minimum height for packers so that they are visible on the diagram)
- Network Optimization: Updated the breadcrumb navigation to show Network Optimization and Forecasting sections in conventional tenants
- Network Optimization: Introduced a dropdown menu in the Network / Multi Well Gas List Optimization section for unconventional tenants
- Network Optimization: Fixed a bug where Forecasting and Network Optimization were not being highlighted in the main menu when on the selected page
- Addressed a bug where selecting 'All Wells' from the group breadcrumb in the Model Quality page displayed a blank page when navigating to the Network / Network Optimization page
- Conventional/Forecasting: Fixed an issue where the page would hang if going from the Model Quality screen to the Forecasting page on conventional tenants
- Monitor Dropdown: Fixed a bug where selecting a page from the Monitor dropdown would occasionally open the first page of the dropdown instead of the selected one
- Model Quality: Resolved a bug on the Model Quality breadcrumb where the selected page was not highlighted in the dropdown
- Fixed a navigation issue where opening pages in a new tab incorrectly redirected the user to the first well group in the list instead of the previously selected group
- Reservoir Performance: Introduced a new feature allowing users to save axis settings by pressing 'Enter' in addition to clicking the blue save button
- Multi Well Gas Lift: Resolved an issue where navigating to Multi Well Gas Lift from the main menu resulted in a blank screen when no networks were present in the tenant
- Updated the MultiWellGasLiftHeader component in Storybook and removed unused example files
Compute
- Added packers to WellModel in the graphQL API
- Added a validation check to ensure the Tubing pull date is always greater than or equal to the run date
- Added validation checks for formation (formation salinity and gas gravity ranges), casing/tubing (roughness), and surveys (checks for TVD and MD validity)
- Added a process to delete issues for the current day on every run, preventing the accumulation of results when the same day was processed multiple times
- Added data quality checks for formation Rsi and minimum survey depth
- Removed data quality warnings related to ESP amps and volts in daily production
- Fixed a bug where missing surveys would throw an uncaught exception and cause the well's calculations to fail
Data Platform
- Resolved an issue that caused the router build pipeline to trigger unnecessarily
- Fixed an issue where the bottomhole latitude and longitude was missing from the well graphQL resolved
- Adjusted the Welltest duration field to accept null values in graphQL
UI
- Left Panel: Increased the height on the dropdown menu to display more items
- Scenario Modeling: Changed ALTS titles to match the new Scenario Modeling titles
- Well Performance Dashboard: Changed Setpoint Opportunity tab to be named Copilot Opportunity and Workover Opportunity to Advisor Opportunity (table headers were also updated)
- Non-Dashboard breadcrumb pages now show all Monitor, Copilot and Advisor pages
Compute
- Added a function to clean up a well’s results for the day if the well was running and later became invalid on the same day
- Updated information icons for Advisor Scenario modeling to remove ALTS references
- Updated WPAR aggregate by timestamp instead of date
- Updated rod pump residual logic to allow conditions where PDP = PIP when fluid load is negative
- Updated Rsi during rod pump traverse after gas separation
Data Platform
- Added missing fields to GQL schema for PCP and GLV
- Fixed GasLiftValveInput on GQL schema
- Update C# client and excel importer
- Fixed an issue where the GLV delete by well operation was missing a join and deleted the table
UI
- Upgraded to the latest storybook version
- Restructured the product to organize it into three main flows: Monitor, Copilot, and Advisor, with updated dropdowns and a refined left-hand panel
- Reservoir Performance: Expanded the dropdown menu for axis selection to utilize more screen space
- Reservoir Performance: Added functionality to adjust the X-axis on each chart individually, with an option to apply the selected axis across all charts
- Updated the app to load unit of measure configurations from user settings instead of the tenant node
- Well Performance Dashboard: Fixed an issue where navigating from the WP dashboard to any group except the first one opened the Global Dashboard instead of the required page
- Multi Well Gas Lift: Resolved a bug where attempting to open the L2 Gas Lift page in a new tab redirected users to the WP Dashboard instead of the intended L2 Gas Lift view
- Multi Well Gast Lift: Fixed an issue where clicking on the “open” button on the multi well gas lift chart would redirect to the well performance dashboard instead of the L2 Gas Lift page
- Well Performance/Multi Well Gas Lift: Fixed an issue where L2 Gas lift page would not open correctly if the selected well group name on the Well Performance Dashboard was different than the well group on the multi well gas lift page
- Well Performance Dashboard: Added contextual links to L2 pages to all applicable tabs when a well row is expanded
- Network Optimization tab: added a menu item for Multi Well Gas Lift
Compute
- Added additional checks for gas lift valve type determination
- Implemented logic to allow null tubing run date when there is only one string (which is added for the entire history of the well)
- Well level forecast variance report model and executor
- Added support for app config tenant management
- Refactored ALTS resolvers in GQL to improve Dataloader implementation
- Implemented an aggregated query for the forecast variance report, comparing forecast vs. actual values with options for filtering by lift type, downtime code, and fluid type
- Fixed a bug causing errors when stitching surveys from multiple wellbores in some edge cases
Data Platform
- Modified the wellbore gas lift valve table to include a new field called nominalValveSize and removed sourceMandrelId
- Added a wellcyclingflag to TS measurements
- Updated auth for python client to be backwards compatible
UI
- Well Performance Dashboard & L2 Issues: Added the description field for PI Decline to the chart tooltip on both the well performance dashboard (PI Opportunity) and L2 Issues PI Decline page
- Well Performance Dashboard: Addressed an issue on the Setpoint Opportunity tab where the Setpoint plot line remained visible on the screen even when turned off from the legend
- Well Performance Dashboard: Added a ESP Pressure traverse chart on the Well Performance Dashboard Setpoint Opportunity tab
- Well Performance Dashboard: Updated the performance curve chart to a tornado curve on the Setpoint Opportunity tab for ESP wells. The tooltip now displays downhole rate, head, frequency, head degradation and date
- L2 Bottomhole Pressure: Resolved an issue where the tooltip was not displayed in full-screen mode on the Traverse chart for L2 Bottomhole Pressure
- Reservoir Performance: Fixed a bug where the exported chart data displayed an incorrect column name for the well group
- ALTS Scenario Settings & ALTS Model Settings: Updated ALTS Scenario Settings and ALTS Default Settings to allow a forecast duration of up to 30 years (around 12,000 days)
- Multi Well Gas Lift: Added a "Run" button to the multi well gas lift page which triggers the multi well data to be ran/updated when clicked
- Model History: Converted the last finished dates stamp to display in the user’s browser time zone on the model history screen
- Fixed a bug for invalid date in the ALTS scenario
- Reservoir Performance: Improved the x and y-axis series selection menu by automatically placing the cursor in the search box when the menu opens
Compute
- Added a well model validation for gas lift valves to check that the valves are shallower than the end of the tubing
- Categorization of PI decline anomalies to determine the root cause of the decline
- Added a PCP catalog, which include the following: manufacturer, model, nominal speed, rate coeff C0, rate coeff C1, rate coeff C2, power slope, power intercept, max differential pressure
- Implemented liquid loading prediction algorithm to identify which wells are tending towards liquid loading and estimate time to liquid load
- Updated ML2 and ML3 BHP Model Versions
- Fixed two issues in the ESP Tornado Curve Service: 1) Handling cases where no daily production data is available and 2) Ensuring a tornado curve is returned when the well is on ESP but not flowing
Data Platform
- Added four new fields to wellbore PCP (slip factor, flow factor, head factor, power factor)
- Added a new table for Well Forecast
- Added three new fields to daily production (PCP Pump Fields): pcpSpeed, pcpIntakePressure and pcpDischargePressure
- Added PCP as an available lift type on the well table
UI
- Reservoir Performance: Resolved an issue where the chart settings popup would blink when no changes were made
- Reservoir Performance: Fixed a log scale issue on the Y-axis causing the minimum value to overlap with the first major tick
- L2 Shut-In Detection: Corrected display of extremes when using scientific notation for shut-in superposition rates
- Well Performance: Addressed a problem where well events were not showing up in the notes bar if timestamps were not an exact match to the event timestamps
- L2 Choke Erosion: Fixed a log scale issue where the X-axis minimum values were overlapping on RNDP vs choke chart
- Well List: Improved search functionality to display newly searched wells while also displaying previously selected wells
- Reservoir Performance: Resolved an issue with the Well List search not working correctly after switching between Reservoir Performance and L2 pages
- L2 Bottomhole Pressure: Added missing depth conversion from feet to meters in the traverse chart for bottomhole pressure
- Multiwell Gas Lift: Fixed the symbol for Net Cashflow in the legend
- Reservoir Performance: Addressed an issue where tooltips were displayed in two columns instead of one
- Well Performance: Fixed an issue where the PI Opportunity form covered the Y-axis extreme values
- Standardized the datetime x-axis description throughout the application to ensure consistency between "Datetime" and "DateTime" formats. This change applies to Applies to L2 Production, Shut In, WMC, FMB, Modified Hall Plot, Issues, Time Series
- Reservoir Performance - Axis Settings: Resolved an issue where the color picker in axis settings did not function in full-screen mode
- Reservoir Performance: Fixed a problem where the message "No wells selected" appeared temporarily after switching groups, even though wells were selected
Compute
- Added API service to compute ESP tornado curves
- Resolved an issue where ESPs were sorted by database insertion order rather than the specified order in the ESP input object
- Implemented separate checks for invalid ESP pumps versus pumps missing in the catalog , and added a check for when stage count is equal to zero
- Modified PI decline flag check to only trigger if the last 7 points in the fit window are within the acceptable band
Data Platform
- Added GQL filtering functionality for Well Events
- Added API functionality to insert PCP pump information
- Removed percent as an option for salinity conversion
- Updated the Python client with latest API additions
- Added bottomhole latitude and bottomhole longitude as nullable fields in the well header
- Added four fields for langmuirPressure, langmuirVolume, initialGasContent, and bulkDensity to the Wellbore Formation for coal seam gas reservoirs
- Added a check during build time to check for duplicate versions of database migrations
UI
- Reservoir Performance: Addressed an issue retaining axis settings such as scale and extremes when switching between series types
- Well Performance: Fix ESP performance curves to include actual point and ensure actual is displayed even if it’s outside the range of the performance curve. Updated the x-axis title to “Downhole Rate”. Updated label on plotline to “Actual”
- Fixed an issue preventing ‘open in new tab’ right click option on main menu subpages
- Multi-Well Gas Lift: Add visualization for multi-well gas lift results inside the network optimization section of the main menu. Page shows performance curves for all wells tied to a compressor and allows users to switch between networks and compressors within a network
- Reservoir Performance: Ensure that at least one full log cycle is displayed on logarithmic axes
- Added functionality to isolate a series in charts by using Ctrl+Click (Command+Click on Mac), hiding all other series
- L2 Production: Fixed an issue where enabling and disabling the PI Avg series from the legend caused unexpected behavior (blinking and disabling/enabling) for conventional tenants
- Global Dashboard: Resolved unnecessary page reload when toggling series visibility on the Production Summary chart
- L2 Production: Fixed an issue on the Water Cut / GOR chart where changes to the series in the legend did not persist when switching wells
- Reservoir Performance: Fixed a bug where charts did not display data upon returning to the Reservoir Performance screen from other pages
- Global Dashboard: Fixed issue where the page unnecessarily executed a forecast query for all wells when no wells were selected
- Reservoir Performance: Fixed an issue where the app would crash when switching to a logarithmic scale on charts with a metric containing only zeros. Instead of crashing, the app will now display an empty chart with a 'No data to display' message
- Wellbore Diagram: Added formation names and units of measure to the tooltip with improved handling for multiple formations. Connected UoM conversion to the wellbore diagram.
Compute
- Model History: Corrected a mapping issue to accurately record total seconds for each model run time
- Changed the InSituRate value reported to well performance analysis results for ESP wells to be the average in situ rate across the pump rather than the in-situ rate at intake
- Added the actual operating point to ESP performance curves
- Fixed an issue where SRP DQ errors were saved but were not triggering calculation failures
Data Platform
- Migrate tenant management from database to AWS AppConfig
- Added support for five new units of measure: diameter, compressibility, angle, downhole rate, and salinity
Compute
- Enhanced ESP modeling by updating PVT calculations on a stage-by-stage basis to improve accuracy of delta pressure and head generated through the pump
- Resolved an issue where the optimum total rate for gas wells had injection rate subtracted on Multi Well Gas Lift
UI
- Reservoir Performance: Fixed an issue where deselecting a well in the legend also deselected the group when the well name matched the group name
- Addressed an edge case where new users logging in with the Edge browser were occasionally seeing the conventional portal for unconventional tenants
- Reservoir Performance: Added unit of measure (UoM) conversion for RNP Gas and RNP Liquid
- L2 ALTS: Fixed a bug where the "Save & Continue" button was active for the Current Case scenario in L2 ALTS. The button is now disabled for the Current Case to prevent unintended actions
- Reservoir Performance: Fixed an issue where the y axis settings (Log/Linear, Min, Max) were retained when switching between series and well views (these are now reset when the series is changed)
- Reservoir Performance: Fixed an issue where the x and y axis were not switching between linear and log if only 1 well was selected
- PI Decline Model Settings: Updated the PI Decline Anomaly Settings to validate against negative values and ensure API error handling with cross-field validations
- PI Decline Model Settings: Updated the PI Decline Anomaly Settings by removing FitDataHistory and adding MaxFitWindowSize to match model changes
- L2 ALTS: Implemented a restriction to prevent users from naming a new ALTS scenario as "Base Case" or any variation, with the "Save" button now disabled until a valid name is provided
- Reservoir Performance/Charts: Improved readability of charts with logarithmic scales by marking major grid lines (multiples of 10) with thicker lines
- Cleanup code by reusing the "Apply to all" action on model settings
- Organized and standardized asset icons by categorizing folder structures, making names consistent, and removing unused icons
- Fixed an issue where the tooltip was obscured by the axis title in various charts across the app
- Reservoir Performance Axis Settings: Corrected an issue where the save button remained active despite invalid Min/Max entries
- Standardized the display of units across all settings forms
- Reservoir Performance Axis: Fixed a bug where changing the axis type to linear or logarithmic in series view did not apply correctly
Compute
- PI Decline: Remove FitDataHistory setting and add MaxFitWindowSize (180 days default)
- Liquid loading detection: Added model, executor, and unit tests for detecting liquid loading in wells using historical high frequency data
- Model Settings - PI Decline: Add backend validation for PI Decline model settings
- Multi Well Gas Lift Optimization: Add multi-well gas lift optimization model that will use configured injection networks to optimize well-level gas injection rates on a daily basis respecting both well and compressor constraints
- Updated the calculation for Material Balance Time (MBT) on the reservoir performance page. MBT is now calculated as cumulative liquid divided by downtime-corrected liquid rate
- Update RabbitMQ configurations to support messaging related to multi-well gas lift
- Update request headers to support WAF
Data Platform
- Upgraded various dependencies to address security vulnerabilities
- Updated C# API client request headers to support WAF
- Added GraphQL federation for network types to allow compute platform to extend the schema with multi-well gas lift results; extend network well resolvers with well to allow resolving well-level results from network side of the GraphQL schema
- Add functionality to analyze imported networks as a graph network to enable compressor to well mappings for multi-well gas lift optimization
- Move all unit of measure configurations from tenant configuration to database to support further customization and streamlined adjustment
- Add criteria to network compressor GraphQL schema to enable filtering
- Fix incorrect nullability definitions for various network objects on GraphQL schema
- Fix start/end time filtering issue with allocation GraphQL queries
UI
- Model Settings Page: Resolved an issue where changes made in Model Settings for "Liquid Loading," "Material Balance," and "Well Model Calibration" were not displaying the expected change counters next to their names
- ALTS Screen: Fixed an issue where users were unable to add a new ALTS scenario due to the Save button being inactive after filling out all fields
UI
- Well Performance Dashboard - Updated the handling of rejected opportunities so that they no longer appear in the notes bar but are still visible in the notes list. Rejected opportunities will now be displayed in red and labeled as "OPPORTUNITY REJECTED" for clarity
- General Tech Debt - Reorganize the application's folder structure
- General Tech Debt - Fix various story issues in storybook
- Production Charts - Adjusted data logic for production charts to plot production and well performance analysis results separately to avoid edge cases where data is not displayed or rendering fails
- ALTS - Change forecast start date and duration to be scenario settings instead of well level settings to enable simultaneous forecast and hindcast
- Add new settings to scenario-level
- Remove settings from well-level
- Add base case default forecast duration and well name title to ALTS settings in Model Settings page
- Update ALTS forecast view forecast start plot line to reflect the start date of the base case scenario
Compute
- Allow tenant type to be resolved from tenant node of GQL
- ALTS - Modify modeling and settings to support each scenario having its own start date, enabling simultaneous forecast and hindcast
Data Platform
- Update allocation table to include audit fields to fix GQL query errors
- Federate tenant node on GQL to enable extension from compute platform
UI
- Well Performance: Increased the size of the Well Test markers and changed shape to triangles on production charts.
- Well Performance: Updated the icon for BHP (Gauge) to keep the triangle shape exclusive to Well Test markers
- Model Settings: Added a scroll feature to the model settings list
Compute
- Change PI Decline Anomaly logic and PI opportunity to avoid flagging ‘normal’ current days when the recent trend is in decline
- Corrected the formatting of default values in model configuration input types to fix schema conflict with UI preventing saves in some edge cases
Data Platform
- Updated documentation for OpenAPI input objects to allow documentation to be applied to excel importer template
- Added Network and Timeseries tables to Excel Importer and updated C# Nuget package
- Fixed an issue where network compressor constraint had two fields that were not found (sourceID, networkXid) when querying
- Removed name field from GQL for Network Well, Compressor, and Separator
- Added feature to query networks by type
- Added foreign key relationship between Network Well and Well to ensure consistency between the two for modeling
UI
- Well Performance Dashboard / Setpoint Opportunity: Fixed an issue where more than one opportunity could be created per day for the same well
- L2 Dropdown Menu: Increased the height of the dropdown menu on conventional tenants to eliminate the need for scrolling
- L2 Shut In: Updated the query logic for L2 shut-in events to ensure all events after the last daily production date appeared
- L2 Time Series: Standardized the display of date and time on the x-axis black badge across different zoom levels, and updated the x-axis description to "Datetime" for clarity
- Setpoint Opportunity/PI Opportunity: Resolved an issue where user's initials were missing after saving a Setpoint or PI opportunity
- L2 Issues/Downtime: Added a chart legend for the downtime view on L2 Issues
- PI Production Chart CSV Export: Added CSV export for Production Chart/Data Conversion
- L2 Issues / PI Decline: Added plot lines on PI chart on days with issues
- Well Performance Dashboard: Implemented change tracking for the new accept/reject flow
- Model Settings: Introduced a new field to enable or disable event detection settings
- Model Settings: Renamed PI Decline Anomaly settings to "PI Decline Anomaly Detection" for consistency
- L2 Static Material Balance: Revised display logic for L2 SMB to prevent mismatches between daily production records and WPAR indexes, using dates rather than index to compare the data, to avoid UI errors in some edge cases
- Model Settings: Added choke erosion anomaly settings for conventional tenants. These settings are also accessible from the L2 Choke Erosion page (gear icon)
- Model Settings: Introduced a toggle in well model calibration settings to enable well cycling detection. Additional settings related to well cycling now appear in a dedicated section when the toggle is enabled
- Wellhead Diagram: Improved the wellhead diagram by enhancing text scaling at 90% browser zoom and adding the artificial lift display below the production rates
- L2 Issues - PI Decline: Fixed an issue where selecting different relative time ranges in the PI Decline view always displayed the same data
Compute
- PI Decline Settings: Fix an issue where PI Decline settings are not saving correctly
- Wellbore Diagram: Added all formations to well model to support enhanced wellbore diagram
- Well Cycling Detection Settings: Added a resolver for well cycling detection settings
Data Platform
- Network Header: Added a new field, “type”, to categorize network types as "Production" or “Injection”
- Network Well: Added a new optional field, “upstreamSourceId”, to enable wells to be connected to injection networks
- Network Well Constraint: Added gas lift injection constraints to the well constraint table
- Network Compressor Constraint Table: Created a compressor constraint table to handle gas lift injection constraints
- Schema update to daily production to make the entries in the array non-nullable
- Fixed an issue on various network tables where an internal field “inputSourceId” was appearing on the externally generated schemas and APIs
UI
- Model Settings Page: Added a new section for PI Decline Anomaly Detection
- L2 Gas Lift: Resolved an issue where any action in the charts legend caused the page to scroll to the expanded row
- L2 Gas Lift Valve Table: Linked Critical Flow Boundary data with the plotline and added it to the legend
- Well Performance Dashboard: Fixed an issue where the Setpoint Opportunity row would not expand unless it was double clicked
- Well Performance Dashboard: Addressed an unintended scrolling issue where the page would scroll to any expanded row after interacting with notes
- L2 Production: Fixed an issue where tooltips would appear when adding a new note on L2
- L2 BHP: Corrected the traverse tooltip to ensure that all measured pressure points, including those with zero or identical values, are displayed
- Well Performance Dashboard: Removed unintended re-renderings when interacting with Notes
- Well Performance Dashboard: Introduced a new column and expanded tab for PI Opportunity displaying PI chart and ability to accept/reject a PI restoration opportunity
Compute
- Updated backend to support PI opportunity UI
UI
- Reservoir Performance - Resolved an issue where the color in the legend did not match the curve color, ensuring color synchronization between the legend and series when wells are added in reverse alphabetical order
- L2 BHP - Fixed a problem where any action on the page would reset the left chart legends
- L2 Gas Lift - Addressed a scroll issue in the valve performance table where the page did not automatically scroll to display the expanded row when the OPEN valve was last
- L2 Gas Lift - Fixed layout issues in the L2 Gas Lift Table
- Reservoir Performance - Changed the query execution strategy to use sequential queries instead of parallel, preventing overloading of system resources when querying all wells / all time
- Reservoir Performance - Fixed an issue where the legend automatically scrolled to the top of page after deselecting a well
- L2 Bottomhole Pressure - Resolved a problem where disabling series from the legend broke BHP chart markers by incorrectly moving the triangle marker
- Reservoir Performance - Corrected the column name in exports when the x-axis is not Datetime
Compute
- Split liquid loading critical rate calculations and settings into their own model executor and dedicated settings to support hybrid liquid loading detection and calibration
- Resolve various vulnerabilities in third-party dependencies
Data Platform
- Resolve various vulnerabilities in third-party dependencies
- Implement tenant/variable management system to streamline onboarding
- Added an aggregate for inclination on the deviation survey to get the max value
- Add Well tests and well events to C# and Python SDKs; update excel importer to support new tables
UI
- Added wellbore diagram panel to all L2 pages to see current and historical downhole equipment
- Well performance dashboard - New accept/reject flow and display for optimization opportunities
- L2 BHP - Add dynamic X-axis selection to view other traverse parameters
- L2 BHP - display calculated and measured pressure points with pressure is selected on X-axis
- Add persistence for L2 Gas Lift so series remain hidden/visible when switching wells
- Reservoir performance - implement missing views so view by, group by, and filter by are universally available regardless of axis count
- Model Health - new screen in the model quality section to see model run stats by well
- Production charts - display well test rates as scatter series, if available for a given well
- Modify model settings save payload to facilitate backend optimization for changing only gas lift performance settings
- Integrate data platform well events (interventions and imported comments) to notes
- Wellhead diagram - add wellhead diagram panel to all L2 pages
- Add Rate normalized pressure to series list in reservoir performance
- L2 Gas Lift - show downhole opening and closing pressures on traverse
- L2 Gas Lift - show last well test nodal analysis on nodal plot
- L2 Gas Lift - Implement valve table below charts showing downhole and surface opening pressures, JT cooling, and valve performance curves
Compute
- Update well model configuration change logic to speed up gas lift performance if that was the only model setting changed in a given request
- Fix typo in SRP data quality issue text
- Improve traverse parameter calculation for ESP and SRP segments (handling infinite and NaN values)
- Enhance gas lift modeling and valve performance calculations
- Add unit tests for Network Optimization
- Add well test nodal analysis model
- Improve autoscaling and memory allocations in cloud clusters
- Enhance model run stats to show all models, durations, and statuses, even when wells have invalid data and no models run
- Add Rate Normalized Pressure to Well Performance Analysis Results
- Save Well Model history to database and expose via API to support wellbore diagram
- Enhance PI Anomaly settings and logic to have configurable fit windows
- Add new customer tenants to configurations
Data Platform
- Fix minor issue with well events table and API
- Fix edge case with time series inserts failing
- Add additional units of measure to schema for UI
- Add additional fields to Gas Lift Valve schema
We apologize for the delay in our normal release cycle, and we hope everyone is safe and sound after Hurricane Beryl.
UI
- Reservoir performance - add query splitting to increase the number of wells that can be plotted
- Conventional forecasting - Added planned downtime hours to well constraint dropdown
- Enhanced scenario management for conventional forecasting: added 'Edit' option to forecast settings menu, updated form with new settings for unplanned downtime
- Conventional Well Model Calibration settings page and L2 settings panel for conventional wells
- Network Optimization - Add a button to the UI to run a scheduled scenario
- Conventional forecasting now allows unlimited constraints per equipment, with the flexibility to add multiple constraints of different types daily while restricting duplicates of the same type within the same day
- Allow progression past T&C’s page on mobile
- Conventional forecasting - Implemented enhanced plotting functionality: Forecast start date now correctly plotted from forecast headers, scenarios with non-null 'Actual' values displayed as solid lines, and those with 'Target' values as dashed lines, supporting dynamic visualization including post-start date actuals.
- Reservoir Performance - Added support for logarithmic scale on non-datetime x-axis values
- Add material balance time field on Reservoir Performance
- Refactoring/code cleanup on Reservoir Performance
Compute
- Add Additional Params to Traverse API to enable UI enhancement
- Refactor NetOpt and Forecasting for maintainability, add unit tests
- Add material balance time to WellPerformanceAnalysisResults
Data Platform
- Add Data Platform and GQL Endpoints for Well Events
- Add time range support for WellTest queries
- Add tests to validate spaces and special characters in sourceId
- Remove incorrect unique constraint on NetworkPipe api
- Fix individual deletes which were failing for network endpoints
UI
- Fix issue on reservoir performance where legend color is not updated when changing series color
- Fix issues with display of opportunity on network optimization IPR/SPR chart
- Add labels to controls above chart on Reservoir Performance
- Show well/group filter in ‘by series’ view when grouping is enabled on Reservoir Performance
- Ensure 6 series limit is maintained when switching views on reservoir performance to avoid unreadable charts
- Add Static and Flowing Material Balance model settings UI
- Add group icon to chart tooltip in reservoir performance
- Fix issue with group curves not plotting in reservoir performance with time on x-axes selected
- Don’t show a selected metric in the axis selection when adding a new axis in reservoir performance
- Ensure tooltip shows both the group and the well highlighted if the group curve and the well curve overlay completely
Compute
- Fix issue saving network forecast scenarios causing forecast dates to become invalid
- Fix sorting issues with network forecast results
- Fix network forecast status updates
- Improve implementation of material balance in network forecasting to properly handle multi-segmented static material balance
- Add support for planned and unplanned downtime in network forecasting
- Update primary key of network forecasting results
- API for well note tagging
Data Platform
- Add missed network joint constraints on GQL schema
- Add additional unit testing for network compressor curves
- Rename sourceId’s in network source forecast for consistency
- Add data loader to daily production GQL endpoint for performance optimization
- Fix mapping issues with network pipe constraints
UI
- Fix issue with empty charts displayed when going from reservoir performance to level 2 production screens
- Add expand/collapse all option for well tree
- Revise reservoir performance chart tooltip for readability
- Revise logic for normalized time display on reservoir performance
- Block unsupported x-axis options in reservoir performance when grouping is enabled
- Fix bug in conventional network optimization preventing IPR/SPR chart from being displayed after data schema change
- Fix console warnings from dropdowns which do not have unique keys
- Update reservoir performance to accommodate grouping API schema change
Compute
- Fix API and code issues related to conventional network optimization and forecasting after Okra implementation
- Revise ESP solver to treat gas separation efficiency as constant when only ESP intake is known in daily BHP calculations
- Fix issue in conventional static material balance when the formation and gauge BHP node depths are the same
- Add functionality to reservoir performance grouping API to provide counts at all levels to enable appropriate analysis and UoM conversion
- Revise PI opportunity logic to support new PI decline anomaly
Data Platform
- Fix various issues related to network data ingest from testing (cascade deletes, nullability, and compressor curves)
UI
- ALTS – Pre-fill scenario economic overrides with well-level defaults when activated
- Add L2 page navigation directly from left sidebar / main menu
- Reservoir Performance - Fix pressure conversion issues for grouped series
- Reservoir Performance - Remove legacy reservoir performance from main menu
- Reservoir performance - Fix some edge cases where data artifacts appeared while changing axis options with grouping enabled
- Reservoir performance - Add group icon to chart legend
- Data Quality - Fix issue causing infinite loading on the data view in some edge cases
- Reservoir Performance - Fix issues with plotting the correct time on record when x-axis is a time on type
- Reservoir Performance – Enable ‘group 2’ and ‘group 3’ as options for grouping
- Remove PI decline from basic anomaly settings in preparation for dedicated PI Decline settings
- Gas Lift Performance Settings – Add option for 7-day median smoothing on input data
Compute
- Add 7-day median smoothing configuration and logic to gas lift performance
- Expose “vintage” as a well property on the API
- Fix issue with PI fit tail weighting counts when applying the weights post filtering
- Revise Lasater saturation pressure correlation to avoid discontinuities
- Add new PI decline anomaly logic and settings
- Fix edge cases in DDV solver where solver was failing to converge at limits of initial bounds
Data Platform
- Fixing various issues related to network schema from ingest testing
- Add sourceId to GQL formation resolver
UI
- Fix issue with extra query failing on initial load of reservoir performance causing an error message to be displayed
- Update the precision of formation compressibility in data quality report
UI
- V1 of reservoir performance grouping
- Add first/last switch to reservoir performance time dropdown
- Update schema for ESP performance curve
- Add ESP Gas Separation Efficiency to reservoir performance
- Show gas rate by default for gas well ALTS forecast
Compute
- Change casing profile logic for Well Model to respect casing run date to handle refracs
- Fix issues with tubing/casing diameter check returning an error on work strings which tie into a liner
- Update branch tagging to ECR
- Revise ESP modeling to solve for gas separation efficiency when possible, revise ESP head degradation logic. Improve ESP performance curves
- Add aggregations to API for reservoir performance grouping
- Optimize DDV solver and fix minor filtering and time on issues compared to original model formulation
UI
- Group reservoir performance attribute selections by category
- Fix displayed uplift for gas wells in workover opportunity column on well performance dashboard
- Convert reservoir performance to use new optimized API endpoint
- Fix issue with the label positioning of y-axis series on reservoir performance
- Add axis settings for reservoir performance to adjust color, style, scale, max, and min
Compute
- Grouping API to support reservoir performance aggregations
- Add optimized API endpoint for well performance analysis results
- Update tenant configurations
Compute
- Add delta initial gas rate from base field to ALTS scenario results to support UI showing ALTS gas uplift
- Change tubing OD > casing ID error to be a warning for well models which are not on gas lift or rod pump
UI
- Schema change to ALTS ESP Configuration to support future work on unifying well model and ALTS to support base case copy
- Modify data query on Reservoir Performance to improve performance and allow future scaling of attribute count
- Add new component for text labeled toggle button
- Add casing pressure to ALTS SRP scenario configuration
- Add optional cash flow settings to ALTS scenario configuration
Compute
- Add functionality to DDV gas to configure constant or variable compressibility
- Update critical rate calculation area input to account for annular flow
- Add DQ check for tubing OD >= casing ID
- Migrate ESP catalog to database and optimize ESP catalog loading flow
- Add optional cash flow settings to all scenario configurations and CHP to SRP scenario configuration
- Prototype python model integration via messaging platform to facilitate xpySPN (network optimization) integration
UI
- Reservoir Performance – fix issue with tooltip showing disabled wells in legend
- Reservoir Performance – fix issue with unnecessarily large x-axis range when all time period is selected
- Fix various gauge/atmospheric pressure conversion issues across the application
- Fix minor issue with some null values plotting as 0 in the application
- Add ALTS functionality (NF and Gas Lift) for gas wells
- Add L2 Liquid Loading detection and issues pages for gas wells
- Change ‘optimal’ series behavior of L2 – Gas Lift to show optimal equal to gas lift injection rate when optimization algorithm did not run or indicated current setpoint was optimal
- Reservoir Performance – fix Y-axis drag and drop scaling issue when plotting two series with partial name matches
- ALTS – fix issue tubing configuration roughness getting rounded
Compute
- Fix issue with PIBF hindcast for gas wells where a null BHP (no calculation for the day) was resulting in an AOF rate calculation
- ALTS modeling (NF and Gas Lift) for gas wells
- Refactor and various performance improvements to both ALTS Gas and ALTS Liquid
- Service to recompute gas lift performance for a selection of wells and date range
Data Platform
- Update cloud container images for router to address CVEs
UI
- Reservoir Performance – auto-scroll to selected item in axis series selection dropdown-
- Reservoir Performance – fix issue where charts were plotting 0 for null values
- Refactor well list component to include more context for feature expansion
- L2 Gas Lift – Fix typo on X-axis IPR/VLP label to now read Liquid Rate
- Change BHP series names for conciseness on production charts
- Add ALTS base case default settings to model settings screen
- Add individual critical rates and total gas rate to Reservoir Performance
Compute
- Add fields and logic for total gas rate and Turner, Coleman, and Nagoo critical rates in well performance analysis results
- Refactor critical rate calculations to ensure reported rates always respect the configured tuning factor
Data Platform
- Improve schema documentation for daily production to include unit of measure
Compute
- Force sorting by date for well optimization results
UI
- Implement x-axis unit of measure converter on Reservoir Performance V2
- Correct Reservoir Performance V2 legend symbols to distinguish markers between line and scatter
- L2 Gas Lift – display history of optimal values on bottom right production chart
- Add setting to consider liquid loading for oil wells in Gas Lift Performance
- Add new fields to Reservoir Performance V2: BHP (reservoir node), critical gas rate (gauge node), critical gas rate (surface node), ESP head, and in situ rate (gauge node)
- Fix boosting on all charts to improve performance when large amounts of data are plotting
- Fix y-axis scaling bug on Reservoir Performance
Compute
- Add ALTS default base case economic settings resolver to API to support adding settings to UI
Compute
- Allow liquid loading issues to recompute for full history each time models run
- Add time on to DDV Gas results
- Fix edge case for IRR results including NaN values for time before first production
- Add ESP upthrust and downthrust issue detection for current day’s production
- Add ALTS default configuration to enable base case economics to be adjusted
Compute
- Fix minor issue in ALTS rod pump scenarios where taking the median of the last 30 days CHP was causing issues running rod scenarios on wells currently on gas lift
- Fix issue with ALTS where scenarios with tubing deeper than formation were erroring out
- Fix issue in PI based forecasting bottomhole pressure forecasting adjustments when using a forecast start date in the past
- Add feature in PI based forecasting to skip “Adjust Oil Forecast Rate” in edge cases where the adjusted oil rate would be greater than the forecasted liquid rate
- Add configuration and feature to optionally consider liquid loading critical rate for oil wells to establish a minimum gas lift injection rate if the user feels they behave more like gas wells in steady state conditions
UI
- Beta release of Reservoir Performance V2 (shows “new” on main menu)
- Add four decimals to plunger clearance on ALTS rod pump configuration
- L2 Production – Add line pressure and BHP (reservoir) to pressures chart
- L2 Production and Issues – Add fourth chart with GLR, GOR, and water cut
- L2 Production and Issues – Change PI Oil to PI Liquid for oil wells
- L2 Well Model Calibration – fix minor issue with tooltip getting cut off
Compute
- Change node type and concurrency for cloud deployments for cost and performance optimization
- Refactor IPR, VLP, and Nodal formulations to support exposing additional metrics (critical rate, ESP head, and in-situ rate) in ALTS
UI
- Fix relative time picker options on L2 – Time Series screen to be more relevant
- Fix manual time range selection consistency issues between L2 screens
Compute
- Remove deprecated conventional PI table from database
- Remove deprecated conventional reservoir pressure table from database
- Add ‘enabled’ configuration to enable/disable event detection and choke erosion
- Fix issue with well concurrency for on-premise installations of compute platform
- Fix ALTS issue where missing SRP fillage would cause base case SRP scenarios to fail
- Filter daily production inputs for ALTS to only flowing days
- All ESP VLPs to extend past zero head point (intake will be equal to discharge above this point)
- Add DQ error for formations defined at 0’ measured depth
- Enhance BHP logic to report out pressures at multiple nodes (gauge and reservoir) and handle nuances with various configuration options to ensure consistency in all scenarios
- Impose max rate and pressure data quality checks for input daily production records
- Fix pressure datum correction issue for formation to gauge node in conventional material balance
- Fix issue with anomalies which compute for the full history of the well to make sure past run anomalies are deleted before inserting newly detected ones
- Improve material balance implementation in network optimization and forecasting to support multi-segmented material balance
- Add surface critical rate, end of tubing critical rate, in situ rate, and esp head to well performance analysis results and ALTS forecasts
- Add GLR to ALTS forecast
- Fix issue with entity delete events from data platform to ensure only well types clean up the database and other (non-network types) should recompute the well
- Fix issue with well delete command failing for nodal analysis results
Data Platform
- Add network optimization schemas to data platform for ingest
- Add REST endpoint to delete timeseries configurations by tag sourceId
- Fix issue where deleting ESP by well truncated the entire ESP table
- Add resolver for tenantId on GQL API
- Add Well Test schema to data platform for ingest
UI
- Update schema for minor changes on basic anomaly data types
- Enhance L2 Well Model Calibration to show IPR and SPR fits, update to new API schema
Compute
- Fix edge case with elapsed time when there are duplicate records for the same date in daily production data
- Add pressure normalized rate (oil, gas, liquid) and gas liquid ratio to well performance analysis results and API
- Add additional functionality to re-fit PIBF for ALTS hindcast scenarios
- Add graphQL input validation to Basic Anomaly settings to ensure invalid values cannot be saved via the API
- Add input validation to Basic Anomaly model
Data Platform
- Add graphQL delete mutation for formations
UI
- L2 Time Series – Allow selection of multiple measures without dropdown closing
- L2 Time Series – Show hh:mm:ss on axis / tooltip
- Change current label on gas lift performance curves to show “setpoint” for consistency with well performance dashboard table
- Update network optimization IPR/SPR chart to match new well model calibration data schema
Compute
- Add additional data quality validation for depth, PSO, and PSC to ensure traverse consistency for gas lift optimization
- Fix edge cases where pipe roughness could be assumed 0 when roughness isn’t provided
- Enhance well model lookup function to only check date rather than datetime
- Add app name to Postgres connection for increased debugging and performance analysis
- Add SRP SPM validation to compute parameters for traverse
- Expose model run status via GQL API
- Add additional ESP pumps to catalog
Data Platform
- Fix edge case that allowed formation start date to be null, causing wells to not compute
Compute
- Fix minor issue with diameter, area, roughness, and calculation parameter object clone for annular flow traverses
- Remove unstable VLP logic for system analysis on NF and Gas Lift Wells
- Optimize script to clean up orphaned wells in compute databases
Data Platform
- Optimize connection pooling for UI and data API performance improvements
UI
- Fix minor issue with Y-axis minimum value on some charts having unnecessary decimal precision
- Add basic anomaly settings to the model settings page
- Fix minor issue with display of Y-axis titles on L2 Anomaly charts
- Fix issue with Error and Missing counts occasionally being incorrect on the data quality page; improve color standardization
- Fix issue with gas injection rate not appearing on L2 Timeseries screen
- Fix issue with charts not loading on first visit for Unstable Flow view in L2 Issues
- Add settings for Multisegmented PIBF (default is off)
- Add PI Restoration configuration to ALTS scenarios
Compute
- Refactor conventional Well Model Calibration to streamline model flow, migrate results to database, handle surface only calibrations on wells without downhole gauges, and introduce well cycling detection
- Track well workflow status with start, end, and status of each model run
- Move ALTS on-demand calculation out of API into Compute service layer
- Improve DDV calculation stability by: removing subsampling, tighten initial pressure tolerances, fix small issue with weighting, and optimizing differential evolution hyperparameters
- Add conventional Material Balance settings configuration to database and API
- Clean up unused database tables from old Material Balance formulation
- Remove unused tenant configurations
- Fix issue with BHP ML logic where GOR feature was being passed incorrectly to inference model
- Handle well delete commands from data platform in compute database
- Add PI uplift functionality to ALTS, API, and database
Data Platform
- Update pipeline configurations
- Fix issue with router compatibility after Apollo updates
UI
- Render popover in full screen mode to handle notes
- Fix unit of measure to use scf/STB for gasOilRatio, md-ft for Kh
- Fix issue with margins being doubled in charts
- Fix issue where L2 SMB/FMB was not loading in some situations
Compute
- Fix issue where incorrect gauge depths may being used with multiple gauges entered and a null pull date
- Fix issue where errors and warning data on data quality page were not showing correctly
- Multi segmented PIBF option in PIBF settings
- Material balance updates and enhancements from POC
- Persist calculated lift type in header table for performance optimization
- Fix issues with SPR curves for some edge cases where fits were failing and BHP was extrmely close to reservoir pressure
Data Platform
- Emum changes on unit of measure to support fixes to GOR and Kh
UI
- Improve various elements of L2 time series screen
- Allow roughness to be 3 decimal places on ALTS scenario tubing settings
- Fix issues with display of forecast start date on ALTS
- Fix bug in data quality where search was causing the page to crash
- Fix display issues with lift type above production charts when there are multiple records for the same day in production data
Compute
- Fix issue where wells were trying to compute even when data failed validation
- Fix minor edge case with gauge depth lookup when creating well models
- Reconfigure compute node type in AWS for performance optimization
- Fix issue with message deduplication for entity change events from data platform
Data Platform
- Fix issue with C# client that was causing the excel importer to send too many requests simultaneously
- Fix formation to ensure a null start date defaults to 1/1/1900
UI
- Improve performance of data quality page
- Fix display issues causing the lift type and notes bar above some charts to overlap
- Integrate notes with remaining pages
- Restore chart borders for charts that have the notes bar above them
- Fix note export data on well performance dashboard export
- Automatically scroll to selected well when opening the well selection panel
- Initial implementation of time series / SCADA data viewer L2 page
Compute
- Improve performance of data quality APIs
- Customizable basic anomaly detection settings in API
- Fix small issue with uncaught error trying to compute wells that have no daily production data imported
- Improve missing tubing data quality check to surface errors sooner
- Horizontal scaling and messaging system for compute platform
Data Platform
- Fully deprecate legacy single formation endpoint on API
- Various changes to support messaging platform for horizontally scaled compute platform
Compute
- Minimum BHP for Sucker Rod Pumps based on annular traverse
UI
- Enable BHP setting to use gauge data instead of traverse when available
- Display all actual data in ALTS forecast to enable hindcasting comparison
- Dynamic Y axis resizing
- Add notes bar under lift type bar across the application to view and add historical notes
Compute
- Change default BHP datum for natural flow with tubing and gas lift to end of tubing
- Fix edge case in formation temperature estimation when traversing deeper than the formation
- Fix issue with Mukherjee and Brill stratified flow correlation
- Add BHP configuration to use gauge data when available instead of traversing
- Restore ESP head degradation functionality
UI
- Update bottomhole pressure settings to support smoothing
- Update PIBF settings after schema change to support tenant defaults
- ALTS – default view now has all scenarios selected
- ALTS – change sort order of scenarios to show highest NPV first
- ALTS – allow plotting of other economic parameters; change plots to solid line
- ALTS – when editing scenario, allow switching to another scenario by clicking on the list
Compute
- Fix issue with converting conventional C and n IPRs to SPRs
- Fix issue with ESP pump catalog to better handle missing data
- Add configurable smoothing to bottomhole pressure
- ALTS – subtract current time in hole from base case run life
- Fix issue with network optimization and forecasting not being able to construct input data
- Handle edge case of first formation start date being defined after the start of daily production (will default to the start of daily production and add a DQ warning)
- Enhance annular flow logic to treat gas lift wells with zero injection rate as natural flow
- Fix small issue in Gray bottomhole pressure correlation which led to convergence issues
- Fix issue with SRP VLP curves in ALTS stopping at lower rates than expected
- Move ALTS calculations requested by the UI to a service layer to improve performance and reduce unnecessary compute
- Improve logic for calculating the tail (above recommended operating rate) of ESP performance curves and accuracy of max rate
- API functionality to set tenant-level default model settings. New wells will use the tenant level settings by default if configured
- Increase request size for batch data loaders in API to improve performance loading the well performance dashboard when a group contains more than 1200 wells
UI
- Remember chart legend settings on production tab of well performance dashboard and L2 production when switching wells
- Fix small issue with reset zoom on SMB and L2 production with linked charts
Compute
- Fix edge case for bad surveys leading to an invalid theta value in traverse
- Fix small issue with volumetric efficiency and fillage assignment for SRP scenarios in ALTS
- Fix issue with BHP node depth for different lift types in ALTS scenarios
- Fix small issue with reverse direction traverses for SPR calculations in conventional well model calibration
- Fix issue with network optimization and network forecasting not loading scenario constraints from the database during model runs
UI
- Fix issue with dropdown scrolling when using the keyboard
- Improve group persistence switching between the data quality screens and the rest of the application
- Update shut in model settings with schema changes
- Improve display of NPV on ALTS to avoid numbers getting cut off
- Fix layout issues with ALTS
- Fix layout issue on SMB when opening and closing the well list
Compute
- Increase IPR fidelity to improve VLP shapes on high rate wells
- Fix minor issues with various multiphase flow correlations
- Add Fancher Brown and Poettmann Carpenter multiphase flow correlations
- Enhance BHP and ALTS to fully support annular flow
- Fix issue with gas gravity in gas lift traverses
- Fix issue with low quality solver solutions impacting VLPs for SRP and ESP wells
- Various performance improvements on API
Data Platform
- Improve and enhance C# client excel data importer
- Add IsAnnularFlow (default is False) to Daily Production schema
- Add full DTOs for various Input and Domain classes to improve openAPI schema generation
UI
- Fix some layout issues on L2 Gas Lift
- ALTS – allow creating a new scenario by copying existing
- Update styles handling across the application
- ALTS – show pump curves when editing scenario
- Update DDV Settings API from backend schema change
- Fix issues with x-axis labels after browser resize
- Fix de-select all behavior on well list on screens that limit the maximum number of wells selected
- Fix minor issues with group selection on data quality page
- Fix ESP head unit of measure on pump curves
Compute
- Fix issue on well performance dashboard with forecast summary when wells in the group do not compute
- Add additional indexes to database to optimize performance
- Fix minor issue with discounting equation in ALTS
- Fix entity framework context issue with GraphQL dataloaders
- Better edge case handling for SRP and ESP VLP curves
- Improve gas lift depth of injection logic
- Fix minor issues with PVT correlations
- Change default economic settings for ALTS base case scenarios
- Improve pressure traverse logic for multiple correlations
UI
- Fix sorting issue for L2 Gas Lift setpoint history table
- Fix doubled toast message in Reservoir Performance
- Change downtime curve color on Reservoir Performance
- Change title of well-level ALTS settings
- Show two years of history in ALTS forecast view
- Upgrade charting library
Compute
- Fix some edge cases in pressure traverse when ESP data is missing to allow measured intake pressure to be used
- Major performance refactor to API to increase speed of multi-well queries
- Enforce a max SRP fillage of 100% in SRP intake solution
- Add API to generate ESP performance curves for ALTS scenarios
- Various changes to clean up application logging
- Fix issue with PIBF failing for gas wells which never have oil allocations
- Fix issue with error propagation for gas well gas lift performance if the current day has a null PI
- Fix issue with error propagation for nagoo critical rate for wells which have tubing ran uphill into the lateral
- Don’t return ESP discharge pressures in any scenario where the traverse fails to read intake or compute intake
- Allow SRP intake solver to continue to a lower limit of 14.7 psia intake
- Add additional data quality checks for ESP and SRP equipment
- Optimized and documented traverse correlation codebase
- Refactor Duns and Ros mist flow
- Refactor portions of Orkiszewski correlation
- Add full support for the following correlations: Homogeneous No Slip, Homogeneous Liquid, Single Phase Gas, Single Phase Liquid
- Fix issues with single phase gas scenarios when a multiphase correlation is selected
- Fix issues with accelerational pressure gradient in traverse calculations
- Refactor standard single phase pressure gradient to resolve issues with friction factor calculation
- Clean up implementation of gravity factor, friction factor, dpdz flow sign, and flow direction in traverse
- Revised logic for injection traverses to use single phase gas correlation directly
- Add functionality to infer a temperature profile from formation definition
UI
- Add pie chart export to L2 Downtime
- Add total hours label to pie chart on L2 Downtime
- L2 Gas Lift – add setpoint change history visualization
- Fix bug where the well list doesn’t open on L2 pages in some edge cases
- Fix edge case where gas rate and gas injection rate does not plot in some scenarios on L2 Gas Lift
- Fix issue where long well names can break layouts
- Fix issue with Network Optimization and Forecasting where page is not immediately updated after saving changes
- Fix edge case on Summary Dashboard where the well list can disappear when internet connection is lost
- Add tooltip when long well names get truncated
- L2 Shut In – improve layout so vertical plotline labels do not overlap each other
- Fix Reservoir Performance queries to anchor from most recent daily production rather than today’s date
- Fix issue on production charts where 0 gas lift injection rates are not plotted
Compute
- Don’t allow ESP traverses to output discharge pressure in edge cases
- Update ESP pump catalog
- Fix edge case with fetching downhole equipment at a particular date
- Remove 0 minimum for in situ gas rate in situations where the calculation does not balance
- Change ALTS to only calculate a VLP on day 1 of forecast
- Change default ALTS forecast duration to 2 years
- Clean up abandonment constraint violation logic in ALTS
- Improve ESP pump curve logic to better handle max/min operating rates, max rate for positive head, and tail fitting above max recommended rate
- Add recommended setpoint to notes mutation
- Implement improved SRP BHP model for historical BHPs and ALTS System Analysis
- Update hybrid critical rate logic
UI
- Add new ALTS settings for time to rod and ESP operating range
- Fix compound unit of measure implementation (ex: rate normalized delta pressure)
- Fix layout problems with L2 Issues page
- Fix API error edge case on reservoir performance for IRR on gas wells
- Fix Reservoir Performance layout to avoid offsetting the first chart a row down
- Fix tooltip synchronization issues on linked charts
- Add filtering and sorting to L2 Issues table
- Change SRP diagnostics plot colors to be more readable
- Add downtime layout to L2 Issues
- Fix various edge cases on L2 Issues display
- Add export to L2 issues
- Change notes to save current notes on the most recent daily production instead of today’s date to accommodate typical n-2 allocation timestamps
- Simplify bottomhole pressure model configuration options
- Allow grouping model quality by group1 or all wells (previous only had all wells)
Compute
- Update traverse logic to always compute all 3 correlations for critical rate
- Add trailing 11 day median smoothing to BHP if ML2 or ML3 correlations are configured
- Fix small issues with Mukherjee and Brill BHP correlation
- Fix implementation issues with hybrid BHP to manage memory usage
- Add safety check to ALTS logic to only allow recommendations on cases that compute successfully for the full forecast period
- Remove default values in favor of actual data for base case SRP scenarios in ALTS
- Introduce 7-day threshold of the same lift type to allow forward filling in daily production method logic to avoid incorrectly assigning the wrong lift type due bad lift setpoint data points
- Change ALTS operating cost input to be $/month instead of $/day
- Improve logic for final casing profile determination
- Various improvements to BHP traverse logic
- Add configurations for ALTS time to rod and ESP operating range logic
- Modify ALTS rod pump model to avoid slippage calculations in favor of volumetric efficiency for user-scenarios and fillage for base case scenarios
- Add additional pumps to ESP pump catalog
- Upgrade PostgreSQL packages
- Enhance the API to allow group filtering on data quality summary queries
- Add a safety check to ML3 BHP correlation to avoid negative output pressures in some edge cases
- Improve wellhead pressure selection logic for traverse calculations
- Enhance ALTS to support hybrid BHP configurations
- Enhance notes mutation to accept a timestamp for the time of the note rather than assigning the current time
UI
- Improve toast component implementation
- Address various performance issues across the application
- Fix layout on well list for error icon
- Fix sorting issue with ALTS results on well performance dashboard expanded panel
- Fix layout issue on L2 production when returning from full screen mode
- Initial implementation of L2 Issues view and linking from well performance dashboard
- Fix L2 Gas Lift and Unconventional Forecasting tooltips and units for IPR/VLP charts
- Fix tooltips on conventional Well Model Calibration to show both pressure and rate
- Fix displayed units on gas lift performance curve
- Update API schema to enable Orkiszewski, Xecta ML2, and Xecta ML3 BHP correlations to be configured
Compute
- Orkiszewski, ML2, and ML3 Hybrid BHP correlation integrations
Data Platform
- Migrate time zone discovery to store in the database to optimize query times
UI
- Bugfix to date picker error on L2 screens
- Sort setpoint opportunity notes by updated date in the event they are edited after creation
- Don’t allow two setpoint opportunity notes to be added for the same day; force edit or delete
- Fix issue with L2 WMC where checkboxes in the list were overlapped by dates
- L2 Shut In – fix issue where existing events that were edited are being saved as new rather than updating
- L2 Shut In – Ensure the same event is selected after saving a new or modified event
- Integrate well list into unconventional forecasting
- Upgrade schema for various queries that were optimized
- Fix small issues with well list selection consistency across application
- Fix issue with conventional setpoint opportunities showing the wrong unit of measure
- Fix issue with Reservoir Performance average line disappearing after page refresh
- Fix issue with last and average values not appearing on Reservoir Performance when switching groups
- Improve notifications across the application when no data is available
- Do not allow ALTS forecast start date to be after the last daily production date for a given well; automatically assign the last daily production value if switched into manual mode
- Fix some display overlap issues on ALTS screens
- Fix issue with missing loading indicator on the Summary Dashboard
- Add Gas Lift Details screen to L2 analysis
- Reduce lag time when showing or hiding series on charts
- Fix issues with setpoint opportunity values showing the previous day’s results instead of current day
Compute
- Fix edge case in ALTS where entire workflow would error out if the base case was invalid
- Remove legacy Akka persistence code from the application
- Upgrade from .net6 to .net8
- Ensure the Xid is returned when saving a shut in event
- Migrate unconventional forecasting nodal analysis results to the database from cache Data Platform
Data Platform
- Fix issue with the C# client not authenticating on Macs; update C# and Python clients to latest schema
UI
- Introduce well list selection for L2, Summary Dashboard, and Reservoir Performance pages
- Increase line thickness on all charts by 0.5px
- Fix bug in well data quality where all wells were showing warnings or errors which only applied to a subset of wells
- Update pressure, kh, skin, gas lift traverse series colors for readability
- Fix issue preventing new conventional forecast scenarios from being saved
- Introduce invalid configuration error type for ALTS
- Various bugfixes and improvements for ALTS screens
- Changes to support multiple formation changes over time for conventional SMB, FMB, and Well Model Calibration
- Add time selection to conventional Choke Erosion screen
- Various UI changes to support API upgrades and enhancements to choke erosion, gas lift performance and diagnostics, and well performance analysis results
Compute
- Fix pressure UoM issue for ALTS scenario modeling
- Fix issue with ALTS results returning NaN for some VLP edge cases
- Fix issue with created by field not updating and causing API error for conventional forecasting
- Improve casing profile logic to auto-correct data quality issues and handle all liner/tieback scenarios
- Introduce PIBF gas functionality for gas well forecasting
- Migrate optimization (network optimization and gas lift optimization) results to new table and historize primary phase opportunities
- Various API improvements to support improved and streamlined filtering results
- Fix edge case with downtime correction for conventional productivity index
- Improve survey clean-up logic to handle additional edge cases in input data
- Add current nodal analysis to gas lift performance results
- Changes to support new eventing system between data platform and compute platform
Data Platform
- Eventing system to message compute platform on data changes
UI
- Various improvements to conventional network optimization
- Improve design and user flow of notes
- Add minimum gas lift injection rate setting to gas lift optimization
Compute
- Various improvements to conventional network optimization
- Various improvements to C and n IPR and SPR calculations when limited calibration data points are available
- Various improvements to multi-segmented material balance
- Removed min GOR threshold for critical rate on oil well gas lift and added baseline minimum gas lift injection rate for both gas and oil wells
- Fix edge case on PI opportunity when no data is available after filtering the windowed data
Data Platform
- Add latest daily production to well header node on API
- Improve group-level timezone to find the most common timezone in the group in the event that the group contains wells from multiple timezones
UI
- Various improvements and bugfixes to ALTS UI for edge cases and scenario audit
- Data quality – add Time Series, SRP, ESP, GLV, and Micro String
- Ability to add new Shut In manually
- Bugfix to clean up Static Material Balance axis labels
- Display artificial lift parameters conditionally by lift type on all daily production charts
- Show total gas rate in gas well Gas Lift Performance tooltip
Compute
- Add daily computed lift type change dates to candidates for Well Model lift type changes, fix some edge cases around artificial lift equipment selection for a particular well model
- Fix sorting issue with Hall Plot results on API
- Various bugfixes and enhancements to conventional Network Optimization
- Add scenario status and audit to ALTS
- Enhance on-demand traverse calculations to extend to the bottom of the valid near-vertical wellbore
- Various improvements to ESP modeling
- Bugfix for gas well Gas Lift Performance intermittently failing depending on allocations
- RNDP across choke anomaly
- Conventional IPR/SPR improvements to handle edge cases where C and n fitting was failing, optimize some logic around IPR segmenetation
- PI opportunity calculation from detected anomalies
- Shut In – Improve reservoir pressure SINDy model results, force rates to zero during detected events
- Bugfixes and improvements to multi-segmented flowing and static material balance
- Various improvements and tuning to data quality logic
Data Platform
- Improve partitioning for daily production across all environments
- Add ESP and GLV counts to tubing and wellbore entities
UI
- Add lift type icon to unconventional forecasting and reservoir performance tile titles
- Allow sorting of notes column on well performance dashboard
- Gas lift performance – display current and critical rates on plotline labels
- Add status field to well data quality report table
- Auto scroll well performance dashboard to expanded row
- Fixing psia to psig conversions on Shut-In Analysis screen
- Reservoir performance – add ESP Head Degradation and Rate Normalized Delta Pressure to field list
- Update lift type labels across the application to match Xecta inferred lift type from equipment and daily production data
- Linking from Summary Dashboard to Well Performance dashboard – show all 10 wells from the table on navigation
Compute
- Improve performance and fix small issues on conventional time series queries for modeling
- Add new Event Detection setting to use surface or downhole gauges
- Various improvements and bugfixes to lift modeling logic in ALTS
- Update compute platform data objects for new additions to the data platform
- Add calculated lift type to well header GraphQL node and update internal usages to reflect the calculated lift type rather than the data platform well header’s lift type
- Bugfix for choke erosion where anomalies were appearing on the dashboard but not the diagnostic screen
- Bugfix for ALTS results query which would occasionally fail to return the optimal scenario
- Fixing edge cases in conventional well model calibration where the IPR -> SPR conversion was failing
- Bugfix for PIBF forecast and hindcast results failing to return the daily forecasted data
Data Platform
- Fix db migration issue on daily production after introduction of table partitioning which could cause data ingest to fail in some edge cases
- Fix schema discrepancy to documentation for downhole equipment (Md vs MD casing)
- Fix bug with legacy groups query in API
UI
- Fix small issue with well performance dashboard export where null values showed as 0
- Change gas well actual sparkline to red on well performance dashboard
- Fix issue with chart exports where the first column was missing a title
- Add model settings descriptions from all fields pulling directly from API documentation
- Add ability for users to edit and delete notes
- Fix edge case on setpoint change note where the suggested value may have unnecessary decimal precision
- Display critical rate value on label for critical rate line for gas lift performance
- Clean up some user experience issues with ALTS when adding and editing a scenario
- Ensure productivity index tooltips have 3 decimal places application-wide
- Fix conversions in production charts which show pressure
Compute
- Generalize and move the linear fit function to unify implementation across all models
- Fixing issue with TimeSeries streaming through API gateway
- Update XMLdoc for model input fields which are now displayed on the UI
- Add data quality reports for Rod Pump, ESP, and Gas Lift Valve equipment in API
- Split formation data quality checks by well type (conventional or unconventional) to reduce noise on unused fields
- Improve implementation of intake gas separation for Rod Pump ALTS
- Fix issues with ALTS when scenarios fail to find IPR/VLP intersection and stop running subsequent scenarios
- Fix issue with on-demand shut-in calculation and save
- Add audit fields for on-demand shut-in calculation to track whether the shut in was Xecta created, user created, or user modified; prepare APIs for UI implementation of user submitted shut-in event
- Add well status, line pressure, and microstring to compute classes and contextual data query
- Maintenance on legacy model unit tests
Data Platform
- Add status (active, abandoned, inactive) to well header
Enhancements and Bugfixes
- ALTS ESP Configuration – ensure reset button clears head and power curve coefficients
- Fix UoM issue in setpoint notes
- Always display the clear button on the search bar on the Well Performance dashboard
- Display well counts beside the search bar on the Well Performance dashboard
- Link Asset Summary Dashboard well list to the Well Performance dashboard on click
- Renaming well status field in compute to well performance status (normal, overperforming, underperforming on Reservoir Performance)
- Implement DDV version 3 for gas wells, implement nonlinear constraint in differential evolution solver
- Don’t allow NaN values in API for critical rate that fails to converge
- Add unconventional well data quality check for tubing which extends >= 2000’ from the formation depth
- Convert linear fitting for anomaly to use normalized time to prevent edge cases
- Add UI configuration for minimum GOR to compute critical rate on oil wells
- Optimize data platform insert time for daily production records
- Add line pressure and SRP intake pressure to data quality page
Enhancements
- Fix minor issue with critical rate anomaly end of tubing depth
- Introduce minimum GOR threshold to consider liquid loading on oil wells for gas lift performance and anomaly detection
- Improve downtime handling for gas lift optimization opportunities
- Fix idempotency issues for database migration scripts on data platform
- Change content of the deferral table on summary dashboard to show deferral and hindcast/forecast sparkline
- Fix gas lift performance charts to ensure opportunity sits on top of all other series
- Allow viewing of ALTS base case scenario settings
- Add additional fields to ALTS forecast analysis
- Add critical injection rate plotline to oil well gas lift performance chart if median 30 day GOR is greater than the configured threshold for minimum GOR
Bugfixes and Enhancements
- Add additional error messages for wells which are missing tubing with artificial lift installed in data quality report
- Ignore zero point in VLP calculations
- Raise survey data quality inclination threshold to 110 deg. Change inclination and azimuth errors to warnings
- Disable PIBF liquid from running on gas wells
- Fix issue with operating point identification on flat gas lift performance curves
- Fix issue with gas well gas lift recommendations for increasing gas lift injection rate not showing up on the dashboard when the increase results in negative cash flow (increasing to move above critical rate at end of tubing)
- Fix timestamp on linear anomalies (like PI decline) to be consistent with daily production
- Fix for aggregate production on summary dashboard sometimes returning duplicate dates
- Increase memory allocation on production compute cluster
- Remove unnecessary cached data in compute to reduce memory footprint
- Enforce unique scenario names on ALTS
Common
- Notes and recommendation functionality on Well Performance Dashboard
- Ability to export the well performance dashboard to .xlsx or .csv
- Expanded the list of fields available for analysis in reservoir performance
- Enhanced range of input data quality checks
- Improved general anomaly detection
- Optimized existing and removed deprecated graphql API nodes
- Summary dashboard for group aggregate production and opportunities
- Various bugfixes and performance enhancements across all models
Unconventional
- DDV / reservoir pressure implementation for gas wells
- Gas lift performance for gas wells
- Various gas lift performance bugfixes and enhancements for oil wells
- Version 1 of Artificial Lift Timing and Selection
- Ability to set different scheduled calculation times per tenant
Data Platform
- Added line pressure and SRP intake pressure to daily production
- Added microstring table
General
- Forward fill production method if yesterday was not NF and today is NF for better continuity
- Fill gaps in daily production to avoid indexing issues in PIBF
- Fix small bug with SRP data if run date was null (treat it as the beginning of time)
- Optimize delete/saves of Well Performance Analysis Results to only happen 1 time per well
General
- Integrate SRP data from Data Platform into Compute for Lift Type determination
- Improve daily lift type detection logic
- Fix small issues with critical rate / liquid loading anomaly
- Cash flow based Gas Lift Optimization and configuration
- Revise DQ report logic and issue descriptions
- Improve data quality UI to better show issues and descriptions; row highlighting
- Improve model validation logic on edge-case wells to avoid unexpected compute errors
- Implement Nagoo critical rate method and configuration
- Fix bug with well model errors (inside the journal) not appearing on the dashboard
- Fix UI layout issues on reservoir performance charts
- Fix minor time zone issues in various places on the UI
- Add additional labels to time selection on reservoir performance dashboard
- Increase height of expandable rows on the well performance dashboard
- Introduce contextual links to dynamically expand rows to desired tab on well performance dashboard
- Implement change tracking for model settings to show users what wells and sections have been edited but not yet saved
- Improve UI experience for new tenants which do not yet have wells uploaded
- Reduce the size of chart controls for fullscreen, export, and reset zoom
- Add additional fields to reservoir performance screen
- Improve search functionality for model settings
Conventional
- Fix small issue with P/Z and Cum Gp model for SMB when positive slopes are detected
- IPR/SPR visualization by well in Network Optimization
Unconventional
- DDV and PIBF model configuration
General:
- Display red ! Icon on the well performance dashboard if there are data quality issues
- Internet connectivity toast message
- Model Settings change tracking and enhancements
- Anomaly abbreviations
- PI-based forecasting Version 3 Enhancements
- Recommended Setpoint in Opportunity column
Conventional:
- Schema Change for SMB
Bugs:
- Data Quality for deviation surveys for multiple wellbores
- Missing Daily production not showing on Data Quality Report
Common:
- Update gas lift performance chart to split liquid rate into oil and gas rate stacked area
- Fixe the axis limits of the gas lift performance chart
- Enhance well model configuration for bulk saves
Data Platform:
- Change formation to be unique by sourceWellId, sourceId, and startDate
- Add ability to delete formation by name / sourceId
- Improve error messages related to timeseries data push
- Remove tubingXid from sucker rod pump table
Common:
- Continued enhancement to model configuration settings
- Improve Well Performance Dashboard opportunity for gas lift to show oil rate increases as well as gas injection decreases
- Drop duplicate dates in daily production for modeling
- Improve casing profile logic to better handle slightly erroneous input data (inconsistent depths for mutiple entries of the same ID/OD casing)
- Continued enhancement of data quality checks and data quality report
- Introduce throttle to recompute wells in batches if bulk model settings are changed
- Integrate formation start date into models to dynamically select the appropriate formation(s) / fluid properties over time
Conventional:
- Discard steady state events if standard deviation of gauge pressure is 0.0
Common:
- Adding resources to improve well modeling computation times
- Gas Lift performance curve fixes for edge cases where operating points are boundaries of the curve
- Water cut edge case to allow 100% to calculate
- ESP install depth correction for ESP BHP node
- DDV clean up to optimize model performance
Common:
- Gas lift performance improvements – Critical rate decrease or economic increase
- Gas separation correction for rod lift
- ESP intake pressure calibration
- Set gas lift performance node depth appropriately on VLP calculation
- Ensure 0 ft MD survey record exists for modeling
Conventional:
- Configuration to toggle between running static or flowing material balance first to establish OGIP and Pinit
Common:
- Data Quality logic and count improvements – including improving for casing flow and initial reservoir pressures
- Formation Properties averaging improvement
- Forecast sparkline improvements for new wells
- General logging exception handling
- WellModel enhancements and general improvemets
- PVT configuration settings
- BHP node depth logic improvements
- DDV refactor and convergence fix for average Reservoir Pressure
- Gas lift valve logic improvements and addition of critical rates to gas lift performance curve
- Allow full screen and zoom on reservoir performance screen
- Added group components and notifications
Conventional:
- Use well time zone for queries
- Spinner on shut-in while calculating
- Notification when leaving pages without saving
- Choke Erosion enhancements to persist results
Bugs:
- Corrections for multiphase flow correlations, well model configurations for wellbore configurations
- Corrections to DDV workflow that allow for more generalized convergence
- Downtime and time on corrections
- Gas lift valve status bug
- Error handling for Ssstem analysis when convergence is not found
Common
- Fix sin theta bug for pipe flow (BHP) computation
- Fix a frictional pressure drop calculation for Mukherjee and Brill BHP correlation
- Fix numerics package bug for edge case in linear interpolation
- Fix issue with survey data quality looking and the combined surveys between wellbores
- Fix long well names overlapping status on data quality page
Conventional
- Improvements and bugfixes to conventional IPR/SPR calculation
- Fix issue returning network optimization opportunity and recommendation to the well performance dashboard
- Fix bug in choke erosion that caused it to fail to run on consecutive days
- Multigroup functionality for network optimization and forecasting
- Various improvements to network optimization and forecasting logic
- Improve formatting of choke erosion exports
- Allow multiple of the same type of constraint to be added to an element in forecasting scenario setup
- Fix status indicators for network optimization and forecasting scenarios on the UI
- Prompt user if they leave a page with unsaved changes
- Increase font size on network optimization results labels
Unconventional
- Fix bug with critical rate calculation unit of measure
- Fix issue with tubing dates causing gas lift valves to not be found
Unconventional
- Reservoir Pressure and DDV decline correction
Conventional
- Network optimization workflow - add, edit constraints and plot results, add opportunities to well performance dashboard.
- Forecasting workflow - create new forecasts, copy forecasts, view forecast results.
- Gap model forecast integration
Bug fixes:
- Bug fix on ESP Performance chart
- Legends fixes, tool tips
- Choke erosion export
- Scrolling well list
- Long name well
- SMB and Modified Hall Plot fix
- Shut in, superposition fix
Unconventional
- Hot Fix release to constrain initial optimization guess for reservoir pressure profile to initial reservoir pressure.
Unconventional
- PI Based forecasting fix to weight bad PI's from inaccurate allocations as 0
Conventional
- Moved modified Hall plot to level 2
- FMB axis and chart title changes
- L2 choke erosion axis change to log scale
- L2 well model calibration logic change for displaying the operating condition
Common
- Issues tab fix to add swimlanes for each different type of anomaly
- ESP intake pressure added to daily production tab
- Average reservoir pressure added to L2 daily production page.
Unconventional
- Improve PI Decline anomaly model and update thresholds
- Fix issue with VLP errors blocking use of the Forecasting page
Conventional
- Multiple minor ehancements to Shut-In and Modified Hall Plot
- Performance and logic enhancments to Well Model Calibration
- Added functionality for PI decline to automatically select appropriate PI based on fluid type
- Additional functionality and imporvements for Network Optimization
- Input outlier filtering for Choke Erosion diagnostics and anomaly
- Support for multi-tenancy when triggering on-demand model calculation runs
Unconventional
- Transient IPRs and forecasting workflow
- Gas Lift Opportunities
- Extend forecast to 90 days
Conventional
- Modified Hall Plot for producing wells
- Change color of computed BHP on all charts
- Shut In Analysis
- Improve usage of scientific notation
- Simply shut in event table
- Clean up appearance of derivative charts
- Bottomhole Pressure / Traverse
- Add gauge depth annotation to chart
- Auto select most recent day to show traverse
- Autoscale traverse x-axis
- Add configurable functionality to linearly scale computed BHP
- Add well-level configuration for BHP correlations / model settings
- Various enhancements to Network Optimization
- Well Model Calibration
- Update chart series to not use light colors
- Static Material Balance
- Allow Pinitial to compute when there is more than 1 shut-in event
- Added API error handling and messages to Analysis pages
- Production Page
- Remove Shut-In PI 48 hours from chart
- Don't compute drawdown when BHP is 0
- Configuration to add non-Azure SSO enabled customers to ProdX
- ESP and Gas Lift chart enhancements.
- Non-SSO sign in enabled for the demo environment (demo.app.onxecta.com) and customers that choose not to enable SSO.
- Model enhancements to account for lift type changes and more accurate PI based forecasts
- Lift type search on Well Performance Dashboard
- Chart, axis, and general UI enhancements
- Gas Lift and ESP modeling enhancements
- Unstable flow anomaly
- Data quality export button bugfix
- GraphQL enhancement to allow users to generate token without UI
- Drawdown added to Production screen
- Real-time/SCADA data table added to data platform
- Conventional well modeling workflow and models - Shut In, Static Material Balance, Flowing Material Balance, Well Model Calibration, Sand Erosion Anomaly
- Added DDV/PI convergence fix for bad or missing BHP values
- Added optimal setpoint and current operating point for gas lift opportunities.
- Tubing and casing data quality checks for depths greater than 30000, zero lengths, top of string greater than 100 ft
- Improve logic and architecture for generating casing profiles from list of all casing ran in the well
- Filter out duplicate survey records for a given well/wellbore
- Change daily SPM threshold (now >= 1) to determine rod lift
- Data Quality Report UI
- Artificial lift type set on well life for BHP calculations
- Pressure traverse convergence fix to speed up model calculations
- Adjust scheduled run to allow for wellview updates
- Initial basic gas lift and esp performance curves
- Updated latest date in UI well performance ribbons updated spark lines
- Correct configuration for unconventional and conventional tenants
- Updated issues visualization to points instead of lines
- Added logic to ensure PI decline and Fluid load anomalies do not false flag excessively
- Compute platform enhancements - UI renders as wells finish calculations.
- General enhancements in computational efficiency such as data quality model checks for more rapid convergence of compute results and discretization of models.
- Query to compute on demand
- Support and Documentation links added.
- Patch release to optimize scheduling of compute platform for model results.
- Reservoir Performance workflow: this release includes new left hand navigation and asset selection at the top of the page. In addition to the navigation changes there are reservoir engineer focused metrics to which compare wells on a card (or multi-wells on a single plot) basis. Parameters utilized in WPA:
- PI
- BHP
- Average Reservoir Pressure
- DDV
- IRR
- Daily Production
- Time is normalized (1 month, 3 month, 1 year, 5 years) and the dynamic average of the wells is calculated and displayed for context on each of the cards. The sorting is worst to best. This can be resorted on-demand, and the cards can be dragged and dropped to support flexible analysis. The normalized time changed to regular datetime (for example if a certain date is known with issues in the field this can be linked to anomalies seen in the normalized time domain).
- Well Performance workflow: this release includes a high level dashboard for production tracking.
- Current artificial lift setpoints are displayed along with primary production fluid deviations from PI based forecasting day-over-day.
- A target sparkline shows how production trends for the last month vs target and the expected target for the future month.
- Upon clicking a well a production ribbon expands allowing the production engineer to assess their daily production along with calculated bottomhole pressures over time. Expansion of the opportunities ribbon will show the rod lift anomaly for sucker rod pumps and the calculated pressure traverses for wells. At the time of this release opportunities are limited to sucker rod pumps but will be expanded to other lift types in the near future.
- The Issues tab expands calculated anomalies over time to give the production engineer an assessment of the well over time. This is limited at this time to decreases in PI/production, high water cut, and high gor for flowing anomalies – in the near future this will be expanded to the other artificial lift type anomalies.
- Clicking on the well or the details button allows for level 2 view on production tracking along with productivity index over time. Additionally there is a level 2 view “Bottomhom Pressure” where multiple pressure traverses can be plotted over time.
- Data Integrity: high level metrics on what wells and production data that has been loaded into the data platform can be analyzed. All of the unique identifiers and the wells that have and are missing data can be exported to rectify data quality issues in customer source systems