Vellum

Compliance & Jira

What an auditor actually asks for in your Jira change history

Native Jira change history wasn't built to survive an audit. Here's the gap between what Jira records and what a SOC 2 or ISO 27001 auditor asks for — and how to close it without your audit data ever leaving Atlassian.

Most teams discover the limits of Jira's change history at the worst possible moment: mid-audit, when someone asks a question that sounds simple and turns out not to be.

"Show me every change to these issues over the audit period — who made it, when, and evidence that the record hasn't been altered since."

The native issue History tab answers part of the first clause and none of the last. That gap is where a lot of audit findings — and a lot of scrambling — come from. This piece breaks down what auditors actually ask for, where native Jira stops, and the one procurement trap most teams walk into when they try to fix it.

What native Jira change history does — and doesn't — capture

Jira's built-in History is genuinely useful for day-to-day work. For an audit, it has five specific gaps worth knowing before an auditor finds them for you:

None of this is a knock on Jira. Its history was designed to help teams see recent activity, not to serve as a system of record that stands up to an external examiner. Those are different jobs.

What an auditor actually asks for

Strip away the framework-specific language (SOC 2 CC-series controls, ISO 27001 Annex A) and the underlying asks are consistent:

1. Attribution

Who did it — tied to a stable identity, not just a display name that can change or be reused.

2. Completeness

A clear, honest statement of what is captured and what is not. Auditors don't expect a tool to capture everything; they expect it to tell them precisely what it does and doesn't cover, so they can go elsewhere for the rest.

3. Integrity

Evidence that records haven't been silently altered or deleted. Not a promise — a mechanism they can reason about, and ideally re-check themselves.

4. Retention & legal hold

The ability to state and enforce how long data is kept, and to freeze it when litigation or an investigation requires.

5. Exportable evidence

A self-contained artifact they can take away and rely on — with provenance (who generated it, when, under what permission), the records, and enough information to verify it independently.

A note on honest claims

Be wary of any tool that promises a "tamper-proof" or "immutable" Jira audit trail. An unkeyed hash chain that an app both writes and stores proves tamper-evidence — strong detection of accidental or non-recomputing alteration — not tamper-proofness against an adversary who controls the store. The honest, defensible claim is tamper-evident, with the real external anchor being an exported evidence pack an auditor retains off-platform. If a vendor blurs that line in their marketing, assume they'll blur it in their product.

The trap: fixing the gap by shipping your data out

Here's the part most teams don't see coming. The obvious way to build a richer Jira audit trail is to stream every change to an external service, store it there, and give you dashboards and exports. Most audit and change-history apps on the Marketplace work exactly this way — they're Connect apps that egress your data to the vendor's own infrastructure.

For a regulated team, that's not a feature — it's a new problem. You've just:

So the tool meant to help you pass the audit becomes something you have to defend in the audit. Plenty of security-conscious organizations resolve this the blunt way: they ban egress-based Marketplace apps outright. If that's you, most of the category is already off the table — for a good reason.

Audit-grade change history without the egress

The Atlassian Forge platform makes a different design possible: an app that runs inside Atlassian's infrastructure, stores its data in Atlassian-hosted storage, and makes zero external network calls. Nothing leaves. There's no vendor server holding a copy, because there's no vendor server in the data path at all.

That's the design behind Vellum. It captures the changes native history forgets — field edits and transitions, comments and comment edits, worklogs, links, attachments, and deletions — into an append-only, per-record SHA-256 hash-chained trail, with field-level before→after history and filtering. On top of that it adds the three things an audit actually needs:

What it deliberately does not do

Vellum audits issue-level change data. It does not capture configuration, workflow, permission-scheme, or admin/organization changes — for those, an auditor should consult Atlassian's own admin/organization audit log. Stating the boundary plainly is part of being audit-grade: completeness and integrity are separate claims, and a good evidence pack keeps them separate.

The short version

Native Jira change history is fine for teams and thin for auditors. The category built to fix it mostly fixes it by exporting your data — which, if you're regulated, trades one problem for a worse one. The path that actually holds up is audit-grade change history that stays inside Atlassian: tamper-evident, verifiable in-product, and exportable as evidence an auditor can re-check on their own.

See Vellum on the Atlassian Marketplace →