---
module: devices.config-audit
title: Config Audit
tab: Testing
order: 35
audience: dev
---

Frontend test checklist for **Config Audit** in the Devices app (`devices.bcos.dev` → **Settings → Config Audit**, header reads **Config Change Audit**). Click through in the UI and mark each row Pass or Fail.

## Set up
Log in at **devices.bcos.dev** — test accounts (all password `Passw0rd-d3v!`):

| Login | Role | Sees |
|-------|------|------|
| `bcos_a@bcos.dev` | Admin | All institutions · can save agent properties |
| `msp_a@msp1.bcos.dev` | MSP admin | C1 + C2 only |
| `customer_a@customer1.bcos.dev` | Customer | C1 only · read-only |

Config Audit tracks saves to **institution agent properties**, so the "data" here is the institutions **C1BD / C2BD / C3BD** (not individual devices). Rows only appear after someone saves agent properties, so a couple of tests below have you make a save first.

## What to test

| # | Do this | ✅ Pass if |
|---|---------|-----------|
| 1 | As `bcos_a`, open **Settings → Config Audit** | Page loads with heading **Config Change Audit** and a table with columns **Institution · Changed By · When · Changes** |
| 2 | As `bcos_a`, open **Settings → Agent Properties**, change one field for **C1BD**, **Save**, then return to **Config Audit** and click **Refresh** | A new row appears at the **top** for **C1BD**, **Changed By** shows your name, **When** is now, and **Changes** shows a **X fields changed** badge |
| 3 | Click **View diff** on that row | Row expands into a **Field / Before / After** table; the field you edited shows the old value under **Before** and the new one under **After**. Clicking **Hide** collapses it |
| 4 | Find the very first entry for an institution (or save props for an institution that has none yet) | Its **Changes** column shows an **Initial save** badge, and in the diff every **Before** value is a dash (`—`) |
| 5 | As `bcos_a`, use the **institution dropdown** (top right) → pick **C2BD**, then pick **All institutions** | Selecting **C2BD** shows only C2 rows; **All institutions** brings every institution's rows back |
| 6 | As `bcos_a`, click **Refresh** | Button briefly reads **Loading…** then the list reloads with no error banner |
| 7 | Log in as `msp_a`, open **Config Audit** | You see history rows but **only for C1/C2** — **no C3BD** rows appear, even if you change the dropdown (scoped users are pinned to their own institution) |
| 8 | Log in as `customer_a`, open **Config Audit** | You can **view** the log for **C1 only** (no C2/C3), and you cannot create a new row (no Save/Agent Properties edit available) — read-only |
| 9 | Open an institution with no saves yet (e.g. filter to one with no history) | The table area shows **"No config changes recorded yet."** — no error or crash |

**Report a fail with:** the row #, which login you used, and what you actually saw.
