Release/v0.1.1 - #3
Merged
Merged
Conversation
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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release v0.1.1
Bumps version from
0.1.0to0.1.1. Promotesdev→main.Changelog
Changed
pipe_codeasdomain.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'sdomainand its call sites together.pipelex-sdk0.13.0 andmthds0.16.0 are the floors: the failed-run presentation reads the SDK's typed error report, which first shipped inpipelex-sdk0.13.0, andmthdsfollows the version that release pins exactly.Fixed
widget attended …,widget detached waitorwidget 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 statusprints 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.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
devtomain: failed runs now say why they failed, and every demo names its pipe by its qualified reference.Changed
pipe_codeasdomain.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.widget attended,widget detached wait,widget detached result, andwidget detached status; runs with no stored report say no reason was recorded.Dependencies
pipelex-sdk0.13.0 andmthds0.16.0.Closes L-260927-87bb6f
Written for commit 990d09f. Summary will update on new commits.