Skip to content

feat(chart): krateo-sse-proxy 0.1.15 — image 1.1.9, the sargable poll cursor and windowed /events - #69

Merged
braghettos merged 1 commit into
mainfrom
feat/sse-proxy-0.1.15-image-1.1.9
Oct 14, 2026
Merged

braghettos merged 1 commit into
mainfrom
feat/sse-proxy-0.1.15-image-1.1.9

Conversation

@braghettos

Copy link
Copy Markdown
Collaborator

Bumps the sse-proxy image to 1.1.9 (krateo-platformops/sse-proxy#25, PR #26 merged as f1d87504; tag 1.1.9 peels to that commit; the image ghcr.io/krateo-platformops/sse-proxy:1.1.9 exists). The templates are unchanged.

What 1.1.9 fixes (measured on krateo-057, read-only)

  • Poll cursor. toUnixTimestamp(Timestamp) > N becomes Timestamp >= toDateTime64(N+1, 9), which selects the same rows. EXPLAIN indexes=1 per poll: 53 parts / 731 granules → 1 part / 1 granule. Before the fix, the poller used ~3.25 of ClickHouse's 4-core limit (~828 polls an hour, ~4.25M rows each), and ClickHouse sat at its CPU limit.
  • /events. Newest window first (1h, 24h, then unbounded). Results are identical to the unbounded query; granules read: unfiltered 730 → 4, devday-milan 528 → 86. Equivalence was checked on 057 with pinned samples (count + cityHash64 match).
  • Independent gate: reviewer-small PASS from pushed SHA f61dd601.

Diff

Verified locally: helm lint passes, and helm template renders image: "ghcr.io/krateo-platformops/sse-proxy:1.1.9". gitleaks: no leaks.

Publishing (do not reuse tag 0.1.15)

release-oci.yaml fires on any X.Y.Z tag. Each run packages every first-class chart under charts/ at the literal version in its own Chart.yaml, then pushes all of them. None of these charts uses the CHART_VERSION/APP_VERSION placeholders, so the tag name only triggers the run; it does not version anything. Tag 0.1.15 already exists (2026-09-02, on 4679ee5), so it cannot be pushed again. Publish with a workflow_dispatch of release-oci on main after this merges (inputs can stay empty), or by pushing a new unused tag on the merge commit.

No roll is requested here.

🤖 Generated with Claude Code

https://claude.ai/code/session_01EzZ1gXDHbHVhPh2bbE8yfi

… cursor and windowed /events

The poll cursor no longer wraps Timestamp in a function. Per poll, EXPLAIN goes
from 53 parts / 731 granules to 1 part / 1 granule, which frees ~3.25 of
ClickHouse's 4 cores on krateo-057. /events tries the newest window first and
returns results identical to the unbounded query (sse-proxy#25/#26;
reviewer-small PASS).

values.yaml image.tag is bumped together with appVersion, as in #65 and #67.
The pinned tag takes precedence over the .Chart.AppVersion default, so an
appVersion-only bump would keep rendering 1.1.8.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EzZ1gXDHbHVhPh2bbE8yfi
@braghettos
braghettos merged commit 687d8f0 into main Oct 14, 2026
11 checks passed
@braghettos
braghettos deleted the feat/sse-proxy-0.1.15-image-1.1.9 branch October 14, 2026 08:42
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