@cat-factory/contracts 0.237.0 → 0.239.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/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/notification-webhooks.d.ts +12 -5
- package/dist/notification-webhooks.d.ts.map +1 -1
- package/dist/notification-webhooks.js +2 -1
- package/dist/notification-webhooks.js.map +1 -1
- package/dist/notifications.d.ts +91 -4
- package/dist/notifications.d.ts.map +1 -1
- package/dist/notifications.js +53 -2
- package/dist/notifications.js.map +1 -1
- package/dist/public-api.d.ts +7 -1
- package/dist/public-api.d.ts.map +1 -1
- package/dist/reports.d.ts +41 -4
- package/dist/reports.d.ts.map +1 -1
- package/dist/reports.js +18 -3
- package/dist/reports.js.map +1 -1
- package/dist/routes/accounts.d.ts +18 -0
- package/dist/routes/accounts.d.ts.map +1 -1
- package/dist/routes/index.d.ts +1 -0
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +1 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/notification-webhooks.d.ts +6 -6
- package/dist/routes/notifications.d.ts +21 -3
- package/dist/routes/notifications.d.ts.map +1 -1
- package/dist/routes/public-api.d.ts +21 -3
- package/dist/routes/public-api.d.ts.map +1 -1
- package/dist/routes/slack.d.ts +3 -3
- package/dist/routes/tool-servers.d.ts +103 -0
- package/dist/routes/tool-servers.d.ts.map +1 -0
- package/dist/routes/tool-servers.js +37 -0
- package/dist/routes/tool-servers.js.map +1 -0
- package/dist/routes/workspaces.d.ts +14 -2
- package/dist/routes/workspaces.d.ts.map +1 -1
- package/dist/slack.d.ts +2 -2
- package/dist/snapshot.d.ts +7 -1
- package/dist/snapshot.d.ts.map +1 -1
- package/dist/tool-servers.d.ts +257 -0
- package/dist/tool-servers.d.ts.map +1 -0
- package/dist/tool-servers.js +234 -0
- package/dist/tool-servers.js.map +1 -0
- package/package.json +1 -1
|
@@ -1692,7 +1692,7 @@ export declare const createWorkspaceContract: {
|
|
|
1692
1692
|
}, undefined>, undefined>;
|
|
1693
1693
|
readonly notifications: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
1694
1694
|
readonly id: v.StringSchema<undefined>;
|
|
1695
|
-
readonly type: v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "key_drift", "merge_tag_request"], undefined>;
|
|
1695
|
+
readonly type: v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "budget_threshold", "key_drift", "merge_tag_request"], undefined>;
|
|
1696
1696
|
readonly status: v.PicklistSchema<["open", "acted", "dismissed"], undefined>;
|
|
1697
1697
|
readonly severity: v.OptionalSchema<v.PicklistSchema<["normal", "urgent"], undefined>, undefined>;
|
|
1698
1698
|
readonly blockId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
@@ -1748,6 +1748,12 @@ export declare const createWorkspaceContract: {
|
|
|
1748
1748
|
readonly reason: v.PicklistSchema<["key-mismatch", "corrupt"], undefined>;
|
|
1749
1749
|
readonly sealedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
|
|
1750
1750
|
}, undefined>, undefined>, undefined>;
|
|
1751
|
+
readonly budgetPeriodStart: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
1752
|
+
readonly budgetAlerts: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
1753
|
+
readonly tier: v.PicklistSchema<["workspace", "account"], undefined>;
|
|
1754
|
+
readonly threshold: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
|
|
1755
|
+
readonly projectedOverrun: v.BooleanSchema<undefined>;
|
|
1756
|
+
}, undefined>, undefined>, undefined>;
|
|
1751
1757
|
readonly changeClass: v.OptionalSchema<v.PicklistSchema<["docs", "test", "dependency", "config", "source", "schema", "unknown"], undefined>, undefined>;
|
|
1752
1758
|
readonly mergeTrackRecordId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
1753
1759
|
}, undefined>, undefined>, undefined>;
|
|
@@ -4960,7 +4966,7 @@ export declare const getWorkspaceContract: {
|
|
|
4960
4966
|
}, undefined>, undefined>;
|
|
4961
4967
|
readonly notifications: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
4962
4968
|
readonly id: v.StringSchema<undefined>;
|
|
4963
|
-
readonly type: v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "key_drift", "merge_tag_request"], undefined>;
|
|
4969
|
+
readonly type: v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "budget_threshold", "key_drift", "merge_tag_request"], undefined>;
|
|
4964
4970
|
readonly status: v.PicklistSchema<["open", "acted", "dismissed"], undefined>;
|
|
4965
4971
|
readonly severity: v.OptionalSchema<v.PicklistSchema<["normal", "urgent"], undefined>, undefined>;
|
|
4966
4972
|
readonly blockId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
@@ -5016,6 +5022,12 @@ export declare const getWorkspaceContract: {
|
|
|
5016
5022
|
readonly reason: v.PicklistSchema<["key-mismatch", "corrupt"], undefined>;
|
|
5017
5023
|
readonly sealedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
|
|
5018
5024
|
}, undefined>, undefined>, undefined>;
|
|
5025
|
+
readonly budgetPeriodStart: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
5026
|
+
readonly budgetAlerts: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
5027
|
+
readonly tier: v.PicklistSchema<["workspace", "account"], undefined>;
|
|
5028
|
+
readonly threshold: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
|
|
5029
|
+
readonly projectedOverrun: v.BooleanSchema<undefined>;
|
|
5030
|
+
}, undefined>, undefined>, undefined>;
|
|
5019
5031
|
readonly changeClass: v.OptionalSchema<v.PicklistSchema<["docs", "test", "dependency", "config", "source", "schema", "unknown"], undefined>, undefined>;
|
|
5020
5032
|
readonly mergeTrackRecordId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
5021
5033
|
}, undefined>, undefined>, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaces.d.ts","sourceRoot":"","sources":["../../src/routes/workspaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAe5B;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;aAGlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAI7E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIjC,CAAA;AAEF,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"workspaces.d.ts","sourceRoot":"","sources":["../../src/routes/workspaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAe5B;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;aAGlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAI7E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIjC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAK/B,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMlC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlC,CAAA"}
|
package/dist/slack.d.ts
CHANGED
|
@@ -30,7 +30,7 @@ export type SlackRoute = v.InferOutput<typeof slackRouteSchema>;
|
|
|
30
30
|
* type absent from `routes`, disabled, or with an empty channel does not post.
|
|
31
31
|
*/
|
|
32
32
|
export declare const slackNotificationSettingsSchema: v.ObjectSchema<{
|
|
33
|
-
readonly routes: v.RecordSchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "key_drift", "merge_tag_request"], undefined>, v.ObjectSchema<{
|
|
33
|
+
readonly routes: v.RecordSchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "budget_threshold", "key_drift", "merge_tag_request"], undefined>, v.ObjectSchema<{
|
|
34
34
|
readonly enabled: v.BooleanSchema<undefined>;
|
|
35
35
|
/** A channel id (`C0123…`) or name (`#general`); empty = unrouted. */
|
|
36
36
|
readonly channel: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MaxLengthAction<string, 200, undefined>]>;
|
|
@@ -83,7 +83,7 @@ export declare const connectSlackByTokenSchema: v.ObjectSchema<{
|
|
|
83
83
|
export type ConnectSlackByTokenInput = v.InferOutput<typeof connectSlackByTokenSchema>;
|
|
84
84
|
/** Replace a workspace's Slack notification routing. */
|
|
85
85
|
export declare const updateSlackSettingsSchema: v.ObjectSchema<{
|
|
86
|
-
readonly routes: v.RecordSchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "key_drift", "merge_tag_request"], undefined>, v.ObjectSchema<{
|
|
86
|
+
readonly routes: v.RecordSchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "budget_threshold", "key_drift", "merge_tag_request"], undefined>, v.ObjectSchema<{
|
|
87
87
|
readonly enabled: v.BooleanSchema<undefined>;
|
|
88
88
|
/** A channel id (`C0123…`) or name (`#general`); empty = unrouted. */
|
|
89
89
|
readonly channel: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MaxLengthAction<string, 200, undefined>]>;
|
package/dist/snapshot.d.ts
CHANGED
|
@@ -1685,7 +1685,7 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
|
|
|
1685
1685
|
*/
|
|
1686
1686
|
readonly notifications: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
1687
1687
|
readonly id: v.StringSchema<undefined>;
|
|
1688
|
-
readonly type: v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "key_drift", "merge_tag_request"], undefined>;
|
|
1688
|
+
readonly type: v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "judge_review", "pr_review_ready", "initiative", "platform_health", "infra_unreachable", "budget_paused", "budget_threshold", "key_drift", "merge_tag_request"], undefined>;
|
|
1689
1689
|
readonly status: v.PicklistSchema<["open", "acted", "dismissed"], undefined>;
|
|
1690
1690
|
readonly severity: v.OptionalSchema<v.PicklistSchema<["normal", "urgent"], undefined>, undefined>;
|
|
1691
1691
|
readonly blockId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
|
|
@@ -1741,6 +1741,12 @@ export declare const workspaceSnapshotSchema: v.ObjectSchema<{
|
|
|
1741
1741
|
readonly reason: v.PicklistSchema<["key-mismatch", "corrupt"], undefined>;
|
|
1742
1742
|
readonly sealedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
|
|
1743
1743
|
}, undefined>, undefined>, undefined>;
|
|
1744
|
+
readonly budgetPeriodStart: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
1745
|
+
readonly budgetAlerts: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
1746
|
+
readonly tier: v.PicklistSchema<["workspace", "account"], undefined>;
|
|
1747
|
+
readonly threshold: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
|
|
1748
|
+
readonly projectedOverrun: v.BooleanSchema<undefined>;
|
|
1749
|
+
}, undefined>, undefined>, undefined>;
|
|
1744
1750
|
readonly changeClass: v.OptionalSchema<v.PicklistSchema<["docs", "test", "dependency", "config", "source", "schema", "unknown"], undefined>, undefined>;
|
|
1745
1751
|
readonly mergeTrackRecordId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
1746
1752
|
}, undefined>, undefined>, undefined>;
|
package/dist/snapshot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAwC5B;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;aAGhC,CAAA;AACF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAE7E,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB;;;IAGlC;;;;;OAKG;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKlC;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;OAGG;;;;IAEH;;;;;;OAMG;;;;;;IAEH;;;;OAIG;;;;;;IAEH;;;;;OAKG
|
|
1
|
+
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../src/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAwC5B;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;aAGhC,CAAA;AACF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAE7E,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB;;;IAGlC;;;;;OAKG;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKlC;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;IAEH;;;OAGG;;;;IAEH;;;;;;OAMG;;;;;;IAEH;;;;OAIG;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;OAQG;;;;;IAOH;;;OAGG;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;OAGG;;;;;;;;;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;IAGH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;;;;;;;;;IAEH;;;;;;OAMG;;;;;;;IAEH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;;;OASG;;;;;;;;IAEH;;;;;;;;OAQG;;IAEH;;;;;;;;;OASG;;;;QA7NH;;;;;WAKG;;;;;;QALH;;;;;WAKG;;;IA2NH;;;;;;;OAOG;;IAEH;;;;;;;;;;;;;;;OAeG;;;;;IAEH;;;;;;;OAOG;;IAEH;;;;;;;OAOG;;IAEH;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAEH;;;;;;;OAOG;;;;;;IAEH;;;;;;;OAOG;;;;;;IAEH;;;;;OAKG;;;;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
import * as v from 'valibot';
|
|
2
|
+
/** Which transport a declaration uses, mirroring kernel's `McpTransport['kind']`. */
|
|
3
|
+
export declare const toolServerTransportSchema: v.PicklistSchema<["stdio", "http"], undefined>;
|
|
4
|
+
export type ToolServerTransport = v.InferOutput<typeof toolServerTransportSchema>;
|
|
5
|
+
/**
|
|
6
|
+
* Why a declared server cannot be probed from the deployment, when it cannot.
|
|
7
|
+
*
|
|
8
|
+
* This is NOT a fault vocabulary: every member describes a server that may be working perfectly on
|
|
9
|
+
* a run. What is missing is a vantage point — the backend is not the run container, and the probe
|
|
10
|
+
* refuses rather than reaching for the nearest thing it CAN talk to. Each member needs a different
|
|
11
|
+
* response from the operator, which is why they are separate:
|
|
12
|
+
*
|
|
13
|
+
* - `stdio_transport` — the server is a child process the harness spawns inside the run container.
|
|
14
|
+
* The backend has no container to spawn it in, and on the Worker no process model at all. There
|
|
15
|
+
* is nothing to fix: verify it from a run.
|
|
16
|
+
* - `container_local_url` — an `http` server on loopback means "beside the agent, in its own
|
|
17
|
+
* container". Probing that address from the backend would reach the BACKEND's own loopback, which
|
|
18
|
+
* is a different machine and quite possibly a real service, so the answer would be about the
|
|
19
|
+
* wrong process whether it succeeded or failed. Refused rather than attempted.
|
|
20
|
+
* - `url_not_allowed` — the url fails the transport rule (`isAllowedMcpHttpUrl`: https, or plain
|
|
21
|
+
* http on loopback). Boot validation already refuses such a declaration, so reaching this means
|
|
22
|
+
* the definition arrived from somewhere this process never boot-validated (a mothership-mode
|
|
23
|
+
* node), and the probe holds the same floor the dispatch does.
|
|
24
|
+
*/
|
|
25
|
+
export declare const toolServerNotProbeableReasonSchema: v.PicklistSchema<["stdio_transport", "container_local_url", "url_not_allowed"], undefined>;
|
|
26
|
+
export type ToolServerNotProbeableReason = v.InferOutput<typeof toolServerNotProbeableReasonSchema>;
|
|
27
|
+
/**
|
|
28
|
+
* One credential a declaration asks for, by NAME.
|
|
29
|
+
*
|
|
30
|
+
* `usage` is the declaration's own note on what value belongs here. It is the same field the
|
|
31
|
+
* credential checklist renders, and a tool server's half of it exists because the checklist can only
|
|
32
|
+
* say what the declaration says: a bare `SLACK_MCP_TOKEN` names neither the token TYPE nor its
|
|
33
|
+
* scopes, so without it the operator goes back to the deployment's source.
|
|
34
|
+
*/
|
|
35
|
+
export declare const toolServerCredentialSchema: v.ObjectSchema<{
|
|
36
|
+
readonly key: v.StringSchema<undefined>;
|
|
37
|
+
readonly required: v.BooleanSchema<undefined>;
|
|
38
|
+
readonly usage: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
39
|
+
}, undefined>;
|
|
40
|
+
export type ToolServerCredential = v.InferOutput<typeof toolServerCredentialSchema>;
|
|
41
|
+
/**
|
|
42
|
+
* One declared tool server, as an operator sees it.
|
|
43
|
+
*
|
|
44
|
+
* The point of the whole record is that a declaration has FOUR independent ways of not reaching a
|
|
45
|
+
* run, and until this surface existed they were visible in four different places (the deployment's
|
|
46
|
+
* source, a boot log, a run's prompt, and nowhere): which kinds declare it, which harnesses can
|
|
47
|
+
* serve it, whether its credentials resolve, and whether the endpoint answers. The first two are
|
|
48
|
+
* static facts stated here; the last two are what {@link toolServerProbeResultSchema} settles.
|
|
49
|
+
*/
|
|
50
|
+
export declare const toolServerViewSchema: v.ObjectSchema<{
|
|
51
|
+
readonly id: v.StringSchema<undefined>;
|
|
52
|
+
readonly label: v.StringSchema<undefined>;
|
|
53
|
+
readonly transport: v.PicklistSchema<["stdio", "http"], undefined>;
|
|
54
|
+
/**
|
|
55
|
+
* What the declaration points at: the url for an `http` server, the command for a `stdio` one.
|
|
56
|
+
* Rendered so the operator can recognise WHICH server a row is, and stripped of any userinfo
|
|
57
|
+
* credential a url carried, because this reaches a browser.
|
|
58
|
+
*/
|
|
59
|
+
readonly target: v.StringSchema<undefined>;
|
|
60
|
+
/** The definition's `guidance` — what the AGENT is told the server is for. */
|
|
61
|
+
readonly guidance: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
62
|
+
/**
|
|
63
|
+
* The agent kinds this server is declared for, own declarations and `assignToolServers` alike.
|
|
64
|
+
*
|
|
65
|
+
* EMPTY is a real and reportable state: a server registered by id and attached to no kind never
|
|
66
|
+
* reaches a dispatch, so its credentials are keys an operator would fill in for no run. Nothing
|
|
67
|
+
* else says so — boot validation checks declarations reachable FROM a kind, so an orphan registry
|
|
68
|
+
* entry passes every check silently.
|
|
69
|
+
*/
|
|
70
|
+
readonly declaredBy: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
71
|
+
/**
|
|
72
|
+
* Which harnesses could serve it: the definition's own `harnesses` narrowed to the CLIs whose MCP
|
|
73
|
+
* client reaches its transport. Free-form strings on purpose — these are CLI names
|
|
74
|
+
* (`claude-code`, `codex`, `pi`), not translated copy, and duplicating kernel's closed
|
|
75
|
+
* `HarnessKind` union here would be a second list to keep in step for no reader's benefit.
|
|
76
|
+
*
|
|
77
|
+
* EMPTY means the declaration can never run anywhere (an `http` server narrowed to `codex`, whose
|
|
78
|
+
* client is stdio-only). Boot warns about that; it is repeated here because a boot warning is not
|
|
79
|
+
* where anyone looks.
|
|
80
|
+
*/
|
|
81
|
+
readonly servableHarnesses: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
82
|
+
/** The tools the agent may call, when the definition narrowed them. Absent ⇒ all of them. */
|
|
83
|
+
readonly allowedTools: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
84
|
+
/** The credentials it asks for, by name. */
|
|
85
|
+
readonly credentials: v.ArraySchema<v.ObjectSchema<{
|
|
86
|
+
readonly key: v.StringSchema<undefined>;
|
|
87
|
+
readonly required: v.BooleanSchema<undefined>;
|
|
88
|
+
readonly usage: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
89
|
+
}, undefined>, undefined>;
|
|
90
|
+
/** Whether this deployment can reach the server to probe it. */
|
|
91
|
+
readonly probeable: v.BooleanSchema<undefined>;
|
|
92
|
+
/** Why not, when `probeable` is false. Always present in that case, absent otherwise. */
|
|
93
|
+
readonly notProbeableReason: v.OptionalSchema<v.PicklistSchema<["stdio_transport", "container_local_url", "url_not_allowed"], undefined>, undefined>;
|
|
94
|
+
}, undefined>;
|
|
95
|
+
export type ToolServerView = v.InferOutput<typeof toolServerViewSchema>;
|
|
96
|
+
/** What the tool-server surface returns: every declaration this deployment registered. */
|
|
97
|
+
export declare const toolServersViewSchema: v.ObjectSchema<{
|
|
98
|
+
readonly servers: v.ArraySchema<v.ObjectSchema<{
|
|
99
|
+
readonly id: v.StringSchema<undefined>;
|
|
100
|
+
readonly label: v.StringSchema<undefined>;
|
|
101
|
+
readonly transport: v.PicklistSchema<["stdio", "http"], undefined>;
|
|
102
|
+
/**
|
|
103
|
+
* What the declaration points at: the url for an `http` server, the command for a `stdio` one.
|
|
104
|
+
* Rendered so the operator can recognise WHICH server a row is, and stripped of any userinfo
|
|
105
|
+
* credential a url carried, because this reaches a browser.
|
|
106
|
+
*/
|
|
107
|
+
readonly target: v.StringSchema<undefined>;
|
|
108
|
+
/** The definition's `guidance` — what the AGENT is told the server is for. */
|
|
109
|
+
readonly guidance: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
110
|
+
/**
|
|
111
|
+
* The agent kinds this server is declared for, own declarations and `assignToolServers` alike.
|
|
112
|
+
*
|
|
113
|
+
* EMPTY is a real and reportable state: a server registered by id and attached to no kind never
|
|
114
|
+
* reaches a dispatch, so its credentials are keys an operator would fill in for no run. Nothing
|
|
115
|
+
* else says so — boot validation checks declarations reachable FROM a kind, so an orphan registry
|
|
116
|
+
* entry passes every check silently.
|
|
117
|
+
*/
|
|
118
|
+
readonly declaredBy: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
119
|
+
/**
|
|
120
|
+
* Which harnesses could serve it: the definition's own `harnesses` narrowed to the CLIs whose MCP
|
|
121
|
+
* client reaches its transport. Free-form strings on purpose — these are CLI names
|
|
122
|
+
* (`claude-code`, `codex`, `pi`), not translated copy, and duplicating kernel's closed
|
|
123
|
+
* `HarnessKind` union here would be a second list to keep in step for no reader's benefit.
|
|
124
|
+
*
|
|
125
|
+
* EMPTY means the declaration can never run anywhere (an `http` server narrowed to `codex`, whose
|
|
126
|
+
* client is stdio-only). Boot warns about that; it is repeated here because a boot warning is not
|
|
127
|
+
* where anyone looks.
|
|
128
|
+
*/
|
|
129
|
+
readonly servableHarnesses: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
130
|
+
/** The tools the agent may call, when the definition narrowed them. Absent ⇒ all of them. */
|
|
131
|
+
readonly allowedTools: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
132
|
+
/** The credentials it asks for, by name. */
|
|
133
|
+
readonly credentials: v.ArraySchema<v.ObjectSchema<{
|
|
134
|
+
readonly key: v.StringSchema<undefined>;
|
|
135
|
+
readonly required: v.BooleanSchema<undefined>;
|
|
136
|
+
readonly usage: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
137
|
+
}, undefined>, undefined>;
|
|
138
|
+
/** Whether this deployment can reach the server to probe it. */
|
|
139
|
+
readonly probeable: v.BooleanSchema<undefined>;
|
|
140
|
+
/** Why not, when `probeable` is false. Always present in that case, absent otherwise. */
|
|
141
|
+
readonly notProbeableReason: v.OptionalSchema<v.PicklistSchema<["stdio_transport", "container_local_url", "url_not_allowed"], undefined>, undefined>;
|
|
142
|
+
}, undefined>, undefined>;
|
|
143
|
+
}, undefined>;
|
|
144
|
+
export type ToolServersView = v.InferOutput<typeof toolServersViewSchema>;
|
|
145
|
+
/**
|
|
146
|
+
* The verdict of one probe. A CLOSED vocabulary, and the members are split by the fix they call for
|
|
147
|
+
* rather than by where in the code the failure happened:
|
|
148
|
+
*
|
|
149
|
+
* - `ok` — the server completed the MCP handshake and answered `tools/list`.
|
|
150
|
+
* - `credentials_missing` — a `required` credential did not resolve, so nothing was sent. This is
|
|
151
|
+
* the same condition that makes a dispatch drop the server under `missing_secret`, reached
|
|
152
|
+
* without spending a run to find out.
|
|
153
|
+
* - `credential_refused` — a credential's LOOKUP key names a platform configuration variable, so
|
|
154
|
+
* the probe refused to resolve it (the dispatch's `reserved_secret`). Kept apart from the above
|
|
155
|
+
* because setting the variable is precisely what must not help: the DECLARATION is what changes.
|
|
156
|
+
* - `unreachable` — the request never got an answer (DNS, TLS, connection refused, timeout). The
|
|
157
|
+
* endpoint or the network is the fix.
|
|
158
|
+
* - `http_error` — something answered with a status that is not an MCP response. `401`/`403` is the
|
|
159
|
+
* credential being wrong (as opposed to absent, which is `credentials_missing`); `404` is usually
|
|
160
|
+
* a url pointing at the wrong path. `httpStatus` carries which.
|
|
161
|
+
* - `protocol_error` — it answered, but not as an MCP server: a non-JSON body, a JSON-RPC error, a
|
|
162
|
+
* protocol version it would not negotiate. The url probably names something that is not this
|
|
163
|
+
* server.
|
|
164
|
+
* - `not_probeable` — the probe was refused before it began; see
|
|
165
|
+
* {@link toolServerNotProbeableReasonSchema}.
|
|
166
|
+
*/
|
|
167
|
+
export declare const toolServerProbeStatusSchema: v.PicklistSchema<["ok", "credentials_missing", "credential_refused", "unreachable", "http_error", "protocol_error", "not_probeable"], undefined>;
|
|
168
|
+
export type ToolServerProbeStatus = v.InferOutput<typeof toolServerProbeStatusSchema>;
|
|
169
|
+
/**
|
|
170
|
+
* Whether the tools the definition NARROWED to actually exist on the server.
|
|
171
|
+
*
|
|
172
|
+
* The first thing in the platform that can answer it. `allowedTools` is held to a NAME pattern at
|
|
173
|
+
* registration, at dispatch and at the job boundary, but no layer can check a well-formed name
|
|
174
|
+
* against reality: a typo'd `search_issue` narrows claude-code's allow-list to a pattern matching
|
|
175
|
+
* nothing while the prompt goes on advertising the name, which is the "told about a tool it cannot
|
|
176
|
+
* call" failure the whole unavailability vocabulary exists to prevent.
|
|
177
|
+
*
|
|
178
|
+
* `checked` is why this is an object rather than a bare list. `tools/list` is PAGINATED, and the
|
|
179
|
+
* probe reads a bounded number of pages; if a cursor was still outstanding, a name's absence from
|
|
180
|
+
* what came back is not evidence it is absent from the server. So an unread tail makes the verdict
|
|
181
|
+
* `checked: false` and `unmatched` empty, rather than reporting names as missing on the strength of
|
|
182
|
+
* a partial read.
|
|
183
|
+
*/
|
|
184
|
+
export declare const toolServerAllowedToolsCheckSchema: v.ObjectSchema<{
|
|
185
|
+
readonly declared: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
186
|
+
/** Declared names the server does not expose. Empty when `checked` is false. */
|
|
187
|
+
readonly unmatched: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
188
|
+
/** Whether the full tool list was read, and therefore whether `unmatched` means anything. */
|
|
189
|
+
readonly checked: v.BooleanSchema<undefined>;
|
|
190
|
+
}, undefined>;
|
|
191
|
+
export type ToolServerAllowedToolsCheck = v.InferOutput<typeof toolServerAllowedToolsCheckSchema>;
|
|
192
|
+
/** What one probe answered. */
|
|
193
|
+
export declare const toolServerProbeResultSchema: v.ObjectSchema<{
|
|
194
|
+
readonly serverId: v.StringSchema<undefined>;
|
|
195
|
+
readonly status: v.PicklistSchema<["ok", "credentials_missing", "credential_refused", "unreachable", "http_error", "protocol_error", "not_probeable"], undefined>;
|
|
196
|
+
/** Present when `status` is `not_probeable`, absent otherwise. */
|
|
197
|
+
readonly notProbeableReason: v.OptionalSchema<v.PicklistSchema<["stdio_transport", "container_local_url", "url_not_allowed"], undefined>, undefined>;
|
|
198
|
+
/** The `serverInfo` the handshake returned. Present on `ok`. */
|
|
199
|
+
readonly serverName: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
200
|
+
readonly serverVersion: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
201
|
+
/** The protocol version the server negotiated. Present on `ok`. */
|
|
202
|
+
readonly protocolVersion: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
203
|
+
/**
|
|
204
|
+
* How many tools the server exposed across the pages that were read. Present on `ok`.
|
|
205
|
+
*
|
|
206
|
+
* Read WITH `toolsComplete`: a count off a truncated read is a floor, not a total, and the two
|
|
207
|
+
* fields exist separately so the surface can say which it is holding.
|
|
208
|
+
*/
|
|
209
|
+
readonly toolCount: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
210
|
+
/** The tool names read, capped — see {@link MCP_PROBE_TOOL_NAME_CAP}. Present on `ok`. */
|
|
211
|
+
readonly tools: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
212
|
+
/** Whether every page of `tools/list` was read. Present on `ok`. */
|
|
213
|
+
readonly toolsComplete: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
214
|
+
/** The `allowedTools` reconciliation, when the definition narrowed them and the probe answered. */
|
|
215
|
+
readonly allowedTools: v.OptionalSchema<v.ObjectSchema<{
|
|
216
|
+
readonly declared: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
217
|
+
/** Declared names the server does not expose. Empty when `checked` is false. */
|
|
218
|
+
readonly unmatched: v.ArraySchema<v.StringSchema<undefined>, undefined>;
|
|
219
|
+
/** Whether the full tool list was read, and therefore whether `unmatched` means anything. */
|
|
220
|
+
readonly checked: v.BooleanSchema<undefined>;
|
|
221
|
+
}, undefined>, undefined>;
|
|
222
|
+
/** Which declared credentials did not resolve. Present on `credentials_missing`. */
|
|
223
|
+
readonly unresolvedCredentials: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
224
|
+
/** Which declared credential named a platform variable. Present on `credential_refused`. */
|
|
225
|
+
readonly refusedCredentials: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
226
|
+
/** The status something answered with. Present on `http_error`. */
|
|
227
|
+
readonly httpStatus: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
228
|
+
/**
|
|
229
|
+
* The failure in prose, for the disclosure behind the translated description. Scrubbed through
|
|
230
|
+
* `redactSecrets` at the emit site: a fetch error routinely echoes the request url, and this one
|
|
231
|
+
* carries a credential header.
|
|
232
|
+
*/
|
|
233
|
+
readonly error: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
234
|
+
}, undefined>;
|
|
235
|
+
export type ToolServerProbeResult = v.InferOutput<typeof toolServerProbeResultSchema>;
|
|
236
|
+
/**
|
|
237
|
+
* How many tool NAMES a probe result carries back.
|
|
238
|
+
*
|
|
239
|
+
* The list is for recognition ("yes, that is the Slack server") and for the `allowedTools`
|
|
240
|
+
* reconciliation, which is computed on the backend against everything read rather than against this
|
|
241
|
+
* prefix — so capping the wire list narrows what a human scrolls and never what was checked.
|
|
242
|
+
* `toolCount` states the real figure, so a truncated list is visible rather than implied.
|
|
243
|
+
*/
|
|
244
|
+
export declare const MCP_PROBE_TOOL_NAME_CAP = 100;
|
|
245
|
+
/**
|
|
246
|
+
* Pages of `tools/list` one probe reads before it stops and reports the read as incomplete.
|
|
247
|
+
*
|
|
248
|
+
* A bound rather than a full drain, because a probe is an interactive request an operator waits on
|
|
249
|
+
* and the page size is the SERVER's choice: an unbounded loop hands a remote server control of how
|
|
250
|
+
* long this endpoint runs. Three pages covers every real server's tool table; a cursor still
|
|
251
|
+
* outstanding after the third means the answer is "it works, and it has more tools than this can
|
|
252
|
+
* enumerate", which is a true and useful answer.
|
|
253
|
+
*/
|
|
254
|
+
export declare const MCP_PROBE_MAX_PAGES = 3;
|
|
255
|
+
/** How long a probe waits for the whole handshake-plus-list exchange. */
|
|
256
|
+
export declare const MCP_PROBE_TIMEOUT_MS = 10000;
|
|
257
|
+
//# sourceMappingURL=tool-servers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-servers.d.ts","sourceRoot":"","sources":["../src/tool-servers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AA8B5B,qFAAqF;AACrF,eAAO,MAAM,yBAAyB,gDAAgC,CAAA;AACtE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAEjF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,kCAAkC,4FAI7C,CAAA;AACF,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,kCAAkC,CAAC,CAAA;AAEnG;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B;;;;aAIrC,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAEnF;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB;;;;IAI/B;;;;OAIG;;IAEH,8EAA8E;;IAE9E;;;;;;;OAOG;;IAEH;;;;;;;;;OASG;;IAEH,6FAA6F;;IAE7F,4CAA4C;;;;;;IAE5C,gEAAgE;;IAEhE,yFAAyF;;aAEzF,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE,0FAA0F;AAC1F,eAAO,MAAM,qBAAqB;;;;;QAxChC;;;;WAIG;;QAEH,8EAA8E;;QAE9E;;;;;;;WAOG;;QAEH;;;;;;;;;WASG;;QAEH,6FAA6F;;QAE7F,4CAA4C;;;;;;QAE5C,gEAAgE;;QAEhE,yFAAyF;;;aAQzF,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEzE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,2BAA2B,kJAQtC,CAAA;AACF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAErF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iCAAiC;;IAE5C,gFAAgF;;IAEhF,6FAA6F;;aAE7F,CAAA;AACF,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,iCAAiC,CAAC,CAAA;AAEjG,+BAA+B;AAC/B,eAAO,MAAM,2BAA2B;;;IAGtC,kEAAkE;;IAElE,gEAAgE;;;IAGhE,mEAAmE;;IAEnE;;;;;OAKG;;IAEH,0FAA0F;;IAE1F,oEAAoE;;IAEpE,mGAAmG;;;QA7BnG,gFAAgF;;QAEhF,6FAA6F;;;IA6B7F,oFAAoF;;IAEpF,4FAA4F;;IAE5F,mEAAmE;;IAEnE;;;;OAIG;;aAEH,CAAA;AACF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAErF;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,MAAM,CAAA;AAE1C;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC,yEAAyE;AACzE,eAAO,MAAM,oBAAoB,QAAS,CAAA"}
|