@sema-ai/registry-core 0.10.3 → 0.10.5
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/CHANGELOG.md +38 -0
- package/dist/types.d.ts +462 -5
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +73 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
package/dist/types.d.ts
CHANGED
|
@@ -66,6 +66,36 @@ export declare const ModelCost: z.ZodObject<{
|
|
|
66
66
|
cacheRead?: number | undefined;
|
|
67
67
|
cacheWrite?: number | undefined;
|
|
68
68
|
}>;
|
|
69
|
+
/** sealed-box 算法标识(v1 唯一取值)。z.literal 钉死:换算法=换值=显式契约演进,不许静默漂移。 */
|
|
70
|
+
export declare const SEALED_BOX_ALG: "libsodium-sealedbox-x25519";
|
|
71
|
+
/** base64 形状底线(标准字母表,可带 padding)。**只校验形状不校验内容**——center 是托管方不是消费方,
|
|
72
|
+
* 解密/解不开是执行侧运行时的事;这里只挡"根本不是 base64"的写入事故。 */
|
|
73
|
+
export declare const BASE64_SHAPE: RegExp;
|
|
74
|
+
/** 接入模型的 sealed-box 托管密文(默认模式「直接贴 key」的存储形态)。
|
|
75
|
+
* - `ciphertext`:crypto_box_seal(plaintextKey, executionPublicKey) 的 base64。sealed box 开销 48 字节,
|
|
76
|
+
* 真实 API key ≤ 几百字节;`.max(8192)` 只防 blob 滥用,不是格式承诺。
|
|
77
|
+
* - `publicKeyId`:加密时用的执行域公钥 id(指向 execution.publicKeys[].publicKeyId)——执行侧凭它选私钥;
|
|
78
|
+
* 轮换后旧密文仍带旧 id,可解性由执行侧留存的旧私钥决定。
|
|
79
|
+
* - **write-only 纪律(消费方约定)**:center 的 GET 面永不回 ciphertext 本体(只回 publicKeyId+设置
|
|
80
|
+
* 时间);密文字段绝不进任何日志。schema 层不执法读面,这是 API 层的契约义务。
|
|
81
|
+
* - **与 `apiKeyEnv` 的互斥语义**:见 ModelEntry.sealedApiKey JSDoc(两者都设 = sealed 优先)。 */
|
|
82
|
+
export declare const SealedApiKey: z.ZodObject<{
|
|
83
|
+
/** sealed-box 密文,base64(形状校验 only——内容对 center 永远不透明)。 */
|
|
84
|
+
ciphertext: z.ZodString;
|
|
85
|
+
/** 加密所用执行域公钥的 id(execution.publicKeys 登记表的键)。 */
|
|
86
|
+
publicKeyId: z.ZodString;
|
|
87
|
+
/** 算法标识,v1 恒为 {@link SEALED_BOX_ALG}。 */
|
|
88
|
+
alg: z.ZodLiteral<"libsodium-sealedbox-x25519">;
|
|
89
|
+
}, "strip", z.ZodTypeAny, {
|
|
90
|
+
ciphertext: string;
|
|
91
|
+
publicKeyId: string;
|
|
92
|
+
alg: "libsodium-sealedbox-x25519";
|
|
93
|
+
}, {
|
|
94
|
+
ciphertext: string;
|
|
95
|
+
publicKeyId: string;
|
|
96
|
+
alg: "libsodium-sealedbox-x25519";
|
|
97
|
+
}>;
|
|
98
|
+
export type SealedApiKey = z.infer<typeof SealedApiKey>;
|
|
69
99
|
export declare const ModelEntry: z.ZodEffects<z.ZodObject<{
|
|
70
100
|
/** Catalog key + `@name` mention handle (stable, url/word-safe), e.g. "qwen-72b". */
|
|
71
101
|
name: z.ZodString;
|
|
@@ -79,8 +109,30 @@ export declare const ModelEntry: z.ZodEffects<z.ZodObject<{
|
|
|
79
109
|
api: z.ZodDefault<z.ZodEnum<["openai-completions", "anthropic-messages"]>>;
|
|
80
110
|
/** Gateway base URL (non-secret). Empty → the service's default gateway for that provider. */
|
|
81
111
|
baseUrl: z.ZodUnion<[z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>, z.ZodLiteral<"">]>;
|
|
82
|
-
/** NAME of the env var (in the SERVICE's env) holding this model's API key — never the key itself.
|
|
112
|
+
/** NAME of the env var (in the SERVICE's env) holding this model's API key — never the key itself.
|
|
113
|
+
* 专家模式(env-NAME 引用,web 面折叠进「高级」);默认模式见 {@link ModelEntry}.sealedApiKey。 */
|
|
83
114
|
apiKeyEnv: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
115
|
+
/** sealed-box 托管密文(0.10.5 默认模式「直接贴 key」;形状见 {@link SealedApiKey})。
|
|
116
|
+
* **互斥语义(两者都设 = sealed 优先)**:`sealedApiKey` 与 `apiKeyEnv` 语义互斥——执行侧注入 env 时
|
|
117
|
+
* sealed 解密值**压过** apiKeyEnv 引用(用户从专家模式切回默认贴 key 后,残留的 env-NAME 不得抢线)。
|
|
118
|
+
* 刻意不 schema 层拒双设(拒了=切模式必须先清旧字段,UI/迁移两头找病;优先级裁决比互斥禁令便宜)。
|
|
119
|
+
* ABSENT = 未托管(纯 env-NAME 现状),零迁移。 */
|
|
120
|
+
sealedApiKey: z.ZodOptional<z.ZodObject<{
|
|
121
|
+
/** sealed-box 密文,base64(形状校验 only——内容对 center 永远不透明)。 */
|
|
122
|
+
ciphertext: z.ZodString;
|
|
123
|
+
/** 加密所用执行域公钥的 id(execution.publicKeys 登记表的键)。 */
|
|
124
|
+
publicKeyId: z.ZodString;
|
|
125
|
+
/** 算法标识,v1 恒为 {@link SEALED_BOX_ALG}。 */
|
|
126
|
+
alg: z.ZodLiteral<"libsodium-sealedbox-x25519">;
|
|
127
|
+
}, "strip", z.ZodTypeAny, {
|
|
128
|
+
ciphertext: string;
|
|
129
|
+
publicKeyId: string;
|
|
130
|
+
alg: "libsodium-sealedbox-x25519";
|
|
131
|
+
}, {
|
|
132
|
+
ciphertext: string;
|
|
133
|
+
publicKeyId: string;
|
|
134
|
+
alg: "libsodium-sealedbox-x25519";
|
|
135
|
+
}>>;
|
|
84
136
|
/** Price/capability tier — fuels core 1.25 `selectModel({ tier })` role resolution. */
|
|
85
137
|
tier: z.ZodDefault<z.ZodEnum<["cheap", "standard", "premium"]>>;
|
|
86
138
|
reasoning: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -125,6 +177,11 @@ export declare const ModelEntry: z.ZodEffects<z.ZodObject<{
|
|
|
125
177
|
enabled: boolean;
|
|
126
178
|
baseUrl?: string | undefined;
|
|
127
179
|
apiKeyEnv?: string | undefined;
|
|
180
|
+
sealedApiKey?: {
|
|
181
|
+
ciphertext: string;
|
|
182
|
+
publicKeyId: string;
|
|
183
|
+
alg: "libsodium-sealedbox-x25519";
|
|
184
|
+
} | undefined;
|
|
128
185
|
contextWindow?: number | undefined;
|
|
129
186
|
maxTokens?: number | undefined;
|
|
130
187
|
cost?: {
|
|
@@ -142,6 +199,11 @@ export declare const ModelEntry: z.ZodEffects<z.ZodObject<{
|
|
|
142
199
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
143
200
|
baseUrl?: string | undefined;
|
|
144
201
|
apiKeyEnv?: string | undefined;
|
|
202
|
+
sealedApiKey?: {
|
|
203
|
+
ciphertext: string;
|
|
204
|
+
publicKeyId: string;
|
|
205
|
+
alg: "libsodium-sealedbox-x25519";
|
|
206
|
+
} | undefined;
|
|
145
207
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
146
208
|
reasoning?: boolean | undefined;
|
|
147
209
|
vision?: boolean | undefined;
|
|
@@ -169,6 +231,11 @@ export declare const ModelEntry: z.ZodEffects<z.ZodObject<{
|
|
|
169
231
|
enabled: boolean;
|
|
170
232
|
baseUrl?: string | undefined;
|
|
171
233
|
apiKeyEnv?: string | undefined;
|
|
234
|
+
sealedApiKey?: {
|
|
235
|
+
ciphertext: string;
|
|
236
|
+
publicKeyId: string;
|
|
237
|
+
alg: "libsodium-sealedbox-x25519";
|
|
238
|
+
} | undefined;
|
|
172
239
|
contextWindow?: number | undefined;
|
|
173
240
|
maxTokens?: number | undefined;
|
|
174
241
|
cost?: {
|
|
@@ -186,6 +253,11 @@ export declare const ModelEntry: z.ZodEffects<z.ZodObject<{
|
|
|
186
253
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
187
254
|
baseUrl?: string | undefined;
|
|
188
255
|
apiKeyEnv?: string | undefined;
|
|
256
|
+
sealedApiKey?: {
|
|
257
|
+
ciphertext: string;
|
|
258
|
+
publicKeyId: string;
|
|
259
|
+
alg: "libsodium-sealedbox-x25519";
|
|
260
|
+
} | undefined;
|
|
189
261
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
190
262
|
reasoning?: boolean | undefined;
|
|
191
263
|
vision?: boolean | undefined;
|
|
@@ -323,8 +395,30 @@ export declare const ModelsConfig: z.ZodEffects<z.ZodObject<{
|
|
|
323
395
|
api: z.ZodDefault<z.ZodEnum<["openai-completions", "anthropic-messages"]>>;
|
|
324
396
|
/** Gateway base URL (non-secret). Empty → the service's default gateway for that provider. */
|
|
325
397
|
baseUrl: z.ZodUnion<[z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>, z.ZodLiteral<"">]>;
|
|
326
|
-
/** NAME of the env var (in the SERVICE's env) holding this model's API key — never the key itself.
|
|
398
|
+
/** NAME of the env var (in the SERVICE's env) holding this model's API key — never the key itself.
|
|
399
|
+
* 专家模式(env-NAME 引用,web 面折叠进「高级」);默认模式见 {@link ModelEntry}.sealedApiKey。 */
|
|
327
400
|
apiKeyEnv: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
401
|
+
/** sealed-box 托管密文(0.10.5 默认模式「直接贴 key」;形状见 {@link SealedApiKey})。
|
|
402
|
+
* **互斥语义(两者都设 = sealed 优先)**:`sealedApiKey` 与 `apiKeyEnv` 语义互斥——执行侧注入 env 时
|
|
403
|
+
* sealed 解密值**压过** apiKeyEnv 引用(用户从专家模式切回默认贴 key 后,残留的 env-NAME 不得抢线)。
|
|
404
|
+
* 刻意不 schema 层拒双设(拒了=切模式必须先清旧字段,UI/迁移两头找病;优先级裁决比互斥禁令便宜)。
|
|
405
|
+
* ABSENT = 未托管(纯 env-NAME 现状),零迁移。 */
|
|
406
|
+
sealedApiKey: z.ZodOptional<z.ZodObject<{
|
|
407
|
+
/** sealed-box 密文,base64(形状校验 only——内容对 center 永远不透明)。 */
|
|
408
|
+
ciphertext: z.ZodString;
|
|
409
|
+
/** 加密所用执行域公钥的 id(execution.publicKeys 登记表的键)。 */
|
|
410
|
+
publicKeyId: z.ZodString;
|
|
411
|
+
/** 算法标识,v1 恒为 {@link SEALED_BOX_ALG}。 */
|
|
412
|
+
alg: z.ZodLiteral<"libsodium-sealedbox-x25519">;
|
|
413
|
+
}, "strip", z.ZodTypeAny, {
|
|
414
|
+
ciphertext: string;
|
|
415
|
+
publicKeyId: string;
|
|
416
|
+
alg: "libsodium-sealedbox-x25519";
|
|
417
|
+
}, {
|
|
418
|
+
ciphertext: string;
|
|
419
|
+
publicKeyId: string;
|
|
420
|
+
alg: "libsodium-sealedbox-x25519";
|
|
421
|
+
}>>;
|
|
328
422
|
/** Price/capability tier — fuels core 1.25 `selectModel({ tier })` role resolution. */
|
|
329
423
|
tier: z.ZodDefault<z.ZodEnum<["cheap", "standard", "premium"]>>;
|
|
330
424
|
reasoning: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -369,6 +463,11 @@ export declare const ModelsConfig: z.ZodEffects<z.ZodObject<{
|
|
|
369
463
|
enabled: boolean;
|
|
370
464
|
baseUrl?: string | undefined;
|
|
371
465
|
apiKeyEnv?: string | undefined;
|
|
466
|
+
sealedApiKey?: {
|
|
467
|
+
ciphertext: string;
|
|
468
|
+
publicKeyId: string;
|
|
469
|
+
alg: "libsodium-sealedbox-x25519";
|
|
470
|
+
} | undefined;
|
|
372
471
|
contextWindow?: number | undefined;
|
|
373
472
|
maxTokens?: number | undefined;
|
|
374
473
|
cost?: {
|
|
@@ -386,6 +485,11 @@ export declare const ModelsConfig: z.ZodEffects<z.ZodObject<{
|
|
|
386
485
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
387
486
|
baseUrl?: string | undefined;
|
|
388
487
|
apiKeyEnv?: string | undefined;
|
|
488
|
+
sealedApiKey?: {
|
|
489
|
+
ciphertext: string;
|
|
490
|
+
publicKeyId: string;
|
|
491
|
+
alg: "libsodium-sealedbox-x25519";
|
|
492
|
+
} | undefined;
|
|
389
493
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
390
494
|
reasoning?: boolean | undefined;
|
|
391
495
|
vision?: boolean | undefined;
|
|
@@ -413,6 +517,11 @@ export declare const ModelsConfig: z.ZodEffects<z.ZodObject<{
|
|
|
413
517
|
enabled: boolean;
|
|
414
518
|
baseUrl?: string | undefined;
|
|
415
519
|
apiKeyEnv?: string | undefined;
|
|
520
|
+
sealedApiKey?: {
|
|
521
|
+
ciphertext: string;
|
|
522
|
+
publicKeyId: string;
|
|
523
|
+
alg: "libsodium-sealedbox-x25519";
|
|
524
|
+
} | undefined;
|
|
416
525
|
contextWindow?: number | undefined;
|
|
417
526
|
maxTokens?: number | undefined;
|
|
418
527
|
cost?: {
|
|
@@ -430,6 +539,11 @@ export declare const ModelsConfig: z.ZodEffects<z.ZodObject<{
|
|
|
430
539
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
431
540
|
baseUrl?: string | undefined;
|
|
432
541
|
apiKeyEnv?: string | undefined;
|
|
542
|
+
sealedApiKey?: {
|
|
543
|
+
ciphertext: string;
|
|
544
|
+
publicKeyId: string;
|
|
545
|
+
alg: "libsodium-sealedbox-x25519";
|
|
546
|
+
} | undefined;
|
|
433
547
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
434
548
|
reasoning?: boolean | undefined;
|
|
435
549
|
vision?: boolean | undefined;
|
|
@@ -542,6 +656,11 @@ export declare const ModelsConfig: z.ZodEffects<z.ZodObject<{
|
|
|
542
656
|
enabled: boolean;
|
|
543
657
|
baseUrl?: string | undefined;
|
|
544
658
|
apiKeyEnv?: string | undefined;
|
|
659
|
+
sealedApiKey?: {
|
|
660
|
+
ciphertext: string;
|
|
661
|
+
publicKeyId: string;
|
|
662
|
+
alg: "libsodium-sealedbox-x25519";
|
|
663
|
+
} | undefined;
|
|
545
664
|
contextWindow?: number | undefined;
|
|
546
665
|
maxTokens?: number | undefined;
|
|
547
666
|
cost?: {
|
|
@@ -583,6 +702,11 @@ export declare const ModelsConfig: z.ZodEffects<z.ZodObject<{
|
|
|
583
702
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
584
703
|
baseUrl?: string | undefined;
|
|
585
704
|
apiKeyEnv?: string | undefined;
|
|
705
|
+
sealedApiKey?: {
|
|
706
|
+
ciphertext: string;
|
|
707
|
+
publicKeyId: string;
|
|
708
|
+
alg: "libsodium-sealedbox-x25519";
|
|
709
|
+
} | undefined;
|
|
586
710
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
587
711
|
reasoning?: boolean | undefined;
|
|
588
712
|
vision?: boolean | undefined;
|
|
@@ -634,6 +758,11 @@ export declare const ModelsConfig: z.ZodEffects<z.ZodObject<{
|
|
|
634
758
|
enabled: boolean;
|
|
635
759
|
baseUrl?: string | undefined;
|
|
636
760
|
apiKeyEnv?: string | undefined;
|
|
761
|
+
sealedApiKey?: {
|
|
762
|
+
ciphertext: string;
|
|
763
|
+
publicKeyId: string;
|
|
764
|
+
alg: "libsodium-sealedbox-x25519";
|
|
765
|
+
} | undefined;
|
|
637
766
|
contextWindow?: number | undefined;
|
|
638
767
|
maxTokens?: number | undefined;
|
|
639
768
|
cost?: {
|
|
@@ -675,6 +804,11 @@ export declare const ModelsConfig: z.ZodEffects<z.ZodObject<{
|
|
|
675
804
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
676
805
|
baseUrl?: string | undefined;
|
|
677
806
|
apiKeyEnv?: string | undefined;
|
|
807
|
+
sealedApiKey?: {
|
|
808
|
+
ciphertext: string;
|
|
809
|
+
publicKeyId: string;
|
|
810
|
+
alg: "libsodium-sealedbox-x25519";
|
|
811
|
+
} | undefined;
|
|
678
812
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
679
813
|
reasoning?: boolean | undefined;
|
|
680
814
|
vision?: boolean | undefined;
|
|
@@ -1554,6 +1688,19 @@ export declare const EntitlementRuntimeCaps: z.ZodObject<{
|
|
|
1554
1688
|
* center wins). On compose across bundles, `false` (deny) still wins — see RUNTIME_CAP_STRICT; core's
|
|
1555
1689
|
* `=== true` opt-in check is orthogonal to that merge polarity. */
|
|
1556
1690
|
allowObservers: z.ZodOptional<z.ZodBoolean>;
|
|
1691
|
+
/** Per-principal ARM switch for the auto-mode CLASSIFIER (core 1.276 批2 seam `RuntimeCaps.autoMode`, 板
|
|
1692
|
+
* [672]④/[682]① — a surviving permission `ask` is routed to the small-model security classifier before any
|
|
1693
|
+
* human/durable resolution). ⚠️ Same INVERTED consumption polarity as `allowObservers`: core is `=== true`
|
|
1694
|
+
* explicit opt-in, default OFF — this key is the ENABLE line, not just a ceiling. Three-state semantics
|
|
1695
|
+
* (ABSENT ≠ false): ABSENT = center says nothing → key NOT emitted on the wire (core stays the SOLE default
|
|
1696
|
+
* source — never backfill absence into an explicit verdict); `true` = explicitly arm the classifier for this
|
|
1697
|
+
* principal (a no-op on a deployment without a wired classify leg — the capability gate lives in core);
|
|
1698
|
+
* `false` = explicit org deny. On compose across bundles `false` (deny) wins — see RUNTIME_CAP_STRICT;
|
|
1699
|
+
* core's `=== true` opt-in check is orthogonal to that merge polarity. DIVISION OF LABOR vs
|
|
1700
|
+
* {@link allowAutoMode}: `allowAutoMode` is the 准入 may-I ceiling on the USER-facing auto permission mode
|
|
1701
|
+
* (shell/settings face, tighten-only); `autoMode` is center's 部署 arm decision for the server-side
|
|
1702
|
+
* classifier leg itself. */
|
|
1703
|
+
autoMode: z.ZodOptional<z.ZodBoolean>;
|
|
1557
1704
|
allowUltracode: z.ZodOptional<z.ZodBoolean>;
|
|
1558
1705
|
/** Force this principal's run onto durable-approval (per-tool gate) — center's fleet-wide handle for CC-faithful
|
|
1559
1706
|
* per-tool interception (K-3, core [318] confirmed it consumes this). Polarity is INVERTED vs the allow* caps:
|
|
@@ -1566,6 +1713,7 @@ export declare const EntitlementRuntimeCaps: z.ZodObject<{
|
|
|
1566
1713
|
allowWorkflows?: boolean | undefined;
|
|
1567
1714
|
allowFork?: boolean | undefined;
|
|
1568
1715
|
allowObservers?: boolean | undefined;
|
|
1716
|
+
autoMode?: boolean | undefined;
|
|
1569
1717
|
allowUltracode?: boolean | undefined;
|
|
1570
1718
|
forceDurableGate?: boolean | undefined;
|
|
1571
1719
|
}, {
|
|
@@ -1574,6 +1722,7 @@ export declare const EntitlementRuntimeCaps: z.ZodObject<{
|
|
|
1574
1722
|
allowWorkflows?: boolean | undefined;
|
|
1575
1723
|
allowFork?: boolean | undefined;
|
|
1576
1724
|
allowObservers?: boolean | undefined;
|
|
1725
|
+
autoMode?: boolean | undefined;
|
|
1577
1726
|
allowUltracode?: boolean | undefined;
|
|
1578
1727
|
forceDurableGate?: boolean | undefined;
|
|
1579
1728
|
}>;
|
|
@@ -1680,6 +1829,19 @@ export declare const EntitlementTier: z.ZodObject<{
|
|
|
1680
1829
|
* center wins). On compose across bundles, `false` (deny) still wins — see RUNTIME_CAP_STRICT; core's
|
|
1681
1830
|
* `=== true` opt-in check is orthogonal to that merge polarity. */
|
|
1682
1831
|
allowObservers: z.ZodOptional<z.ZodBoolean>;
|
|
1832
|
+
/** Per-principal ARM switch for the auto-mode CLASSIFIER (core 1.276 批2 seam `RuntimeCaps.autoMode`, 板
|
|
1833
|
+
* [672]④/[682]① — a surviving permission `ask` is routed to the small-model security classifier before any
|
|
1834
|
+
* human/durable resolution). ⚠️ Same INVERTED consumption polarity as `allowObservers`: core is `=== true`
|
|
1835
|
+
* explicit opt-in, default OFF — this key is the ENABLE line, not just a ceiling. Three-state semantics
|
|
1836
|
+
* (ABSENT ≠ false): ABSENT = center says nothing → key NOT emitted on the wire (core stays the SOLE default
|
|
1837
|
+
* source — never backfill absence into an explicit verdict); `true` = explicitly arm the classifier for this
|
|
1838
|
+
* principal (a no-op on a deployment without a wired classify leg — the capability gate lives in core);
|
|
1839
|
+
* `false` = explicit org deny. On compose across bundles `false` (deny) wins — see RUNTIME_CAP_STRICT;
|
|
1840
|
+
* core's `=== true` opt-in check is orthogonal to that merge polarity. DIVISION OF LABOR vs
|
|
1841
|
+
* {@link allowAutoMode}: `allowAutoMode` is the 准入 may-I ceiling on the USER-facing auto permission mode
|
|
1842
|
+
* (shell/settings face, tighten-only); `autoMode` is center's 部署 arm decision for the server-side
|
|
1843
|
+
* classifier leg itself. */
|
|
1844
|
+
autoMode: z.ZodOptional<z.ZodBoolean>;
|
|
1683
1845
|
allowUltracode: z.ZodOptional<z.ZodBoolean>;
|
|
1684
1846
|
/** Force this principal's run onto durable-approval (per-tool gate) — center's fleet-wide handle for CC-faithful
|
|
1685
1847
|
* per-tool interception (K-3, core [318] confirmed it consumes this). Polarity is INVERTED vs the allow* caps:
|
|
@@ -1692,6 +1854,7 @@ export declare const EntitlementTier: z.ZodObject<{
|
|
|
1692
1854
|
allowWorkflows?: boolean | undefined;
|
|
1693
1855
|
allowFork?: boolean | undefined;
|
|
1694
1856
|
allowObservers?: boolean | undefined;
|
|
1857
|
+
autoMode?: boolean | undefined;
|
|
1695
1858
|
allowUltracode?: boolean | undefined;
|
|
1696
1859
|
forceDurableGate?: boolean | undefined;
|
|
1697
1860
|
}, {
|
|
@@ -1700,6 +1863,7 @@ export declare const EntitlementTier: z.ZodObject<{
|
|
|
1700
1863
|
allowWorkflows?: boolean | undefined;
|
|
1701
1864
|
allowFork?: boolean | undefined;
|
|
1702
1865
|
allowObservers?: boolean | undefined;
|
|
1866
|
+
autoMode?: boolean | undefined;
|
|
1703
1867
|
allowUltracode?: boolean | undefined;
|
|
1704
1868
|
forceDurableGate?: boolean | undefined;
|
|
1705
1869
|
}>>;
|
|
@@ -1735,6 +1899,7 @@ export declare const EntitlementTier: z.ZodObject<{
|
|
|
1735
1899
|
allowWorkflows?: boolean | undefined;
|
|
1736
1900
|
allowFork?: boolean | undefined;
|
|
1737
1901
|
allowObservers?: boolean | undefined;
|
|
1902
|
+
autoMode?: boolean | undefined;
|
|
1738
1903
|
allowUltracode?: boolean | undefined;
|
|
1739
1904
|
forceDurableGate?: boolean | undefined;
|
|
1740
1905
|
} | undefined;
|
|
@@ -1768,6 +1933,7 @@ export declare const EntitlementTier: z.ZodObject<{
|
|
|
1768
1933
|
allowWorkflows?: boolean | undefined;
|
|
1769
1934
|
allowFork?: boolean | undefined;
|
|
1770
1935
|
allowObservers?: boolean | undefined;
|
|
1936
|
+
autoMode?: boolean | undefined;
|
|
1771
1937
|
allowUltracode?: boolean | undefined;
|
|
1772
1938
|
forceDurableGate?: boolean | undefined;
|
|
1773
1939
|
} | undefined;
|
|
@@ -1989,6 +2155,19 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
1989
2155
|
* center wins). On compose across bundles, `false` (deny) still wins — see RUNTIME_CAP_STRICT; core's
|
|
1990
2156
|
* `=== true` opt-in check is orthogonal to that merge polarity. */
|
|
1991
2157
|
allowObservers: z.ZodOptional<z.ZodBoolean>;
|
|
2158
|
+
/** Per-principal ARM switch for the auto-mode CLASSIFIER (core 1.276 批2 seam `RuntimeCaps.autoMode`, 板
|
|
2159
|
+
* [672]④/[682]① — a surviving permission `ask` is routed to the small-model security classifier before any
|
|
2160
|
+
* human/durable resolution). ⚠️ Same INVERTED consumption polarity as `allowObservers`: core is `=== true`
|
|
2161
|
+
* explicit opt-in, default OFF — this key is the ENABLE line, not just a ceiling. Three-state semantics
|
|
2162
|
+
* (ABSENT ≠ false): ABSENT = center says nothing → key NOT emitted on the wire (core stays the SOLE default
|
|
2163
|
+
* source — never backfill absence into an explicit verdict); `true` = explicitly arm the classifier for this
|
|
2164
|
+
* principal (a no-op on a deployment without a wired classify leg — the capability gate lives in core);
|
|
2165
|
+
* `false` = explicit org deny. On compose across bundles `false` (deny) wins — see RUNTIME_CAP_STRICT;
|
|
2166
|
+
* core's `=== true` opt-in check is orthogonal to that merge polarity. DIVISION OF LABOR vs
|
|
2167
|
+
* {@link allowAutoMode}: `allowAutoMode` is the 准入 may-I ceiling on the USER-facing auto permission mode
|
|
2168
|
+
* (shell/settings face, tighten-only); `autoMode` is center's 部署 arm decision for the server-side
|
|
2169
|
+
* classifier leg itself. */
|
|
2170
|
+
autoMode: z.ZodOptional<z.ZodBoolean>;
|
|
1992
2171
|
allowUltracode: z.ZodOptional<z.ZodBoolean>;
|
|
1993
2172
|
/** Force this principal's run onto durable-approval (per-tool gate) — center's fleet-wide handle for CC-faithful
|
|
1994
2173
|
* per-tool interception (K-3, core [318] confirmed it consumes this). Polarity is INVERTED vs the allow* caps:
|
|
@@ -2001,6 +2180,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2001
2180
|
allowWorkflows?: boolean | undefined;
|
|
2002
2181
|
allowFork?: boolean | undefined;
|
|
2003
2182
|
allowObservers?: boolean | undefined;
|
|
2183
|
+
autoMode?: boolean | undefined;
|
|
2004
2184
|
allowUltracode?: boolean | undefined;
|
|
2005
2185
|
forceDurableGate?: boolean | undefined;
|
|
2006
2186
|
}, {
|
|
@@ -2009,6 +2189,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2009
2189
|
allowWorkflows?: boolean | undefined;
|
|
2010
2190
|
allowFork?: boolean | undefined;
|
|
2011
2191
|
allowObservers?: boolean | undefined;
|
|
2192
|
+
autoMode?: boolean | undefined;
|
|
2012
2193
|
allowUltracode?: boolean | undefined;
|
|
2013
2194
|
forceDurableGate?: boolean | undefined;
|
|
2014
2195
|
}>>;
|
|
@@ -2108,6 +2289,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2108
2289
|
allowWorkflows?: boolean | undefined;
|
|
2109
2290
|
allowFork?: boolean | undefined;
|
|
2110
2291
|
allowObservers?: boolean | undefined;
|
|
2292
|
+
autoMode?: boolean | undefined;
|
|
2111
2293
|
allowUltracode?: boolean | undefined;
|
|
2112
2294
|
forceDurableGate?: boolean | undefined;
|
|
2113
2295
|
} | undefined;
|
|
@@ -2138,6 +2320,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2138
2320
|
allowWorkflows?: boolean | undefined;
|
|
2139
2321
|
allowFork?: boolean | undefined;
|
|
2140
2322
|
allowObservers?: boolean | undefined;
|
|
2323
|
+
autoMode?: boolean | undefined;
|
|
2141
2324
|
allowUltracode?: boolean | undefined;
|
|
2142
2325
|
forceDurableGate?: boolean | undefined;
|
|
2143
2326
|
} | undefined;
|
|
@@ -2241,6 +2424,19 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2241
2424
|
* center wins). On compose across bundles, `false` (deny) still wins — see RUNTIME_CAP_STRICT; core's
|
|
2242
2425
|
* `=== true` opt-in check is orthogonal to that merge polarity. */
|
|
2243
2426
|
allowObservers: z.ZodOptional<z.ZodBoolean>;
|
|
2427
|
+
/** Per-principal ARM switch for the auto-mode CLASSIFIER (core 1.276 批2 seam `RuntimeCaps.autoMode`, 板
|
|
2428
|
+
* [672]④/[682]① — a surviving permission `ask` is routed to the small-model security classifier before any
|
|
2429
|
+
* human/durable resolution). ⚠️ Same INVERTED consumption polarity as `allowObservers`: core is `=== true`
|
|
2430
|
+
* explicit opt-in, default OFF — this key is the ENABLE line, not just a ceiling. Three-state semantics
|
|
2431
|
+
* (ABSENT ≠ false): ABSENT = center says nothing → key NOT emitted on the wire (core stays the SOLE default
|
|
2432
|
+
* source — never backfill absence into an explicit verdict); `true` = explicitly arm the classifier for this
|
|
2433
|
+
* principal (a no-op on a deployment without a wired classify leg — the capability gate lives in core);
|
|
2434
|
+
* `false` = explicit org deny. On compose across bundles `false` (deny) wins — see RUNTIME_CAP_STRICT;
|
|
2435
|
+
* core's `=== true` opt-in check is orthogonal to that merge polarity. DIVISION OF LABOR vs
|
|
2436
|
+
* {@link allowAutoMode}: `allowAutoMode` is the 准入 may-I ceiling on the USER-facing auto permission mode
|
|
2437
|
+
* (shell/settings face, tighten-only); `autoMode` is center's 部署 arm decision for the server-side
|
|
2438
|
+
* classifier leg itself. */
|
|
2439
|
+
autoMode: z.ZodOptional<z.ZodBoolean>;
|
|
2244
2440
|
allowUltracode: z.ZodOptional<z.ZodBoolean>;
|
|
2245
2441
|
/** Force this principal's run onto durable-approval (per-tool gate) — center's fleet-wide handle for CC-faithful
|
|
2246
2442
|
* per-tool interception (K-3, core [318] confirmed it consumes this). Polarity is INVERTED vs the allow* caps:
|
|
@@ -2253,6 +2449,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2253
2449
|
allowWorkflows?: boolean | undefined;
|
|
2254
2450
|
allowFork?: boolean | undefined;
|
|
2255
2451
|
allowObservers?: boolean | undefined;
|
|
2452
|
+
autoMode?: boolean | undefined;
|
|
2256
2453
|
allowUltracode?: boolean | undefined;
|
|
2257
2454
|
forceDurableGate?: boolean | undefined;
|
|
2258
2455
|
}, {
|
|
@@ -2261,6 +2458,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2261
2458
|
allowWorkflows?: boolean | undefined;
|
|
2262
2459
|
allowFork?: boolean | undefined;
|
|
2263
2460
|
allowObservers?: boolean | undefined;
|
|
2461
|
+
autoMode?: boolean | undefined;
|
|
2264
2462
|
allowUltracode?: boolean | undefined;
|
|
2265
2463
|
forceDurableGate?: boolean | undefined;
|
|
2266
2464
|
}>>;
|
|
@@ -2296,6 +2494,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2296
2494
|
allowWorkflows?: boolean | undefined;
|
|
2297
2495
|
allowFork?: boolean | undefined;
|
|
2298
2496
|
allowObservers?: boolean | undefined;
|
|
2497
|
+
autoMode?: boolean | undefined;
|
|
2299
2498
|
allowUltracode?: boolean | undefined;
|
|
2300
2499
|
forceDurableGate?: boolean | undefined;
|
|
2301
2500
|
} | undefined;
|
|
@@ -2329,6 +2528,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2329
2528
|
allowWorkflows?: boolean | undefined;
|
|
2330
2529
|
allowFork?: boolean | undefined;
|
|
2331
2530
|
allowObservers?: boolean | undefined;
|
|
2531
|
+
autoMode?: boolean | undefined;
|
|
2332
2532
|
allowUltracode?: boolean | undefined;
|
|
2333
2533
|
forceDurableGate?: boolean | undefined;
|
|
2334
2534
|
} | undefined;
|
|
@@ -2626,6 +2826,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2626
2826
|
allowWorkflows?: boolean | undefined;
|
|
2627
2827
|
allowFork?: boolean | undefined;
|
|
2628
2828
|
allowObservers?: boolean | undefined;
|
|
2829
|
+
autoMode?: boolean | undefined;
|
|
2629
2830
|
allowUltracode?: boolean | undefined;
|
|
2630
2831
|
forceDurableGate?: boolean | undefined;
|
|
2631
2832
|
} | undefined;
|
|
@@ -2698,6 +2899,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2698
2899
|
allowWorkflows?: boolean | undefined;
|
|
2699
2900
|
allowFork?: boolean | undefined;
|
|
2700
2901
|
allowObservers?: boolean | undefined;
|
|
2902
|
+
autoMode?: boolean | undefined;
|
|
2701
2903
|
allowUltracode?: boolean | undefined;
|
|
2702
2904
|
forceDurableGate?: boolean | undefined;
|
|
2703
2905
|
} | undefined;
|
|
@@ -2747,6 +2949,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2747
2949
|
allowWorkflows?: boolean | undefined;
|
|
2748
2950
|
allowFork?: boolean | undefined;
|
|
2749
2951
|
allowObservers?: boolean | undefined;
|
|
2952
|
+
autoMode?: boolean | undefined;
|
|
2750
2953
|
allowUltracode?: boolean | undefined;
|
|
2751
2954
|
forceDurableGate?: boolean | undefined;
|
|
2752
2955
|
} | undefined;
|
|
@@ -2775,6 +2978,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2775
2978
|
allowWorkflows?: boolean | undefined;
|
|
2776
2979
|
allowFork?: boolean | undefined;
|
|
2777
2980
|
allowObservers?: boolean | undefined;
|
|
2981
|
+
autoMode?: boolean | undefined;
|
|
2778
2982
|
allowUltracode?: boolean | undefined;
|
|
2779
2983
|
forceDurableGate?: boolean | undefined;
|
|
2780
2984
|
} | undefined;
|
|
@@ -2868,6 +3072,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2868
3072
|
allowWorkflows?: boolean | undefined;
|
|
2869
3073
|
allowFork?: boolean | undefined;
|
|
2870
3074
|
allowObservers?: boolean | undefined;
|
|
3075
|
+
autoMode?: boolean | undefined;
|
|
2871
3076
|
allowUltracode?: boolean | undefined;
|
|
2872
3077
|
forceDurableGate?: boolean | undefined;
|
|
2873
3078
|
} | undefined;
|
|
@@ -2940,6 +3145,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2940
3145
|
allowWorkflows?: boolean | undefined;
|
|
2941
3146
|
allowFork?: boolean | undefined;
|
|
2942
3147
|
allowObservers?: boolean | undefined;
|
|
3148
|
+
autoMode?: boolean | undefined;
|
|
2943
3149
|
allowUltracode?: boolean | undefined;
|
|
2944
3150
|
forceDurableGate?: boolean | undefined;
|
|
2945
3151
|
} | undefined;
|
|
@@ -2989,6 +3195,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
2989
3195
|
allowWorkflows?: boolean | undefined;
|
|
2990
3196
|
allowFork?: boolean | undefined;
|
|
2991
3197
|
allowObservers?: boolean | undefined;
|
|
3198
|
+
autoMode?: boolean | undefined;
|
|
2992
3199
|
allowUltracode?: boolean | undefined;
|
|
2993
3200
|
forceDurableGate?: boolean | undefined;
|
|
2994
3201
|
} | undefined;
|
|
@@ -3017,6 +3224,7 @@ export declare const EntitlementConfig: z.ZodEffects<z.ZodObject<{
|
|
|
3017
3224
|
allowWorkflows?: boolean | undefined;
|
|
3018
3225
|
allowFork?: boolean | undefined;
|
|
3019
3226
|
allowObservers?: boolean | undefined;
|
|
3227
|
+
autoMode?: boolean | undefined;
|
|
3020
3228
|
allowUltracode?: boolean | undefined;
|
|
3021
3229
|
forceDurableGate?: boolean | undefined;
|
|
3022
3230
|
} | undefined;
|
|
@@ -3121,7 +3329,32 @@ export declare const SessionMirrorPolicy: z.ZodObject<{
|
|
|
3121
3329
|
required?: boolean | undefined;
|
|
3122
3330
|
}>;
|
|
3123
3331
|
export type SessionMirrorPolicy = z.infer<typeof SessionMirrorPolicy>;
|
|
3124
|
-
|
|
3332
|
+
/** 执行域 sealed-box 加密公钥登记(0.10.5,密钥托管线;挂 execution 域=「执行环境的属性」循
|
|
3333
|
+
* sessionMirror 收编先例,零新域)。center **只登记公钥**——私钥由执行侧(service worker/引擎)
|
|
3334
|
+
* 生成并持有,永不上行;浏览器端用这里的公钥 crypto_box_seal 加密模型 key(见 {@link SealedApiKey})。
|
|
3335
|
+
* X25519 公钥恒 32 字节 → base64 恒 43 字符 + "=",regex 钉死(错长度=根本不是 X25519 公钥,写侧
|
|
3336
|
+
* fail-loud 比执行侧解密失败早得多)。 */
|
|
3337
|
+
export declare const ExecutionPublicKey: z.ZodObject<{
|
|
3338
|
+
/** 公钥 id(密文的 publicKeyId 指向此键;登记表内唯一)。 */
|
|
3339
|
+
publicKeyId: z.ZodString;
|
|
3340
|
+
/** X25519 公钥,base64(32 字节 → 恒 44 字符含 padding)。 */
|
|
3341
|
+
publicKey: z.ZodString;
|
|
3342
|
+
/** 登记时刻(ISO)。center 写面 server 端盖章(projects.registeredAt 同款纪律)。 */
|
|
3343
|
+
createdAt: z.ZodString;
|
|
3344
|
+
notes: z.ZodOptional<z.ZodString>;
|
|
3345
|
+
}, "strip", z.ZodTypeAny, {
|
|
3346
|
+
publicKeyId: string;
|
|
3347
|
+
publicKey: string;
|
|
3348
|
+
createdAt: string;
|
|
3349
|
+
notes?: string | undefined;
|
|
3350
|
+
}, {
|
|
3351
|
+
publicKeyId: string;
|
|
3352
|
+
publicKey: string;
|
|
3353
|
+
createdAt: string;
|
|
3354
|
+
notes?: string | undefined;
|
|
3355
|
+
}>;
|
|
3356
|
+
export type ExecutionPublicKey = z.infer<typeof ExecutionPublicKey>;
|
|
3357
|
+
export declare const ExecutionPolicy: z.ZodEffects<z.ZodObject<{
|
|
3125
3358
|
/** true = tasks under this scope MUST run in a sandbox / controlled execution lane (the consuming
|
|
3126
3359
|
* shell locks sandbox-enabled by policy; user settings can't turn it off — CC 同款语义). */
|
|
3127
3360
|
required: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -3143,6 +3376,28 @@ export declare const ExecutionPolicy: z.ZodObject<{
|
|
|
3143
3376
|
engineUrl: string;
|
|
3144
3377
|
required?: boolean | undefined;
|
|
3145
3378
|
}>>;
|
|
3379
|
+
/** 执行域 sealed-box 公钥登记表(0.10.5)。**optional 无 default,ABSENT = 未登记**(0.8–0.10 存量
|
|
3380
|
+
* execution 文档字节稳定,sessionMirror 同款零迁移纪律);web 面无已登记公钥时「贴密钥」tab 显示
|
|
3381
|
+
* 引导并回落 env-NAME。多把并存合法(轮换窗口:新密文用新钥,旧密文仍可被旧私钥解)。 */
|
|
3382
|
+
publicKeys: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
3383
|
+
/** 公钥 id(密文的 publicKeyId 指向此键;登记表内唯一)。 */
|
|
3384
|
+
publicKeyId: z.ZodString;
|
|
3385
|
+
/** X25519 公钥,base64(32 字节 → 恒 44 字符含 padding)。 */
|
|
3386
|
+
publicKey: z.ZodString;
|
|
3387
|
+
/** 登记时刻(ISO)。center 写面 server 端盖章(projects.registeredAt 同款纪律)。 */
|
|
3388
|
+
createdAt: z.ZodString;
|
|
3389
|
+
notes: z.ZodOptional<z.ZodString>;
|
|
3390
|
+
}, "strip", z.ZodTypeAny, {
|
|
3391
|
+
publicKeyId: string;
|
|
3392
|
+
publicKey: string;
|
|
3393
|
+
createdAt: string;
|
|
3394
|
+
notes?: string | undefined;
|
|
3395
|
+
}, {
|
|
3396
|
+
publicKeyId: string;
|
|
3397
|
+
publicKey: string;
|
|
3398
|
+
createdAt: string;
|
|
3399
|
+
notes?: string | undefined;
|
|
3400
|
+
}>, "many">>;
|
|
3146
3401
|
}, "strip", z.ZodTypeAny, {
|
|
3147
3402
|
required: boolean;
|
|
3148
3403
|
allowedLanes: string[];
|
|
@@ -3150,6 +3405,38 @@ export declare const ExecutionPolicy: z.ZodObject<{
|
|
|
3150
3405
|
required: boolean;
|
|
3151
3406
|
engineUrl: string;
|
|
3152
3407
|
} | undefined;
|
|
3408
|
+
publicKeys?: {
|
|
3409
|
+
publicKeyId: string;
|
|
3410
|
+
publicKey: string;
|
|
3411
|
+
createdAt: string;
|
|
3412
|
+
notes?: string | undefined;
|
|
3413
|
+
}[] | undefined;
|
|
3414
|
+
}, {
|
|
3415
|
+
required?: boolean | undefined;
|
|
3416
|
+
allowedLanes?: string[] | undefined;
|
|
3417
|
+
sessionMirror?: {
|
|
3418
|
+
engineUrl: string;
|
|
3419
|
+
required?: boolean | undefined;
|
|
3420
|
+
} | undefined;
|
|
3421
|
+
publicKeys?: {
|
|
3422
|
+
publicKeyId: string;
|
|
3423
|
+
publicKey: string;
|
|
3424
|
+
createdAt: string;
|
|
3425
|
+
notes?: string | undefined;
|
|
3426
|
+
}[] | undefined;
|
|
3427
|
+
}>, {
|
|
3428
|
+
required: boolean;
|
|
3429
|
+
allowedLanes: string[];
|
|
3430
|
+
sessionMirror?: {
|
|
3431
|
+
required: boolean;
|
|
3432
|
+
engineUrl: string;
|
|
3433
|
+
} | undefined;
|
|
3434
|
+
publicKeys?: {
|
|
3435
|
+
publicKeyId: string;
|
|
3436
|
+
publicKey: string;
|
|
3437
|
+
createdAt: string;
|
|
3438
|
+
notes?: string | undefined;
|
|
3439
|
+
}[] | undefined;
|
|
3153
3440
|
}, {
|
|
3154
3441
|
required?: boolean | undefined;
|
|
3155
3442
|
allowedLanes?: string[] | undefined;
|
|
@@ -3157,6 +3444,12 @@ export declare const ExecutionPolicy: z.ZodObject<{
|
|
|
3157
3444
|
engineUrl: string;
|
|
3158
3445
|
required?: boolean | undefined;
|
|
3159
3446
|
} | undefined;
|
|
3447
|
+
publicKeys?: {
|
|
3448
|
+
publicKeyId: string;
|
|
3449
|
+
publicKey: string;
|
|
3450
|
+
createdAt: string;
|
|
3451
|
+
notes?: string | undefined;
|
|
3452
|
+
}[] | undefined;
|
|
3160
3453
|
}>;
|
|
3161
3454
|
export type ExecutionPolicy = z.infer<typeof ExecutionPolicy>;
|
|
3162
3455
|
/** projectId 形状:lowercase 规范 UUID。**宽读严写**([641]②,core 口径):读面/claim 收 generic
|
|
@@ -6126,8 +6419,30 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
6126
6419
|
api: z.ZodDefault<z.ZodEnum<["openai-completions", "anthropic-messages"]>>;
|
|
6127
6420
|
/** Gateway base URL (non-secret). Empty → the service's default gateway for that provider. */
|
|
6128
6421
|
baseUrl: z.ZodUnion<[z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>, z.ZodLiteral<"">]>;
|
|
6129
|
-
/** NAME of the env var (in the SERVICE's env) holding this model's API key — never the key itself.
|
|
6422
|
+
/** NAME of the env var (in the SERVICE's env) holding this model's API key — never the key itself.
|
|
6423
|
+
* 专家模式(env-NAME 引用,web 面折叠进「高级」);默认模式见 {@link ModelEntry}.sealedApiKey。 */
|
|
6130
6424
|
apiKeyEnv: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
6425
|
+
/** sealed-box 托管密文(0.10.5 默认模式「直接贴 key」;形状见 {@link SealedApiKey})。
|
|
6426
|
+
* **互斥语义(两者都设 = sealed 优先)**:`sealedApiKey` 与 `apiKeyEnv` 语义互斥——执行侧注入 env 时
|
|
6427
|
+
* sealed 解密值**压过** apiKeyEnv 引用(用户从专家模式切回默认贴 key 后,残留的 env-NAME 不得抢线)。
|
|
6428
|
+
* 刻意不 schema 层拒双设(拒了=切模式必须先清旧字段,UI/迁移两头找病;优先级裁决比互斥禁令便宜)。
|
|
6429
|
+
* ABSENT = 未托管(纯 env-NAME 现状),零迁移。 */
|
|
6430
|
+
sealedApiKey: z.ZodOptional<z.ZodObject<{
|
|
6431
|
+
/** sealed-box 密文,base64(形状校验 only——内容对 center 永远不透明)。 */
|
|
6432
|
+
ciphertext: z.ZodString;
|
|
6433
|
+
/** 加密所用执行域公钥的 id(execution.publicKeys 登记表的键)。 */
|
|
6434
|
+
publicKeyId: z.ZodString;
|
|
6435
|
+
/** 算法标识,v1 恒为 {@link SEALED_BOX_ALG}。 */
|
|
6436
|
+
alg: z.ZodLiteral<"libsodium-sealedbox-x25519">;
|
|
6437
|
+
}, "strip", z.ZodTypeAny, {
|
|
6438
|
+
ciphertext: string;
|
|
6439
|
+
publicKeyId: string;
|
|
6440
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6441
|
+
}, {
|
|
6442
|
+
ciphertext: string;
|
|
6443
|
+
publicKeyId: string;
|
|
6444
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6445
|
+
}>>;
|
|
6131
6446
|
/** Price/capability tier — fuels core 1.25 `selectModel({ tier })` role resolution. */
|
|
6132
6447
|
tier: z.ZodDefault<z.ZodEnum<["cheap", "standard", "premium"]>>;
|
|
6133
6448
|
reasoning: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -6172,6 +6487,11 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
6172
6487
|
enabled: boolean;
|
|
6173
6488
|
baseUrl?: string | undefined;
|
|
6174
6489
|
apiKeyEnv?: string | undefined;
|
|
6490
|
+
sealedApiKey?: {
|
|
6491
|
+
ciphertext: string;
|
|
6492
|
+
publicKeyId: string;
|
|
6493
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6494
|
+
} | undefined;
|
|
6175
6495
|
contextWindow?: number | undefined;
|
|
6176
6496
|
maxTokens?: number | undefined;
|
|
6177
6497
|
cost?: {
|
|
@@ -6189,6 +6509,11 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
6189
6509
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
6190
6510
|
baseUrl?: string | undefined;
|
|
6191
6511
|
apiKeyEnv?: string | undefined;
|
|
6512
|
+
sealedApiKey?: {
|
|
6513
|
+
ciphertext: string;
|
|
6514
|
+
publicKeyId: string;
|
|
6515
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6516
|
+
} | undefined;
|
|
6192
6517
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
6193
6518
|
reasoning?: boolean | undefined;
|
|
6194
6519
|
vision?: boolean | undefined;
|
|
@@ -6216,6 +6541,11 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
6216
6541
|
enabled: boolean;
|
|
6217
6542
|
baseUrl?: string | undefined;
|
|
6218
6543
|
apiKeyEnv?: string | undefined;
|
|
6544
|
+
sealedApiKey?: {
|
|
6545
|
+
ciphertext: string;
|
|
6546
|
+
publicKeyId: string;
|
|
6547
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6548
|
+
} | undefined;
|
|
6219
6549
|
contextWindow?: number | undefined;
|
|
6220
6550
|
maxTokens?: number | undefined;
|
|
6221
6551
|
cost?: {
|
|
@@ -6233,6 +6563,11 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
6233
6563
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
6234
6564
|
baseUrl?: string | undefined;
|
|
6235
6565
|
apiKeyEnv?: string | undefined;
|
|
6566
|
+
sealedApiKey?: {
|
|
6567
|
+
ciphertext: string;
|
|
6568
|
+
publicKeyId: string;
|
|
6569
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6570
|
+
} | undefined;
|
|
6236
6571
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
6237
6572
|
reasoning?: boolean | undefined;
|
|
6238
6573
|
vision?: boolean | undefined;
|
|
@@ -6345,6 +6680,11 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
6345
6680
|
enabled: boolean;
|
|
6346
6681
|
baseUrl?: string | undefined;
|
|
6347
6682
|
apiKeyEnv?: string | undefined;
|
|
6683
|
+
sealedApiKey?: {
|
|
6684
|
+
ciphertext: string;
|
|
6685
|
+
publicKeyId: string;
|
|
6686
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6687
|
+
} | undefined;
|
|
6348
6688
|
contextWindow?: number | undefined;
|
|
6349
6689
|
maxTokens?: number | undefined;
|
|
6350
6690
|
cost?: {
|
|
@@ -6386,6 +6726,11 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
6386
6726
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
6387
6727
|
baseUrl?: string | undefined;
|
|
6388
6728
|
apiKeyEnv?: string | undefined;
|
|
6729
|
+
sealedApiKey?: {
|
|
6730
|
+
ciphertext: string;
|
|
6731
|
+
publicKeyId: string;
|
|
6732
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6733
|
+
} | undefined;
|
|
6389
6734
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
6390
6735
|
reasoning?: boolean | undefined;
|
|
6391
6736
|
vision?: boolean | undefined;
|
|
@@ -6437,6 +6782,11 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
6437
6782
|
enabled: boolean;
|
|
6438
6783
|
baseUrl?: string | undefined;
|
|
6439
6784
|
apiKeyEnv?: string | undefined;
|
|
6785
|
+
sealedApiKey?: {
|
|
6786
|
+
ciphertext: string;
|
|
6787
|
+
publicKeyId: string;
|
|
6788
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6789
|
+
} | undefined;
|
|
6440
6790
|
contextWindow?: number | undefined;
|
|
6441
6791
|
maxTokens?: number | undefined;
|
|
6442
6792
|
cost?: {
|
|
@@ -6478,6 +6828,11 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
6478
6828
|
api?: "openai-completions" | "anthropic-messages" | undefined;
|
|
6479
6829
|
baseUrl?: string | undefined;
|
|
6480
6830
|
apiKeyEnv?: string | undefined;
|
|
6831
|
+
sealedApiKey?: {
|
|
6832
|
+
ciphertext: string;
|
|
6833
|
+
publicKeyId: string;
|
|
6834
|
+
alg: "libsodium-sealedbox-x25519";
|
|
6835
|
+
} | undefined;
|
|
6481
6836
|
tier?: "cheap" | "standard" | "premium" | undefined;
|
|
6482
6837
|
reasoning?: boolean | undefined;
|
|
6483
6838
|
vision?: boolean | undefined;
|
|
@@ -8454,6 +8809,19 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8454
8809
|
* center wins). On compose across bundles, `false` (deny) still wins — see RUNTIME_CAP_STRICT; core's
|
|
8455
8810
|
* `=== true` opt-in check is orthogonal to that merge polarity. */
|
|
8456
8811
|
allowObservers: z.ZodOptional<z.ZodBoolean>;
|
|
8812
|
+
/** Per-principal ARM switch for the auto-mode CLASSIFIER (core 1.276 批2 seam `RuntimeCaps.autoMode`, 板
|
|
8813
|
+
* [672]④/[682]① — a surviving permission `ask` is routed to the small-model security classifier before any
|
|
8814
|
+
* human/durable resolution). ⚠️ Same INVERTED consumption polarity as `allowObservers`: core is `=== true`
|
|
8815
|
+
* explicit opt-in, default OFF — this key is the ENABLE line, not just a ceiling. Three-state semantics
|
|
8816
|
+
* (ABSENT ≠ false): ABSENT = center says nothing → key NOT emitted on the wire (core stays the SOLE default
|
|
8817
|
+
* source — never backfill absence into an explicit verdict); `true` = explicitly arm the classifier for this
|
|
8818
|
+
* principal (a no-op on a deployment without a wired classify leg — the capability gate lives in core);
|
|
8819
|
+
* `false` = explicit org deny. On compose across bundles `false` (deny) wins — see RUNTIME_CAP_STRICT;
|
|
8820
|
+
* core's `=== true` opt-in check is orthogonal to that merge polarity. DIVISION OF LABOR vs
|
|
8821
|
+
* {@link allowAutoMode}: `allowAutoMode` is the 准入 may-I ceiling on the USER-facing auto permission mode
|
|
8822
|
+
* (shell/settings face, tighten-only); `autoMode` is center's 部署 arm decision for the server-side
|
|
8823
|
+
* classifier leg itself. */
|
|
8824
|
+
autoMode: z.ZodOptional<z.ZodBoolean>;
|
|
8457
8825
|
allowUltracode: z.ZodOptional<z.ZodBoolean>;
|
|
8458
8826
|
/** Force this principal's run onto durable-approval (per-tool gate) — center's fleet-wide handle for CC-faithful
|
|
8459
8827
|
* per-tool interception (K-3, core [318] confirmed it consumes this). Polarity is INVERTED vs the allow* caps:
|
|
@@ -8466,6 +8834,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8466
8834
|
allowWorkflows?: boolean | undefined;
|
|
8467
8835
|
allowFork?: boolean | undefined;
|
|
8468
8836
|
allowObservers?: boolean | undefined;
|
|
8837
|
+
autoMode?: boolean | undefined;
|
|
8469
8838
|
allowUltracode?: boolean | undefined;
|
|
8470
8839
|
forceDurableGate?: boolean | undefined;
|
|
8471
8840
|
}, {
|
|
@@ -8474,6 +8843,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8474
8843
|
allowWorkflows?: boolean | undefined;
|
|
8475
8844
|
allowFork?: boolean | undefined;
|
|
8476
8845
|
allowObservers?: boolean | undefined;
|
|
8846
|
+
autoMode?: boolean | undefined;
|
|
8477
8847
|
allowUltracode?: boolean | undefined;
|
|
8478
8848
|
forceDurableGate?: boolean | undefined;
|
|
8479
8849
|
}>>;
|
|
@@ -8573,6 +8943,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8573
8943
|
allowWorkflows?: boolean | undefined;
|
|
8574
8944
|
allowFork?: boolean | undefined;
|
|
8575
8945
|
allowObservers?: boolean | undefined;
|
|
8946
|
+
autoMode?: boolean | undefined;
|
|
8576
8947
|
allowUltracode?: boolean | undefined;
|
|
8577
8948
|
forceDurableGate?: boolean | undefined;
|
|
8578
8949
|
} | undefined;
|
|
@@ -8603,6 +8974,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8603
8974
|
allowWorkflows?: boolean | undefined;
|
|
8604
8975
|
allowFork?: boolean | undefined;
|
|
8605
8976
|
allowObservers?: boolean | undefined;
|
|
8977
|
+
autoMode?: boolean | undefined;
|
|
8606
8978
|
allowUltracode?: boolean | undefined;
|
|
8607
8979
|
forceDurableGate?: boolean | undefined;
|
|
8608
8980
|
} | undefined;
|
|
@@ -8706,6 +9078,19 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8706
9078
|
* center wins). On compose across bundles, `false` (deny) still wins — see RUNTIME_CAP_STRICT; core's
|
|
8707
9079
|
* `=== true` opt-in check is orthogonal to that merge polarity. */
|
|
8708
9080
|
allowObservers: z.ZodOptional<z.ZodBoolean>;
|
|
9081
|
+
/** Per-principal ARM switch for the auto-mode CLASSIFIER (core 1.276 批2 seam `RuntimeCaps.autoMode`, 板
|
|
9082
|
+
* [672]④/[682]① — a surviving permission `ask` is routed to the small-model security classifier before any
|
|
9083
|
+
* human/durable resolution). ⚠️ Same INVERTED consumption polarity as `allowObservers`: core is `=== true`
|
|
9084
|
+
* explicit opt-in, default OFF — this key is the ENABLE line, not just a ceiling. Three-state semantics
|
|
9085
|
+
* (ABSENT ≠ false): ABSENT = center says nothing → key NOT emitted on the wire (core stays the SOLE default
|
|
9086
|
+
* source — never backfill absence into an explicit verdict); `true` = explicitly arm the classifier for this
|
|
9087
|
+
* principal (a no-op on a deployment without a wired classify leg — the capability gate lives in core);
|
|
9088
|
+
* `false` = explicit org deny. On compose across bundles `false` (deny) wins — see RUNTIME_CAP_STRICT;
|
|
9089
|
+
* core's `=== true` opt-in check is orthogonal to that merge polarity. DIVISION OF LABOR vs
|
|
9090
|
+
* {@link allowAutoMode}: `allowAutoMode` is the 准入 may-I ceiling on the USER-facing auto permission mode
|
|
9091
|
+
* (shell/settings face, tighten-only); `autoMode` is center's 部署 arm decision for the server-side
|
|
9092
|
+
* classifier leg itself. */
|
|
9093
|
+
autoMode: z.ZodOptional<z.ZodBoolean>;
|
|
8709
9094
|
allowUltracode: z.ZodOptional<z.ZodBoolean>;
|
|
8710
9095
|
/** Force this principal's run onto durable-approval (per-tool gate) — center's fleet-wide handle for CC-faithful
|
|
8711
9096
|
* per-tool interception (K-3, core [318] confirmed it consumes this). Polarity is INVERTED vs the allow* caps:
|
|
@@ -8718,6 +9103,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8718
9103
|
allowWorkflows?: boolean | undefined;
|
|
8719
9104
|
allowFork?: boolean | undefined;
|
|
8720
9105
|
allowObservers?: boolean | undefined;
|
|
9106
|
+
autoMode?: boolean | undefined;
|
|
8721
9107
|
allowUltracode?: boolean | undefined;
|
|
8722
9108
|
forceDurableGate?: boolean | undefined;
|
|
8723
9109
|
}, {
|
|
@@ -8726,6 +9112,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8726
9112
|
allowWorkflows?: boolean | undefined;
|
|
8727
9113
|
allowFork?: boolean | undefined;
|
|
8728
9114
|
allowObservers?: boolean | undefined;
|
|
9115
|
+
autoMode?: boolean | undefined;
|
|
8729
9116
|
allowUltracode?: boolean | undefined;
|
|
8730
9117
|
forceDurableGate?: boolean | undefined;
|
|
8731
9118
|
}>>;
|
|
@@ -8761,6 +9148,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8761
9148
|
allowWorkflows?: boolean | undefined;
|
|
8762
9149
|
allowFork?: boolean | undefined;
|
|
8763
9150
|
allowObservers?: boolean | undefined;
|
|
9151
|
+
autoMode?: boolean | undefined;
|
|
8764
9152
|
allowUltracode?: boolean | undefined;
|
|
8765
9153
|
forceDurableGate?: boolean | undefined;
|
|
8766
9154
|
} | undefined;
|
|
@@ -8794,6 +9182,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
8794
9182
|
allowWorkflows?: boolean | undefined;
|
|
8795
9183
|
allowFork?: boolean | undefined;
|
|
8796
9184
|
allowObservers?: boolean | undefined;
|
|
9185
|
+
autoMode?: boolean | undefined;
|
|
8797
9186
|
allowUltracode?: boolean | undefined;
|
|
8798
9187
|
forceDurableGate?: boolean | undefined;
|
|
8799
9188
|
} | undefined;
|
|
@@ -9091,6 +9480,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9091
9480
|
allowWorkflows?: boolean | undefined;
|
|
9092
9481
|
allowFork?: boolean | undefined;
|
|
9093
9482
|
allowObservers?: boolean | undefined;
|
|
9483
|
+
autoMode?: boolean | undefined;
|
|
9094
9484
|
allowUltracode?: boolean | undefined;
|
|
9095
9485
|
forceDurableGate?: boolean | undefined;
|
|
9096
9486
|
} | undefined;
|
|
@@ -9163,6 +9553,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9163
9553
|
allowWorkflows?: boolean | undefined;
|
|
9164
9554
|
allowFork?: boolean | undefined;
|
|
9165
9555
|
allowObservers?: boolean | undefined;
|
|
9556
|
+
autoMode?: boolean | undefined;
|
|
9166
9557
|
allowUltracode?: boolean | undefined;
|
|
9167
9558
|
forceDurableGate?: boolean | undefined;
|
|
9168
9559
|
} | undefined;
|
|
@@ -9212,6 +9603,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9212
9603
|
allowWorkflows?: boolean | undefined;
|
|
9213
9604
|
allowFork?: boolean | undefined;
|
|
9214
9605
|
allowObservers?: boolean | undefined;
|
|
9606
|
+
autoMode?: boolean | undefined;
|
|
9215
9607
|
allowUltracode?: boolean | undefined;
|
|
9216
9608
|
forceDurableGate?: boolean | undefined;
|
|
9217
9609
|
} | undefined;
|
|
@@ -9240,6 +9632,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9240
9632
|
allowWorkflows?: boolean | undefined;
|
|
9241
9633
|
allowFork?: boolean | undefined;
|
|
9242
9634
|
allowObservers?: boolean | undefined;
|
|
9635
|
+
autoMode?: boolean | undefined;
|
|
9243
9636
|
allowUltracode?: boolean | undefined;
|
|
9244
9637
|
forceDurableGate?: boolean | undefined;
|
|
9245
9638
|
} | undefined;
|
|
@@ -9333,6 +9726,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9333
9726
|
allowWorkflows?: boolean | undefined;
|
|
9334
9727
|
allowFork?: boolean | undefined;
|
|
9335
9728
|
allowObservers?: boolean | undefined;
|
|
9729
|
+
autoMode?: boolean | undefined;
|
|
9336
9730
|
allowUltracode?: boolean | undefined;
|
|
9337
9731
|
forceDurableGate?: boolean | undefined;
|
|
9338
9732
|
} | undefined;
|
|
@@ -9405,6 +9799,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9405
9799
|
allowWorkflows?: boolean | undefined;
|
|
9406
9800
|
allowFork?: boolean | undefined;
|
|
9407
9801
|
allowObservers?: boolean | undefined;
|
|
9802
|
+
autoMode?: boolean | undefined;
|
|
9408
9803
|
allowUltracode?: boolean | undefined;
|
|
9409
9804
|
forceDurableGate?: boolean | undefined;
|
|
9410
9805
|
} | undefined;
|
|
@@ -9454,6 +9849,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9454
9849
|
allowWorkflows?: boolean | undefined;
|
|
9455
9850
|
allowFork?: boolean | undefined;
|
|
9456
9851
|
allowObservers?: boolean | undefined;
|
|
9852
|
+
autoMode?: boolean | undefined;
|
|
9457
9853
|
allowUltracode?: boolean | undefined;
|
|
9458
9854
|
forceDurableGate?: boolean | undefined;
|
|
9459
9855
|
} | undefined;
|
|
@@ -9482,6 +9878,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9482
9878
|
allowWorkflows?: boolean | undefined;
|
|
9483
9879
|
allowFork?: boolean | undefined;
|
|
9484
9880
|
allowObservers?: boolean | undefined;
|
|
9881
|
+
autoMode?: boolean | undefined;
|
|
9485
9882
|
allowUltracode?: boolean | undefined;
|
|
9486
9883
|
forceDurableGate?: boolean | undefined;
|
|
9487
9884
|
} | undefined;
|
|
@@ -9546,7 +9943,7 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9546
9943
|
}[] | undefined;
|
|
9547
9944
|
} | undefined;
|
|
9548
9945
|
}>;
|
|
9549
|
-
readonly execution: z.ZodObject<{
|
|
9946
|
+
readonly execution: z.ZodEffects<z.ZodObject<{
|
|
9550
9947
|
/** true = tasks under this scope MUST run in a sandbox / controlled execution lane (the consuming
|
|
9551
9948
|
* shell locks sandbox-enabled by policy; user settings can't turn it off — CC 同款语义). */
|
|
9552
9949
|
required: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -9568,6 +9965,28 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9568
9965
|
engineUrl: string;
|
|
9569
9966
|
required?: boolean | undefined;
|
|
9570
9967
|
}>>;
|
|
9968
|
+
/** 执行域 sealed-box 公钥登记表(0.10.5)。**optional 无 default,ABSENT = 未登记**(0.8–0.10 存量
|
|
9969
|
+
* execution 文档字节稳定,sessionMirror 同款零迁移纪律);web 面无已登记公钥时「贴密钥」tab 显示
|
|
9970
|
+
* 引导并回落 env-NAME。多把并存合法(轮换窗口:新密文用新钥,旧密文仍可被旧私钥解)。 */
|
|
9971
|
+
publicKeys: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
9972
|
+
/** 公钥 id(密文的 publicKeyId 指向此键;登记表内唯一)。 */
|
|
9973
|
+
publicKeyId: z.ZodString;
|
|
9974
|
+
/** X25519 公钥,base64(32 字节 → 恒 44 字符含 padding)。 */
|
|
9975
|
+
publicKey: z.ZodString;
|
|
9976
|
+
/** 登记时刻(ISO)。center 写面 server 端盖章(projects.registeredAt 同款纪律)。 */
|
|
9977
|
+
createdAt: z.ZodString;
|
|
9978
|
+
notes: z.ZodOptional<z.ZodString>;
|
|
9979
|
+
}, "strip", z.ZodTypeAny, {
|
|
9980
|
+
publicKeyId: string;
|
|
9981
|
+
publicKey: string;
|
|
9982
|
+
createdAt: string;
|
|
9983
|
+
notes?: string | undefined;
|
|
9984
|
+
}, {
|
|
9985
|
+
publicKeyId: string;
|
|
9986
|
+
publicKey: string;
|
|
9987
|
+
createdAt: string;
|
|
9988
|
+
notes?: string | undefined;
|
|
9989
|
+
}>, "many">>;
|
|
9571
9990
|
}, "strip", z.ZodTypeAny, {
|
|
9572
9991
|
required: boolean;
|
|
9573
9992
|
allowedLanes: string[];
|
|
@@ -9575,6 +9994,12 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9575
9994
|
required: boolean;
|
|
9576
9995
|
engineUrl: string;
|
|
9577
9996
|
} | undefined;
|
|
9997
|
+
publicKeys?: {
|
|
9998
|
+
publicKeyId: string;
|
|
9999
|
+
publicKey: string;
|
|
10000
|
+
createdAt: string;
|
|
10001
|
+
notes?: string | undefined;
|
|
10002
|
+
}[] | undefined;
|
|
9578
10003
|
}, {
|
|
9579
10004
|
required?: boolean | undefined;
|
|
9580
10005
|
allowedLanes?: string[] | undefined;
|
|
@@ -9582,6 +10007,38 @@ export declare const DOMAIN_SCHEMAS: {
|
|
|
9582
10007
|
engineUrl: string;
|
|
9583
10008
|
required?: boolean | undefined;
|
|
9584
10009
|
} | undefined;
|
|
10010
|
+
publicKeys?: {
|
|
10011
|
+
publicKeyId: string;
|
|
10012
|
+
publicKey: string;
|
|
10013
|
+
createdAt: string;
|
|
10014
|
+
notes?: string | undefined;
|
|
10015
|
+
}[] | undefined;
|
|
10016
|
+
}>, {
|
|
10017
|
+
required: boolean;
|
|
10018
|
+
allowedLanes: string[];
|
|
10019
|
+
sessionMirror?: {
|
|
10020
|
+
required: boolean;
|
|
10021
|
+
engineUrl: string;
|
|
10022
|
+
} | undefined;
|
|
10023
|
+
publicKeys?: {
|
|
10024
|
+
publicKeyId: string;
|
|
10025
|
+
publicKey: string;
|
|
10026
|
+
createdAt: string;
|
|
10027
|
+
notes?: string | undefined;
|
|
10028
|
+
}[] | undefined;
|
|
10029
|
+
}, {
|
|
10030
|
+
required?: boolean | undefined;
|
|
10031
|
+
allowedLanes?: string[] | undefined;
|
|
10032
|
+
sessionMirror?: {
|
|
10033
|
+
engineUrl: string;
|
|
10034
|
+
required?: boolean | undefined;
|
|
10035
|
+
} | undefined;
|
|
10036
|
+
publicKeys?: {
|
|
10037
|
+
publicKeyId: string;
|
|
10038
|
+
publicKey: string;
|
|
10039
|
+
createdAt: string;
|
|
10040
|
+
notes?: string | undefined;
|
|
10041
|
+
}[] | undefined;
|
|
9585
10042
|
}>;
|
|
9586
10043
|
readonly projects: z.ZodEffects<z.ZodObject<{
|
|
9587
10044
|
/** 键=projectId({@link PROJECT_ID_REGEX},generic lowercase UUID——宽读);tenant 半边=center
|