@openhi/constructs 0.0.169 → 0.0.171

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.
Files changed (56) hide show
  1. package/lib/{chunk-DWSWCUZR.mjs → chunk-6HGSR3TG.mjs} +2 -2
  2. package/lib/chunk-APVVG7BO.mjs +61 -0
  3. package/lib/chunk-APVVG7BO.mjs.map +1 -0
  4. package/lib/{chunk-KA3OMP3X.mjs → chunk-AWAWCRWW.mjs} +10 -4
  5. package/lib/chunk-AWAWCRWW.mjs.map +1 -0
  6. package/lib/{chunk-ZODGX37H.mjs → chunk-E2OWEBBH.mjs} +3 -3
  7. package/lib/{chunk-GJTPXJKD.mjs → chunk-EBB4RNUG.mjs} +2 -2
  8. package/lib/{chunk-O5VQWB6U.mjs → chunk-FDBBTNCI.mjs} +5 -61
  9. package/lib/chunk-FDBBTNCI.mjs.map +1 -0
  10. package/lib/{chunk-P3CTZWC2.mjs → chunk-GG2WD6TA.mjs} +2 -2
  11. package/lib/{chunk-Q64MOYJ7.mjs → chunk-JUSVETWK.mjs} +3 -3
  12. package/lib/{chunk-ZXPA6W3G.mjs → chunk-RC7HHZR6.mjs} +3 -3
  13. package/lib/chunk-RC7HHZR6.mjs.map +1 -0
  14. package/lib/{chunk-2O3CXY2C.mjs → chunk-XJ5SRUGN.mjs} +2 -2
  15. package/lib/{chunk-2O3CXY2C.mjs.map → chunk-XJ5SRUGN.mjs.map} +1 -1
  16. package/lib/{chunk-P3NFCKTZ.mjs → chunk-XNUCKVSE.mjs} +2 -2
  17. package/lib/{chunk-WFTDH2NM.mjs → chunk-Y4RGUAM2.mjs} +2 -2
  18. package/lib/{chunk-XHG4SODS.mjs → chunk-Z4PZSLYY.mjs} +2 -2
  19. package/lib/counter-reconciliation.handler.mjs +5 -4
  20. package/lib/counter-reconciliation.handler.mjs.map +1 -1
  21. package/lib/data-store-postgres-replication.handler.js +48 -10
  22. package/lib/data-store-postgres-replication.handler.js.map +1 -1
  23. package/lib/data-store-postgres-replication.handler.mjs +16 -11
  24. package/lib/data-store-postgres-replication.handler.mjs.map +1 -1
  25. package/lib/firehose-archive-transform.handler.d.mts +2 -1
  26. package/lib/firehose-archive-transform.handler.d.ts +2 -1
  27. package/lib/firehose-archive-transform.handler.js +44 -4
  28. package/lib/firehose-archive-transform.handler.js.map +1 -1
  29. package/lib/firehose-archive-transform.handler.mjs +5 -2
  30. package/lib/index.d.mts +6 -2
  31. package/lib/index.d.ts +6 -2
  32. package/lib/index.js +23 -4
  33. package/lib/index.js.map +1 -1
  34. package/lib/index.mjs +27 -7
  35. package/lib/index.mjs.map +1 -1
  36. package/lib/pre-token-generation.handler.mjs +6 -5
  37. package/lib/pre-token-generation.handler.mjs.map +1 -1
  38. package/lib/provision-default-workspace.handler.mjs +5 -4
  39. package/lib/provision-default-workspace.handler.mjs.map +1 -1
  40. package/lib/rest-api-lambda.handler.js +1 -1
  41. package/lib/rest-api-lambda.handler.js.map +1 -1
  42. package/lib/rest-api-lambda.handler.mjs +14 -12
  43. package/lib/rest-api-lambda.handler.mjs.map +1 -1
  44. package/lib/seed-demo-data.handler.mjs +5 -4
  45. package/package.json +1 -1
  46. package/lib/chunk-KA3OMP3X.mjs.map +0 -1
  47. package/lib/chunk-O5VQWB6U.mjs.map +0 -1
  48. package/lib/chunk-ZXPA6W3G.mjs.map +0 -1
  49. /package/lib/{chunk-DWSWCUZR.mjs.map → chunk-6HGSR3TG.mjs.map} +0 -0
  50. /package/lib/{chunk-ZODGX37H.mjs.map → chunk-E2OWEBBH.mjs.map} +0 -0
  51. /package/lib/{chunk-GJTPXJKD.mjs.map → chunk-EBB4RNUG.mjs.map} +0 -0
  52. /package/lib/{chunk-P3CTZWC2.mjs.map → chunk-GG2WD6TA.mjs.map} +0 -0
  53. /package/lib/{chunk-Q64MOYJ7.mjs.map → chunk-JUSVETWK.mjs.map} +0 -0
  54. /package/lib/{chunk-P3NFCKTZ.mjs.map → chunk-XNUCKVSE.mjs.map} +0 -0
  55. /package/lib/{chunk-WFTDH2NM.mjs.map → chunk-Y4RGUAM2.mjs.map} +0 -0
  56. /package/lib/{chunk-XHG4SODS.mjs.map → chunk-Z4PZSLYY.mjs.map} +0 -0
