@exabugs/dynamodb-client 1.11.1 → 1.11.3

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.
@@ -1,5 +1,5 @@
1
- // @exabugs/dynamodb-client v1.11.1
2
- // Built: 2026-10-12T06:56:36.671Z
1
+ // @exabugs/dynamodb-client v1.11.3
2
+ // Built: 2026-10-13T08:14:08.936Z
3
3
  "use strict";
4
4
  var __create = Object.create;
5
5
  var __defProp = Object.defineProperty;
@@ -1,5 +1,5 @@
1
- // @exabugs/dynamodb-client v1.11.1
2
- // Built: 2026-10-12T06:56:36.671Z
1
+ // @exabugs/dynamodb-client v1.11.3
2
+ // Built: 2026-10-13T08:14:08.936Z
3
3
  "use strict";
4
4
  var __create = Object.create;
5
5
  var __defProp = Object.defineProperty;
@@ -1,5 +1,5 @@
1
- // @exabugs/dynamodb-client v1.11.1
2
- // Built: 2026-10-12T06:56:36.671Z
1
+ // @exabugs/dynamodb-client v1.11.3
2
+ // Built: 2026-10-13T08:14:08.936Z
3
3
  "use strict";
4
4
  var __create = Object.create;
5
5
  var __defProp = Object.defineProperty;
