Skip to content

Halon has a real browser in its sandbox, where it opens a page the way a person does. It uses it when a question is about what people see, such as “the checkout button does nothing” or “the login page is blank”, and after a change, to confirm a page works.

The browser works in chats and in investigations, wherever Halon has a terminal. Each check shows as a Check in browser step with the address it opened.

Halon opens the page on a desktop screen and on a phone screen, unless one is enough. For each screen it reports:

WhatDetails
StatusThe HTTP status of the page and the address it ended at, with any query string hidden
TimingsHow long the page took to answer, to be ready and to finish loading
ConsoleErrors and warnings the page logged, and errors its scripts threw
Failed requestsRequests the page made that failed or answered with an error, with their method, address and status
PageIts title, and the text near anything that went wrong
ScreenshotA picture of the screen as Halon saw it

The screenshots show under the step in the chat, under the step on an investigation’s page, and as images in the Slack thread under Halon’s answer. They are deleted with the chat, and only people who can see that chat or investigation can open them.

Halon can follow a short path on the page, up to 12 steps:

StepWhat it does
Go toOpens another address
ClickClicks a button, link or menu by its visible text, its label, or its role and name
FillTypes into a field found by its label or placeholder
PressPresses a key, such as Enter or Escape
Wait for textWaits until some text appears
Expect textChecks that some text is on the page, and fails the step when it is not

A report like “the checkout button does nothing” is checked by clicking that button and expecting what should follow, so you see which step failed and what the console and requests said at that moment.

Looking around never asks. Opening pages, following links, opening menus and searching run at once. A page also loads as it does for anyone, so what the page sends on its own while it loads, such as the request that fetches its products or an analytics call, goes through. Those requests are listed in what Halon reports, under Sent by the page on its own while it loaded.

A step that would send data stops the path before anything is sent. That is submitting a form, clicking a button that sends something, such as Place order, or typing into a field that sends what you type. The browser blocks the request itself, so nothing reaches your site. Halon says what the step would send, with password and card fields hidden, and asks you before sending it.

When it asks, Details shows the screenshot of the page and each field the step would send, and you answer with Approve or Cancel. Allow for the rest of this chat is never offered, so every send is asked about on its own. Confirming sends exactly the request you were shown, to the same address with the same query, and with the same fields and values. If the page would now send anything else, such as another amount or another address, the browser stops again and sends nothing. Halon then shows you what the page sends now and asks you again.

Sending needs Let Halon send forms in its browser (browser.update), which admins and owners hold and members need granted, see Permissions. Approval rules can hold a send like any other change. An investigation, a watch and a scheduled plan never send.

For pages behind a login, an admin saves a test account per site under Halon → Test logins with New test login. Everyone else sees which sites have a test login and when its password was saved, but not the username, and cannot change one.

FieldWhat it is
Site addressThe site, such as https://shop.example.com
Login pageWhere the login form is, when it is not the site address (optional)
UsernameThe test account’s username or email
PasswordThe test account’s password
NameHow the login is listed (optional, the site’s host when empty)

A site has one test login. When Halon checks a page on that site with the login, Firefight signs the browser in first. Halon never sees the password, and it never reaches a chat, Slack or Activity. After it is saved, the password is never shown again, and the list says only when it was saved. To change it, edit the login and type a new one, or leave it empty to keep the saved one. Deleting a login asks first, and Halon’s browser then stops signing in there.

Use a test account made for this, not a person’s account, since Halon can use it in any member’s chat.

  • A fix can end with a page check. An investigation’s fix may end with a Page check step, which opens the page once the steps before it are done. It passes when the page loaded without an error status and every step went through, with no console errors and no request that failed or answered with a server error. Otherwise it fails, saying what went wrong. Its screenshots show under the step. See Fixes.
  • A watch can wait for a page. Ask Halon to keep checking a page until it loads with no console errors, and it starts a watch that looks at the page on one screen size.
  • A plan’s check can be a look. When Halon checks that a change worked, opening the page counts as that check.
LimitValue
Steps in one check12
Pages one screen size loads10
Time for one check2 minutes
Pages your workspace loads in an hour300

The browser opens only http and https addresses, downloads nothing, uploads no files and runs no extensions. Addresses on a private network are not opened unless whoever runs your Firefight install allows them. It sees your site from the sandbox’s one region, which Halon names.

Every check is in Activity as browser.read, and every send as browser.update, under Halon with the access of the person who asked in a chat, such as Halon, for Maya Ortiz, under Halon in an investigation, and under whoever applied a fix for its page check. A test login’s password is never recorded.