refactor: consolidate coercion contracts (#122458)

* refactor: consolidate coercion contracts

Centralize exact string, record, numeric, date, Boolean, argument, and structured-error coercions while preserving call-site semantics.

Migrate canonical-name collisions and deprecated internal SDK bypasses, deleting 55 net production/tooling lines. Expand declaration ownership enforcement to 101 allowed helpers and add a narrow export-completeness audit.

* fix: preserve standalone script coercions

Keep copied Control UI tooling self-contained and retain the trusted release harness module-relative source seam when the harness runs against an old target cwd.
This commit is contained in:
Peter Steinberger
2026-08-11 23:26:37 -07:00
committed by GitHub
parent 66fe424590
commit b080dd1e76
276 changed files with 1685 additions and 1663 deletions
+1 -6
View File
@@ -9,6 +9,7 @@ import {
normalizeOpenAICompatibleReasoningReplay,
setQwenChatTemplateThinking,
} from "openclaw/plugin-sdk/provider-stream-shared";
import { asOptionalRecord as asPayloadRecord } from "openclaw/plugin-sdk/string-coerce-runtime";
import {
isQwenTokenPlanDeepSeekV4ModelId,
isQwenTokenPlanGlmModelId,
@@ -26,12 +27,6 @@ type QwenTokenPlanThinkingContract =
| { family: "kimi" }
| { family: "glm"; supportsMax: boolean };
function asPayloadRecord(value: unknown): Record<string, unknown> | undefined {
return value && typeof value === "object" && !Array.isArray(value)
? (value as Record<string, unknown>)
: undefined;
}
function resolveQwenThinkingLevel(
thinkingLevel: QwenThinkingLevel,
options: Parameters<StreamFn>[2],