@@ -1 +1 @@
1
- {"version":3,"file":"responseBuilder.d.ts","sourceRoot":"","sources":["../../../src/server/utils/responseBuilder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAoB1D;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,uBAAuB,CAgB/F;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,OAAO,GAChB,uBAAuB,CA0BzB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,uBAAuB,CAM9E"}
1
+ {"version":3,"file":"responseBuilder.d.ts","sourceRoot":"","sources":["../../../src/server/utils/responseBuilder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAoB1D;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,uBAAuB,CAgB/F;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,OAAO,GAChB,uBAAuB,CAgCzB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,uBAAuB,CAM9E"}
@@ -54,11 +54,17 @@ export function createErrorResponse(code, message, statusCode, requestId, detail
54
54
  details,
55
55
  },
56
56
  };
57
- logger.error('Request failed', {
57
+ // 4xx(クライアント起因。存在しないIDの参照など、日常的に起きうる想定内の失敗)はwarn、
58
+ // 5xx(サーバー起因の障害)はerrorにする。eventにはcode(例: ITEM_NOT_FOUND)を入れる。
59
+ // detailsにresource/id等の文脈が入っている場合はログにも残す(原因特定に必須)。
60
+ // 詳細: docs/NOTIFY.md(eventが無いと通知の重複抑制がIDの数だけ指紋を作ってしまう)
61
+ const level = statusCode >= 500 ? 'error' : 'warn';
62
+ logger[level]('Request failed', {
58
63
  requestId,
59
- code,
64
+ event: code,
60
65
  message,
61
66
  statusCode,
67
+ ...(details !== undefined && details !== null ? { details } : {}),
62
68
  });
63
69
  return {
64
70
  statusCode,
@@ -1 +1 @@
1
- {"version":3,"file":"responseBuilder.js","sourceRoot":"","sources":["../../../src/server/utils/responseBuilder.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGrD;;GAEG;AACH,MAAM,MAAM,GAAG,YAAY,CAAC;IAC1B,OAAO,EAAE,kBAAkB;IAC3B,KAAK,EAAG,OAAO,CAAC,GAAG,CAAC,SAAiD,IAAI,MAAM;CAChF,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAa,EAAE,SAAiB;IACpE,MAAM,QAAQ,GAAgC;QAC5C,OAAO,EAAE,IAAI;QACb,IAAI;KACL,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IAEhD,OAAO;QACL,UAAU,EAAE,WAAW,CAAC,EAAE;QAC1B,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,GAAG,YAAY;SAChB;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAAY,EACZ,OAAe,EACf,UAAkB,EAClB,SAAiB,EACjB,OAAiB;IAEjB,MAAM,QAAQ,GAAqB;QACjC,OAAO,EAAE,KAAK;QACd,KAAK,EAAE;YACL,IAAI;YACJ,OAAO;YACP,UAAU;YACV,OAAO;SACR;KACF,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE;QAC7B,SAAS;QACT,IAAI;QACJ,OAAO;QACP,UAAU;KACX,CAAC,CAAC;IAEH,OAAO;QACL,UAAU;QACV,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,GAAG,YAAY;SAChB;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,OAAO;QACL,UAAU;QACV,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,EAAE;KACT,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"responseBuilder.js","sourceRoot":"","sources":["../../../src/server/utils/responseBuilder.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGrD;;GAEG;AACH,MAAM,MAAM,GAAG,YAAY,CAAC;IAC1B,OAAO,EAAE,kBAAkB;IAC3B,KAAK,EAAG,OAAO,CAAC,GAAG,CAAC,SAAiD,IAAI,MAAM;CAChF,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAa,EAAE,SAAiB;IACpE,MAAM,QAAQ,GAAgC;QAC5C,OAAO,EAAE,IAAI;QACb,IAAI;KACL,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;IAEhD,OAAO;QACL,UAAU,EAAE,WAAW,CAAC,EAAE;QAC1B,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,GAAG,YAAY;SAChB;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAAY,EACZ,OAAe,EACf,UAAkB,EAClB,SAAiB,EACjB,OAAiB;IAEjB,MAAM,QAAQ,GAAqB;QACjC,OAAO,EAAE,KAAK;QACd,KAAK,EAAE;YACL,IAAI;YACJ,OAAO;YACP,UAAU;YACV,OAAO;SACR;KACF,CAAC;IAEF,kDAAkD;IAClD,8DAA8D;IAC9D,mDAAmD;IACnD,uDAAuD;IACvD,MAAM,KAAK,GAAG,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACnD,MAAM,CAAC,KAAK,CAAC,CAAC,gBAAgB,EAAE;QAC9B,SAAS;QACT,KAAK,EAAE,IAAI;QACX,OAAO;QACP,UAAU;QACV,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClE,CAAC,CAAC;IAEH,OAAO;QACL,UAAU;QACV,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,GAAG,YAAY;SAChB;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,OAAO;QACL,UAAU;QACV,OAAO,EAAE,YAAY;QACrB,IAAI,EAAE,EAAE;KACT,CAAC;AACJ,CAAC"}
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exabugs/dynamodb-client",
3
- "version": "1.11.1",
3
+ "version": "1.11.3",
4
4
  "description": "DynamoDB Single-Table Client SDK with MongoDB-like API, Shadow Records, and Lambda implementation for serverless applications",
5
5
  "author": "exabugs",
6
6
  "license": "MIT",
@@ -638,9 +638,19 @@ data "aws_ssm_parameter" "signing_public_key" {
638
638
  }
639
639
 
640
640
  resource "aws_cloudfront_public_key" "media" {
641
- name = "${local.name_prefix}-signing-key"
641
+ # name_prefix(固定nameではない): create_before_destroyと併用するには、
642
+ # 新旧リソースが一時的に共存できる名前が必要(固定nameだと重複エラーになる)
643
+ name_prefix = "${local.name_prefix}-signing-key-"
642
644
  encoded_key = data.aws_ssm_parameter.signing_public_key.value
643
645
  comment = "Media delivery signing key (2048bit RSA)"
646
+
647
+ # 鍵の値が変わるとforce replacementになるが、既定(destroy-then-create)では
648
+ # 旧キーがkey_groupに紐づいたまま削除しようとして
649
+ # 「PublicKeyInUse」エラーで失敗する。先に新キーを作ってkey_groupを
650
+ # 更新してから旧キーを消す順序にする
651
+ lifecycle {
652
+ create_before_destroy = true
653
+ }
644
654
  }
645
655
 
646
656
  resource "aws_cloudfront_key_group" "media" {