Skip to content

Release v0.10.2 - #39

Merged
lchoquel merged 2 commits into
mainfrom
release/v0.10.2
Sep 22, 2026
Merged

lchoquel merged 2 commits into
mainfrom
release/v0.10.2

Conversation

@lchoquel

@lchoquel lchoquel commented Sep 22, 2026 •

Copy link
Copy Markdown
Member

Release v0.10.2

Bumps version from 0.10.1 to 0.10.2. Promotes dev → main.

Changelog

Added

  • results_from_execute, the lift from a blocking result onto RunResults, made public. pipelex_sdk.execute_result.results_from_execute(result) turns a PipelexExecuteResult into the RunResults the durable path hands back, lifting the usage pair, the graph pair, the working memory and the three I/O artifacts off the runner's extension-open pipe_output onto their declared fields. It is the same mapping start_and_wait has always applied on its bare-runner fallback, which until now was private: a caller driving the blocking execute() itself had to re-read pipe_output.model_extra and re-validate the records by hand to reach summarize_usage, collect_artifacts or any parity field. execute() still returns PipelexExecuteResult, since that model carries the runner's whole typed envelope. The function is pure — no client, no network — and is documented in docs/run-results.md and docs/run-usage.md.

Closes L-260922-48670b

🤖 Generated with Claude Code


Summary by cubic

Makes results_from_execute public so callers who drive the blocking execute() directly can lift the result onto RunResults without re-reading pipe_output.model_extra by hand.

  • Moves the private _map_run_result_to_run_results into pipelex_sdk/execute_result.py as results_from_execute — the same mapping start_and_wait applies on its bare-runner fallback.
  • execute() still returns PipelexExecuteResult; the lift is pure, documented, and covered by new unit tests.
  • Bumps the version to 0.10.2 for this release.

Written for commit 29e717a. Summary will update on new commits.

Review in cubic

lchoquel and others added 2 commits September 22, 2026 11:10
The mapping from a blocking `execute()` result onto `RunResults` was a
private function in `client.py` with a single caller, the bare-runner
fallback inside `start_and_wait`. A consumer driving `execute()` itself
had to re-read `pipe_output.model_extra` and re-validate the usage
records by hand before it could reach `summarize_usage`,
`collect_artifacts` or any of the parity fields — which is what the
Python starter does today.

It moves to `pipelex_sdk/execute_result.py` as
`results_from_execute(result)`, beside the `PipelexExecuteResult` it
takes and on the side of the import edge that already depends on `runs`.
The mapping itself is unchanged, `execute()` still returns
`PipelexExecuteResult` because that model carries the runner's whole
typed envelope, and the docs now say how a direct caller gets from one
to the other.

Closes L-260922-b7268d

🤖 Generated with [Claude Code](https://claude.com/claude-code)

<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Makes the mapping from a blocking `execute()` result onto `RunResults`
public as `results_from_execute(result)` in
`pipelex_sdk/execute_result.py`.

Previously only `start_and_wait` used this mapping; a consumer driving
`execute()` directly had to re-read `pipe_output.model_extra` and
re-validate usage records by hand to reach `summarize_usage`,
`collect_artifacts` or the parity fields. The new function performs the
same lift, so direct callers get the same `RunResults` shape the durable
path hands back. `execute()` still returns `PipelexExecuteResult`
because that model carries the runner's whole typed envelope. Adds unit
tests and doc updates. Closes L-260922-b7268d.

<sup>Written for commit 4b5fb1a.
Summary will update on new commits.</sup>

<a
href="https://cubic.dev/pr/Pipelex/pipelex-sdk-python/pull/38?utm_source=github"
target="_blank" rel="noopener noreferrer"
data-no-image-dialog="true"><picture><source
media="(prefers-color-scheme: dark)"
srcset="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"><source
media="(prefers-color-scheme: light)"
srcset="https://www.cubic.dev/buttons/review-in-cubic-light.svg"><img
alt="Review in cubic"
src="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"></picture></a>

<!-- End of auto-generated description by cubic. -->

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@lchoquel
lchoquel merged commit 8b39898 into main Sep 22, 2026
20 checks passed
@lchoquel
lchoquel deleted the release/v0.10.2 branch September 22, 2026 09:15
@github-actions github-actions Bot locked and limited conversation to collaborators Sep 22, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant