microsoft_exchange_online_message_trace: fix pagination with single-quote-escaped skiptoken#19401
microsoft_exchange_online_message_trace: fix pagination with single-quote-escaped skiptoken#19401kcreddy wants to merge 4 commits into
Conversation
…uote-escaped skiptoken The Microsoft Graph beta messageTraces endpoint wraps recipient addresses containing apostrophes in single quotes with doubled internal apostrophes (PowerShell string-literal escaping) inside the base64-encoded skiptoken JSON. Its own backend then rejects the token with "Invalid starting recipient address", causing an infinite 400-error retry loop. Extend the existing skiptoken sanitisation (which already handles double-JSON-encoded values) to also detect and clean single-quote- wrapped values: strip the outer quotes and replace '' with '. The system test adds a fourth pagination page exercising this case.
|
Pinging @elastic/security-service-integrations (Team:Security-Service Integrations) |
✅ Elastic Docs Style Checker (Vale)No issues found on modified lines! The Vale linter checks documentation changes against the Elastic Docs style guide. To use Vale locally or report issues, refer to Elastic style guide for Vale. |
This comment has been minimized.
This comment has been minimized.
TL;DRBuildkite failed because the generated package README no longer matches the checked-in Remediation
Investigation detailsRoot CauseThis is a configuration/docs drift failure: package fixture output changed, but Evidence of stale README content:
Current expected pipeline fixture output has different values and no defender tag:
The Buildkite failure log shows this exact diff and then fails with:
Evidence
Verification
Follow-upAfter regenerating docs, check whether any fixture/sample updates in this PR intentionally changed sender/recipient examples; if yes, the README refresh should be committed in the same PR to keep CI green. Note 🔒 Integrity filter blocked 2 itemsThe following items were blocked because they don't meet the GitHub integrity level.
To allow these resources, lower tools:
github:
min-integrity: approved # merged | approved | unapproved | noneWhat is this? | From workflow: PR Buildkite Detective Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not. |
| { | ||
| k: (v.has_prefix('"') && v.has_suffix('"')) ? | ||
| v.decode_json().as(dv, is_error(dv) ? v : dv) | ||
| : (v.has_prefix("'") && v.has_suffix("'")) ? |
There was a problem hiding this comment.
It's not like I don't trust them, but can we also check that the length is at least 2?
|
✅ All changelog entries have the correct PR link. |
🚀 Benchmarks reportTo see the full report comment with |
💚 Build Succeeded
History
cc @kcreddy |
Proposed commit message
Checklist
changelog.ymlfile.How to test this PR locally