Diagnostics: Tighten DP086 for async assemble contracts - #328
Conversation
Name sync product T and async Task/ValueTask returns so Phase 2 diagnostics match Spec #325. Co-authored-by: Cursor <cursoragent@cursor.com>
There was a problem hiding this comment.
Stale comment
Autopilot status
Merge-ready for @Skymly — no action taken this pass.
Gate Status Conflicts None ( MERGEABLE)Review threads None open Required CI Green ( build-test,build-test-net48,pack)Bugbot Pass Note: branch is behind
main(mergeStateStatus: BEHIND). Update from base before merge if branch protection requires an up-to-date head; otherwise safe to merge when you choose.Leaving merge / auto-merge / ready-for-review to you.
Sent by Cursor Automation: DesignPatterns — Autopilot PR
…ssemble-contract-copy
There was a problem hiding this comment.
Stale comment
Autopilot status
Merge-ready for @Skymly — no code changes this pass.
Gate Status Conflicts None ( MERGEABLE)Behind main0 (2 commits ahead) Review threads None open Required CI Green ( build-test,build-test-net48,pack)Leaving merge to @Skymly.
Sent by Cursor Automation: DesignPatterns — Autopilot PR
There was a problem hiding this comment.
Autopilot status
Merge-ready for @Skymly — no further action this pass.
| Gate | Status |
|---|---|
| Conflicts | None (MERGEABLE) |
| Base sync | Up to date with main (0 behind / 2 ahead) |
| Review threads | None open |
| Required CI | Green (build-test, build-test-net48, pack) |
Leaving merge / auto-merge / ready-for-review to you.
Sent by Cursor Automation: DesignPatterns — Autopilot PR


Summary
Tand asyncTask/ValueTaskreturns are named correctly for Phase 2 assemble contracts.Fixes #325
Test plan
Ci/CiPackgreenTvs task transport clearlyNote
Low Risk
Diagnostic message/description and test snapshot updates only; no generator logic, auth, or data-handling changes.
Overview
Updates DP086 (
GenerateBuilderAssembleContractMismatch) message and description so valid[BuilderAssemble]returns are explicitly sync productTor asyncTask<T>/ValueTask<T>, and illegal cases (void, bareTask/ValueTask, duplicate assemble, multipleCancellationToken) are called out.Also refreshes the void-assemble Verify snapshot, descriptor unit assertions, and changelog entry. No generator validation behavior changes in this PR.
Reviewed by Cursor Bugbot for commit 92d8324. Configure here.