There is a question no amount of scripting can answer, and it is worth knowing which one it is before someone asks you.
Picture a Jira admin on a Tuesday. Someone from the risk side of the house comes over with what sounds like a reasonable request: how long did approvals actually take last quarter, before we changed the workflow in May?
The admin is not worried. They have a scripting app. They can query issues, walk changelogs, pull the data into a dataframe, group it, chart it. This is exactly the kind of thing the tool is for.
An hour later they are still not worried, but they have stopped writing code. The workflow that existed in April no longer exists anywhere. Two of the statuses were renamed during the May rebuild, so the transitions that used to mean "waiting for approval" now read as something else. One approval field was replaced by a different field and the old one was deleted, which took its history with it. The question is not computationally hard. It is unanswerable, and it became unanswerable months ago, quietly, while everyone was busy shipping.
This is not a criticism of scripting tools. It is a distinction that gets blurred often enough to be worth drawing clearly, because the two halves of it fail in completely different ways.
Jira is excellent at telling you what is true right now. Every issue, every field value, every scheme and permission and workflow definition is available, precisely, at any moment you care to look. Anything you can express as a question about the present, you can answer whenever you like. If you did not build the report last year, you can build it this afternoon and get the same answer.
History behaves differently, and unevenly. Some of it is recorded thoroughly. The issue changelog captures field changes with an author and a timestamp, and that alone answers a lot of questions about how work moved. Some of it is recorded with a retention limit, which varies by product plan: audit logs are the obvious case, and the practical consequence is that "we can always look it up" is true for a while and then silently stops being true. And some of it is recorded only as the fact that something changed. The audit log will tell you a scheme was updated and by whom; it does not keep the scheme as it stood, so the new version sits where the old one used to be with no way back to it.
A script reads whatever is there. It cannot read what was never written down.
It is worth being concrete, because the boundary is not intuitive.
Things you can compute at any time, as long as the data still exists:
Things you cannot reconstruct after the fact, no matter how good your tooling is:
Look at the second list again and notice what it has in common. None of these are exotic edge cases. They are the ordinary consequences of a workspace being maintained by people who are doing their jobs properly. Fields get cleaned up. Workflows get simplified. Schemes get consolidated. Every one of those improvements removes evidence, and nobody experiences it as removing evidence at the time.
Notice also that most of these are not absolutes. They are horizons. The question is not whether the platform records anything, it is how far back the record reaches and whether it kept the thing itself or only the note that it changed.
Admins have lived with this for years without much pain, because the questions being asked were mostly questions about the present. Who is this assigned to. How many are open. What is the current state of the release.
Three things have changed at roughly the same time, and all three ask about the past.
Audit and regulatory review. Reviewers preparing an assessment increasingly want to see that a control kept working across a population of changes and over time, not that it existed on the day they looked. That is a question about behavior, and behavior only exists as a sequence.
Knowledge graphs and AI retrieval. The current enthusiasm for graph structure over flat retrieval rests on relationships like "superseded by", "owned by", "implements". Those relationships have a temporal dimension whether or not anyone models it. A graph built on today's configuration will confidently describe a past that never happened, and it will do so in fluent, well-cited prose.
Agentic systems. An agent that acts on an assumption about how something has been working is a much more expensive mistake than a chatbot that merely says it. The check on that assumption is a record, and the record has to predate the question.
None of these are reasons to buy anything. They are reasons to know where your own history ends.
Here is the part worth carrying away.
Analysis is a decision you can postpone indefinitely. Every report you have not built yet, you can build later, on the same data, and get the same answer. There is no penalty for waiting. This is genuinely liberating and it is why scripting and query tools feel so powerful: they turn "I wish I could see X" into an afternoon of work, on demand, forever.
Capture is not like that. It is the one decision in this chain you cannot make retroactively. Either the event was written down when it happened or it was not, and no amount of tooling, budget, or cleverness applied afterwards will produce it. You can always analyze later. You can never record earlier.
Most teams treat these two as the same kind of decision, and defer both. That works right up until the first question that reaches backwards.
None of these require a purchase. They require about an hour.
That last one is the whole article compressed. It is a cheap exercise and the result tends to be clarifying, in an uncomfortable way.
There is no dramatic conclusion here, and no failure to point at. Nobody neglects their history. It simply is not anybody's job to notice that a good, well-intentioned cleanup made a future question unanswerable, because at the moment it happens there is no question yet.
That is the whole difficulty. The cost of not recording is paid on a completely different day from the one where the decision gets made, and by then the decision is not reversible. Which is a strange kind of problem to have, and a very easy one to solve, but only in one direction and only in advance.
Disclosure: I am co-founder of MetaFrazo, which reads Jira's event stream to make exactly this kind of history readable. The distinction above holds regardless of what tooling you use, and the four questions are worth running whether or not you ever look at our app.
Maria Reisinger _MetaFrazo_
2 comments