Skip to content

Conversation

@tsmithsz
Copy link
Contributor

@tsmithsz tsmithsz commented Aug 5, 2025

Problem

Related PR:

On Windows, the LSP crashed when loading registry-js because the native module registry.node in servers.zip was the wrong binary/ABI (seen as is not a valid Win32 application). Our webpack step doesn’t bundle native .node files, and the packaging flow could leave an incorrect or missing registry.node in the final Windows servers.zip.

Solution

Vendored the correct registry-js v1.16.1 binary and updated package.sh to:

  • Copy that vendored registry.node into the root of the Windows bundle during zip creation.
  • Exclude any other registry.node that could be re-added later in the “bundle overlay” step, ensuring a single authoritative binary ends up in servers.zip.
  • Docs: Noted the dependency, version, and update instructions in app/aws-lsp-codewhisperer-runtimes/README.md.

Testing

  • Ran the npm run ci:generate:agent-standalone -w app/aws-lsp-codewhisperer-runtimes script and confirmed the generated registry.node file in the servers.zip hash matched the vendored binary
  • Ran this script on mac and windows, then replaced the aws-lsp-codewhisperer.js and the registry.node files in the plugin cache servers.zip, with the generated version from our script. The code worked as expected without any LSP crashes. See the related PR linked above for the results

License

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@tsmithsz tsmithsz requested a review from a team as a code owner August 5, 2025 19:43
@tsmithsz tsmithsz marked this pull request as draft August 5, 2025 19:43
@codecov-commenter
Copy link

codecov-commenter commented Aug 5, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 60.01%. Comparing base (cd30e9c) to head (d77d4ec).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2061   +/-   ##
=======================================
  Coverage   60.00%   60.01%           
=======================================
  Files         249      249           
  Lines       54227    54230    +3     
  Branches     3221     3219    -2     
=======================================
+ Hits        32541    32545    +4     
+ Misses      21625    21624    -1     
  Partials       61       61           
