Skip to content

Story 15.2 — Daily product-instance telemetry ping (elasticsql)#117

Merged
fupelaqu merged 3 commits into
feature/15.3from
feature/15.2
Jun 22, 2026
Merged

Story 15.2 — Daily product-instance telemetry ping (elasticsql)#117
fupelaqu merged 3 commits into
feature/15.3from
feature/15.2

Conversation

@fupelaqu

Copy link
Copy Markdown
Contributor

Epic 15 / Story 15.2 — the elasticsql slice of the daily product-instance telemetry ping.

⚠️ Stacked on #111 (feature/15.3) — merge AFTER it. Base is feature/15.3, not release-r1.

What

  • Enum (A11): LicenseType.values; new sealed trait ProductType extends Feature + object ProductType; AdbcDriver replaces OdbcDriver, Repl added; Feature.values/fromString/toSnakeCase now 8 (snake jdbc_driver|adbc_driver|flight_sql|federation|repl).
  • Opt-out (A8): NEW TelemetryConfig.load over the NEW top-level softclient4es.telemetry.enabled (DISTINCT from softclient4es.license.telemetry.enabled); NEW softclient4es.telemetry { enabled = true } in reference.conf.
  • Strategy seam (A15): LicenseRefreshStrategy.emitInstancePing(...) default no-op so the REPL (core, Apache) emits through the strategy without depending on the ELv2 extensions transport.
  • REPL: session timing; commands_executed at executeStatement+executeBatch (NOT the shared executeStatementDirect — OQ-3/P3); bounded (~2s) session-end ping + >24h daily timer.

Tests

62 licensing tests pass (incl. new ProductTypeSpec/TelemetryConfigSpec); cross-compile clean 2.12+2.13.

Closes #116. Sibling PRs: extensions, jdbc, arrow, license-server.

🤖 Generated with Claude Code

fupelaqu and others added 3 commits June 22, 2026 07:43
…lice (Story 15.2)

Enum changes (A11): LicenseType.values; ProductType marker + object; AdbcDriver
replaces OdbcDriver, Repl added; Feature.values/fromString/toSnakeCase now 8.
NEW TelemetryConfig.load over the NEW top-level softclient4es.telemetry.enabled
opt-out (A8, distinct from license.telemetry.enabled). NEW
LicenseRefreshStrategy.emitInstancePing seam (A15) so the REPL emits through the
strategy without depending on the ELv2 transport. REPL: session timing,
commands_executed at the executeStatement/executeBatch choke-points (OQ-3/P3),
bounded session-end ping + >24h daily timer.

Cross-compile clean 2.12+2.13; 62 licensing tests pass.

Stacked on feature/15.3 (#111). Closes #116

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@fupelaqu fupelaqu marked this pull request as ready for review June 22, 2026 07:25
@fupelaqu fupelaqu merged commit 2c46537 into feature/15.3 Jun 22, 2026
2 checks passed
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