fix(deploy): resolve online-eval step on re-deploys with no new configs#1615
Merged
Merged
Conversation
The TUI deploy screen renders an "Enable online evaluation" step whenever projectSpec.onlineEvalConfigs is non-empty, but the step was only transitioned to a terminal status inside the `if (newOnlineEvalFullSpecs > 0 ...)` branch. On a re-deploy where every configured online eval was already deployed in a prior run, that branch is skipped and the step stays in 'pending', so areStepsComplete() never returns true and the deploy phase never reaches 'complete' — the TUI hangs after the AWS deploy itself succeeds. Mirror the dataset-sync block above by marking the step success when there are configs but nothing new to enable.
Contributor
Package TarballHow to installgh release download pr-1615-tarball --repo aws/agentcore-cli --pattern "*.tgz" --dir /tmp/pr-tarball
npm install -g /tmp/pr-tarball/aws-agentcore-0.20.2.tgz |
Contributor
|
Claude Security Review: no high-confidence findings. (run) |
agentcore-cli-automation
approved these changes
Jun 23, 2026
agentcore-cli-automation
left a comment
There was a problem hiding this comment.
Looks good to merge.
Verified the fix:
- The hang is correctly explained —
useDeployFlow.ts:1051renders theonlineEvalStepwheneverprojectSpec.onlineEvalConfigsis non-empty, but the original guard at line 621 (newOnlineEvalFullSpecs.length > 0 && Object.keys(deployedOnlineEvalConfigs).length > 0) skips all status transitions on a re-deploy with no new configs, leaving the steppendingandareStepsComplete()returning false forever. - The
else if (onlineEvalFullSpecs.length > 0)branch correctly resolves the rendered-but-no-op case to a terminal status sophasecan reach'complete'. - Mirroring the dataset-sync block's "no errors" success status is consistent with existing patterns in the file.
Note (non-blocking): the dataset-sync block immediately above (line 560) has the same shape (if (datasetSpecs.length > 0 && Object.keys(deployedDatasetsRecord).length > 0)) and is theoretically susceptible to the same hang on a re-deploy where no datasets need syncing. Worth a follow-up if anyone hits it, but out of scope here.
aidandaly24
approved these changes
Jun 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #1614.
TLDR if you have online eval configs (enabled) in your project and you deploy it, then deploy again without changing the state of online eval config, the TUI would freeze on this step
Enable online evaluation.I made a fix for this step in the codebase but I believe a larger refactor is needed here