feat: record breadcrumbs for events that implement ReportsBreadcrumb - #2
Conversation
|
Note Kodizm (AI-generated). May contain mistakes; verify before acting. The change looks correct and small, but CI is red on this commit; I can't confirm the cause from the annotations. Minor
Tests
CI
|
|
Note Kodizm (AI-generated). May contain mistakes; verify before acting. Fixes the previous minor finding; nothing new to flag. This commit addresses my earlier note about One thing worth noting rather than flagging: the remover is stored in a TestsThe new test in CI
|
|
Note Kodizm (AI-generated). May contain mistakes; verify before acting. Comment-only update since the last review; nothing new to flag. This commit only rewords the CHANGELOG entry and the doc comments in TestsNo test changes in this commit; the existing double-boot test still covers the behaviour. CI
|
|
Floor only, in 7844b5b. There were no open findings from your last round.
Gates, run locally against magic#205's head (89c4daa) through a temporary CI: @kodizm please re-review. |
|
Note Kodizm (AI-generated). May contain mistakes; verify before acting. Floor-only update since the last review; all prior findings addressed, nothing new.
TestsNo test changes in this commit. The double-boot fix from the prior commit is still covered by CI
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
…lled private constructor
|
Round 5: CI after magic 0.0.22 published.
Fixed in ecd0f0c: Gates on ecd0f0c: @kodizm please re-review. |
|
Note Kodizm (AI-generated). May contain mistakes; verify before acting. All prior findings addressed; CI is now green.
TestsNo new tests needed here; nothing behavioural changed. CI
No further findings. |
Summary
EventBreadcrumbs.breadcrumbFormaps any dispatched magic event that implementsReportsBreadcrumb(breadcrumbCategory,breadcrumbMessage,breadcrumbData) to a Sentry breadcrumb, and answers null for every other event.Event.listenAny, so a plugin (magic_deeplink'sDeeplinkOpened, for example) gets a breadcrumb trail without depending on Sentry. Opt-in by contract: an event that does not implementReportsBreadcrumbnever reaches Sentry.Verification
flutter analyzeclean,flutter test37 passing, format clean.Part of a coordinated set
This PR is one of eight that move reusable, app-agnostic pieces out of Uptizm into the magic framework and its plugins, so any magic app can use them the Laravel way.
Merge order:
fluttersdk/magicfirst: every plugin PR compiles against its new API (SessionScope,Repository,MagicAction,Event.listenAny,ReportsBreadcrumb).magic_deeplink,magic_notifications,magic_paymentsandmagic_sentry, in any order.magic_starter, which uses magic core'sSessionScope,magic_payments'StoreIdentitySyncandmagic_deeplink's gate.magic-starter-laravelis independent of the Flutter side.anilcancakir/uptizmlast.Until magic merges and ships, CI on the plugin PRs resolves the published magic and is expected to be red. Each branch was verified locally against the sibling working trees (analyze, the full test suite, format check).
No version bump, publish or tag is included; a release is a separate step.