Skip to content

fix(render): adopt modern pi tool contract for omp dispatch - #20

Merged
rz1989s merged 2 commits into
masterfrom
fix/omp-tool-contract
Sep 6, 2026
Merged

fix(render): adopt modern pi tool contract for omp dispatch#20
rz1989s merged 2 commits into
masterfrom
fix/omp-tool-contract

Conversation

@rz1989s

@rz1989s rz1989s commented Sep 6, 2026

Copy link
Copy Markdown
Member

Closes #17 (second + third layers)

omp's installed-plugin bridge requires the modern contract; legacy shapes from the original pi-era registration broke dispatch in three ways, all now fixed and live-verified under omp via local plugin link:

  1. run(input)execute(toolCallId, params) — legacy field never dispatched (fixed in v1.0.1, partial)
  2. Plain-map parameters → TypeBox Type.Object — bridge could not parse/validate params (delivered undefined)
  3. Raw object return → AgentToolResult {content: [{type:'text',...}], details} — bridge crashed on missing .content
  • Adds typebox devDependency (host-provided at runtime, house pattern per @getpipher/term)
  • Verified: render at 1280px produces screenshots + computed.json OKLCH pairs via npm-plugin load path
  • term + agent-status (already modern contract) work under omp unchanged — keystone now aligned

@rz1989s
rz1989s merged commit f8f0842 into master Sep 6, 2026
1 check passed
@rz1989s
rz1989s deleted the fix/omp-tool-contract branch September 6, 2026 16:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

keystone_render fails under omp: legacy run registration shape is never dispatched

1 participant