Skip to content

Release/v0.1.1 - #3

Merged
lchoquel merged 3 commits into
mainfrom
release/v0.1.1
Sep 27, 2026
Merged

lchoquel merged 3 commits into
mainfrom
release/v0.1.1

Conversation

@lchoquel

@lchoquel lchoquel commented Sep 27, 2026 •

Copy link
Copy Markdown
Member

Release v0.1.1

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

Changelog

Changed

  • The demos name their pipe by its qualified reference: every demo command, in every mode, sends pipe_code as domain.pipe_code (extract_entities.extract_entities) rather than the bare code, the exact key the runtime resolves. A bare code is searched for across every domain of the bundle and fails as ambiguous once two domains declare it, so code copied from a demo keeps working as its bundle grows; rename a bundle's domain and its call sites together.
  • pipelex-sdk 0.13.0 and mthds 0.16.0 are the floors: the failed-run presentation reads the SDK's typed error report, which first shipped in pipelex-sdk 0.13.0, and mthds follows the version that release pins exactly.

Fixed

  • A failed run says why: a durable run that ended without a result, whether met by widget attended …, widget detached wait or widget detached result, now prints the reason the runner stored for it (its title and message), the next step it advises and whether running it again can succeed, instead of repeating its status; widget detached status prints the same lines under the status. A run that ended with no stored report, such as a cancelled one, says that no reason was recorded, keeps the platform's own sentence and says what is left to do.
  • An error that stops a command prints the server's text as it came: a bracketed span in the message, its explanation or its hint, and in a failed run's stored report read out by widget detached status, such as a provider's [/x], is no longer read as Rich markup, so it neither disappears nor crashes the print.

Closes L-260927-87bb6f

🤖 Generated with Claude Code


Summary by cubic

Releases v0.1.1, promoting dev to main: failed runs now say why they failed, and every demo names its pipe by its qualified reference.

Changed

  • Every demo command now sends pipe_code as domain.pipe_code (e.g. extract_entities.extract_entities) instead of the bare code, the exact key the runtime resolves; a bare code fails as ambiguous once two domains declare it.
  • A failed run now prints the stored reason, next step, and retry advice instead of repeating its status, across widget attended, widget detached wait, widget detached result, and widget detached status; runs with no stored report say no reason was recorded.
  • Server-provided error text is escaped before Rich renders it, so bracketed spans in provider messages no longer disappear or crash the print.

Dependencies

  • Raises the floors to pipelex-sdk 0.13.0 and mthds 0.16.0.

Closes L-260927-87bb6f

Written for commit 990d09f. Summary will update on new commits.

Review in cubic

lchoquel and others added 3 commits September 24, 2026 23:16
Every demo command, in all three modes, now sends its pipe as the
bundle's qualified reference (`extract_entities.extract_entities`)
instead of the bare code. The runtime resolves that as an exact key,
while a bare code is searched across the bundle's domains and fails as
ambiguous once two of them declare it. A new test in
`tests/unit/test_mode_symmetry.py` reads each bundle's `domain` and
`main_pipe` and checks every demo's call site against them. The live e2e
tests pass with the qualified code on `execute` and on `start`.

Closes L-260924-765858

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

https://claude.ai/code/session_01N7PSUoKkQLc7VcS7AkFJkM


<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Changes every demo command, in all three modes, to send its pipe as the
bundle's qualified reference (`domain.pipe_code`, e.g.
`extract_entities.extract_entities`) instead of the bare code, so the
runtime resolves an exact key. A bare code is searched across every
domain of the bundle and fails as ambiguous once two domains declare it.

The qualified form ties each call site to its bundle's `domain`, so
renaming the domain now requires renaming the call sites together;
detached `status` likewise reports the qualified pipe code, matching
what the platform records when a run is started.
`tests/unit/test_mode_symmetry.py` reads each bundle's `domain` and
`main_pipe` and fails when a demo's call site no longer matches, and the
e2e and unit tests, docs, and changelog are updated to the qualified
references.

<sup>Written for commit 3643b25.
Summary will update on new commits.</sup>

<a
href="https://cubic.dev/pr/Pipelex/pipelex-starter-python/pull/1?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>
A durable run that ended without a result used to print its status three
times and never its reason. The failed-run presentation in
`widget/errors.py`, used by `widget attended`, `widget detached wait`
and `widget detached result`, now reads out the stored error report the
SDK carries (the reason from its title and message, the next step and
the retry advice), `widget detached status` prints the same lines under
the status, and a run with no stored report says that no reason was
recorded and what is left to do. It depends on the published
`pipelex-sdk` 0.13.0, which carries that typed report, and raises the
`mthds` floor to the 0.16.0 that release pins.

Closes L-260925-3c79e2

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

<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
A failed durable run used to print its status three times and never why
it failed. The failed-run presentation now reads out the stored error
report—the reason, next step, and retry advice—across `widget attended`,
`widget detached wait`, and `widget detached result`; `widget detached
status` prints the same lines under the status, and a run with no stored
report says no reason was recorded and what is left to do. Closes
L-260925-3c79e2.

**Bug Fixes**
- The reason is the report's title and message (its error type when it
carries neither), the next step its advice, and the retry line its
retryable flag, left unsaid when unknown.
- Server error text is escaped before Rich renders it, so bracketed
spans in provider messages no longer disappear or crash the print.

**Dependencies**
- Raises the floors to `pipelex-sdk` 0.13.0 and `mthds` 0.16.0, the
versions carrying the typed error report.

<sup>Written for commit 911ac6c.
Summary will update on new commits.</sup>

<a
href="https://cubic.dev/pr/Pipelex/pipelex-starter-python/pull/2?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>
…by its qualified reference

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@lchoquel
lchoquel merged commit 4f0afb0 into main Sep 27, 2026
17 checks passed
@lchoquel
lchoquel deleted the release/v0.1.1 branch September 27, 2026 10:51
@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