Skip to content

E2E: async context propagation on Spring Boot sample - #344

Open
Mishenevd wants to merge 1 commit into
feat/executor-context-propagation-instrumentationfrom
feat/async-context-propagation-e2e
Open

E2E: async context propagation on Spring Boot sample#344
Mishenevd wants to merge 1 commit into
feat/executor-context-propagation-instrumentationfrom
feat/async-context-propagation-e2e

Conversation

@Mishenevd

@Mishenevd Mishenevd commented Aug 17, 2026

Copy link
Copy Markdown
Collaborator

Last of the stack, on top of #343 — an end-to-end proof rather than new agent code.

Seven /api/pets/create/async/* endpoints on the Spring Boot Postgres sample run the same SQL insert, each offloaded to a worker a different way: the JDK executor types plus Spring's TaskExecutor and @Async. The e2e (spring_boot_postgres.py) fires the SQLi payload at each one and expects it to be blocked, which only happens if the context survived the thread hop.

So it doubles as a regression net for #342/#343: if propagation breaks for any of these async styles, one of these endpoints stops blocking.

@codecov

codecov Bot commented Aug 17, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@Mishenevd
Mishenevd force-pushed the feat/async-context-propagation-e2e branch from ac77805 to decfedc Compare August 17, 2026 10:54
@Mishenevd
Mishenevd force-pushed the feat/async-context-propagation-e2e branch from decfedc to 3e8d4ce Compare August 17, 2026 15:58
@Mishenevd
Mishenevd force-pushed the feat/async-context-propagation-e2e branch from 3e8d4ce to 64e930b Compare August 17, 2026 16:33
@Mishenevd
Mishenevd force-pushed the feat/async-context-propagation-e2e branch from 64e930b to 1b996f6 Compare August 17, 2026 16:40
@Mishenevd
Mishenevd force-pushed the feat/async-context-propagation-e2e branch from 1b996f6 to fc28bce Compare August 17, 2026 23:49
Demonstrate request-context propagation end to end across the JDK executor types and Spring's TaskExecutor / @async: seven /api/pets/create/async/* endpoints run the SQL insert on a worker thread and must still detect the SQLi payload. Wire the matching end2end payloads into spring_boot_postgres.
@Mishenevd
Mishenevd force-pushed the feat/async-context-propagation-e2e branch from fc28bce to da9a18a Compare August 17, 2026 23:54
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