@xemahq/decision-plane-nest 0.3.2 → 1.0.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.
- package/README.md +10 -2
- package/dist/decision-plane.client.d.ts +9 -6
- package/dist/decision-plane.client.d.ts.map +1 -1
- package/dist/decision-plane.client.js +16 -14
- package/dist/decision-plane.client.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +8 -5
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@ The **producer** side of the Xema human-decision primitive.
|
|
|
4
4
|
|
|
5
5
|
A service that needs a human to decide something opens an ask on `decision-api`
|
|
6
6
|
and acts when somebody answers. Every such service needs the same five calls,
|
|
7
|
-
the same envelope discipline and the same org
|
|
7
|
+
the same envelope discipline and the same org authority.
|
|
8
8
|
|
|
9
9
|
> ## ⚠️ THIS PACKAGE STILL HAS ZERO CONSUMERS. Re-measured 2026-09-07, across
|
|
10
10
|
> ## all 28 repositories enumerated from `.gitmodules`, at `origin/develop`.
|
|
@@ -54,11 +54,19 @@ the same envelope discipline and the same org header.
|
|
|
54
54
|
> repository-topology question, and it is the one blocker that genuinely
|
|
55
55
|
> stands.
|
|
56
56
|
|
|
57
|
+
Every method takes the **authority** the call runs under — a
|
|
58
|
+
`DecisionPlaneAuthority`, which is service-registry-nest's
|
|
59
|
+
`PeerCallCredentialSource` plus the `orgId` the call is about. In a service this
|
|
60
|
+
is the branded `PeerCallAuthority` from `@xemahq/xema-service-nest`
|
|
61
|
+
(`peerAuthorityForCaller`, `peerAuthorityUnderDurableDelegation`, `peerAuthorityForSweep`
|
|
62
|
+
or `peerAuthorityOwnGrant`). This package never sets the org header: the typed
|
|
63
|
+
client sets the bearer and `X-Xema-Org-Id` from the authority.
|
|
64
|
+
|
|
57
65
|
```ts
|
|
58
66
|
@Module({ imports: [DecisionPlaneModule], providers: [MyAskService] })
|
|
59
67
|
export class MyDecisionPlaneModule {}
|
|
60
68
|
|
|
61
|
-
const decision = await this.decisions.open(
|
|
69
|
+
const decision = await this.decisions.open(authority, {
|
|
62
70
|
idempotencyKey: contentHashOfTheThing,
|
|
63
71
|
kind: DecisionKind.CONFIRM,
|
|
64
72
|
title: 'Send the drafted reply?',
|
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
import { type TypedServiceClient } from '@xemahq/service-registry-nest';
|
|
1
|
+
import { type PeerCallCredentialSource, type TypedServiceClient } from '@xemahq/service-registry-nest';
|
|
2
2
|
import type { CloseDecisionRequest, DecisionView, OpenDecisionInput } from './wire';
|
|
3
3
|
export declare const DECISION_API_SERVICE = "decision-api";
|
|
4
|
+
export type DecisionPlaneAuthority = PeerCallCredentialSource & {
|
|
5
|
+
readonly orgId: string | null;
|
|
6
|
+
};
|
|
4
7
|
export declare class DecisionPlaneClient {
|
|
5
8
|
private readonly decisions;
|
|
6
9
|
private readonly logger;
|
|
7
10
|
constructor(decisions: TypedServiceClient);
|
|
8
|
-
open(
|
|
9
|
-
findByProducerRef(
|
|
10
|
-
read(
|
|
11
|
-
close(
|
|
12
|
-
withdraw(
|
|
11
|
+
open(authority: DecisionPlaneAuthority, request: OpenDecisionInput): Promise<DecisionView>;
|
|
12
|
+
findByProducerRef(authority: DecisionPlaneAuthority, producerRef: string): Promise<DecisionView | null>;
|
|
13
|
+
read(authority: DecisionPlaneAuthority, decisionId: string): Promise<DecisionView>;
|
|
14
|
+
close(authority: DecisionPlaneAuthority, decisionId: string, request: CloseDecisionRequest): Promise<void>;
|
|
15
|
+
withdraw(authority: DecisionPlaneAuthority, decisionId: string, reason: string): Promise<boolean>;
|
|
13
16
|
private translate;
|
|
14
17
|
}
|
|
15
18
|
//# sourceMappingURL=decision-plane.client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decision-plane.client.d.ts","sourceRoot":"","sources":["../src/decision-plane.client.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,+BAA+B,CAAC;AASvC,OAAO,KAAK,EACV,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EAClB,MAAM,QAAQ,CAAC;AAYhB,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"decision-plane.client.d.ts","sourceRoot":"","sources":["../src/decision-plane.client.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACxB,MAAM,+BAA+B,CAAC;AASvC,OAAO,KAAK,EACV,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EAClB,MAAM,QAAQ,CAAC;AAYhB,eAAO,MAAM,oBAAoB,iBAAiB,CAAC;AAUnD,MAAM,MAAM,sBAAsB,GAAG,wBAAwB,GAAG;IAC9D,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,CAAC;AAuGF,qBACa,mBAAmB;IAK5B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJ5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwC;gBAI5C,SAAS,EAAE,kBAAkB;IAW1C,IAAI,CACR,SAAS,EAAE,sBAAsB,EACjC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,YAAY,CAAC;IA8BlB,iBAAiB,CACrB,SAAS,EAAE,sBAAsB,EACjC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAuBzB,IAAI,CACR,SAAS,EAAE,sBAAsB,EACjC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,CAAC;IAoBlB,KAAK,CACT,SAAS,EAAE,sBAAsB,EACjC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,IAAI,CAAC;IAmCV,QAAQ,CACZ,SAAS,EAAE,sBAAsB,EACjC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC;IAsCnB,OAAO,CAAC,SAAS;CAsBlB"}
|
|
@@ -19,7 +19,9 @@ const service_registry_nest_1 = require("@xemahq/service-registry-nest");
|
|
|
19
19
|
const errors_1 = require("./errors");
|
|
20
20
|
const wire_1 = require("./wire");
|
|
21
21
|
exports.DECISION_API_SERVICE = 'decision-api';
|
|
22
|
-
|
|
22
|
+
function orgOf(authority) {
|
|
23
|
+
return authority.orgId ?? '(none)';
|
|
24
|
+
}
|
|
23
25
|
const SUBJECT_UNREGISTERED_CODE = 'DECISION_SUBJECT_RESOURCE_UNREGISTERED';
|
|
24
26
|
function unwrap(body, operation) {
|
|
25
27
|
if (typeof body !== 'object' ||
|
|
@@ -48,21 +50,21 @@ let DecisionPlaneClient = DecisionPlaneClient_1 = class DecisionPlaneClient {
|
|
|
48
50
|
constructor(decisions) {
|
|
49
51
|
this.decisions = decisions;
|
|
50
52
|
}
|
|
51
|
-
async open(
|
|
53
|
+
async open(authority, request) {
|
|
52
54
|
try {
|
|
53
|
-
const body = await this.decisions.post('/internal/decisions', request, {
|
|
55
|
+
const body = await this.decisions.post('/internal/decisions', request, { authority });
|
|
54
56
|
const decision = unwrap(body, 'POST /internal/decisions');
|
|
55
57
|
this.logger.debug(`Opened decision ${decision.id} attempt=${decision.attempt} ` +
|
|
56
|
-
`producerRef=${decision.producerRef ?? '(none)'} org=${
|
|
58
|
+
`producerRef=${decision.producerRef ?? '(none)'} org=${orgOf(authority)}`);
|
|
57
59
|
return decision;
|
|
58
60
|
}
|
|
59
61
|
catch (err) {
|
|
60
62
|
throw this.translate(err, 'POST /internal/decisions', request.subjectResourceRef);
|
|
61
63
|
}
|
|
62
64
|
}
|
|
63
|
-
async findByProducerRef(
|
|
65
|
+
async findByProducerRef(authority, producerRef) {
|
|
64
66
|
try {
|
|
65
|
-
const body = await this.decisions.get(`/internal/decisions/by-ref/${encodeURIComponent(producerRef)}`, {
|
|
67
|
+
const body = await this.decisions.get(`/internal/decisions/by-ref/${encodeURIComponent(producerRef)}`, { authority });
|
|
66
68
|
return unwrap(body, 'GET /internal/decisions/by-ref');
|
|
67
69
|
}
|
|
68
70
|
catch (err) {
|
|
@@ -72,30 +74,30 @@ let DecisionPlaneClient = DecisionPlaneClient_1 = class DecisionPlaneClient {
|
|
|
72
74
|
throw this.translate(err, 'GET /internal/decisions/by-ref');
|
|
73
75
|
}
|
|
74
76
|
}
|
|
75
|
-
async read(
|
|
77
|
+
async read(authority, decisionId) {
|
|
76
78
|
try {
|
|
77
|
-
const body = await this.decisions.get(`/internal/decisions/${encodeURIComponent(decisionId)}`, {
|
|
79
|
+
const body = await this.decisions.get(`/internal/decisions/${encodeURIComponent(decisionId)}`, { authority });
|
|
78
80
|
return unwrap(body, 'GET /internal/decisions/:id');
|
|
79
81
|
}
|
|
80
82
|
catch (err) {
|
|
81
83
|
throw this.translate(err, 'GET /internal/decisions/:id');
|
|
82
84
|
}
|
|
83
85
|
}
|
|
84
|
-
async close(
|
|
86
|
+
async close(authority, decisionId, request) {
|
|
85
87
|
try {
|
|
86
|
-
await this.decisions.post(`/internal/decisions/${encodeURIComponent(decisionId)}/close`, request, {
|
|
88
|
+
await this.decisions.post(`/internal/decisions/${encodeURIComponent(decisionId)}/close`, request, { authority });
|
|
87
89
|
}
|
|
88
90
|
catch (err) {
|
|
89
91
|
throw this.translate(err, 'POST /internal/decisions/:id/close');
|
|
90
92
|
}
|
|
91
93
|
}
|
|
92
|
-
async withdraw(
|
|
94
|
+
async withdraw(authority, decisionId, reason) {
|
|
93
95
|
try {
|
|
94
|
-
await this.close(
|
|
96
|
+
await this.close(authority, decisionId, {
|
|
95
97
|
outcome: wire_1.DecisionOutcome.WITHDRAWN,
|
|
96
98
|
reason: reason.slice(0, 2000),
|
|
97
99
|
});
|
|
98
|
-
this.logger.log(`Withdrew decision ${decisionId} (org ${
|
|
100
|
+
this.logger.log(`Withdrew decision ${decisionId} (org ${orgOf(authority)}): ${reason}`);
|
|
99
101
|
return true;
|
|
100
102
|
}
|
|
101
103
|
catch (err) {
|
|
@@ -103,7 +105,7 @@ let DecisionPlaneClient = DecisionPlaneClient_1 = class DecisionPlaneClient {
|
|
|
103
105
|
if (status === 404 || status === 409) {
|
|
104
106
|
return false;
|
|
105
107
|
}
|
|
106
|
-
this.logger.error(`Could not withdraw decision ${decisionId} (org ${
|
|
108
|
+
this.logger.error(`Could not withdraw decision ${decisionId} (org ${orgOf(authority)}): ${detailOf(err)}. ` +
|
|
107
109
|
"The ask stays OPEN and will appear in decision-api's abandoned report.");
|
|
108
110
|
return false;
|
|
109
111
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decision-plane.client.js","sourceRoot":"","sources":["../src/decision-plane.client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,
|
|
1
|
+
{"version":3,"file":"decision-plane.client.js","sourceRoot":"","sources":["../src/decision-plane.client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { DecisionPlaneClient, DECISION_API_SERVICE, } from './decision-plane.client';
|
|
1
|
+
export { DecisionPlaneClient, DECISION_API_SERVICE, type DecisionPlaneAuthority, } from './decision-plane.client';
|
|
2
2
|
export { DecisionPlaneModule } from './decision-plane.module';
|
|
3
3
|
export { DecisionEnvelopeError, DecisionPlaneError, DecisionPlaneRequestError, DecisionSubjectUnregisteredError, } from './errors';
|
|
4
4
|
export { DecisionAnswerRestriction, DecisionDeadlineEffect, DecisionKind, DecisionOptionEffect, DecisionOrgRole, DecisionOutcome, DecisionSettlement, DecisionSubjectClassification, RecipientKind, type CloseDecisionRequest, type DeclaredDecisionOption, type DecisionCommitView, type DecisionFact, type DecisionView, type OpenDecisionInput, type OpenDecisionRequest, type Recipient, } from './wire';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,KAAK,sBAAsB,GAC5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,yBAAyB,EACzB,gCAAgC,GACjC,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,6BAA6B,EAC7B,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,SAAS,GACf,MAAM,QAAQ,CAAC"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,iEAIiC;AAH/B,4HAAA,mBAAmB,OAAA;AACnB,6HAAA,oBAAoB,OAAA;AAGtB,iEAA8D;AAArD,4HAAA,mBAAmB,OAAA;AAC5B,mCAKkB;AAJhB,+GAAA,qBAAqB,OAAA;AACrB,4GAAA,kBAAkB,OAAA;AAClB,mHAAA,yBAAyB,OAAA;AACzB,0HAAA,gCAAgC,OAAA;AAElC,+BAkBgB;AAjBd,iHAAA,yBAAyB,OAAA;AACzB,8GAAA,sBAAsB,OAAA;AACtB,oGAAA,YAAY,OAAA;AACZ,4GAAA,oBAAoB,OAAA;AACpB,uGAAA,eAAe,OAAA;AACf,uGAAA,eAAe,OAAA;AACf,0GAAA,kBAAkB,OAAA;AAClB,qHAAA,6BAA6B,OAAA;AAC7B,qGAAA,aAAa,OAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xemahq/decision-plane-nest",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Producer-side SDK for the Xema human-decision primitive. One transport, one wire mirror and one consumed-event contract for every service that opens an ask on decision-api — so a producer writes only the two things that are genuinely its own: what the ask SAYS, and what it does when a human answers.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"xema",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"@nestjs/testing": "11.1.18",
|
|
41
41
|
"@types/jest": "^30.0.0",
|
|
42
42
|
"@types/node": "25.2.3",
|
|
43
|
-
"@xemahq/contracts": "^0.
|
|
43
|
+
"@xemahq/contracts": "^0.78.0",
|
|
44
44
|
"eslint": "^9.39.4",
|
|
45
45
|
"jest": "^30.3.0",
|
|
46
46
|
"prettier": "3.6.2",
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
"rxjs": "7.8.2",
|
|
49
49
|
"ts-jest": "^29.4.9",
|
|
50
50
|
"typescript": "5.9.3",
|
|
51
|
-
"@xemahq/eslint-config": "0.
|
|
52
|
-
"@xemahq/service-registry-nest": "0.
|
|
51
|
+
"@xemahq/eslint-config": "0.14.0",
|
|
52
|
+
"@xemahq/service-registry-nest": "1.0.0"
|
|
53
53
|
},
|
|
54
54
|
"scripts": {
|
|
55
55
|
"clean": "rm -rf dist",
|
|
@@ -58,5 +58,8 @@
|
|
|
58
58
|
"lint": "eslint .",
|
|
59
59
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
60
60
|
"test": "jest"
|
|
61
|
+
},
|
|
62
|
+
"xemaRelease": {
|
|
63
|
+
"sourceDigest": "sha256:e6a357977b3cbcdf951d9d28eebc0f4de1baa16948fad79027bc19d883f1aac1"
|
|
61
64
|
}
|
|
62
|
-
}
|
|
65
|
+
}
|