@sema-agent/settings-schema 13.0.1 → 14.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/CHANGELOG.md +90 -0
  2. package/README.md +18 -1
  3. package/conformance/VERSION +1 -1
  4. package/conformance/baseline.json +1 -3
  5. package/conformance/cases/c01-entry-salvage-then-typo/expected.json +1 -3
  6. package/conformance/cases/c02-hosts-clamp-stacked/expected.json +1 -3
  7. package/conformance/cases/c03-literal-dotted-top-key/expected.json +1 -3
  8. package/conformance/cases/c04-all-bad-collection-not-salvaged/expected.json +1 -3
  9. package/conformance/cases/c07-hooks-is-not-a-config-domain/expected.json +1 -3
  10. package/conformance/cases/c08-limits-unknown-carried-64/expected.json +1 -3
  11. package/conformance/cases/c09-limits-unknown-carried-65/expected.json +1 -3
  12. package/conformance/cases/c10-record-key-secret-redacted-twice/expected.json +1 -3
  13. package/conformance/cases/c11-unicode-unknown-keys/expected.json +1 -3
  14. package/conformance/cases/c12-prototype-name-top-keys/expected.json +1 -3
  15. package/conformance/cases/c13-models-field-null/expected.json +1 -3
  16. package/conformance/cases/c14-models-field-empty-array/expected.json +1 -3
  17. package/conformance/cases/c15-models-field-number/expected.json +1 -3
  18. package/conformance/cases/c16-deep-nesting-205/expected.json +1 -3
  19. package/conformance/cases/c17-empty-domain-file/expected.json +1 -3
  20. package/conformance/cases/c18-wire-envelope-not-an-object/expected.json +1 -3
  21. package/conformance/cases/c19-wire-envelope-no-version/expected.json +1 -3
  22. package/conformance/cases/c21-governance-empty-object-wins/expected.json +1 -3
  23. package/conformance/cases/c23-mixed-validity-models/expected.json +1 -3
  24. package/conformance/cases/c24-valid-entries-with-unknown-keys/expected.json +1 -3
  25. package/conformance/cases/c25-published-roundtrip-zero-warnings/expected.json +1 -3
  26. package/conformance/cases/c26-hosts-array-1024/expected.json +1 -3
  27. package/conformance/cases/c27-hosts-array-1025/expected.json +1 -3
  28. package/conformance/cases/c28-large-document-over-1mb/expected.json +1 -3
  29. package/conformance/cases/c29-salvage-then-domain-refine-fails/expected.json +1 -3
  30. package/conformance/cases/c30-version-triple-a-first/expected.json +1 -3
  31. package/conformance/cases/c31-version-triple-b-changed/expected.json +1 -3
  32. package/conformance/cases/c32-version-triple-a-restored/expected.json +1 -3
  33. package/conformance/cases/c33-limits-nested-carried-key/expected.json +1 -3
  34. package/conformance/cases/c34-skills-content-vs-manifest/expected.json +1 -3
  35. package/conformance/cases/c35-portable-domain-file-is-null/expected.json +1 -3
  36. package/conformance/cases/c36-skills-entry-without-content/expected.json +1 -3
  37. package/conformance/cases/c37-skills-field-null/expected.json +1 -3
  38. package/conformance/cases/c38-remote-exec-is-a-non-domain-file/expected.json +1 -3
  39. package/conformance/cases/c39-hidden-file-in-config-d/expected.json +1 -3
  40. package/conformance/cases/c40-s712-identity-only-what-reads-out/expected.json +1 -3
  41. package/conformance/cases/c41-s792-encoded-pem-identity/expected.json +1 -3
  42. package/conformance/cases/c42-s792-unknown-key-secret-redacted/expected.json +1 -3
  43. package/conformance/cases/c43-s792-form-and-deep-encoded-pem/expected.json +1 -3
  44. package/conformance/cases/c44-s792-utf8-escape-glued-token/expected.json +1 -3
  45. package/conformance/cases/c45-s792-identity-bounds-and-decode-depth/expected.json +1 -3
  46. package/conformance/cases/c46-s811-host-name-url-userinfo-withheld/expected.json +1 -3
  47. package/conformance/cases/c47-s811-roles-key-url-userinfo-withheld/expected.json +1 -3
  48. package/conformance/cases/c48-s935-model-headers-transported/expected.json +1 -3
  49. package/conformance/cases/c49-s935-model-headers-secret-entry-dropped/expected.json +1 -3
  50. package/conformance/cases/c50-s784-lane-host-legal/expected.json +1 -3
  51. package/conformance/cases/c51-s784-lane-e2b-legal/expected.json +1 -3
  52. package/conformance/cases/c52-s784-lane-k8s-legal/expected.json +1 -3
  53. package/conformance/cases/c53-s784-lane-ssh-legal/expected.json +1 -3
  54. package/conformance/cases/c54-s784-lane-adb-legal/expected.json +1 -3
  55. package/conformance/cases/c55-s784-lane-local-docker-legal/expected.json +1 -3
  56. package/conformance/cases/c56-s784-lane-device-legal/expected.json +1 -3
  57. package/conformance/cases/c57-s784-g1-enabled-no-lane/expected.json +1 -3
  58. package/conformance/cases/c58-s784-g2-multitenant-host/expected.json +1 -3
  59. package/conformance/cases/c59-s784-g3-k8s-missing-image/expected.json +1 -3
  60. package/conformance/cases/c60-s784-g3-e2b-missing-key/expected.json +1 -3
  61. package/conformance/cases/c61-s784-g3-other-lane-key/expected.json +1 -3
  62. package/conformance/cases/c62-s784-g7a-session-tidb/expected.json +1 -3
  63. package/conformance/cases/c63-s784-host-two-replicas/expected.json +1 -3
  64. package/conformance/cases/c64-s784-multitenant-local-store/expected.json +1 -3
  65. package/conformance/cases/c65-s784-pg-without-db/expected.json +1 -3
  66. package/conformance/cases/c66-s784-memory-backend-mismatch/expected.json +1 -3
  67. package/conformance/cases/c67-s784-retired-field-loud/expected.json +1 -3
  68. package/conformance/cases/c68-s784-device-local-store/expected.json +1 -3
  69. package/conformance/cases/c69-deep-encoded-token-past-every-reading/expected.json +1 -3
  70. package/conformance/cases/c70-rewritten-token-in-front-of-encoded-pem-header/expected.json +1 -3
  71. package/conformance/cases/c71-one-scanner-write-reads-display-forms/expected.json +1 -3
  72. package/conformance/cases/c72-dangling-reference-write-seat-refuses/expected.json +1 -3
  73. package/conformance/cases/c73-projects-extended-registration-reads/expected.json +1 -3
  74. package/conformance/cases/c74-projects-over-bound-refused/expected.json +1 -3
  75. package/conformance/cases/c75-projects-patch-remote-uniqueness/expected.json +1 -3
  76. package/conformance/cases/c76-projects-entry-salvage-nested/expected.json +1 -3
  77. package/conformance/cases/c77-prompts-center-artifact-carried/expected.json +252 -0
  78. package/conformance/cases/c77-prompts-center-artifact-carried/input.json +93 -0
  79. package/conformance/cases/c77-prompts-center-artifact-carried/meta.json +5 -0
  80. package/conformance/cases/c78-prompts-empty-bindings-refused/expected.json +82 -0
  81. package/conformance/cases/c78-prompts-empty-bindings-refused/input.json +11 -0
  82. package/conformance/cases/c78-prompts-empty-bindings-refused/meta.json +5 -0
  83. package/conformance/cases/c79-prompts-bad-worker-artifact-not-salvaged/expected.json +82 -0
  84. package/conformance/cases/c79-prompts-bad-worker-artifact-not-salvaged/input.json +129 -0
  85. package/conformance/cases/c79-prompts-bad-worker-artifact-not-salvaged/meta.json +5 -0
  86. package/conformance/cases/c80-prompts-wire-v2-verbatim/expected.json +195 -0
  87. package/conformance/cases/c80-prompts-wire-v2-verbatim/input.json +65 -0
  88. package/conformance/cases/c80-prompts-wire-v2-verbatim/meta.json +5 -0
  89. package/conformance/cases/c81-prompts-declaration-bindings-refused/expected.json +82 -0
  90. package/conformance/cases/c81-prompts-declaration-bindings-refused/input.json +23 -0
  91. package/conformance/cases/c81-prompts-declaration-bindings-refused/meta.json +5 -0
  92. package/conformance/cases/c82-prompts-v1-catalog-refused/expected.json +82 -0
  93. package/conformance/cases/c82-prompts-v1-catalog-refused/input.json +35 -0
  94. package/conformance/cases/c82-prompts-v1-catalog-refused/meta.json +5 -0
  95. package/conformance/cases/c83-prompts-bad-overlay-not-salvaged/expected.json +82 -0
  96. package/conformance/cases/c83-prompts-bad-overlay-not-salvaged/input.json +56 -0
  97. package/conformance/cases/c83-prompts-bad-overlay-not-salvaged/meta.json +5 -0
  98. package/conformance/cases/cc01-mcp-toolfaces-non-object/expected.json +1 -3
  99. package/conformance/cases/cc02-mcp-source-key-is-transported/expected.json +1 -3
  100. package/conformance/cases/cc03-model-compat-unknown-subkey/expected.json +1 -3
  101. package/conformance/cases/cli01-model-name-nfc-vs-nfd/expected.json +1 -3
  102. package/conformance/cases/cli02-control-and-zero-width-chars/expected.json +1 -3
  103. package/conformance/cases/cli03-credential-pasted-into-unknown-key/expected.json +1 -3
  104. package/conformance/cases/cli04-env-value-with-newline/expected.json +1 -3
  105. package/conformance/cases/cli05-long-and-prefix-colliding-names/expected.json +1 -3
  106. package/conformance/cases/t01-absent-domain-key-not-null/expected.json +1 -3
  107. package/conformance/cases/t03-prototype-name-key-not-swallowed/expected.json +1 -3
  108. package/conformance/cases/t04-secret-literal-never-in-warning-value/expected.json +1 -3
  109. package/conformance/cases/z01-every-domain-empty-object/expected.json +2 -6
  110. package/conformance/cases/z02-every-domain-unknown-key/expected.json +2 -6
  111. package/dist/config-fns.d.ts +7 -3
  112. package/dist/config-fns.js +19 -16
  113. package/dist/conformance/derive.js +2 -2
  114. package/dist/index.d.ts +1 -0
  115. package/dist/index.js +1 -0
  116. package/dist/mcp-request-entry.d.ts +93 -0
  117. package/dist/mcp-request-entry.js +157 -0
  118. package/dist/migration-receipt.d.ts +1 -1
  119. package/dist/migration-receipt.js +1 -1
  120. package/dist/node.d.ts +0 -1
  121. package/dist/node.js +0 -1
  122. package/dist/one-time-migrations.d.ts +1 -1
  123. package/dist/one-time-migrations.js +39 -0
  124. package/dist/safety-merge-spec.d.ts +6 -6
  125. package/dist/types.d.ts +438 -355
  126. package/dist/types.js +161 -136
  127. package/dist/url-shape.d.ts +8 -0
  128. package/dist/url-shape.js +10 -0
  129. package/docs/API-SURFACE.md +41 -27
  130. package/docs/CONFORMANCE.md +1 -1
  131. package/docs/CONSUMER-INTEGRATION.md +3 -2
  132. package/llms-full.txt +14 -11
  133. package/llms.txt +7 -2
  134. package/package.json +2 -2
  135. package/dist/prompts-digest.d.ts +0 -16
  136. package/dist/prompts-digest.js +0 -49
