@vcp-dev/contracts 0.10.2 → 0.10.3

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.
@@ -251,6 +251,7 @@ export declare const LauncherPromptTemplateApplyRequestSchema: z.ZodObject<{
251
251
  }, z.core.$strip>>;
252
252
  }, z.core.$strip>>;
253
253
  userChoices: z.ZodOptional<z.ZodArray<z.ZodObject<{
254
+ key: z.ZodOptional<z.ZodString>;
254
255
  question: z.ZodString;
255
256
  answer: z.ZodString;
256
257
  }, z.core.$strip>>>;
@@ -268,15 +269,47 @@ export declare const LauncherPromptTemplateApplyRequestSchema: z.ZodObject<{
268
269
  requiresOwnerDetail: z.ZodOptional<z.ZodBoolean>;
269
270
  }, z.core.$strip>>;
270
271
  }, z.core.$strip>>;
271
- seoKeywords: z.ZodOptional<z.ZodArray<z.ZodObject<{
272
+ seoKeywords: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
273
+ id: z.ZodString;
274
+ keyword: z.ZodString;
275
+ business_id: z.ZodString;
276
+ business_name: z.ZodString;
277
+ category: z.ZodEnum<{
278
+ 产品: "产品";
279
+ "\u90E8\u4EF6/\u8017\u6750": "部件/耗材";
280
+ 应用方案: "应用方案";
281
+ "\u5B9A\u5236/OEM": "定制/OEM";
282
+ 服务: "服务";
283
+ "\u8D44\u8D28/\u80FD\u529B": "资质/能力";
284
+ }>;
285
+ selling_points: z.ZodString;
286
+ section_id: z.ZodString;
287
+ content_usage: z.ZodEnum<{
288
+ product: "product";
289
+ category: "category";
290
+ solution: "solution";
291
+ service: "service";
292
+ capability: "capability";
293
+ article: "article";
294
+ faq: "faq";
295
+ }>;
296
+ intent: z.ZodString;
297
+ semantic_group: z.ZodString;
298
+ primary_business: z.ZodBoolean;
299
+ monthly_volume: z.ZodNumber;
300
+ keyword_difficulty: z.ZodNullable<z.ZodNumber>;
301
+ variants: z.ZodArray<z.ZodString>;
302
+ source: z.ZodLiteral<"semrush">;
303
+ source_evidence: z.ZodArray<z.ZodString>;
304
+ }, z.core.$strict>>, z.ZodArray<z.ZodObject<{
272
305
  id: z.ZodString;
273
306
  keyword: z.ZodString;
274
307
  normalized_keyword: z.ZodString;
275
308
  intc: z.ZodEnum<{
276
309
  C: "C";
277
- T: "T";
278
310
  I: "I";
279
311
  N: "N";
312
+ T: "T";
280
313
  }>;
281
314
  keyword_type: z.ZodString;
282
315
  intent_strength: z.ZodEnum<{
@@ -303,7 +336,7 @@ export declare const LauncherPromptTemplateApplyRequestSchema: z.ZodObject<{
303
336
  }>;
304
337
  source_market: z.ZodString;
305
338
  metric_timestamp: z.ZodNullable<z.ZodString>;
306
- }, z.core.$strict>>>;
339
+ }, z.core.$strict>>]>>;
307
340
  pages: z.ZodArray<z.ZodObject<{
308
341
  id: z.ZodString;
309
342
  title: z.ZodString;
@@ -439,6 +472,7 @@ export declare const LauncherPromptTemplateApplyResponseSchema: z.ZodObject<{
439
472
  }, z.core.$strip>>;
440
473
  }, z.core.$strip>>;
441
474
  userChoices: z.ZodOptional<z.ZodArray<z.ZodObject<{
475
+ key: z.ZodOptional<z.ZodString>;
442
476
  question: z.ZodString;
443
477
  answer: z.ZodString;
444
478
  }, z.core.$strip>>>;
