Message Popups Troubleshooting
Why is payload content masked?
Payload masking is usually not a random UI issue. It is a deliberate permission outcome.
Check this chain:
- can the user see the flow at all
- is the flow blocked for the
payloadsresource - does the response contain
masked: true - does the response contain
restricted_resources: ["payloads"]
If all of that is true, the system is behaving as designed.
Why are custom headers replaced with ***?
That happens when the user can still see the message row, but the flow is blocked for custom_headers.
Typical detail outcome:
- message remains visible
- header names may still be visible
- header values are replaced with
*** restricted_resourcescontainscustom_headers
Why can I see payload rows but cannot download payload content?
Those are two different permission layers:
- payload metadata list can still be shown in masked form
- raw payload download is denied by the download endpoint
The blocking error path in the backend is effectively:
- flow visible enough for metadata
- payload resource restricted
- download endpoint raises
PermissionDenied
Why are message details stale although the tenant is active?
The message popup reads synchronized monitoring data, not a guaranteed live CPI state.
Check:
jobs.messages.config.enabledlast_run_hotlast_run_cold- whether the messages loop is still waiting for packages
- whether hot or cold sync cadence matches your expectation
See Worker Runtime Troubleshooting.
Why are correlations or runs missing?
Possible explanations:
- correlation count is only
0or1 - correlated messages are filtered by scope
- runs were not persisted for this message yet
- you are reading a message row that exists, but its deeper related runtime entities are still incomplete
Typical field clues
| Field | Diagnostic hint |
|---|---|
payloads_count = 0 | no persisted payload rows yet |
runs_count = 1 | only one run persisted or known |
customheaders_count = 0 | no stored custom headers |
correlation_ncount <= 1 | no meaningful correlation set |
restricted_resources not empty | permission-based masking is active |
Why does the popup not match alert behavior?
The popup and alerting are related, but not identical:
- the popup is the inspection layer
- alerting is the evaluation layer built on top of stored runtime data
So a missing message alert can coexist with visible failed messages if:
- alert definitions do not match those messages
- suppression or outdated logic changed alert visibility
- alert loop timing is behind message sync timing