Skip to content

refactor(panel)!: remove activity API, document provider defaults, and update README cache/configuration registration. - #6

Merged
terabytesoftw merged 1 commit into
mainfrom
refactor/remove-activity-api
Sep 17, 2026
Merged

terabytesoftw merged 1 commit into
mainfrom
refactor/remove-activity-api

Conversation

@terabytesoftw

Copy link
Copy Markdown
Contributor

Pull Request

  • Breaking change (fix or feature that would cause existing functionality to change)
  • Bugfix (non-breaking change that fixes an issue)
  • CI/build configuration
  • Documentation update
  • New feature (non-breaking change that adds functionality)
  • Refactoring (no functional changes)

Related Issues

…d update README cache/configuration registration.
@coderabbitai

coderabbitai Bot commented Sep 17, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 278c9313-c29b-41b4-9319-0926de47f43f

📥 Commits

Reviewing files that changed from the base of the PR and between 644b6ce and 22ffc0e.

📒 Files selected for processing (8)
  • .gitignore
  • CHANGELOG.md
  • README.md
  • src/Panel.php
  • src/PanelView.php
  • tests/CacheExampleTest.php
  • tests/FluentPanelViewTest.php
  • tests/PanelViewTest.php
💤 Files with no reviewable changes (2)
  • tests/PanelViewTest.php
  • tests/CacheExampleTest.php

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.

📜 Recent review details
⏰ Context from checks skipped due to timeout. (3)
  • GitHub Check: phpunit / PHP 8.4-windows-2022
  • GitHub Check: phpunit / PHP 8.5-windows-2022
  • GitHub Check: phpunit / PHP 8.3-windows-2022
🧰 Additional context used
🪛 PHPMD (2.15.0)
src/Panel.php

[warning] 61-64: Avoid using short method names like Panel::id(). The configured minimum method name length is 3. (undefined)

(ShortMethodName)

src/PanelView.php

[warning] 28-741: The class PanelView has 46 non-getter- and setter-methods. Consider refactoring PanelView to keep number of methods under 25. (undefined)

(TooManyMethods)


[warning] 28-741: The class PanelView has 39 public methods. Consider refactoring PanelView to keep number of public methods under 10. (undefined)

(TooManyPublicMethods)


[warning] 28-741: The class PanelView has an overall complexity of 57 which is very high. The configured complexity threshold is 50. (undefined)

(ExcessiveClassComplexity)


[error] 28-741: The class PanelView has a coupling between objects value of 38. Consider to reduce the number of dependencies under 13. (undefined)

(CouplingBetweenObjects)

🔇 Additional comments (4)
tests/FluentPanelViewTest.php (1)

97-97: LGTM!

src/Panel.php (1)

12-14: LGTM!

Also applies to: 19-19, 24-24, 29-29, 38-38, 43-43, 47-47, 59-59, 67-67, 71-71

CHANGELOG.md (1)

8-10: LGTM!

.gitignore (1)

15-16: 📐 Maintainability & Code Quality

The unanchored patterns match directories named examples and internal at any depth. However, the repository documentation does not establish that these directories are root-only or that nested directories must remain tracked. This is a conditional scope preference, not a demonstrated defect.


📝 Summary

Summary by CodeRabbit

  • Breaking Changes

    • Removed panel activity controls; panels can no longer be marked active or queried for activity.
    • Empty captures no longer automatically open panels.
  • Documentation

    • Updated registration guidance to use configuration arrays for collectors and panels.
    • Clarified configurable titles, icons, positions, and IDs, including host-overridable defaults.
    • Updated the changelog and panel presentation guidance to reflect the revised API.

Walkthrough

The change removes PanelView activity state and its public API. Tests and documentation now use content and configuration defaults without activity handling. The changelog records the breaking change, and .gitignore excludes local scaffold directories.

Changes

Panel API and integration

Layer / File(s) Summary
Remove PanelView activity state
src/PanelView.php, tests/*
PanelView no longer stores or exposes activity state. Related constructor calls, tests, and activity assertions were removed.
Update panel contracts and registration documentation
src/Panel.php, README.md
Panel constants and accessors are documented as host-overridable defaults. Registration examples use configuration arrays and no longer call activity methods.
Record release and repository metadata changes
CHANGELOG.md, .gitignore
The changelog records the version update and breaking API change. Local examples/ and internal/ directories are ignored.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to 22ffc

The breaking API removal is recorded in the changelog and the current README reflects the supported API. No actionable merge-blocking risk remains.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarizes the breaking removal of the activity API, provider-default documentation, and README registration updates.
Description check ✅ Passed The description identifies the pull request as a breaking change, which matches the removal of the panel activity API.
Docstring Coverage ✅ Passed Docstring coverage is 82.35% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 17 functions across 3 files. (3 skipped: 3 …
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

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

A rabbit trims the active thread
The panel keeps its content instead
Defaults now guide the host’s hand
Config arrays make choices stand
Tests hop lightly, clean and bright

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

@codecov

codecov Bot commented Sep 17, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (4d693c7) to head (22ffc0e).
⚠️ Report is 1 commits behind head on main.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@             Coverage Diff             @@
##                main        #6   +/-   ##
===========================================
  Coverage     100.00%   100.00%           
+ Complexity       120       118    -2     
===========================================
  Files             34        34           
  Lines            237       233    -4     
===========================================
- Hits             237       233    -4     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

@terabytesoftw
terabytesoftw merged commit b27b768 into main Sep 17, 2026
41 checks passed
@terabytesoftw
terabytesoftw deleted the refactor/remove-activity-api branch September 17, 2026 20:05
@terabytesoftw terabytesoftw added the enhancement New feature or request label Sep 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant