← All work

PressDevil submission-to-publication platform

A content workflow designed around trust, not throughput.

Role
PM · Design · Engineering
Work
Personas · Journey map · Service blueprint · Conceptual model · Interaction model · System architecture · Editorial inbox · Review workspace
Status
Shipped
Review workspace: the assistant's recommendation, reasoning and uncertainty beside the editor's decision
Review workspace: the assistant's recommendation, reasoning and uncertainty beside the editor's decision

San Antonio Review runs its literary magazine on a custom submission workflow, with production work spread across email, forms and manual steps.

Design automation into the workflow so AI handles production work while editors keep the judgment calls.

I mapped contributors and editors, blueprinted the path from submission to publication, and designed the conceptual model, interaction model and architecture of AI-assisted pipelines.

Submission-to-publication time fell from two weeks to one and publishing went from twice a week to daily, with every judgment call still made by a person.

The decision moment

The assistant reads first. The editor decides.

The first version was on demand: editors clicked to generate a review when they wanted one. In practice they almost always wanted it — not for the recommended disposition, but to see what the assistant had caught that they might have missed. That was the better argument for running it on every submission at intake: as a second reader, not a disposition generator. The button survives as a fallback for anything that arrives before the review runs.

The review screen puts the piece on the left and the editor's decision on the right:

  1. 1

    On a resubmission, the review checks the revision against the previous version and the edits requested.

  2. 2

    A plain-language read and a recommended disposition. No score: a number reads as a verdict, and reasons can be argued with.

  3. 3

    Decline risk. The assistant states the strongest case against its own recommendation.

  4. 4

    Recommendation and decision side by side. The editor chooses one of five outcomes, each routing the piece into a different workflow. If the decision differs from the recommendation, the editor writes why.

  5. 5

    A feedback email drafted in the editor's voice from the decision and the review. The editor edits it line by line, regenerates or saves it; nothing sends until they do.

The written reason isn't there to bring editors into line with the assistant. It's there to bring the assistant into line with the editors. Without knowing why an editor disagreed, there's nothing to refine the model with.

What testing showed: 149 submissions reviewed before launch

19decisions overruled: 9 harsher, 9 more lenient
35pieces with any disagreement
10errors in the review corrected by editors
8 of 19overrides with no reason recorded

The assistant showed no systematic lean: editors overruled it as often in one direction as the other. Two results changed the design. Eight of the 19 overrides came with no reason recorded, so there was nothing to learn from them; working with the editors, I made a written reason required. The corrected errors fell into three kinds: author history (crediting one writer's publications to another, missing that an author had published with SAR before), house policy (misstating when submission fees are waived), and reading (treating deliberate line breaks as a paste error, or giving a nonfiction narrator access to someone else's thoughts). The author errors are why the review area now shows contributor history alongside the piece.

The trust question

Whose trust is on the line, and what would the wrong automation cost?

A content operation like SAR has two trust relationships, both load-bearing and both invisible to most automation thinking. Contributors send work expecting it to be read by a person whose judgment is the reason SAR exists. Readers return because the voice is recognizably human.

Most automation conversations skip past this and ask what AI can do here. The harder question is what the essence of the operation is, and what automation would destroy rather than support. Judgment isn't incidental to SAR; it's constitutive. Automating any step that reads, evaluates or shapes decisions wouldn't make the operation more efficient. It would change what SAR is.

Contributors

“This will be read by a person whose judgment is the reason I submitted here.”

Readers

“I recognize and want to engage with this voice. That's why I come back.”

What I built

A system that takes on production work without superseding human judgment.

Six components, two human-mediated approval gates, three trust boundaries. LLM-augmented pipelines handle the production work that's invisible to both contributors and readers: image creation, social distribution, author metadata and formatting. Discernment and decisions stay where they belong, with humans, gated and auditable.

The question wasn't how much to automate, but how to design automation into the workflow so it supports the publication's principles instead of eroding them.

What I deliberately did not build

What's missing matters as much as what's there.

