[Update] MBC CQRS サーバーレス フレームワーク v1.2.0 をリリース
Technology
Apr 02, 2026
MBC CQRS サーバーレス フレームワーク v1.2.0 をリリースしました。今回のリリースでは、重要な破壊的変更と新機能が含まれています。
主な変更点
⚠️ 破壊的変更
- core:
publishSync()およびpublishPartialUpdateSync()が no-op 時にnullを返すように変更されました。戻り値の型がPromise<CommandModel>からPromise<CommandModel | null>に変わります。結果にアクセスする前に null チェックを追加してください。(詳細) - sequence:
SequenceService.genNewSequence()が削除されました。代わりにgenerateSequenceItem()またはgenerateSequenceItemWithProvideSetting()を使用してください。(詳細)
✨ 新機能
Read-Your-Writes (RYW) 整合性
publishAsync 後、DynamoDB Stream の同期が完了する前でも、同一ユーザーの後続読み取りで書き込んだデータが即座に反映されるようになりました。
- オプトイン方式:環境変数
RYW_SESSION_TTL_MINUTESを設定するだけで有効化(例:5) - 新しい
RepositoryクラスがCommandModule/@mbc-cqrs-serverless/coreからエクスポートされます。DataServiceを RYW マージ付きでラップし、getItem、listItemsByPk、listItemsに対応 - セッションテーブル
{NODE_ENV}-{APP_NAME}-sessionの作成が必要です(dynamodbs/session.json参照) RYW_SESSION_TTL_MINUTES未設定時は完全に無効 — 既存プロジェクトへの影響ゼロ
(実装ガイドを見る | コアコンセプトを見る)
MCP サーバー:新しいアンチパターン検出器
- AP013:
publishSync/publishPartialUpdateSyncの結果を null チェックなしで使用するコードを検出 - AP014: 削除済みの
genNewSequence()の使用を検出 migration_guideプロンプトが v1.2.0 セクションで更新されました
🐛 バグ修正
- import: ZIP オーケストレーターのインポートステータスハンドリングを修正。
ImportStatusHandlerがジョブ失敗時にimportJobStatus付きのタスク成功を送信するようになりました。
アップグレード方法
npm install @mbc-cqrs-serverless/core@1.2.0
破壊的変更の移行方法については、変更履歴 v1.2.0 をご確認ください。
