Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

WEEK 3 - What We Didn’t See: Hidden Conditions & Ghost Post-Functions

What this episode covers

  • Why workflows behaved differently even after SLAs were fixed
  • How post-functions can be dangerous
  • Why old workflow logic resurfaces after cleanup
  • How we fixed it without triggering another incident

Where We Left Off

Week 2 ended with relief.

  • SLAs were green again.
  • Escalations stopped firing randomly.
  • Support trusted dashboards once more.

And yet…

something still didn’t feel right.

During post-fix validation, we noticed tickets moving from

Work in Progress → Done, without agents remembering doing it.

No panic, just discomfort.

That’s usually how real problems begin.


1. “Who Closed This?” - A Question Nobody Could Answer

We pulled issue histories.

Normally Jira tells the truth, even when it hurts.

This time:

  • No automation comment
  • No REST API call
  • No bulk change record

Just:

Status changed: Work in Progress → Done

An agent looked genuinely worried.

“I didn’t close it. I was still working on it.”

At first, we assumed human error.

Then it happened again.

Different agents. Different queue.

 

This wasn’t behavior.

This was logic.


2. The Workflow Looked Correct - And That Was the Problem

 

We opened the workflow editor.

Everything looked clean:

  • Conditions present
  • Validators enforced
  • Required fields configured
  • No auto-transition visible

 

According to the UI, this transition should not have succeeded.

And that’s when the realization hit:

The editor wasn’t lying - it just wasn’t telling the whole story.


3. Post-Functions: That was Never Questioned

Yes, post-functions were not Questioned.

They always had been there, but ignored.

As they were old.

Very old.

Things like:

  • Set Resolution
  • Fire Issue Closed Event
  • Clear Field Value
  • Update Change History

No comments.

No documentation.

No one remembered why they existed.

They had survived:

  • Workflow copies
  • Project migrations
  • Admin changes
  • Partial cleanups

 

They weren’t hidden.

They were untouched.


4. Execution Order Changed Everything

Post-functions execute in a strict order.

 

In this transition, the order was:

1. Clear resolution

2. Set resolution = Done

3. Fire “Issue Closed” event

4. Re-index issue

So even if:

A validation should block the transition

A required field was empty

…the post-functions executed after the click and forced closure anyway.

From an agent’s perspective:

They didn’t bypass rules

The workflow did it for them

 

That’s why tickets appeared to close on their own.


5. Why Cleanup Triggered This Now

Before cleanup, these post-functions lived inside noisy workflows.

Once we:

  • Removed duplicate statuses
  • Simplified transitions
  • Standardized resolution values

…the legacy logic became dominant.

The cleanup didn’t introduce bad behavior.

It exposed it.

The system behaved exactly as it was designed - years ago.


6. The Risk No One Talks About

At this point, the concern wasn’t technical.

It was this:

  • If workflows can silently override validations,
  • what else is executing that no one fully understands?

 

Cleanup had crossed into risk management.


7. Fixing It Without Creating Another Incident

The approach was deliberate:

  • Exported every active workflow
  • Reviewed post-functions transition by transition
  • Identified which ones were required and which were legacy
  • Removed auto-resolution logic carefully
  • Reordered validation and post-function execution
  • Tested changes in sandbox
  • Rolled out project by project

 

After the fix:

  • Tickets closed only when agents closed them
  • Required fields stayed required
  • SLAs behaved predictably
  • Trust returned quietly

The Unexpected Aftermath

A week later, Support returned again.

Not stressed.

Not angry.

Just confused.

“Ticket volume seems higher. Nothing is broken… but customers are raising more basic requests.”

Deflection dropped.

Self-service resolution dipped.

Workflows were correct now.

But something else had changed.

Something dependent on consistent resolution patterns.


Tech Reality Check

The real danger is:

  •   Lost context
  •   Unknown execution order
  •   Legacy logic surviving cleanup
  •   Undocumented dependencies

To Be Continued…

 WEEK 4 - When Fixing Workflows Broke Self-Service & Deflection

 

Read Week 2 here - https://community.atlassian.com/forums/Jira-Cloud-Admins-articles/WEEK-2-The-JSM-Meltdown-When-SLAs-Started-Bleeding-Red/ba-p/3163150

Comment

Log in or Sign up to comment
TAGS
AUG Leaders

Atlassian Community Events