Every component below was technically achievable and tempting. Each was rejected for the same reason: it would have crossed into human judgment, and the appearance of that crossing is itself a trust problem, even when human authority is technically retained.

  • RejectedNumeric scores

    The assistant recommends a disposition, explains why, and says where it's uncertain. It never produces a line like “Accept, 78% confidence.” A number reads as a verdict and decides what editors read first; reasons can be argued with.

  • RejectedBio rewriting that changes voice

    The author normalization agent rewrites first person to third person and standardizes formatting. It doesn't edit voice, tone or what the author chose to emphasize. Normalization isn't editing.

  • RejectedAuto-publishing without gates

    Every output reaches a human approval step before it goes live. The time savings come from removing human work from production, not from removing human oversight.

  • RejectedAI-generated art

    Instead, an image creator composes text from the work onto one of 15 templates created by SAR. The publication's visual identity is part of what readers come back for; generative imagery would dilute it and erase the design labor that built it.

  • RejectedAI choosing the outcome

    The assistant reviews every submission at intake, but only the editor selects one of the five dispositions. When the decision differs from the recommendation, a written reason is required, so the model can be refined toward the editors' judgment rather than the other way around.

How it works

Six components, three trust boundaries.

Submission workflow

Gravity Forms · Gravity Flow · PHP

Three child forms, one per content category, sit inside a parent intake form and are routed through a multi-stage approval pipeline. A custom hook keeps the post-creation feed from firing until editorial approval finishes. Choosing not to use Submittable was load-bearing: it reduces editor context-switching, preserves formatting through the pipeline, gives contributors transparency and signals editorial identity from the first interaction.

Author normalization agent

Claude API · Google Cloud Vision

Triggered on approved entries, it creates or merges an author record using email-based deduplication, a three-field name system that respects pseudonyms, and social URL normalization. Bios move from first to third person, inline social references are stripped and publication titles italicized; voice is preserved and presentation standardized. Avatars go through face-aware cropping, with a fallback to standard cropping when no face is found.

Image creation agent

Python · Flask · Pillow · Claude API · Render

When an editor approves work in the high-volume category, Claude selects three lines that work as an epigraph rather than a quote, the service picks one of 15 hand-made templates by weighted random selection, composes the text with Pillow and saves the JPEG to the Media Library for review. The agent selects and composes; it never generates. If an editor rejects the result, it regenerates against a different template.

Social media plugin

WordPress plugin · PHP · Claude API

From the draft post, the editor clicks Generate and Claude returns platform-specific copy for Bluesky, Instagram and Facebook. The editor reviews each draft side by side, edits inline, regenerates per platform if needed, and approves. Approved copy stays with the draft and publishes with the content. Nothing posts on a schedule, and nothing posts without a person approving it.

Editorial dashboards

PHP · Gravity Flow · Custom views

Styled inbox views (submission queue, entry detail, workflow state) let editors see queue health and per-submission status without leaving WordPress. The styling is part of the work: a generic inbox doesn't communicate where attention is needed, and the SAR version does.

Editorial assistant and unified review area

PHP · React · Claude API · Gravity Flow

Every submission gets a Claude-based review at intake, shown beside the piece: strengths, concerns, factual flags, a recommended disposition with its reasoning, and separate notes on where it's uncertain about craft and about provenance. There's no score. The editor chooses one of five outcomes (accept, accept with edits, revise and resubmit, decline with encouragement, decline), which routes the piece through the right downstream workflow, then line-edits a generated, editor-voiced feedback email before it sends. The review is idempotent under workflow rewind, so a resubmission is checked against the previous version and the edits requested.

Result

Faster production, preserved identity, more time for the editorial work that matters.

50%less time from submission to publication
Dailypublishing, up from twice a week
0staff added
15hand-made image templates

What it preserved, and what it made possible

  • PreservedEvery judgment call remains a human decision
  • PreservedVisual identity stays a design artifact, not a generated output
  • PreservedContributors interact with humans, not with automation
  • PossibleA small team can run a high-volume, multi-category content operation
  • PossibleSubmission volume can scale without proportional workload
  • PossibleThe model is portable to other content, ECM and regulated operations

From the work

3 more pages from the original deliverables · select to enlarge

Deliverables

  • Personas2 boards
  • Contributor journey map1 pp
  • Service blueprint1 pp
  • Conceptual model1 pp
  • Interaction model1 pp
  • Master architecture1 pp

Full decks and specifications available on request.

Additional documentation available on request.

mistycripps@protonmail.com