Skip to content

docs(policy): pin retirement version for deprecated [engine] block - #811

Open
gmoncor wants to merge 2 commits into
bmad-code-org:mainfrom
gmoncor:docs/s01-11-pin-retirement-version-deprecated-engine
Open

gmoncor wants to merge 2 commits into
bmad-code-org:mainfrom
gmoncor:docs/s01-11-pin-retirement-version-deprecated-engine

Conversation

@gmoncor

@gmoncor gmoncor commented Sep 17, 2026 •

Copy link
Copy Markdown

What: Pin a concrete target version (and tracking issue) for retiring the [engine] compatibility alias, in both the code comment and the runtime DeprecationWarning message.

Why: The alias says it is a "one-release" compatibility shim but names no version or issue, so nothing owns its removal — it can (and likely will) outlive its intended lifetime, matching a known anti-pattern already called out in this project's own review conventions.

How:

  • Replace "a future release" / "one-release compatibility alias" with a concrete version number (0.12.0) in the code comment and the warnings.warn message.
  • Reference tracking issue Remove deprecated [engine] compatibility block in policy.py #810 for the removal, following the #149/#156/#157 convention already used elsewhere in this same file.

Testing: uv run pytest -q tests/test_policy.py — 352 passed, 2 skipped. Confirms the deprecation-warning path still matches the updated message text.

Changelog: Changed: pinned a target version for the deprecated [engine] settings block.

Related to #810

🤖 Generated with Claude Code

@coderabbitai

coderabbitai Bot commented Sep 17, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 14 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 2 included reviews 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: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 76bf456c-d043-446d-a817-7386ea6717aa

📥 Commits

Reviewing files that changed from the base of the PR and between ddd2bf8 and 67f48a2.

📒 Files selected for processing (2)
  • CHANGELOG.md
  • src/bmad_loop/policy.py

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.

@gmoncor
gmoncor force-pushed the docs/s01-11-pin-retirement-version-deprecated-engine branch from 957bb8f to 6e1a7dc Compare September 23, 2026 10:03
0.12.0 already shipped (tag v0.12.0, 2026-09-20) without removing
[engine], so pinning the retirement notice to 0.12.0 would be false
the moment this merges. Next real release is 0.13.0 per this repo's
minor-bump convention for deprecation removals (0.11.0/0.12.0), so
retargeted both the code comment and the runtime DeprecationWarning
to it.

Also moved the CHANGELOG entry from the already-published ## [0.12.0]
section into ## [Unreleased] / ### Changed, where an unreleased
change belongs per this file's own Keep a Changelog convention.
@gmoncor
gmoncor marked this pull request as ready for review September 23, 2026 11:51
gmoncor added a commit to gmoncor/bmad-loop that referenced this pull request Sep 23, 2026
CodeRabbit: same misplacement as bmad-code-org#810/bmad-code-org#811 — the entry landed inside
the already-published ## [0.12.0] section instead of ## [Unreleased],
and used narrative wording instead of this repo's imperative
CHANGELOG convention. Moved and reworded; left src/bmad_loop/policy.py's
stacklevel=3 as-is (not a clear bug: loads() is called both directly
and via load(), which adds a frame — CodeRabbit's stacklevel=2
suggestion would be correct for the direct-call path but wrong for
the load()-via-loads() path that tui/app.py actually uses in
production, and stacklevel=3 matches the existing precedent at
_fold_deprecated_engine in the same file).
gmoncor added a commit to gmoncor/bmad-loop that referenced this pull request Sep 23, 2026
…OG placement

Same bug already fixed in bmad-code-org#810/bmad-code-org#811: 0.12.0 (tag v0.12.0, released
2026-09-20) shipped without removing review.on_status_contradiction
= "retry", so pinning the removal notice to 0.12.0 is false the
moment this merges. Retargeted the comment, the runtime
DeprecationWarning, core.toml's field description, and the test
comment to 0.13.0 (this repo's minor-bump convention for deprecation
removals). Also moved the CHANGELOG entry from the already-published
## [0.12.0] section into ## [Unreleased] / ### Changed, and reworded
it as a terse imperative per this repo's own CHANGELOG guideline.

Left the DeprecationWarning-visibility question (CodeRabbit: default
Python filters suppress DeprecationWarning outside __main__, so this
warning may not reach a user in normal CLI use) unresolved here —
it's a pre-existing pattern shared with _fold_deprecated_engine, not
specific to this PR, and fixing it well means a CLI-wide decision
about warning categories/filters that's out of scope for a
CHANGELOG/version fix; opening a separate issue for it.
@gmoncor

gmoncor commented Sep 23, 2026

Copy link
Copy Markdown
Author

Note for reviewers: this PR's DeprecationWarning (_fold_deprecated_engine) shares the same visibility gap tracked in #835 (discovered while addressing review feedback on #814) — Python suppresses DeprecationWarning by default outside main, so this notice likely doesn't reach a user in normal CLI use either. Not blocking this PR on it since it's cross-cutting and pre-existing, but flagging for awareness.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant