Skip to content

Promote the WORKFLOW.md Corrections and the pyproject.toml Ledger Decision to Main - #1803

Merged
ptr727 merged 2 commits into
mainfrom
develop
Sep 25, 2026
Merged

ptr727 merged 2 commits into
mainfrom
develop

Conversation

@ptr727

@ptr727 ptr727 commented Sep 25, 2026

Copy link
Copy Markdown
Owner

Promotes develop to main.

Carried

ptr727/aiopurpleair and ptr727/Financial-Modeling are waiting on both.

Closes #1527
Closes #1553

🤖 Generated with Claude Code

ptr727 and others added 2 commits September 24, 2026 19:09
Settles the divergence ledger's last `investigate` row, the
`pyproject.toml` gap, which the maintainer decided as `accepted`.

The measurement in #1553 found that every carrier holds its own
`pyproject.toml` rather than an equivalent of the hub's config-only
Scripts-profile file:
- aiopurpleair and Financial-Modeling carry Build-profile manifests.
- ESPHome-Config's is a uv workspace root.
- homeassistant-purpleair keeps its ruff and pyright configuration in
separate files.

Each copy was re-read on main for this change. A placement-specific
check would misfire on a repository that should not converge, and a
location-agnostic one would assert almost nothing. So the row records a
path collision, and the audit's hub-only loop raises no finding for it.

- `spec/divergences.json`: the row moves from `investigate` to
`accepted`, with `tracking` null.
- `reports/divergences.md`: regenerated against the current fleet. The
rest of its churn is live fleet state.
- `scripts/tests/test_spec_validate.py`: a docstring no longer describes
a live `investigate` row the ledger has stopped holding.

Making every repository's Python gated consistently, whatever the
repository ships, is a separate design question filed as #1800.

Fixes #1553. This targets develop, so the issue closes on promotion.

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

---------

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Corrects the `WORKFLOW.md` statements that #1527 and its four comments
reported as contradicted by the tree, each checked against the tree
before it was changed.

- **Section 6, `hugo` row:** the secret mapping is explained by the task
declaring the secret required, and the value the job reads comes from
the task's own `environment:` binding for a secret the environment
defines. The accepted environment names (`production`, `staging`) are
stated. The deploy hook's `build` run must leave
`releases/<release-id>/` and `current` under `bundle-path`.
- **Section 6, `library` row:** the S9 path is a push re-run, and the
stub citation is replaced by D1.2 alone.
- **Section 6, `eda` and `docker` rows:** the contradictory "no leaf for
S1" and "version injection" clauses are gone, and the develop leg pushes
`develop` plus the version tag.
- **Section 4:**
- D9.1 exempts local (`./`) and self-repository (`$/`) references from
pinning, as does `GOVERNANCE.md` "Workflow YAML Conventions".
- D4.1 states the output comparison itself rather than pointing at D7.3.
  - D7.3 drops the input's reason for outputs.
  - D6.2 is scoped to a called workflow.
  - D6.3 requires that the name carry the branch, not a suffix.
  - D1.1 drops the filter-shape claim.
  - D1.6 gives a Python-only reason and fixes the threshold binding.
  - D4.5 states the shared-base and multi-image Docker limit.
  - D5.2's heading matches its package-job rule.
- **Already fixed on develop, no edit:** D4.1's "first `plan` job" and
D9.3's one-line `run:` question. D4.1 now reads "A `plan` job", and D9.3
says multi-line blocks.

The generated `workflow-ci-contract` includes are regenerated. Local
gates (build_dist --check, prose gate, spec/validate.py, docker_lint)
pass, and a local strict review pass is recorded.

Fixes #1527. This targets develop, so the issue closes on promotion.

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


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Documentation**
* Clarified how branch names are used in artifact names and how called
workflows derive configuration.
* Added detail on workflow output comparisons, path filters, validation
coverage reports, and Codecov status options.
* Expanded guidance on release and package cleanup conditions, Docker
partial-push outcomes, and recovery routes.
* Clarified when external actions and reusable workflows require SHA
pinning, with exceptions for local and same-repository references.
* Updated workflow examples covering Docker tags, EDA artifact
generation, and Hugo deployment inputs and outputs.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Copilot AI lite review requested due to automatic review settings September 25, 2026 02:13
@coderabbitai