package/lib/index.mjs CHANGED
@@ -10,7 +10,7 @@ import {
10
10
  DATA_STORE_CHANGE_DETAIL_MAX_UTF8_BYTES,
11
11
  DATA_STORE_CHANGE_DETAIL_TYPE,
12
12
  buildFhirCurrentResourceChangeDetail
13
- } from "./chunk-ZXPA6W3G.mjs";
13
+ } from "./chunk-RC7HHZR6.mjs";
14
14
  import {
15
15
  SEED_SYSTEM_DATA_ACTOR_SYSTEM,
16
16
  SEED_SYSTEM_DATA_CONSUMER_NAME,
@@ -176,7 +176,7 @@ import {
176
176
  practitionerCredentialingForDoctor,
177
177
  practitionerCredentialingForState,
178
178
  woundConditionIdForPatient
179
- } from "./chunk-ZODGX37H.mjs";
179
+ } from "./chunk-E2OWEBBH.mjs";
180
180
  import {
181
181
  COUNTER_MAINTENANCE_CONSUMER_NAME,
182
182
  COUNTER_MAINTENANCE_DETAIL_TYPES,
@@ -189,7 +189,7 @@ import {
189
189
  OWNING_DELETE_OPS_EVENT_BUS_ENV_VAR,
190
190
  import_workflows as import_workflows4
191
191
  } from "./chunk-VESULYQQ.mjs";
192
- import "./chunk-P3NFCKTZ.mjs";
192
+ import "./chunk-XNUCKVSE.mjs";
193
193
  import {
194
194
  PROVISION_DEFAULT_WORKSPACE_DETAIL_TYPE,
195
195
  USER_ONBOARDING_EVENT_SOURCE,
@@ -206,13 +206,14 @@ import {
206
206
  } from "./chunk-SVXLZCF7.mjs";
207
207
  import {
208
208
  PLATFORM_SCOPE_TENANT_ID
209
- } from "./chunk-XHG4SODS.mjs";
209
+ } from "./chunk-Z4PZSLYY.mjs";
210
210
  import "./chunk-BUAYVN3C.mjs";
211
211
  import "./chunk-5S6VFBLT.mjs";
212
212
  import "./chunk-I6LUPJUY.mjs";
213
213
  import "./chunk-QJDHVMKT.mjs";
214
214
  import "./chunk-6BB4CRSS.mjs";
215
- import "./chunk-O5VQWB6U.mjs";
215
+ import "./chunk-FDBBTNCI.mjs";
216
+ import "./chunk-APVVG7BO.mjs";
216
217
  import "./chunk-FYHBHHWK.mjs";
217
218
  import "./chunk-EUIP2U5F.mjs";
218
219
  import "./chunk-TRY7JGWO.mjs";
@@ -953,7 +954,8 @@ var PostAuthenticationLambda = class extends Construct {
953
954
  this.lambda = new NodejsFunction(this, "handler", {
954
955
  entry: resolveHandlerEntry(__dirname),
955
956
  runtime: Runtime.NODEJS_LATEST,
956
- memorySize: 1024
957
+ memorySize: 1024,
958
+ description: "Cognito Post Authentication trigger. Invalidates other active sessions for the signing-in user via `AdminUserGlobalSignOut` to enforce single-session login."
957
959
  });
958
960
  }
959
961
  };
