Skip to content

ci(mend): fix mend sca scan of packages - #870

Merged
ancheetah merged 1 commit into
mainfrom
fix-mend-sca
Oct 23, 2026
Merged

ancheetah merged 1 commit into
mainfrom
fix-mend-sca

Conversation

@ancheetah

@ancheetah ancheetah commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

JIRA Ticket

Description

Mend SCA scan was not scanning anything because the lockfile was excluded from the scan directory (packages/). This stages just the manifests for the packages in a temporary directory for Mend to scan.

Tested workflow dispatch with the new options here: https://github.com/ForgeRock/ping-javascript-sdk/actions/runs/39854405016

Interpreting the Mend SCA scan results:
https://pingidentity.atlassian.net/wiki/x/KQDT1g

@changeset-bot

changeset-bot Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 5584e3d

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@coderabbitai

coderabbitai Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 5b7d8d4d-1dc8-4f30-bafb-fc6fbcb5b616
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@nx-cloud

nx-cloud Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

View your CI Pipeline Execution ↗ for commit 5584e3d

Command Status Duration Result
nx run-many -t build --no-agents ✅ Succeeded <1s View ↗
nx affected -t build lint test typecheck e2e-ci ✅ Succeeded 53s View ↗

💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗


☁️ Nx Cloud last updated this comment at 2026-10-23 16:09:33 UTC

@codecov-commenter

codecov-commenter commented Oct 22, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.29%. Comparing base (eafe277) to head (5584e3d).
⚠️ Report is 178 commits behind head on main.

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #870       +/-   ##
===========================================
+ Coverage   18.07%   96.29%   +78.22%     
===========================================
  Files         155        1      -154     
  Lines       24398       81    -24317     
  Branches     1203       17     -1186     
===========================================
- Hits         4410       78     -4332     
+ Misses      19988        3    -19985     

see 155 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@pkg-pr-new

pkg-pr-new Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Open in StackBlitz

@forgerock/davinci-client

pnpm add https://pkg.pr.new/@forgerock/davinci-client@870

@forgerock/device-client

pnpm add https://pkg.pr.new/@forgerock/device-client@870

@forgerock/journey-client

pnpm add https://pkg.pr.new/@forgerock/journey-client@870

@forgerock/oidc-client

pnpm add https://pkg.pr.new/@forgerock/oidc-client@870

@forgerock/protect

pnpm add https://pkg.pr.new/@forgerock/protect@870

@forgerock/recognize

pnpm add https://pkg.pr.new/@forgerock/recognize@870

@forgerock/sdk-types

pnpm add https://pkg.pr.new/@forgerock/sdk-types@870

@forgerock/sdk-utilities

pnpm add https://pkg.pr.new/@forgerock/sdk-utilities@870

@forgerock/iframe-manager

pnpm add https://pkg.pr.new/@forgerock/iframe-manager@870

@forgerock/sdk-logger

pnpm add https://pkg.pr.new/@forgerock/sdk-logger@870

@forgerock/sdk-oidc

pnpm add https://pkg.pr.new/@forgerock/sdk-oidc@870

@forgerock/sdk-request-middleware

pnpm add https://pkg.pr.new/@forgerock/sdk-request-middleware@870

@forgerock/storage

pnpm add https://pkg.pr.new/@forgerock/storage@870

commit: 5584e3d

@ancheetah
ancheetah marked this pull request as ready for review October 22, 2026 21:09
@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Deployed 923ee2c to https://ForgeRock.github.io/ping-javascript-sdk/pr-870/923ee2c0d5b2e0b4c2fe0385b2c692d2cc77f1c6 branch gh-pages in ForgeRock/ping-javascript-sdk

@github-actions

Copy link
Copy Markdown
Contributor

Interface Mapping Out of Date

The interface_mapping.md document is out of sync with the SDK exports.

Drift report
Extracting legacy SDK exports...
  Found 79 legacy exports
Extracting new SDK exports...
  Found 429 new SDK exports
Parsing interface_mapping.md...
  Found 143 documented mappings

Interface Mapping Drift Report
══════════════════════════════

Missing Callbacks (1)
  ✗ Callback "PingOneRecognizeCallback" from ./types is not documented in Callback Type Mapping

