@sema-agent/settings-schema 10.1.1 → 11.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.
- package/CHANGELOG.md +414 -0
- package/README.md +141 -65
- package/bin/settings-schema.mjs +13 -6
- package/conformance/VERSION +1 -1
- package/conformance/baseline.json +3 -1
- package/conformance/cases/c01-entry-salvage-then-typo/expected.json +3 -1
- package/conformance/cases/c02-hosts-clamp-stacked/expected.json +12 -5
- package/conformance/cases/c02-hosts-clamp-stacked/meta.json +1 -1
- package/conformance/cases/c03-literal-dotted-top-key/expected.json +22 -2
- package/conformance/cases/c04-all-bad-collection-not-salvaged/expected.json +3 -1
- package/conformance/cases/c06-legacy-governance-lift/expected.json +11 -101
- package/conformance/cases/c06-legacy-governance-lift/meta.json +1 -1
- package/conformance/cases/c07-hooks-is-not-a-config-domain/expected.json +3 -1
- package/conformance/cases/c08-limits-unknown-carried-64/expected.json +203 -2
- package/conformance/cases/c09-limits-unknown-carried-65/expected.json +204 -2
- package/conformance/cases/c10-record-key-secret-redacted-twice/expected.json +3 -1
- package/conformance/cases/c11-unicode-unknown-keys/expected.json +20 -2
- package/conformance/cases/c12-prototype-name-top-keys/expected.json +3 -1
- package/conformance/cases/c13-models-field-null/expected.json +3 -1
- package/conformance/cases/c14-models-field-empty-array/expected.json +6 -1
- package/conformance/cases/c15-models-field-number/expected.json +3 -1
- package/conformance/cases/c16-deep-nesting-205/expected.json +14 -2
- package/conformance/cases/c17-empty-domain-file/expected.json +3 -1
- package/conformance/cases/c18-wire-envelope-not-an-object/expected.json +3 -1
- package/conformance/cases/c19-wire-envelope-no-version/expected.json +3 -1
- package/conformance/cases/c20-governance-absent-lifts/expected.json +11 -86
- package/conformance/cases/c20-governance-absent-lifts/meta.json +1 -1
- package/conformance/cases/c21-governance-empty-object-wins/expected.json +6 -5
- package/conformance/cases/c21-governance-empty-object-wins/input.json +1 -4
- package/conformance/cases/c21-governance-empty-object-wins/meta.json +1 -1
- package/conformance/cases/c23-mixed-validity-models/expected.json +3 -1
- package/conformance/cases/c24-valid-entries-with-unknown-keys/expected.json +22 -2
- package/conformance/cases/c25-published-roundtrip-zero-warnings/expected.json +6 -1
- package/conformance/cases/c26-hosts-array-1024/expected.json +3 -1
- package/conformance/cases/c27-hosts-array-1025/expected.json +6 -7175
- package/conformance/cases/c27-hosts-array-1025/meta.json +1 -1
- package/conformance/cases/c28-large-document-over-1mb/expected.json +14 -2
- package/conformance/cases/c29-salvage-then-domain-refine-fails/expected.json +3 -1
- package/conformance/cases/c30-version-triple-a-first/expected.json +6 -1
- package/conformance/cases/c31-version-triple-b-changed/expected.json +6 -1
- package/conformance/cases/c32-version-triple-a-restored/expected.json +6 -1
- package/conformance/cases/c33-limits-nested-carried-key/expected.json +18 -2
- package/conformance/cases/c34-skills-content-vs-manifest/expected.json +19 -3
- package/conformance/cases/c35-portable-domain-file-is-null/expected.json +3 -1
- package/conformance/cases/c36-skills-entry-without-content/expected.json +6 -2
- package/conformance/cases/c37-skills-field-null/expected.json +6 -2
- package/conformance/cases/c38-remote-exec-is-a-non-domain-file/expected.json +3 -1
- package/conformance/cases/c39-hidden-file-in-config-d/expected.json +3 -1
- package/conformance/cases/c40-s712-identity-only-what-reads-out/expected.json +11 -4
- package/conformance/cases/c41-s792-encoded-pem-identity/expected.json +9 -3
- package/conformance/cases/c42-s792-unknown-key-secret-redacted/expected.json +39 -2
- package/conformance/cases/c43-s792-form-and-deep-encoded-pem/expected.json +4 -1
- package/conformance/cases/c44-s792-utf8-escape-glued-token/expected.json +3 -1
- package/conformance/cases/c45-s792-identity-bounds-and-decode-depth/expected.json +19 -10
- package/conformance/cases/c45-s792-identity-bounds-and-decode-depth/meta.json +1 -1
- package/conformance/cases/{c46-s811-host-name-url-userinfo-characterization → c46-s811-host-name-url-userinfo-withheld}/expected.json +12 -5
- package/conformance/cases/c46-s811-host-name-url-userinfo-withheld/meta.json +9 -0
- package/conformance/cases/{c47-s811-roles-key-url-userinfo-characterization → c47-s811-roles-key-url-userinfo-withheld}/expected.json +23 -3
- package/conformance/cases/{c47-s811-roles-key-url-userinfo-characterization → c47-s811-roles-key-url-userinfo-withheld}/input.json +6 -0
- package/conformance/cases/c47-s811-roles-key-url-userinfo-withheld/meta.json +10 -0
- package/conformance/cases/c48-s935-model-headers-transported/expected.json +6 -1
- package/conformance/cases/c49-s935-model-headers-secret-entry-dropped/expected.json +3 -1
- package/conformance/cases/c50-s784-lane-host-legal/expected.json +3 -1
- package/conformance/cases/c51-s784-lane-e2b-legal/expected.json +3 -1
- package/conformance/cases/c52-s784-lane-k8s-legal/expected.json +3 -1
- package/conformance/cases/c53-s784-lane-ssh-legal/expected.json +3 -1
- package/conformance/cases/c54-s784-lane-adb-legal/expected.json +3 -1
- package/conformance/cases/c55-s784-lane-local-docker-legal/expected.json +3 -1
- package/conformance/cases/c56-s784-lane-device-legal/expected.json +3 -1
- package/conformance/cases/c57-s784-g1-enabled-no-lane/expected.json +3 -1
- package/conformance/cases/c58-s784-g2-multitenant-host/expected.json +3 -1
- package/conformance/cases/c59-s784-g3-k8s-missing-image/expected.json +3 -1
- package/conformance/cases/c60-s784-g3-e2b-missing-key/expected.json +3 -1
- package/conformance/cases/c61-s784-g3-other-lane-key/expected.json +3 -1
- package/conformance/cases/c62-s784-g7a-session-tidb/expected.json +3 -1
- package/conformance/cases/c63-s784-host-two-replicas/expected.json +3 -1
- package/conformance/cases/c64-s784-multitenant-local-store/expected.json +3 -1
- package/conformance/cases/c65-s784-pg-without-db/expected.json +3 -1
- package/conformance/cases/c66-s784-memory-backend-mismatch/expected.json +3 -1
- package/conformance/cases/c67-s784-retired-field-loud/expected.json +3 -1
- package/conformance/cases/c67-s784-retired-field-loud/meta.json +1 -1
- package/conformance/cases/c68-s784-device-local-store/expected.json +3 -1
- package/conformance/cases/c69-deep-encoded-token-past-every-reading/expected.json +3 -1
- package/conformance/cases/c70-rewritten-token-in-front-of-encoded-pem-header/expected.json +3 -1
- package/conformance/cases/c71-one-scanner-write-reads-display-forms/expected.json +119 -0
- package/conformance/cases/c71-one-scanner-write-reads-display-forms/input.json +24 -0
- package/conformance/cases/c71-one-scanner-write-reads-display-forms/meta.json +10 -0
- package/conformance/cases/c72-dangling-reference-write-seat-refuses/expected.json +111 -0
- package/conformance/cases/c72-dangling-reference-write-seat-refuses/input.json +26 -0
- package/conformance/cases/c72-dangling-reference-write-seat-refuses/meta.json +6 -0
- package/conformance/cases/cc01-mcp-toolfaces-non-object/expected.json +3 -1
- package/conformance/cases/cc02-mcp-source-key-is-transported/expected.json +3 -1
- package/conformance/cases/cc03-model-compat-unknown-subkey/expected.json +6 -1
- package/conformance/cases/cli01-model-name-nfc-vs-nfd/expected.json +11 -1
- package/conformance/cases/cli02-control-and-zero-width-chars/expected.json +11 -1
- package/conformance/cases/cli03-credential-pasted-into-unknown-key/expected.json +16 -2
- package/conformance/cases/cli04-env-value-with-newline/expected.json +3 -1
- package/conformance/cases/cli05-long-and-prefix-colliding-names/expected.json +6 -1
- package/conformance/cases/t01-absent-domain-key-not-null/expected.json +3 -1
- package/conformance/cases/t03-prototype-name-key-not-swallowed/expected.json +29 -2
- package/conformance/cases/t04-secret-literal-never-in-warning-value/expected.json +3 -1
- package/conformance/cases/z01-every-domain-empty-object/expected.json +8 -4
- package/conformance/cases/z01-every-domain-empty-object/input.json +0 -1
- package/conformance/cases/z01-every-domain-empty-object/meta.json +1 -1
- package/conformance/cases/z02-every-domain-unknown-key/expected.json +163 -23
- package/conformance/cases/z02-every-domain-unknown-key/input.json +0 -3
- package/conformance/cases/z02-every-domain-unknown-key/meta.json +1 -1
- package/dist/api/auth-bridge.d.ts +51 -181
- package/dist/api/auth-bridge.js +58 -33
- package/dist/api/auth.d.ts +37 -146
- package/dist/api/auth.js +16 -26
- package/dist/api/feedback.d.ts +87 -0
- package/dist/api/feedback.js +66 -0
- package/dist/api/pull-token.d.ts +32 -0
- package/dist/api/pull-token.js +88 -0
- package/dist/api/scopes.d.ts +82 -174
- package/dist/api/scopes.js +23 -18
- package/dist/bundle.d.ts +15 -7
- package/dist/bundle.js +28 -27
- package/dist/cli.d.ts +3 -1
- package/dist/cli.js +132 -81
- package/dist/config-d-file.d.ts +14 -0
- package/dist/config-d-file.js +67 -0
- package/dist/config-fns.d.ts +87 -186
- package/dist/config-fns.js +207 -262
- package/dist/conformance/contract-adapter.d.ts +9 -2
- package/dist/conformance/contract-adapter.js +15 -7
- package/dist/conformance/corpus.d.ts +3 -0
- package/dist/conformance/corpus.js +5 -0
- package/dist/conformance/derive.d.ts +3 -0
- package/dist/conformance/index.d.ts +2 -2
- package/dist/conformance/index.js +2 -2
- package/dist/conformance/run.js +67 -22
- package/dist/conformance/types.d.ts +31 -15
- package/dist/conformance/types.js +5 -0
- package/dist/conformance/warnings.d.ts +1 -1
- package/dist/conformance/warnings.js +1 -4
- package/dist/cross-domain.d.ts +66 -22
- package/dist/cross-domain.js +164 -93
- package/dist/cross-session.d.ts +29 -11
- package/dist/default-model.d.ts +43 -0
- package/dist/default-model.js +34 -0
- package/dist/execution-lane-index.d.ts +4 -8
- package/dist/execution-lane-index.js +4 -8
- package/dist/execution-lanes.d.ts +31 -8
- package/dist/execution-lanes.js +23 -5
- package/dist/file-edit.js +5 -2
- package/dist/file-store.d.ts +7 -6
- package/dist/file-store.js +37 -50
- package/dist/fleet.d.ts +364 -762
- package/dist/fleet.js +277 -224
- package/dist/hooks.d.ts +1151 -4737
- package/dist/hooks.js +59 -15
- package/dist/index.d.ts +10 -4
- package/dist/index.js +13 -7
- package/dist/integer.d.ts +11 -0
- package/dist/integer.js +11 -0
- package/dist/issue-path.d.ts +10 -0
- package/dist/issue-path.js +10 -0
- package/dist/loopback.d.ts +26 -0
- package/dist/loopback.js +54 -0
- package/dist/migration-receipt.d.ts +42 -0
- package/dist/migration-receipt.js +12 -0
- package/dist/one-time-migrations.d.ts +56 -0
- package/dist/one-time-migrations.js +819 -0
- package/dist/prompts-digest.d.ts +1 -1
- package/dist/prompts-digest.js +3 -2
- package/dist/reader.d.ts +2 -2
- package/dist/remote-exec.d.ts +45 -187
- package/dist/remote-exec.js +13 -7
- package/dist/resolve-roster.d.ts +18 -3
- package/dist/resolve-roster.js +28 -25
- package/dist/retired-envs.d.ts +24 -0
- package/dist/retired-envs.js +114 -0
- package/dist/retired-form.d.ts +31 -0
- package/dist/retired-form.js +28 -0
- package/dist/safety-merge-spec.d.ts +131 -191
- package/dist/safety-merge-spec.js +18 -14
- package/dist/scheduler-lifetime.d.ts +5 -0
- package/dist/scheduler-lifetime.js +7 -0
- package/dist/scheduler-store-migration.d.ts +14 -0
- package/dist/scheduler-store-migration.js +14 -0
- package/dist/scheduler-store-node.d.ts +24 -9
- package/dist/scheduler-store-node.js +25 -15
- package/dist/scheduler-store.d.ts +47 -14
- package/dist/scheduler-store.js +32 -61
- package/dist/secret-refs.d.ts +3 -3
- package/dist/secret-refs.js +1 -1
- package/dist/secret-scan.d.ts +14 -24
- package/dist/secret-scan.js +45 -23
- package/dist/sha256-core.d.ts +16 -0
- package/dist/sha256-core.js +138 -0
- package/dist/sha256.d.ts +6 -1
- package/dist/sha256.js +8 -98
- package/dist/skills-manifest.js +1 -1
- package/dist/types.d.ts +1501 -13536
- package/dist/types.js +494 -438
- package/dist/url-shape.d.ts +34 -0
- package/dist/url-shape.js +61 -0
- package/dist/web-admin-credential.d.ts +96 -0
- package/dist/{center-credential.js → web-admin-credential.js} +46 -43
- package/dist/web-admin-env.d.ts +33 -0
- package/dist/web-admin-env.js +33 -0
- package/dist/worker-row-verdict.d.ts +16 -0
- package/dist/worker-row-verdict.js +31 -0
- package/dist/workers-rows.d.ts +34 -0
- package/dist/workers-rows.js +42 -0
- package/dist/zod-unwrap.d.ts +11 -0
- package/dist/zod-unwrap.js +25 -0
- package/package.json +17 -9
- package/conformance/cases/c46-s811-host-name-url-userinfo-characterization/meta.json +0 -6
- package/conformance/cases/c47-s811-roles-key-url-userinfo-characterization/meta.json +0 -6
- package/conformance/migrate-workers/m01-g5-k8s-env-lifted/expected.json +0 -49
- package/conformance/migrate-workers/m01-g5-k8s-env-lifted/input.json +0 -26
- package/conformance/migrate-workers/m01-g5-k8s-env-lifted/meta.json +0 -4
- package/conformance/migrate-workers/m02-g5-idempotent/expected.json +0 -38
- package/conformance/migrate-workers/m02-g5-idempotent/input.json +0 -33
- package/conformance/migrate-workers/m02-g5-idempotent/meta.json +0 -5
- package/conformance/migrate-workers/m03-g5-refused-no-lane/expected.json +0 -71
- package/conformance/migrate-workers/m03-g5-refused-no-lane/input.json +0 -42
- package/conformance/migrate-workers/m03-g5-refused-no-lane/meta.json +0 -4
- package/conformance/migrate-workers/m04-g7b-session-tidb-lifted/expected.json +0 -52
- package/conformance/migrate-workers/m04-g7b-session-tidb-lifted/input.json +0 -30
- package/conformance/migrate-workers/m04-g7b-session-tidb-lifted/meta.json +0 -4
- package/conformance/migrate-workers/m05-row-verdict-reserved-env/expected.json +0 -82
- package/conformance/migrate-workers/m05-row-verdict-reserved-env/input.json +0 -68
- package/conformance/migrate-workers/m05-row-verdict-reserved-env/meta.json +0 -4
- package/dist/center-credential.d.ts +0 -116
- package/dist/issue-text.d.ts +0 -10
- package/dist/issue-text.js +0 -8
- package/dist/migrate-workers.d.ts +0 -71
- package/dist/migrate-workers.js +0 -351
- package/dist/migrate.d.ts +0 -255
- package/dist/migrate.js +0 -542
- /package/conformance/cases/{c46-s811-host-name-url-userinfo-characterization → c46-s811-host-name-url-userinfo-withheld}/input.json +0 -0
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sema-agent/settings-schema",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "Sema settings schema — pure config contract (zod domains + effective-config + roster resolution + ref-integrity + remoteExec) shared by sema-
|
|
3
|
+
"version": "11.0.0",
|
|
4
|
+
"description": "Sema settings schema — pure config contract (zod domains + effective-config + roster resolution + ref-integrity + remoteExec) shared by sema-web-admin, sema-server, and the TOC desktop/CLI. One source of truth. (Renamed at 1.0.0 from @sema-agent/registry-core — name and docs only, no behavior change; note the range moves 0.19.0 -> 1.0.0, so a dependency must become ^1.0.0. The old names @sema-agent/registry-core <=0.19.0 and @sema-ai/registry-core remain published, frozen, for migration.)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "BUSL-1.1",
|
|
7
7
|
"repository": {
|
|
@@ -84,6 +84,10 @@
|
|
|
84
84
|
"types": "./dist/node.d.ts",
|
|
85
85
|
"default": "./dist/node.js"
|
|
86
86
|
},
|
|
87
|
+
"./one-time-migrations": {
|
|
88
|
+
"types": "./dist/one-time-migrations.d.ts",
|
|
89
|
+
"default": "./dist/one-time-migrations.js"
|
|
90
|
+
},
|
|
87
91
|
"./scheduler-store": {
|
|
88
92
|
"types": "./dist/scheduler-store.d.ts",
|
|
89
93
|
"default": "./dist/scheduler-store.js"
|
|
@@ -96,10 +100,6 @@
|
|
|
96
100
|
"types": "./dist/fleet.d.ts",
|
|
97
101
|
"default": "./dist/fleet.js"
|
|
98
102
|
},
|
|
99
|
-
"./migrate": {
|
|
100
|
-
"types": "./dist/migrate.d.ts",
|
|
101
|
-
"default": "./dist/migrate.js"
|
|
102
|
-
},
|
|
103
103
|
"./api/auth": {
|
|
104
104
|
"types": "./dist/api/auth.d.ts",
|
|
105
105
|
"default": "./dist/api/auth.js"
|
|
@@ -111,6 +111,14 @@
|
|
|
111
111
|
"./api/scopes": {
|
|
112
112
|
"types": "./dist/api/scopes.d.ts",
|
|
113
113
|
"default": "./dist/api/scopes.js"
|
|
114
|
+
},
|
|
115
|
+
"./api/pull-token": {
|
|
116
|
+
"types": "./dist/api/pull-token.d.ts",
|
|
117
|
+
"default": "./dist/api/pull-token.js"
|
|
118
|
+
},
|
|
119
|
+
"./api/feedback": {
|
|
120
|
+
"types": "./dist/api/feedback.d.ts",
|
|
121
|
+
"default": "./dist/api/feedback.js"
|
|
114
122
|
}
|
|
115
123
|
},
|
|
116
124
|
"files": [
|
|
@@ -138,16 +146,16 @@
|
|
|
138
146
|
"publish:npm": "npm publish --access public --@sema-agent:registry=https://registry.npmjs.org/ --\"//registry.npmjs.org/:_authToken=${NPM_TOKEN}\""
|
|
139
147
|
},
|
|
140
148
|
"devDependencies": {
|
|
141
|
-
"@sema-agent/core": "7.
|
|
149
|
+
"@sema-agent/core": "7.47.0",
|
|
142
150
|
"@types/node": "^22.10.0",
|
|
143
151
|
"esbuild": "^0.21.5",
|
|
144
152
|
"typescript": "^5.7.0",
|
|
145
153
|
"vitest": "^2.1.0"
|
|
146
154
|
},
|
|
147
155
|
"dependencies": {
|
|
148
|
-
"zod": "^
|
|
156
|
+
"zod": "^4.4.0"
|
|
149
157
|
},
|
|
150
158
|
"peerDependencies": {
|
|
151
|
-
"zod": "^
|
|
159
|
+
"zod": "^4.4.0"
|
|
152
160
|
}
|
|
153
161
|
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"contributor": "contract",
|
|
3
|
-
"claim": "🚧 S-811 特征格(既有,非回归;本版刻意不修,设计随 S-809 三表归一):超长主机名 `https://admin:hunter2@hhh…h.com`(81 字)被 `hosts-grandfathered` 按名剔掉,`droppedNames` 的标签过出门那一道 —— 但那一道(`redactSecrets`)不查 URL userinfo,于是 63 字标签里原样带着 `admin:hunter2`。本条把**今天的读数**钉成金样:S-811 修后(自由文本面加 userinfo 判定)本条翻红 —— 届时金样改成 `droppedNames: [\"[redacted-secret]\"]`、meta.secrets 补上 `hunter2`,这一格就从特征钉变成护栏。",
|
|
4
|
-
"firstRedOn": [],
|
|
5
|
-
"note": "车PE(2026-09-27)按主会话令加(codex 验修腿 [high] S-811)。刻意**不**在 secrets 里登 `hunter2`:登了,告警面零命中门会把今天的现状判红 —— 现状要能如实入库,修复时一并补。"
|
|
6
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"contributor": "contract",
|
|
3
|
-
"claim": "🚧 S-811 特征格(既有,非回归;本版刻意不修,设计随 S-809 三表归一):坏 roles 键 `https://admin:hunter2@db.example.com/x` 被逐条丢掉,坐标段与 zod 回显的 received / message 都只过 `redactSecrets`,它不查 URL userinfo,于是坐标 `[\"roles\", \"https://admin:hunter2@db.example.com/x\"]` 原样出门(错误句同带)。同一个串作身份 6.3.0 起不可披露(身份面有 userinfo 否决),自由文本面没有 —— 本条把今天的读数钉成金样:S-811 修后本条翻红,届时坐标段改成 `[redacted-secret]`、meta.secrets 补上 `hunter2`。",
|
|
4
|
-
"firstRedOn": [],
|
|
5
|
-
"note": "车PE(2026-09-27)按主会话令加(codex 验修腿 [high] S-811)。刻意**不**在 secrets 里登 `hunter2`(登了即判红今天的现状)。"
|
|
6
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"doc": {
|
|
3
|
-
"workers": [
|
|
4
|
-
{
|
|
5
|
-
"name": "direct",
|
|
6
|
-
"enabled": true,
|
|
7
|
-
"host": "default",
|
|
8
|
-
"image": "sema-server:latest",
|
|
9
|
-
"secretRefs": {
|
|
10
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
11
|
-
},
|
|
12
|
-
"runtime": {
|
|
13
|
-
"requirePrincipal": false,
|
|
14
|
-
"rateLimitRpm": 0,
|
|
15
|
-
"execution": {
|
|
16
|
-
"lane": "k8s",
|
|
17
|
-
"coords": {
|
|
18
|
-
"K8S_SANDBOX_IMAGE": "registry.internal/sandbox@sha256:abc",
|
|
19
|
-
"K8S_NAMESPACE": "sandboxes"
|
|
20
|
-
},
|
|
21
|
-
"secretRefs": {}
|
|
22
|
-
},
|
|
23
|
-
"store": {
|
|
24
|
-
"backend": "local",
|
|
25
|
-
"session": "auto"
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
"coords": {},
|
|
29
|
-
"env": {
|
|
30
|
-
"LOG_LEVEL": "debug"
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
]
|
|
34
|
-
},
|
|
35
|
-
"changed": [
|
|
36
|
-
"direct"
|
|
37
|
-
],
|
|
38
|
-
"dropped": [
|
|
39
|
-
{
|
|
40
|
-
"name": "direct",
|
|
41
|
-
"index": 0,
|
|
42
|
-
"field": [
|
|
43
|
-
"runtime",
|
|
44
|
-
"memoryBackend"
|
|
45
|
-
]
|
|
46
|
-
}
|
|
47
|
-
],
|
|
48
|
-
"refused": []
|
|
49
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"workers": [
|
|
3
|
-
{
|
|
4
|
-
"name": "direct",
|
|
5
|
-
"enabled": true,
|
|
6
|
-
"host": "default",
|
|
7
|
-
"image": "sema-server:latest",
|
|
8
|
-
"secretRefs": {
|
|
9
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
10
|
-
},
|
|
11
|
-
"runtime": {
|
|
12
|
-
"sessionBackend": "auto",
|
|
13
|
-
"memoryBackend": "off",
|
|
14
|
-
"requirePrincipal": false,
|
|
15
|
-
"rateLimitRpm": 0
|
|
16
|
-
},
|
|
17
|
-
"coords": {},
|
|
18
|
-
"env": {
|
|
19
|
-
"REMOTE_EXEC": "k8s",
|
|
20
|
-
"K8S_SANDBOX_IMAGE": "registry.internal/sandbox@sha256:abc",
|
|
21
|
-
"K8S_NAMESPACE": "sandboxes",
|
|
22
|
-
"LOG_LEVEL": "debug"
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
]
|
|
26
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"doc": {
|
|
3
|
-
"workers": [
|
|
4
|
-
{
|
|
5
|
-
"name": "direct",
|
|
6
|
-
"enabled": true,
|
|
7
|
-
"host": "default",
|
|
8
|
-
"image": "sema-server:latest",
|
|
9
|
-
"secretRefs": {
|
|
10
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
11
|
-
},
|
|
12
|
-
"runtime": {
|
|
13
|
-
"requirePrincipal": false,
|
|
14
|
-
"rateLimitRpm": 0,
|
|
15
|
-
"execution": {
|
|
16
|
-
"lane": "k8s",
|
|
17
|
-
"coords": {
|
|
18
|
-
"K8S_SANDBOX_IMAGE": "registry.internal/sandbox@sha256:abc",
|
|
19
|
-
"K8S_NAMESPACE": "sandboxes"
|
|
20
|
-
},
|
|
21
|
-
"secretRefs": {}
|
|
22
|
-
},
|
|
23
|
-
"store": {
|
|
24
|
-
"backend": "local",
|
|
25
|
-
"session": "auto"
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
"coords": {},
|
|
29
|
-
"env": {
|
|
30
|
-
"LOG_LEVEL": "debug"
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
]
|
|
34
|
-
},
|
|
35
|
-
"changed": [],
|
|
36
|
-
"dropped": [],
|
|
37
|
-
"refused": []
|
|
38
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"workers": [
|
|
3
|
-
{
|
|
4
|
-
"name": "direct",
|
|
5
|
-
"enabled": true,
|
|
6
|
-
"host": "default",
|
|
7
|
-
"image": "sema-server:latest",
|
|
8
|
-
"secretRefs": {
|
|
9
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
10
|
-
},
|
|
11
|
-
"runtime": {
|
|
12
|
-
"requirePrincipal": false,
|
|
13
|
-
"rateLimitRpm": 0,
|
|
14
|
-
"execution": {
|
|
15
|
-
"lane": "k8s",
|
|
16
|
-
"coords": {
|
|
17
|
-
"K8S_SANDBOX_IMAGE": "registry.internal/sandbox@sha256:abc",
|
|
18
|
-
"K8S_NAMESPACE": "sandboxes"
|
|
19
|
-
},
|
|
20
|
-
"secretRefs": {}
|
|
21
|
-
},
|
|
22
|
-
"store": {
|
|
23
|
-
"backend": "local",
|
|
24
|
-
"session": "auto"
|
|
25
|
-
}
|
|
26
|
-
},
|
|
27
|
-
"coords": {},
|
|
28
|
-
"env": {
|
|
29
|
-
"LOG_LEVEL": "debug"
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
]
|
|
33
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"doc": {
|
|
3
|
-
"workers": [
|
|
4
|
-
{
|
|
5
|
-
"name": "canary",
|
|
6
|
-
"enabled": true,
|
|
7
|
-
"host": "default",
|
|
8
|
-
"image": "sema-server:latest",
|
|
9
|
-
"secretRefs": {
|
|
10
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
11
|
-
},
|
|
12
|
-
"runtime": {
|
|
13
|
-
"requirePrincipal": false,
|
|
14
|
-
"rateLimitRpm": 0,
|
|
15
|
-
"execution": {
|
|
16
|
-
"lane": "e2b",
|
|
17
|
-
"coords": {},
|
|
18
|
-
"secretRefs": {
|
|
19
|
-
"E2B_API_KEY": "HOST_E2B_KEY"
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
|
-
"store": {
|
|
23
|
-
"backend": "local",
|
|
24
|
-
"session": "auto"
|
|
25
|
-
}
|
|
26
|
-
},
|
|
27
|
-
"coords": {}
|
|
28
|
-
}
|
|
29
|
-
]
|
|
30
|
-
},
|
|
31
|
-
"changed": [
|
|
32
|
-
"canary"
|
|
33
|
-
],
|
|
34
|
-
"dropped": [
|
|
35
|
-
{
|
|
36
|
-
"name": "canary",
|
|
37
|
-
"index": 1,
|
|
38
|
-
"field": [
|
|
39
|
-
"runtime",
|
|
40
|
-
"memoryBackend"
|
|
41
|
-
]
|
|
42
|
-
}
|
|
43
|
-
],
|
|
44
|
-
"refused": [
|
|
45
|
-
{
|
|
46
|
-
"name": "handless",
|
|
47
|
-
"index": 0,
|
|
48
|
-
"field": [
|
|
49
|
-
"env",
|
|
50
|
-
"REMOTE_EXEC"
|
|
51
|
-
],
|
|
52
|
-
"reason": "an enabled worker names no execution lane (env.REMOTE_EXEC is unset) — it boots with no hands and still reports tasks completed. The migration does not guess a lane: set runtime.execution.lane (host | e2b | k8s | ssh | adb | local-docker | device) by hand, or disable the worker",
|
|
53
|
-
"original": {
|
|
54
|
-
"name": "handless",
|
|
55
|
-
"enabled": true,
|
|
56
|
-
"host": "default",
|
|
57
|
-
"image": "sema-server:latest",
|
|
58
|
-
"secretRefs": {
|
|
59
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
60
|
-
},
|
|
61
|
-
"runtime": {
|
|
62
|
-
"sessionBackend": "auto",
|
|
63
|
-
"memoryBackend": "off",
|
|
64
|
-
"requirePrincipal": false,
|
|
65
|
-
"rateLimitRpm": 0
|
|
66
|
-
},
|
|
67
|
-
"coords": {}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
]
|
|
71
|
-
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"workers": [
|
|
3
|
-
{
|
|
4
|
-
"name": "handless",
|
|
5
|
-
"enabled": true,
|
|
6
|
-
"host": "default",
|
|
7
|
-
"image": "sema-server:latest",
|
|
8
|
-
"secretRefs": {
|
|
9
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
10
|
-
},
|
|
11
|
-
"runtime": {
|
|
12
|
-
"sessionBackend": "auto",
|
|
13
|
-
"memoryBackend": "off",
|
|
14
|
-
"requirePrincipal": false,
|
|
15
|
-
"rateLimitRpm": 0
|
|
16
|
-
},
|
|
17
|
-
"coords": {}
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
"name": "canary",
|
|
21
|
-
"enabled": true,
|
|
22
|
-
"host": "default",
|
|
23
|
-
"image": "sema-server:latest",
|
|
24
|
-
"secretRefs": {
|
|
25
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
26
|
-
},
|
|
27
|
-
"runtime": {
|
|
28
|
-
"sessionBackend": "auto",
|
|
29
|
-
"memoryBackend": "off",
|
|
30
|
-
"requirePrincipal": false,
|
|
31
|
-
"rateLimitRpm": 0
|
|
32
|
-
},
|
|
33
|
-
"coords": {},
|
|
34
|
-
"env": {
|
|
35
|
-
"REMOTE_EXEC": "e2b"
|
|
36
|
-
},
|
|
37
|
-
"secretEnv": {
|
|
38
|
-
"E2B_API_KEY": "HOST_E2B_KEY"
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
]
|
|
42
|
-
}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"doc": {
|
|
3
|
-
"workers": [
|
|
4
|
-
{
|
|
5
|
-
"name": "persist",
|
|
6
|
-
"enabled": true,
|
|
7
|
-
"host": "default",
|
|
8
|
-
"image": "sema-server:latest",
|
|
9
|
-
"secretRefs": {
|
|
10
|
-
"apiKeyEnv": "MODEL_KEY",
|
|
11
|
-
"dbPasswordEnv": "HOST_TIDB_PW"
|
|
12
|
-
},
|
|
13
|
-
"runtime": {
|
|
14
|
-
"requirePrincipal": false,
|
|
15
|
-
"rateLimitRpm": 0,
|
|
16
|
-
"execution": {
|
|
17
|
-
"lane": "host",
|
|
18
|
-
"coords": {},
|
|
19
|
-
"secretRefs": {}
|
|
20
|
-
},
|
|
21
|
-
"store": {
|
|
22
|
-
"backend": "mysql",
|
|
23
|
-
"session": "mysql",
|
|
24
|
-
"db": {
|
|
25
|
-
"host": "tidb.internal",
|
|
26
|
-
"port": 4000,
|
|
27
|
-
"user": "svc",
|
|
28
|
-
"database": "sema"
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
},
|
|
32
|
-
"coords": {
|
|
33
|
-
"gitApiBaseUrl": "https://git.internal"
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
]
|
|
37
|
-
},
|
|
38
|
-
"changed": [
|
|
39
|
-
"persist"
|
|
40
|
-
],
|
|
41
|
-
"dropped": [
|
|
42
|
-
{
|
|
43
|
-
"name": "persist",
|
|
44
|
-
"index": 0,
|
|
45
|
-
"field": [
|
|
46
|
-
"runtime",
|
|
47
|
-
"memoryBackend"
|
|
48
|
-
]
|
|
49
|
-
}
|
|
50
|
-
],
|
|
51
|
-
"refused": []
|
|
52
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"workers": [
|
|
3
|
-
{
|
|
4
|
-
"name": "persist",
|
|
5
|
-
"enabled": true,
|
|
6
|
-
"host": "default",
|
|
7
|
-
"image": "sema-server:latest",
|
|
8
|
-
"secretRefs": {
|
|
9
|
-
"apiKeyEnv": "MODEL_KEY",
|
|
10
|
-
"tidbPasswordEnv": "HOST_TIDB_PW"
|
|
11
|
-
},
|
|
12
|
-
"runtime": {
|
|
13
|
-
"sessionBackend": "tidb",
|
|
14
|
-
"memoryBackend": "off",
|
|
15
|
-
"requirePrincipal": false,
|
|
16
|
-
"rateLimitRpm": 0,
|
|
17
|
-
"db": "sema"
|
|
18
|
-
},
|
|
19
|
-
"coords": {
|
|
20
|
-
"gitApiBaseUrl": "https://git.internal",
|
|
21
|
-
"tidbHost": "tidb.internal",
|
|
22
|
-
"tidbPort": 4000,
|
|
23
|
-
"tidbUser": "svc"
|
|
24
|
-
},
|
|
25
|
-
"env": {
|
|
26
|
-
"REMOTE_EXEC": "host"
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
]
|
|
30
|
-
}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"doc": {
|
|
3
|
-
"workers": [
|
|
4
|
-
{
|
|
5
|
-
"name": "alpha",
|
|
6
|
-
"enabled": true,
|
|
7
|
-
"host": "default",
|
|
8
|
-
"image": "sema-server:latest",
|
|
9
|
-
"secretRefs": {
|
|
10
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
11
|
-
},
|
|
12
|
-
"runtime": {
|
|
13
|
-
"requirePrincipal": false,
|
|
14
|
-
"rateLimitRpm": 0,
|
|
15
|
-
"execution": {
|
|
16
|
-
"lane": "host",
|
|
17
|
-
"coords": {},
|
|
18
|
-
"secretRefs": {}
|
|
19
|
-
},
|
|
20
|
-
"store": {
|
|
21
|
-
"backend": "local",
|
|
22
|
-
"session": "auto"
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
"coords": {}
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
"name": "gamma",
|
|
29
|
-
"enabled": false,
|
|
30
|
-
"host": "default",
|
|
31
|
-
"image": "sema-server:latest",
|
|
32
|
-
"secretRefs": {
|
|
33
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
34
|
-
},
|
|
35
|
-
"runtime": {
|
|
36
|
-
"requirePrincipal": false,
|
|
37
|
-
"rateLimitRpm": 0
|
|
38
|
-
},
|
|
39
|
-
"coords": {}
|
|
40
|
-
}
|
|
41
|
-
]
|
|
42
|
-
},
|
|
43
|
-
"changed": [],
|
|
44
|
-
"dropped": [],
|
|
45
|
-
"refused": [
|
|
46
|
-
{
|
|
47
|
-
"name": "beta",
|
|
48
|
-
"index": 1,
|
|
49
|
-
"field": [
|
|
50
|
-
"env"
|
|
51
|
-
],
|
|
52
|
-
"reason": "the stored worker is not a valid WorkerSpec — env: env cannot set reserved key \"FLEET_GENERATION\" — set it via (set by the config renderer from the worker's generation — not configurable)",
|
|
53
|
-
"original": {
|
|
54
|
-
"name": "beta",
|
|
55
|
-
"enabled": true,
|
|
56
|
-
"host": "default",
|
|
57
|
-
"image": "sema-server:latest",
|
|
58
|
-
"secretRefs": {
|
|
59
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
60
|
-
},
|
|
61
|
-
"runtime": {
|
|
62
|
-
"requirePrincipal": false,
|
|
63
|
-
"rateLimitRpm": 0,
|
|
64
|
-
"execution": {
|
|
65
|
-
"lane": "host",
|
|
66
|
-
"coords": {},
|
|
67
|
-
"secretRefs": {}
|
|
68
|
-
},
|
|
69
|
-
"store": {
|
|
70
|
-
"backend": "local",
|
|
71
|
-
"session": "auto"
|
|
72
|
-
}
|
|
73
|
-
},
|
|
74
|
-
"coords": {},
|
|
75
|
-
"env": {
|
|
76
|
-
"FLEET_GENERATION": "7",
|
|
77
|
-
"LOG_LEVEL": "debug"
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
]
|
|
82
|
-
}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"workers": [
|
|
3
|
-
{
|
|
4
|
-
"name": "alpha",
|
|
5
|
-
"enabled": true,
|
|
6
|
-
"host": "default",
|
|
7
|
-
"image": "sema-server:latest",
|
|
8
|
-
"secretRefs": {
|
|
9
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
10
|
-
},
|
|
11
|
-
"runtime": {
|
|
12
|
-
"requirePrincipal": false,
|
|
13
|
-
"rateLimitRpm": 0,
|
|
14
|
-
"execution": {
|
|
15
|
-
"lane": "host",
|
|
16
|
-
"coords": {},
|
|
17
|
-
"secretRefs": {}
|
|
18
|
-
},
|
|
19
|
-
"store": {
|
|
20
|
-
"backend": "local",
|
|
21
|
-
"session": "auto"
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
"coords": {}
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
"name": "beta",
|
|
28
|
-
"enabled": true,
|
|
29
|
-
"host": "default",
|
|
30
|
-
"image": "sema-server:latest",
|
|
31
|
-
"secretRefs": {
|
|
32
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
33
|
-
},
|
|
34
|
-
"runtime": {
|
|
35
|
-
"requirePrincipal": false,
|
|
36
|
-
"rateLimitRpm": 0,
|
|
37
|
-
"execution": {
|
|
38
|
-
"lane": "host",
|
|
39
|
-
"coords": {},
|
|
40
|
-
"secretRefs": {}
|
|
41
|
-
},
|
|
42
|
-
"store": {
|
|
43
|
-
"backend": "local",
|
|
44
|
-
"session": "auto"
|
|
45
|
-
}
|
|
46
|
-
},
|
|
47
|
-
"coords": {},
|
|
48
|
-
"env": {
|
|
49
|
-
"FLEET_GENERATION": "7",
|
|
50
|
-
"LOG_LEVEL": "debug"
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
"name": "gamma",
|
|
55
|
-
"enabled": false,
|
|
56
|
-
"host": "default",
|
|
57
|
-
"image": "sema-server:latest",
|
|
58
|
-
"secretRefs": {
|
|
59
|
-
"apiKeyEnv": "MODEL_KEY"
|
|
60
|
-
},
|
|
61
|
-
"runtime": {
|
|
62
|
-
"requirePrincipal": false,
|
|
63
|
-
"rateLimitRpm": 0
|
|
64
|
-
},
|
|
65
|
-
"coords": {}
|
|
66
|
-
}
|
|
67
|
-
]
|
|
68
|
-
}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"contributor": "contract",
|
|
3
|
-
"claim": "8.2.0 逐行终判:一份已是 7.x 形的 workers 文档(三行都不需要迁),其中 beta 在 env 里设了保留名 FLEET_GENERATION(渲染器是它的唯一写手)⇒ beta 进 refused(field = env,拒因是读侧自己那句,点名保留键与它的唯一写位),alpha / gamma 原样留在 doc,changed / dropped 为空;过滤后的 doc 整域读得进。8.1.0 及以前这份文档迁移回零变化、随后整域读抛。"
|
|
4
|
-
}
|