Complete task-oriented operator UX workflows
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 15/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- python
- Domain
- backend-api-design, documentation, full-stack, testing
Research direction
Start with docs/audits/2026-10-02-ux-completion.md, which contains the implementation and historical local test/browser evidence. Review the UX01–UX18 responses and acceptance checklist, then inspect the independent commit-review receipts when they arrive and confirm the current full suite and checks pass. Done means reviewed changes are committed and pushed, with human validation and deployment explicitly remaining out of scope.
Written by the indexing model from the issue text.
Description
The operator interface makes campaign preparation, recipient management, delivery investigation, and setup difficult to navigate. Implement the task-oriented UX audit while preserving the current shared design-system styling.
Scope: audited operator workflows, audience/contact eligibility and scope, draft/review/test-send/cancel/schedule, unified email activity, block composer, sender setup, documentation navigation, operational jobs/schedules, accessibility and local performance checks. Required admin API/schema dependencies must have an explicit reviewed integration boundary; foreign work must be preserved.
Acceptance:
- Audit UX01–UX18 have implemented responses and disclosed limitations.
- Real scheduled dispatch, cancellation, outbox recovery, timezone/DST and stale-review guards pass tests.
- Campaign test sending enqueues durable work instead of contacting a provider in an HTTP handler; queue acceptance is distinct from delivery.
- Composer/import, confirmation, navigation/scope, eligibility, activity and operations regressions pass.
- Independent tester runs current full suite and checks; independent product acceptance follows PASS.
- Reviewed changes are committed and pushed to a feature branch, preserving local DB/scratch files and foreign work; no deployment.
Compatibility explicitly scoped: existing operator bookmarks in the audit/demo walkthrough use documentation workflow and endpoint-group anchors. Keep the old full reference and hash mapping for one operator migration window ending 4 November 2026. Tests cover the old anchors and destination access. Staff request logs for /api-docs/legacy/ provide observability; inspect usage before removing that route, template, and mapping in a separate cleanup issue. Do not extend this compatibility path to new API contracts.
Human validation remains separate: actual-user and human screen-reader sessions, real email-client rendering, authenticated deployed-environment verification and PostgreSQL query-plan validation. Code may be committed with Refs while these are unverified.
Implementation and historical local test/browser evidence: docs/audits/2026-10-02-ux-completion.md; independent commit-review receipts will follow. User explicitly requested commit and push on 4 October 2026.
- Dominant language
- Python
- Stars
- 0
- Forks
- 0
- Avg merge
- 7h 12m
- Merged PRs (30d)
- 12
Getting set up
- Ships a Dockerfile or Docker Compose file
- No pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from DataTalksClub/relay
-
bug
Difficulty 5/5 Over a week Newbie friendliness 20/100
DataTalksClub/relay#42 · 7 comments ·
Maintainers usually reply within 1 day
-
community-base enhancement
Difficulty 5/5 Over a week Newbie friendliness 25/100
DataTalksClub/relay#39 · 6 comments ·
Maintainers usually reply within 1 day
-
community-base enhancement
Difficulty 5/5 Over a week Newbie friendliness 15/100
DataTalksClub/relay#37 · 15 comments ·
Maintainers usually reply within 1 day
-
community-base enhancement
Difficulty 5/5 Over a week Newbie friendliness 15/100
DataTalksClub/relay#35 ·
Maintainers usually reply within 1 day
-
community-base enhancement
Difficulty 5/5 Over a week Newbie friendliness 18/100
DataTalksClub/relay#34 ·
Maintainers usually reply within 1 day
All issues in DataTalksClub/relay
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 83/100
PedestrianDynamics/pyFDS-Evac#766 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 1-3 hours Newbie friendliness 91/100
alchaincyf/nuwa-skill#86 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 2 days
-
Docs Needs Triage
Difficulty 1/5 Under an hour Newbie friendliness 88/100
pandas-dev/pandas#71055 ·
Maintainers usually reply within 1 day
-
[Bug]: graphify reads files that git's global ignore file hidesPossibly taken @smngvlkz claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Graphify-Labs/graphify#4335 · 1 comment ·
Maintainers usually reply within 1 day