@@ -979,6 +981,7 @@ var PostConfirmationLambda = class extends Construct2 {
979
981
  entry: resolveHandlerEntry2(__dirname),
980
982
  runtime: Runtime2.NODEJS_LATEST,
981
983
  memorySize: 1024,
984
+ description: "Cognito Post Confirmation trigger. Publishes the user-onboarding start event onto the control bus and returns \u2014 workflow Lambdas own provisioning.",
982
985
  environment: {
983
986
  CONTROL_EVENT_BUS_NAME: props.controlEventBusName
984
987
  }
@@ -1008,6 +1011,7 @@ var PreTokenGenerationLambda = class extends Construct3 {
1008
1011
  entry: resolveHandlerEntry3(__dirname),
1009
1012
  runtime: Runtime3.NODEJS_LATEST,
1010
1013
  memorySize: 1024,
1014
+ description: "Cognito Pre Token Generation trigger. Resolves the OpenHI User from Cognito `sub` and injects `ohi_tid` / `ohi_wid` / `ohi_uid` / `ohi_uname` claims into the ID + access tokens (ADR 2026-03-17-01).",
1011
1015
  environment: {
1012
1016
  DYNAMO_TABLE_NAME: props.dynamoTableName
1013
1017
  }
@@ -1774,6 +1778,7 @@ var _StaticHosting = class _StaticHosting extends Construct8 {
1774
1778
  handler: hostingMode === "static" ? "staticHandler" : "spaHandler",
1775
1779
  memorySize: 128,
1776
1780
  runtime: Runtime6.NODEJS_LATEST,
1781
+ description: `CloudFront Lambda@Edge viewer-request handler for static hosting (${hostingMode} mode). Rewrites the incoming URI (SPA fallback to /index.html or /<path>/index.html synthesis) before the origin lookup.`,
1777
1782
  logGroup: new LogGroup(this, "viewer-request-handler-log-group", {
1778
1783
  retention: RetentionDays.ONE_MONTH
1779
1784
  })
@@ -1968,6 +1973,7 @@ var _StaticHosting = class _StaticHosting extends Construct8 {
1968
1973
  handler: "originRequestHandler",
1969
1974
  memorySize: 128,
1970
1975
  runtime: Runtime6.NODEJS_LATEST,
1976
+ description: "CloudFront Lambda@Edge origin-request handler for static hosting. Routes requests between the viewer (static-hosting) origin and the API origin based on the configured host prefixes (inlined at synth time via esbuild `define`).",
1971
1977
  logGroup: new LogGroup(this, "origin-request-handler-log-group", {
1972
1978
  retention: RetentionDays.ONE_MONTH
1973
1979
  }),
@@ -2193,6 +2199,7 @@ var PlatformDeployBridgeLambda = class extends Construct11 {
2193
2199
  runtime: Runtime7.NODEJS_LATEST,
2194
2200
  memorySize: 256,
2195
2201
  timeout: Duration6.seconds(30),
2202
+ description: "Bridges CloudFormation Stack Status Change events from the default AWS bus into typed `platform.deployment-completed.v1` envelopes on the OpenHI control bus. Scoped by stack-id prefix to this branch's stacks.",
2196
2203
  environment: {
2197
2204
  [CONTROL_EVENT_BUS_NAME_ENV_VAR]: props.controlEventBus.eventBusName,
2198
2205
  [OPENHI_REPO_TAG_KEY_ENV_VAR]: repoTagKey,
@@ -2448,6 +2455,7 @@ var CounterMaintenanceLambda = class extends Construct13 {
2448
2455
  runtime: Runtime8.NODEJS_LATEST,
2449
2456
  memorySize: 256,
2450
2457
  timeout: Duration7.minutes(1),
2458
+ description: "Event-driven consumer that applies atomic counter ADDs to Tenant/Workspace/User canonical rows on Membership / RoleAssignment / Workspace lifecycle events (ADR-028).",
2451
2459
  environment: {
2452
2460
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
2453
2461
  }
@@ -2512,6 +2520,7 @@ var CounterReconciliationLambda = class extends Construct15 {
2512
2520
  // heavier than the single-event counter-maintenance consumer, so
2513
2521
  // the on-demand job gets a longer ceiling.
2514
2522
  timeout: Duration8.minutes(15),
2523
+ description: "On-demand sweep that recomputes and repairs Tenant/Workspace/User membership counters in DynamoDB (ADR-028). Invoked manually or by an external schedule \u2014 no EventBridge trigger.",
2515
2524
  environment: {
2516
2525
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
2517
2526
  }
@@ -2557,6 +2566,7 @@ var SeedDemoDataLambda = class extends Construct17 {
2557
2566
  runtime: Runtime10.NODEJS_LATEST,
2558
2567
  memorySize: 512,
2559
2568
  timeout: Duration9.minutes(2),
2569
+ description: "Seeds demo Tenants, Workspaces, Users, Memberships, and RoleAssignments into DynamoDB and provisions Cognito dev users. Triggered by `platform.system-data-seeded.v1` on the control bus. Non-prod stages only.",
2560
2570
  environment: {
2561
2571
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName,
2562
2572
  [SEED_DEMO_DATA_USER_POOL_ID_ENV_VAR]: props.userPool.userPoolId
@@ -2680,6 +2690,7 @@ var SeedSystemDataLambda = class extends Construct19 {
2680
2690
  runtime: Runtime11.NODEJS_LATEST,
2681
2691
  memorySize: 512,
2682
2692
  timeout: Duration10.minutes(1),
2693
+ description: "Seeds platform-singleton control-plane records (Roles) into DynamoDB after the host stack's deployment completes. Emits `platform.system-data-seeded.v1` on the control bus when done.",
2683
2694
  environment: {
2684
2695
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName,
2685
2696
  [SEED_SYSTEM_DATA_CONTROL_BUS_ENV_VAR]: props.controlEventBus.eventBusName
@@ -2926,7 +2937,8 @@ var CorsOptionsLambda = class extends Construct21 {
2926
2937
  this.lambda = new NodejsFunction12(this, "handler", {
2927
2938
  entry: resolveHandlerEntry11(__dirname),
2928
2939
  runtime: Runtime12.NODEJS_LATEST,
2929
- memorySize: 128
2940
+ memorySize: 128,
2941
+ description: "CORS preflight (OPTIONS) handler. Returns 204 so API Gateway can attach CORS response headers from the API's corsPreflight config."
2930
2942
  });
2931
2943
  }
2932
2944
  };
@@ -2953,6 +2965,7 @@ var RestApiLambda = class extends Construct22 {
2953
2965
  entry: resolveHandlerEntry12(__dirname),
2954
2966
  runtime: Runtime13.NODEJS_LATEST,
2955
2967
  memorySize: 1024,
2968
+ description: "OpenHI REST API handler. Serves every FHIR resource route and the control-plane data operations behind the HTTP API; reads DynamoDB and the Postgres replication tier and publishes control events for membership / role changes (ADR-028).",
2956
2969
  environment: {
2957
2970
  DYNAMO_TABLE_NAME: props.dynamoTableName,
2958
2971
  BRANCH_TAG_VALUE: props.branchTagValue,
@@ -3737,6 +3750,7 @@ var ProvisionDefaultWorkspaceLambda = class extends Construct24 {
3737
3750
  entry: resolveHandlerEntry13(__dirname),
3738
3751
  runtime: Runtime14.NODEJS_LATEST,
3739
3752
  memorySize: 1024,
3753
+ description: "User-onboarding worker that creates a new user's default Tenant, Workspace, Memberships, and RoleAssignment in DynamoDB on the `provision-default-workspace` event.",
3740
3754
  environment: {
3741
3755
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
3742
3756
  }
@@ -4222,6 +4236,7 @@ var OwningDeleteCascadeLambdas = class extends Construct26 {
4222
4236
  runtime: Runtime15.NODEJS_LATEST,
4223
4237
  memorySize: 512,
4224
4238
  timeout: Duration13.minutes(1),
4239
+ description: "TR-022 owning-entity delete cascade: pages the owner's adjacency-list partition and splits each page into <=100-item chunks for the inline Map state.",
4225
4240
  environment: {
4226
4241
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
4227
4242
  }
@@ -4236,6 +4251,7 @@ var OwningDeleteCascadeLambdas = class extends Construct26 {
4236
4251
  runtime: Runtime15.NODEJS_LATEST,
4237
4252
  memorySize: 512,
4238
4253
  timeout: Duration13.minutes(1),
4254
+ description: "TR-022 owning-entity delete cascade: Map iteration handler. Deletes one chunk of owned items via a single TransactWriteItems.",
4239
4255
  environment: {
4240
4256
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
4241
4257
  }
@@ -4255,6 +4271,7 @@ var OwningDeleteCascadeLambdas = class extends Construct26 {
4255
4271
  runtime: Runtime15.NODEJS_LATEST,
4256
4272
  memorySize: 512,
4257
4273
  timeout: Duration13.minutes(1),
4274
+ description: "TR-022 owning-entity delete cascade: terminal step. Conditionally deletes the owning canonical record and emits `control-plane.owning-delete-complete.v1` on the ops bus.",
4258
4275
  environment: {
4259
4276
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName,
4260
4277
  [OWNING_DELETE_OPS_EVENT_BUS_ENV_VAR]: props.opsEventBus.eventBusName
@@ -4475,6 +4492,7 @@ var RenameCascadeLambdas = class extends Construct28 {
4475
4492
  runtime: Runtime16.NODEJS_LATEST,
4476
4493
  memorySize: 512,
4477
4494
  timeout: Duration15.minutes(1),
4495
+ description: "TR-023 rename cascade: pages affected projection partitions and emits chunks of up to 50 rewrite targets for the state machine's Distributed Map.",
4478
4496
  environment: {
4479
4497
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
4480
4498
  }
@@ -4489,6 +4507,7 @@ var RenameCascadeLambdas = class extends Construct28 {
4489
4507
  runtime: Runtime16.NODEJS_LATEST,
4490
4508
  memorySize: 512,
4491
4509
  timeout: Duration15.minutes(1),
4510
+ description: "TR-023 rename cascade: Distributed-Map iteration handler. Rewrites one chunk of projection rows via a single TransactWriteItems.",
4492
4511
  environment: {
4493
4512
  DYNAMO_TABLE_NAME: props.dataStoreTable.tableName
4494
4513
  }
@@ -4508,6 +4527,7 @@ var RenameCascadeLambdas = class extends Construct28 {
4508
4527
  runtime: Runtime16.NODEJS_LATEST,
4509
4528
  memorySize: 512,
4510
4529
  timeout: Duration15.minutes(1),
4530
+ description: "TR-023 rename cascade: terminal step. Emits `control-plane.rename-complete.v1` on the ops event bus once all chunks have been rewritten.",
4511
4531
  environment: {
4512
4532
  [RENAME_CASCADE_OPS_EVENT_BUS_ENV_VAR]: props.opsEventBus.eventBusName
4513
4533
  }