@adobe-commerce/aio-toolkit 1.0.7 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,53 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.0.8] - 2025-11-18
9
+
10
+ ### 🔒 Security Fixes
11
+
12
+ - **OnboardCommerce & OnboardEvents** `[Security]` - Removed sensitive payload logging (#94)
13
+ - Eliminated all sensitive data exposure in debug logs across onboarding components
14
+ - Modified `OnboardCommerce.subscribeToEvents()` to log only event names instead of full payloads
15
+ - Updated `ConfigureProvider` to log only provider/merchant IDs instead of complete configuration objects
16
+ - Changed `CreateRegistrations` to log only registration names instead of input payloads
17
+ - Modified `CreateProviders` to log only provider labels instead of full input data
18
+ - Prevents exposure of API keys, access tokens, client secrets, and merchant credentials
19
+ - Reduces security risks in console output, CI/CD logs, and debug sessions
20
+ - Maintains useful debugging context while protecting sensitive information
21
+ - 100% test coverage maintained
22
+
23
+ ### 🐛 Bug Fixes
24
+
25
+ - **FileRepository** `[Fixed]` - Preserve file timestamps in save() method (#93)
26
+ - Fixed `save()` method to preserve `createdAt` timestamp when updating existing files
27
+ - Removed unnecessary `filesLib.delete()` call that was resetting file creation timestamp
28
+ - Now relies on `filesLib.write()` to overwrite content while preserving file metadata
29
+ - Applies to both merge mode (default) and overwrite mode (`overwrite=true`)
30
+ - File system's native `createdAt` timestamp is now correctly maintained across updates
31
+ - Updated tests to verify `delete` is never called in either mode
32
+ - 100% test coverage maintained
33
+
34
+ ### ✨ Enhancements
35
+
36
+ - **GitHub Issue Templates** `[Enhanced]` - Updated with comprehensive component list (#95)
37
+ - Added 32+ components organized by category across all three issue templates
38
+ - New category headers: Commerce, Integration, Framework, I/O Events, Experience, Other
39
+ - Added missing components:
40
+ - Commerce: BasicAuthConnection, Oauth1aConnection, ImsConnection, GenerateBasicAuthToken, ShippingCarrierMethod, ShippingCarrierResponse
41
+ - Integration: CreateEvents, CreateRegistrations, OnboardCommerce
42
+ - Framework: RuntimeActionResponse, WebhookAction, WebhookActionResponse, ImsToken, RuntimeApiGatewayService, Parameters/Validator
43
+ - I/O Events: EventMetadataManager, ProviderManager, RegistrationManager
44
+ - Experience: AdminUiSdk
45
+ - Improved user experience with visual category separation in dropdowns
46
+ - Better issue triaging and component-level tracking for maintainers
47
+ - All templates (bug_report.yml, feature_request.yml, question.yml) updated consistently
48
+
49
+ ### 📊 Statistics
50
+
51
+ - **Total Components**: 32+ selectable options across 5 categories
52
+ - **Test Coverage**: 100% maintained (1679 tests passing)
53
+ - **Files Changed**: 7 files across 3 PRs
54
+
8
55
  ## [1.0.7] - 2025-11-12
9
56
 
10
57
  ### 🚀 PaaS Support for Adobe Commerce Event Subscriptions
package/dist/index.js CHANGED
@@ -553,7 +553,6 @@ var _FileRepository = class _FileRepository {
553
553
  const existingData = JSON.parse(buffer.toString());
554
554
  payload = { ...existingData, ...payload };
555
555
  }
556
- await filesLib.delete(filepath);
557
556
  } else {
558
557
  payload = {
559
558
  id: fileId,
@@ -4434,9 +4433,7 @@ var _CreateProviders = class _CreateProviders {
4434
4433
  }
4435
4434
  try {
4436
4435
  const providerInput = this.preparePayload(providerData, enhancedLabel);
4437
- this.logger.debug(
4438
- `[NEW] Creating new provider with payload: ${JSON.stringify(providerInput)}`
4439
- );
4436
+ this.logger.debug(`[NEW] Creating new provider: ${enhancedLabel}`);
4440
4437
  const createdProvider = await this.getProviderManager().create(providerInput);
4441
4438
  this.logger.debug(
4442
4439
  `[INFO] Provider created successfully! ID: ${createdProvider.id}, Instance ID: ${createdProvider.instance_id}`
@@ -4955,7 +4952,7 @@ var _CreateRegistrations = class _CreateRegistrations {
4955
4952
  registrationName,
4956
4953
  firstEvent
4957
4954
  );
4958
- this.logger.debug(`[INFO] Registration input: ${JSON.stringify(registrationInput, null, 2)}`);
4955
+ this.logger.debug(`[INFO] Creating registration: ${registrationName}`);
4959
4956
  const registrationSDK = this.getRegistrationManager();
4960
4957
  const createdRegistration = await registrationSDK.create(registrationInput);
4961
4958
  this.logger.debug("[SUCCESS] Registration created successfully!");
@@ -5518,10 +5515,7 @@ var _ConfigureProvider = class _ConfigureProvider {
5518
5515
  description: provider.description,
5519
5516
  workspace_configuration: JSON.stringify(workspaceConfig)
5520
5517
  };
5521
- this.customLogger.debug(
5522
- `[DEBUG] Creating event provider:
5523
- ${JSON.stringify(providerData, null, 2)}`
5524
- );
5518
+ this.customLogger.debug(`[DEBUG] Creating event provider: ${provider.label} (${provider.id})`);
5525
5519
  const createResult = await this.eventProviderService.create(providerData);
5526
5520
  if (!createResult.success) {
5527
5521
  const errorMsg = `Failed to create event provider: ${createResult.error}`;
@@ -5559,8 +5553,7 @@ ${JSON.stringify(providerData, null, 2)}`
5559
5553
  workspace_configuration: JSON.stringify(workspaceConfig)
5560
5554
  };
5561
5555
  this.customLogger.debug(
5562
- `[DEBUG] Updating configuration with payload:
5563
- ${JSON.stringify(updateConfigPayload, null, 2)}`
5556
+ `[DEBUG] Updating workspace configuration for merchant: ${this.merchantId}`
5564
5557
  );
5565
5558
  const updateResult = await this.eventConfigurationService.update(updateConfigPayload);
5566
5559
  if (!updateResult.success) {
@@ -5735,10 +5728,7 @@ var _OnboardCommerce = class _OnboardCommerce {
5735
5728
  for (const commerceEvent of needsSubscription) {
5736
5729
  try {
5737
5730
  const preparedEvent = this.prepareEventPayload(commerceEvent, provider.id);
5738
- this.customLogger.debug(
5739
- `[DEBUG] Subscribing to event with payload:
5740
- ${JSON.stringify(preparedEvent.event, null, 2)}`
5741
- );
5731
+ this.customLogger.debug(`[DEBUG] Subscribing to event: ${commerceEvent.event.name}`);
5742
5732
  const eventSubscribeResult = await this.eventSubscriptionService.create(
5743
5733
  preparedEvent.event
5744
5734
  );