feat: introduced omptype validation package and migrated workspace dependencies

- Introduce `@oh-my-pi/omptype` as a new ArkType-compatible schema validation package featuring a lazy JIT runtime, JSON Schema emission, and compatibility adapters.
- Replace `arktype` across workspace packages and test utilities with `@oh-my-pi/omptype`.
- Add benchmark suites, tests, and documentation for the new validation engine and adapters.
- Update workspace build, test runner, and release configurations to include the new package.
This commit is contained in:
can1357
2026-08-03 21:56:48 +02:00
parent b48aeacf25
commit bc39ffa265
239 changed files with 8799 additions and 1669 deletions
@@ -3,7 +3,7 @@
* deliberately permissive (allows extra keys) so providers can attach extra
* keys without rejection; only `input` is required.
*/
import { type } from "arktype";
import { type } from "@oh-my-pi/omptype";
export const hashlineEditParamsSchema = type({
input: "string",
@@ -8,7 +8,7 @@
* the `patch` mode.
*/
import { type } from "arktype";
import { type } from "@oh-my-pi/omptype";
import { parseApplyPatch, parseApplyPatchStreaming } from "../apply-patch/parser";
import { ApplyPatchError } from "../diff";
import type { PatchEditEntry } from "./patch";
@@ -7,9 +7,9 @@
import * as fs from "node:fs";
import * as path from "node:path";
import { type } from "@oh-my-pi/omptype";
import type { AgentToolResult } from "@oh-my-pi/pi-agent-core";
import { isEnoent } from "@oh-my-pi/pi-utils";
import { type } from "arktype";
import {
type FileDiagnosticsResult,
flushLspWritethroughBatch,
@@ -4,8 +4,9 @@
* Provides both character-level and line-level fuzzy matching with progressive
* fallback strategies for finding text in files.
*/
import { type } from "@oh-my-pi/omptype";
import type { AgentToolResult } from "@oh-my-pi/pi-agent-core";
import { type } from "arktype";
import type { FileDiagnosticsResult, WritethroughCallback, WritethroughDeferredHandle } from "../../lsp";
import type { ToolSession } from "../../tools";
import { routeWriteThroughBridge } from "../../tools/acp-bridge";