Oct 7, 2026 · by Oleksandr Halashevskyi · View source

judged.systems

The judgment API platform for support systems.

judged.systems

Editorial analysis

The real lesson from judged.systems isn’t the classifier — it’s the audit trail

Every cross-border operator I know is quietly building the same thing in a spreadsheet right now: a rules engine for returns, chargebacks, supplier claims, and listing appeals. We call it “our SOP.” What judged.systems launched on Product Hunt is essentially that SOP, productized — a system where a ticket comes back as a probability, a rubric score, or a truth estimate, and your thresholds decide whether it auto-accepts or goes to human review. That distinction matters more to a seller running 40 SKUs across Amazon US, TikTok Shop, and a Shopify DTC store than to almost anyone else, because we are the people who already lost money to a “high-confidence” automation that turned out to be confidently wrong. The interesting part isn’t the model. It’s the governance: a failed call stays in review, a published pack is frozen, and a label on a miss does not rewrite the evaluation. That last sentence is the whole essay.

What the product actually claims to solve

Strip away the launch-page framing and judged.systems is making a narrow, defensible promise. You feed it a ticket. It returns one of three shapes: a choice plus probabilities, a score against a rubric, or the probability that a statement is true. You set thresholds. Anything above threshold auto-accepts; anything below lands in human review. Once you publish a “pack” — the bundle of rules, rubrics, and thresholds — it freezes. And critically, when you later label a decision as a miss, that label does not retroactively rewrite the evaluation that produced it.

That’s a governance model, not a model architecture. The maker, Oleksandr Halashevskyi, frames the open question bluntly: “Where would you refuse to let a rule auto-accept?”

For a cross-border seller, that question is not philosophical. It’s the difference between a $12 return being auto-refunded and a $400 chargeback dispute being auto-conceded. The product’s real value proposition is that it forces you to draw that line explicitly, in writing, before the ticket arrives — instead of discovering your implicit line after a bad month.

Why the “frozen pack” idea is the actual feature

Most automation tools in e-commerce let you edit rules live. That feels like agility. In practice it’s how you lose the ability to explain, six weeks later, why a particular refund was approved. If your rules changed every Tuesday, your audit trail is fiction. A frozen pack means the decision made on March 3 can be replayed against the exact logic that existed on March 3. For anyone selling into the EU, where you may need to justify a returns decision under consumer protection rules, or into marketplaces where Amazon Seller Central can demand documentation during an appeal, that replayability is worth more than the accuracy gains from live-tuning.

How it differs from what you’re probably already using

Let’s be honest about the incumbent stack. If you’re a mid-size seller, your “rules engine” is probably one of four things:

  • A Shopify Flow automation or a Klaviyo flow doing basic segmentation
  • A Zendesk or Gorgias macro with a human deciding everything
  • A spreadsheet plus a VA in Manila
  • Nothing, which is the most common answer

None of those give you calibrated probabilities with an explicit accept/review threshold. Zendesk and Gorgias are excellent at routing and response drafting, but their AI features are oriented toward “suggest a reply,” not “decide whether this claim is true and log why.” Shopify Flow is deterministic — if-then, no probability, no rubric. That determinism is a feature for order tagging and a liability for anything involving a human claim.

Where judged.systems is genuinely different is the refusal to let retroactive labels contaminate the record. Most ML pipelines quietly retrain on your corrections, which means your historical accuracy numbers become meaningless the moment you start labeling. Here, the label is a separate artifact from the evaluation. If you’ve ever tried to reconstruct why your fraud tool flagged a customer last quarter and found that the model had been silently updated three times since, you understand why this matters.

Where the math breaks

Here’s my problem with threshold-based auto-accept in e-commerce specifically. The distribution of ticket types is wildly non-stationary. Your return rate in November is not your return rate in February. Your chargeback rate spikes after a shipping carrier has a bad week. A threshold tuned on last quarter’s data is a threshold that will silently misclassify this quarter’s edge cases — and it will do so at exactly the moment volume is highest and human review capacity is lowest.

Gal Dayan made the sharpest comment on the launch thread: the danger is “anywhere the ticket author has an incentive to word things so the classifier lets them through.” Refund requests and policy risk are exactly that. The person writing the ticket is sometimes trying to be classified as low-risk on purpose, so the probability score you threshold on is also the thing being gamed. Dayan’s conclusion is worth quoting in full, because it’s the correct one: “queue routing or urgency, nobody’s lying to you about that, it’s a fine place to auto-accept. the moment the input is adversarial rather than just noisy, a high-confidence score stops being reassuring.”

