@nodii/approval 0.2.1 → 0.3.1

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/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export declare const LIB_NAME = "approval";
2
- export declare const VERSION = "0.2.1";
2
+ export declare const VERSION = "0.3.0";
3
3
  export { defineApprovalKinds, KindRegistry, RequesterRegistry, validateCrossOwnerKind, type DefineApprovalKindsOpts, } from "./kinds";
4
4
  export { initApproval, requireApproval, getApprovalOrNull, requireKindRegistry, requireHandlers, requesterRegistry, defineApprovalRequester, registerKinds, _resetForTests, } from "./init";
5
5
  export { bindApprovalHandlers, type BindApprovalHandlersOpts, } from "./handlers";
@@ -7,6 +7,8 @@ export { requestApproval } from "./request";
7
7
  export { validatePreviewSummary, PII_PATTERNS, } from "./preview-validation";
8
8
  export { startApprovalConsumer, stopApprovalConsumer, defaultQueueName, _resetConsumerForTests, type StartApprovalConsumerOpts, type ApprovalConsumerHandle, } from "./consumer";
9
9
  export { getApprovalMigrationSQL, splitStatements, type GetMigrationSQLOpts, } from "./migrations";
10
+ export { APPROVAL_OUTBOX_AGGREGATE_KIND, DEFAULT_OUTBOX_TABLE_NAME, approvalRequestedTopic, insertBeginEventOutboxRow, type ApprovalBeginEventPayload, type InsertBeginEventOutboxRowInput, } from "./outbox";
11
+ export { uuidv7 } from "./uuid";
10
12
  export { TaskTrackingGrpcClient, TASK_SERVICE_DESCRIPTOR, type TaskTrackingGrpcClientOpts, } from "./task-tracking-client";
11
13
  export { createApprovalPolicyClient, ApprovalPolicyGrpcClient, APPROVAL_POLICY_SERVICE, type CreateApprovalPolicyClientOpts, } from "./policy-client";
12
14
  export { ApprovalError, ApprovalNotInitialized, ApproverRoleNotInCatalog, DeferredActionNotFound, HandlerForUnregisteredKind, HandlerNotRegistered, IdempotencyKeyRequired, InvalidApprovalPreviewShape, InvalidApprovalSegment, ReservedServiceNameViolation, TaskCreationFailed, TenantPolicyKindUnknown, UndeclaredRequesterKind, UnknownApprovalKind, } from "./errors";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,uBAAuB,GAC7B,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,cAAc,GACf,MAAM,QAAQ,CAAC;AAEhB,OAAO,EACL,oBAAoB,EACpB,KAAK,wBAAwB,GAC9B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EACL,sBAAsB,EACtB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,GAC5B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,KAAK,mBAAmB,GACzB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,KAAK,0BAA0B,GAChC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,8BAA8B,GACpC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,EAC3B,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAElB,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,2BAA2B,EAC3B,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,4BAA4B,EAC5B,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,sBAAsB,EACtB,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,QAAQ,aAAa,CAAC;AACnC,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,uBAAuB,GAC7B,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,cAAc,GACf,MAAM,QAAQ,CAAC;AAEhB,OAAO,EACL,oBAAoB,EACpB,KAAK,wBAAwB,GAC9B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EACL,sBAAsB,EACtB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,GAC5B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,KAAK,mBAAmB,GACzB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,8BAA8B,GACpC,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,KAAK,0BAA0B,GAChC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,KAAK,8BAA8B,GACpC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,EAC3B,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAElB,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,2BAA2B,EAC3B,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,4BAA4B,EAC5B,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,sBAAsB,EACtB,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@
3
3
  // Spec: planning hub feature_doc serviceId=nodii-libs docKey=approval.
4
4
  // Polyglot ship: TS + Python + Go in parity. This is the TypeScript impl.
5
5
  export const LIB_NAME = "approval";
6
- export const VERSION = "0.2.1";
6
+ export const VERSION = "0.3.0";
7
7
  export { defineApprovalKinds, KindRegistry, RequesterRegistry, validateCrossOwnerKind, } from "./kinds";
8
8
  export { initApproval, requireApproval, getApprovalOrNull, requireKindRegistry, requireHandlers, requesterRegistry, defineApprovalRequester, registerKinds, _resetForTests, } from "./init";
9
9
  export { bindApprovalHandlers, } from "./handlers";
@@ -11,6 +11,8 @@ export { requestApproval } from "./request";
11
11
  export { validatePreviewSummary, PII_PATTERNS, } from "./preview-validation";
12
12
  export { startApprovalConsumer, stopApprovalConsumer, defaultQueueName, _resetConsumerForTests, } from "./consumer";
13
13
  export { getApprovalMigrationSQL, splitStatements, } from "./migrations";
14
+ export { APPROVAL_OUTBOX_AGGREGATE_KIND, DEFAULT_OUTBOX_TABLE_NAME, approvalRequestedTopic, insertBeginEventOutboxRow, } from "./outbox";
15
+ export { uuidv7 } from "./uuid";
14
16
  export { TaskTrackingGrpcClient, TASK_SERVICE_DESCRIPTOR, } from "./task-tracking-client";
15
17
  export { createApprovalPolicyClient, ApprovalPolicyGrpcClient, APPROVAL_POLICY_SERVICE, } from "./policy-client";
