Skip to content

v0.16.5 β€” Services are the API

Choose a tag to compare

@JGabrielGruber JGabrielGruber released this 01 Jul 12:17

🌴 Palm Engine v0.16.5 β€” Services are the API

Domain services in palm/services/, per-service REST under /v1/api/…, MCP remounted by service domain. Breaking release for integrators on legacy /v1/wizards and monolithic MCP tool names.

Added

  • palm/services/ β€” definitions, execution/flows, execution/providers, system with per-domain registry.py and dispatch() command-path grammar
  • REST /v1/api/… β€” definitions catalog + CRUD, flow session REPL, provider invoke, system doctor/jobs
  • MCP per-domain tools β€” palm_flows_*, palm_system_*, palm_definitions_*, palm_providers_invoke (26 tools total with pattern contributors)
  • ProviderExecutionService β€” host.execution.providers.invoke() with provider validation
  • Definitions CRUD β€” POST/PUT/DELETE on /v1/api/definitions/{flows,processes,resources}/…
  • FlowSession / SessionContext β€” service-layer session handles; session_id terminology at API boundary

Changed

  • host.internal β†’ host.system (SystemService)
  • host.execution.on(id) β†’ host.execution.flows session API (dispatch, FlowSession)
  • Explorer SSR and operator hints updated to /v1/api/flows/… and palm_flows_* tool names
  • MCP prompts and docs/llms.txt agent guide rewritten for 0.16 conventions

Removed (breaking β€” no deprecation window)

  • /v1/wizards REST surface and handlers/wizard.py
  • Legacy catalog routes (/v1/flows, /v1/processes, /v1/resources, /v1/doctor, /v1/flows/validate)
  • POST /v1/resources/invoke β€” replaced by /v1/api/providers/{provider}/{resource_ref}/invoke
  • Orphaned monolith handlers handlers/catalog.py, handlers/resources.py
  • Monolithic MCP tools (palm_submit_wizard, palm_inspect_instance, palm_wizard_input, palm_doctor, …)

Transitional (still mounted)

  • /v1/jobs, /v1/instances, /v1/plans, /v1/snapshots on legacy monolith route table (not yet migrated to /v1/api/system)