fix(planner): preserve unavailable all-target plans - #411
Merged
Merged
Conversation
8 tasks
szmyty
force-pushed
the
fix/all-clean-host-fallback-410
branch
from
September 14, 2026 22:42
7eeaa79 to
9a83038
Compare
52 tasks
Pull Request Summary by devActivityMetricsAchievements
|
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.
Context
Renderflow's post-#407 main run failed only
test_all_without_transforms_uses_builtin_capability_registry: a clean Ubuntu host pruned every optional--alltarget by provider availability, then aborted before emitting the artifact-forest plan.Changes
--allbranches solely to construct an inspectable dry-run plan;unavailable;PATH;Architecture impact
The planner now carries three distinct sets through resolution: requested/policy-allowed targets, provider-available targets, and pruned unavailable targets. Only provider-available targets are marked selected in the artifact forest. Unavailable targets are used as a planning fallback only when every branch is unavailable; the executor's existing provider preflight remains the authority and fails before work begins.
Provider registration, availability, policy permission, and selection remain separate claims. No schema, workflow, provider implementation, or sibling contract changed.
Pinned starting point
main:1eafaf54d33a984377a7a3e327ee87382da733079a83038fd90f82c49ddf438497445c59a116abe1edbaf6c6a87fcb03e3c8cd600822dd9bbc666358Validation
All final-head hosted gates are green:
Those successful runs covered strict Clippy, build, complete Rust tests, both AUR package checks, Snap build/install, portable installer smoke, bundled dry-run and embedding examples, web format/lint/typecheck/tests/build, generated-doc/schema drift, strict MkDocs/Mike preview, and the hermetic conformance corpus.
Local validation included
git diff --checkand exact remote-tree comparison. This workspace does not expose a Rust toolchain, so the repository-pinned hosted jobs are the executable validation authority.Rollout and review
The PR is intentionally unmerged. It references rather than auto-closes #410 so the issue can remain open through review, merge, and the required green resulting-
mainCI run. If resulting-maindiffers from the PR evidence, keep #410 open and investigate rather than retrying or weakening a gate.Refs #410
Relates to #407
Relates to #367
Relates to egohygiene/flow#11
Roadmap-Step: REN-Q02