16
18
  export { ApprovalError, ApprovalNotInitialized, ApproverRoleNotInCatalog, DeferredActionNotFound, HandlerForUnregisteredKind, HandlerNotRegistered, IdempotencyKeyRequired, InvalidApprovalPreviewShape, InvalidApprovalSegment, ReservedServiceNameViolation, TaskCreationFailed, TenantPolicyKindUnknown, UndeclaredRequesterKind, UnknownApprovalKind, } from "./errors";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,EAAE;AACF,uEAAuE;AACvE,0EAA0E;AAE1E,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;AACnC,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,GAEvB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,cAAc,GACf,MAAM,QAAQ,CAAC;AAEhB,OAAO,EACL,oBAAoB,GAErB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EACL,sBAAsB,EACtB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,GAGvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,uBAAuB,EACvB,eAAe,GAEhB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GAExB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,GAExB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,EAC3B,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,UAAU,CAAC;AA+BlB,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,sBAAsB,EACtB,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,EAAE;AACF,uEAAuE;AACvE,0EAA0E;AAE1E,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;AACnC,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,GAEvB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,cAAc,GACf,MAAM,QAAQ,CAAC;AAEhB,OAAO,EACL,oBAAoB,GAErB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EACL,sBAAsB,EACtB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,GAGvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,uBAAuB,EACvB,eAAe,GAEhB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EACzB,sBAAsB,EACtB,yBAAyB,GAG1B,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GAExB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,GAExB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,EAC3B,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,UAAU,CAAC;AA+BlB,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,sBAAsB,EACtB,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE1D,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AA+BjB;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAsE1D;AAED,wBAAgB,eAAe,IAAI,sBAAsB,CAGxD;AAED,wBAAgB,iBAAiB,IAAI,sBAAsB,GAAG,IAAI,CAEjE;AAED,wBAAgB,mBAAmB,IAAI,YAAY,CAGlD;AAED,wBAAgB,eAAe,IAAI,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAGzD;AAED;;sBAEsB;AACtB,wBAAgB,iBAAiB,IAAI,iBAAiB,CAErD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,IAAI,CAezE;AAED,8EAA8E;AAC9E,wBAAgB,cAAc,IAAI,IAAI,CAKrC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAG1D,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,kBAAkB,EAClB,sBAAsB,EAEvB,MAAM,SAAS,CAAC;AA+BjB;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CA6E1D;AAED,wBAAgB,eAAe,IAAI,sBAAsB,CAGxD;AAED,wBAAgB,iBAAiB,IAAI,sBAAsB,GAAG,IAAI,CAEjE;AAED,wBAAgB,mBAAmB,IAAI,YAAY,CAGlD;AAED,wBAAgB,eAAe,IAAI,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAGzD;AAED;;sBAEsB;AACtB,wBAAgB,iBAAiB,IAAI,iBAAiB,CAErD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,IAAI,CAezE;AAED,8EAA8E;AAC9E,wBAAgB,cAAc,IAAI,IAAI,CAKrC"}
package/dist/init.js CHANGED
@@ -12,6 +12,7 @@
12
12
  // No Noop default. No InMemory default. Per R1.
13
13
  import { ApprovalNotInitialized, ApproverRoleNotInCatalog } from "./errors";
14
14
  import { KindRegistry, RequesterRegistry } from "./kinds";
15
+ import { DEFAULT_OUTBOX_TABLE_NAME } from "./outbox";
15
16
  import { validateServiceName } from "./validation";
16
17
  import { DEFAULT_CONSUMER_LEASE_SECONDS, DEFAULT_CONSUMER_MAX_RETRIES, DEFAULT_EXPIRY_SECONDS, } from "./types";
17
18
  import { TaskTrackingGrpcClient } from "./task-tracking-client";
