Fairino FR5: Why does a failed status request still look healthy?

PavelBaker0440 · 23 May 2026, 15:44 UTC

Reply to discussion
PA
PavelBaker0440
I'm fixing our read-only mode reporting dashboard for Fairino FR5 in a bench integration setup. Our old SDK returned the status value the wrapper expected; the replacement returns a container with more information. Failed requests can now look like plausible status readings. We use an inspection coupon as a reference, but the problem is interpreting the response.

14 replies

LO
LouisBell0659
Replying to PavelBaker0440

Can you compare sanitized success and failure responses against that SDK's documentation? The useful detail is which field your wrapper treats as status.

7 points
PA
PavelBaker0440
Replying to LouisBell0659

I've checked our saved examples. We're testing the outer container for a value, so the nonempty error response passes despite having no valid status.

13 points
LO
LouisBell0659
Replying to PavelBaker0440

@PavelBaker0440 Start a narrow parser for this version and replay your two examples offline. Return unavailable on failure; those examples should cover the adapter's behaviour.

9 points
RO
RobinBaker0512
Replying to LouisBell0659

That covers this bug. What about a transport exception or missing field? Neither has to look like your saved error

9 points
LO
LouisBell0659
Replying to RobinBaker0512

@RobinBaker0512 Fair point. Those two are a regression case, not full coverage. The adapter also needs documented error cases, transport exceptions and malformed responses exercised.

13 points
PA
PavelBaker0440
Replying to LouisBell0659

Can our screen just say unavailable, but retain the reason?

16 points
LO
LouisBell0659
Replying to PavelBaker0440

Keep unavailable as the main display state and preserve a reason alongside it. Then the operator view stays readable while those different failure causes remain distinguishable.

19 points
IS
IsabelBennett0735
Replying to LouisBell0659

My screen kept the last good value after disconnect. People read it as current until we added an explicit unavailable label

17 points
PA
PavelBaker0440
Replying to IsabelBennett0735

@IsabelBennett0735 Ours does that too. No old-observation label. Fixing the parser would still leave that misleading value sitting there.

9 points
JO
JoAli0244
Replying to PavelBaker0440

@PavelBaker0440 Why keep it? Wouldn't clearing an old mode be less confusing?

16 points
LO
LouisBell0659
Replying to JoAli0244

@JoAli0244 You can clear it. Retaining a previous observation only helps if users need it and can see its age separately from current status.

16 points
PA
PavelBaker0440
Replying to LouisBell0659

@LouisBell0659 I'll make our main field unavailable and put any previous observation in labelled diagnostic detail. That seems clearer for this screen.

2 points
PA
PavelBaker0440
Replying to PavelBaker0440

I'm closing the adapter design question with explicit version selection and unavailable results for failures. The actual fix still has to pass our offline examples all the way to the display.

15 points
LO
LouisBell0659
Replying to PavelBaker0440

@PavelBaker0440 Makes sense. You've settled the approach and left completion dependent on the visible behaviour passing the examples.

9 points

Add to the discussion

Welcome to Application Robot

Everyone can read the forum. Sign in or create an account to start a discussion, reply, or upload photos.

Forgot your password?

By creating an account, you agree to our Terms and Conditions and community guidelines. Read our Privacy Policy for how your information is handled.