Undocumented New Exports (161)
  ⚠ New SDK export "makeJourneyConfig" from . is not referenced in the documentation
  ⚠ New SDK export "JourneyClient" from . is not referenced in the documentation
  ⚠ New SDK export "LogLevel" from . is not referenced in the documentation
  ⚠ New SDK export "CustomLogger" from . is not referenced in the documentation
  ⚠ New SDK export "RequestMiddleware" from . is not referenced in the documentation
  ⚠ New SDK export "ActionTypes" from . is not referenced in the documentation
  ⚠ New SDK export "GenericError" from . is not referenced in the documentation
  ⚠ New SDK export "WellknownResponse" from . is not referenced in the documentation
  ⚠ New SDK export "FailedPolicyRequirement" from . is not referenced in the documentation
  ⚠ New SDK export "PolicyParams" from . is not referenced in the documentation
  ⚠ New SDK export "isValidWellknownUrl" from . is not referenced in the documentation
  ⚠ New SDK export "createWellknownError" from . is not referenced in the documentation
  ⚠ New SDK export "DeviceProfileData" from . is not referenced in the documentation
  ⚠ New SDK export "Geolocation" from . is not referenced in the documentation
  ⚠ New SDK export "JourneyResult" from . is not referenced in the documentation
  ⚠ New SDK export "ResolvedServerConfig" from . is not referenced in the documentation
  ⚠ New SDK export "JourneyServerConfig" from . is not referenced in the documentation
  ⚠ New SDK export "JourneyClientConfig" from . is not referenced in the documentation
  ⚠ New SDK export "LegacyServerConfig" from . is not referenced in the documentation
  ⚠ New SDK export "InternalJourneyClientConfig" from . is not referenced in the documentation
  ⚠ New SDK export "StartParam" from . is not referenced in the documentation
  ⚠ New SDK export "ResumeOptions" from . is not referenced in the documentation
  ⚠ New SDK export "NextOptions" from . is not referenced in the documentation
  ⚠ New SDK export "CallbackFactory" from . is not referenced in the documentation
  ⚠ New SDK export "PingOneRecognizeOperationType" from . is not referenced in the documentation
  ⚠ New SDK export "PingOneRecognizeCallback" from . is not referenced in the documentation
  ⚠ New SDK export "CollectParameters" from ./device is not referenced in the documentation
  ⚠ New SDK export "DeviceProfileData" from ./device is not referenced in the documentation
  ⚠ New SDK export "Geolocation" from ./device is not referenced in the documentation
  ⚠ New SDK export "ProfileConfigOptions" from ./device is not referenced in the documentation
  ⚠ New SDK export "FailedPolicyRequirement" from ./policy is not referenced in the documentation
  ⚠ New SDK export "QRCodeData" from ./qr-code is not referenced in the documentation
  ⚠ New SDK export "LogLevel" from ./types is not referenced in the documentation
  ⚠ New SDK export "CustomLogger" from ./types is not referenced in the documentation
  ⚠ New SDK export "RequestMiddleware" from ./types is not referenced in the documentation
  ⚠ New SDK export "ActionTypes" from ./types is not referenced in the documentation
  ⚠ New SDK export "GenericError" from ./types is not referenced in the documentation
  ⚠ New SDK export "WellknownResponse" from ./types is not referenced in the documentation
  ⚠ New SDK export "FailedPolicyRequirement" from ./types is not referenced in the documentation
  ⚠ New SDK export "PolicyParams" from ./types is not referenced in the documentation
  ⚠ New SDK export "isValidWellknownUrl" from ./types is not referenced in the documentation
  ⚠ New SDK export "createWellknownError" from ./types is not referenced in the documentation
  ⚠ New SDK export "DeviceProfileData" from ./types is not referenced in the documentation
  ⚠ New SDK export "Geolocation" from ./types is not referenced in the documentation
  ⚠ New SDK export "JourneyResult" from ./types is not referenced in the documentation
  ⚠ New SDK export "ResolvedServerConfig" from ./types is not referenced in the documentation
  ⚠ New SDK export "JourneyClient" from ./types is not referenced in the documentation
  ⚠ New SDK export "JourneyServerConfig" from ./types is not referenced in the documentation
  ⚠ New SDK export "JourneyClientConfig" from ./types is not referenced in the documentation
  ⚠ New SDK export "LegacyServerConfig" from ./types is not referenced in the documentation
  ⚠ New SDK export "InternalJourneyClientConfig" from ./types is not referenced in the documentation
  ⚠ New SDK export "StartParam" from ./types is not referenced in the documentation
  ⚠ New SDK export "ResumeOptions" from ./types is not referenced in the documentation
  ⚠ New SDK export "NextOptions" from ./types is not referenced in the documentation
  ⚠ New SDK export "CallbackFactory" from ./types is not referenced in the documentation
  ⚠ New SDK export "PingOneRecognizeOperationType" from ./types is not referenced in the documentation
  ⚠ New SDK export "PingOneRecognizeCallback" from ./types is not referenced in the documentation
  ⚠ New SDK export "OutcomeWithName" from ./webauthn is not referenced in the documentation
  ⚠ New SDK export "AttestationType" from ./webauthn is not referenced in the documentation
  ⚠ New SDK export "UserVerificationType" from ./webauthn is not referenced in the documentation
  ⚠ New SDK export "makeOidcConfig" from . is not referenced in the documentation
  ⚠ New SDK export "PushAuthorizationResponse" from . is not referenced in the documentation
  ⚠ New SDK export "GenericError" from . is not referenced in the documentation
  ⚠ New SDK export "WellknownResponse" from . is not referenced in the documentation
  ⚠ New SDK export "ActionTypes" from . is not referenced in the documentation
  ⚠ New SDK export "RequestMiddleware" from . is not referenced in the documentation
  ⚠ New SDK export "CustomLogger" from . is not referenced in the documentation
  ⚠ New SDK export "LogLevel" from . is not referenced in the documentation
  ⚠ New SDK export "BrowserStorageConfig" from . is not referenced in the documentation
  ⚠ New SDK export "CustomStorageConfig" from . is not referenced in the documentation
  ⚠ New SDK export "StorageConfig" from . is not referenced in the documentation
  ⚠ New SDK export "CustomStorageObject" from . is not referenced in the documentation
  ⚠ New SDK export "createClientStore" from . is not referenced in the documentation
  ⚠ New SDK export "OidcClient" from . is not referenced in the documentation
  ⚠ New SDK export "ClientStore" from . is not referenced in the documentation
  ⚠ New SDK export "RootState" from . is not referenced in the documentation
  ⚠ New SDK export "AppDispatch" from . is not referenced in the documentation
  ⚠ New SDK export "RevokeSuccessResult" from . is not referenced in the documentation
  ⚠ New SDK export "RevokeErrorResult" from . is not referenced in the documentation
  ⚠ New SDK export "LogoutSuccessResult" from . is not referenced in the documentation
  ⚠ New SDK export "LogoutErrorResult" from . is not referenced in the documentation
  ⚠ New SDK export "UserInfoResponse" from . is not referenced in the documentation
  ⚠ New SDK export "OidcConfig" from . is not referenced in the documentation
  ⚠ New SDK export "BuildAuthorizationData" from . is not referenced in the documentation
  ⚠ New SDK export "OptionalAuthorizeOptions" from . is not referenced in the documentation
  ⚠ New SDK export "AuthorizeErrorResponse" from . is not referenced in the documentation
  ⚠ New SDK export "AuthorizeSuccessResponse" from . is not referenced in the documentation
  ⚠ New SDK export "AuthorizationSuccess" from . is not referenced in the documentation
  ⚠ New SDK export "AuthorizationError" from . is not referenced in the documentation
  ⚠ New SDK export "TokenExchangeResponse" from . is not referenced in the documentation
  ⚠ New SDK export "TokenExchangeErrorResponse" from . is not referenced in the documentation
  ⚠ New SDK export "TokenRequestOptions" from . is not referenced in the documentation
  ⚠ New SDK export "SessionCheckResponseType" from . is not referenced in the documentation
  ⚠ New SDK export "SessionCheckOptions" from . is not referenced in the documentation
  ⚠ New SDK export "SessionCheckSuccess" from . is not referenced in the documentation
  ⚠ New SDK export "PushAuthorizationResponse" from ./types is not referenced in the documentation
  ⚠ New SDK export "GenericError" from ./types is not referenced in the documentation
  ⚠ New SDK export "WellknownResponse" from ./types is not referenced in the documentation
  ⚠ New SDK export "ActionTypes" from ./types is not referenced in the documentation
  ⚠ New SDK export "RequestMiddleware" from ./types is not referenced in the documentation
  ⚠ New SDK export "CustomLogger" from ./types is not referenced in the documentation
  ⚠ New SDK export "LogLevel" from ./types is not referenced in the documentation
  ⚠ New SDK export "BrowserStorageConfig" from ./types is not referenced in the documentation
  ⚠ New SDK export "CustomStorageConfig" from ./types is not referenced in the documentation
  ⚠ New SDK export "StorageConfig" from ./types is not referenced in the documentation
  ⚠ New SDK export "CustomStorageObject" from ./types is not referenced in the documentation
  ⚠ New SDK export "createClientStore" from ./types is not referenced in the documentation
  ⚠ New SDK export "OidcClient" from ./types is not referenced in the documentation
  ⚠ New SDK export "ClientStore" from ./types is not referenced in the documentation
  ⚠ New SDK export "RootState" from ./types is not referenced in the documentation
  ⚠ New SDK export "AppDispatch" from ./types is not referenced in the documentation
  ⚠ New SDK export "RevokeSuccessResult" from ./types is not referenced in the documentation
  ⚠ New SDK export "RevokeErrorResult" from ./types is not referenced in the documentation
  ⚠ New SDK export "LogoutSuccessResult" from ./types is not referenced in the documentation
  ⚠ New SDK export "LogoutErrorResult" from ./types is not referenced in the documentation
  ⚠ New SDK export "UserInfoResponse" from ./types is not referenced in the documentation
  ⚠ New SDK export "OidcConfig" from ./types is not referenced in the documentation
  ⚠ New SDK export "BuildAuthorizationData" from ./types is not referenced in the documentation
  ⚠ New SDK export "OptionalAuthorizeOptions" from ./types is not referenced in the documentation
  ⚠ New SDK export "AuthorizeErrorResponse" from ./types is not referenced in the documentation
  ⚠ New SDK export "AuthorizeSuccessResponse" from ./types is not referenced in the documentation
  ⚠ New SDK export "AuthorizationSuccess" from ./types is not referenced in the documentation
  ⚠ New SDK export "AuthorizationError" from ./types is not referenced in the documentation
  ⚠ New SDK export "TokenExchangeResponse" from ./types is not referenced in the documentation
  ⚠ New SDK export "TokenExchangeErrorResponse" from ./types is not referenced in the documentation
  ⚠ New SDK export "TokenRequestOptions" from ./types is not referenced in the documentation
  ⚠ New SDK export "SessionCheckResponseType" from ./types is not referenced in the documentation
  ⚠ New SDK export "SessionCheckOptions" from ./types is not referenced in the documentation
  ⚠ New SDK export "SessionCheckSuccess" from ./types is not referenced in the documentation
  ⚠ New SDK export "DeviceClient" from . is not referenced in the documentation
  ⚠ New SDK export "OathDevice" from . is not referenced in the documentation
  ⚠ New SDK export "DeleteOathQuery" from . is not referenced in the documentation
  ⚠ New SDK export "RetrieveOathQuery" from . is not referenced in the documentation
  ⚠ New SDK export "OathResponse" from . is not referenced in the documentation
  ⚠ New SDK export "DeletedOathDevice" from . is not referenced in the documentation
  ⚠ New SDK export "WebAuthnQuery" from . is not referenced in the documentation
  ⚠ New SDK export "WebAuthnBody" from . is not referenced in the documentation
  ⚠ New SDK export "WebAuthnDevice" from . is not referenced in the documentation
  ⚠ New SDK export "UpdatedWebAuthnDevice" from . is not referenced in the documentation
  ⚠ New SDK export "WebAuthnCredential" from . is not referenced in the documentation
  ⚠ New SDK export "GetProfileDevices" from . is not referenced in the documentation
  ⚠ New SDK export "ProfileDevicesQuery" from . is not referenced in the documentation
  ⚠ New SDK export "ProfileDevice" from . is not referenced in the documentation
  ⚠ New SDK export "PushDeviceQuery" from . is not referenced in the documentation
  ⚠ New SDK export "PushDeviceBody" from . is not referenced in the documentation
  ⚠ New SDK export "DeleteDeviceQuery" from . is not referenced in the documentation
  ⚠ New SDK export "DeviceInfoResponse" from . is not referenced in the documentation
  ⚠ New SDK export "DeviceInfo" from . is not referenced in the documentation
  ⚠ New SDK export "PushDevice" from . is not referenced in the documentation
  ⚠ New SDK export "DeletedPushDevice" from . is not referenced in the documentation
  ⚠ New SDK export "GetBoundDevicesQuery" from . is not referenced in the documentation
  ⚠ New SDK export "BoundDeviceQuery" from . is not referenced in the documentation
  ⚠ New SDK export "DeviceResponse" from . is not referenced in the documentation
  ⚠ New SDK export "DeviceMetadata" from . is not referenced in the documentation
  ⚠ New SDK export "Hardware" from . is not referenced in the documentation
  ⚠ New SDK export "Browser" from . is not referenced in the documentation
  ⚠ New SDK export "Bluetooth" from . is not referenced in the documentation
  ⚠ New SDK export "Network" from . is not referenced in the documentation
  ⚠ New SDK export "Telephony" from . is not referenced in the documentation
  ⚠ New SDK export "Metadata" from . is not referenced in the documentation
  ⚠ New SDK export "DeviceProfile" from . is not referenced in the documentation

