User Journey: Export to share with support
Table of Contents
This page documents a user journey: A person exports the smallest set of data that shows a problem, so support can reproduce it from the ticket.
A user journey describes what one person is trying to do, before anything is built. It is a design document that outlives any sprint, so it names the screens, the entity fields each screen shows, and the operations and messages each step needs.
1. Goal
"I want to send support exactly what shows the problem, and no more." The journey is done when the person has a small file set, a short note that says what each file is, and a ticket that carries both.
2. Actor and trigger
The actor is any signed-in person who can read the data that shows the problem, usually an operations user. The trigger is a support ticket, a failed report, or a question about a convention that needs a concrete example. The journey starts at the ticket and ends when the attachment is on it.
The export reads only what the session may read. A book whose rights exclude the person cannot be exported, and the server refuses rather than returning an empty file.
3. Steps
- Reduce the scope. The person picks one book or portfolio, one report definition, or one series. A whole party is usually too much, and the ticket rarely needs it.
- Export the trades. The person runs
ore export <file> --node-id <id>. The system exports the trades under that node as ORE portfolio XML. - Export the run. The person runs
ore export-run <report_definition_id> <dir>when the problem is a report. The system writes the run document and every configuration document it binds. - Export the market data. The person runs
marketdata export --market-data <file> --fixings <file>when the problem is a quote or a fixing. - Name the parts. The person writes a short note: the party, the node or report definition, the time, and what each file is. No command writes this manifest.
- Attach to the ticket. The person attaches the files and the note to the ticket by hand. There is no attach action in the product.
4. On success
The shell prints the number of trades and the bytes written, or the stored files of the run, or the series and observation counts. The files open in an ORE reader and in the platform's own importer. The ticket holds the files and the note.
5. On failure
An export with no read permission is refused and says so. An export of a node the person cannot see returns no trades or a refusal, depending on the read. A write to a path the person cannot use fails with the path named. An export of a report definition that binds a configuration type the exporter cannot write is refused. The person can still attach the failure message itself.
6. What must never happen
- The export must never include rows the person cannot read.
- The export must never be presented as a complete backup. It is an ORE-shaped file set with no audit columns and no history.
- The export must never write into the platform. It returns text to the caller's file system.
- The person must never be told the ticket received the files automatically. The product does not talk to the ticket system.
7. Screens and entry points
There is no export screen and no ticket integration. The entry points are ore
export, ore export-run, marketdata export, and the person's own file system
and ticket system. The web UI has no export route.
8. Entities composed
| Entity | What it contributes | Model |
|---|---|---|
trade, instrument |
The trade data the portfolio export writes | |
run_document, configuration_binding |
The run the export walks | |
conventions_bundle |
The conventions the run export writes | |
market_observation, market_fixing |
The quotes and fixings |
9. Operations and messages
| Step | Operation | Subject | Status |
|---|---|---|---|
| Export the trades | Export the trades under a node | trading.v1.ops.export_portfolio |
exists |
| Export the run | Export the run directory | ore.v1.ops.export_run_configuration |
exists |
| Export the market data | Export quotes and fixings | marketdata.v1.ops.export_market_data |
exists |
| Name the parts | No operation: the person writes the note | none | missing |
| Attach to the ticket | No operation: the person attaches by hand | none | missing |
10. What is missing
- No bundle. The person exports several files and packs them by hand. Nothing writes one archive for the ticket.
- No manifest. The party, the node, the time and the tool versions are not written by any export.
- No redaction. A run directory carries whatever the run binds, and the person must remove the parts that are not needed. Nothing helps.
- No ticket integration. The attach step is outside the product.
- No export record. Nothing lists what the person exported and when.
11. Related journeys
- Reproduce a defect from an exported environment - what support does with the files.
- Export for archival - the complete version, with different intent.
- Diagnose and reproduce a failure - the failure the person is reporting.
- Import a portfolio from ORE - the receiving side.
12. Related knowledge
13. See also
- Data exchange journeys - the group hub.