fix/generate-structure-validation - #1087
Draft
thomashebrard wants to merge 3 commits into
Draft
Conversation
…drift contract `codegen types` now projects the concept set through `load_crate_for_concept_projection`: it never instantiates a pipe, never imports the customer's `@pipe_func` module, and needs no model deck. The agent-CLI contract table still described it as resolving the closure, which overstates what runs. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…ot just PipeFunc Skipping pipe instantiation skips pipe validation for every pipe type. PipeFunc is the motivating case, not the boundary: a PipeSequence naming a nonexistent step also passes `codegen types` / `build structures` now, so neither is a validation gate. Verified against dev with a PipeFunc-free bundle. Also fixes two stale references left by this branch: the codegen types module docstring credited `load_normalized_crate_or_exit` (no longer called), and `load_from_crate` pointed at a nonexistent `load_crate_for_structure_generation`. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
thomashebrard
added a commit
to Pipelex/pipelex-api
that referenced
this pull request
Aug 6, 2026
Temporarily git-source pipelex at b54c32f (the head of Pipelex/pipelex#1087, fix/generate-structure-validation) instead of the released 0.42.0 from PyPI, so the hosted runner can exercise the sandbox structure-generation fix on dev. This reintroduces a git source for pipelex, which uv propagates into pipelex-api-hosted's resolution and overrides its PyPI pin. Repoint to a plain `pipelex[...]==X.Y.Z` once the PR is merged and released. Co-Authored-By: Claude Opus 5 (1M context) <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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary by cubic
Fixes structure generation and
PipeFuncvalidation.codegen types/build structuresnow project concepts only (no@pipe_funcimport, no model deck), and aPipeFunccan return the generated structure class (bare or qualified).Bug Fixes
PipeFuncreturn types: the runtime’s qualified name and the generated bare name. Works for scalar andConcept[]; unrelated names still reject.Refactors
load_crate_for_concept_projectionwithis_loading_pipes=Falseto load domains+concepts only; skips importing/registering@pipe_funcmodules and avoids caching fingerprints for partial loads.codegen types/build structures, and boot without model decks (offline).resolve/codegen inputs/validate/runremain strict.codegen typesrow. Added tests asserting identical outputs with/without implementations and the new return-type acceptance.Written for commit b54c32f. Summary will update on new commits.