@@ -456,15 +490,47 @@ export declare const LauncherPromptTemplateApplyResponseSchema: z.ZodObject<{
456
490
  requiresOwnerDetail: z.ZodOptional<z.ZodBoolean>;
457
491
  }, z.core.$strip>>;
458
492
  }, z.core.$strip>>;
459
- seoKeywords: z.ZodOptional<z.ZodArray<z.ZodObject<{
493
+ seoKeywords: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
494
+ id: z.ZodString;
495
+ keyword: z.ZodString;
496
+ business_id: z.ZodString;
497
+ business_name: z.ZodString;
498
+ category: z.ZodEnum<{
499
+ 产品: "产品";
500
+ "\u90E8\u4EF6/\u8017\u6750": "部件/耗材";
501
+ 应用方案: "应用方案";
502
+ "\u5B9A\u5236/OEM": "定制/OEM";
503
+ 服务: "服务";
504
+ "\u8D44\u8D28/\u80FD\u529B": "资质/能力";
505
+ }>;
506
+ selling_points: z.ZodString;
507
+ section_id: z.ZodString;
508
+ content_usage: z.ZodEnum<{
509
+ product: "product";
510
+ category: "category";
511
+ solution: "solution";
512
+ service: "service";
513
+ capability: "capability";
514
+ article: "article";
515
+ faq: "faq";
516
+ }>;
517
+ intent: z.ZodString;
518
+ semantic_group: z.ZodString;
519
+ primary_business: z.ZodBoolean;
520
+ monthly_volume: z.ZodNumber;
521
+ keyword_difficulty: z.ZodNullable<z.ZodNumber>;
522
+ variants: z.ZodArray<z.ZodString>;
523
+ source: z.ZodLiteral<"semrush">;
524
+ source_evidence: z.ZodArray<z.ZodString>;
525
+ }, z.core.$strict>>, z.ZodArray<z.ZodObject<{
460
526
  id: z.ZodString;
461
527
  keyword: z.ZodString;
462
528
  normalized_keyword: z.ZodString;
463
529
  intc: z.ZodEnum<{
464
530
  C: "C";
465
- T: "T";
466
531
  I: "I";
467
532
  N: "N";
533
+ T: "T";
468
534
  }>;
469
535
  keyword_type: z.ZodString;
470
536
  intent_strength: z.ZodEnum<{
@@ -491,7 +557,7 @@ export declare const LauncherPromptTemplateApplyResponseSchema: z.ZodObject<{
491
557
  }>;
492
558
  source_market: z.ZodString;
493
559
  metric_timestamp: z.ZodNullable<z.ZodString>;
494
- }, z.core.$strict>>>;
560
+ }, z.core.$strict>>]>>;
495
561
  pages: z.ZodArray<z.ZodObject<{
496
562
  id: z.ZodString;
497
563
  title: z.ZodString;
@@ -5,23 +5,8 @@ export type PageTemplateId = z.infer<typeof PageTemplateIdSchema>;
5
5
  /** Site-relative page path without URL query or fragment components. */
6
6
  export declare const PageTemplatePagePathSchema: z.ZodString;
7
7
  export type PageTemplatePagePath = z.infer<typeof PageTemplatePagePathSchema>;
8
- export declare const ManagedPageTemplateRouteManifestV1Schema: z.ZodObject<{
9
- schema_version: z.ZodLiteral<1>;
10
- route_id: z.ZodString;
11
- canonical_entry_file: z.ZodString;
12
- route_key: z.ZodString;
13
- default_template_id: z.ZodString;
14
- templates: z.ZodArray<z.ZodObject<{
15
- template_id: z.ZodString;
16
- safe_name: z.ZodString;
17
- entry_file: z.ZodString;
18
- kind: z.ZodEnum<{
19
- default: "default";
20
- additional: "additional";
21
- }>;
22
- }, z.core.$strict>>;
23
- }, z.core.$strict>;
24
- export type ManagedPageTemplateRouteManifestV1 = z.infer<typeof ManagedPageTemplateRouteManifestV1Schema>;
8
+ /** Narrow exception to ordinary public slug rules; ownership is still checked by the patch runtime. */
9
+ export declare function isPageTemplateCandidateEntryPath(path: string): boolean;
25
10
  export declare const PageTemplateCreateRequestSchema: z.ZodObject<{
26
11
  page_path: z.ZodString;
27
12
  template_id: z.ZodString;
@@ -46,9 +31,7 @@ export declare const PageTemplateCreateResponseSchema: z.ZodObject<{
46
31
  site_id: z.ZodUUID;
47
32
  page_path: z.ZodString;
48
33
  route_id: z.ZodString;
49
- default_template_id: z.ZodString;
50
34
  snapshot_id: z.ZodUUID;
51
- route_mode: z.ZodLiteral<"delegated">;
52
35
  }, z.core.$strict>;
53
36
  export type PageTemplateCreateResponse = z.infer<typeof PageTemplateCreateResponseSchema>;
54
37
  export declare const PageTemplatePromoteResponseSchema: z.ZodObject<{
@@ -59,9 +42,7 @@ export declare const PageTemplatePromoteResponseSchema: z.ZodObject<{
59
42
  site_id: z.ZodUUID;
60
43
  page_path: z.ZodString;
61
44
  route_id: z.ZodString;
62
- default_template_id: z.ZodString;
63
45
  snapshot_id: z.ZodUUID;
64
- route_mode: z.ZodLiteral<"delegated">;
65
46
  }, z.core.$strict>;
66
47
  export type PageTemplatePromoteResponse = z.infer<typeof PageTemplatePromoteResponseSchema>;
67
48
  export declare const PageTemplateCleanupResponseSchema: z.ZodObject<{
@@ -71,9 +52,7 @@ export declare const PageTemplateCleanupResponseSchema: z.ZodObject<{
71
52
  site_id: z.ZodUUID;
72
53
  page_path: z.ZodString;
73
54
  route_id: z.ZodString;
74
- default_template_id: z.ZodString;
75
55
  snapshot_id: z.ZodUUID;
76
- route_mode: z.ZodLiteral<"delegated">;
77
56
  }, z.core.$strict>;
78
57
  export type PageTemplateCleanupResponse = z.infer<typeof PageTemplateCleanupResponseSchema>;
79
58
  export declare const PageTemplateErrorCodeSchema: z.ZodEnum<{
@@ -83,9 +62,6 @@ export declare const PageTemplateErrorCodeSchema: z.ZodEnum<{
83
62
  PAGE_TEMPLATE_ALREADY_EXISTS: "PAGE_TEMPLATE_ALREADY_EXISTS";
84
63
  PAGE_TEMPLATE_ID_COLLISION: "PAGE_TEMPLATE_ID_COLLISION";
85
64
  PAGE_TEMPLATE_MANAGED_SOURCE_INVALID: "PAGE_TEMPLATE_MANAGED_SOURCE_INVALID";
86
- PAGE_TEMPLATE_DEFAULT_PROTECTED: "PAGE_TEMPLATE_DEFAULT_PROTECTED";
87
- PAGE_TEMPLATE_DEFAULT_ALREADY_ACTIVE: "PAGE_TEMPLATE_DEFAULT_ALREADY_ACTIVE";
88
- PAGE_TEMPLATE_ASSET_IN_USE: "PAGE_TEMPLATE_ASSET_IN_USE";
89
65
  PAGE_TEMPLATE_SNAPSHOT_CONFLICT: "PAGE_TEMPLATE_SNAPSHOT_CONFLICT";
90
66
  PAGE_TEMPLATE_DYNAMIC_ROUTE_UNSUPPORTED: "PAGE_TEMPLATE_DYNAMIC_ROUTE_UNSUPPORTED";
91
67
  PAGE_TEMPLATE_SOURCE_UNSUPPORTED: "PAGE_TEMPLATE_SOURCE_UNSUPPORTED";
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * 由 release-edit-engine-packages.ts 在 bump 版本时自动更新。
7
7
  */
8
- export declare const CURRENT_EDIT_ENGINE_VERSION = "0.10.2";
8
+ export declare const CURRENT_EDIT_ENGINE_VERSION = "0.10.3";
9
9
  export declare const EDIT_ENGINE_VERSION_HEADER = "x-vcp-edit-engine-version";
10
10
  export declare const EDIT_ENGINE_VERSION_SOURCE_HEADER = "x-vcp-edit-engine-version-source";
11
11
  export type EditEngineVersionSource = "explicit" | "fallback_current" | "system_current";
@@ -1,13 +1,13 @@
1
1
  import { z } from "zod";
2
2
  /**
3
- * 整站补充需求:用户在 Step5 十一张卡下面自己写的一段话。
3
+ * 整站补充需求:用户在 Step5 九张卡下面自己写的一段话。
4
4
  *
5
5
  * 为什么放在 Step5 底部:它要影响有哪些页面,而页面由 sitemap 决定,sitemap 在
6
6
  * 用户落到结构规划页的那一刻就自动开始生成,中间没有任何停顿 —— 离开 Step5 就
7
7
  * 来不及。也因此它不是卡内备注:卡内备注各限 200 字、只管那张卡的范围。
8
8
  *
9
9
  * 优先级:在所有用户意图信号里排最高 —— 压过十一张卡已拍板的策略、单张卡的
10
- * 备注、已确认的业务事实、参考站信号和已冻结的 SEO 关键词。十一张卡是从给定
10
+ * 备注、已确认的业务事实、参考站信号和已冻结的企业关键词。九张卡是从给定
11
11
  * 选项里挑出来的,这段话是用户自己写的;他会写,正是因为卡里没有对应的选项,
12
12
  * 把它排在卡下面等于让这个框失去意义。
13
13
  *
@@ -36,6 +36,25 @@ export declare const CompleteWebsiteScanRequestSchema: z.ZodObject<{
36
36
  ok: "ok";
37
37
  }>;
38
38
  evidence: z.ZodOptional<z.ZodString>;
39
+ assessment: z.ZodOptional<z.ZodObject<{
40
+ kind: z.ZodLiteral<"ai_crawlability">;
41
+ checks: z.ZodObject<{
42
+ ai_access_guidance: z.ZodObject<{
43
+ observed_result: z.ZodEnum<{
44
+ unknown: "unknown";
45
+ pass: "pass";
46
+ fail: "fail";
47
+ }>;
48
+ }, z.core.$strict>;
49
+ structured_data_presence: z.ZodObject<{
50
+ observed_result: z.ZodEnum<{
51
+ unknown: "unknown";
52
+ pass: "pass";
53
+ fail: "fail";
54
+ }>;
55
+ }, z.core.$strict>;
56
+ }, z.core.$strict>;
57
+ }, z.core.$strict>>;
39
58
  }, z.core.$strict>>;
40
59
  trust: z.ZodArray<z.ZodObject<{
41
60
  key: z.ZodString;
@@ -52,6 +71,25 @@ export declare const CompleteWebsiteScanRequestSchema: z.ZodObject<{
52
71
  ok: "ok";
53
72
  }>;
54
73
  evidence: z.ZodOptional<z.ZodString>;
74
+ assessment: z.ZodOptional<z.ZodObject<{
75
+ kind: z.ZodLiteral<"ai_crawlability">;
76
+ checks: z.ZodObject<{
77
+ ai_access_guidance: z.ZodObject<{
78
+ observed_result: z.ZodEnum<{
79
+ unknown: "unknown";
80
+ pass: "pass";
81
+ fail: "fail";
82
+ }>;
83
+ }, z.core.$strict>;
84
+ structured_data_presence: z.ZodObject<{
85
+ observed_result: z.ZodEnum<{
86
+ unknown: "unknown";
87
+ pass: "pass";
88
+ fail: "fail";
89
+ }>;
90
+ }, z.core.$strict>;
91
+ }, z.core.$strict>;
92
+ }, z.core.$strict>>;
55
93
  }, z.core.$strict>>;
56
94
  convert: z.ZodArray<z.ZodObject<{
57
95
  key: z.ZodString;
@@ -68,6 +106,25 @@ export declare const CompleteWebsiteScanRequestSchema: z.ZodObject<{
68
106
  ok: "ok";
69
107
  }>;
70
108
  evidence: z.ZodOptional<z.ZodString>;
109
+ assessment: z.ZodOptional<z.ZodObject<{
110
+ kind: z.ZodLiteral<"ai_crawlability">;
111
+ checks: z.ZodObject<{
112
+ ai_access_guidance: z.ZodObject<{
113
+ observed_result: z.ZodEnum<{
114
+ unknown: "unknown";
115
+ pass: "pass";
116
+ fail: "fail";
117
+ }>;
118
+ }, z.core.$strict>;
119
+ structured_data_presence: z.ZodObject<{
120
+ observed_result: z.ZodEnum<{
121
+ unknown: "unknown";
122
+ pass: "pass";
123
+ fail: "fail";
124
+ }>;
125
+ }, z.core.$strict>;
126
+ }, z.core.$strict>;
127
+ }, z.core.$strict>>;
71
128
  }, z.core.$strict>>;
72
129
  safe: z.ZodArray<z.ZodObject<{
73
130
  key: z.ZodString;
@@ -84,6 +141,25 @@ export declare const CompleteWebsiteScanRequestSchema: z.ZodObject<{
84
141
  ok: "ok";
85
142
  }>;
86
143
  evidence: z.ZodOptional<z.ZodString>;
144
+ assessment: z.ZodOptional<z.ZodObject<{
145
+ kind: z.ZodLiteral<"ai_crawlability">;
146
+ checks: z.ZodObject<{
147
+ ai_access_guidance: z.ZodObject<{
148
+ observed_result: z.ZodEnum<{
149
+ unknown: "unknown";
150
+ pass: "pass";
151
+ fail: "fail";
152
+ }>;
153
+ }, z.core.$strict>;
154
+ structured_data_presence: z.ZodObject<{
155
+ observed_result: z.ZodEnum<{
156
+ unknown: "unknown";
157
+ pass: "pass";
158
+ fail: "fail";
159
+ }>;
160
+ }, z.core.$strict>;
161
+ }, z.core.$strict>;
162
+ }, z.core.$strict>>;
87
163
  }, z.core.$strict>>;
88
164
  pages: z.ZodArray<z.ZodObject<{
89
165
  url: z.ZodString;
@@ -115,6 +191,25 @@ export declare const CompleteWebsiteScanRequestSchema: z.ZodObject<{
115
191
  unknown: "unknown";
116
192
  ok: "ok";
117
193
  }>;
194
+ assessment: z.ZodOptional<z.ZodObject<{
195
+ kind: z.ZodLiteral<"ai_crawlability">;
196
+ checks: z.ZodObject<{
197
+ ai_access_guidance: z.ZodObject<{
198
+ observed_result: z.ZodEnum<{
199
+ unknown: "unknown";
200
+ pass: "pass";
201
+ fail: "fail";
202
+ }>;
203
+ }, z.core.$strict>;
204
+ structured_data_presence: z.ZodObject<{
205
+ observed_result: z.ZodEnum<{
206
+ unknown: "unknown";
207
+ pass: "pass";
208
+ fail: "fail";
209
+ }>;
210
+ }, z.core.$strict>;
211
+ }, z.core.$strict>;
212
+ }, z.core.$strict>>;
118
213
  }, z.core.$strip>>;
119
214
  }, z.core.$strict>;
120
215
  }, z.core.$strict>;