Streaming Event type, type hint, should support union type
Maintainers usually reply within 2 days
@mvanhorn is already working on this.
Since Apr 8, 2026.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 66/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- python
- Domain
- backend-api-design
Research direction
Locate the streaming_action.pydantic entry point and its stream_type annotation, then inspect how the annotation is validated or exposed to type checkers. Confirm the existing behavior with the union example from the issue and add or update focused coverage if the surrounding tests provide a suitable location. Done means union types of BaseModel variants are accepted without the type hint being reported as invalid.
Written by the indexing model from the issue text.
Description
Current behavior
When it's a union type it complains:
union = MyModel1 | MyModel2
@streaming_action.pydantic(
reads=[...],
writes=[...],
state_input_type=...,
state_output_type=...
stream_type=union, # type hint says this is invalid
)
because it is typed with :
stream_type: Union[Type["BaseModel"], Type[dict]],
Library & System Information
Latest burr
Expected behavior
It should be fine.
Additional context
The fix I think is to expand that stream type to handle a union of BaseModel types.
- Dominant language
- Python
- Stars
- 2.6k
- Forks
- 199
- Avg merge
- 3d 10h
- Merged PRs (30d)
- 6
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from apache/burr
-
status/needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
apache/burr#809 · 2 comments ·
Maintainers usually reply within 2 days
-
Add more instructions for applying ORM migrations for S3 deploymentPossibly taken A pull request linked to this issue is open or already merged. Openarea/storage area/ui help wanted kind/documentation priority/low
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
apache/burr#524 · 11 comments ·
Maintainers usually reply within 2 days
-
Add documentation on how to run the Burr UI serverMay be free again A pull request for this issue was closed without being merged. Openarea/ui good first issue kind/documentation priority/low
Difficulty 2/5 Half a day Newbie friendliness 68/100
apache/burr#272 · 5 comments ·
Maintainers usually reply within 2 days
-
status/needs-triage
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Maintainers usually reply within 2 days
-
status/needs-triage
Difficulty 3/5 1-2 days Newbie friendliness 35/100
Maintainers usually reply within 2 days
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 3 days
-
Negation with "not" and "no" is ignored during sentiment analysisPossibly taken @vivek-3728 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
techcsispit/mess-mood#11 · 1 comment ·
-
changelog investigate
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
ramnes/notion-sdk-py#408 ·
-
good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
btclib-org/btclib-wallet#267 ·
Maintainers usually reply within 1 day
-
good first issue tech-debt
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
knnmelprop/YAADO#111 ·