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
+2 -2
View File
@@ -1,5 +1,6 @@
// SQLite trajectory runtime store owns session-scoped runtime event rows.
import { parseDateStringTimestampMs } from "@openclaw/normalization-core/number-coercion";
import { resolveSqliteTargetFromSessionStorePath } from "../config/sessions/session-sqlite-target.js";
import {
executeSqliteQuerySync,
@@ -359,8 +360,7 @@ function trajectoryJsonlRowBytes(eventJson: string): number {
}
function readTrajectoryEventTimestamp(event: TrajectoryEvent): number | undefined {
const parsed = Date.parse(event.ts);
return Number.isFinite(parsed) ? parsed : undefined;
return parseDateStringTimestampMs(event.ts);
}
function normalizeSqliteNumber(value: number | bigint): number {