@claudexor/schema 3.5.0 → 3.6.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/dist/accounts-migration.d.ts +112 -0
- package/dist/accounts-migration.d.ts.map +1 -0
- package/dist/accounts-migration.js +74 -0
- package/dist/accounts-migration.js.map +1 -0
- package/dist/config.d.ts +38 -22
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +26 -6
- package/dist/config.js.map +1 -1
- package/dist/control-operation-responses.d.ts +7 -7
- package/dist/control-run-detail.d.ts +19 -19
- package/dist/control-run-failure.d.ts +4 -4
- package/dist/control-run-failure.d.ts.map +1 -1
- package/dist/control-run-failure.js +7 -1
- package/dist/control-run-failure.js.map +1 -1
- package/dist/control.d.ts +23 -23
- package/dist/control.d.ts.map +1 -1
- package/dist/control.js +8 -8
- package/dist/control.js.map +1 -1
- package/dist/credential-profile-snapshot.d.ts +236 -14
- package/dist/credential-profile-snapshot.d.ts.map +1 -1
- package/dist/credential-profile.d.ts +307 -7
- package/dist/credential-profile.d.ts.map +1 -1
- package/dist/credential-profile.js +104 -9
- package/dist/credential-profile.js.map +1 -1
- package/dist/credential-store.d.ts +19 -6
- package/dist/credential-store.d.ts.map +1 -1
- package/dist/credential-store.js +21 -6
- package/dist/credential-store.js.map +1 -1
- package/dist/events.d.ts +44 -4
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js +34 -0
- package/dist/events.js.map +1 -1
- package/dist/harness.d.ts +5 -5
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp-run-result.d.ts +10 -10
- package/dist/quota.d.ts +33 -12
- package/dist/quota.d.ts.map +1 -1
- package/dist/quota.js +32 -0
- package/dist/quota.js.map +1 -1
- package/dist/rate-limit.d.ts +9 -0
- package/dist/rate-limit.d.ts.map +1 -1
- package/dist/rate-limit.js +21 -0
- package/dist/rate-limit.js.map +1 -1
- package/generated/AccountsUnifiedMigrationFile.schema.json +61 -0
- package/generated/ControlAccountPoolsResponse.schema.json +93 -0
- package/generated/ControlAccountsMigrationRollbackRequest.schema.json +18 -0
- package/generated/ControlAccountsMigrationRollbackResponse.schema.json +63 -0
- package/generated/ControlCredentialProfileDeleteResponse.schema.json +1 -1
- package/generated/ControlCredentialProfilesQueryResponse.schema.json +82 -2
- package/generated/ControlCredentialProfilesResponse.schema.json +77 -1
- package/generated/ControlCredentialProfilesSnapshotResponse.schema.json +79 -2
- package/generated/ControlHarnessAccountPool.schema.json +79 -0
- package/generated/ControlHarnessSettingsPatch.schema.json +2 -1
- package/generated/ControlPoolNextUp.schema.json +63 -0
- package/generated/ControlQuotaResponse.schema.json +2 -1
- package/generated/ControlRunDetail.schema.json +2 -1
- package/generated/ControlRunListResponse.schema.json +2 -1
- package/generated/ControlRunSummary.schema.json +2 -1
- package/generated/ControlSettingsSnapshot.schema.json +3 -2
- package/generated/ControlSettingsUpdateRequest.schema.json +2 -1
- package/generated/GlobalConfig.schema.json +3 -2
- package/generated/HarnessEvent.schema.json +2 -1
- package/generated/McpRunHandleResult.schema.json +2 -1
- package/generated/McpRunToolResult.schema.json +2 -1
- package/generated/RunEvent.schema.json +4 -0
- package/generated/RunFailure.schema.json +2 -1
- package/package.json +2 -2
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$ref": "#/definitions/ControlHarnessAccountPool",
|
|
3
|
+
"definitions": {
|
|
4
|
+
"ControlHarnessAccountPool": {
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"harness_id": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"minLength": 1,
|
|
10
|
+
"description": "Harness family this pool verdict belongs to."
|
|
11
|
+
},
|
|
12
|
+
"next_up": {
|
|
13
|
+
"anyOf": [
|
|
14
|
+
{
|
|
15
|
+
"type": "object",
|
|
16
|
+
"properties": {
|
|
17
|
+
"kind": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"const": "profile"
|
|
20
|
+
},
|
|
21
|
+
"profileId": {
|
|
22
|
+
"type": "string",
|
|
23
|
+
"minLength": 1,
|
|
24
|
+
"description": "Non-empty identifier string."
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"required": [
|
|
28
|
+
"kind",
|
|
29
|
+
"profileId"
|
|
30
|
+
],
|
|
31
|
+
"additionalProperties": false,
|
|
32
|
+
"description": "An enabled account row is who an unpinned run routes to next."
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"type": "object",
|
|
36
|
+
"properties": {
|
|
37
|
+
"kind": {
|
|
38
|
+
"type": "string",
|
|
39
|
+
"const": "api_key_route"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"required": [
|
|
43
|
+
"kind"
|
|
44
|
+
],
|
|
45
|
+
"additionalProperties": false,
|
|
46
|
+
"description": "The account pool is empty or exhausted; the unpinned route is the policy-governed API key (INV-061) — a route, never an account row."
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"type": "object",
|
|
50
|
+
"properties": {
|
|
51
|
+
"kind": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"const": "none"
|
|
54
|
+
},
|
|
55
|
+
"reason": {
|
|
56
|
+
"type": "string"
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
"required": [
|
|
60
|
+
"kind",
|
|
61
|
+
"reason"
|
|
62
|
+
],
|
|
63
|
+
"additionalProperties": false,
|
|
64
|
+
"description": "An unpinned run has nothing routable, with a human reason."
|
|
65
|
+
}
|
|
66
|
+
],
|
|
67
|
+
"description": "Server-computed pool routing verdict for one harness's unpinned runs (unified account model)."
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"required": [
|
|
71
|
+
"harness_id",
|
|
72
|
+
"next_up"
|
|
73
|
+
],
|
|
74
|
+
"additionalProperties": false,
|
|
75
|
+
"description": "Per-harness pool authority (unified account model): who an unpinned run routes to next."
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
79
|
+
}
|
|
@@ -112,11 +112,12 @@
|
|
|
112
112
|
"profileLimitAction": {
|
|
113
113
|
"type": "string",
|
|
114
114
|
"enum": [
|
|
115
|
+
"auto",
|
|
115
116
|
"fail",
|
|
116
117
|
"ask",
|
|
117
118
|
"rotate"
|
|
118
119
|
],
|
|
119
|
-
"description": "New profile-selection limit action (fail | ask | rotate)."
|
|
120
|
+
"description": "New profile-selection limit action (auto | fail | ask | rotate)."
|
|
120
121
|
}
|
|
121
122
|
},
|
|
122
123
|
"additionalProperties": false,
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$ref": "#/definitions/ControlPoolNextUp",
|
|
3
|
+
"definitions": {
|
|
4
|
+
"ControlPoolNextUp": {
|
|
5
|
+
"anyOf": [
|
|
6
|
+
{
|
|
7
|
+
"type": "object",
|
|
8
|
+
"properties": {
|
|
9
|
+
"kind": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"const": "profile"
|
|
12
|
+
},
|
|
13
|
+
"profileId": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"minLength": 1,
|
|
16
|
+
"description": "Non-empty identifier string."
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
"required": [
|
|
20
|
+
"kind",
|
|
21
|
+
"profileId"
|
|
22
|
+
],
|
|
23
|
+
"additionalProperties": false,
|
|
24
|
+
"description": "An enabled account row is who an unpinned run routes to next."
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"type": "object",
|
|
28
|
+
"properties": {
|
|
29
|
+
"kind": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"const": "api_key_route"
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"required": [
|
|
35
|
+
"kind"
|
|
36
|
+
],
|
|
37
|
+
"additionalProperties": false,
|
|
38
|
+
"description": "The account pool is empty or exhausted; the unpinned route is the policy-governed API key (INV-061) — a route, never an account row."
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"type": "object",
|
|
42
|
+
"properties": {
|
|
43
|
+
"kind": {
|
|
44
|
+
"type": "string",
|
|
45
|
+
"const": "none"
|
|
46
|
+
},
|
|
47
|
+
"reason": {
|
|
48
|
+
"type": "string"
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"required": [
|
|
52
|
+
"kind",
|
|
53
|
+
"reason"
|
|
54
|
+
],
|
|
55
|
+
"additionalProperties": false,
|
|
56
|
+
"description": "An unpinned run has nothing routable, with a human reason."
|
|
57
|
+
}
|
|
58
|
+
],
|
|
59
|
+
"description": "Server-computed pool routing verdict for one harness's unpinned runs (unified account model)."
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
63
|
+
}
|
|
@@ -141,7 +141,8 @@
|
|
|
141
141
|
"claude_statusline",
|
|
142
142
|
"claude_api_retry",
|
|
143
143
|
"claude_oauth_usage",
|
|
144
|
-
"agy_command_usage"
|
|
144
|
+
"agy_command_usage",
|
|
145
|
+
"cursor_rate_limit"
|
|
145
146
|
],
|
|
146
147
|
"description": "Machine-readable source of quota evidence, classified by schema-owned traits."
|
|
147
148
|
},
|
|
@@ -161,11 +161,12 @@
|
|
|
161
161
|
"cost_unverifiable",
|
|
162
162
|
"delegation_child_drain_timeout",
|
|
163
163
|
"subscription_window_exhausted",
|
|
164
|
+
"credential_pool_exhausted",
|
|
164
165
|
"delegated_home_unavailable",
|
|
165
166
|
"delegated_confinement_unavailable",
|
|
166
167
|
"delegated_evidence_incomplete"
|
|
167
168
|
],
|
|
168
|
-
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
169
|
+
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
169
170
|
},
|
|
170
171
|
{
|
|
171
172
|
"type": "null"
|
|
@@ -163,11 +163,12 @@
|
|
|
163
163
|
"cost_unverifiable",
|
|
164
164
|
"delegation_child_drain_timeout",
|
|
165
165
|
"subscription_window_exhausted",
|
|
166
|
+
"credential_pool_exhausted",
|
|
166
167
|
"delegated_home_unavailable",
|
|
167
168
|
"delegated_confinement_unavailable",
|
|
168
169
|
"delegated_evidence_incomplete"
|
|
169
170
|
],
|
|
170
|
-
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
171
|
+
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
171
172
|
},
|
|
172
173
|
{
|
|
173
174
|
"type": "null"
|
|
@@ -158,11 +158,12 @@
|
|
|
158
158
|
"cost_unverifiable",
|
|
159
159
|
"delegation_child_drain_timeout",
|
|
160
160
|
"subscription_window_exhausted",
|
|
161
|
+
"credential_pool_exhausted",
|
|
161
162
|
"delegated_home_unavailable",
|
|
162
163
|
"delegated_confinement_unavailable",
|
|
163
164
|
"delegated_evidence_incomplete"
|
|
164
165
|
],
|
|
165
|
-
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
166
|
+
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
166
167
|
},
|
|
167
168
|
{
|
|
168
169
|
"type": "null"
|
|
@@ -342,12 +342,13 @@
|
|
|
342
342
|
"profileLimitAction": {
|
|
343
343
|
"type": "string",
|
|
344
344
|
"enum": [
|
|
345
|
+
"auto",
|
|
345
346
|
"fail",
|
|
346
347
|
"ask",
|
|
347
348
|
"rotate"
|
|
348
349
|
],
|
|
349
|
-
"default": "
|
|
350
|
-
"description": "Profile-selection limit action: fail (stop), ask (record), rotate (auto-switch to the next eligible account)."
|
|
350
|
+
"default": "auto",
|
|
351
|
+
"description": "Profile-selection limit action: auto (kind-aware default — rotate for subscription subjects, fail for metered), fail (stop), ask (record), rotate (auto-switch to the next eligible account)."
|
|
351
352
|
}
|
|
352
353
|
},
|
|
353
354
|
"additionalProperties": false,
|
|
@@ -266,11 +266,12 @@
|
|
|
266
266
|
"profileLimitAction": {
|
|
267
267
|
"type": "string",
|
|
268
268
|
"enum": [
|
|
269
|
+
"auto",
|
|
269
270
|
"fail",
|
|
270
271
|
"ask",
|
|
271
272
|
"rotate"
|
|
272
273
|
],
|
|
273
|
-
"description": "New profile-selection limit action (fail | ask | rotate)."
|
|
274
|
+
"description": "New profile-selection limit action (auto | fail | ask | rotate)."
|
|
274
275
|
}
|
|
275
276
|
},
|
|
276
277
|
"additionalProperties": false,
|
|
@@ -413,12 +413,13 @@
|
|
|
413
413
|
"limit_action": {
|
|
414
414
|
"type": "string",
|
|
415
415
|
"enum": [
|
|
416
|
+
"auto",
|
|
416
417
|
"fail",
|
|
417
418
|
"ask",
|
|
418
419
|
"rotate"
|
|
419
420
|
],
|
|
420
|
-
"default": "
|
|
421
|
-
"description": "On a typed vendor limit: fail the attempt, surface a typed ask, or rotate to the next eligible profile."
|
|
421
|
+
"default": "auto",
|
|
422
|
+
"description": "On a typed vendor limit: auto (kind-aware default — rotate for subscription subjects, fail for metered), fail the attempt, surface a typed ask, or rotate to the next eligible profile."
|
|
422
423
|
},
|
|
423
424
|
"rotation_eligible": {
|
|
424
425
|
"type": "array",
|
|
@@ -348,7 +348,8 @@
|
|
|
348
348
|
"claude_statusline",
|
|
349
349
|
"claude_api_retry",
|
|
350
350
|
"claude_oauth_usage",
|
|
351
|
-
"agy_command_usage"
|
|
351
|
+
"agy_command_usage",
|
|
352
|
+
"cursor_rate_limit"
|
|
352
353
|
],
|
|
353
354
|
"description": "Machine-readable source of quota evidence, classified by schema-owned traits."
|
|
354
355
|
},
|
|
@@ -678,11 +678,12 @@
|
|
|
678
678
|
"cost_unverifiable",
|
|
679
679
|
"delegation_child_drain_timeout",
|
|
680
680
|
"subscription_window_exhausted",
|
|
681
|
+
"credential_pool_exhausted",
|
|
681
682
|
"delegated_home_unavailable",
|
|
682
683
|
"delegated_confinement_unavailable",
|
|
683
684
|
"delegated_evidence_incomplete"
|
|
684
685
|
],
|
|
685
|
-
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
686
|
+
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
686
687
|
},
|
|
687
688
|
{
|
|
688
689
|
"type": "null"
|
|
@@ -654,11 +654,12 @@
|
|
|
654
654
|
"cost_unverifiable",
|
|
655
655
|
"delegation_child_drain_timeout",
|
|
656
656
|
"subscription_window_exhausted",
|
|
657
|
+
"credential_pool_exhausted",
|
|
657
658
|
"delegated_home_unavailable",
|
|
658
659
|
"delegated_confinement_unavailable",
|
|
659
660
|
"delegated_evidence_incomplete"
|
|
660
661
|
],
|
|
661
|
-
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
662
|
+
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
662
663
|
},
|
|
663
664
|
{
|
|
664
665
|
"type": "null"
|
|
@@ -51,6 +51,10 @@
|
|
|
51
51
|
"route.profile.headroom_exceeded",
|
|
52
52
|
"route.profile.rotated",
|
|
53
53
|
"route.profile.rotation_exhausted",
|
|
54
|
+
"route.profile.credential_unusable",
|
|
55
|
+
"route.account.pool_selected",
|
|
56
|
+
"route.account.lane_switch",
|
|
57
|
+
"route.account.pool_exhausted",
|
|
54
58
|
"route.transient.exhausted",
|
|
55
59
|
"route.fallback.auth_switched",
|
|
56
60
|
"route.primary.diverged",
|
|
@@ -40,11 +40,12 @@
|
|
|
40
40
|
"cost_unverifiable",
|
|
41
41
|
"delegation_child_drain_timeout",
|
|
42
42
|
"subscription_window_exhausted",
|
|
43
|
+
"credential_pool_exhausted",
|
|
43
44
|
"delegated_home_unavailable",
|
|
44
45
|
"delegated_confinement_unavailable",
|
|
45
46
|
"delegated_evidence_incomplete"
|
|
46
47
|
],
|
|
47
|
-
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
48
|
+
"description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
|
|
48
49
|
},
|
|
49
50
|
{
|
|
50
51
|
"type": "null"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@claudexor/schema",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.6.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Single source of truth for all Claudexor data shapes (Zod + generated JSON Schema).",
|
|
6
6
|
"type": "module",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"zod": "^4.4.3",
|
|
22
22
|
"zod-to-json-schema": "^3.24.1",
|
|
23
|
-
"@claudexor/util": "3.
|
|
23
|
+
"@claudexor/util": "3.6.0"
|
|
24
24
|
},
|
|
25
25
|
"repository": {
|
|
26
26
|
"type": "git",
|