Adds durable, identity-neutral, workflow-bound human tasks, and reconciles the REST surface with the approved Studio contract. - Flat summary/detail DTOs, a global capability descriptor, and workflow context captured at activation. - Scope is part of the list authorization predicate; manager decisions require manage:user-tasks; a denied command answers 404 so it cannot prove a task exists. - Guest sessions are task-scoped, action-allowlisted, and revoked when the task closes. Invitations resolve by token hash through the repository, wait in a Data Protection encrypted outbox, and are rate limited per caller. - Masked form values are disclosed only through an audited reveal command. - Store-specific concurrency failures are translated into a single UserTaskRevisionConflictException, so a concurrent edit returns the documented revision-conflict result behind any provider instead of a 500. EF Core (SQLite, SQL Server, PostgreSQL, MySQL, Oracle) and VNext persistence, hosted due/reconciliation/delivery workers, docs, and 49 tests. Note: this branch also carries two commits inherited from its branch point that are not part of User Tasks and are squashed in here — the revert-version allocation change from #7917 (WorkflowDefinitionPublisher.RevertVersionAsync now allocates from the last version rather than the latest) and an NU1903 package pin. Merged deliberately rather than rebased out.
812 B
812 B
Requirements Quality Checklist
- CHK001 Product outcome and actors are explicit.
- CHK002 User stories are prioritized and independently testable.
- CHK003 Functional requirements use stable identifiers and testable MUST language.
- CHK004 Identity neutrality and host integration seams are explicit.
- CHK005 Lifecycle, race, idempotency, and reconciliation behavior are explicit.
- CHK006 Safe versus protected disclosure is explicit.
- CHK007 REST, persistence, Studio, invitation, forms, retention, and scale boundaries are covered.
- CHK008 V1 exclusions and existing RunTask compatibility are explicit.
- CHK009 No unresolved
[NEEDS CLARIFICATION]markers remain after the product interview. - CHK010 Success criteria are measurable and implementation-neutral.