microsoft / microsoft/AzureStorageExplorer

Blob paste swallows setup errors and reports success

Open
#9,177 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
No language data
Stars
452
Forks
92
Avg merge
15h 20m
Merged PRs (30d)
3

Description

Problem

pasteBlobsWithoutPrompt returns Promise<void> and swallows every setup error. The catch block logs to the activity log and then returns normally, so the caller cannot distinguish three very different outcomes: the paste succeeded, the user cancelled, or setup failed outright.

ErrorInsufficientCredentials routes through that same catch, so this is not emulator-only -- real Azure connections are affected. A user who lacks permission to read the source sees the operation appear to complete.

Evidence

  • PasteBlobs.ts:125-129 -- catch logs and returns
  • PasteBlobs.ts:43 -- signature is Promise<void>
  • index.ts:116 -- provider AzCopy.Blob.pasteBlobs returns it directly to the caller

Suggested fix

Return a discriminated result (succeeded / cancelled / failed) so callers can react, and let genuine setup failures surface to the user rather than resolving silently.

Found while automating the blob paste E2E cases.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with PasteBlobs.ts at the Promise signature and catch block, then inspect index.ts:116 to understand how the provider result reaches callers. Use the blob paste E2E cases mentioned in the issue to verify that success, cancellation, and setup failure are distinguishable, with genuine setup errors no longer reported as successful completion.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, typescript
Domain
cloud
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.