Summary: 1 error, 161 warnings

To fix, run:

pnpm mapping:generate

Then commit the updated interface_mapping.md.

@github-actions

Copy link
Copy Markdown
Contributor

📦 Bundle Size Analysis

📦 Bundle Size Analysis

🚨 Significant Changes

🔻 @forgerock/journey-client - 0.0 KB (-95.4 KB, -100.0%)
🔻 @forgerock/device-client - 0.0 KB (-10.3 KB, -100.0%)

➖ No Changes

➖ @forgerock/recognize - 5605.5 KB
➖ @forgerock/journey-client - 95.4 KB
➖ @forgerock/device-client - 10.3 KB
➖ @forgerock/davinci-client - 59.7 KB
➖ @forgerock/sdk-types - 9.1 KB
➖ @forgerock/oidc-client - 35.9 KB
➖ @forgerock/protect - 149.5 KB
➖ @forgerock/sdk-oidc - 5.8 KB
➖ @forgerock/iframe-manager - 3.2 KB
➖ @forgerock/sdk-request-middleware - 4.6 KB
➖ @forgerock/sdk-logger - 1.6 KB
➖ @forgerock/storage - 1.5 KB
➖ @forgerock/sdk-utilities - 18.8 KB


15 packages analyzed • Baseline from latest main build

Legend

🆕 New package
🔺 Size increased
🔻 Size decreased
➖ No change

ℹ️ How bundle sizes are calculated
  • Current Size: Total gzipped size of all files in the package's dist directory
  • Baseline: Comparison against the latest build from the main branch
  • Files included: All build outputs except source maps and TypeScript build cache
  • Exclusions: .map, .tsbuildinfo, and .d.ts.map files

🔄 Updated automatically on each push to this PR

@ancheetah
ancheetah requested a review from ryanbas21 October 22, 2026 21:10
@ancheetah
ancheetah marked this pull request as draft October 23, 2026 16:32
using: 'composite'
steps:
- uses: pnpm/action-setup@v4
- name: Isolate package manifests in a temporary directory

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I opted for this approach instead of using the "exclude paths" flag for two reasons: (1) this method automatically excludes any folders external to 'packages/' that may be added in the future, (2) the "exclude paths" flag still scans off the root lockfile and includes deps from e2e and other tooling in the results.

@ancheetah
ancheetah marked this pull request as ready for review October 23, 2026 18:59
@ancheetah
ancheetah merged commit b57518e into main Oct 23, 2026
10 checks passed
@ancheetah
ancheetah deleted the fix-mend-sca branch October 23, 2026 19:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants