Two ways to keep a small product's claims close to its implementation
“Self-learning” and “accessible” sound reassuring. Both become weak product language when the implementation and evidence are unspecified.
This article examines QuoteBack's local ranking adjustment and accessibility checks. TSHC makes QuoteBack; the article was prepared with AI assistance and checked against its source and release record.
Start with a heuristic, name it honestly
QuoteBack's attention score combines estimate age, quoted value and previous follow-up attempts. It orders a review queue. It is not a calibrated probability that a customer will purchase.
Recording outcomes adds a bounded local adjustment. Estimates are grouped into fresh, active and aged cohorts by age. The adjustment remains zero until a cohort has ten Won or Lost outcomes.
The implemented calculation can be expressed independently of the product UI:
function adjustment(won: number, lost: number): number {
const n = won + lost;
if (n < 10) return 0;
const smoothedRate = (won + 2) / (n + 4);
return Math.round(
Math.max(-10, Math.min(10, (smoothedRate - 0.5) * 20))
);
}
This smoothing rule and ten-point cap are product choices. They limit how far local outcomes can move a score. They do not establish causal evidence, calibrated predictions or a machine-learning model.
Choose which events count
Revisit later is a deferred decision, so it does not train ranking. Fictional sample outcomes are excluded. Already-resolved items are guarded against repeat contribution.
Those distinctions must survive export and re-import. Otherwise a user can unintentionally turn a demonstration into evidence.
There is still a limit: exporting and later re-importing real records is not a globally deduplicated event ledger. QuoteBack does not have a cross-device identity or server-backed outcome history. The local aggregate should not be sold as enterprise analytics.
Explain the reset boundary
Complete-session saving and aggregate learning are different stores. The interface provides separate controls. That distinction matters when a user wants to stop saving records but keep a local ranking history—or clear that history entirely.
Validated restoration is part of the boundary. Corrupt or unexpected local values are not trusted merely because they came from localStorage.
Accessibility is a state matrix
The default page is not the whole interface. Import errors, populated estimates, selected pipeline stages and an open help panel expose different content and controls.
The structural audit used the packaged interface in jsdom. It reported zero violations in the empty workspace, populated demo and open guide. Those runs reported 33, 33 and 36 passing rule results respectively.
Visual contrast was excluded. Those numbers are not a WCAG compliance certificate. Deque's documentation distinguishes automated checks from manual screen-reader testing and explains that hidden regions need to be opened for analysis.
Give controls observable state
The pipeline buttons expose their selected state through aria-pressed. The guide trigger exposes aria-expanded and refers to its panel through aria-controls. The response area is a polite live region.
<button
aria-expanded={open}
aria-controls="product-guide"
onClick={() => setOpen(value => !value)}
>
{open ? "Close guide" : "Open guide"}
</button>
This illustrative snippet does not solve focus management or every screen-reader interaction. ARIA conveys state; real-device behaviour still needs acceptance testing.
QuoteBack's checks also covered labelled sliders and file input, one primary heading, Escape dismissal, reduced motion and rendered target heights. The small top import link and forecast sliders were increased to 44 pixels after a rendered-control audit.
Separate reported acceptance from automation
The Chairman reported successful VoiceOver, enlarged-text/mobile and TalkBack acceptance. The release record labels those results as user-reported, rather than claiming that the automation ran on iOS or Android.
That distinction keeps evidence useful. If a future regression appears on a device, the team can identify which checks need repeating instead of defending an inflated “100% accessible” statement.
The shared principle is restraint in claims: describe what adapts, what was measured and what remains outside the system.
References:
https://www.w3.org/TR/wai-aria-1.2/
https://www.deque.com/axe/core-documentation/api-documentation/
https://www.deque.com/axe/devtools/
Disclosure: TSHC makes QuoteBack. Product context: https://compliancechief8.gumroad.com/l/quoteback-founding-pilot?utm_source=developer_evidence&utm_medium=blog&utm_campaign=quoteback_launch
About Safwan Bey
Safwan Bey is Chairman and CEO of Trinlah Sovereign Holdings Corporation (TSHC), a human rights consultant, SDG education advocate, and author of Benji and the SDGs: A Fox’s Journey to Save the World. Through TSHC Product Foundry, he leads work on practical digital products, data tools and education resources. This article is published by TSHC with AI assistance.
Top comments (0)