@friggframework/devtools 2.0.0--canary.622.44c5bcb.0 → 2.0.0--canary.627.6391013.0

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.
@@ -478,6 +478,15 @@ class MigrationBuilder extends InfrastructureBuilder {
478
478
  },
479
479
  },
480
480
  { httpApi: { path: '/admin/db-migrate', method: 'POST' } },
481
+ // Recover from a failed migration (Prisma P3009). Without this
482
+ // route, a single failed migration blocks every subsequent one
483
+ // and there is no admin-API path to resolve it.
484
+ {
485
+ httpApi: {
486
+ path: '/admin/db-migrate/resolve',
487
+ method: 'POST',
488
+ },
489
+ },
481
490
  {
482
491
  httpApi: {
483
492
  path: '/admin/db-migrate/{processId}',
@@ -229,7 +229,7 @@ describe('MigrationBuilder', () => {
229
229
  expect(result.functions.dbMigrationRouter.skipEsbuild).toBe(true);
230
230
  expect(result.functions.dbMigrationRouter.timeout).toBe(30);
231
231
  expect(result.functions.dbMigrationRouter.memorySize).toBe(512);
232
- expect(result.functions.dbMigrationRouter.events).toHaveLength(3);
232
+ expect(result.functions.dbMigrationRouter.events).toHaveLength(4);
233
233
  // Must match core's Express router mounted under /admin/db-migrate.
234
234
  expect(result.functions.dbMigrationRouter.events).toContainEqual({
235
235
  httpApi: { path: '/admin/db-migrate/status', method: 'GET' },
@@ -237,6 +237,9 @@ describe('MigrationBuilder', () => {
237
237
  expect(result.functions.dbMigrationRouter.events).toContainEqual({
238
238
  httpApi: { path: '/admin/db-migrate', method: 'POST' },
239
239
  });
240
+ expect(result.functions.dbMigrationRouter.events).toContainEqual({
241
+ httpApi: { path: '/admin/db-migrate/resolve', method: 'POST' },
242
+ });
240
243
  expect(result.functions.dbMigrationRouter.events).toContainEqual({
241
244
  httpApi: { path: '/admin/db-migrate/{processId}', method: 'GET' },
242
245
  });
@@ -32,13 +32,9 @@ function addTelemetryEnvPassthrough(appDefinition, envVars) {
32
32
  const exporterType = appDefinition?.telemetry?.exporter?.type;
33
33
  if (!OTLP_EXPORTER_TYPES.has(exporterType)) return;
34
34
 
35
- // A passthrough var that is also marked for SSM offload must NOT be baked
36
- // as a direct `${env:KEY, ''}` Lambda var: the deploy shell has no such var
37
- // (it lives only in Parameter Store), so it resolves to '' at package time,
38
- // and at runtime '' !== undefined blocks the SSM loader from ever populating
39
- // it. Leave it out here so it lives only in FRIGG_SSM_OFFLOADED_KEYS. When
40
- // offload is inactive (local mode / ssm disabled) it still gets the
41
- // passthrough, matching the local-fallback contract.
35
+ // Skip offloaded keys here: baking '${env:KEY, ''}' resolves to '' at
36
+ // deploy (the value lives only in SSM), and '' !== undefined then blocks
37
+ // the SSM loader from ever fetching the real value.
42
38
  const offloadedKeys = isSsmOffloadActive(appDefinition)
43
39
  ? new Set(getOffloadedKeys(appDefinition))
44
40
  : null;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@friggframework/devtools",
3
3
  "prettier": "@friggframework/prettier-config",
4
- "version": "2.0.0--canary.622.44c5bcb.0",
4
+ "version": "2.0.0--canary.627.6391013.0",
5
5
  "bin": {
6
6
  "frigg": "./frigg-cli/index.js"
7
7
  },
@@ -26,9 +26,9 @@
26
26
  "@babel/eslint-parser": "^7.18.9",
27
27
  "@babel/parser": "^7.25.3",
28
28
  "@babel/traverse": "^7.25.3",
29
- "@friggframework/core": "2.0.0--canary.622.44c5bcb.0",
30
- "@friggframework/schemas": "2.0.0--canary.622.44c5bcb.0",
31
- "@friggframework/test": "2.0.0--canary.622.44c5bcb.0",
29
+ "@friggframework/core": "2.0.0--canary.627.6391013.0",
30
+ "@friggframework/schemas": "2.0.0--canary.627.6391013.0",
31
+ "@friggframework/test": "2.0.0--canary.627.6391013.0",
32
32
  "@hapi/boom": "^10.0.1",
33
33
  "@inquirer/prompts": "^5.3.8",
34
34
  "axios": "^1.18.0",
@@ -56,8 +56,8 @@
56
56
  "validate-npm-package-name": "^5.0.0"
57
57
  },
58
58
  "devDependencies": {
59
- "@friggframework/eslint-config": "2.0.0--canary.622.44c5bcb.0",
60
- "@friggframework/prettier-config": "2.0.0--canary.622.44c5bcb.0",
59
+ "@friggframework/eslint-config": "2.0.0--canary.627.6391013.0",
60
+ "@friggframework/prettier-config": "2.0.0--canary.627.6391013.0",
61
61
  "aws-sdk-client-mock": "^4.1.0",
62
62
  "aws-sdk-client-mock-jest": "^4.1.0",
63
63
  "jest": "^30.1.3",
@@ -89,5 +89,5 @@
89
89
  "publishConfig": {
90
90
  "access": "public"
91
91
  },
92
- "gitHead": "44c5bcb5ac98478fe902170b7e5c0cf8c0315ddf"
92
+ "gitHead": "63910130c9f3b3bc7fa3f027d0ab545e840cf5e4"
93
93
  }