Atlas Workspace · Example release 0.9.0-rc2
September 10, 2026 · 17-page sample report · 12 prioritized records
Fix signup and invitations. Keep billing on hold.
The scenario’s core workflow has a useful foundation. Resolve the two High functional defects, verify the affected journeys and make interrupted work recoverable. A paid launch requires evidence for purchase, access, cancellation and downgrade.
12 records: 3 High, 6 Medium and 3 Low. The third High record is an untested paid-readiness gate. Readability and returning-user value require measurement or research. No numerical product score or conversion-loss estimate is implied.
The full PDF covers onboarding, first-project setup, task creation, invitations, browser history, offline recovery, keyboard use, responsive readability, exports and paid-offer readiness. It includes a journey matrix, strengths to preserve, detailed findings, four labeled evidence schematics, role ownership and retest acceptance.
Strengths to preserve: the modeled first-task flow, retained drafts during failure, core export content, a useful free path and clear billing-off messaging.
Enter a name, company and password. Enter an email without a domain. Select Create account. Correct the email and attempt to continue.
Account creation becomes repeat work at the first commitment point. Abandonment is a plausible consequence; this sample assigns no conversion-loss estimate.
The form returns to an empty state with a general error. Valid name and company values are lost along with the invalid email.
Preserve form state through validation failure. Attach the error to the field, move focus appropriately and keep the submit action available after correction.
Keep appropriate non-sensitive values, identify the email error beside its field and let the person correct it. Apply the product’s password-handling policy.
Invalid email produces a field-specific error. Name and company remain unchanged. Correcting the email creates one account; keyboard and narrow-screen paths also succeed.
Evidence: E-01 · schematic on page 12
Enter one teammate email. On a slow connection, select Send invite twice before the first response. Open the pending-invitations list.
An uncertain action becomes an untidy team record and creates avoidable cleanup. Potential duplicate emails require a separate delivery check.
Add visible pending/success/failure states and protect the write against retries. Provide a deliberate resend action for an existing invitation.
A pending state appears immediately. One deliberate action creates one invitation. Repeated requests cannot create duplicate active invitations.
Double-click, keyboard repeat and retry after a delayed response each leave one pending invitation. A failed request can be retried. Resend does not create a second member record.
Evidence: E-02 · schematic on page 12
Open the Pro offer from a free workspace. Inspect upgrade, account management and the stated access rules. Review the proposed purchase-to-cancellation test plan.
Paid readiness cannot be established. The informational preview may remain available; the gap is a launch requirement, not evidence of an incorrect charge.
The scenario includes an informational offer with billing off. Purchase, entitlement activation, renewal, recovery, cancellation and downgrade have no execution record.
Define plan limits and cancellation behavior. Complete authorized sandbox lifecycle tests, including provider events and access readback, before a limited paid pilot.
Before billing opens, the service, checkout terms and account lifecycle work together and have a traceable acceptance record.
Purchase grants the correct access once; retries do not duplicate it. Cancel stops renewal. The access-end date is clear, and downgrade preserves the agreed read/export path.
Evidence: No transaction or provider receipt supplied
Advance from workspace details to teammate invitations and then the first project. Wait for the saved indicator. Press browser Back, then Forward.
A person trying to correct an earlier answer leaves setup unexpectedly. The product asks them to reconstruct where they were.
Back returns to the dashboard rather than the previous setup step. Forward restores the third step. The scenario does not establish loss of settled saved data.
Represent setup steps in navigation state and restore both the step and its saved values when history changes.
Browser navigation follows the visible step sequence and retains completed values. The in-app Back control and browser history have consistent meaning.
Steps 1 → 2 → 3 reverse to 2 → 1 and move forward again with values retained. Repeat after reload. Dashboard history still behaves correctly.
Evidence: Required: before/after route and retained-state record
Open a task and change its description. Make the browser offline. Select Save changes. Restore the connection, retry, wait for success and reload.
The person cannot tell whether it is safe to close the editor. The defect is unclear recovery; the retained draft should be preserved.
The editor shows “Failed to fetch.” The draft remains in the open form. A settled retry retains the change in the modeled recovery path.
Use: “We couldn’t save your changes. They’re still in this open window. Reconnect, then try again.” Offer Retry and keep the editor open on failure.
Explain that saving failed, where the draft remains and how to retry. Show saved confirmation only after the write completes.
Offline save has no success state. Draft text remains exact. Reconnect and Retry complete one update; reload shows the same text. Closing an unsaved draft asks for confirmation.
Evidence: E-03 · schematic on page 13
Use Tab to focus Edit task and press Enter. Continue tabbing through the dialog. Press Escape and attempt to continue from the task card.
The visible task and keyboard location disagree. A keyboard user may interact with the wrong controls or lose the path back to their work.
Focus remains on the page behind the open dialog. Tabbing reaches background controls. Closing the dialog does not return focus to Edit task.
Use a named dialog with deliberate initial focus, contained tab order and focus restoration. Keep unsaved-change confirmation in the same interaction sequence.
Opening the dialog moves focus into it. Keyboard movement stays within the active modal. Closing returns focus to its initiating control.
Open, edit, save, cancel and Escape work with keyboard alone. Focus stays visible, never reaches the background while modal, and returns to the correct task control.
Evidence: E-04 · schematic on page 13
Open Projects at a narrow viewport. Inspect inactive navigation, task due dates and help links against their backgrounds. Repeat with larger text and reduced brightness.
People may miss a due date or navigation option. Confirm the concern with measurements and assistive-technology testing before assigning a standards failure.
The scenario uses small, muted secondary labels that lose visual prominence. No measured contrast ratio or automated accessibility result is supplied.
Measure the actual combinations, adjust text tokens and review type size. Verify across light/dark states if both are offered.
Navigation and task context remain readable, including secondary states. Active and inactive controls remain distinct without relying on faint text.
Record before/after measurements against the agreed accessibility target. At larger text, labels remain readable and controls do not overlap. Keep measured results with the retest.
Evidence: Required: exact text/background pairs and font sizes
Create a workspace and its first project. Skip teammate invitations. Open the project before adding any tasks.
A new owner has finished setup but still needs to work out how to use the product. The screen leaves the first useful task to discovery.
A blank board shows “No data.” The primary Add task action is available only in a compact toolbar, with no explanation of how to start.
Add “Start with one task” and a visible Create task action. Offer an optional example without filling the workspace with unexplained sample data.
The empty state explains what belongs here and offers a clear action that produces the first useful result.
An owner can create and reopen the first task from the empty state. The message changes after creation; search-empty and permission-empty states use separate explanations.
Evidence: Required: first-project empty-state capture
Create a project, assign tasks and leave one invitation pending. Return to the dashboard the next day or use seeded equivalent state for interface review.
The return visit may feel like starting from scratch. This is a design hypothesis; seeded or simulated days cannot establish actual retention.
Activity, workspace settings and project cards have equal weight. Nothing summarizes overdue work, pending invitations or the next useful action.
Prioritize a small, factual “Needs your attention” group. Use real task and invitation states; let users dismiss items that are irrelevant.
The dashboard helps the owner understand what changed and choose a relevant next step, while preserving access to the full project list.
In formative research, returning owners can explain what needs attention and complete a chosen next action. Observe real repeat use before attributing a retention benefit.
Evidence: Required: target-user return-session observation
Save a task, then immediately select the neighboring project-navigation link while the success toast is visible.
A successful action is followed by a brief dead end. The scenario shows interruption rather than lost work.
The toast sits over the navigation target and receives the click. Once it disappears, navigation works normally.
Move confirmation into a reserved message area or a location that does not overlap controls. Avoid a focus change for passive success feedback.
Confirmation remains visible without covering the next likely action or preventing pointer and keyboard navigation.
After save, the same navigation target works immediately with pointer and keyboard. The message remains available long enough to read and does not cover mobile controls.
Evidence: Required: overlap capture and pointer-target check
Create a task with an owner and due date, then export the project. Open the downloaded CSV and compare it with the visible task.
Someone reviewing or handing off the file needs additional interpretation. This is an export-semantic issue, not a broken download.
The modeled export retains task content but labels fields with internal keys such as assignee_id and due_at, without a human-readable owner or timezone context.
Add readable column names and owner display values alongside identifiers. Define date formatting and timezone behavior in the export contract.
Exported records remain useful outside the app. Names, stable identifiers and date/time meaning are clear.
Compare Unicode text, commas, line breaks, unassigned tasks and due dates against source records. Content remains exact; spreadsheet opening does not change intended values.
Evidence: Required: actual downloaded CSV and source record comparison
Open the board, create a task, save it and inspect its confirmation and empty-state messages.
A small terminology mismatch adds avoidable interpretation during onboarding and makes help documentation harder to follow.
The board says Add task, the dialog says New item, and confirmation says Record created. Each refers to the same project task.
Use task consistently: Create task, Task details and Task created. Apply the same vocabulary to validation, search and export help.
The same object keeps the same name throughout the journey. Confirmation describes the result in the user’s vocabulary.
Review the complete create/edit/delete journey and associated help. Task is used consistently, while project and workspace retain their distinct meanings.
Evidence: Required: label inventory across the task journey
Start with signup state and duplicate invitations. Then address navigation, recovery and keyboard access, followed by readability, empty states, exports and terminology. Product and research own the return-experience hypothesis. Keep the paid lifecycle on a separate pre-billing acceptance track.
Record the candidate build, environment, exact reproduction and outcome for each finding. Test the failed path and its adjacent valid path. Use Pass, Fail, Blocked or Not retested; record accepted risks separately. The release owner makes the launch decision with remaining limits visible.
Your engineers can use these records directly. Odesa implementation support can be scoped separately against the same acceptance criteria.