coderabbitai Bot commented Sep 25, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 38 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Repository: ptr727/ProjectTemplate/.coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: c9d72610-2cce-4e6d-879c-7cbdbadcf700

📥 Commits

Reviewing files that changed from the base of the PR and between ff77a3f and ccdd57e.

⛔ Files ignored due to path filters (5)
  • .claude-plugin/fleet-skills/.source-digests/workflow-ci-contract is excluded by !.claude-plugin/fleet-skills/**
  • .claude-plugin/fleet-skills/skills/workflow-ci-contract/references/architecture.md is excluded by !.claude-plugin/fleet-skills/**
  • .claude-plugin/fleet-skills/skills/workflow-ci-contract/references/d-guarantees.md is excluded by !.claude-plugin/fleet-skills/**
  • .github/skills/workflow-ci-contract/references/architecture.md is excluded by !.github/skills/**
  • .github/skills/workflow-ci-contract/references/d-guarantees.md is excluded by !.github/skills/**
📒 Files selected for processing (7)
  • .agents/skills/workflow-ci-contract/references/architecture.md
  • .agents/skills/workflow-ci-contract/references/d-guarantees.md
  • GOVERNANCE.md
  • WORKFLOW.md
  • reports/divergences.md
  • scripts/tests/test_spec_validate.py
  • spec/divergences.json

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟢 Approval recommended

The changes consistently promote the already-validated documentation and ledger updates, and the regenerated skill distributions match the updated canonical sources without introducing behavioral code changes.

Review effort: Lite
Findings: None

What changed in this PR

Promotes the develop branch state to main, carrying forward the recent workflow-contract documentation corrections and the settled divergence-ledger decision around pyproject.toml.

Changes:

  • Updates WORKFLOW.md and GOVERNANCE.md to align the written workflow contract with the current implemented behavior (pinning exceptions, output comparisons, deploy-site secret semantics, etc.).
  • Settles the divergence ledger’s last investigate entry (pyproject.toml) as an accepted path collision and regenerates the rendered divergence report accordingly.
  • Adjusts a spec-validation test docstring and regenerates the workflow skill distributions to reflect the updated canonical text.
File Description
WORKFLOW.md Promotes corrected CI/workflow behavioral contract wording to main.
GOVERNANCE.md Aligns workflow pinning guidance with local/self-reference exceptions.
spec/​divergences.json Records pyproject.toml as an accepted path collision (no longer investigate).
reports/​divergences.md Regenerated divergence report reflecting the updated ledger decision.
scripts/​tests/​test_spec_validate.py Updates explanatory docstring to match the ledger’s current state.
.agents/​skills/​workflow-ci-contract/​references/​d-guarantees.md Regenerates the authored skill include content from the updated WORKFLOW.md.
.agents/​skills/​workflow-ci-contract/​references/​architecture.md Regenerates the authored skill include content from the updated WORKFLOW.md.
.github/​skills/​workflow-ci-contract/​references/​d-guarantees.md Updates the GitHub-discoverable skill distribution copy (generated).
.github/​skills/​workflow-ci-contract/​references/​architecture.md Updates the GitHub-discoverable skill distribution copy (generated).
.claude-plugin/​fleet-skills/​skills/​workflow-ci-contract/​references/​d-guarantees.md Updates the Claude plugin skill distribution copy (generated).
.claude-plugin/​fleet-skills/​skills/​workflow-ci-contract/​references/​architecture.md Updates the Claude plugin skill distribution copy (generated).
.claude-plugin/​fleet-skills/​.source-digests/​workflow-ci-contract Updates the plugin source digest to match the regenerated skill content.

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@ptr727

ptr727 commented Sep 25, 2026

Copy link
Copy Markdown
Owner Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Review rate limited.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants