Skip to main content

Findings & roadmap

All findings in one table

Severity is about user impact, not code size. "Plane" tells you how deep the fix goes — surface fixes are safe to ship alone; scope items need a product decision first (see the method page for why).

#FindingScreenPlaneSeverityFix shape
1Char counter never turns red over the limit (jodapp-web#1315)FormSkeletonHighOne-line class fix
2Checkbox validation message never displays (jodapp-web#1316)FormSkeletonHighd-block on feedback, per RadioGroupField
3One-sided pay renders $NaN (jodapp-web#1317)DetailSkeletonHighconvertCurrency contract fix
4Preview pay period prints undefined (jodapp-web#1314)FormSkeletonMediumAlign pay_type/pay_types key
5Double bullets and raw dashes in requirements/benefitsDetailSkeletonHighStrip list markers at render in BulletedListFromText
6Outlet addresses concatenate into one lineDetailSkeletonMediumOne address per line
7Ad unit sits directly above the only Apply buttonDetailStrategy/StructureHighMove ad below content or below the fold of the action
8One Apply chance per page, no sticky actionDetailStructureHighPrototype sticky bar / repeated Apply
9Pay section last in the formFormStructureMediumPrototype Pay after Overview
10Submit button non-sticky; failure behaviour unverifiedFormSkeletonMediumVerify, then sticky bar or error summary
11Form microcopy grammar ("it's own", "btm right corner")FormSkeletonMediumOne editing pass
12No draft save / no duplicate-from-existingFormScopeMediumProduct decision, then feature
13No map link for addressesDetailScopeMediumCheap link, high decision value
14No related-jobs module (only articles)DetailScopeMediumProduct decision, then module
15Closing date renderable but never collectedFormScopeLowConfirm intent
16Section headings same weight as labelsFormSurfaceLowHeading scale from the design system
17Description body text small/dense on mobileDetailSurfaceLowType scale adjustment
18Trial banner outshouts the posting taskFormSurfaceLowQuieter persistent state

Things we explicitly reviewed and decided not to change: the essentials-first hierarchy on the detail page, the live preview panes on the form, and the fully-visible category picker. They are correct by the model; the roadmap builds on them instead of replacing them.

Roadmap

Phase 0 — restore the feedback layer (this sprint, no design needed). Findings 1–4, tracked under the umbrella issue jodapp-web#1318. Each fix updates its design-system preview cell so the fixed state stays screenshot-verified on every future sync.

Phase 1 — stop showing raw input to seekers (render-side, no employer behaviour change). Findings 5, 6, 11. All three are contained in BulletedListFromText, the address block, and one microcopy pass. Ship together; the detail page immediately looks professionally edited.

Phase 2 — structure experiments in Claude Design (the design system earns its keep). Findings 7–10, prototyped with real components in the Jod Design System before any frontend work: sticky Apply bar, ad placement, Pay-after-Overview, sticky submit with validation summary, plus the form's unaudited mobile layout. Output: one prototype per experiment, reviewed against the screenshots in this folder, then sized as frontend issues.

Phase 3 — scope decisions (product first, then build). Findings 12–15. Each needs an owner to say yes/no before design: duplicate-from-existing (biggest employer time-saver), map links, related jobs, closing date. Data tasks to inform them:

  • How many live jobs have a one-sided pay range? (sizes finding 3's visible impact)
  • How many employers post ≥3 near-identical jobs per month? (sizes duplicate-from-existing)
  • Scroll depth and Apply-click position on the detail page, if GA4 can tell us. (sizes the sticky-Apply win)

Phase 4 — surface polish (rides along with any of the above). Findings 16–18. Small, safe, and all expressible with existing design-system tokens.

Definition of done for this review

  • Phase 0 issues closed (#1314–#1317, tracked by #1318)
  • Phase 1 shipped and the Cafe Crew page re-screenshotted for this folder
  • Phase 2 prototypes reviewed and converted into sized issues
  • Phase 3 decisions recorded (yes or no, both fine — recorded)
  • This folder updated with outcomes, so the next reviewer starts from results, not from scratch