Implementation Plan: Pipeline Health Mechanism Naming Alignment#4301
Merged
Trecek merged 10 commits intoJul 20, 2026
Merged
Conversation
…peline_health Aligns naming across the config-default ingredient layer: - DiagnosticsConfig.post_run_analysis -> DiagnosticsConfig.pipeline_health - defaults.yaml diagnostics.post_run_analysis -> diagnostics.pipeline_health - CONFIG_DEFAULT_INGREDIENTS: post_run_diagnostics -> pipeline_health - resolve_ingredient_defaults: post_run_diagnostics -> pipeline_health - tools_kitchen.py open_kitchen docstring example updated The CONFIG_DEFAULT_INGREDIENTS membership, the str(bool).lower() derivation, the lock/override feedback-contract behavior, and the hidden: true + no authority: config attribute (preserving config-as-default) are unchanged. The rename carries forward the contract established in commit 838128f (issue #4180) under the new canonical token. Co-Authored-By: Claude <noreply@anthropic.com>
Renames all 5 bundled recipe files plus their regenerated JSON mirrors: - post_run_diagnostics ingredient input declaration -> pipeline_health - run_diagnostic* step keys -> pipeline_health* (no_ci, unconfirmed, error, no_changes, already_done, bare) - skip_when_false: inputs.post_run_diagnostics -> inputs.pipeline_health - with.step_name: post_run_diagnostics -> pipeline_health - All on_success/on_failure/on_context_limit/on_rate_limit route targets that referenced run_diagnostic* steps - promote-to-main.yaml dispatches[].skip_when references the renamed ingredient (structurally distinct from steps[].skip_when_false) recipe_source_hash on each regenerated contract card now reflects the new YAML content. JSON mirrors and contract cards are in sync with the YAML sources (check-contract-freshness hook passes). Co-Authored-By: Claude <noreply@anthropic.com>
…rch/infra/execution Updates 18 test files (mechanical rename only, no new test logic): - tests/config/test_config.py: post_run_analysis -> pipeline_health - tests/config/test_helpers.py: function renames + post_run_diagnostics string literals -> pipeline_health (test functions: includes_/not_/in_) - tests/recipe/test_*: post_run_diagnostics -> pipeline_health, all run_diagnostic* step-name references -> pipeline_health*, function names + docstrings referencing the legacy names - tests/server/test_tools_kitchen_envelope.py: demotion tests (override_wins/config_default_applied) renamed; all string literals - tests/server/test_lock_ingredients.py: test_post_run_diagnostics_lockable -> test_pipeline_health_lockable - tests/server/_helpers.py + test_mcp_overrides.py: dict key + comment - tests/infra/test_pretty_output_recipe.py + tests/arch/test_subpackage_ isolation.py + tests/execution/backends/test_cli_conformance_probes.py: passing references in test fixtures, docstrings, and probe prompts All tests already cover the contracts (config-default, override-wins, lockability, skip_when_false, routing); this is purely a naming alignment to the canonical pipeline_health token. Co-Authored-By: Claude <noreply@anthropic.com>
docs/developer/diagnostics.md lines 91-97 updated to use the canonical pipeline_health token in the per-run enablement section. The example overrides, lock_ingredients snippet, and config field name now match the renamed surface (diagnostics.pipeline_health config field, the pipeline_health ingredient, the pipeline_health routing targets). The skill directory reference (/autoskillit:analyze-pipeline-health) is unchanged — the canonical token pipeline-health already appears in the directory name and the rename provides no discoverability gain. Co-Authored-By: Claude <noreply@anthropic.com>
…olation The pipeline_health naming rename (post_run_diagnostics -> pipeline_health) changed rendered recipe payload sizes and recipe-file hashes without the plan accounting for these downstream test dependents: - Recipe diagram staleness hashes for implementation, implementation-groups, merge-prs, and remediation are recomputed from the renamed YAML content. Diagram bodies are unchanged since the diagnostics step is hidden infrastructure in the rendered flow. - The pinned byte-size ceiling in test_canonical_recipe_responses_fit_independent_registry_ceilings is updated to the new measured remediation/all_truthy payload size. - test_sigterm_writes_scenario_json now isolates HOME for its subprocess so it does not load the developer's real ~/.autoskillit/config.yaml, which can contain stale pre-rename keys and fail schema validation — following the same isolation pattern used by other subprocess tests in this suite.
The prior fix's golden values (182_956/183_015) were measured while the remediation diagram was still stale, so the served payload included an extra "stale diagram" suggestion inflating the byte count. Now that the diagram hash is fresh, the payload is smaller — re-pin to the actual measured size (182_796/182_855).
Trecek
deleted the
pipeline-health-mechanism-naming-drift-skill-step-name-ingre/4299
branch
July 20, 2026 17:06
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
Rename the pipeline health mechanism's ingredient, config key, and recipe step names to share the canonical token
pipeline_healthwith the existing skill nameanalyze-pipeline-health. The skill directory is NOT renamed — it already contains the canonical tokenpipeline-health.Requirements
REQ-NAME-001: A single canonical name identifies the pipeline health mechanism across the skill directory name, recipe
step_name, gating ingredient, and config key.REQ-NAME-002: Every recipe that invokes the health skill (remediation, implementation, implementation-groups, merge-prs, and their contract mirrors) references the canonical step name, and the
skip_when_falsegating plus config-as-default authority contract (#4180) remain intact after the rename.REQ-NAME-003: If the skill directory is renamed, the old directory name is present in
RETIRED_SKILL_NAMESand the SKILL.mdname:field matches the new name in the same commit.Closes #4299
Implementation Plan
Plan file:
/home/talon/projects/autoskillit-runs/impl-20260720-074403-228207/.autoskillit/temp/make-plan/pipeline_health_naming_alignment_plan_2026-07-20_080500.md🤖 Generated with Claude Code via AutoSkillit
Token Usage Summary
* Step used a non-Anthropic provider; caching behavior may differ.
Token Efficiency
Model Usage Breakdown