Open Access Journal of Engineering Applications
e-ISSN 3105-7004  ·  HafizLab
Editor Guides

The editorial workflow

The state machine every submission moves through, from draft to published.


The state machine#

Every submission holds exactly one status, and exactly one path exists between any two of them. Nothing in OAJEA writes a new status directly — every change goes through the workflow service, which checks the move is legal before it happens. A transition not declared in the workflow configuration cannot occur, no matter who is asking.

DRAFT ──submit──▶ SUBMITTED ──send_to_review──▶ IN_REVIEW (round n)
                                                   │
     ┌──accept──────────────────────────────────────┤
     │  minor/major_revisions ▶ REVISIONS_REQUESTED │
     │        └─upload_revision─▶ IN_REVIEW (n+1)   │
     │  resubmit ▶ SUBMITTED                        │
     │  decline  ▶ DECLINED (terminal)              │
     ▼
ACCEPTED ─▶ COPYEDITING ─▶ PRODUCTION ─▶ SCHEDULED ─▶ PUBLISHED

The statuses#

Draft — the author is still assembling the submission; nobody else can see it. Submitted — complete and waiting to be sent to review. In review — reviewers are assigned and one review round is open. Revisions requested — a decision has gone back to the author asking for changes. Accepted — the science is settled; what remains is production. Copyediting, then production — the manuscript is being turned into a published article. Scheduled — production is finished and the article is queued for a publish date. Published — live on the public site. Declined is terminal and sits outside this chain: nothing moves out of it.

The actions#

An editor moves a submission from submitted or revisions_requested into review with send_to_review, which is the only action that opens a review round. From in_review an editor records one of five decisions: accept moves straight to copyediting; minor_revisions or major_revisions both land on revisions_requested — the distinction is a label for the author's expectations, not a different destination; resubmit sends the manuscript back to the unassigned queue as a fresh submitted item; decline ends it. An author responds to a revision request with upload_revision, which is the other action that opens a new round. Once accepted, send_to_copyediting and send_to_production move the piece through production, schedule queues a publish date, and publish — reversible with unpublish — puts it on the public site.

Rounds#

A submission's current_round increments only on send_to_review and upload_revision — the two actions that put a manuscript back in front of reviewers. All other actions leave the round number where it is. Reviewer assignments, review forms and reviewer comments are all recorded against a specific round, which is how the system keeps a second round's reviews from mixing with the first's, and how an author's revision history stays intact even after several rounds.

The audit trail#

Every transition — legal by definition, since illegal ones are refused before anything is written — appends a row recording who acted, the status before and after, the round, and any note attached to the decision. Nothing is overwritten and nothing is deleted; the audit trail is the permanent record of how a submission reached its current state, and it is what the self-test suite checks after driving a submission through the whole machine.

Decline is terminal

There is no transition out of declined. A declined submission cannot be revived, resubmitted in place, or moved to any other status — an author who wants another attempt must start a new submission. Decline it only when you mean it.