That’s not a knock on judged.systems. It’s the boundary condition every operator needs to internalize before they wire a threshold into a refund decision.

What cross-border sellers should actually borrow from this

You probably aren’t going to rip out your helpdesk and adopt a new classifier next week. But there are four ideas here you can steal immediately, regardless of your stack.

1. Separate the decision from the label

Right now, most sellers keep a single “resolution” column in their returns tracker: refunded, denied, escalated. That column conflates the decision and the outcome. Split it. One field for “what the rule said at the time,” one for “what we now believe was correct.” The moment you separate them, you can measure whether your rules are actually calibrated or just lucky.

2. Freeze your rules on a schedule

Pick a cadence — monthly is fine — and version your SOP. Date-stamp it. When you change a threshold, that’s a new version, not an edit. This costs you almost nothing and it’s the single highest-leverage thing in this entire essay. If you sell on Amazon and ever face a suspension appeal, or on Etsy where policy enforcement can be opaque, a versioned decision log is your defense.

3. Write down your refusal line

The maker’s question is the right one. For each ticket category you handle — returns, INR claims, chargebacks, supplier disputes, listing takedowns — write one sentence: “This category never auto-accepts, regardless of confidence.” My list would include anything involving a payment dispute over $150, anything touching a marketplace policy violation, and anything where the customer has already contacted us twice. Your list will differ. The point is that it exists before the ticket does.

4. Treat routing as the safe automation lane

Dayan’s distinction is the most actionable thing on the page. Auto-accepting a routing decision (this goes to the returns team, this goes to fraud review) is low-risk because the input isn’t adversarial. Auto-accepting a judgment decision (this claim is true, this refund is deserved) is high-risk because it is. If you’re going to automate anything this quarter, automate the routing and keep the judgment human. That single reallocation probably recovers more hours than any classifier upgrade.

Where my judgment says this falls short

Three things bother me.

First, the launch page gives no pricing, no integration list, and no accuracy benchmarks. “Not disclosed” is fine for a day-one launch, but a seller can’t evaluate a governance tool without knowing whether it plugs into Gorgias, Zendesk, or a raw API. If it’s API-only, the realistic buyer is a seller with an in-house engineer — which excludes most of the operators who need it most.

Second, the frozen-pack model has a real cost the launch page doesn’t acknowledge. If your rules can’t be edited live, your response time to a novel fraud pattern is however long your release cadence is. For a seller hit by a coordinated return-abuse ring, a monthly freeze is a month of losses. There’s a version of this where the freeze is per-decision-type and the cadence is tunable, but that’s my speculation, not the product’s claim.

Third, and this is the structural one: the tool is only as good as the rubric you feed it. A probability score against a badly-written rubric is a precise answer to the wrong question. Most sellers do not have well-written rubrics for their return and dispute categories. They have vibes and a Notion page. Adopting judged.systems without first doing the boring work of writing rubrics is buying a scale before you own a kitchen.

Why Amazon sellers should care more than Shopify ones

A Shopify DTC operator owns the customer relationship and can afford to be generous on edge cases — a refund is a marketing expense. An Amazon seller is operating inside someone else’s policy regime, where a misclassified claim can feed into metrics that affect buy-box eligibility and account health. The cost of a wrong auto-accept is asymmetric and much higher on Amazon. Same logic applies on TikTok Shop and Temu, where platform policy is enforced with limited appeal paths. If you sell primarily on your own storefront, this class of tooling is a nice-to-have. If your revenue lives on a marketplace, it’s closer to insurance.

What I’d watch / test next

This week, do three things. First, open your returns or disputes tracker and add the second column — the one that separates the decision from your later judgment of it. You don’t need new software for this; you need one schema change. Second, write your refusal list: the five ticket categories that will never auto-accept no matter how confident any tool claims to be. Third, if you’re seriously evaluating judged.systems, ask the maker two questions before you sign anything — what does it integrate with, and can the freeze cadence be configured per decision type? Those answers determine whether it’s a governance layer or a demo.

Longer term, I’d watch whether this category converges with the helpdesk incumbents. Gorgias and Zendesk already own the ticket surface; the question is whether explicit thresholds and frozen packs become a feature they ship or a wedge a standalone tool can hold. My bet is the incumbents ship a worse version within a year and the standalone survives only if the audit trail becomes a compliance requirement — which, given where EU and marketplace policy is heading, is not a crazy bet. But it’s a bet, not a certainty. Treat it like one.

Ready to Create Your Own?

Join thousands of brands creating high-performing video ads with VEONIB. No editing skills required.

Start Creating for Free