@@ -0,0 +1,93 @@
1
+ {
2
+ "meta": {
3
+ "version": 7,
4
+ "updatedAt": "2026-10-17T00:00:00.000Z"
5
+ },
6
+ "domains": {
7
+ "prompts": {
8
+ "artifact": {
9
+ "payload": {
10
+ "schemaVersion": 3,
11
+ "requires": {
12
+ "targets": [
13
+ {
14
+ "id": "behavior",
15
+ "kind": "band"
16
+ },
17
+ {
18
+ "id": "scenario",
19
+ "kind": "band"
20
+ }
21
+ ],
22
+ "ops": [
23
+ "add"
24
+ ],
25
+ "traits": [],
26
+ "bindings": [
27
+ "code"
28
+ ]
29
+ },
30
+ "overlays": [
31
+ {
32
+ "id": "center/conduct",
33
+ "op": "add",
34
+ "target": "behavior",
35
+ "text": "Be kind."
36
+ },
37
+ {
38
+ "id": "center/scenario-note/code",
39
+ "op": "add",
40
+ "target": "scenario",
41
+ "text": "CODE-NOTE",
42
+ "when": {
43
+ "binding": {
44
+ "anyOf": [
45
+ "code"
46
+ ]
47
+ }
48
+ }
49
+ }
50
+ ],
51
+ "evidence": {
52
+ "intent": "center cards",
53
+ "refs": []
54
+ }
55
+ },
56
+ "artifactDigest": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
57
+ },
58
+ "workers": {
59
+ "w1": {
60
+ "payload": {
61
+ "schemaVersion": 3,
62
+ "requires": {
63
+ "targets": [
64
+ {
65
+ "id": "core/role.base",
66
+ "kind": "message"
67
+ }
68
+ ],
69
+ "ops": [
70
+ "append"
71
+ ],
72
+ "traits": [],
73
+ "bindings": []
74
+ },
75
+ "overlays": [
76
+ {
77
+ "id": "center/role",
78
+ "op": "append",
79
+ "target": "core/role.base",
80
+ "text": "ROLE-MARK"
81
+ }
82
+ ],
83
+ "evidence": {
84
+ "intent": "worker w1 role card",
85
+ "refs": []
86
+ }
87
+ },
88
+ "artifactDigest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
89
+ }
90
+ }
91
+ }
92
+ }
93
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "contributor": "contract",
3
+ "claim": "prompts 域 14.0.0 只装中心 artifact 的身份:`{artifact, workers}` 两位原样读进(键闭合的 v3 形,含 `when.binding`)、零告警;按 13.x 存储 schema 读它的消费方会把两键当未知键剥掉、只剩物化的 `{bindings:[]}` —— 中心层被静默丢成内置。",
4
+ "firstRedOn": []
5
+ }
@@ -0,0 +1,82 @@
1
+ {
2
+ "domains": {
3
+ "outcome": "effective",
4
+ "effective": {
5
+ "collab": {
6
+ "templates": []
7
+ },
8
+ "entitlement": {
9
+ "budgetGroups": [],
10
+ "groupBindings": [],
11
+ "subjects": [],
12
+ "tiers": []
13
+ },
14
+ "execution": {
15
+ "allowedLanes": [
16
+ "host"
17
+ ],
18
+ "required": false
19
+ },
20
+ "governance": {},
21
+ "hosts": {
22
+ "hosts": []
23
+ },
24
+ "limits": {},
25
+ "mcp": {
26
+ "servers": []
27
+ },
28
+ "models": {
29
+ "atMention": {
30
+ "mode": "all"
31
+ },
32
+ "models": [],
33
+ "roles": {},
34
+ "tierGroups": []
35
+ },
36
+ "plugins": {
37
+ "plugins": []
38
+ },
39
+ "projects": {
40
+ "projects": {}
41
+ },
42
+ "prompts": {},
43
+ "rosters": {
44
+ "rosters": []
45
+ },
46
+ "scenarios": {
47
+ "scenarios": []
48
+ },
49
+ "skills": {
50
+ "skills": []
51
+ },
52
+ "systems": {
53
+ "systems": []
54
+ },
55
+ "workers": {
56
+ "workers": []
57
+ }
58
+ },
59
+ "warnings": [
60
+ {
61
+ "domain": "prompts",
62
+ "kind": "domain-defaulted"
63
+ }
64
+ ],
65
+ "metadata": {
66
+ "version": 7,
67
+ "updatedAt": "2026-10-17T00:00:00.000Z"
68
+ }
69
+ },
70
+ "strictWrite": {
71
+ "outcome": "rejected",
72
+ "stage": "validate",
73
+ "why": "拒:`bindings` 墓碑在场(哪怕是空数组;读写两面同一条拒句,点名 SS-M10)。"
74
+ },
75
+ "wire": {
76
+ "derive": true
77
+ },
78
+ "localRoot": {
79
+ "derive": true,
80
+ "localVersion": 2511424094100661
81
+ }
82
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "meta": {
3
+ "version": 7,
4
+ "updatedAt": "2026-10-17T00:00:00.000Z"
5
+ },
6
+ "domains": {
7
+ "prompts": {
8
+ "bindings": []
9
+ }
10
+ }
11
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "contributor": "contract",
3
+ "claim": "13.x 每份 prompts 文档恒物化的空 `bindings: []`(占存量绝大多数)单独在场也是墓碑:读侧整域缺省 `{}` + 一条 domain-defaulted(错误句点名一次性迁移 SS-M10),严写拒。把空表当合法缺省读进的消费方,会让一份没迁的旧文档悄悄读成「什么都没有」而不出声 —— 删掉它是 SS-M10 的活,不是读者的。",
4
+ "firstRedOn": []
5
+ }
@@ -0,0 +1,82 @@
1
+ {
2
+ "domains": {
3
+ "outcome": "effective",
4
+ "effective": {
5
+ "collab": {
6
+ "templates": []
7
+ },
8
+ "entitlement": {
9
+ "budgetGroups": [],
10
+ "groupBindings": [],
11
+ "subjects": [],
12
+ "tiers": []
13
+ },
14
+ "execution": {
15
+ "allowedLanes": [
16
+ "host"
17
+ ],
18
+ "required": false
19
+ },
20
+ "governance": {},
21
+ "hosts": {
22
+ "hosts": []
23
+ },
24
+ "limits": {},
25
+ "mcp": {
26
+ "servers": []
27
+ },
28
+ "models": {
29
+ "atMention": {
30
+ "mode": "all"
31
+ },
32
+ "models": [],
33
+ "roles": {},
34
+ "tierGroups": []
35
+ },
36
+ "plugins": {
37
+ "plugins": []
38
+ },
39
+ "projects": {
40
+ "projects": {}
41
+ },
42
+ "prompts": {},
43
+ "rosters": {
44
+ "rosters": []
45
+ },
46
+ "scenarios": {
47
+ "scenarios": []
48
+ },
49
+ "skills": {
50
+ "skills": []
51
+ },
52
+ "systems": {
53
+ "systems": []
54
+ },
55
+ "workers": {
56
+ "workers": []
57
+ }
58
+ },
59
+ "warnings": [
60
+ {
61
+ "domain": "prompts",
62
+ "kind": "domain-defaulted"
63
+ }
64
+ ],
65
+ "metadata": {
66
+ "version": 7,
67
+ "updatedAt": "2026-10-17T00:00:00.000Z"
68
+ }
69
+ },
70
+ "strictWrite": {
71
+ "outcome": "rejected",
72
+ "stage": "validate",
73
+ "why": "拒:`workers.bad` 的 overlay 带 `scope`(v3 的 overlay 键闭集里没有它)—— 写是一个动作,一处坏整份不受理。"
74
+ },
75
+ "wire": {
76
+ "derive": true
77
+ },
78
+ "localRoot": {
79
+ "derive": true,
80
+ "localVersion": 1932051002500855
81
+ }
82
+ }
@@ -0,0 +1,129 @@
1
+ {
2
+ "meta": {
3
+ "version": 7,
4
+ "updatedAt": "2026-10-17T00:00:00.000Z"
5
+ },
6
+ "domains": {
7
+ "prompts": {
8
+ "artifact": {
9
+ "payload": {
10
+ "schemaVersion": 3,
11
+ "requires": {
12
+ "targets": [
13
+ {
14
+ "id": "behavior",
15
+ "kind": "band"
16
+ },
17
+ {
18
+ "id": "scenario",
19
+ "kind": "band"
20
+ }
21
+ ],
22
+ "ops": [
23
+ "add"
24
+ ],
25
+ "traits": [],
26
+ "bindings": [
27
+ "code"
28
+ ]
29
+ },
30
+ "overlays": [
31
+ {
32
+ "id": "center/conduct",
33
+ "op": "add",
34
+ "target": "behavior",
35
+ "text": "Be kind."
36
+ },
37
+ {
38
+ "id": "center/scenario-note/code",
39
+ "op": "add",
40
+ "target": "scenario",
41
+ "text": "CODE-NOTE",
42
+ "when": {
43
+ "binding": {
44
+ "anyOf": [
45
+ "code"
46
+ ]
47
+ }
48
+ }
49
+ }
50
+ ],
51
+ "evidence": {
52
+ "intent": "center cards",
53
+ "refs": []
54
+ }
55
+ },
56
+ "artifactDigest": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
57
+ },
58
+ "workers": {
59
+ "good": {
60
+ "payload": {
61
+ "schemaVersion": 3,
62
+ "requires": {
63
+ "targets": [
64
+ {
65
+ "id": "core/role.base",
66
+ "kind": "message"
67
+ }
68
+ ],
69
+ "ops": [
70
+ "append"
71
+ ],
72
+ "traits": [],
73
+ "bindings": []
74
+ },
75
+ "overlays": [
76
+ {
77
+ "id": "center/role",
78
+ "op": "append",
79
+ "target": "core/role.base",
80
+ "text": "ROLE-MARK"
81
+ }
82
+ ],
83
+ "evidence": {
84
+ "intent": "worker w1 role card",
85
+ "refs": []
86
+ }
87
+ },
88
+ "artifactDigest": "sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
89
+ },
90
+ "bad": {
91
+ "payload": {
92
+ "schemaVersion": 3,
93
+ "requires": {
94
+ "targets": [
95
+ {
96
+ "id": "scenario",
97
+ "kind": "band"
98
+ }
99
+ ],
100
+ "ops": [
101
+ "add"
102
+ ],
103
+ "traits": [],
104
+ "bindings": [
105
+ "code"
106
+ ]
107
+ },
108
+ "overlays": [
109
+ {
110
+ "id": "center/x",
111
+ "op": "add",
112
+ "target": "scenario",
113
+ "text": "X",
114
+ "scope": {
115
+ "binding": "code"
116
+ }
117
+ }
118
+ ],
119
+ "evidence": {
120
+ "intent": "v2 habit",
121
+ "refs": []
122
+ }
123
+ },
124
+ "artifactDigest": "sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc"
125
+ }
126
+ }
127
+ }
128
+ }
129
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "contributor": "contract",
3
+ "claim": "prompts 的逐条抢救是 none:一台 worker 的 artifact 坏(overlay 带 v2 的 `scope`)⇒ 整域缺省 `{}`、零 entry-dropped。逐条丢掉 `workers.bad` 的消费方会让那台 worker 悄悄换成 scope 那份文本(替换,不是收窄);丢掉一条 overlay 则留下 digest 不再成立的 artifact。",
4
+ "firstRedOn": []
5
+ }
@@ -0,0 +1,195 @@
1
+ {
2
+ "domains": {
3
+ "outcome": "effective",
4
+ "effective": {
5
+ "collab": {
6
+ "templates": []
7
+ },
8
+ "entitlement": {
9
+ "budgetGroups": [],
10
+ "groupBindings": [],
11
+ "subjects": [],
12
+ "tiers": []
13
+ },
14
+ "execution": {
15
+ "allowedLanes": [
16
+ "host"
17
+ ],
18
+ "required": false
19
+ },
20
+ "governance": {},
21
+ "hosts": {
22
+ "hosts": []
23
+ },
24
+ "limits": {},
25
+ "mcp": {
26
+ "servers": []
27
+ },
28
+ "models": {
29
+ "atMention": {
30
+ "mode": "all"
31
+ },
32
+ "models": [],
33
+ "roles": {},
34
+ "tierGroups": []
35
+ },
36
+ "plugins": {
37
+ "plugins": []
38
+ },
39
+ "projects": {
40
+ "projects": {}
41
+ },
42
+ "prompts": {},
43
+ "rosters": {
44
+ "rosters": []
45
+ },
46
+ "scenarios": {
47
+ "scenarios": []
48
+ },
49
+ "skills": {
50
+ "skills": []
51
+ },
52
+ "systems": {
53
+ "systems": []
54
+ },
55
+ "workers": {
56
+ "workers": []
57
+ }
58
+ },
59
+ "warnings": [],
60
+ "metadata": {
61
+ "version": 7,
62
+ "updatedAt": "2026-10-17T00:00:00.000Z"
63
+ }
64
+ },
65
+ "strictWrite": {
66
+ "outcome": "effective",
67
+ "effective": {},
68
+ "warnings": [],
69
+ "metadata": {
70
+ "version": 7,
71
+ "updatedAt": "2026-10-17T00:00:00.000Z"
72
+ },
73
+ "why": "受理空集:本条打的是 wire 腿(提交的域文档集为空)。"
74
+ },
75
+ "wire": {
76
+ "outcome": "effective",
77
+ "effective": {
78
+ "collab": {
79
+ "templates": []
80
+ },
81
+ "entitlement": {
82
+ "budgetGroups": [],
83
+ "groupBindings": [],
84
+ "subjects": [],
85
+ "tiers": []
86
+ },
87
+ "execution": {
88
+ "allowedLanes": [
89
+ "host"
90
+ ],
91
+ "required": false
92
+ },
93
+ "governance": {},
94
+ "hosts": {
95
+ "hosts": []
96
+ },
97
+ "limits": {},
98
+ "mcp": {
99
+ "servers": []
100
+ },
101
+ "models": {
102
+ "atMention": {
103
+ "mode": "all"
104
+ },
105
+ "models": [],
106
+ "roles": {},
107
+ "tierGroups": []
108
+ },
109
+ "plugins": {
110
+ "plugins": []
111
+ },
112
+ "projects": {
113
+ "projects": {}
114
+ },
115
+ "prompts": {
116
+ "artifact": {
117
+ "artifactDigest": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
118
+ "payload": {
119
+ "evidence": {
120
+ "intent": "center cards",
121
+ "refs": []
122
+ },
123
+ "overlays": [
124
+ {
125
+ "id": "center/conduct",
126
+ "op": "add",
127
+ "target": "behavior",
128
+ "text": "Be kind."
129
+ },
130
+ {
131
+ "id": "center/scenario-note/code",
132
+ "op": "add",
133
+ "target": "scenario",
134
+ "text": "CODE-NOTE",
135
+ "when": {
136
+ "binding": {
137
+ "anyOf": [
138
+ "code"
139
+ ]
140
+ }
141
+ }
142
+ }
143
+ ],
144
+ "requires": {
145
+ "bindings": [
146
+ "code"
147
+ ],
148
+ "ops": [
149
+ "add"
150
+ ],
151
+ "targets": [
152
+ {
153
+ "id": "behavior",
154
+ "kind": "band"
155
+ },
156
+ {
157
+ "id": "scenario",
158
+ "kind": "band"
159
+ }
160
+ ],
161
+ "traits": []
162
+ },
163
+ "schemaVersion": 3
164
+ },
165
+ "sourceRevision": "r42"
166
+ },
167
+ "schemaVersion": 2
168
+ },
169
+ "rosters": {
170
+ "rosters": []
171
+ },
172
+ "scenarios": {
173
+ "scenarios": []
174
+ },
175
+ "skills": {
176
+ "skills": []
177
+ },
178
+ "systems": {
179
+ "systems": []
180
+ },
181
+ "workers": {
182
+ "workers": []
183
+ }
184
+ },
185
+ "warnings": [],
186
+ "metadata": {
187
+ "version": 7,
188
+ "updatedAt": "2026-10-17T00:00:00.000Z"
189
+ }
190
+ },
191
+ "localRoot": {
192
+ "derive": true,
193
+ "localVersion": 2617555914511015
194
+ }
195
+ }
@@ -0,0 +1,65 @@
1
+ {
2
+ "meta": {
3
+ "version": 7,
4
+ "updatedAt": "2026-10-17T00:00:00.000Z"
5
+ },
6
+ "domains": {},
7
+ "wirePayload": {
8
+ "version": 7,
9
+ "updatedAt": "2026-10-17T00:00:00.000Z",
10
+ "prompts": {
11
+ "schemaVersion": 2,
12
+ "artifact": {
13
+ "payload": {
14
+ "schemaVersion": 3,
15
+ "requires": {
16
+ "targets": [
17
+ {
18
+ "id": "behavior",
19
+ "kind": "band"
20
+ },
21
+ {
22
+ "id": "scenario",
23
+ "kind": "band"
24
+ }
25
+ ],
26
+ "ops": [
27
+ "add"
28
+ ],
29
+ "traits": [],
30
+ "bindings": [
31
+ "code"
32
+ ]
33
+ },
34
+ "overlays": [
35
+ {
36
+ "id": "center/conduct",
37
+ "op": "add",
38
+ "target": "behavior",
39
+ "text": "Be kind."
40
+ },
41
+ {
42
+ "id": "center/scenario-note/code",
43
+ "op": "add",
44
+ "target": "scenario",
45
+ "text": "CODE-NOTE",
46
+ "when": {
47
+ "binding": {
48
+ "anyOf": [
49
+ "code"
50
+ ]
51
+ }
52
+ }
53
+ }
54
+ ],
55
+ "evidence": {
56
+ "intent": "center cards",
57
+ "refs": []
58
+ }
59
+ },
60
+ "artifactDigest": "sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
61
+ "sourceRevision": "r42"
62
+ }
63
+ }
64
+ }
65
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "contributor": "contract",
3
+ "claim": "wire 上的 prompts 是 `{schemaVersion: 2, artifact}`(中心为拉取方选出的那一份 + 发布出处),读腿按在场性原样承运、不拿存储 schema 解析、不出告警;拿存储 schema 读它的消费方会把它读成 `{}`(或把坏值降级成缺席 = 撤下中心层),判官本该是消费方的 wire 形 + 引擎 verify。",
4
+ "firstRedOn": []
5
+ }