Skip to content

Conversation

@aws-toolkit-automation
Copy link
Collaborator

Automatic merge failed

  • Resolve conflicts and push to this PR branch.
  • Do not squash-merge this PR. Use the "Create a merge commit" option to do a regular merge.

Command line hint

To perform the merge from the command line, you could do something like the following (where "origin" is the name of the remote in your local git repo):

git stash
git fetch --all
git checkout origin/feature/stepfunctions-execution
git merge origin/master
git commit
git push origin HEAD:refs/heads/autoMerge/feature/stepfunctions-execution

@aws-toolkit-automation aws-toolkit-automation requested a review from a team as a code owner June 24, 2025 18:37
@github-actions
Copy link

  • This pull request modifies code in src/* but no tests were added/updated.
    • Confirm whether tests should be added or ensure the PR description explains why tests are not required.

@aws-toolkit-automation aws-toolkit-automation requested a review from a team as a code owner June 24, 2025 20:17
chungjac pushed a commit that referenced this pull request Jul 2, 2025
## Problem
Merge conflict: 
#7549


## Solution
Fixing Merge Conflicts

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.

---------

Co-authored-by: samgst-amazon <[email protected]>
Co-authored-by: Diler Zaza <[email protected]>
Co-authored-by: David <[email protected]>
Co-authored-by: David Hasani <[email protected]>
Co-authored-by: Ashish Reddy Podduturi <[email protected]>
Co-authored-by: invictus <[email protected]>
Co-authored-by: aws-toolkit-automation <>
Co-authored-by: Tyrone Smith <[email protected]>
Co-authored-by: tsmithsz <[email protected]>
Co-authored-by: zelzhou <[email protected]>
Co-authored-by: Ralph Flora <[email protected]>
aws-toolkit-automation and others added 4 commits July 23, 2025 17:07
## Problem
- There is lot of duplicate and unwanted redundant code in
[aws-toolkit-vscode](https://github.com/aws/aws-toolkit-vscode)
repository.

## Solution

- This is the first PR to remove unwanted code.
---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
@aws-toolkit-automation aws-toolkit-automation requested a review from a team as a code owner July 24, 2025 17:25
atonaamz and others added 20 commits July 24, 2025 11:03
## Problem
Added another code setting for show logs.

## Solution
Added another code setting for show logs.

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
… all users no matter it's shown or not (#7722)

…

## Problem

by design, the code path should only be applied to "new" users, however
currently it's taking 250ms for all users no matter the UI is displayed
or not.


<img width="843" height="264" alt="image"
src="https://github.com/user-attachments/assets/1d70bb30-a7c6-4f71-b65b-e1d171c85b9d"
/>


## Solution


---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
…de (#7759)

## Problem

When a paginated response is in flight, but the user already accepted or
rejected a completion, the subsequent paginated requests should be
cancelled.

This PR also fixes the `codewhispererTotalShownTime` being negative
issue by using performance.now() across all timestamp computation.


## Solution

This is not a user facing change.

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
…2178)

## Problem
Need view notebook job definitions page

## Solution
- Create view notebook job definitions page. It uses table for rendering
job definitions, and has actions for start/pause/delete. Page is
rendered with mock data
- Add logic that after creating job, show view jobs page with new job
created banner
- Add logic that after creating job definition, show view job
definitions page with new job definition created banner
- Create TkTable component for rendering table
- Create TkBanner for showing banner
- Create icons for start, pause, delete
---
#### View job definitions page
<img width="1301" height="1108" alt="Screenshot 2025-07-24 at 1 51
17 PM"
src="https://github.com/user-attachments/assets/fddae9dc-2a71-4f63-862d-d6340dd89577"
/>

#### New job definition created banner
<img width="1293" height="373" alt="Screenshot 2025-07-24 at 1 52 58 PM"
src="https://github.com/user-attachments/assets/cfe54290-8290-4b8d-9a7a-6479601e1e0e"
/>

#### New job definition created banner
<img width="1297" height="386" alt="Screenshot 2025-07-24 at 1 53 48 PM"
src="https://github.com/user-attachments/assets/185bed4f-108e-4d06-a14d-e7063082ec8a"
/>


- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
## Problem
1. when intelliSense suggestion is surfaced, inline completion are not
shown even if provideInlineCompletionItems have returned valid items.
2. provideInlineCompletionItems is unnecessarily debounced at 200ms
which creates a user perceivable delay for inline completion UX. We
already blocked concurrent API call.
3. The items returned by provideInlineCompletionItems, even though they
match the typeahead of the user's current editor (they can be
presented), sometimes VS Code decides to not show them to avoid
interrupting user's typing flow. This not show suggestion decision is
not emitted as API callback or events, causing us to report the
suggestion as Rejected but it should be Discard.

## Solution

1. Force the item to render by calling
`editor.action.inlineSuggest.trigger` command.
<img width="589" height="374" alt="Screenshot 2025-07-24 at 7 45 12 PM"
src="https://github.com/user-attachments/assets/f2723ab4-1d94-49e6-bae1-493c2af16bed"
/>

3. Remove the debounce

5. Use a specific command with when clause context to detect if a
suggestion is shown or not.

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
## Problem
- There is lot of duplicate and unwanted redundant code in
[aws-toolkit-vscode](https://github.com/aws/aws-toolkit-vscode)
repository.

## Solution

- This is the 2nd PR to remove unwanted code.
- Here is the 1st PR:
#7735
---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
feat(smus): Enhance project switching functionality
## Github Issue #6902

## Problem

AWS Toolkit version 3.47.0 introduced a regression where profiles using
`source_profile` for role chaining fail to authenticate when the source
profile uses SSO credentials. Users get an "InvalidClientTokenId: The
security token included in the request is invalid" error.

## Root Cause

The issue was introduced in commit 6f6a8c2 (Feb 13, 2025) which
refactored the authentication code to remove deprecated AWS SDK
dependencies. The new implementation in
`makeSharedIniFileCredentialsProvider` method incorrectly assumed that
the source profile would have static credentials (aws_access_key_id and
aws_secret_access_key) directly in the profile data.

When the source profile uses SSO, these static credentials don't exist
in the profile data - they need to be obtained by calling the SSO
service first.

## Solution

The fix modifies the `makeSharedIniFileCredentialsProvider` method in
`packages/core/src/auth/providers/sharedCredentialsProvider.ts` to:

1. Check if the source profile already has resolved credentials (from
`patchSourceCredentials`)
2. If not, create a new `SharedCredentialsProvider` instance for the
source profile and resolve its credentials dynamically
3. Use those resolved credentials to assume the role via STS

This ensures that SSO profiles can be used as source profiles for role
assumption.

## Changed Files

- `packages/core/src/auth/providers/sharedCredentialsProvider.ts` -
Fixed the credential resolution logic
-
`packages/core/src/test/auth/providers/sharedCredentialsProvider.roleChaining.test.ts`
- Added tests to verify the fix

## Testing

The fix includes unit tests that verify:

1. Role chaining from SSO profiles works correctly
2. Role chaining from SSO profiles with MFA works correctly

## Configuration Example

This fix enables configurations like:

```ini
[sso-session aws1_session]
sso_start_url = https://example.awsapps.com/start
sso_region = us-east-1
sso_registration_scopes = sso:account:access

[profile Landing]
sso_session = aws1_session
sso_account_id = 111111111111
sso_role_name = Landing
region = us-east-1

[profile dev]
region = us-east-1
role_arn = arn:aws:iam::123456789012:role/dev
source_profile = Landing
```
Where `dev` profile assumes a role using credentials from the SSO-based
`Landing` profile.

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
BlakeLazarine and others added 4 commits September 17, 2025 17:07
)

## Problem
Customers complained about missing the old deterministic message.

## Solution
As the agent to include this message at the start of its explain
response. It was stored in the recommendation.text field.

The agent does some paraphrasing, so the deterministic message

`We detected that this code sets key specifications more than once, key
size more than once, or sets both. To make your code more secure, we
recommend that you set either KeySpec or NumberOfBytes once. Do not set
both.`

Gets turned into

`The CWE-327,328,326,208,1240 - Insecure cryptography issue at line 63
in CsvIterator.java occurs because the code sets both KeySpec and
NumberOfBytes parameters on the same GenerateDataKeyRequest object,
which are mutually exclusive in AWS KMS.`

There is more information in the explanation after this, but this is the
part related to the deterministic recommendation.text

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.

Co-authored-by: Blake Lazarine <[email protected]>
Co-authored-by: Laxman Reddy <[email protected]>
…r and added buffer time in cred validation (#8070)

## Problem
- IAM credentials is not updating in Sagemaker instances due to
incorrect comparison logic which prevents credential refresh and hence
users cant interact with Q chat after the initial expiration time
- 
<img width="2513" height="1284" alt="image"
src="https://github.com/user-attachments/assets/0dc8d158-00ef-4c86-aff8-7e147a101881"
/>


## Solution
- Add custom comparator logic and method to properly compare credentials
by their actual values (accessKeyId,
secretAccessKey, sessionToken) instead of string comparison
- Added 60-second expiration buffer to credential validation. similar to
SSO token logic
[here](https://github.com/aws/aws-toolkit-vscode/blob/c3685274fc4e09e72c98db4c43b7959634bc63b0/packages/core/src/auth/sso/model.ts#L158)
for grace-time
- Tested by building a debug artefact on a SMUS CodeEditor instance and
verified q chat is triggering refresh credentials
- ```npm run package && npm run test``` succeeded
-
https://drive.corp.amazon.com/documents/parameja@/PR-8070/IAM-Credentials-Refresh-Q-Chat.mov
---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
…Event api (#8080)

## Problem
- update aws sdk
- sendTelemetryEvent API is missing pluginVersion
- sendTelemetryEvent.userTriggerEvent is missing suggestionType

## Solution


---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
Will-ShaoHua and others added 23 commits September 23, 2025 12:43
…gger (#8085)

…

## Problem
previously UTD will be delayed until next service call, which means it
doesn't gurantee service team will collect all the datapoints

## Solution


---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
…or manual trigger 8085 (#8087)

This reverts commit 00ffeb3.

## Problem


## Solution


---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
## Problem
The project account id and region was missing from data connection and
space action telemetry.

## Solution
The project account id and region are added to data connection and space
action telemetry.

Telemetry for a cross-account example:
```
2025-09-23 15:42:29.674 [debug] telemetry: smus_login {
  Metadata: {
    metricId: 'fdbf85ac-a093-4ab9-ac47-add57a5901cc',
    traceId: '7ee3db34-3f9b-41b7-aa16-824290fa0719',
    parentId: '5c66c1e2-09ba-4308-8e28-a47bfc4acdda',
    smusDomainId: 'dzd_64o7tjjv1cm9gp',
    awsRegion: 'us-east-2',
    smusDomainAccountId: '730335272067',
    duration: '24121',
    result: 'Succeeded',
    awsAccount: 'not-set'
  },
  Value: 1,
  Unit: 'None',
  Passive: false
}

2025-09-23 15:42:32.466 [debug] telemetry: smus_accessProject {
  Metadata: {
    metricId: 'cc75867d-cb7c-4392-b7d7-cda1f7ba627c',
    traceId: '7ee3db34-3f9b-41b7-aa16-824290fa0719',
    parentId: 'da7fad30-0aee-4f31-8962-00ef50b408b8',
    smusDomainId: 'dzd_64o7tjjv1cm9gp',
    smusProjectId: 'cxtwtxb6e3ly95',
    smusDomainRegion: 'us-east-2',
    smusDomainAccountId: '730335272067',
    duration: '3994',
    result: 'Succeeded',
    awsAccount: 'not-set',
    awsRegion: 'us-east-1'
  },
  Value: 1,
  Unit: 'None',
  Passive: false
}

2025-09-23 15:42:43.475 [debug] telemetry: smus_renderLakehouseNode {
  Metadata: {
    metricId: 'dc09a62e-9f18-45c5-bd8b-c113c6a8c5c9',
    traceId: '58ea5647-a29a-45dc-9e6c-fb4175a34a6d',
    smusToolkitEnv: 'local',
    smusDomainId: 'dzd_64o7tjjv1cm9gp',
    smusDomainAccountId: '730335272067',
    smusProjectId: 'cxtwtxb6e3ly95',
    smusConnectionId: '4r6iscfi0rih0p',
    smusConnectionType: 'LAKEHOUSE',
    smusProjectRegion: 'us-east-1',
    smusProjectAccountId: '976193268201',
    duration: '965',
    result: 'Succeeded',
    awsAccount: 'not-set',
    awsRegion: 'us-east-1'
  },
  Value: 1,
  Unit: 'None',
  Passive: false
}


2025-09-23 15:42:46.623 [debug] telemetry: smus_renderS3Node {
  Metadata: {
    metricId: 'be029b31-6111-48f1-8e66-99121dd48484',
    traceId: 'a3698692-e948-4ec4-881a-17a0443e109d',
    smusToolkitEnv: 'local',
    smusDomainId: 'dzd_64o7tjjv1cm9gp',
    smusDomainAccountId: '730335272067',
    smusProjectId: 'cxtwtxb6e3ly95',
    smusConnectionId: '6gy7b7go2jd50p',
    smusConnectionType: 'S3',
    smusProjectRegion: 'us-east-1',
    smusProjectAccountId: '976193268201',
    duration: '1',
    result: 'Succeeded',
    awsAccount: 'not-set',
    awsRegion: 'us-east-1'
  },
  Value: 1,
  Unit: 'None',
  Passive: false
}

2025-09-23 15:43:04.774 [debug] telemetry: smus_openRemoteConnection {
  Metadata: {
    metricId: '7f2c4573-b681-4e81-bc34-84509aac1f46',
    traceId: 'fc5d6674-7042-4634-b7aa-1098aee2b540',
    smusSpaceKey: 'd-uyehbqjlnjl0__ce',
    smusDomainRegion: 'us-east-1',
    smusDomainId: 'dzd_64o7tjjv1cm9gp',
    smusDomainAccountId: '730335272067',
    smusProjectId: 'cxtwtxb6e3ly95',
    smusProjectAccountId: '976193268201',
    smusProjectRegion: 'us-east-1',
    duration: '6969',
    result: 'Succeeded',
    awsAccount: 'not-set',
    awsRegion: 'us-east-1'
  },
  Value: 1,
  Unit: 'None',
  Passive: false
}
```
---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.

Co-authored-by: Laxman Reddy <[email protected]>
…r Linux/Ubuntu in web/container env as AL2 (#8073)

## Problem

PR: #7270 introduced a bug
where the `isAmazonLinux2()` function incorrectly identifies regular
Linux/Ubuntu systems in web/container environments as Amazon Linux 2.
This happens because:

1. The function checks `os.release()` for `.amzn2.` or `.amzn2int.`
patterns
2. In containerized environments (like VS Code web/remote),
`os.release()` returns the __host's kernel version__, not the
container's OS
3. If the host is Amazon Linux 2 but the container is Ubuntu/Linux, the
function incorrectly returns `true`
4. This prevents Amazon Q LSP from starting because it thinks it's on
AL2 without the required GLIBC patch


## Solution
- __Skip AL2 detection for web environments__ - Returns `false`
immediately since web mode runs in a browser

- __Check `/etc/os-release` first__ - In containerized environments,
this file contains the actual container OS, not the host OS

- __Trust container OS over kernel version__ - If `/etc/os-release`
shows it's not AL2 (e.g., Ubuntu), return `false` regardless of kernel
version

- __Fall back to kernel check only when necessary__ - Only use
`os.release()` if we can't read `/etc/os-release` or if it confirms AL2
- Prioritized container OS detection over kernel version detection

- Maintained backward compatibility for actual AL2 systems

- Added comprehensive test coverage for the new scenarios



---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
This merges the released changes for rc-20250925 into main.
MCM-135176338

---------

Co-authored-by: aws-toolkit-automation <>
## Problem
1. timestamp used in LSP path is cross-process, which requires a common
starting point, so should use epoch based time instead of
`peformance.now()` which starts at process starting point.

## Solution
1. replace all `performance.now` with `Date.now()`

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
…le (#8099)

## Problem

We need to remove the notifcation pop-up for data sharing toggle in
Amazon Q settings


## Solution

- removed the toggle



https://github.com/user-attachments/assets/6a56de02-26a0-4d28-8190-88d238740e22



---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.

Co-authored-by: Tai Lai <[email protected]>
## Problem
Typo in log statement for Sagemaker Update IAM Credential logic
currently prints expiration time

## Solution
- Fix typo to show availability of field in credentials
- `npm run compile && npm run test` succeeded

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
## Problem

We removed `/agents` in this PR but the security.scan command was not
removed:
- #8026

<img width="1206" height="56" alt="Screenshot 2025-09-29 at 10 45 22 AM"
src="https://github.com/user-attachments/assets/70db455a-8efe-43f3-94a9-629d094c6d29"
/>



## Solution
Remove left over code


## Testing

Tested and command was removed

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
This merges the released changes for rc-20250929 into main.
MCM-135435238

---------

Co-authored-by: aws-toolkit-automation <>
## Problem


## Solution


---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
## Problem

The Toolkit login webview throws an error when calling `setUiReady()`
because `loadMetadata` is undefined:

```
[error] webviewId="aws.toolkit.AmazonCommonAuth": Error: Webview error
-> Error: Webview backend command failed: "setUiReady()"
-> TypeError: Cannot read properties of undefined (reading 'start')
```

This occurs because `supportsLoadTelemetry` defaults to false in the
base `VueWebview` class, preventing the initialization of `loadMetadata`
during webview setup. Without `loadMetadata`, the webview cannot track
load timing or emit load telemetry.

## Solution

Added one line to enable load telemetry in `ToolkitLoginWebview`.

This flag was originally introduced in
[e7b7307](e7b7307)
to track Amazon Q webview load times and failures. We're now extending
this functionality to the Toolkit login webview for consistent telemetry
across both implementations.




### Before fix:
<img width="2108" height="1109" alt="before-toolkit-auth-webview-error"
src="https://github.com/user-attachments/assets/e53fb12b-6966-45ca-bee5-645e48a09cd4"
/>




Toolkit login webview error showing loadMetadata undefined. This occurs
because `supportsLoadTelemetry` defaults to false in the base
`VueWebview` class, preventing the initialization of `loadMetadata`
during webview setup. Without `loadMetadata`, the webview cannot track
load timing or emit load telemetry. The error happens
[here](https://github.com/aws/aws-toolkit-vscode/blob/da8fc990bc50689e043ff1d7cbde3615d2d7571e/packages/core/src/webviews/main.ts#L401)
when trying to calculate duration:

```typescript
const duration = globals.clock.Date.now() - this.loadMetadata!.start
```

### After fix:

Toolkit login webview successfully loading with duration metrics.

<img width="2107" height="1115"
alt="after-toolkit-auth-webview-with-load-duration"
src="https://github.com/user-attachments/assets/0f9d5bf4-dc5b-49de-a76e-776670ef683d"
/>

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
…nced payload management (#8068)

## Problem
Few UI feedback: 
- Payload is not intuitive
- Open Handler should be a button
Inconsistent layer behavior

## UI before
<img width="921" height="653" alt="image"
src="https://github.com/user-attachments/assets/0d7c2f27-78f6-453d-91fb-02ac00f2b043"
/>


## Solution
This PR refactors the Lambda Remote Invoke UI to follow VSCode's native
design patterns, optimizes the codebase by removing unused components,
and enhances the payload management experience with integrated quickpick
functionality for remote test events.

<img width="857" height="899" alt="image"
src="https://github.com/user-attachments/assets/1e446174-8cea-43a6-8ef1-44c1c8008c23"
/>

Update global layer version to 2

### 🎨 UI/UX Improvements

- __Redesigned Remote Debugging section__ to follow VSCode Settings UI
pattern

  - Title with inline "Remove Debug Setup" button and timer info
- Checkbox aligned with description on same line for better visual
hierarchy

- __Redesigned Local Root Path section__ with VSCode Settings style

  - Added "Open Handler" button with disabled state and helpful tooltips
- Shortened button labels to "Browse" and "Download" for cleaner
interface
  - Enhanced descriptions with bold text to guide user actions

- __Completely redesigned Payload section__

  - Removed radio buttons for cleaner, unified interface
- Added button group: "Load sample event", "Load local file", "Load
remote event", "Save as remote event"
  - Improved textarea with monospace font and better sizing

### 🚀 New Features

- __VSCode quickpick integration for remote test events__

- `selectRemoteTestEvent()`: Shows native quickpick for loading saved
events
- `saveRemoteTestEvent()`: Quickpick with options to create new or
overwrite existing events
  - Input validation for event names
  - Confirmation dialogs for overwriting existing events

- __Enhanced error handling__

- Gracefully handles "lambda-testevent-schemas registry not found" error
  - Returns empty array instead of throwing when no test events exist
  - Helpful user messages when no events are found

- __Force flag support__ for overwriting existing test events

  - Added `force` parameter to `SamCliRemoteTestEventsParameters`
  - Automatically uses `--force` when user confirms overwrite

###


---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
## Problem
- Remote Debugging doesn't auto detect sam build dir as outFile before
- Deployed lambda node in appbuilder is very hidden.

## Solution
### 1. App Builder Resource Node Enhancements (`resourceNode.ts`)
- **Enhanced icon logic**: Deployed Lambda functions now show a
different icon (`aws-lambda-deployed-function`) to indicate deployment
status
- ** Support Remote Actions**: Deployed Lambda functions now directly
support "remote invoke" and "fetch log" functionality.

### 2. Remote Invoke TypeScript Support (`invokeLambda.ts`)
- **Added `outFile` property**: Stores the TypeScript output directory
for debugging
- **Auto-detection of TypeScript build directories**: Automatically
populates `outFile` for TypeScript/TSX files when SAM build directory
exists
  - Looks for `.aws-sam/build/{LogicalID}/` directory structure
  - Enables proper source mapping during debugging
- **Added `getOutFile()` method**: Public accessor for the output file
path
- **Improved file watching logic**: Disabled automatic file watching
when coming from App Builder to prevent unnecessary watchers

## Impact
- **Improved Developer Experience**: TypeScript developers will benefit
from automatic detection of build output directories, making remote
debugging setup easier
- **Better App Builder Integration**: The new
`generateLambdaNodeFromResource` function enables seamless conversion
between App Builder resources and Lambda nodes
- **Enhanced Visual Feedback**: Users can now distinguish between
deployed and non-deployed Lambda functions in the explorer

## Screenshots/Examples
<img width="938" height="756" alt="image"
src="https://github.com/user-attachments/assets/15963000-a270-40a1-b618-cfc1c8698485"
/>

When outFiles are not set in CDK/SAM projects with TS debug
For CDK
```
2025-09-24 17:36:58.567 [info] Starting debugger for arn:aws:lambda:us-west-2:account:function:TriageFn
2025-09-24 17:36:58.685 [info] Creating secure tunnel...
2025-09-24 17:36:58.886 [info] Configuring Lambda function for debugging...
2025-09-24 17:36:58.940 [info] CDK outFile auto-detected from template.json: /Users/user/proj/test/cdk-test/cdk.out/asset.728566f9cc2388f3c89a024fd2e887b4d82715454a0fc478f57d7d034364fdd5
2025-09-24 17:36:58.940 [info] outFile auto-detected: /Users/user/proj/test/cdk-test/cdk.out/asset.728566f9cc2388f3c89a024fd2e887b4d82715454a0fc478f57d7d034364fdd5
```
For SAM
```
2025-09-24 17:40:03.597 [info] Creating secure tunnel...
2025-09-24 17:40:03.776 [info] Configuring Lambda function for debugging...
2025-09-24 17:40:03.777 [info] SAM outFile auto-detected: /Users/user/proj/test/test-remote-debug/.aws-sam/build/TestFunction
2025-09-24 17:40:03.777 [info] outFile auto-detected: /Users/user/proj/test/test-remote-debug/.aws-sam/build/TestFunction
```



---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
This merges the released changes for rc-20251002 into main.
MCM-135637957


- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.

---------

Co-authored-by: aws-toolkit-automation <>
ci: Add automated license scanning for third-party dependencies
## Problem

When users provide a YAML config file, we were not validating the
contents of it very strictly.


## Solution

Improve validation logic to be more strict so that invalid YAML files
are rejected client-side with a relevant error message.

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.

---------

Co-authored-by: David Hasani <[email protected]>
#8141)

## Problem
Both completion suggestions (ghost text) and edit suggestions (diff
view) could appear simultaneously due to a race condition. The
EditSuggestionState flag was set too late in the edit display flow,
allowing completion requests to check the state, see it as false, and
proceed even while an edit was being displayed.

## Solution
Fixed the race condition by setting the edit state immediately at the
start of displaySvgDecoration() before any async operations:

* Set EditSuggestionState to true at the beginning of the edit flow
* Add state cleanup when edit cannot be shown (completion already active
or invalid patch)
* Avoid calling clearDecorations() in displayEditSuggestion() to prevent
premature state reset
* Check EditSuggestionState before making completion requests in
recommendationService.ts.

This ensures only one suggestion type is displayed at a time with proper
mutual exclusion.

---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.
…tion (#8124)

## Problem

## Solution


---

- Treat all work as PUBLIC. Private `feature/x` branches will not be
squash-merged at release time.
- Your code changes must meet the guidelines in
[CONTRIBUTING.md](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md#guidelines).
- License: I confirm that my contribution is made under the terms of the
Apache 2.0 license.

---------

Co-authored-by: Boyu <[email protected]>
@rli rli closed this pull request by merging all changes into feature/stepfunctions-execution in 9a7cd5b Oct 6, 2025
@rli rli deleted the autoMerge/feature/stepfunctions-execution branch October 6, 2025 23:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.