Skip to content

feat(devices): add remote platform erase support#3206

Open
nmgaston wants to merge 5 commits intomainfrom
remotePlatformErase
Open

feat(devices): add remote platform erase support#3206
nmgaston wants to merge 5 commits intomainfrom
remotePlatformErase

Conversation

@nmgaston
Copy link
Copy Markdown
Contributor

@nmgaston nmgaston commented Mar 18, 2026

PR Checklist

  • Unit Tests have been added for new changes
  • API tests have been updated if applicable
  • All commented code has been removed
  • If you've added a dependency, you've ensured license is compatible with Apache 2.0 and clearly outlined the added dependency.

What are you changing?

Adds a Remote Platform Erase feature to the device detail view, allowing users to remotely wipe a managed AMT device.

  • New RemotePlatformEraseComponent (src/app/devices/remote-platform-erase/) with:
    • Detection and display of whether the device supports remote platform erase
    • Toggle to enable/disable the platformEraseEnabled AMT feature via the existing AMT features API
    • Per-capability checkboxes (Secure Erase of All SSDs, TPM Clear, Restore BIOS to EOM State, Unconfigure Intel CSME Firmware) driven by a bitmask parsed from rpeCaps
    • Selecting "Unconfigure Intel CSME Firmware" deselects and disables all other options, as it performs a full AMT unprovision and cannot be combined with other operations
    • Confirmation dialog (reusing AreYouSureDialogComponent) before initiating an erase
    • Warning banners and error snackbar notifications for destructive/failed operations
    • Loading state via mat-progress-bar
  • DevicesService: adds sendRemotePlatformErase(deviceId, eraseMask) calling POST /api/v1/amt/remoteErase/:deviceId; renames enableRPEplatformEraseEnabled in the AMT features request body to align with the updated MPS API (see associated PRs)
  • DeviceDetailComponent: adds "Remote Platform Erase" nav item (phonelink_erase icon) and routes to the new component
  • models.ts: updates AMTFeaturesResponse/AMTFeaturesRequest types to reflect the renamed field and new response properties
  • i18n: adds translation keys for all UI strings across all 12 supported locales
  • Cypress E2E tests covering: not-supported state, feature enabled/disabled states, toggle on/off with API assertion, confirm/cancel erase dialog, and error snackbar on API failure

Anything the reviewer should know when reviewing this PR?

Associated PRs

@nmgaston nmgaston force-pushed the remotePlatformErase branch from c7091b5 to cf0fa97 Compare March 18, 2026 00:17
Comment thread src/assets/i18n/ar.json
@rsdmike
Copy link
Copy Markdown
Member

rsdmike commented Apr 17, 2026

Thanks for doing this! Few things i see:

  1. There are some errors showig on the device detail page:
_effect-chunk2.mjs:2601 ERROR Error: Cannot find control with name: 'enablePlatformErase'
    at _throwError (forms.mjs:1658:9)
    at setUpControl (forms.mjs:1524:19)
  ...
  1. Remote Platform Erase is allowing me to click it device details page, but my device doesnt support it.
  2. icon on menu should probably be computer cancel instead of mobile cancel
  3. I think since the checkbox is already on amt device info, if its enabled no need to show the checkbox here:
image I think need to move this: image in to one box, hidden until the feature is enabled. If its enabled, then should show this capabilites to select. the call to action button (initiate) should be up in the top right of the RPE box to follow the design pattern of KVM, SOL, Audit Log, etc...

@nmgaston nmgaston force-pushed the remotePlatformErase branch 3 times, most recently from 72e2143 to dfe59ad Compare April 20, 2026 16:52
@nmgaston
Copy link
Copy Markdown
Contributor Author

nmgaston commented Apr 20, 2026

@rsdmike - Good suggestions. All issues should be resolved.

@nmgaston nmgaston force-pushed the remotePlatformErase branch 6 times, most recently from 712059a to 4e74344 Compare April 21, 2026 19:00
@nmgaston nmgaston marked this pull request as ready for review April 21, 2026 22:41
@nmgaston nmgaston requested a review from rsdmike April 21, 2026 22:42
@rsdmike rsdmike force-pushed the remotePlatformErase branch from 3e091d6 to 9cb2236 Compare April 22, 2026 01:48
@nmgaston nmgaston force-pushed the remotePlatformErase branch 2 times, most recently from 7c9d696 to 232cbe5 Compare May 5, 2026 23:56
@nmgaston nmgaston force-pushed the remotePlatformErase branch from 232cbe5 to a97911b Compare May 6, 2026 00:37
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.

Add support for Remote Platform Erase in Console Add support for Remote Platform Erase in MPS

2 participants