@@ -60,19 +61,26 @@ export function initApproval(cfg) {
60
61
  if (!cfg.pgPool && !cfg.dbRls) {
61
62
  throw new TypeError("initApproval: either pgPool or dbRls must be provided");
62
63
  }
63
- if (!cfg.taskServiceClient &&
64
- (!cfg.taskServiceUrl || cfg.taskServiceUrl.trim() === "")) {
65
- throw new TypeError("initApproval: either taskServiceUrl (real grpc) or taskServiceClient (test override) must be provided");
66
- }
64
+ // Since D237 (v0.3.0) the request flow no longer calls CreateTask (the
65
+ // begin-event is a same-tx outbox emit), so neither taskServiceUrl nor
66
+ // taskServiceClient is REQUIRED. They stay OPTIONAL wired only for
67
+ // NON-approval direct task creation (D237 Rule 5). Do NOT throw if absent.
67
68
  if (!cfg.membershipRolesLookup) {
68
69
  throw new TypeError("initApproval: membershipRolesLookup is required (used for self-action exception evaluation)");
69
70
  }
70
71
  const pgPool = cfg.dbRls ? cfg.dbRls.pool : cfg.pgPool;
71
72
  if (!pgPool)
72
73
  throw new TypeError("initApproval: pgPool resolution failed");
73
- const taskServiceClient = cfg.taskServiceClient
74
- ? cfg.taskServiceClient
75
- : new TaskTrackingGrpcClient({
74
+ // Resolve the task client ONLY when the service actually wired one (D237
75
+ // Rule 5 — kept available for NON-approval direct CreateTask). When neither
76
+ // a client nor a URL is provided, it stays `undefined`; the request flow no
77
+ // longer needs it (begin-event is a same-tx outbox emit).
78
+ let taskServiceClient;
79
+ if (cfg.taskServiceClient) {
80
+ taskServiceClient = cfg.taskServiceClient;
81
+ }
82
+ else if (cfg.taskServiceUrl && cfg.taskServiceUrl.trim() !== "") {
83
+ taskServiceClient = new TaskTrackingGrpcClient({
76
84
  url: cfg.taskServiceUrl,
77
85
  sourceModule: cfg.serviceName,
78
86
  // Production wiring — adopters layer grpc-auth S2S envelope +
@@ -83,12 +91,16 @@ export function initApproval(cfg) {
83
91
  credentials: cfg.taskClientOptions?.credentials,
84
92
  deadlineMs: cfg.taskClientOptions?.deadlineMs,
85
93
  });
94
+ }
86
95
  RESOLVED = {
87
96
  serviceName: cfg.serviceName,
88
97
  pgPool,
89
98
  dbRls: cfg.dbRls,
90
99
  redis: cfg.redis,
91
100
  taskServiceClient,
101
+ outboxTableName: cfg.outboxTableName && cfg.outboxTableName.trim() !== ""
102
+ ? cfg.outboxTableName
103
+ : DEFAULT_OUTBOX_TABLE_NAME,
92
104
  membershipRolesLookup: cfg.membershipRolesLookup,
93
105
  defaultExpirySeconds: cfg.defaultExpirySeconds ?? DEFAULT_EXPIRY_SECONDS,
94
106
  consumerLeaseSeconds: cfg.consumerLeaseSeconds ?? DEFAULT_CONSUMER_LEASE_SECONDS,
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import type { DeferredActionPayloadSummary, SqlTxExecutor } from "./types";
2
+ /** Aggregate kind written onto every approval begin-event outbox row. */
3
+ export declare const APPROVAL_OUTBOX_AGGREGATE_KIND = "ApprovalRequest";
4
+ /** Default outbox table name (matches @nodii/outbox-dispatcher's default). */
5
+ export declare const DEFAULT_OUTBOX_TABLE_NAME = "outbox";
6
+ /** Structured begin-event payload carried in the outbox row's `payload` JSONB.
7
+ * Carries the same D231/D236 provenance the prior CreateTask begin-event did,
8
+ * PLUS `tenant_id` (no column on the outbox table) and the in-tx occurred-at. */
9
+ export interface ApprovalBeginEventPayload {
10
+ /** Fully-qualified kind (`<owner>.<resource>.<verb>`). */
11
+ kind: string;
12
+ /** Requester service (this service). */
13
+ requester_service: string;
14
+ /** Owner service (parsed from `kind` before the first `.`). */
15
+ owner_service: string;
16
+ /** The requester-local deferred_action row id (== aggregate_id). */
17
+ deferred_action_id: string;
18
+ /** Caller-supplied idempotency key (consumer dedupe + replay guard). */
19
+ idempotency_key: string;
20
+ /** Tenant id — lives in the payload because the outbox table has no column. */
21
+ tenant_id: string;
22
+ /** Requester membership id (begin-event provenance). */
23
+ requester_membership_id: string;
24
+ /** Owner-resolved fallback approver role (empty for cross-owner). */
25
+ default_approver_role: string;
26
+ /** Requester-side expiry fallback (task-tracking may override via GetPolicy). */
27
+ default_expires_in_seconds: number;
28
+ /** D236 validated non-PII preview summary, when supplied. */
29
+ deferred_action_payload_summary?: DeferredActionPayloadSummary;
30
+ /** Wall-clock ms when the row was written inside the requester's tx. */
31
+ occurred_at_in_requester_tx_ms: number;
32
+ /** Caller metadata passed through to the begin-event (non-lib-mandated). */
33
+ metadata?: Record<string, unknown>;
34
+ }
35
+ export interface InsertBeginEventOutboxRowInput {
36
+ /** Resolved outbox table name. */
37
+ tableName: string;
38
+ /** aggregate_id == deferred_action_id. */
39
+ aggregateId: string;
40
+ /** `<requester_service>.approval.requested.v1`. */
41
+ topic: string;
42
+ /** The structured begin-event payload. */
43
+ payload: ApprovalBeginEventPayload;
44
+ }
45
+ /** Same-tx INSERT of the begin-event outbox row.
46
+ *
47
+ * MUST run inside the SAME `pgPool.begin` transaction that inserts the
48
+ * deferred_action row (D237 Rule 3 — same-tx atomicity). The drainer-managed
49
+ * columns (dispatched_at, stream_id, publish_attempts, last_error,
50
+ * last_attempt_at) are left to their table defaults; only the producer-owned
51
+ * columns are written. Returns the row's transport `id` + `event_id` so the
52
+ * caller can surface the begin-event id back to the requester. */
53
+ export declare function insertBeginEventOutboxRow(tx: SqlTxExecutor, input: InsertBeginEventOutboxRowInput): Promise<{
54
+ id: string;
55
+ eventId: string;
56
+ }>;
57
+ /** `<requester_service>.approval.requested.v1` — the begin-event topic. */
58
+ export declare function approvalRequestedTopic(requesterService: string): string;
59
+ //# sourceMappingURL=outbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outbox.d.ts","sourceRoot":"","sources":["../src/outbox.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,4BAA4B,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE3E,yEAAyE;AACzE,eAAO,MAAM,8BAA8B,oBAAoB,CAAC;AAEhE,8EAA8E;AAC9E,eAAO,MAAM,yBAAyB,WAAW,CAAC;AAoBlD;;kFAEkF;AAClF,MAAM,WAAW,yBAAyB;IACxC,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,+DAA+D;IAC/D,aAAa,EAAE,MAAM,CAAC;IACtB,oEAAoE;IACpE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,wEAAwE;IACxE,eAAe,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,uBAAuB,EAAE,MAAM,CAAC;IAChC,qEAAqE;IACrE,qBAAqB,EAAE,MAAM,CAAC;IAC9B,iFAAiF;IACjF,0BAA0B,EAAE,MAAM,CAAC;IACnC,6DAA6D;IAC7D,+BAA+B,CAAC,EAAE,4BAA4B,CAAC;IAC/D,wEAAwE;IACxE,8BAA8B,EAAE,MAAM,CAAC;IACvC,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,8BAA8B;IAC7C,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,0CAA0C;IAC1C,OAAO,EAAE,yBAAyB,CAAC;CACpC;AAED;;;;;;;mEAOmE;AACnE,wBAAsB,yBAAyB,CAC7C,EAAE,EAAE,aAAa,EACjB,KAAK,EAAE,8BAA8B,GACpC,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAuB1C;AAED,2EAA2E;AAC3E,wBAAgB,sBAAsB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAEvE"}
package/dist/outbox.js ADDED
@@ -0,0 +1,68 @@
1
+ // Begin-event transactional-outbox emit per D237 + 01-comms § 9.1.
2
+ //
3
+ // D237 LOCKED (2026-06-05): `requestApproval`'s begin-event MUST be emitted
4
+ // via the requester service's transactional outbox — NOT a synchronous direct
5
+ // gRPC `TaskService.CreateTask`. The deferred_action row + the outbox row
6
+ // commit in the SAME transaction (same-tx atomicity); the service's
7
+ // @nodii/outbox-dispatcher drainer (01-comms § 9.2) publishes the row to
8
+ // `<svc>.approval.requested.v1`, where task-tracking's approval-runtime
9
+ // consumer projects it (D232 + R2). The library makes ZERO gRPC calls from
10
+ // the request flow.
11
+ //
12
+ // The outbox row targets the canonical `outbox` table from
13
+ // @nodii/outbox-dispatcher (ts/outbox-dispatcher/src/migrations/
14
+ // 001-outbox-dispatcher.sql). NOTE: that table has NO `tenant_id` column —
15
+ // `tenant_id` rides INSIDE the `payload` JSONB, not as a column.
16
+ import { randomUUID } from "node:crypto";
17
+ import { uuidv7 } from "./uuid";
18
+ /** Aggregate kind written onto every approval begin-event outbox row. */
19
+ export const APPROVAL_OUTBOX_AGGREGATE_KIND = "ApprovalRequest";
20
+ /** Default outbox table name (matches @nodii/outbox-dispatcher's default). */
21
+ export const DEFAULT_OUTBOX_TABLE_NAME = "outbox";
22
+ /**
23
+ * Safe SQL identifier: optional `schema.` prefix + a table name, each a plain
24
+ * unquoted identifier. The outbox table name is config-driven (initApproval's
25
+ * `outboxTableName`) and interpolated into the INSERT (a table name cannot be a
26
+ * bound parameter), so we validate it as a strict identifier to keep it from
27
+ * being an injection vector if a service mis-configures it.
28
+ */
29
+ const SAFE_SQL_IDENTIFIER = /^[A-Za-z_][A-Za-z0-9_]*(\.[A-Za-z_][A-Za-z0-9_]*)?$/;
30
+ function assertSafeOutboxTableName(tableName) {
31
+ if (!SAFE_SQL_IDENTIFIER.test(tableName)) {
32
+ throw new Error(`approval: outboxTableName '${tableName}' is not a valid SQL identifier (expected [schema.]table of letters/digits/underscore)`);
33
+ }
34
+ }
35
+ /** Same-tx INSERT of the begin-event outbox row.
36
+ *
37
+ * MUST run inside the SAME `pgPool.begin` transaction that inserts the
38
+ * deferred_action row (D237 Rule 3 — same-tx atomicity). The drainer-managed
39
+ * columns (dispatched_at, stream_id, publish_attempts, last_error,
40
+ * last_attempt_at) are left to their table defaults; only the producer-owned
41
+ * columns are written. Returns the row's transport `id` + `event_id` so the
42
+ * caller can surface the begin-event id back to the requester. */
43
+ export async function insertBeginEventOutboxRow(tx, input) {
44
+ // id: a fresh transport id (uuid v4) — matches outbox-dispatcher's per-row
45
+ // id convention; the dedupe key is `event_id` (uuid v7), not `id`.
46
+ const id = randomUUID();
47
+ const eventId = uuidv7();
48
+ assertSafeOutboxTableName(input.tableName);
49
+ await tx.unsafe(`INSERT INTO ${input.tableName}
50
+ (id, event_id, aggregate_kind, aggregate_id, source_entity_version,
51
+ topic, payload)
52
+ VALUES ($1, $2, $3, $4, $5, $6, $7)`, [
53
+ id,
54
+ eventId,
55
+ APPROVAL_OUTBOX_AGGREGATE_KIND,
56
+ input.aggregateId,
57
+ // source_entity_version — a freshly-created aggregate is version 1.
58
+ 1,
59
+ input.topic,
60
+ JSON.stringify(input.payload),
61
+ ]);
62
+ return { id, eventId };
63
+ }
64
+ /** `<requester_service>.approval.requested.v1` — the begin-event topic. */
65
+ export function approvalRequestedTopic(requesterService) {
66
+ return `${requesterService}.approval.requested.v1`;
67
+ }
68
+ //# sourceMappingURL=outbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outbox.js","sourceRoot":"","sources":["../src/outbox.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,0EAA0E;AAC1E,oEAAoE;AACpE,yEAAyE;AACzE,wEAAwE;AACxE,2EAA2E;AAC3E,oBAAoB;AACpB,EAAE;AACF,2DAA2D;AAC3D,iEAAiE;AACjE,2EAA2E;AAC3E,iEAAiE;AAEjE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,yEAAyE;AACzE,MAAM,CAAC,MAAM,8BAA8B,GAAG,iBAAiB,CAAC;AAEhE,8EAA8E;AAC9E,MAAM,CAAC,MAAM,yBAAyB,GAAG,QAAQ,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,mBAAmB,GACvB,qDAAqD,CAAC;AAExD,SAAS,yBAAyB,CAAC,SAAiB;IAClD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CACb,8BAA8B,SAAS,wFAAwF,CAChI,CAAC;IACJ,CAAC;AACH,CAAC;AA2CD;;;;;;;mEAOmE;AACnE,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,EAAiB,EACjB,KAAqC;IAErC,2EAA2E;IAC3E,mEAAmE;IACnE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC;IACzB,yBAAyB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,EAAE,CAAC,MAAM,CACb,eAAe,KAAK,CAAC,SAAS;;;yCAGO,EACrC;QACE,EAAE;QACF,OAAO;QACP,8BAA8B;QAC9B,KAAK,CAAC,WAAW;QACjB,oEAAoE;QACpE,CAAC;QACD,KAAK,CAAC,KAAK;QACX,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;KAC9B,CACF,CAAC;IACF,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;AACzB,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,sBAAsB,CAAC,gBAAwB;IAC7D,OAAO,GAAG,gBAAgB,wBAAwB,CAAC;AACrD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAMV,mBAAmB,EACnB,qBAAqB,EAEtB,MAAM,SAAS,CAAC;AAGjB,wBAAsB,eAAe,CACnC,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,qBAAqB,CAAC,CA0DhC"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAIV,mBAAmB,EACnB,qBAAqB,EAEtB,MAAM,SAAS,CAAC;AAGjB,wBAAsB,eAAe,CACnC,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,qBAAqB,CAAC,CA0DhC"}
package/dist/request.js CHANGED
@@ -14,6 +14,7 @@ import { wrapForSagaStep } from "@nodii/idempotency";
14
14
  import { insertDeferredAction, markFailed } from "./deferred-actions";
15
15
  import { HandlerNotRegistered, IdempotencyKeyRequired, UndeclaredRequesterKind, } from "./errors";
16
16
  import { requireApproval, requireHandlers, requireKindRegistry, requesterRegistry, } from "./init";
17
+ import { approvalRequestedTopic, insertBeginEventOutboxRow } from "./outbox";
17
18
  import { resolvePolicy } from "./policies";
18
19
  import { validatePreviewSummary } from "./preview-validation";
19
20
  import { emitAudit, inc, observe } from "./telemetry-shim";
@@ -150,6 +151,8 @@ async function runCanonicalSequence(cfg, def, opts, previewSummary) {
150
151
  return {
151
152
  approvalId: row.id,
152
153
  taskId: null,
154
+ // No begin-event on the short-circuit path — no task is created.
155
+ beginEventId: null,
153
156
  status: "opt_in_disabled_executed",
154
157
  };
155
158
  }
@@ -190,13 +193,25 @@ async function runCanonicalSequence(cfg, def, opts, previewSummary) {
190
193
  return {
191
194
  approvalId: row.id,
192
195
  taskId: null,
196
+ // No begin-event on the short-circuit path — no task is created.
197
+ beginEventId: null,
193
198
  status: "self_action_executed",
194
199
  };
195
200
  }
196
201
  }
197
- // [5] Persist deferred-action row + audit emit (one tx)
202
+ // [5] Persist deferred-action row + emit the begin-event into the requester's
203
+ // transactional outbox — IN THE SAME TRANSACTION (D237 Rule 3 + 01-comms
204
+ // § 9.1). Same-tx atomicity: if the outbox insert fails (or commit
205
+ // fails), the deferred_action row rolls back too — no half-state. NO
206
+ // synchronous gRPC CreateTask is called from the request flow anymore;
207
+ // the service's @nodii/outbox-dispatcher drainer publishes the row to
208
+ // `<svc>.approval.requested.v1` (01-comms § 9.2), where task-tracking's
209
+ // approval-runtime consumer projects it (D232 + R2).
210
+ // For an owned kind the owner IS the requester (D231 Rule 1).
211
+ const ownerService = ownerOf(def.kind);
212
+ const expirySeconds = opts.expirySeconds ?? policy.expirySeconds ?? cfg.defaultExpirySeconds;
198
213
  const correlationId = randomUUID();
199
- const row = await pg.begin(async (tx) => {
214
+ const { row, beginEventId } = await pg.begin(async (tx) => {
200
215
  const inserted = await insertDeferredAction(cfg, tx, {
201
216
  tenantId: opts.tenantId,
202
217
  kind: def.kind,
@@ -208,10 +223,31 @@ async function runCanonicalSequence(cfg, def, opts, previewSummary) {
208
223
  metadata: { ...(opts.metadata ?? {}), ...summaryMeta },
209
224
  auditCorrelationId: correlationId,
210
225
  });
211
- return inserted;
226
+ // Same-tx begin-event outbox emit (D237). tenant_id rides INSIDE payload —
227
+ // the canonical `outbox` table has no tenant_id column.
228
+ const { eventId } = await insertBeginEventOutboxRow(tx, {
229
+ tableName: cfg.outboxTableName,
230
+ aggregateId: inserted.id,
231
+ topic: approvalRequestedTopic(cfg.serviceName),
232
+ payload: {
233
+ kind: def.kind,
234
+ requester_service: cfg.serviceName,
235
+ owner_service: ownerService,
236
+ deferred_action_id: inserted.id,
237
+ idempotency_key: opts.idempotencyKey,
238
+ tenant_id: opts.tenantId,
239
+ requester_membership_id: opts.requesterMembershipId,
240
+ default_approver_role: policy.approverRole,
241
+ default_expires_in_seconds: expirySeconds,
242
+ ...(previewSummary
243
+ ? { deferred_action_payload_summary: previewSummary }
244
+ : {}),
245
+ occurred_at_in_requester_tx_ms: Date.now(),
246
+ ...(opts.metadata ? { metadata: opts.metadata } : {}),
247
+ },
248
+ });
249
+ return { row: inserted, beginEventId: eventId };
212
250
  });
213
- // For an owned kind the owner IS the requester (D231 Rule 1).
214
- const ownerService = ownerOf(def.kind);
215
251
  emitAudit({
216
252
  tenantId: opts.tenantId,
217
253
  action: `${cfg.serviceName}.approval.requested`,
@@ -227,70 +263,11 @@ async function runCanonicalSequence(cfg, def, opts, previewSummary) {
227
263
  // D231 begin-event cross-owner provenance fields.
228
264
  requester_service: cfg.serviceName,
229
265
  owner_service: ownerService,
266
+ // D237 — the begin-event is now an outbox row, not a CreateTask.
267
+ begin_event_id: beginEventId,
268
+ begin_event_transport: "outbox",
230
269
  },
231
270
  });
232
- // [6] gRPC CreateTask
233
- const expirySeconds = opts.expirySeconds ?? policy.expirySeconds ?? cfg.defaultExpirySeconds;
234
- const expiresAt = new Date(Date.now() + expirySeconds * 1000).toISOString();
235
- const taskRequest = {
236
- tenantId: opts.tenantId,
237
- kind: `approval:${def.kind}`,
238
- title: titleFor(def, opts.metadata ?? {}),
239
- description: def.description,
240
- assigneeRole: policy.approverRole,
241
- // Caller metadata first; lib-mandated fields last so they win
242
- // (task-tracking's task.metadata payload — the D231 begin-event).
243
- metadata: {
244
- ...(opts.metadata ?? {}),
245
- ...summaryMeta,
246
- approvalId: row.id,
247
- deferredActionId: row.id,
248
- kind: def.kind,
249
- requesterMembershipId: opts.requesterMembershipId,
250
- thresholdEvalContext: policy.thresholdParams,
251
- // D231 begin-event cross-owner provenance fields (Rule 1 + Rule 3:
252
- // task-tracking parses owner_service from the kind to call GetPolicy).
253
- requester_service: cfg.serviceName,
254
- owner_service: ownerService,
255
- },
256
- expiresAt,
257
- idempotencyKey: opts.idempotencyKey,
258
- sourceModule: cfg.serviceName,
259
- actionButton: opts.actionButton ?? {
260
- label: def.actionButtonLabel ?? "Review",
261
- moduleKey: cfg.serviceName,
262
- actionKey: `approval:${def.shortKind}`,
263
- params: { approvalId: row.id },
264
- },
265
- };
266
- let taskResponse;
267
- try {
268
- taskResponse = await cfg.taskServiceClient.createTask(taskRequest);
269
- }
270
- catch (err) {
271
- emitAudit({
272
- tenantId: opts.tenantId,
273
- action: `${cfg.serviceName}.approval.task_creation_failed`,
274
- targetKind: "deferred_action",
275
- targetId: row.id,
276
- metadata: {
277
- kind: def.kind,
278
- error: err instanceof Error ? err.message : String(err),
279
- },
280
- });
281
- inc({
282
- name: "approval_task_creation_failed_total",
283
- family: "request_handler",
284
- labels: {
285
- service: cfg.serviceName,
286
- kind: def.kind,
287
- reason: classifyError(err),
288
- },
289
- });
290
- throw err;
291
- }
292
- // [7] Persist task_id back
293
- await pg.unsafe(`UPDATE ${cfg.serviceName}_deferred_actions SET task_id = $1 WHERE id = $2`, [taskResponse.taskId, row.id]);
294
271
  inc({
295
272
  name: "approval_requested_total",
296
273
  family: "request_handler",
@@ -302,7 +279,10 @@ async function runCanonicalSequence(cfg, def, opts, previewSummary) {
302
279
  });
303
280
  return {
304
281
  approvalId: row.id,
305
- taskId: taskResponse.taskId,
282
+ // D237 — no synchronous task id at request time; task-tracking mints the
283
+ // task asynchronously from the drained outbox row.
284
+ taskId: null,
285
+ beginEventId,
306
286
  status: "task_created",
307
287
  };
308
288
  }
@@ -325,17 +305,51 @@ async function runCrossOwnerSequence(cfg, def, opts, previewSummary) {
325
305
  const summaryMeta = previewSummary
326
306
  ? { deferred_action_payload_summary: previewSummary }
327
307
  : {};
328
- // [5] Persist deferred-action row to the REQUESTER's local table + audit.
308
+ // Expiry defaults to the requester's configured fallback; task-tracking
309
+ // overrides from the owner policy when it drains the begin-event.
310
+ const expirySeconds = opts.expirySeconds ?? cfg.defaultExpirySeconds;
311
+ // [5] Persist deferred-action row to the REQUESTER's local table AND emit the
312
+ // begin-event into the requester's outbox — SAME TX (D237 Rule 3). The
313
+ // owner resolves approverRole + expiry when its consumer drains the row
314
+ // (Rule 3) — the requester carries an EMPTY default_approver_role. NO
315
+ // gRPC CreateTask is called.
329
316
  const correlationId = randomUUID();
330
- const row = await cfg.pgPool.begin((tx) => insertDeferredAction(cfg, tx, {
331
- tenantId: opts.tenantId,
332
- kind: def.kind,
333
- requesterMembershipId: opts.requesterMembershipId,
334
- deferredActionPayload: opts.deferredActionPayload,
335
- idempotencyKey: opts.idempotencyKey,
336
- metadata: { ...(opts.metadata ?? {}), ...summaryMeta },
337
- auditCorrelationId: correlationId,
338
- }));
317
+ const { row, beginEventId } = await cfg.pgPool.begin(async (tx) => {
318
+ const inserted = await insertDeferredAction(cfg, tx, {
319
+ tenantId: opts.tenantId,
320
+ kind: def.kind,
321
+ requesterMembershipId: opts.requesterMembershipId,
322
+ deferredActionPayload: opts.deferredActionPayload,
323
+ idempotencyKey: opts.idempotencyKey,
324
+ metadata: { ...(opts.metadata ?? {}), ...summaryMeta },
325
+ auditCorrelationId: correlationId,
326
+ });
327
+ const { eventId } = await insertBeginEventOutboxRow(tx, {
328
+ tableName: cfg.outboxTableName,
329
+ aggregateId: inserted.id,
330
+ // Topic is the REQUESTER service's name (D237 Rule 3) — the cross-owner
331
+ // owner is carried inside the payload's owner_service, not the topic.
332
+ topic: approvalRequestedTopic(requesterService),
333
+ payload: {
334
+ kind: def.kind,
335
+ requester_service: requesterService,
336
+ owner_service: ownerService,
337
+ deferred_action_id: inserted.id,
338
+ idempotency_key: opts.idempotencyKey,
339
+ tenant_id: opts.tenantId,
340
+ requester_membership_id: opts.requesterMembershipId,
341
+ // Owner-resolved — empty default for a cross-owner kind.
342
+ default_approver_role: "",
343
+ default_expires_in_seconds: expirySeconds,
344
+ ...(previewSummary
345
+ ? { deferred_action_payload_summary: previewSummary }
346
+ : {}),
347
+ occurred_at_in_requester_tx_ms: Date.now(),
348
+ ...(opts.metadata ? { metadata: opts.metadata } : {}),
349
+ },
350
+ });
351
+ return { row: inserted, beginEventId: eventId };
352
+ });
339
353
  emitAudit({
340
354
  tenantId: opts.tenantId,
341
355
  action: `${requesterService}.approval.requested`,
@@ -349,72 +363,10 @@ async function runCrossOwnerSequence(cfg, def, opts, previewSummary) {
349
363
  audit_correlation_id: correlationId,
350
364
  requester_service: requesterService,
351
365
  owner_service: ownerService,
366
+ begin_event_id: beginEventId,
367
+ begin_event_transport: "outbox",
352
368
  },
353
369
  });
354
- // [6] gRPC CreateTask. The owner resolves approverRole + expiry via
355
- // GetPolicy (task-tracking, Rule 3) — the requester does NOT set
356
- // assigneeRole from a local policy. Expiry defaults to the requester's
357
- // configured fallback; task-tracking overrides from the owner policy.
358
- const expirySeconds = opts.expirySeconds ?? cfg.defaultExpirySeconds;
359
- const expiresAt = new Date(Date.now() + expirySeconds * 1000).toISOString();
360
- const taskRequest = {
361
- tenantId: opts.tenantId,
362
- kind: `approval:${def.kind}`,
363
- title: titleFor(def, opts.metadata ?? {}),
364
- description: def.description,
365
- // No local approverRole for a cross-owner kind — task-tracking sets the
366
- // assignee from the owner's GetPolicy. Empty = "owner-resolved".
367
- assigneeRole: "",
368
- metadata: {
369
- ...(opts.metadata ?? {}),
370
- ...summaryMeta,
371
- approvalId: row.id,
372
- deferredActionId: row.id,
373
- kind: def.kind,
374
- requesterMembershipId: opts.requesterMembershipId,
375
- // D231 begin-event cross-owner provenance fields.
376
- requester_service: requesterService,
377
- owner_service: ownerService,
378
- },
379
- expiresAt,
380
- idempotencyKey: opts.idempotencyKey,
381
- sourceModule: requesterService,
382
- actionButton: opts.actionButton ?? {
383
- label: def.actionButtonLabel ?? "Review",
384
- moduleKey: requesterService,
385
- actionKey: `approval:${def.shortKind}`,
386
- params: { approvalId: row.id },
387
- },
388
- };
389
- let taskResponse;
390
- try {
391
- taskResponse = await cfg.taskServiceClient.createTask(taskRequest);
392
- }
393
- catch (err) {
394
- emitAudit({
395
- tenantId: opts.tenantId,
396
- action: `${requesterService}.approval.task_creation_failed`,
397
- targetKind: "deferred_action",
398
- targetId: row.id,
399
- metadata: {
400
- kind: def.kind,
401
- owner_service: ownerService,
402
- error: err instanceof Error ? err.message : String(err),
403
- },
404
- });
405
- inc({
406
- name: "approval_task_creation_failed_total",
407
- family: "request_handler",
408
- labels: {
409
- service: requesterService,
410
- kind: def.kind,
411
- reason: classifyError(err),
412
- },
413
- });
414
- throw err;
415
- }
416
- // [7] Persist task_id back.
417
- await cfg.pgPool.unsafe(`UPDATE ${requesterService}_deferred_actions SET task_id = $1 WHERE id = $2`, [taskResponse.taskId, row.id]);
418
370
  inc({
419
371
  name: "approval_requested_total",
420
372
  family: "request_handler",
@@ -426,7 +378,8 @@ async function runCrossOwnerSequence(cfg, def, opts, previewSummary) {
426
378
  });
427
379
  return {
428
380
  approvalId: row.id,
429
- taskId: taskResponse.taskId,
381
+ taskId: null,
382
+ beginEventId,
430
383
  status: "task_created",
431
384
  };
432
385
  }
@@ -502,22 +455,6 @@ function syntheticSagaId(serviceName, kind, idempotencyKey) {
502
455
  h.update(idempotencyKey);
503
456
  return `synthetic:${serviceName}:${h.digest("hex").slice(0, 32)}`;
504
457
  }
505
- function titleFor(def, metadata) {
506
- if (typeof metadata.title === "string" && metadata.title.length > 0) {
507
- return metadata.title;
508
- }
509
- return `Approve ${def.kind}`;
510
- }
511
- function classifyError(err) {
512
- if (err && typeof err === "object" && "message" in err) {
513
- const msg = String(err.message);
514
- if (msg.includes("UNAVAILABLE"))
515
- return "unavailable";
516
- if (msg.includes("FAILED_PRECONDITION"))
517
- return "failed_precondition";
518
- }
519
- return "unknown";
520
- }
521
458
  /** Shared finaliser when a short-circuit (opt-in disabled / self-action)
522
459
  * handler throws. Mirrors the consumer.ts apply-tx failure path —
523
460
  * marks the row failed + emits the failure audit + bumps the metric.
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../src/request.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -152,7 +152,22 @@ export interface RequestApprovalOpts {
152
152
  export type RequestApprovalResultStatus = "task_created" | "self_action_executed" | "opt_in_disabled_executed" | "duplicate";
153
153
  export interface RequestApprovalResult {
154
154
  approvalId: string;
155
+ /**
156
+ * Deprecated as a task-tracking task id. Since D237 (v0.3.0) the begin-event
157
+ * is a same-tx outbox emit, not a synchronous `CreateTask`, so there is no
158
+ * task id at request time — task-tracking mints the task asynchronously when
159
+ * its consumer drains `<svc>.approval.requested.v1`. Always `null` on the
160
+ * `task_created` path now; retained for back-compat with the v0.2.x shape.
161
+ * Use {@link RequestApprovalResult.beginEventId} for the outbox event id.
162
+ */
155
163
  taskId: string | null;
164
+ /**
165
+ * The begin-event outbox row's `event_id` (uuid v7) emitted on the
166
+ * `task_created` path (D237). `null` on the short-circuit paths
167
+ * (`self_action_executed` / `opt_in_disabled_executed`) and on `duplicate`
168
+ * replays where the prior result is returned from the idempotency cache.
169
+ */
170
+ beginEventId: string | null;
156
171
  status: RequestApprovalResultStatus;
157
172
  }
158
173
  /** Membership lookup function — service provides per its own RBAC store. */
@@ -265,10 +280,25 @@ export interface InitApprovalConfig {
265
280
  /** Optional db-rls handle (when wired). Both can coexist; rls wins. */
266
281
  dbRls?: DbRlsLike;
267
282
  redis: IoRedis;
268
- /** Task-tracking gRPC URL. Ignored if `taskServiceClient` is provided. */
283
+ /**
284
+ * Task-tracking gRPC URL. OPTIONAL since D237 (v0.3.0) — `requestApproval`
285
+ * no longer calls `CreateTask` (the begin-event is a same-tx outbox emit),
286
+ * so the request flow does not need it. Still wired (when provided) so a
287
+ * service can use `TaskService.CreateTask` for NON-approval direct task
288
+ * creation (D237 Rule 5). Ignored if `taskServiceClient` is provided.
289
+ */
269
290
  taskServiceUrl?: string;
270
- /** Test-only override — supersedes `taskServiceUrl`. */
291
+ /**
292
+ * Injectable task-tracking client. OPTIONAL since D237 (v0.3.0) — see
293
+ * `taskServiceUrl`. Supersedes `taskServiceUrl` when both are present.
294
+ */
271
295
  taskServiceClient?: TaskServiceClient;
296
+ /**
297
+ * Override the outbox table name the begin-event is INSERTed into (D237 +
298
+ * 01-comms § 9.1). Defaults to `'outbox'` (the @nodii/outbox-dispatcher
299
+ * default). Set this when the requester's outbox table is named differently.
300
+ */
301
+ outboxTableName?: string;
272
302
  /** Production knob: pass through to the internally-constructed
273
303
  * `TaskTrackingGrpcClient` when `taskServiceUrl` is set. This is how
274
304
  * adopting services layer in `@nodii/grpc-auth`'s S2S interceptor +
@@ -309,7 +339,15 @@ export interface ResolvedApprovalConfig {
309
339
  pgPool: SqlPoolExecutor;
310
340
  dbRls: DbRlsLike | undefined;
311
341
  redis: IoRedis;
312
- taskServiceClient: TaskServiceClient;
342
+ /**
343
+ * Resolved task-tracking client, or `undefined` since D237 — the request
344
+ * flow no longer requires it (begin-event is an outbox emit). Present only
345
+ * when the service wired `taskServiceUrl` / `taskServiceClient` for
346
+ * NON-approval direct task creation (D237 Rule 5).
347
+ */
348
+ taskServiceClient: TaskServiceClient | undefined;
349
+ /** Resolved outbox table name for the begin-event emit (default `outbox`). */
350
+ outboxTableName: string;
313
351
  membershipRolesLookup: MembershipRolesLookup;
314
352
  defaultExpirySeconds: number;
315
353
  consumerLeaseSeconds: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,EAAE;AACF,sEAAsE;AACtE,mDAAmD;AAsBnD,6EAA6E;AAC7E,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,UAAU;IACV,QAAQ;IACR,KAAK;IACL,OAAO;IACP,MAAM;CACE,CAAC;AA2XX,qDAAqD;AACrD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;AAC9D,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AACjD,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,MAAM"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,EAAE;AACF,sEAAsE;AACtE,mDAAmD;AAsBnD,6EAA6E;AAC7E,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,UAAU;IACV,QAAQ;IACR,KAAK;IACL,OAAO;IACP,MAAM;CACE,CAAC;AAiaX,qDAAqD;AACrD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;AAC9D,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AACjD,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAC9C,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,MAAM"}
package/dist/uuid.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare function uuidv7(): string;
2
+ //# sourceMappingURL=uuid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../src/uuid.ts"],"names":[],"mappings":"AAOA,wBAAgB,MAAM,IAAI,MAAM,CA4B/B"}
package/dist/uuid.js ADDED
@@ -0,0 +1,33 @@
1
+ // UUIDv7 generator — RFC 9562. Inlined for self-containment, byte-parity
2
+ // with ts/outbox-dispatcher/src/uuid.ts + ts/replica-consumer/src/uuid.ts.
3
+ //
4
+ // Used for the begin-event outbox `event_id` (the consumer dedupe key) per
5
+ // D237 + 01-comms § 9.1. A time-ordered v7 id keeps the outbox naturally
6
+ // drain-ordered by `occurred_at`.
7
+ export function uuidv7() {
8
+ const ts = BigInt(Date.now());
9
+ const tsHex = ts.toString(16).padStart(12, "0");
10
+ const randBytes = new Uint8Array(10);
11
+ if (typeof crypto !== "undefined" && crypto.getRandomValues) {
12
+ crypto.getRandomValues(randBytes);
13
+ }
14
+ else {
15
+ // No Math.random fallback: `event_id` is the consumer dedupe key — weak
16
+ // entropy risks collisions. Fail loud rather than mint a low-entropy id.
17
+ // (The Node runtime this lib targets always has crypto.getRandomValues.)
18
+ throw new Error("uuidv7: no cryptographically-secure RNG available (crypto.getRandomValues)");
19
+ }
20
+ randBytes[0] = ((randBytes[0] ?? 0) & 0x0f) | 0x70; // version 7
21
+ randBytes[2] = ((randBytes[2] ?? 0) & 0x3f) | 0x80; // variant 10
22
+ let randHex = "";
23
+ for (const b of randBytes)
24
+ randHex += b.toString(16).padStart(2, "0");
25
+ return [
26
+ tsHex.slice(0, 8),
27
+ tsHex.slice(8, 12),
28
+ randHex.slice(0, 4),
29
+ randHex.slice(4, 8),
30
+ randHex.slice(8, 20),
31
+ ].join("-");
32
+ }
33
+ //# sourceMappingURL=uuid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uuid.js","sourceRoot":"","sources":["../src/uuid.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,2EAA2E;AAC3E,EAAE;AACF,2EAA2E;AAC3E,yEAAyE;AACzE,kCAAkC;AAElC,MAAM,UAAU,MAAM;IACpB,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAEhD,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IACrC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC5D,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,YAAY;IAChE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,aAAa;IAEjE,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,KAAK,MAAM,CAAC,IAAI,SAAS;QAAE,OAAO,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAEtE,OAAO;QACL,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACjB,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACnB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACnB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;KACrB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nodii/approval",
3
- "version": "0.2.1",
3
+ "version": "0.3.1",
4
4
  "description": "Approval library for the Nodii microservice stack — defineApprovalKinds + requestApproval + bindApprovalHandlers + per-tenant policies + completion-event consumer + migrate-gen. Polyglot ship: TS + Python + Go in parity. Spec: planning hub docKey=approval.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -40,7 +40,7 @@
40
40
  "devDependencies": {
41
41
  "@nodii/audit-chain": "0.4.2",
42
42
  "@nodii/grpc-auth": "0.5.1",
43
- "@nodii/idempotency": "0.3.1",
43
+ "@nodii/idempotency": "0.4.0",
44
44
  "@nodii/role-catalog": "0.1.7",
45
45
  "@nodii/telemetry": "0.5.2",
46
46
  "@grpc/grpc-js": "^1.13.0",
@@ -58,7 +58,7 @@
58
58
  "dependencies": {
59
59
  "@nodii/audit-chain": "0.4.2",
60
60
  "@nodii/grpc-auth": "0.5.1",
61
- "@nodii/idempotency": "0.3.1",
61
+ "@nodii/idempotency": "0.4.0",
62
62
  "@nodii/role-catalog": "0.1.7",
63
63
  "@nodii/telemetry": "0.5.2"
64
64
  }