Repository navigation
feat(ci): run v1 canary against the published npm package - #2699
Merged
Merged
Conversation
Contributor
Package TarballHow to installgh release download pr-2699-tarball --repo aws/agentcore-cli --pattern "*.tgz" --dir /tmp/pr-tarball
npm install -g /tmp/pr-tarball/aws-agentcore-1.0.0.tgz |
Contributor
|
Claude Security Review: no high-confidence findings. (run) |
Contributor
There was a problem hiding this comment.
AgentCore Harness Review
Verdict: Looks good
I verified the change against the PR's base branch (refactor) and found no blocking issues.
What I checked:
canary.yml:versionis assigned earlier in the samerunblock, so the newversion=${version}output is populated correctly, and the pinned exact version removes any race with a publish happening betweenresolve_releaseande2e.- Expression safety for
workflow_dispatch:npmVersionis only declared underworkflow_call, so on manual dispatchinputs.npmVersionisnull. GitHub coerces bothnulland''to0for loose comparison, soinputs.npmVersion == ''istrue→Build CLIstill runs andAGENTCORE_CLI_PATHfalls back tonode <workspace>/dist/index.js. No accidentalagentcorepath on dispatch. - Harness compatibility:
e2eTest/helpers/run.tssplitsAGENTCORE_CLI_PATHon whitespace andspawns it, so the bareagentcorevalue resolves viaPATHon Linux. The published package'sbinisagentcore→./dist/index.js, which matches. Nothing undere2eTest/imports fromsrc/or referencesdist/, so skippingbun run builddoesn't break the suite. - No shadowing risk: the repo isn't a workspace and neither npm nor bun links a root package's own
binintonode_modules/.bin, sobun run test:e2e's PATH prefix won't shadow the globally installed CLI with a stale/missing local shim. - Tag/suite compatibility:
v1.0.0hastest:e2eand thecanarytag, so the tagged suite + published-package combination lines up. npm install --globalis consistent with the existingcanary-v0.ymlpattern, and the version flows through an env var (quoted), so no injection concern.
Non-blocking notes for your consideration:
npmVersionisn't exposed onworkflow_dispatch(.github/workflows/e2e-test.yml, dispatch input block ~lines 22-36). That makes the new published-package path unverifiable by manual dispatch — the only way to exercise it is to wait for the scheduled canary. Also, therefdescription was updated forworkflow_callbut theworkflow_dispatchcopy still reads "to build and test".AGENTCORE_CLI_PATH: agentcorewon't work on Windows. The global npm shim isagentcore.cmd, andspawn()ine2eTest/helpers/run.tsruns without a shell, so WindowsCreateProcesswon't resolve it (ENOENT). This is currently masked becausecanary.ymlpasseslinuxOnly: true, but it's a latent trap for any future caller that setsnpmVersionwith the full OS matrix. Options: resolve and pass the absolute path to the installed bin (e.g.npm prefix -g), document/guardnpmVersionas Linux-only, or teachrun.tsto useshell: trueonwin32.- Minor hardening:
agentcore --versionis printed but not asserted againstNPM_VERSION; comparing them would make a wrong-version install fail loudly instead of silently testing the wrong artifact.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## refactor #2699 +/- ##
=========================================
Coverage 96.62% 96.62%
=========================================
Files 706 706
Lines 58447 58447
=========================================
Hits 56472 56472
Misses 1975 1975 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
jariy17
previously approved these changes
Oct 23, 2026
jariy17
approved these changes
Oct 23, 2026
Contributor
|
Claude Security Review: no high-confidence findings. (run) |
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.
Description
Change v1 canary to install and invoke the CLI from the npm vended
@aws/agentcore@latest, rather than resolving from the local code. This ensures the canary will catch failure points that may only exist in the distributed artifact, and not the source code. This gives us closer visibility and experience to our customers installing and invoking the AgentCore CLI.The matching Git tag still supplies the E2E test suite.
Type of Change
Testing
How have you tested the change?
bun testbun run test:e2e, or explained why they are not applicablebun run typecheckbun run lint:checkbun run format:checkbun run buildsrc/assets/, I updated affected snapshots withbun test <test-file> --update-snapshotsand committed themChecklist
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the
terms of your choice.