Repository navigation
ci(repo): resolve sibling packages in pana and always report legacy analysis - #206
Conversation
Pana resolves a package on its own, so stream_core_flutter's dependency on stream_core came from pub.dev and missed changes in the same checkout. Point it at ../stream_core and pass the project root, as the chat repo does. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012vTgFwqhUc2wKCWrw635yC
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 42 minutes. View limit details
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Action and score configuration .github/actions/pana/action.yml, .github/workflows/pana.yml |
The action rewrites a present stream_core dependency to ../stream_core and passes the GitHub workspace as --project-root. The workflow lowers stream_core_flutter’s minimum score from 120 to 110 and updates the listed score deductions. |
Priority:
Estimated code review effort: 2 (Simple) | ~10 minutes
Change: Other
Suggested reviewers: renefloor
Merge Risk: 
Minimal · previous review 9713f
-
The dependency rewrite leaves the manifest intact when no rewrite is needed. No actionable merge-blocking issue remains after normal checks.
Pre-merge checks: 
4
-
Full details: Title check
-
Explanation
The title names two changes: resolving sibling packages in pana, and always reporting the legacy analysis. The raw summary covers the pana sibling-path rewrite and score change. It does not mention the legacy analysis gate or workflow change, though the PR objectives omit it too. The title is partially related: it refers to real changes, but the legacy-analysis part is not in the summary. The title is specific, uses the conventional commit form, and avoids vague terms.
Full details: Description check
-
Explanation
The description follows the template. It gives the Linear and GitHub issue context implicitly, describes the two fixes, explains the pana sibling-package problem and the legacy workflow gate, and lists verification steps. Required template items are missing: the Linear field ("FLU-") is not filled, the CLA checkboxes are not marked, and the Screenshots/Videos section is absent. Those gaps are administrative, so the description is mostly complete.
-
Finishing Touches
-
🧪 Generate unit tests (beta)
-
- Commit to this branch
- Create a new PR
-
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
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.
Comment @coderabbitai help to get the list of available commands.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #206 +/- ##
=======================================
Coverage 71.46% 71.46%
=======================================
Files 215 215
Lines 8884 8884
=======================================
Hits 6349 6349
Misses 2535 2535 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012vTgFwqhUc2wKCWrw635yC
VelikovPetar
left a comment
There was a problem hiding this comment.
Approving - should we maybe file a ticket to try to increase the min pana score when it becomes possible?
The workflow-level paths filter skipped the whole workflow on PRs that don't touch packages, so the required check never reported and the PR stayed blocked. Decide in a gate job instead, as the chat repo does: a job skipped by `if` reports success. The gate also runs the analysis on pushes, which the old draft check skipped. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012vTgFwqhUc2wKCWrw635yC
Two CI fixes. Each one could block a PR that has nothing wrong with it.
Pana resolves sibling packages from the checkout
Pana analyzes a package on its own, so a dependency on a sibling package came from pub.dev instead of the checkout. When a PR adds API to
stream_coreand uses it instream_core_flutter, pana reported "method isn't defined" and scored 40/160. #205 does exactly this withfindLinkAt.stream_core_flutter'sstream_coredependency topath: ../stream_core. It does this only when the dependency exists, using oneyqline in the same shape as the chat repo's action, and it passes--project-root.stream_core_flutter's minimum drops from 120 to 110. The path dependency raises a "publishable packages can't have path dependencies" warning that costs 10 points. The comment now lists that loss and the one fromshimmer4.0.0.analyze_legacy_versionalways reportsThe workflow had an
on.pathsfilter. On a PR that doesn't touchpackages/**, like this one, GitHub skipped the whole workflow, so the required check never reported and the PR stayed blocked. Agatejob now makes the decision, ported from the chat repo's workflow. When the analysis job is skipped through itsif, it reports success.The gate also fixes push runs. The old
if: github.event.pull_request.draft == falsewas false on a push tomain, so the analysis never ran there.How it was verified
--project-root.main,stream_core_flutterhas nostream_coredependency yet. This PR's own pana run checks that the rewrite leaves it untouched, which should keep it at 120.🤖 Generated with Claude Code
https://claude.ai/code/session_012vTgFwqhUc2wKCWrw635yC