SchemaRouter 0.6.0¶
SchemaRouter 0.6.0은 0.5 runtime-hardening baseline을 bounded local/model-assisted decision, operational inspection, 대규모 OpenAPI fidelity 개선의 세 영역으로 확장합니다.
SchemaRouter를 agent framework로 만들지 않습니다. Orchestration, conversation, memory, graph control, model-provider strategy는 application/framework의 책임이며 SchemaRouter는 typed tool-schema planning, validation, policy, execution boundary를 유지합니다.
주요 변경사항¶
Local 및 provider-neutral decision backend¶
schemarouter[laya]를 통한 optional localLayaDecisionBackend- Laya의 automatic English/multilingual routing, explicit checkpoint selection, confidence abstention, CPU/CUDA/MPS 선택, requested/actual device reporting, selective preload
- Ollama는 필수가 아닌 optional general local-LLM decision backend로 유지
ModelQueryAnalyzer와CallableDecisionBackend를 통해 기존 GPT/Gemini/Claude/기타 hosted client를 provider-neutral하게 재사용- 모든 decision backend를 locally authorized candidate ID와 local validation 범위로 제한
Workload-specific benchmark evidence가 수집되기 전에는 live model/provider quality claim을 이 release에 포함하지 않습니다.
Operational inspection과 dashboard¶
- persistent registry/run trace를 위한 read-only
schemarouter inspect - analyzer, decision policy, execution policy, 실제 trusted invoker binding을 보여주는 live
SchemaRouter.inspect() - 독립적으로 열 수 있는 읽기 전용 HTML 대시보드 내보내기
- arbitrary metadata, credential, invoker object, request/result payload, trace payload value를 default observation surface에서 제외
- runnable dashboard example과 in-document visual preview
OpenAPI fidelity¶
0.6은 fail-closed OpenAPI subset을 크게 확장합니다.
- response
oneOf/anyOfobject field를 planner에 노출하면서 composed runtime validation 보존 - 동일 출처에 한정된 JSON Schema
$id기준 재설정, 중첩 가상 리소스 및 정적$anchor해석 - dynamic/recursive reference semantics는 fail-closed 유지
- strict discriminated
oneOfrequest body를 typed root body 하나로 지원 - 배열·스칼라·nullable root·discriminator 없는 composition까지 명시적인 JSON root body로 지원하며, 서로 호환되지 않는 스키마 variant를 임의로 평탄화하지 않음
- literal JSON
nullroot body 보존, missing required root body fail-closed - OpenAPI 3.0
nullable: true를 동등한 JSON Schema type union으로 normalize - path/header
simple, queryformdefault parameter style serialization; unsupported style과allowReserved=true는 fail-closed - timestamp처럼 보이는 YAML scalar를 ingestion 시 JSON-compatible string으로 보존
Platform과 CI¶
- Python 3.10~3.14 및 Windows는 required release gate
- Python 3.15 preview는 non-blocking
- wheel/sdist, minimum-dependency, Pyright, coverage, docs, MCP, LangChain, LlamaIndex, Jev, Laya, OpenTelemetry check 보호
- Laya CI는 불필요한 CUDA download를 피하도록 CPU-only PyTorch wheel path 사용
- release 전 public OpenAPI/OPTIMADE compatibility smoke green
Compatibility¶
0.6.0은 0.5.0의 public API를 제거하지 않습니다. 프로젝트는 pre-1.0이므로 minor release가 문서화된 compatibility change를 추가할 수 있습니다. 새 model-assisted/operational surface는 opt-in이며 unsupported schema semantics는 추측하지 않고 fail-closed합니다.
0.7 development로 연기된 항목¶
다음은 0.6.0 release blocker가 아닙니다.
- shared corpus에서 GPT/Gemini/Claude/Ollama/Laya/Jev live decision-routing performance evidence
- standalone LangChain/LlamaIndex ecosystem publication 및 upstream inclusion
이 track은 external provider, credential, hardware, maintainer 또는 third-party review가 필요하므로 0.7 development line에서 계속합니다.