Skip to main content

VONQ Deployment and Support Process

At VONQ, we are committed to maintaining a high standard of quality in our production environment. To achieve this, we employ a robust combination of automated test suites and manual quality assurance (QA) processes. These measures help ensure that updates to our production environment are reliable and minimise the risk of introducing issues.


We prioritise backward compatibility in our code, as HAPI Elements does not utilise versioning and always aligns with the latest updates to the HAPI Backend. Changes to HAPI Elements and the HAPI Backend are carefully documented in HAPI Elements change log and HAPI Backend change log to keep you informed.

Deployment Process

  1. Environment Phases:
    • Code changes are first deployed to our sandbox environment for testing.
    • After a week, the changes are deployed to the production environment.
  2. Deployment Days:
    • We avoid deploying changes on Fridays to ensure ample time for monitoring and adjustments.
  3. Hotfixes:
    • Critical bug fixes are deployed to production on the same day the issue is fixed.
  4. Handling Breaking Changes:
    • While rare, any breaking changes are handled with utmost care. We use feature branches to stage these changes, communicate migration plans to your developers, and allow adequate time for adjustments. Deployment only occurs once all affected ATS systems have migrated successfully.

Addressing Bugs and Issues

Despite our best efforts, some bugs or rare edge cases might escape detection and make it to production. In some instances, issues that work as intended on our end might behave differently in your environment.


info

To ensure user security, the embedded HAPI Elements script does not include logging tools. This means we cannot directly track user actions to reproduce an issue.

Guidelines for Reporting Issues

To assist us in resolving issues quickly and effectively, we request you follow this checklist before contacting our support team:

Providing Comprehensive Details

When reporting an issue, please include all relevant information. Often, videos or screenshots lack the necessary context, such as open developer tools or error messages. Additionally, partial user journeys can omit critical steps, such as actions taken before interacting with HAPI Elements widgets. This can delay resolution as we need to ask clarifying questions through Zendesk.

Steps for Developers to Reproduce Issues

To expedite issue resolution, we recommend that your developers reproduce the error in a testing or local environment connected to our sandbox environment. (Instructions for reproducing errors in a production setting are outlined below.)

An issue that happens at the time HAPI Elements loads

If the issue happens at the time HAPI Elements loads (like when your prefill code kicks in for example). Add the following code to trigger the log recording, before any other HAPI Elements related code.

window.addEventListener('hapi:load:script', () => {
window.hapi.debugging.service.startLogRecording()
})

An issue that happens after HAPI Elements has already loaded

Open ELEMENTS DEBUG panel, navigate to Bug Report Details tab, then Recording tab, click Start Log Recording.


info

If the issue cannot be reproduced on sandbox but only on production, then to enable the ELEMENTS DEBUG panel, run the following code in developer tools console of the browser:

window.hapiQA.addDebugPanelToDOM()

Stopping the recording and obtaining the log file

Open ELEMENTS DEBUG panel, navigate to Bug Report Details tab, then Recording tab, click Stop Log Recording. Alternatively you can also stop recording programmatically as such:

window.hapi.debugging.service.stopLogRecording()

A JSON file will be downloaded that you can share with us.


caution

When generating JSON file, the listener callbacks provided to HAPI Elements in your application will be stringified for debugging purposes thus we recommend you obfuscate any sensitive information you may have when inputting data into HAPI Elements or when providing callback functions to HAPI Elements.

Replaying the log file

To replay, open ELEMENTS DEBUG panel, navigate to Bug Report Details tab then Replay tab and upload the file you obtained when recording and a popup will appear to help traverse the timeline of events you did while recording.


note

When replaying the file, the listener callbacks provided in your application will not be run, as they are stringified only for debugging purposes and will not reflect a real replay scenario.