Skip to content

[19.0][MIG] sentry_client: Migration to 19.0 - #14

Open
dnplkndll wants to merge 2 commits into
19.0from
19.0-add-sentry_client
Open

[19.0][MIG] sentry_client: Migration to 19.0#14
dnplkndll wants to merge 2 commits into
19.0from
19.0-add-sentry_client

Conversation

@dnplkndll

Copy link
Copy Markdown

Port of sentry_client 18.0→19.0 (ledoent fork; based on OCA#3627, 18.0). 19.0 fixes: user.groups_iduser.all_group_ids + mapped('category_id')mapped('privilege_id.category_id') (res.groups privilege layer). Fork-internal PR for CI.

@dnplkndll
dnplkndll force-pushed the 19.0-add-sentry_client branch 2 times, most recently from ae4066b to 68b4049 Compare September 8, 2026 21:05
…nfig

Backport of the 19.0 module (OCA#3622) to 18.0. Identical
feature set; only the API surfaces that changed between series are
adapted:

- `user.all_group_ids` (19.0) → `user.groups_id` (18.0). 19.0 split the
  groups field into a stored direct collection plus a computed
  transitive closure; on 18.0 `groups_id` already returns the full set.
- `group.privilege_id.category_id` (19.0) → `group.category_id` (18.0).
  19.0 introduced the privilege layer between groups and categories;
  on 18.0 groups carry the category directly.
- Config-file fallback reads the top-level `sentry_*` options from
  odoo.conf's `[options]` section — the layout the server-side `sentry`
  module actually uses on 18.0 (the dedicated `[sentry]` section only
  exists from 19.0).
- Manifest version `18.0.1.0.0`.

Everything else — Connection UI block (Browser DSN / Environment /
Release) with odoo.conf fallback, four tier toggles with sample-rate
knobs, vendored Sentry SDK under `static/lib`, the `error_handlers`
registry entry as the single backend capture path, per-tab UUID +
`workflow_id` + `surface` tags, per-user replay opt-out, and the public
`/sentry_client/config.json` endpoint — ports verbatim.

The OWL `error_handlers` registry, settings `<block>`/`<setting>`
pattern, and asset bundle keys are identical between 18.0 and 19.0.

The systray feedback launcher is an `o_nav_entry` button with
`fa-bullhorn` (Sentry's own feedback iconography) — deliberately not
`fa-bug`, which is the debug-mode systray icon beside it.

Assisted-by: Claude Fable 5
Assisted-by: Claude Opus 5
Cherry-pick of the 18.0 [ADD] commit on top of 19.0 base, plus the
three API adaptations 19.0 introduced:

- `user.groups_id` → `user.all_group_ids`. 19.0 split the groups field
  into a stored direct collection (`groups_id`) plus a computed
  transitive closure (`all_group_ids`); we want the closure so role
  tags include inherited groups.
- `group.category_id` → `group.privilege_id.category_id`. 19.0
  introduced the privilege layer between groups and categories.
- Manifest version `18.0.1.0.0` → `19.0.1.0.0`.

Everything else — Connection UI block, four tier toggles with
sample-rate knobs, vendored Sentry SDK under `static/lib`, OWL
ErrorBoundary capturing the wrapping error and dedup-marking it,
per-tab UUID + `workflow_id` + `surface` tags, per-user replay opt-out,
the public `/sentry_client/config.json` endpoint, the systray feedback
launcher, the three split Tier-3 settings cards — ports verbatim.

The OWL `error_handlers` registry, settings `<block>`/`<setting>`
pattern, asset bundle keys (`web.assets_backend`,
`web.assets_frontend`), `@web/core/registry` imports, `_t` translation
idiom, and `Component` from `@odoo/owl` are all identical between 18.0
and 19.0.

Assisted-by: Claude Fable 5
@dnplkndll
dnplkndll force-pushed the 19.0-add-sentry_client branch from 68b4049 to 6cbef8b Compare September 9, 2026 00:24
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