Flag Coverage Δ
unittests 60.01% <ø> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@tsmithsz tsmithsz force-pushed the bundle-registry branch 4 times, most recently from bcd055a to 9793bf5 Compare August 5, 2025 23:19
@tsmithsz tsmithsz marked this pull request as ready for review August 5, 2025 23:21
@tsmithsz tsmithsz force-pushed the bundle-registry branch 3 times, most recently from 953300d to 289faff Compare August 6, 2025 22:24
@tsmithsz tsmithsz merged commit b0c6572 into aws:main Aug 7, 2025
6 checks passed
ctlai95 added a commit that referenced this pull request Aug 7, 2025
* feat: add support for SMUS Q CodeEditor client to send MD IDE origin (#2032)

* feat: add support for SMUS Q CodeEditor client to send MD IDE origin

* refactor: move smus service name to constants file and typecase argument getClientName util

* fix: should keep reporting UTDE telemetry if there are still pending Edits suggestions (#2051)

* chore: merge agentic version 1.25.0 (#2053)

* Bump agentic version: 1.25.0

* chore: fix formatting in version.json

---------

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

* fix: outdated history when trimming happens, add missing metric for compaction (#2047)

* fix(amazonq): add distinctive identifier for cloud trail (#2059)

Co-authored-by: invictus <[email protected]>

* refactor: cleanup codewhispererServer.ts (#2028)

* refactor: split edit from completion code path (#2058)

* feat(amazonq): add two more tips for the did you know section (#2063)

* fix(amazonq): make display findings tool run more often (#2067)

Co-authored-by: Blake Lazarine <[email protected]>

* fix(amazonq): fix to add disable/enable feature back to mcp servers (#2052)

* fix(amazonq): fix to add disable/enable feature back to mcp servers

* fix(amazonq): fix to add unit tests

* fix: fix to add unit test coverage for mcpUtils

* feat(amazonq): enable sonnet 4 for fra region (#2069)

* chore(release): release packages from branch main (#2050)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix(amazonq): emit failed status for amazonq_invokeLLM (#2071)

* chore: generate completion log string (#2072)

* fix(amazonq): fix fallout of #2051 (#2057)

* fix(amazonq): fix fallout of #2051

avoid buggy global states

* fix(amazonq): fix tests

fix should report UTD test case

* chore: merge agentic version 1.26.0 (#2076)

* Bump agentic version: 1.26.0

* chore: format version json

---------

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

* fix(amazonq): bundle corect registry.node for windows (#2061)

* chore: bump runtimes to 0.2.123 (#2082)

* fix: remove edit cache logic (#2079)

---------

Co-authored-by: Jayakrishna P <[email protected]>
Co-authored-by: atontb <[email protected]>
Co-authored-by: Christopher Christou <[email protected]>
Co-authored-by: Jason Guo <[email protected]>
Co-authored-by: abhraina-aws <[email protected]>
Co-authored-by: invictus <[email protected]>
Co-authored-by: Will Lo <[email protected]>
Co-authored-by: BlakeLazarine <[email protected]>
Co-authored-by: Blake Lazarine <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Na Yue <[email protected]>
Co-authored-by: andrewyuq <[email protected]>
Co-authored-by: Sherry Lu <[email protected]>
Co-authored-by: tsmithsz <[email protected]>
ctlai95 added a commit that referenced this pull request Aug 8, 2025
* feat: add support for SMUS Q CodeEditor client to send MD IDE origin (#2032)

* feat: add support for SMUS Q CodeEditor client to send MD IDE origin

* refactor: move smus service name to constants file and typecase argument getClientName util

* fix: should keep reporting UTDE telemetry if there are still pending Edits suggestions (#2051)

* chore: merge agentic version 1.25.0 (#2053)

* Bump agentic version: 1.25.0

* chore: fix formatting in version.json

---------

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

* fix: outdated history when trimming happens, add missing metric for compaction (#2047)

* fix(amazonq): add distinctive identifier for cloud trail (#2059)

Co-authored-by: invictus <[email protected]>

* refactor: cleanup codewhispererServer.ts (#2028)

* refactor: split edit from completion code path (#2058)

* feat(amazonq): add two more tips for the did you know section (#2063)

* fix(amazonq): make display findings tool run more often (#2067)

Co-authored-by: Blake Lazarine <[email protected]>

* fix(amazonq): fix to add disable/enable feature back to mcp servers (#2052)

* fix(amazonq): fix to add disable/enable feature back to mcp servers

* fix(amazonq): fix to add unit tests

* fix: fix to add unit test coverage for mcpUtils

* feat(amazonq): enable sonnet 4 for fra region (#2069)

* chore(release): release packages from branch main (#2050)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix(amazonq): emit failed status for amazonq_invokeLLM (#2071)

* chore: generate completion log string (#2072)

* fix(amazonq): fix fallout of #2051 (#2057)

* fix(amazonq): fix fallout of #2051

avoid buggy global states

* fix(amazonq): fix tests

fix should report UTD test case

* chore: merge agentic version 1.26.0 (#2076)

* Bump agentic version: 1.26.0

* chore: format version json

---------

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

* fix(amazonq): bundle corect registry.node for windows (#2061)

* chore: bump runtimes to 0.2.123 (#2082)

* fix: remove edit cache logic (#2079)

* fix(amazonq): add fallback classpath generation (#2077)

* Revert "merge main into feature/read-ui-revamp (#2081)"

This reverts commit 0fa08ef.

---------

Co-authored-by: Jayakrishna P <[email protected]>
Co-authored-by: atontb <[email protected]>
Co-authored-by: Christopher Christou <[email protected]>
Co-authored-by: Jason Guo <[email protected]>
Co-authored-by: abhraina-aws <[email protected]>
Co-authored-by: invictus <[email protected]>
Co-authored-by: Will Lo <[email protected]>
Co-authored-by: BlakeLazarine <[email protected]>
Co-authored-by: Blake Lazarine <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Na Yue <[email protected]>
Co-authored-by: andrewyuq <[email protected]>
Co-authored-by: Sherry Lu <[email protected]>
Co-authored-by: tsmithsz <[email protected]>
Co-authored-by: liumofei-amazon <[email protected]>
chungjac added a commit that referenced this pull request Aug 12, 2025
* chore: merge agentic version 1.26.0 (#2076)

* Bump agentic version: 1.26.0

* chore: format version json

---------

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

* fix(amazonq): bundle corect registry.node for windows (#2061)

* chore: bump runtimes to 0.2.123 (#2082)

* fix: remove edit cache logic (#2079)

* fix(amazonq): add fallback classpath generation (#2077)

* fix(amazonq): skips continuous monitoring when WCS sees workspace as idle (#2066)

* fix(amazonq): skips continuous monitoring when WCS sees workspace as idle

* fix(amazonq): skips creating remote workspace at the start

---------

Co-authored-by: Jiatong Li <[email protected]>

* fix: sessionManager misused because there are 2 types of manager now (#2090)

* chore: mapping adt plugin to abap to let inline suggestion work (#2085)

* chore: support inline suggestion in adt plugin for eclipse

* fix: add import URI

* chore: add detailed error description for uri is empty for language id

* feat(amazonq): read tool ui revamp

* feat(amazonq): read tool message revamp (#2049)

* feat(amazonq): read tool message revamp

* fix tests

* feat: file search ui (#2078)

* feat: file search ui

* fix tests

* fix integration tests

* remove unnecessary type check

* fix: use quotes instead of backticks

* fix: creating a new sesion for Edits trigger with next token (#2094)

* chore: bump @aws/mynah-ui to 4.36.4 (#2096)

* fix(amazonq): leverage lcs to find the chars added and removed (#2092)

* fix: update client name to support Sagemaker AI origin for agentic chat (#2093)

Co-authored-by: chungjac <[email protected]>

* chore(release): release packages from branch main (#2073)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* chore: format version.json after incrementing (#2068)

* chore: merge agentic version 1.27.0 (#2107)

* Bump agentic version: 1.27.0

* Revert "feat(amazonq): read tool ui revamp"

This reverts commit c65428b.

* fix: the style in version json (#2106)

---------

Co-authored-by: aws-toolkit-automation <>
Co-authored-by: Tai Lai <[email protected]>
Co-authored-by: Christopher Christou <[email protected]>

---------

Co-authored-by: Sherry Lu <[email protected]>
Co-authored-by: tsmithsz <[email protected]>
Co-authored-by: Will Lo <[email protected]>
Co-authored-by: liumofei-amazon <[email protected]>
Co-authored-by: Jiatong Li <[email protected]>
Co-authored-by: Jiatong Li <[email protected]>
Co-authored-by: Tai Lai <[email protected]>
Co-authored-by: atontb <[email protected]>
Co-authored-by: andrewyuq <[email protected]>
Co-authored-by: Jayakrishna P <[email protected]>
Co-authored-by: chungjac <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Christopher Christou <[email protected]>
Co-authored-by: Tai Lai <[email protected]>
laileni-aws added a commit that referenced this pull request Aug 26, 2025
* refactor: split edit from completion code path (#2058)

* feat(amazonq): add two more tips for the did you know section (#2063)

* fix(amazonq): make display findings tool run more often (#2067)

Co-authored-by: Blake Lazarine <[email protected]>

* fix(amazonq): fix to add disable/enable feature back to mcp servers (#2052)

* fix(amazonq): fix to add disable/enable feature back to mcp servers

* fix(amazonq): fix to add unit tests

* fix: fix to add unit test coverage for mcpUtils

* feat(amazonq): enable sonnet 4 for fra region (#2069)

* chore(release): release packages from branch main (#2050)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix(amazonq): emit failed status for amazonq_invokeLLM (#2071)

* chore: generate completion log string (#2072)

* fix(amazonq): fix fallout of #2051 (#2057)

* fix(amazonq): fix fallout of #2051

avoid buggy global states

* fix(amazonq): fix tests

fix should report UTD test case

* chore: merge agentic version 1.26.0 (#2076)

* Bump agentic version: 1.26.0

* chore: format version json

---------

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

* fix(amazonq): bundle corect registry.node for windows (#2061)

* chore: bump runtimes to 0.2.123 (#2082)

* fix: remove edit cache logic (#2079)

* fix(amazonq): add fallback classpath generation (#2077)

* fix(amazonq): skips continuous monitoring when WCS sees workspace as idle (#2066)

* fix(amazonq): skips continuous monitoring when WCS sees workspace as idle

* fix(amazonq): skips creating remote workspace at the start

---------

Co-authored-by: Jiatong Li <[email protected]>

* fix: sessionManager misused because there are 2 types of manager now (#2090)

* chore: mapping adt plugin to abap to let inline suggestion work (#2085)

* chore: support inline suggestion in adt plugin for eclipse

* fix: add import URI

* chore: add detailed error description for uri is empty for language id

* feat(amazonq): read tool ui revamp

* feat(amazonq): read tool message revamp (#2049)

* feat(amazonq): read tool message revamp

* fix tests

* feat: file search ui (#2078)

* feat: file search ui

* fix tests

* fix integration tests

* remove unnecessary type check

* fix: use quotes instead of backticks

* fix: creating a new sesion for Edits trigger with next token (#2094)

* chore: bump @aws/mynah-ui to 4.36.4 (#2096)

* fix(amazonq): leverage lcs to find the chars added and removed (#2092)

* fix: update client name to support Sagemaker AI origin for agentic chat (#2093)

Co-authored-by: chungjac <[email protected]>

* chore(release): release packages from branch main (#2073)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* chore: format version.json after incrementing (#2068)

* chore: merge agentic version 1.27.0 (#2107)

* Bump agentic version: 1.27.0

* Revert "feat(amazonq): read tool ui revamp"

This reverts commit c65428b.

* fix: the style in version json (#2106)

---------

Co-authored-by: aws-toolkit-automation <>
Co-authored-by: Tai Lai <[email protected]>
Co-authored-by: Christopher Christou <[email protected]>

* fix(amazonq): persist mcp configs in agent json on start-up (#2112)

* feat(amazonq): added mcp admin level configuration with GetProfile (#2000)

* feat(amazonq): added mcp admin level configuration with GetProfile

* feat(amazonq): added UX message for mcp admin control

* test: add unit tests for ProfileStatusMonitor static functionality

* test: add comprehensive unit tests for MCP admin control features

* fix: fix to wait for serviceManager is initialzied to initialize mcp managers

* fix: fix for unit test failures

* fix: fix for UI changes

* fix(amazonq): fix to to rename mcp enabled function and max time limit of 10 seconds

* fix: fix to add async initialization for mcp manager

* fix: fix to move action buttons to mcpEventHandler for listMcpServers

* fix: added try and catch block for mcp initialization

* fix: fix for merge conflicts

* fix: fix for test failure

* fix: remove the unnecessary feature flag

* fix: fix for mynah test failure

* fix: fix to retry function to common util

* fix: fix to add retryUtils

* fix: Use file context override in the inline completion params for Jupyter Notebook (#2114)

* feat(amazonq): read tool ui revamp (#2113) (#2121)

* feat(amazonq): read tool ui revamp

* feat(amazonq): read tool message revamp (#2049)

* feat(amazonq): read tool message revamp

* fix tests

* feat: file search ui (#2078)

* feat: file search ui

* fix tests

* fix integration tests

* remove unnecessary type check

* fix: use quotes instead of backticks

* fix header update issue

* fix integration test

* refactor: improve generateCompletion logging format (#2125)

* fix(amazonq): handle case where multiple rules are provided with the same name (#2118)

* fix(amazonq): handle case where multiple rules are provided with the same name

* fix(amazonq): add unit test for duplicate custom guidelines

* fix(amazonq): add unit test for processToolUses

* fix(amazonq): set context type for AmazonQ.md to rule

* fix(amazonq): add README.md back as rule context type

---------

Co-authored-by: Blake Lazarine <[email protected]>

* perf: remove edit completion retry mechanism on document change (#2124)

* ci: remove need for custom PAT for release branch workflow (#2126)

The token from GitHub Actions is sufficient

* fix: proper path handling for additional context (#2129)

* fix: proper pathing for additonal context

* fix: update existing tests to also mock path.join()

* fix(amazonq): fix regression of mcp config in agent config (#2101)

* fix(amazonq): update process-permission-updates to be the same as previous behavior

* fix(chat-client): update package.json chat-client to prod

* fix(amazonq): retain mcp permissions after disable/enable server

* fix: dont call initOneServer on Built-in

* fix: deny permission does not persist after restart IDE

---------

Co-authored-by: Boyu <[email protected]>

* feat: remove project type validation from LSP layer (#2103)

* feat: remove project type validation from LSP layer

* refactor: remove unused validation functions from LSP layer

* fix: fix for button text and remove profilearn caching (#2137)

* chore: bump runtimes to 0.2.126 (#2138)

* fix: fix to add disk caching for mcp admin state (#2139)

* fix: fix to add disk caching for mcp admin state

* fix: fix to add logging

* fix: fix to initialize mcpManager in any case and discover servers based on mcpState

* fix: fix for unit test failure

* refactor: cleanup old nep code path which is no longered being used in codewhispererServer.ts (#2141)

* fix(amazonq): add server side control for WCS features (#2128)

Co-authored-by: Jiatong Li <[email protected]>

* chore: update STE userContext version metadata (#2142)

* fix: fix to turn on and off MCP servers incase of error based on last state (#2143)

Co-authored-by: Laxman Reddy <[email protected]>

* fix: empty userTriggerDecision not being sent for NEP code path (#2140)

* refactor: clean up old NEP code path which is no longer used

* fix: empty userTriggerDecision not being sent for NEP code path

* test: disable telemetry test temporarily

* fix: patch

* revert: a

* revert: a

* chore(release): release packages from branch main (#2117)

* fix(amazonq): don't let flare send discard for the still valid suggestion in JB (#2145)

* fix(amazonq): don't let flare send discard for the still valid suggestion in JB

if a valid sessionId is returned back to JB, JB will eventually
send a decision for it, but when user types a character to reject
the current suggestion, on JB side it will 1) send reject for the current
one 2) send a new trigger for the latest context. 2) will happen before
1) which will discard the current active session on flare's end.
We don't want flare to do that for JB.

* fix(amazonq): createSession doesn't need to close the previous session

it should be handled together with telemetry reporting

* fix(amazonq): fix test

* fix(amazonq): test fix attempt

* fix(amazonq): test fix attempt

* chore(release): release packages from branch main (#2149)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* chore: merge agentic version 1.29.0 (#2151)

* chore: bump agentic version: 1.29.0

* chore: empty commit to start Github Action (#2150)

---------

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

* feat: add basic OAuth client for remote MCP (#2136)

* feat: add basic mcp oauth client

* fix: relax condition for triggering oauth flow; add resilience checks for as availability

* feat: add unit test for auth client

* fix: multiple fixes for remote mcp error and timeout

* fix: adding streakTracker to track streakLength across Completions and Edits (#2147)

* feat: disable pkce flow during plugin load (#2153)

* chore: bump runtimes to 0.2.127 (#2156)

* fix: multiple fixes on auth flow edge cases (#2155)

* feat: update MCP manager and utilities (#2158)

Co-authored-by: Boyu <[email protected]>

* fix(amazonq): disable typewriter animation (#2160)

* ci: generation of builds action can be triggered manually (#2157)

Co-authored-by: Laxman Reddy <[email protected]>

* fix(amazonq): fix for mcp servers operations to edit server config only (#2165)

* fix(amazonq): fix for mcp servers operations to edit server specific config

* fix(amazonq): additional mcp server config fixes

* fix: resolve test failures

* fix: update MCP manager configuration

* fix: allow ci to run on release branches (#2159)

Currently release/agentic/* branches used in our release process have rules that require CI to be run. However the corresponding workflows do not actually trigger for release branches. This change ensures no manual overrides are required in the release process and CI mapped with the branch actually runs.

* Updating the model of listAvailableModels (#2064)

* fix(amazonq): fix flickering issue for model selection dropdown and agenticCoding toggle (#2065)

* fix(amazonq): fix flickering issue for modelId and agenticCoding

* fix(amazonq): Fixing flaky tests

* feat(amazonq): Fetching models from backend and adding cache implementation. (#2075)

* fix: removing and refactoring legacy code before implementing model selection

* feat(amazonq): adding cache implementation and fetching models from listAvailableModels api

* feat(amazonq): adding selected model in error case

* feat(amazonq): adding test cases

* fix: addressing comments

* fix: fixing test cases and adding modelName to models

* fix: minor edits

* fix: minor edits

* fix: minor modifications in logs

* fix: adding default model if api throws any errors

* fix: refactoring code

* fix:  Improve model selection fallback logic when user's preferred model is unavailable (#2089)

* fix: if user preferred model does not exist, fall back to default model

* fix: minor test changes

* fix: to support backward compatibility for vs and eclipse, adding back modelSelection in chat-client (#2095)

* fix: check available models from backend before selecting default model from fallback models (#2102)

* feat(amazonq): use model display names (#2123)

* fix: cached model list should be invalidated on sign out (#2131)

* fix: cached model list should be invalidated on sign out

* fix test

* avoid throwing error

* fix: adding default modelId and setting cache ttl to 30 minutes (#2161)

* fix: adding defaultmodelId and setting cache ttl to 30 minutes

* fix: fixing tests

* fix: updating comments

* fix: lint issue while resolving merge conflicts

---------

Co-authored-by: Will Lo <[email protected]>
Co-authored-by: abhraina-aws <[email protected]>
Co-authored-by: BlakeLazarine <[email protected]>
Co-authored-by: Blake Lazarine <[email protected]>
Co-authored-by: invictus <[email protected]>
Co-authored-by: Tai Lai <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Na Yue <[email protected]>
Co-authored-by: andrewyuq <[email protected]>
Co-authored-by: Sherry Lu <[email protected]>
Co-authored-by: tsmithsz <[email protected]>
Co-authored-by: liumofei-amazon <[email protected]>
Co-authored-by: Jiatong Li <[email protected]>
Co-authored-by: Jiatong Li <[email protected]>
Co-authored-by: atontb <[email protected]>
Co-authored-by: Jayakrishna P <[email protected]>
Co-authored-by: chungjac <[email protected]>
Co-authored-by: Christopher Christou <[email protected]>
Co-authored-by: Tai Lai <[email protected]>
Co-authored-by: Dung Dong <[email protected]>
Co-authored-by: Lei Gao <[email protected]>
Co-authored-by: Richard Li <[email protected]>
Co-authored-by: Boyu <[email protected]>
Co-authored-by: Rajanna-Karthik <[email protected]>
Co-authored-by: manodnyab <[email protected]>
Co-authored-by: Shruti Sinha <[email protected]>
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.

4 participants