Test Scenario: Manage the sensitivity templates
Table of Contents
- 1. Before you start
- 2. Scenario Info
- 3. Steps
- 4. Results
- 5. Notes
This page documents a test scenario verifying Manage the sensitivity templates in Make every configuration screen follow one standard. Run it on the provisioned environment and record each step's outcome in its own table.
1. Before you start
These are yours to run before the tester opens the browser.
- Confirm the environment matches this checkout.
compass db statusshows the fingerprint in sync; if it is stale, runcompass db recreate -y -k. - Start the fleet and confirm 24 services are active.
compass services status. - Provision the tenant if it is not there, and confirm no step failed. The vocabulary holds 5 methods, 5 asset classes and 19 templates.
- The screen's writing role is Operations.
tenant_adminholds the wildcard and may write;adrian.vance@acme_corporationholds Operations and is the account to use when checking the role boundary.
2. Scenario Info
| Field | Value |
|---|---|
| Verifies task | Manage the sensitivity templates |
| Parent story | Make every configuration screen follow one standard |
| Target screen | Reporting → Sensitivity templates, on http://localhost:21002 |
| Clients | |
| State | PASSED |
3. Steps
3.1. Log in as the tenant administrator
- Open
http://localhost:21002. - Log in as
tenant_admin@acme_corporationwithSecure-Password-123. - Choose the party ACME Corporation HK Ltd.
3.1.1. Result
| Field | Value |
|---|---|
| Status | PASS |
3.2. Read the list
- Open Reporting, then Sensitivity templates.
- The list states the code, the asset class, the method and the description of each template.
- The asset class and the method read in words, such as Interest rate and Finite difference, not as codes.
- The first page holds 15 of the 19 keys, and the pager says so.
- The keys read alphabetically, with SensiTrade after the CR keys.
3.2.1. Result
| Field | Value |
|---|---|
| Status | PASS |
3.3. Search on the server
- Type =IR_ in the search.
- The list narrows to the four interest rate keys and the pager count follows.
- Clear the search and the list returns to 19.
3.3.1. Result
| Field | Value |
|---|---|
| Status | PASS |
3.4. Read one key
- Open IR_FD.
- The title is the code and the line under it shows the version.
- Details states the asset class Interest rate, the method Finite difference, the method code FD, the template prefix IR, and the seeded description.
- The screen says the key names what a pricing engine configuration puts on a product, that the class is the class of that product, and that the shift sizes the key applies are set per market key in the sensitivity configuration, which may set them on keys outside that class.
- History shows its first version with the reason the seed gave.
3.4.1. Result
| Field | Value |
|---|---|
| Status | PASS |
3.5. Read the trade-level key
- Return to the list and open SensiTrade.
- The Details state no asset class, the method Trade level, the method code Trade, and the seeded description.
- The record explains that a trade-level template names no asset class, because the trade states its own sensitivities.
3.5.1. Result
| Field | Value |
|---|---|
| Status | PASS |
3.6. Create a key
- Choose New template.
- The dialog asks for a code, an asset class, a method and a description.
- Asset class and method are selects, not text fields. The asset class select offers the five classes ORE presents, by name; the method select offers the five methods by name.
- Choosing Finite difference shows the method code FD as the token the key carries; no field accepts a method code.
- Enter code
PW_SENS_FD, asset class Interest rate, method Finite difference, and a description of your own, then give a reason and save. - The record page opens on the new key and the list shows 20.
3.6.1. Result
| Field | Value |
|---|---|
| Status | PASS |
| Notes | The key was created. The refusal that followed was a PUT to the previously opened trade-level key: its class reached the service as a null the write protocol could not decode. Fixed in #3939: the BFF states an empty class at that boundary. Re-proved at the API, where SensiTrade, IR_FD and COMM_MC all update with 200. |
3.7. A key the tenant holds is refused
- Choose New template again and enter the code
IR_FD. - Saving is refused and the refusal names the code the tenant already holds.
3.7.1. Result
| Field | Value |
|---|---|
| Status | PASS |
3.8. The trade-level method names no class
- Choose New template and choose the method Trade level.
- The asset class select clears and is disabled, and the dialog says a trade-level template names no asset class.
- Choose Cancel; nothing is written.
3.8.1. Result
| Field | Value |
|---|---|
| Status | PASS |
3.9. Correct the key
- On
PW_SENS_FD, choose Edit. - The code is shown but cannot be changed; asset class and method are the two selects; the method code follows the method.
- Change the description, give a reason and a commentary, and save.
- The record page shows the new words and the version one higher.
- History lists the new version with the reason and the commentary.
3.9.1. Result
| Field | Value |
|---|---|
| Status | PASS |
3.10. Remove the key
- Choose Delete on
PW_SENS_FD. The dialog states the row it removes. - Confirm. The list returns to the 19 seeded keys.
- Open IR_FD again: it is still version 1, with the seeded words, and its history is unchanged.
3.10.1. Result
| Field | Value |
|---|---|
| Status | PASS |
4. Results
| Field | Value |
|---|---|
| Status | PASSED |
| Completed at | 2026-10-27 |
| Branch | review/sensitivity-templates-scenario |
| Commit | 282d113765 |
| Worktree | ores_dev_solid_dirac |
| Notes | One UI run. The create step's follow-on refusal was fixed in #3939 and proved at the API; this database holds the probe versions of IR_FD, COMM_MC and SensiTrade. |
5. Notes
- The method code is derived from the method and is never typed. The method's row states both forms; the table checks that the class is null exactly for the trade-level method.
- The screen manages keys only. A key's shift sizes, tenors and shift schemes belong to the sensitivity configuration, and its
keyattributes are how a template reaches market keys of any class. - The seeded 19 keys are the ones ORE's examples use. A tenant may add a key of its own; the table does not hold the key to a spelling, because ORE resolves the key a configuration states.
- The asset class is a soft reference to the reference data asset class codes. The prefix the key carries (COMM for commodity) comes from the bridge the screen reads.