skill-family-engineering-kit 0.2.0 → 0.2.1

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.
Files changed (70) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/CHANGELOG.zh-CN.md +21 -0
  3. package/NOTICE +10 -0
  4. package/README.md +157 -55
  5. package/README.zh-CN.md +207 -0
  6. package/candidate/index.mjs +4 -0
  7. package/candidate/profile-bundle.mjs +268 -0
  8. package/candidate/projection-bundle-cli.mjs +22 -0
  9. package/docs/404.html +1434 -408
  10. package/docs/agents/architecture-routing/index.html +1944 -0
  11. package/docs/agents/capability-catalog.en.json +1561 -0
  12. package/docs/agents/capability-catalog.json +934 -0
  13. package/docs/agents/capability-catalog.schema.json +179 -0
  14. package/docs/agents/capability-catalog.zh-CN.json +1561 -0
  15. package/docs/agents/index.html +1914 -0
  16. package/docs/architecture/index.html +1706 -497
  17. package/docs/assets/javascripts/lunr/tinyseg.js +2 -2
  18. package/docs/assets/javascripts/lunr/wordcut.js +37 -37
  19. package/docs/en/agents/architecture-routing/index.html +1944 -0
  20. package/docs/en/agents/index.html +1925 -0
  21. package/docs/en/architecture/index.html +2187 -0
  22. package/docs/en/examples-and-fixtures/index.html +1888 -0
  23. package/docs/en/help/index.html +2035 -0
  24. package/docs/en/index.html +1895 -0
  25. package/docs/en/licensing/index.html +1917 -0
  26. package/docs/en/migration/index.html +2334 -0
  27. package/docs/en/quickstart/index.html +1919 -0
  28. package/docs/en/recipes/adapter-text-closure/index.html +2000 -0
  29. package/docs/en/recipes/adopt-existing-repository/index.html +1986 -0
  30. package/docs/en/recipes/deterministic-human-report/index.html +1998 -0
  31. package/docs/en/recipes/domain-schema-validation/index.html +2007 -0
  32. package/docs/en/recipes/durable-local-state/index.html +2009 -0
  33. package/docs/en/recipes/host-profile-integration/index.html +2001 -0
  34. package/docs/en/recipes/index.html +1876 -0
  35. package/docs/en/recipes/safe-filesystem-and-atomic-write/index.html +1994 -0
  36. package/docs/en/reference/api/index.html +1917 -0
  37. package/docs/en/reference/compatibility/index.html +1990 -0
  38. package/docs/en/reference/failure-and-side-effect-matrix/index.html +2216 -0
  39. package/docs/examples-and-fixtures/index.html +1871 -0
  40. package/docs/git-lifecycle/index.html +1508 -482
  41. package/docs/help/index.html +1655 -554
  42. package/docs/index.html +1479 -450
  43. package/docs/integration/audit/failure-evidence/index.html +1488 -462
  44. package/docs/integration/audit/independence/index.html +1513 -487
  45. package/docs/integration/audit/index.html +1514 -488
  46. package/docs/integration/audit/mutation-taxonomy/index.html +1548 -522
  47. package/docs/integration/audit/version-compatibility/index.html +1489 -463
  48. package/docs/licensing/index.html +1917 -0
  49. package/docs/migration/index.html +1678 -586
  50. package/docs/public/status/index.html +1542 -516
  51. package/docs/quickstart/index.html +1589 -539
  52. package/docs/recipes/adapter-text-closure/index.html +2000 -0
  53. package/docs/recipes/adopt-existing-repository/index.html +1986 -0
  54. package/docs/recipes/deterministic-human-report/index.html +1998 -0
  55. package/docs/recipes/domain-schema-validation/index.html +2007 -0
  56. package/docs/recipes/durable-local-state/index.html +2009 -0
  57. package/docs/recipes/host-profile-integration/index.html +2001 -0
  58. package/docs/recipes/index.html +1876 -0
  59. package/docs/recipes/safe-filesystem-and-atomic-write/index.html +1994 -0
  60. package/docs/reference/api/contracts/index.html +2532 -0
  61. package/docs/reference/api/engineering-kit/index.html +2551 -0
  62. package/docs/reference/api/harness/index.html +2608 -0
  63. package/docs/reference/api/index.html +1857 -0
  64. package/docs/reference/compatibility/index.html +1990 -0
  65. package/docs/reference/failure-and-side-effect-matrix/index.html +2216 -0
  66. package/docs/search/search_index.json +1 -1
  67. package/docs/setup/index.html +1494 -468
  68. package/docs/sitemap.xml +152 -0
  69. package/package.json +14 -4
  70. package/release-notes/0.2.1.yaml +23 -0
