@dcdr/contracts 1.9.7 → 1.9.9
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 +1 -0
- package/dist/implementations.contract.d.ts +91 -0
- package/dist/implementations.contract.d.ts.map +1 -1
- package/dist/implementations.contract.js +50 -0
- package/dist/policies.contract.d.ts +17 -1
- package/dist/policies.contract.d.ts.map +1 -1
- package/dist/policies.contract.js +16 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -398,6 +398,7 @@ See full feature matrix: [docs/TIERS_FEATURE_MATRIX.md](docs/TIERS_FEATURE_MATRI
|
|
|
398
398
|
### Core concepts
|
|
399
399
|
|
|
400
400
|
- [docs/CONTRACTS.md](docs/CONTRACTS.md) — How Registries, Intents, implementations, policies, and capabilities fit together.
|
|
401
|
+
- [docs/EXECUTION_POLICY.md](docs/EXECUTION_POLICY.md) — ExecutionPolicy reference (availability matrix + tie-breakers).
|
|
401
402
|
- [docs/PLATFORM_OVERVIEW.md](docs/PLATFORM_OVERVIEW.md) — Runtime (self-hosted) vs Cloud vs Cloud Pro (what runs where, who owns what).
|
|
402
403
|
- [docs/TIERS_FEATURE_MATRIX.md](docs/TIERS_FEATURE_MATRIX.md) — One-page feature/tier reference.
|
|
403
404
|
- [docs/SUPPORTED_MODELS.md](docs/SUPPORTED_MODELS.md) — Provider model IDs currently marked as runtime-supported.
|
|
@@ -1,5 +1,89 @@
|
|
|
1
1
|
import { IntentProvider } from "./provider.contract";
|
|
2
2
|
import { HttpRequestParams } from "./http.contract";
|
|
3
|
+
/**
|
|
4
|
+
* Condition operators for conditioned routing.
|
|
5
|
+
*
|
|
6
|
+
* Notes
|
|
7
|
+
* - Used by conditioned execution policies (context/input).
|
|
8
|
+
* - Keep values stable (wire-level behavior).
|
|
9
|
+
*/
|
|
10
|
+
export declare enum ConditionOp {
|
|
11
|
+
/** Incorrect type (based on operator expectations and/or value1 type). */
|
|
12
|
+
INCORRECT = "INCORRECT",
|
|
13
|
+
TRUE = "TRUE",
|
|
14
|
+
FALSE = "FALSE",
|
|
15
|
+
LENGTH_MIN = "LENGTH_MIN",
|
|
16
|
+
LENGTH_MAX = "LENGTH_MAX",
|
|
17
|
+
CONTAINS = "CONTAINS",
|
|
18
|
+
NOT_CONTAINS = "NOT_CONTAINS",
|
|
19
|
+
STARTS_WITH = "STARTS_WITH",
|
|
20
|
+
ENDS_WITH = "ENDS_WITH",
|
|
21
|
+
EMPTY = "EMPTY",
|
|
22
|
+
NOT_EMPTY = "NOT_EMPTY",
|
|
23
|
+
MORE_THAN = "MORE_THAN",
|
|
24
|
+
MORE_THAN_EQUAL = "MORE_THAN_EQUAL",
|
|
25
|
+
LESS_THAN = "LESS_THAN",
|
|
26
|
+
LESS_THAN_EQUAL = "LESS_THAN_EQUAL",
|
|
27
|
+
BETWEEN_RANGE = "BETWEEN_RANGE",
|
|
28
|
+
OUTSIDE_RANGE = "OUTSIDE_RANGE",
|
|
29
|
+
NULL = "NULL",
|
|
30
|
+
EQUALS = "EQUALS",
|
|
31
|
+
NOT_EQUALS = "NOT_EQUALS",
|
|
32
|
+
VALID_URL = "VALID_URL"
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Boolean operators for composing multiple conditions.
|
|
36
|
+
*
|
|
37
|
+
* Notes
|
|
38
|
+
* - Used only when an intent uses a conditioned execution policy.
|
|
39
|
+
* - Keep values stable (wire-level behavior).
|
|
40
|
+
*/
|
|
41
|
+
export declare enum ConditionLogicOp {
|
|
42
|
+
NOT = "NOT",
|
|
43
|
+
AND = "AND",
|
|
44
|
+
OR = "OR"
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Minimal condition contract for conditioned routing.
|
|
48
|
+
*
|
|
49
|
+
* Semantics
|
|
50
|
+
* - `path` is a dot-path relative to the evaluation scope.
|
|
51
|
+
* - `value1` and `value2` are generic operator parameters.
|
|
52
|
+
*/
|
|
53
|
+
export interface ImplementationCondition {
|
|
54
|
+
/** Dot-path relative to the evaluation scope (context or vars). */
|
|
55
|
+
path: string;
|
|
56
|
+
/** Leaf operator to apply to the resolved value at `path`. */
|
|
57
|
+
op: ConditionOp;
|
|
58
|
+
/** Primary operator parameter. */
|
|
59
|
+
value1?: string | number | boolean | null;
|
|
60
|
+
/** Secondary operator parameter (e.g. max in a range). */
|
|
61
|
+
value2?: string | number | boolean | null;
|
|
62
|
+
/** Optional normalization for string operators. */
|
|
63
|
+
caseInsensitive?: boolean;
|
|
64
|
+
/** Optional trim for string operators. */
|
|
65
|
+
trim?: boolean;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Recursive boolean condition used to compose multiple leaf conditions.
|
|
69
|
+
*
|
|
70
|
+
* Notes
|
|
71
|
+
* - The evaluation scope is still determined by the execution policy type:
|
|
72
|
+
* - CONDITION_ON_CONTEXT => request.context
|
|
73
|
+
* - CONDITION_ON_INPUT => effective vars
|
|
74
|
+
* - Children can be either leaf ImplementationCondition or another LogicalImplementationCondition.
|
|
75
|
+
*/
|
|
76
|
+
export interface LogicalImplementationCondition {
|
|
77
|
+
op: ConditionLogicOp;
|
|
78
|
+
/**
|
|
79
|
+
* Child conditions.
|
|
80
|
+
*
|
|
81
|
+
* Rules
|
|
82
|
+
* - NOT: must include exactly 1 child
|
|
83
|
+
* - AND/OR: must include 1+ children
|
|
84
|
+
*/
|
|
85
|
+
conditions?: Array<ImplementationCondition | LogicalImplementationCondition>;
|
|
86
|
+
}
|
|
3
87
|
/**
|
|
4
88
|
* Time window constraints for an implementation.
|
|
5
89
|
* If present, the implementation is eligible ONLY within these windows.
|
|
@@ -116,5 +200,12 @@ export interface ImplementationContract {
|
|
|
116
200
|
cacheTTLSeconds?: number;
|
|
117
201
|
/** Execution window constraints. */
|
|
118
202
|
executionWindow?: ExecutionWindow;
|
|
203
|
+
/**
|
|
204
|
+
* Optional condition used by conditioned execution policies.
|
|
205
|
+
*
|
|
206
|
+
* Notes
|
|
207
|
+
* - Only evaluated when the intent executionPolicy type is CONDITION_ON_CONTEXT or CONDITION_ON_INPUT.
|
|
208
|
+
*/
|
|
209
|
+
condition?: ImplementationCondition | LogicalImplementationCondition;
|
|
119
210
|
}
|
|
120
211
|
//# sourceMappingURL=implementations.contract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"implementations.contract.d.ts","sourceRoot":"","sources":["../src/implementations.contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,eAAe;
|
|
1
|
+
{"version":3,"file":"implementations.contract.d.ts","sourceRoot":"","sources":["../src/implementations.contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ConditionLogicOp = exports.ConditionOp = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Condition operators for conditioned routing.
|
|
6
|
+
*
|
|
7
|
+
* Notes
|
|
8
|
+
* - Used by conditioned execution policies (context/input).
|
|
9
|
+
* - Keep values stable (wire-level behavior).
|
|
10
|
+
*/
|
|
11
|
+
var ConditionOp;
|
|
12
|
+
(function (ConditionOp) {
|
|
13
|
+
/** Incorrect type (based on operator expectations and/or value1 type). */
|
|
14
|
+
ConditionOp["INCORRECT"] = "INCORRECT";
|
|
15
|
+
// Boolean
|
|
16
|
+
ConditionOp["TRUE"] = "TRUE";
|
|
17
|
+
ConditionOp["FALSE"] = "FALSE";
|
|
18
|
+
// Text
|
|
19
|
+
ConditionOp["LENGTH_MIN"] = "LENGTH_MIN";
|
|
20
|
+
ConditionOp["LENGTH_MAX"] = "LENGTH_MAX";
|
|
21
|
+
ConditionOp["CONTAINS"] = "CONTAINS";
|
|
22
|
+
ConditionOp["NOT_CONTAINS"] = "NOT_CONTAINS";
|
|
23
|
+
ConditionOp["STARTS_WITH"] = "STARTS_WITH";
|
|
24
|
+
ConditionOp["ENDS_WITH"] = "ENDS_WITH";
|
|
25
|
+
ConditionOp["EMPTY"] = "EMPTY";
|
|
26
|
+
ConditionOp["NOT_EMPTY"] = "NOT_EMPTY";
|
|
27
|
+
// Numeric
|
|
28
|
+
ConditionOp["MORE_THAN"] = "MORE_THAN";
|
|
29
|
+
ConditionOp["MORE_THAN_EQUAL"] = "MORE_THAN_EQUAL";
|
|
30
|
+
ConditionOp["LESS_THAN"] = "LESS_THAN";
|
|
31
|
+
ConditionOp["LESS_THAN_EQUAL"] = "LESS_THAN_EQUAL";
|
|
32
|
+
ConditionOp["BETWEEN_RANGE"] = "BETWEEN_RANGE";
|
|
33
|
+
ConditionOp["OUTSIDE_RANGE"] = "OUTSIDE_RANGE";
|
|
34
|
+
// Generic
|
|
35
|
+
ConditionOp["NULL"] = "NULL";
|
|
36
|
+
ConditionOp["EQUALS"] = "EQUALS";
|
|
37
|
+
ConditionOp["NOT_EQUALS"] = "NOT_EQUALS";
|
|
38
|
+
ConditionOp["VALID_URL"] = "VALID_URL";
|
|
39
|
+
})(ConditionOp || (exports.ConditionOp = ConditionOp = {}));
|
|
40
|
+
/**
|
|
41
|
+
* Boolean operators for composing multiple conditions.
|
|
42
|
+
*
|
|
43
|
+
* Notes
|
|
44
|
+
* - Used only when an intent uses a conditioned execution policy.
|
|
45
|
+
* - Keep values stable (wire-level behavior).
|
|
46
|
+
*/
|
|
47
|
+
var ConditionLogicOp;
|
|
48
|
+
(function (ConditionLogicOp) {
|
|
49
|
+
ConditionLogicOp["NOT"] = "NOT";
|
|
50
|
+
ConditionLogicOp["AND"] = "AND";
|
|
51
|
+
ConditionLogicOp["OR"] = "OR";
|
|
52
|
+
})(ConditionLogicOp || (exports.ConditionLogicOp = ConditionLogicOp = {}));
|
|
@@ -146,7 +146,23 @@ export declare enum ExecutionPolicyType {
|
|
|
146
146
|
* Prefer the highest-quality implementations first.
|
|
147
147
|
* Requires each implementation to expose a quality score.
|
|
148
148
|
*/
|
|
149
|
-
QUALITY_FIRST = "QUALITY_FIRST"
|
|
149
|
+
QUALITY_FIRST = "QUALITY_FIRST",
|
|
150
|
+
/**
|
|
151
|
+
* Conditioned routing based on request context.
|
|
152
|
+
*
|
|
153
|
+
* Notes
|
|
154
|
+
* - Implementations must define `ImplementationContract.condition`.
|
|
155
|
+
* - When no conditions match, runtime should fail explicitly.
|
|
156
|
+
*/
|
|
157
|
+
CONDITION_ON_CONTEXT = "CONDITION_ON_CONTEXT",
|
|
158
|
+
/**
|
|
159
|
+
* Conditioned routing based on interpolated input variables (`ExecuteIntentRequest.vars`).
|
|
160
|
+
*
|
|
161
|
+
* Notes
|
|
162
|
+
* - Implementations must define `ImplementationContract.condition`.
|
|
163
|
+
* - When no conditions match, runtime should fail explicitly.
|
|
164
|
+
*/
|
|
165
|
+
CONDITION_ON_INPUT = "CONDITION_ON_INPUT"
|
|
150
166
|
}
|
|
151
167
|
/**
|
|
152
168
|
* Optional behavior when the selected policy cannot be fully evaluated.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policies.contract.d.ts","sourceRoot":"","sources":["../src/policies.contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD;;;GAGG;AACH;;;GAGG;AACH,qBAAa,WAAW;IACpB;;;OAGG;IAGH,WAAW,EAAE,MAAM,CAAK;IAExB;;;;OAIG;IAIH,eAAe,CAAC,EAAE,MAAM,CAAK;IAE7B;;;OAGG;IAGH,gBAAgB,CAAC,EAAE,MAAM,CAAS;IAElC;;;OAGG;IAEH,aAAa,EAAE,OAAO,CAAQ;IAE9B;;;;;;;;;;;;;;;;;OAiBG;IAGH,iBAAiB,CAAC,EAAE,OAAO,CAAS;IAGpC;;;;OAIG;IAEH,oBAAoB,CAAC,EAAE,OAAO,GAAG,aAAa,CAAiB;IAE/D;;;OAGG;IAIH,cAAc,CAAC,EAAE,MAAM,CAAO;IAE9B;;OAEG;IAIH,iBAAiB,CAAC,EAAE,MAAM,CAAQ;IAElC;;OAEG;IAIH,aAAa,CAAC,EAAE,MAAM,CAAO;IAG7B;;;OAGG;IAEH,OAAO,CAAC,EAAE,KAAK,CACT,SAAS,GACT,YAAY,GACZ,cAAc,GACd,SAAS,GACT,YAAY,GACZ,aAAa,CAClB,CAAC;CACL;AAID,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAG1F,qBAAa,gBAAgB;IACzB;;OAEG;IAIH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IAIH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IAIH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IAIH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IAEH,IAAI,CAAC,EAAE,MAAM,CAAC;IAId,eAAe,CAAC,EAAE,OAAO,CAAC;IAG1B,eAAe,CAAC,EAAE,cAAc,CAAA;IAEhC;;OAEG;IAIH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IAIH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAMD;;;;;;;;;GASG;AACH,oBAAY,mBAAmB;IAC3B;;;OAGG;IACH,QAAQ,aAAa;IAErB;;;OAGG;IACH,cAAc,mBAAmB;IAEjC;;;OAGG;IACH,WAAW,gBAAgB;IAE3B;;;OAGG;IACH,cAAc,mBAAmB;IAEjC;;;OAGG;IACH,aAAa,kBAAkB;IAE/B;;;OAGG;IACH,aAAa,kBAAkB;
|
|
1
|
+
{"version":3,"file":"policies.contract.d.ts","sourceRoot":"","sources":["../src/policies.contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD;;;GAGG;AACH;;;GAGG;AACH,qBAAa,WAAW;IACpB;;;OAGG;IAGH,WAAW,EAAE,MAAM,CAAK;IAExB;;;;OAIG;IAIH,eAAe,CAAC,EAAE,MAAM,CAAK;IAE7B;;;OAGG;IAGH,gBAAgB,CAAC,EAAE,MAAM,CAAS;IAElC;;;OAGG;IAEH,aAAa,EAAE,OAAO,CAAQ;IAE9B;;;;;;;;;;;;;;;;;OAiBG;IAGH,iBAAiB,CAAC,EAAE,OAAO,CAAS;IAGpC;;;;OAIG;IAEH,oBAAoB,CAAC,EAAE,OAAO,GAAG,aAAa,CAAiB;IAE/D;;;OAGG;IAIH,cAAc,CAAC,EAAE,MAAM,CAAO;IAE9B;;OAEG;IAIH,iBAAiB,CAAC,EAAE,MAAM,CAAQ;IAElC;;OAEG;IAIH,aAAa,CAAC,EAAE,MAAM,CAAO;IAG7B;;;OAGG;IAEH,OAAO,CAAC,EAAE,KAAK,CACT,SAAS,GACT,YAAY,GACZ,cAAc,GACd,SAAS,GACT,YAAY,GACZ,aAAa,CAClB,CAAC;CACL;AAID,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AAG1F,qBAAa,gBAAgB;IACzB;;OAEG;IAIH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IAIH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IAIH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IAIH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IAEH,IAAI,CAAC,EAAE,MAAM,CAAC;IAId,eAAe,CAAC,EAAE,OAAO,CAAC;IAG1B,eAAe,CAAC,EAAE,cAAc,CAAA;IAEhC;;OAEG;IAIH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IAIH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAMD;;;;;;;;;GASG;AACH,oBAAY,mBAAmB;IAC3B;;;OAGG;IACH,QAAQ,aAAa;IAErB;;;OAGG;IACH,cAAc,mBAAmB;IAEjC;;;OAGG;IACH,WAAW,gBAAgB;IAE3B;;;OAGG;IACH,cAAc,mBAAmB;IAEjC;;;OAGG;IACH,aAAa,kBAAkB;IAE/B;;;OAGG;IACH,aAAa,kBAAkB;IAE/B;;;;;;OAMG;IACH,oBAAoB,yBAAyB;IAE7C;;;;;;OAMG;IACH,kBAAkB,uBAAuB;CAC5C;AAED;;;;;GAKG;AACH,oBAAY,2BAA2B;IACnC;;OAEG;IACH,QAAQ,aAAa;IAErB;;OAEG;IACH,cAAc,mBAAmB;IAEjC;;OAEG;IACH,KAAK,UAAU;CAClB;AAED;;;;;;;;GAQG;AACH,oBAAY,eAAe;IACvB;;;;;OAKG;IACH,oBAAoB,yBAAyB;CAChD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAC9B,wBAAwB;IACxB,IAAI,EAAE,eAAe,CAAC;IAEtB,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAEhB,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;CAChB;AAID;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,eAAe;IAG5B,mBAAmB;IACnB,IAAI,EAAE,mBAAmB,CAAC;IAE1B;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE/B;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,cAAc,EAAE,CAAC;IAEtC;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,2BAA2B,CAAC;IAE3C;;;;OAIG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACnC"}
|
|
@@ -240,6 +240,22 @@ var ExecutionPolicyType;
|
|
|
240
240
|
* Requires each implementation to expose a quality score.
|
|
241
241
|
*/
|
|
242
242
|
ExecutionPolicyType["QUALITY_FIRST"] = "QUALITY_FIRST";
|
|
243
|
+
/**
|
|
244
|
+
* Conditioned routing based on request context.
|
|
245
|
+
*
|
|
246
|
+
* Notes
|
|
247
|
+
* - Implementations must define `ImplementationContract.condition`.
|
|
248
|
+
* - When no conditions match, runtime should fail explicitly.
|
|
249
|
+
*/
|
|
250
|
+
ExecutionPolicyType["CONDITION_ON_CONTEXT"] = "CONDITION_ON_CONTEXT";
|
|
251
|
+
/**
|
|
252
|
+
* Conditioned routing based on interpolated input variables (`ExecuteIntentRequest.vars`).
|
|
253
|
+
*
|
|
254
|
+
* Notes
|
|
255
|
+
* - Implementations must define `ImplementationContract.condition`.
|
|
256
|
+
* - When no conditions match, runtime should fail explicitly.
|
|
257
|
+
*/
|
|
258
|
+
ExecutionPolicyType["CONDITION_ON_INPUT"] = "CONDITION_ON_INPUT";
|
|
243
259
|
})(ExecutionPolicyType || (exports.ExecutionPolicyType = ExecutionPolicyType = {}));
|
|
244
260
|
/**
|
|
245
261
|
* Optional behavior when the selected policy cannot be fully evaluated.
|