Files & exports
Project, session, report, definition, preset, table, and image artifacts.
Files & exports
Busloom separates editable configuration from captured evidence. This prevents a project file from silently accumulating live traffic and prevents a recording from reopening a connection or changing a device. Choose the artifact by the question the recipient must answer.
Native Busloom artifacts
| Artifact | Purpose | Contains | Deliberately omits |
|---|---|---|---|
| .busloom.json | Editable project | Profiles, views, tags/groups, Trends, automation, project display rules | Live connection, samples, traffic, selected profile, TLS pin, license, MCP token |
| .busloom-session.json | Immutable Trend or Raw Traffic replay | One bounded timeline, capture bounds/completeness, issues, non-secret connection context | Mutable project snapshot, certificate paths, credentials, active transport |
| Automation report JSON | Lossless completed-run replay | Target, parameters, iterations, hierarchical steps, captures, logs, transaction IDs | Runnable frozen request, project document, raw frame payloads, credentials |
| .busloom-device.json | Reusable register-map definition | Groups, tags, FC01/02/03/04 views, metadata | Profiles, TLS, Trends, automation, samples, preferences |
| .busloom-import-preset.json | One reusable spreadsheet column mapping | Header mapping, address interpretation, fallback space, merge strategy | Source rows, project reference, other local presets |
| .busloom-license-request / .busloom-license | Offline device activation | Bound device identity request or signed entitlement certificate | Project and protocol data |
Projects accept UTF-8 JSON and are bounded to 5 MiB. Session and replay file I/O is suffix-checked, UTF-8, and bounded to 50 MiB. A schema or artifact version belongs only to that format: project schemaVersion, session version, and automation reportVersion are not interchangeable revision counters.
Tabular data and evidence exports
| Source | Available formats | What one row represents |
|---|---|---|
| All tags | CSV · TSV · XLSX | One portable tag definition with address, codec, layout, conversion, unit, and description |
| Live view recording | CSV · TSV · XLSX · JSON · JSON Lines | One acquisition sample using the frozen column/tag schema from recording start |
| Trend data | CSV · TSV · XLSX · JSON · JSON Lines | One timestamped decoded series sample in the selected visible window |
| Tag alarms | CSV · TSV · XLSX · JSON · JSON Lines | Current alarm state or one transition-history event |
| Raw Traffic | Session package and supported table exports | One TX or RX frame with source, timing, decoded meaning, and transaction identity |
| Trend report | PNG · single-page PDF | Rendered visual evidence for the selected visible window |
| Automation | JSON · JUnit XML · standalone HTML | Full run hierarchy, CI test result, or human-readable report |
CSV and TSV are UTF-8 with an Excel-friendly byte-order mark, CRLF rows, and quoting for separators, quotes, and line breaks. XLSX keeps numeric cells numeric and adds frozen headings, filters, and bounded column widths. JSON Lines is useful when a consumer should process a long recording incrementally; it is not a Busloom project or Replay package.
Import and merge rules
Open a preview
Tag tables, presets, and device definitions are validated before they can mutate the project.
Declare address meaning
For register-map import, choose PDU, one-based documentation, or zero-based documentation addressing instead of relying on a magnitude guess.
Resolve identity
Tags match by address space and PDU address; definitions also use stable IDs and exact resource names where appropriate.
Choose Add only or Update matching
Add only preserves every existing match. Update matching replaces portable fields while preserving project-local IDs and valid group references.
Apply atomically
Any overlap, broken reference, ambiguous identity, or invalid resulting project blocks the entire merge. A successful import becomes one undoable unsaved project edit.
Version control
Project JSON is intentionally readable and diffable. Professional local Git integration shows repository status and history for the active project file and creates a local commit containing only that file. It does not initialize a repository, switch branches, stage unrelated changes, push, or store Git metadata inside the project. Use normal Git tooling for every repository-wide operation.