Skip to content

Release/v0.2.0 - #5

Merged
lchoquel merged 2 commits into
mainfrom
release/v0.2.0
Sep 27, 2026
Merged

lchoquel merged 2 commits into
mainfrom
release/v0.2.0

Conversation

@lchoquel

@lchoquel lchoquel commented Sep 27, 2026 •

Copy link
Copy Markdown
Member

Release v0.2.0

Bumps version from 0.1.1 to 0.2.0. Promotes dev → main.

Changelog

Changed

  • pipelex-sdk 0.14.0 and mthds 0.17.0 are the floors, and httpx is no longer a dependency (Breaking): from pipelex-sdk 0.14.0 every route, execute and start among them, raises the typed ApiResponseError on a non-2xx answer, so each mode's _run() catches PipelineRequestError with no second arm for a raw httpx.HTTPStatusError, and nothing in the project parses one any more. Code copied from the starter that caught httpx.HTTPStatusError catches ApiResponseError and reads exc.status where it read exc.response.status_code.

Fixed

  • A refused run says why, where and what to do: a method the API refuses to run, met by widget blocking …, widget attended … or widget detached …, now prints the refusal's reason, the pipe or concept each of its validation errors names, the next step the server advises and whether running it again can succeed, the same lines a failed run prints, instead of the reason alone; a reason that spans lines hangs under its label. Any other refused request reads out its reason the same way, an authentication failure included, beside the API-key hint.
  • make codegen and make add-method tell a missing route from a 404 the route answered: a 404 carrying the runner's error class, such as a method_ref whose package does not exist, is reported with the server's reason instead of sending you to check PIPELEX_BASE_URL, and any other refused request prints the server's next step under its reason.

Closes L-260927-892e08

🤖 Generated with Claude Code

https://claude.ai/code/session_01Xcr1G5gkEa4Aeoo1a7ATyh


Summary by cubic

Promotes dev to main as v0.2.0, moving the starter onto pipelex-sdk 0.14.0 and mthds 0.17.0.

  • Every non-2xx answer now raises the typed ApiResponseError instead of a raw httpx.HTTPStatusError (breaking: code that caught the httpx error must catch ApiResponseError and read exc.status), and httpx drops out of the runtime dependencies.
  • A method the API refuses to run now prints the reason, the pipe or concept each validation error names, the server's next step, and the retry advice.
  • make codegen and make add-method no longer read a 404 that the route itself answered (e.g. a method_ref whose package does not exist) as a missing base URL, and print the server's next step on other refusals.

Written for commit ede7ecd. Summary will update on new commits.

Review in cubic

lchoquel and others added 2 commits September 27, 2026 18:11
The starter moves onto pipelex-sdk 0.14.0 and mthds 0.17.0, where every
route raises the typed `ApiResponseError` on a non-2xx answer, so the
raw `httpx.HTTPStatusError` branch is gone and `httpx` leaves the
runtime dependencies. A refused run now prints its reason, the pipe or
concept each validation error names, the server's next step and the
retry advice, in every mode, with the `StartRequiresAsyncOrchestration`
hint moved onto the typed branch; `make codegen` and `make add-method`
also stop reading a 404 the route answered as a missing route.

Closes L-260927-23e105

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

https://claude.ai/code/session_01Xcr1G5gkEa4Aeoo1a7ATyh

<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Moves the starter onto `pipelex-sdk` 0.14.0 and `mthds` 0.17.0, where
every route raises the typed `ApiResponseError` on a non-2xx answer. The
raw `httpx.HTTPStatusError` branch is gone from all three modes, and
`httpx` leaves the runtime dependencies (it stays dev-only for the test
transport fakes).

**Refused requests now say why, where, and what to do**
- A method the API refuses to run prints the reason, the pipe or concept
each validation error names, the server's next step, and the retry
advice — the same shape a failed run's report uses, in every mode.
- Multi-line reasons hang their continuation lines under the label.
- 401/403 failures keep the API-key hint and also read out their reason;
the `StartRequiresAsyncOrchestration` hint now rides on the typed error.

**Codegen scripts stop misreading 404s**
- `explain` sends you to `PIPELEX_BASE_URL` only for a bare 404; a 404
carrying the runner's error class (e.g. a missing `method_ref` package)
prints the server's reason instead.
- Non-404 refusals now include the server's next step under the reason.

Closes L-260927-23e105.

<sup>Written for commit 89c05f6.
Summary will update on new commits.</sup>

<a
href="https://cubic.dev/pr/Pipelex/pipelex-starter-python/pull/4?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.5 <noreply@anthropic.com>
…lex-sdk 0.14.0

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xcr1G5gkEa4Aeoo1a7ATyh
@lchoquel
lchoquel merged commit aa089cf into main Sep 27, 2026
17 checks passed
@lchoquel
lchoquel deleted the release/v0.2.0 branch September 27, 2026 16:16
@github-actions github-actions Bot locked and limited conversation to collaborators Sep 27, 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