@@ -0,0 +1,1944 @@
1
+
2
+ <!doctype html>
3
+ <html lang="zh" class="no-js">
4
+ <head>
5
+
6
+ <meta charset="utf-8">
7
+ <meta name="viewport" content="width=device-width,initial-scale=1">
8
+
9
+ <meta name="description" content="Skill Family 生命周期公共工程基础设施父工作区">
10
+
11
+
12
+
13
+ <link rel="canonical" href="https://ifoohoo.github.io/skill-family-engineering-kit/agents/architecture-routing/">
14
+
15
+
16
+ <link rel="prev" href="../">
17
+
18
+
19
+ <link rel="next" href="../../reference/compatibility/">
20
+
21
+
22
+
23
+
24
+
25
+ <link rel="icon" href="../../assets/images/favicon.png">
26
+ <meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.7.7">
27
+
28
+
29
+
30
+ <title>中文 · 架构路由 - Skill Family Foundation</title>
31
+
32
+
33
+
34
+ <link rel="stylesheet" href="../../assets/stylesheets/main.ec1eaa64.min.css">
35
+
36
+
37
+ <link rel="stylesheet" href="../../assets/stylesheets/palette.ab4e12ef.min.css">
38
+
39
+
40
+
41
+
42
+
43
+
44
+
45
+
46
+
47
+
48
+
49
+
50
+ <script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
51
+
52
+
53
+
54
+
55
+
56
+ </head>
57
+
58
+
59
+
60
+
61
+
62
+
63
+
64
+
65
+
66
+ <body dir="ltr" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo">
67
+
68
+
69
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
70
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
71
+ <label class="md-overlay" for="__drawer"></label>
72
+ <div data-md-component="skip">
73
+
74
+
75
+ <a href="#架构路由从意图到层能力与外部项目" class="md-skip">
76
+ 跳转至
77
+ </a>
78
+
79
+ </div>
80
+ <div data-md-component="announce">
81
+
82
+ </div>
83
+
84
+
85
+
86
+
87
+
88
+
89
+ <header class="md-header md-header--shadow" data-md-component="header">
90
+ <nav class="md-header__inner md-grid" aria-label="页眉">
91
+ <a href="../.." title="Skill Family Foundation" class="md-header__button md-logo" aria-label="Skill Family Foundation" data-md-component="logo">
92
+
93
+
94
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>
95
+
96
+ </a>
97
+ <label class="md-header__button md-icon" for="__drawer">
98
+
99
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
100
+ </label>
101
+ <div class="md-header__title" data-md-component="header-title">
102
+ <div class="md-header__ellipsis">
103
+ <div class="md-header__topic">
104
+ <span class="md-ellipsis">
105
+ Skill Family Foundation
106
+ </span>
107
+ </div>
108
+ <div class="md-header__topic" data-md-component="header-topic">
109
+ <span class="md-ellipsis">
110
+
111
+ 中文 · 架构路由
112
+
113
+ </span>
114
+ </div>
115
+ </div>
116
+ </div>
117
+
118
+
119
+ <form class="md-header__option" data-md-component="palette">
120
+
121
+
122
+
123
+
124
+ <input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo" aria-label="切换到深色模式" type="radio" name="__palette" id="__palette_0">
125
+
126
+ <label class="md-header__button md-icon" title="切换到深色模式" for="__palette_1" hidden>
127
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4m0 10a6 6 0 0 1-6-6 6 6 0 0 1 6-6 6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
128
+ </label>
129
+
130
+
131
+
132
+
133
+
134
+ <input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="indigo" data-md-color-accent="indigo" aria-label="切换到浅色模式" type="radio" name="__palette" id="__palette_1">
135
+
136
+ <label class="md-header__button md-icon" title="切换到浅色模式" for="__palette_0" hidden>
137
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12s-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6a6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
138
+ </label>
139
+
140
+
141
+ </form>
142
+
143
+
144
+
145
+ <script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
146
+
147
+
148
+
149
+
150
+
151
+ <label class="md-header__button md-icon" for="__search">
152
+
153
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
154
+ </label>
155
+ <div class="md-search" data-md-component="search" role="dialog">
156
+ <label class="md-search__overlay" for="__search"></label>
157
+ <div class="md-search__inner" role="search">
158
+ <form class="md-search__form" name="search">
159
+ <input type="text" class="md-search__input" name="query" aria-label="搜索" placeholder="搜索" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
160
+ <label class="md-search__icon md-icon" for="__search">
161
+
162
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
163
+
164
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
165
+ </label>
166
+ <nav class="md-search__options" aria-label="查找">
167
+
168
+ <button type="reset" class="md-search__icon md-icon" title="清空当前内容" aria-label="清空当前内容" tabindex="-1">
169
+
170
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
171
+ </button>
172
+ </nav>
173
+
174
+ </form>
175
+ <div class="md-search__output">
176
+ <div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
177
+ <div class="md-search-result" data-md-component="search-result">
178
+ <div class="md-search-result__meta">
179
+ 正在初始化搜索引擎
180
+ </div>
181
+ <ol class="md-search-result__list" role="presentation"></ol>
182
+ </div>
183
+ </div>
184
+ </div>
185
+ </div>
186
+ </div>
187
+
188
+
189
+
190
+ </nav>
191
+
192
+ </header>
193
+
194
+ <div class="md-container" data-md-component="container">
195
+
196
+
197
+
198
+
199
+
200
+
201
+ <main class="md-main" data-md-component="main">
202
+ <div class="md-main__inner md-grid">
203
+
204
+
205
+
206
+ <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
207
+ <div class="md-sidebar__scrollwrap">
208
+ <div class="md-sidebar__inner">
209
+
210
+
211
+
212
+
213
+ <nav class="md-nav md-nav--primary" aria-label="导航栏" data-md-level="0">
214
+ <label class="md-nav__title" for="__drawer">
215
+ <a href="../.." title="Skill Family Foundation" class="md-nav__button md-logo" aria-label="Skill Family Foundation" data-md-component="logo">
216
+
217
+
218
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>
219
+
220
+ </a>
221
+ Skill Family Foundation
222
+ </label>
223
+
224
+ <ul class="md-nav__list" data-md-scrollfix>
225
+
226
+
227
+
228
+
229
+
230
+
231
+
232
+ <li class="md-nav__item">
233
+ <a href="../.." class="md-nav__link">
234
+
235
+
236
+
237
+ <span class="md-ellipsis">
238
+
239
+
240
+ 中文 · 首页
241
+
242
+
243
+
244
+ </span>
245
+
246
+
247
+
248
+ </a>
249
+ </li>
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+ <li class="md-nav__item">
260
+ <a href="../../setup/" class="md-nav__link">
261
+
262
+
263
+
264
+ <span class="md-ellipsis">
265
+
266
+
267
+ 中文 · 安装与环境
268
+
269
+
270
+
271
+ </span>
272
+
273
+
274
+
275
+ </a>
276
+ </li>
277
+
278
+
279
+
280
+
281
+
282
+
283
+
284
+
285
+
286
+ <li class="md-nav__item">
287
+ <a href="../../quickstart/" class="md-nav__link">
288
+
289
+
290
+
291
+ <span class="md-ellipsis">
292
+
293
+
294
+ 中文 · 快速开始
295
+
296
+
297
+
298
+ </span>
299
+
300
+
301
+
302
+ </a>
303
+ </li>
304
+
305
+
306
+
307
+
308
+
309
+
310
+
311
+
312
+
313
+ <li class="md-nav__item">
314
+ <a href="../../git-lifecycle/" class="md-nav__link">
315
+
316
+
317
+
318
+ <span class="md-ellipsis">
319
+
320
+
321
+ 中文 · Git 生命周期指南
322
+
323
+
324
+
325
+ </span>
326
+
327
+
328
+
329
+ </a>
330
+ </li>
331
+
332
+
333
+
334
+
335
+
336
+
337
+
338
+
339
+
340
+ <li class="md-nav__item">
341
+ <a href="../../help/" class="md-nav__link">
342
+
343
+
344
+
345
+ <span class="md-ellipsis">
346
+
347
+
348
+ 中文 · 能力与诊断
349
+
350
+
351
+
352
+ </span>
353
+
354
+
355
+
356
+ </a>
357
+ </li>
358
+
359
+
360
+
361
+
362
+
363
+
364
+
365
+
366
+
367
+ <li class="md-nav__item">
368
+ <a href="../../architecture/" class="md-nav__link">
369
+
370
+
371
+
372
+ <span class="md-ellipsis">
373
+
374
+
375
+ 中文 · 架构边界
376
+
377
+
378
+
379
+ </span>
380
+
381
+
382
+
383
+ </a>
384
+ </li>
385
+
386
+
387
+
388
+
389
+
390
+
391
+
392
+
393
+
394
+ <li class="md-nav__item">
395
+ <a href="../../public/status/" class="md-nav__link">
396
+
397
+
398
+
399
+ <span class="md-ellipsis">
400
+
401
+
402
+ 中文 · 公开状态
403
+
404
+
405
+
406
+ </span>
407
+
408
+
409
+
410
+ </a>
411
+ </li>
412
+
413
+
414
+
415
+
416
+
417
+
418
+
419
+
420
+
421
+ <li class="md-nav__item">
422
+ <a href="../../migration/" class="md-nav__link">
423
+
424
+
425
+
426
+ <span class="md-ellipsis">
427
+
428
+
429
+ 中文 · 存量采用与迁移
430
+
431
+
432
+
433
+ </span>
434
+
435
+
436
+
437
+ </a>
438
+ </li>
439
+
440
+
441
+
442
+
443
+
444
+
445
+
446
+
447
+
448
+ <li class="md-nav__item">
449
+ <a href="../../licensing/" class="md-nav__link">
450
+
451
+
452
+
453
+ <span class="md-ellipsis">
454
+
455
+
456
+ 中文 · 许可与署名
457
+
458
+
459
+
460
+ </span>
461
+
462
+
463
+
464
+ </a>
465
+ </li>
466
+
467
+
468
+
469
+
470
+
471
+
472
+
473
+
474
+
475
+ <li class="md-nav__item">
476
+ <a href="../" class="md-nav__link">
477
+
478
+
479
+
480
+ <span class="md-ellipsis">
481
+
482
+
483
+ 中文 · 智能体入口
484
+
485
+
486
+
487
+ </span>
488
+
489
+
490
+
491
+ </a>
492
+ </li>
493
+
494
+
495
+
496
+
497
+
498
+
499
+
500
+
501
+
502
+
503
+
504
+ <li class="md-nav__item md-nav__item--active">
505
+
506
+ <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
507
+
508
+
509
+
510
+
511
+
512
+ <label class="md-nav__link md-nav__link--active" for="__toc">
513
+
514
+
515
+
516
+ <span class="md-ellipsis">
517
+
518
+
519
+ 中文 · 架构路由
520
+
521
+
522
+
523
+ </span>
524
+
525
+
526
+
527
+ <span class="md-nav__icon md-icon"></span>
528
+ </label>
529
+
530
+ <a href="./" class="md-nav__link md-nav__link--active">
531
+
532
+
533
+
534
+ <span class="md-ellipsis">
535
+
536
+
537
+ 中文 · 架构路由
538
+
539
+
540
+
541
+ </span>
542
+
543
+
544
+
545
+ </a>
546
+
547
+
548
+
549
+ <nav class="md-nav md-nav--secondary" aria-label="目录">
550
+
551
+
552
+
553
+
554
+
555
+
556
+ <label class="md-nav__title" for="__toc">
557
+ <span class="md-nav__icon md-icon"></span>
558
+ 目录
559
+ </label>
560
+ <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
561
+
562
+ <li class="md-nav__item">
563
+ <a href="#决策顺序" class="md-nav__link">
564
+ <span class="md-ellipsis">
565
+
566
+ 决策顺序
567
+
568
+ </span>
569
+ </a>
570
+
571
+ </li>
572
+
573
+ <li class="md-nav__item">
574
+ <a href="#路由表" class="md-nav__link">
575
+ <span class="md-ellipsis">
576
+
577
+ 路由表
578
+
579
+ </span>
580
+ </a>
581
+
582
+ </li>
583
+
584
+ <li class="md-nav__item">
585
+ <a href="#分层定位速查" class="md-nav__link">
586
+ <span class="md-ellipsis">
587
+
588
+ 分层定位速查
589
+
590
+ </span>
591
+ </a>
592
+
593
+ </li>
594
+
595
+ <li class="md-nav__item">
596
+ <a href="#典型误路由与纠正" class="md-nav__link">
597
+ <span class="md-ellipsis">
598
+
599
+ 典型误路由与纠正
600
+
601
+ </span>
602
+ </a>
603
+
604
+ </li>
605
+
606
+ </ul>
607
+
608
+ </nav>
609
+
610
+ </li>
611
+
612
+
613
+
614
+
615
+
616
+
617
+
618
+
619
+
620
+ <li class="md-nav__item">
621
+ <a href="../../reference/compatibility/" class="md-nav__link">
622
+
623
+
624
+
625
+ <span class="md-ellipsis">
626
+
627
+
628
+ 中文 · 兼容性
629
+
630
+
631
+
632
+ </span>
633
+
634
+
635
+
636
+ </a>
637
+ </li>
638
+
639
+
640
+
641
+
642
+
643
+
644
+
645
+
646
+
647
+ <li class="md-nav__item">
648
+ <a href="../../reference/failure-and-side-effect-matrix/" class="md-nav__link">
649
+
650
+
651
+
652
+ <span class="md-ellipsis">
653
+
654
+
655
+ 中文 · 失败与副作用
656
+
657
+
658
+
659
+ </span>
660
+
661
+
662
+
663
+ </a>
664
+ </li>
665
+
666
+
667
+
668
+
669
+
670
+
671
+
672
+
673
+
674
+ <li class="md-nav__item">
675
+ <a href="../../reference/api/" class="md-nav__link">
676
+
677
+
678
+
679
+ <span class="md-ellipsis">
680
+
681
+
682
+ 中文 · API 参考
683
+
684
+
685
+
686
+ </span>
687
+
688
+
689
+
690
+ </a>
691
+ </li>
692
+
693
+
694
+
695
+
696
+
697
+
698
+
699
+
700
+
701
+ <li class="md-nav__item">
702
+ <a href="../../reference/api/contracts/" class="md-nav__link">
703
+
704
+
705
+
706
+ <span class="md-ellipsis">
707
+
708
+
709
+ 中文 · Contracts API
710
+
711
+
712
+
713
+ </span>
714
+
715
+
716
+
717
+ </a>
718
+ </li>
719
+
720
+
721
+
722
+
723
+
724
+
725
+
726
+
727
+
728
+ <li class="md-nav__item">
729
+ <a href="../../reference/api/harness/" class="md-nav__link">
730
+
731
+
732
+
733
+ <span class="md-ellipsis">
734
+
735
+
736
+ 中文 · Harness API
737
+
738
+
739
+
740
+ </span>
741
+
742
+
743
+
744
+ </a>
745
+ </li>
746
+
747
+
748
+
749
+
750
+
751
+
752
+
753
+
754
+
755
+ <li class="md-nav__item">
756
+ <a href="../../reference/api/engineering-kit/" class="md-nav__link">
757
+
758
+
759
+
760
+ <span class="md-ellipsis">
761
+
762
+
763
+ 中文 · Engineering Kit API
764
+
765
+
766
+
767
+ </span>
768
+
769
+
770
+
771
+ </a>
772
+ </li>
773
+
774
+
775
+
776
+
777
+
778
+
779
+
780
+
781
+
782
+ <li class="md-nav__item">
783
+ <a href="../../examples-and-fixtures/" class="md-nav__link">
784
+
785
+
786
+
787
+ <span class="md-ellipsis">
788
+
789
+
790
+ 中文 · 样例与 Fixture
791
+
792
+
793
+
794
+ </span>
795
+
796
+
797
+
798
+ </a>
799
+ </li>
800
+
801
+
802
+
803
+
804
+
805
+
806
+
807
+
808
+
809
+ <li class="md-nav__item">
810
+ <a href="../../recipes/" class="md-nav__link">
811
+
812
+
813
+
814
+ <span class="md-ellipsis">
815
+
816
+
817
+ 中文 · Recipes
818
+
819
+
820
+
821
+ </span>
822
+
823
+
824
+
825
+ </a>
826
+ </li>
827
+
828
+
829
+
830
+
831
+
832
+
833
+
834
+
835
+
836
+ <li class="md-nav__item">
837
+ <a href="../../recipes/adopt-existing-repository/" class="md-nav__link">
838
+
839
+
840
+
841
+ <span class="md-ellipsis">
842
+
843
+
844
+ 中文 · 采用存量仓库
845
+
846
+
847
+
848
+ </span>
849
+
850
+
851
+
852
+ </a>
853
+ </li>
854
+
855
+
856
+
857
+
858
+
859
+
860
+
861
+
862
+
863
+ <li class="md-nav__item">
864
+ <a href="../../recipes/safe-filesystem-and-atomic-write/" class="md-nav__link">
865
+
866
+
867
+
868
+ <span class="md-ellipsis">
869
+
870
+
871
+ 中文 · 安全文件系统与原子写
872
+
873
+
874
+
875
+ </span>
876
+
877
+
878
+
879
+ </a>
880
+ </li>
881
+
882
+
883
+
884
+
885
+
886
+
887
+
888
+
889
+
890
+ <li class="md-nav__item">
891
+ <a href="../../recipes/adapter-text-closure/" class="md-nav__link">
892
+
893
+
894
+
895
+ <span class="md-ellipsis">
896
+
897
+
898
+ 中文 · Adapter 文本闭包
899
+
900
+
901
+
902
+ </span>
903
+
904
+
905
+
906
+ </a>
907
+ </li>
908
+
909
+
910
+
911
+
912
+
913
+
914
+
915
+
916
+
917
+ <li class="md-nav__item">
918
+ <a href="../../recipes/deterministic-human-report/" class="md-nav__link">
919
+
920
+
921
+
922
+ <span class="md-ellipsis">
923
+
924
+
925
+ 中文 · 确定性人类报告
926
+
927
+
928
+
929
+ </span>
930
+
931
+
932
+
933
+ </a>
934
+ </li>
935
+
936
+
937
+
938
+
939
+
940
+
941
+
942
+
943
+
944
+ <li class="md-nav__item">
945
+ <a href="../../recipes/durable-local-state/" class="md-nav__link">
946
+
947
+
948
+
949
+ <span class="md-ellipsis">
950
+
951
+
952
+ 中文 · 持久本地状态
953
+
954
+
955
+
956
+ </span>
957
+
958
+
959
+
960
+ </a>
961
+ </li>
962
+
963
+
964
+
965
+
966
+
967
+
968
+
969
+
970
+
971
+ <li class="md-nav__item">
972
+ <a href="../../recipes/host-profile-integration/" class="md-nav__link">
973
+
974
+
975
+
976
+ <span class="md-ellipsis">
977
+
978
+
979
+ 中文 · 宿主 Profile 集成
980
+
981
+
982
+
983
+ </span>
984
+
985
+
986
+
987
+ </a>
988
+ </li>
989
+
990
+
991
+
992
+
993
+
994
+
995
+
996
+
997
+
998
+ <li class="md-nav__item">
999
+ <a href="../../recipes/domain-schema-validation/" class="md-nav__link">
1000
+
1001
+
1002
+
1003
+ <span class="md-ellipsis">
1004
+
1005
+
1006
+ 中文 · 领域 Schema 校验
1007
+
1008
+
1009
+
1010
+ </span>
1011
+
1012
+
1013
+
1014
+ </a>
1015
+ </li>
1016
+
1017
+
1018
+
1019
+
1020
+
1021
+
1022
+
1023
+
1024
+
1025
+ <li class="md-nav__item">
1026
+ <a href="../../en/" class="md-nav__link">
1027
+
1028
+
1029
+
1030
+ <span class="md-ellipsis">
1031
+
1032
+
1033
+ English · Home
1034
+
1035
+
1036
+
1037
+ </span>
1038
+
1039
+
1040
+
1041
+ </a>
1042
+ </li>
1043
+
1044
+
1045
+
1046
+
1047
+
1048
+
1049
+
1050
+
1051
+
1052
+ <li class="md-nav__item">
1053
+ <a href="../../en/quickstart/" class="md-nav__link">
1054
+
1055
+
1056
+
1057
+ <span class="md-ellipsis">
1058
+
1059
+
1060
+ English · Quickstart
1061
+
1062
+
1063
+
1064
+ </span>
1065
+
1066
+
1067
+
1068
+ </a>
1069
+ </li>
1070
+
1071
+
1072
+
1073
+
1074
+
1075
+
1076
+
1077
+
1078
+
1079
+ <li class="md-nav__item">
1080
+ <a href="../../en/help/" class="md-nav__link">
1081
+
1082
+
1083
+
1084
+ <span class="md-ellipsis">
1085
+
1086
+
1087
+ English · Capabilities and diagnostics
1088
+
1089
+
1090
+
1091
+ </span>
1092
+
1093
+
1094
+
1095
+ </a>
1096
+ </li>
1097
+
1098
+
1099
+
1100
+
1101
+
1102
+
1103
+
1104
+
1105
+
1106
+ <li class="md-nav__item">
1107
+ <a href="../../en/architecture/" class="md-nav__link">
1108
+
1109
+
1110
+
1111
+ <span class="md-ellipsis">
1112
+
1113
+
1114
+ English · Architecture
1115
+
1116
+
1117
+
1118
+ </span>
1119
+
1120
+
1121
+
1122
+ </a>
1123
+ </li>
1124
+
1125
+
1126
+
1127
+
1128
+
1129
+
1130
+
1131
+
1132
+
1133
+ <li class="md-nav__item">
1134
+ <a href="../../en/migration/" class="md-nav__link">
1135
+
1136
+
1137
+
1138
+ <span class="md-ellipsis">
1139
+
1140
+
1141
+ English · Migration
1142
+
1143
+
1144
+
1145
+ </span>
1146
+
1147
+
1148
+
1149
+ </a>
1150
+ </li>
1151
+
1152
+
1153
+
1154
+
1155
+
1156
+
1157
+
1158
+
1159
+
1160
+ <li class="md-nav__item">
1161
+ <a href="../../en/licensing/" class="md-nav__link">
1162
+
1163
+
1164
+
1165
+ <span class="md-ellipsis">
1166
+
1167
+
1168
+ English · Licensing
1169
+
1170
+
1171
+
1172
+ </span>
1173
+
1174
+
1175
+
1176
+ </a>
1177
+ </li>
1178
+
1179
+
1180
+
1181
+
1182
+
1183
+
1184
+
1185
+
1186
+
1187
+ <li class="md-nav__item">
1188
+ <a href="../../en/agents/" class="md-nav__link">
1189
+
1190
+
1191
+
1192
+ <span class="md-ellipsis">
1193
+
1194
+
1195
+ English · Agent entry
1196
+
1197
+
1198
+
1199
+ </span>
1200
+
1201
+
1202
+
1203
+ </a>
1204
+ </li>
1205
+
1206
+
1207
+
1208
+
1209
+
1210
+
1211
+
1212
+
1213
+
1214
+ <li class="md-nav__item">
1215
+ <a href="../../en/agents/architecture-routing/" class="md-nav__link">
1216
+
1217
+
1218
+
1219
+ <span class="md-ellipsis">
1220
+
1221
+
1222
+ English · Architecture routing
1223
+
1224
+
1225
+
1226
+ </span>
1227
+
1228
+
1229
+
1230
+ </a>
1231
+ </li>
1232
+
1233
+
1234
+
1235
+
1236
+
1237
+
1238
+
1239
+
1240
+
1241
+ <li class="md-nav__item">
1242
+ <a href="../../en/reference/compatibility/" class="md-nav__link">
1243
+
1244
+
1245
+
1246
+ <span class="md-ellipsis">
1247
+
1248
+
1249
+ English · Compatibility
1250
+
1251
+
1252
+
1253
+ </span>
1254
+
1255
+
1256
+
1257
+ </a>
1258
+ </li>
1259
+
1260
+
1261
+
1262
+
1263
+
1264
+
1265
+
1266
+
1267
+
1268
+ <li class="md-nav__item">
1269
+ <a href="../../en/reference/failure-and-side-effect-matrix/" class="md-nav__link">
1270
+
1271
+
1272
+
1273
+ <span class="md-ellipsis">
1274
+
1275
+
1276
+ English · Failures and side effects
1277
+
1278
+
1279
+
1280
+ </span>
1281
+
1282
+
1283
+
1284
+ </a>
1285
+ </li>
1286
+
1287
+
1288
+
1289
+
1290
+
1291
+
1292
+
1293
+
1294
+
1295
+ <li class="md-nav__item">
1296
+ <a href="../../en/reference/api/" class="md-nav__link">
1297
+
1298
+
1299
+
1300
+ <span class="md-ellipsis">
1301
+
1302
+
1303
+ English · API reference
1304
+
1305
+
1306
+
1307
+ </span>
1308
+
1309
+
1310
+
1311
+ </a>
1312
+ </li>
1313
+
1314
+
1315
+
1316
+
1317
+
1318
+
1319
+
1320
+
1321
+
1322
+ <li class="md-nav__item">
1323
+ <a href="../../en/examples-and-fixtures/" class="md-nav__link">
1324
+
1325
+
1326
+
1327
+ <span class="md-ellipsis">
1328
+
1329
+
1330
+ English · Examples and fixtures
1331
+
1332
+
1333
+
1334
+ </span>
1335
+
1336
+
1337
+
1338
+ </a>
1339
+ </li>
1340
+
1341
+
1342
+
1343
+
1344
+
1345
+
1346
+
1347
+
1348
+
1349
+ <li class="md-nav__item">
1350
+ <a href="../../en/recipes/" class="md-nav__link">
1351
+
1352
+
1353
+
1354
+ <span class="md-ellipsis">
1355
+
1356
+
1357
+ English · Recipes
1358
+
1359
+
1360
+
1361
+ </span>
1362
+
1363
+
1364
+
1365
+ </a>
1366
+ </li>
1367
+
1368
+
1369
+
1370
+
1371
+
1372
+
1373
+
1374
+
1375
+
1376
+ <li class="md-nav__item">
1377
+ <a href="../../en/recipes/adopt-existing-repository/" class="md-nav__link">
1378
+
1379
+
1380
+
1381
+ <span class="md-ellipsis">
1382
+
1383
+
1384
+ English · Adopt an existing repository
1385
+
1386
+
1387
+
1388
+ </span>
1389
+
1390
+
1391
+
1392
+ </a>
1393
+ </li>
1394
+
1395
+
1396
+
1397
+
1398
+
1399
+
1400
+
1401
+
1402
+
1403
+ <li class="md-nav__item">
1404
+ <a href="../../en/recipes/safe-filesystem-and-atomic-write/" class="md-nav__link">
1405
+
1406
+
1407
+
1408
+ <span class="md-ellipsis">
1409
+
1410
+
1411
+ English · Safe filesystem and atomic write
1412
+
1413
+
1414
+
1415
+ </span>
1416
+
1417
+
1418
+
1419
+ </a>
1420
+ </li>
1421
+
1422
+
1423
+
1424
+
1425
+
1426
+
1427
+
1428
+
1429
+
1430
+ <li class="md-nav__item">
1431
+ <a href="../../en/recipes/adapter-text-closure/" class="md-nav__link">
1432
+
1433
+
1434
+
1435
+ <span class="md-ellipsis">
1436
+
1437
+
1438
+ English · Adapter text closure
1439
+
1440
+
1441
+
1442
+ </span>
1443
+
1444
+
1445
+
1446
+ </a>
1447
+ </li>
1448
+
1449
+
1450
+
1451
+
1452
+
1453
+
1454
+
1455
+
1456
+
1457
+ <li class="md-nav__item">
1458
+ <a href="../../en/recipes/deterministic-human-report/" class="md-nav__link">
1459
+
1460
+
1461
+
1462
+ <span class="md-ellipsis">
1463
+
1464
+
1465
+ English · Deterministic human report
1466
+
1467
+
1468
+
1469
+ </span>
1470
+
1471
+
1472
+
1473
+ </a>
1474
+ </li>
1475
+
1476
+
1477
+
1478
+
1479
+
1480
+
1481
+
1482
+
1483
+
1484
+ <li class="md-nav__item">
1485
+ <a href="../../en/recipes/durable-local-state/" class="md-nav__link">
1486
+
1487
+
1488
+
1489
+ <span class="md-ellipsis">
1490
+
1491
+
1492
+ English · Durable local state
1493
+
1494
+
1495
+
1496
+ </span>
1497
+
1498
+
1499
+
1500
+ </a>
1501
+ </li>
1502
+
1503
+
1504
+
1505
+
1506
+
1507
+
1508
+
1509
+
1510
+
1511
+ <li class="md-nav__item">
1512
+ <a href="../../en/recipes/host-profile-integration/" class="md-nav__link">
1513
+
1514
+
1515
+
1516
+ <span class="md-ellipsis">
1517
+
1518
+
1519
+ English · Host Profile integration
1520
+
1521
+
1522
+
1523
+ </span>
1524
+
1525
+
1526
+
1527
+ </a>
1528
+ </li>
1529
+
1530
+
1531
+
1532
+
1533
+
1534
+
1535
+
1536
+
1537
+
1538
+ <li class="md-nav__item">
1539
+ <a href="../../en/recipes/domain-schema-validation/" class="md-nav__link">
1540
+
1541
+
1542
+
1543
+ <span class="md-ellipsis">
1544
+
1545
+
1546
+ English · Domain Schema validation
1547
+
1548
+
1549
+
1550
+ </span>
1551
+
1552
+
1553
+
1554
+ </a>
1555
+ </li>
1556
+
1557
+
1558
+
1559
+
1560
+
1561
+
1562
+
1563
+
1564
+
1565
+ <li class="md-nav__item">
1566
+ <a href="../../integration/audit/" class="md-nav__link">
1567
+
1568
+
1569
+
1570
+ <span class="md-ellipsis">
1571
+
1572
+
1573
+ 审计集成 · 入口
1574
+
1575
+
1576
+
1577
+ </span>
1578
+
1579
+
1580
+
1581
+ </a>
1582
+ </li>
1583
+
1584
+
1585
+
1586
+
1587
+
1588
+
1589
+
1590
+
1591
+
1592
+ <li class="md-nav__item">
1593
+ <a href="../../integration/audit/mutation-taxonomy/" class="md-nav__link">
1594
+
1595
+
1596
+
1597
+ <span class="md-ellipsis">
1598
+
1599
+
1600
+ 审计集成 · 变异分类学
1601
+
1602
+
1603
+
1604
+ </span>
1605
+
1606
+
1607
+
1608
+ </a>
1609
+ </li>
1610
+
1611
+
1612
+
1613
+
1614
+
1615
+
1616
+
1617
+
1618
+
1619
+ <li class="md-nav__item">
1620
+ <a href="../../integration/audit/independence/" class="md-nav__link">
1621
+
1622
+
1623
+
1624
+ <span class="md-ellipsis">
1625
+
1626
+
1627
+ 审计集成 · 独立性证明
1628
+
1629
+
1630
+
1631
+ </span>
1632
+
1633
+
1634
+
1635
+ </a>
1636
+ </li>
1637
+
1638
+
1639
+
1640
+
1641
+
1642
+
1643
+
1644
+
1645
+
1646
+ <li class="md-nav__item">
1647
+ <a href="../../integration/audit/version-compatibility/" class="md-nav__link">
1648
+
1649
+
1650
+
1651
+ <span class="md-ellipsis">
1652
+
1653
+
1654
+ 审计集成 · 版本兼容
1655
+
1656
+
1657
+
1658
+ </span>
1659
+
1660
+
1661
+
1662
+ </a>
1663
+ </li>
1664
+
1665
+
1666
+
1667
+
1668
+
1669
+
1670
+
1671
+
1672
+
1673
+ <li class="md-nav__item">
1674
+ <a href="../../integration/audit/failure-evidence/" class="md-nav__link">
1675
+
1676
+
1677
+
1678
+ <span class="md-ellipsis">
1679
+
1680
+
1681
+ 审计集成 · 失败证据与 AUD 码
1682
+
1683
+
1684
+
1685
+ </span>
1686
+
1687
+
1688
+
1689
+ </a>
1690
+ </li>
1691
+
1692
+
1693
+
1694
+ </ul>
1695
+ </nav>
1696
+ </div>
1697
+ </div>
1698
+ </div>
1699
+
1700
+
1701
+
1702
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
1703
+ <div class="md-sidebar__scrollwrap">
1704
+ <div class="md-sidebar__inner">
1705
+
1706
+
1707
+ <nav class="md-nav md-nav--secondary" aria-label="目录">
1708
+
1709
+
1710
+
1711
+
1712
+
1713
+
1714
+ <label class="md-nav__title" for="__toc">
1715
+ <span class="md-nav__icon md-icon"></span>
1716
+ 目录
1717
+ </label>
1718
+ <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
1719
+
1720
+ <li class="md-nav__item">
1721
+ <a href="#决策顺序" class="md-nav__link">
1722
+ <span class="md-ellipsis">
1723
+
1724
+ 决策顺序
1725
+
1726
+ </span>
1727
+ </a>
1728
+
1729
+ </li>
1730
+
1731
+ <li class="md-nav__item">
1732
+ <a href="#路由表" class="md-nav__link">
1733
+ <span class="md-ellipsis">
1734
+
1735
+ 路由表
1736
+
1737
+ </span>
1738
+ </a>
1739
+
1740
+ </li>
1741
+
1742
+ <li class="md-nav__item">
1743
+ <a href="#分层定位速查" class="md-nav__link">
1744
+ <span class="md-ellipsis">
1745
+
1746
+ 分层定位速查
1747
+
1748
+ </span>
1749
+ </a>
1750
+
1751
+ </li>
1752
+
1753
+ <li class="md-nav__item">
1754
+ <a href="#典型误路由与纠正" class="md-nav__link">
1755
+ <span class="md-ellipsis">
1756
+
1757
+ 典型误路由与纠正
1758
+
1759
+ </span>
1760
+ </a>
1761
+
1762
+ </li>
1763
+
1764
+ </ul>
1765
+
1766
+ </nav>
1767
+ </div>
1768
+ </div>
1769
+ </div>
1770
+
1771
+
1772
+
1773
+ <div class="md-content" data-md-component="content">
1774
+
1775
+ <article class="md-content__inner md-typeset">
1776
+
1777
+
1778
+
1779
+
1780
+
1781
+ <blockquote>
1782
+ <p><a href="../../en/agents/architecture-routing/">English</a></p>
1783
+ </blockquote>
1784
+ <h1 id="架构路由从意图到层能力与外部项目">架构路由:从意图到层、能力与外部项目<a class="headerlink" href="#架构路由从意图到层能力与外部项目" title="Permanent link">&para;</a></h1>
1785
+ <p>本页把「一个架构需求该落在哪里」收敛成可机械复用的决策顺序与路由表。它服务于新智能体在不通读源码的前提下,快速得到可验证答案:该需求是否属于 Foundation、应落在 Contracts/Harness/Kit/Profile 哪一层、用哪个稳定入口、什么语义仍由调用方拥有、何时应转交外部项目。</p>
1786
+ <h2 id="决策顺序">决策顺序<a class="headerlink" href="#决策顺序" title="Permanent link">&para;</a></h2>
1787
+ <p>按编号依次判断,命中即停:</p>
1788
+ <ol>
1789
+ <li><strong>是否含领域语义、业务状态机或审计 oracle?</strong> 若是,留在消费者;Foundation 只接业务中立机制。</li>
1790
+ <li><strong>是否是结构、协议、稳定错误码或对象 Schema?</strong> 落 Contracts(契约权威)。</li>
1791
+ <li><strong>是否是跨技能族可复用的 Node 机制?</strong> 落 Harness(Contracts 机制协议的 Node 实现)。</li>
1792
+ <li><strong>是否是工程阶段的 scaffold/adopt-plan/projection/check,或具体 host Profile 注入?</strong> 落 Kit / Profile。</li>
1793
+ <li><strong>是否涉及发布远端状态?</strong> 转 release-skill。</li>
1794
+ <li><strong>是否涉及任务、重试、返工、验收或自迭代?</strong> 转 loop-agent。</li>
1795
+ <li><strong>是否涉及制品关系、context、packet 或 version-lock?</strong> 转 artifact-graph。</li>
1796
+ <li><strong>是否只有一个消费者,或尚未证明跨两个真实消费者重复?</strong> 默认留在消费者,不扩张 Foundation。</li>
1797
+ </ol>
1798
+ <blockquote>
1799
+ <p>第 8 步是扩张闸门。任何新增组件都必须说明:删除它会让两个以上真实消费者重复实现,并经独立 fixture 验证。否则留在消费者侧。</p>
1800
+ </blockquote>
1801
+ <h2 id="路由表">路由表<a class="headerlink" href="#路由表" title="Permanent link">&para;</a></h2>
1802
+ <p>下表给出常见架构意图的首选能力与禁止误用。每条首选能力都可在 <code>capability-catalog.json</code> 按 id 查到入口、副作用与失败语义。</p>
1803
+ <table>
1804
+ <thead>
1805
+ <tr>
1806
+ <th>架构意图</th>
1807
+ <th>首选能力</th>
1808
+ <th>禁止误用</th>
1809
+ </tr>
1810
+ </thead>
1811
+ <tbody>
1812
+ <tr>
1813
+ <td>验证 Foundation 合同对象</td>
1814
+ <td>Contracts / Harness validation(<code>foundation.contracts.object-validation</code>、<code>foundation.harness.contract-validation</code>)</td>
1815
+ <td>不取代消费者业务 Schema</td>
1816
+ </tr>
1817
+ <tr>
1818
+ <td>安全文件访问和原子写</td>
1819
+ <td>Harness path / atomic API(<code>foundation.harness.path-containment</code>、<code>foundation.harness.atomic-write</code>)</td>
1820
+ <td>不把文件选择业务规则放入 Harness</td>
1821
+ </tr>
1822
+ <tr>
1823
+ <td>生成确定性人类报告</td>
1824
+ <td>Harness report 或 Kit report 子动作(<code>foundation.harness.report</code>、<code>foundation.kit.report</code>)</td>
1825
+ <td>不从开放业务 outputs 自由编报告</td>
1826
+ </tr>
1827
+ <tr>
1828
+ <td>持久事件和派生 snapshot</td>
1829
+ <td>Harness state-store(<code>foundation.harness.state-store</code>)</td>
1830
+ <td>不在 Foundation 定义 workflow 状态机</td>
1831
+ </tr>
1832
+ <tr>
1833
+ <td>新项目骨架</td>
1834
+ <td>Kit scaffold(<code>foundation.kit.scaffold</code>)</td>
1835
+ <td>不覆盖非空存量仓</td>
1836
+ </tr>
1837
+ <tr>
1838
+ <td>存量采用盘点</td>
1839
+ <td>Kit adopt-plan(<code>foundation.kit.adopt-plan</code>)</td>
1840
+ <td>不写文件、不自动迁移</td>
1841
+ </tr>
1842
+ <tr>
1843
+ <td>受管投影</td>
1844
+ <td>Kit projection + Profile(<code>foundation.kit.projection</code>)</td>
1845
+ <td>不覆盖 handwritten 文件</td>
1846
+ </tr>
1847
+ <tr>
1848
+ <td>工程诊断</td>
1849
+ <td>Kit check(<code>foundation.kit.check</code>)</td>
1850
+ <td>不自动修复</td>
1851
+ </tr>
1852
+ <tr>
1853
+ <td>发布</td>
1854
+ <td>release-skill</td>
1855
+ <td>Foundation 不拥有远端写入</td>
1856
+ </tr>
1857
+ <tr>
1858
+ <td>任务/重试/返工</td>
1859
+ <td>loop-agent</td>
1860
+ <td>Foundation 不拥有业务状态机</td>
1861
+ </tr>
1862
+ <tr>
1863
+ <td>制品关系/版本锁</td>
1864
+ <td>artifact-graph</td>
1865
+ <td>Foundation 不拥有制品图</td>
1866
+ </tr>
1867
+ </tbody>
1868
+ </table>
1869
+ <h2 id="分层定位速查">分层定位速查<a class="headerlink" href="#分层定位速查" title="Permanent link">&para;</a></h2>
1870
+ <p>依赖方向固定为 Contracts → Harness → Engineering Kit;Profile 横向声明,公共核心不反向依赖具体 Profile。</p>
1871
+ <ul>
1872
+ <li><strong>Contracts</strong>:结构、协议、错误码、协议名登记;18 类顶层对象、9 条 mandatory rule。</li>
1873
+ <li><strong>Harness</strong>:Contracts 的 Node 薄机制运行时;只实现业务中立机制,不拥有语义。</li>
1874
+ <li><strong>Engineering Kit</strong>:四个工程命令(scaffold、adopt-plan、projection、check)及其只读/受限写入边界。</li>
1875
+ <li><strong>Profile</strong>:宿主与项目形态差异的声明式 SPI;只实现稳定 SPI,不注入业务语义。</li>
1876
+ <li><strong>外部项目</strong>:release-skill(发布)、loop-agent(任务生命周期)、artifact-graph(制品关系)、独立审计消费者(领域语义)。</li>
1877
+ </ul>
1878
+ <h2 id="典型误路由与纠正">典型误路由与纠正<a class="headerlink" href="#典型误路由与纠正" title="Permanent link">&para;</a></h2>
1879
+ <ul>
1880
+ <li>误把领域 Schema 路由到 Foundation:领域 Schema 由消费者拥有,Foundation 只提供通用校验机制(<code>foundation.contracts.object-validation</code>)。</li>
1881
+ <li>误把 workflow 状态机路由到 Foundation:state-store 只提供事件日志与快照底座,reducer 转移与终态由调用方拥有(<code>foundation.unsupported.business-state-machine</code>)。</li>
1882
+ <li>误把发布写入路由到 Foundation:远端写入归 release-skill,Foundation 不含任何 publish/remote-write 入口(<code>foundation.unsupported.remote-publish</code>)。</li>
1883
+ <li>误把审计 oracle 路由到 Foundation:审计表面只做确定性序列化,领域结论属外部审阅(<code>foundation.unsupported.domain-audit-semantics</code>)。</li>
1884
+ </ul>
1885
+ <blockquote>
1886
+ <p>路由判断的诚实边界:结构检查只证明字节/结构一致性(仓内可证);普通正文语义与最终接受/拒绝结论属于外部独立审阅,不在目标仓内维护第二份门禁。</p>
1887
+ </blockquote>
1888
+
1889
+
1890
+
1891
+
1892
+
1893
+
1894
+
1895
+
1896
+
1897
+
1898
+
1899
+
1900
+
1901
+ </article>
1902
+ </div>
1903
+
1904
+
1905
+ <script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
1906
+ </div>
1907
+
1908
+ </main>
1909
+
1910
+ <footer class="md-footer">
1911
+
1912
+ <div class="md-footer-meta md-typeset">
1913
+ <div class="md-footer-meta__inner md-grid">
1914
+ <div class="md-copyright">
1915
+
1916
+
1917
+ Made with
1918
+ <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
1919
+ Material for MkDocs
1920
+ </a>
1921
+
1922
+ </div>
1923
+
1924
+ </div>
1925
+ </div>
1926
+ </footer>
1927
+
1928
+ </div>
1929
+ <div class="md-dialog" data-md-component="dialog">
1930
+ <div class="md-dialog__inner md-typeset"></div>
1931
+ </div>
1932
+
1933
+
1934
+
1935
+
1936
+
1937
+ <script id="__config" type="application/json">{"annotate": null, "base": "../..", "features": [], "search": "../../assets/javascripts/workers/search.2c215733.min.js", "tags": null, "translations": {"clipboard.copied": "\u5df2\u590d\u5236", "clipboard.copy": "\u590d\u5236", "search.result.more.one": "\u5728\u8be5\u9875\u4e0a\u8fd8\u6709 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.more.other": "\u5728\u8be5\u9875\u4e0a\u8fd8\u6709 # \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.none": "\u6ca1\u6709\u627e\u5230\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.one": "\u627e\u5230 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.other": "# \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.placeholder": "\u952e\u5165\u4ee5\u5f00\u59cb\u641c\u7d22", "search.result.term.missing": "\u7f3a\u5c11", "select.version": "\u9009\u62e9\u5f53\u524d\u7248\u672c"}, "version": null}</script>
1938
+
1939
+
1940
+ <script src="../../assets/javascripts/bundle.d7400e89.min.js"></script>
1941
+
1942
+
1943
+ </body>
1944
+ </html>