The Deliverable Is Not Just the Draft

When a CSR or PSUR leaves an internal writing team, the deliverable is typically a single Word document. The audit trail — what sources were used, how each claim was sourced, who reviewed what, when — lives somewhere else. It lives in a CRO project management tool, in a writing-team SharePoint, in a regulatory operations LIMS, or in nobody's head at all. The document and the trail are decoupled. When a regulator or an auditor asks how the document was produced, the team scrambles to reconstruct an answer.

Asthra's run bundles take the opposite approach. Every run ships four artifacts side by side, all keyed to the same run_id. The draft and the trail leave the agent together. The bundle is the deliverable.

The Four Artifacts

A bundle has exactly four files. Each one answers a specific question.

1. The .docx — the draft itself

The Word document is the visible deliverable: hyperlinked cross-references, two-level citations, gap flags inline, formatted to the customer's house template. The document is also self-contained — the citations resolve, the cross-references work, the hyperlinks point at real bookmarks. A reader who only opens the .docx gets a complete document.

2. traceability.json — the provenance projection

The traceability file is a projection of Asthra's internal provenance store at the moment the run completed. It maps every section in the draft to the sources, transactions, and classifications that produced it.

A small excerpt looks like this:

{
  "section_9.2": {
    "title": "Demographic and other baseline characteristics",
    "sources": [
      { "id": "TLF-DEM-01", "type": "table", "passages": ["row 2", "row 7", "summary"] },
      { "id": "CSR-protocol-v3", "type": "document", "passages": ["§5.1"] }
    ],
    "transactions": [
      { "id": "txn-9f2a-22", "op": "retrieve", "timestamp": "2026-05-28T08:32:14Z" },
      { "id": "txn-9f2a-23", "op": "draft", "timestamp": "2026-05-28T08:32:48Z" }
    ],
    "classification": "direct_source"
  }
}

The classification field is important. Every section is marked as either direct_source (the prose is sourced directly from a retrieval) or context_retrieval (the source supports surrounding context rather than the prose itself). The distinction matters for downstream audit — a reviewer should be able to tell when a section is grounded in specific source values versus when it is narrative scaffold.

3. quality_report.json — the end-of-run QC pass

The QC report is the structured output of the quality pass that runs over the finished draft. It names six categories of check — cross-reference integrity, statistical-claim source binding, defined-term ordering, citation density, gap detection, hyperlink resolution — and reports pass / flag / gap for each, located down to the section.

The report is structured by design, not prose. A writer triages flags quickly because every finding is keyed to a section, a category, a severity, and a suggested action. A regulator gets a one-page answer to "what quality checks were performed on this document."

4. run_manifest.json — the reproducibility metadata

The manifest captures what the run actually used. Which model, from which provider. Which code version, by SHA. How many tokens were consumed at the prompt and completion sides. How long the run took. What environment the run executed in.

A small excerpt:

{
  "run_id": "9f2a-04",
  "model": {
    "name": "claude-sonnet-4-6",
    "provider": "anthropic-direct",
    "version": "v1-2026-05-15"
  },
  "code_sha": "8c4f7d92",
  "started_at": "2026-05-28T07:38:11Z",
  "completed_at": "2026-05-28T09:12:48Z",
  "tokens": {
    "prompt": 1842331,
    "completion": 187204
  },
  "deployment": {
    "tenant": "customer-vpc-us-east-1",
    "region": "us-east-1"
  }
}

The manifest is what makes the run reproducible. Given the same source set, the same code SHA, the same model version, Asthra can rerun the bundle and produce the same draft. That property — "runs that can be replayed" — is part of what makes the artifact regulatory-grade.

Why Four, Not One

A monolithic JSON file with the draft embedded would be simpler. We chose four artifacts deliberately.

Each artifact has a different audience. The .docx is for the writer and the reviewer. The traceability.json is for the QA team and the auditor. The quality_report.json is for the regulatory affairs lead. The run_manifest.json is for the operations and platform teams. Each audience can pick up the artifact they need without having to parse a monolith.

Each artifact also has a different lifecycle. The .docx gets edited downstream. The traceability.json stays frozen at run completion. The quality_report.json gets re-run after edits. The run_manifest.json is immutable. Separating them keeps the lifecycle distinct.

And each artifact is portable. A regulator who downloads the four files into a folder has everything they need without having to install Asthra, log into a vendor portal, or trust that we will still exist in five years. The bundle survives us. That is by design.

How a Bundle Travels

When a writer hands a draft to internal review, the bundle moves as a folder. The reviewer opens the .docx in Word, reads the prose, makes edits in track changes, runs Asthra's reviewer-persona over any section that warrants a second look, and forwards the updated bundle.

When the bundle leaves the sponsor for the CRO partner — or vice versa — the bundle moves intact. The traceability.json does not need to be regenerated; it stays valid because it was projected at run completion. The quality_report.json may be re-run after edits, in which case a new copy lands alongside the old one keyed to a new run_id. The run_manifest.json stays frozen.

When the bundle reaches the regulator — directly, or as part of an inspection — every question about the draft's production has an answer in the folder. The team does not scramble.

What Is Next

The next bundle artifact on the roadmap is cross_doc_traceability.json — for multi-document CTD submissions where Module 2 narratives point at Module 5 study reports. The cross-document anchors are first-class structured state already; the projection that exposes them as a portable artifact is the next ship.

The principle holds: the deliverable is not the draft, the deliverable is the bundle. The audit trail leaves the agent with the document. The document is portable. The trail is portable. Together they are the artifact a regulator can read.


See it on the product page: End-of-run QC + run bundles shows the four-artifact bundle as a file listing. For the broader studio surface, see /product.