Skip to content

fix(ofrep): use correct EventStream.endpoint struct#5669

Merged
kodiakhq[bot] merged 2 commits into
v2from
rd/v2/ofrep-sse
Apr 23, 2026
Merged

fix(ofrep): use correct EventStream.endpoint struct#5669
kodiakhq[bot] merged 2 commits into
v2from
rd/v2/ofrep-sse

Conversation

@erka

@erka erka commented Apr 4, 2026

Copy link
Copy Markdown
Contributor

EventStream proto changes are not released yet so it isn't a breaking change at proto level

@erka
erka requested a review from a team as a code owner April 4, 2026 16:21
@dosubot dosubot Bot added the size:L This PR changes 100-499 lines, ignoring generated files. label Apr 4, 2026
@github-actions

github-actions Bot commented Apr 4, 2026

Copy link
Copy Markdown
Contributor

The latest Buf updates on your PR. Results from workflow Proto / proto-lint (pull_request).

BuildFormatLintBreakingUpdated (UTC)
✅ passed✅ passed✅ passed❌ failed (2)Apr 22, 2026, 2:09 PM

@codecov

codecov Bot commented Apr 4, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 59.97%. Comparing base (0365d4a) to head (b1fea6f).
⚠️ Report is 3 commits behind head on v2.

Additional details and impacted files
@@            Coverage Diff             @@
##               v2    #5669      +/-   ##
==========================================
- Coverage   61.15%   59.97%   -1.18%     
==========================================
  Files         141      141              
  Lines       14181    17975    +3794     
==========================================
+ Hits         8672    10781    +2109     
- Misses       4777     6462    +1685     
  Partials      732      732              
Flag Coverage Δ
integrationtests 33.41% <85.71%> (-1.03%) ⬇️
unittests 51.20% <95.23%> (-0.86%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@erka erka added automerge Used by Kodiak bot to automerge PRs v2 Flipt v2 labels Apr 4, 2026
@erka
erka force-pushed the rd/v2/ofrep-sse branch 2 times, most recently from 0ea796a to aef0671 Compare April 16, 2026 14:52
@erka
erka force-pushed the rd/v2/ofrep-sse branch from aef0671 to 5be1260 Compare April 18, 2026 16:12

@markphelps markphelps left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice one!

@kodiakhq
kodiakhq Bot merged commit 61aa322 into v2 Apr 23, 2026
31 of 34 checks passed
@kodiakhq
kodiakhq Bot deleted the rd/v2/ofrep-sse branch April 23, 2026 21:07
@github-project-automation github-project-automation Bot moved this to Done in Flipt V2 Apr 23, 2026
erka added a commit that referenced this pull request Jun 1, 2026
- The origin field was marked as optional in grpc and it was always returned
as an empty string, which breaks the ofrep-web JS client logic for
constructing the streaming URL.
- The snapshotDigest was removed to align with current implementation
details in the ofrep-web JS client. Removing it causes an extra
re-evaluation fetch to the bulk endpoint on each (re)connect. Ideally,
it should be avoided but I don't see a good solution at the moment.
- Include Etag in CORS exposed headers for cross-origin reads. The
Access-Control-Expose-Headers response header only listed Link, preventing
browser JS from reading the Etag header cross-origin. This broke
conditional request caching via If-None-Match. Added Etag to the exposed
headers list.

related #5669 61aa322

Signed-off-by: Roman Dmytrenko <[email protected]>
erka added a commit that referenced this pull request Jun 1, 2026
- The origin field was marked as optional in grpc and it was always returned
as an empty string, which breaks the ofrep-web JS client logic for
constructing the streaming URL.
- The snapshotDigest was removed to align with current implementation
details in the ofrep-web JS client. Removing it causes an extra
re-evaluation fetch to the bulk endpoint on each (re)connect. Ideally,
it should be avoided but I don't see a good solution at the moment.
- Include Etag in CORS exposed headers for cross-origin reads. The
Access-Control-Expose-Headers response header only listed Link, preventing
browser JS from reading the Etag header cross-origin. This broke
conditional request caching via If-None-Match. Added Etag to the exposed
headers list.

related #5669 61aa322

Signed-off-by: Roman Dmytrenko <[email protected]>
erka added a commit that referenced this pull request Jun 3, 2026
…port (#5957)

- The origin field was marked as optional in grpc and it was always returned as an empty string, which breaks the ofrep-web JS client logic for constructing the streaming URL.
- The snapshotDigest was removed to align with current implementation details in the ofrep-web JS client. Removing it causes an extra re-evaluation fetch to the bulk endpoint on each (re)connect. Ideally, it should be avoided but I don't see a good solution at the moment.
- Include Etag in CORS exposed headers for cross-origin reads. The Access-Control-Expose-Headers response header only listed Link, preventing browser JS from reading the Etag header cross-origin. This broke conditional request caching via If-None-Match. Added Etag to the exposed headers list.
- Move SSE stream endpoint to /ofrep/v1/_stream/{env}/{ns}/events to support skip authentication for in-process OFREP stream requests

related #5669 61aa322

Signed-off-by: Roman Dmytrenko <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automerge Used by Kodiak bot to automerge PRs size:L This PR changes 100-499 lines, ignoring generated files. v2 Flipt v2

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants