On this page
2.3.0 (2026/07/31)
Features
add ai recommend chat (#2441 ) (12ce9f5 )
add domain event-driven redis cache eviction via subscriber service (#2542 ) (887d055 )
add multi-layer caching with domain event invalidation for feature flags and segment users (#2529 ) (cd3ec5a )
add search filter for auto operations (#2507 ) (0d0ec08 )
add variation value schema persistence (#2578 ) (3fc0c55 )
add workflow to trigger ai-docs-update on issue close (#2472 ) (7567fba )
bulk flag duplication across envs (#2527 ) (d68ac60 )
calculator: add sample ratio mismatch (srm) detection (#2655 ) (5060547 )
calculator: add sequential bayes factor stopping rule for always-valid inference (#2664 ) (aedaadc )
calculator: winsorize per-user goal values at p99 before dwh aggregation (#2661 ) (98e8c22 )
implement onboard walkthrough for new user (#2712 ) (5b475f6 )
implement postgres for account svc (#2593 ) (dabe25c )
implement postgres for audit log service (#2589 ) (064b3c2 )
implement postgres for autoops service (#2625 ) (9ffcf3d )
implement postgres for coderef service (#2606 ) (4236565 )
implement postgres for environment svc (#2595 ) (1a44fd6 )
implement postgres for eventcounter svc (#2627 ) (e2e043a )
implement postgres for experiment svc (#2633 ) (6c010c6 )
implement postgres for feature last used info svc (#2587 ) (aa8a8a5 )
implement postgres for feature service (#2575 ) (2dd2ade )
implement postgres for flag trigger svc (#2584 ) (c23fcac )
implement postgres for insight svc (#2635 ) (a6d9a45 )
implement postgres for notification svc (#2636 ) (6b0bbf0 )
implement postgres for ops event (#2608 ) (9282cec )
implement postgres for scheduled feature change svc (#2642 ) (8f5e017 )
implement postgres for segment APIs (#2576 ) (901ae41 )
implement postgres for subscribers and refactor dwh layer (#2650 ) (6f54019 )
implement postgres for tag svc (#2583 ) (a6eb084 )
implement postgres query builder (#2540 ) (0a6cfab )
implement postgres storage for push svc (#2569 ) (22a8a92 )
implement PostgreSQL as data warehouse option (#2300 ) (291212c )
implement priority class option to chart manifest (#2428 ) (76af04b )
implement update admin notification (#2721 ) (c946f12 )
init postgres migration and helm chart, compose config (#2426 ) (0acd4ee )
insights: add 2 and update 1 Prometheus metrics (#2389 ) (512491b )
insights: add a daily batch of MAU (#2443 ) (96b1145 )
insights: add Prometheus request count to monthly summary batch (#2444 ) (79e9e27 )
insights: add SQL of creating monthly_summary (#2392 ) (1173b25 )
insights: count DAU in APIs (#2391 ) (41bba3d )
insights: count DAU in evaluation_count_event_persister (#2437 ) (7007184 )
insights: defined the proto (#2390 ) (82f2bec )
insights: impl 5 APIs (#2448 ) (0b834a3 )
map synonym to improve correction (#2598 ) (3a9ddea )
notification: add notification center proto contract and service skeleton (#2690 ) (8d5009f )
notification: add notification center table migrations (#2697 ) (d938a4f )
notification: implement CreateNotification API (#2708 ) (b2d62d1 )
notification: implement DeleteAdminNotification API (#2731 ) (d996382 )
notification: implement ListDraftAdminNotifications API (#2710 ) (e4f88c1 )
notification: implement PublishAdminNotification API (#2733 ) (23b90bb )
obfuscate API key in the UI console (#2463 ) (726f105 )
postgres implementation for team (#2637 ) (60923b6 )
realtime-sync: add SSE stream evaluations messages (#2592 ) (4d9350f )
remove command layer and redundant API in feature package (#2393 ) (6b3e5cc )
show relative lift and make the confidence banner metric-aware (#2658 ) (029e842 )
split has_auto_ops filter into active and finished (#2616 ) (df2926b )
sse: implemented the evaluation logic and add 7 metrics (#2665 ) (f1bc1f0 )
sse: prepare the fan-out dispatcher (#2630 ) (74b9f52 )
stream: add Envoy circuit breaker and connection budget for SSE (#2698 ) (b9b0e4f )
stream: add graceful shutdown for SSE connections (#2675 ) (eeed7f2 )
stream: add per-pod SSE connection limit (#2676 ) (20c6ad2 )
stream: add SSE connection-based HPA for api gateway (#2699 ) (ac86505 )
stream: add SSE-dedicated service and timeout config for streaming (#2688 ) (72ded5e )
stream: propagate prerequisite-dependent tags in SSE dispatch (#2679 ) (5cae4cc )
support for 3 or more variation when using progressive rollout (#2199 ) (2a54dc3 )
support rule-based user segments (#2723 ) (28f1eb0 )
support rules reorder (#2517 ) (21a0284 )
system admin account have read only permission (#2550 ) (bbd5354 )
ui/dashboard: add auto-archive settings to environment management (#2318 ) (d62bceb )
ui/dashboard: add comprehensive change summary to confirmation dialog (#2147 ) (e165394 )
ui/dashboard: implement ui insight dashboard page (#2450 ) (3cf7a6f )
ui/dashboard: improve the URL to enable to copy (#2522 ) (967ed51 )
ui/dashboard: improvement progress rollout ui/ux (#2351 ) (e1c3eb6 )
ui: add drag-and-drop reordering for segment rules (#2581 ) (0fd8357 )
ui: add recurring setting to schedule auto operation (#2494 ) (176734c )
ui: add reorder discard change (#2537 ) (b521792 )
ui: designate primary goal and drive experiment verdict from it (#2668 ) (1a0e597 )
ui: implement infinite loading for feature flags dropdown (#2362 ) (0dca8d7 )
ui: implement sequential bayes factor confidence banner (#2666 ) (235c931 )
ui: infinite loading for the organization settings (#2541 ) (e7feab9 )
ui: surface sample ratio mismatch (srm) check on the experiment results page (#2656 ) (f6918ed )
Bug Fixes
add grace window to feature flag diff filter to prevent partial-diff trap (#2621 ) (d4adf72 )
add scheduled_feature_change to delete-e2e-data-mysql (#2407 ) (c0100e1 )
add subscription cleanup on shutdown and expiration policy for cache invalidator (#2532 ) (43358d6 )
allow service tokens to bypass system admin read-only restriction (#2610 ) (b08d1ee )
calculator: correct normal-inverse-gamma posterior update for value metrics (#2639 ) (2c5e15f )
calculator: derive normal-inverse-gamma priors from observed data (empirical bayes) (#2651 ) (86efabd )
copy srm result from json blob in operational-db read storage (#2657 ) (425be4b )
default value count not being incremented when using detailed error types (#2398 ) (a03b249 )
devcontainer: deadlock error when using bigquery emulator (#2505 ) (1217e8a )
devcontainer: make httpstan docker targets idempotent (#2370 ) (eceb033 )
dropdown select date range (#2394 ) (8b503fd )
e2e: remove GET method test case from stream request errors (#2696 ) (365e1ec )
eventcounter: deduplicate events by ID in BigQuery count queries (#2738 ) (479cd30 )
feature: persist failed status when scheduled flag change execution fails (#2709 ) (c6e3d7b )
force full payload when GetFeatureFlags diff filter would be empty (#2612 ) (01b08a6 )
include UNKNOWN sdk (#2585 ) (3770e0a )
insights: use longer writeTimeout for batches (#2489 ) (de3d407 )
insights: set longer writeTimeout in batch gateway (#2492 ) (b95697b )
insights: use recordingRule in batch (#2484 ) (7561930 )
make redis non-blocking for graceful degradation (#2440 ) (1499d50 )
persist create-time schedule conflicts and add granular rule clause summaries (#2420 ) (ac87b11 )
pipecd unable to run helm template, missing configuration (#2410 ) (927331e )
postgres can't resolve output column aliases in list features (#2588 ) (adb1995 )
prevent cache-miss thundering-herd cancellation in gateway service (#2551 ) (2c64b50 )
prevent sdk cache staleness caused by requestedAt advancement in none responses (#2462 ) (a27b058 )
progressive rollout watcher to skip stopped/finished rollouts (#2382 ) (b1d05b9 )
publish segment domain events after commit to prevent stale cache refresh (#2740 ) (945f0ed )
remove sourceIds of req=0 for 12Months (#2535 ) (f57a398 )
resolve tar race condition vulnerability (CVE-2026-23950) (#2365 ) (c07e57a )
rest: skip logging for HTTP redirect responses (#2663 ) (728e319 )
scope cross-flag conflict detection to actual dependencies and add recovery helpers (#2417 ) (75f7916 )
segment e2e failed after switch to no command API (#2363 ) (72146e4 )
set longer writeTimeout for longer batches (59318b4 )
stream: prevent buffer overflow in SSE streaming middleware (#2684 ) (0faf970 )
stream: set SSE circuit breaker maxPendingRequests to 100 (#2730 ) (0cdd20e )
subscriber preserve "id" attribute on reclaimed redis stream messages (#2618 ) (04aac8f )
subscriber: discard goal events older than the user's latest evaluation (#2734 ) (6afb699 )
subscriber: retain in-memory buffers when periodic writes fail (#2736 ) (054d068 )
system admin can't see other envs if it's a member (#2601 ) (10496ef )
tighten pdb selectors to exclude job-owned pods (#2599 ) (a7eedbb )
treat pub/sub not found error as ok when deleting cache invalidator subscription (#2549 ) (4e374d5 )
ui/dashboard: fix auto-archive custom days value being reset on modal reopen (#2396 ) (d5875e3 )
ui/dashboard: unsaved leave page switch organization and environment (#2447 ) (7d4b391 )
ui/insights: formatLatency ms (#2523 ) (cf8e348 )
ui/insights: reset SDK filter when switching environments (#2536 ) (ae3ed7f )
ui: auto-generation id stops working after 2 characters (#2622 ) (5fbd407 )
ui: auto-invalidate react query cache on mutations to prevent stale data (#2624 ) (fe7f8a1 )
ui: coerce boolean URL params to prevent silent filter inversion (#2531 ) (24874ae )
ui: copy button stays disabled after discarding the changes (#2594 ) (f93cc23 )
ui: correct split-equally weights and show variation allocation bar (#2643 ) (9b7d73b )
ui: fix stale featureRef, uuid mismatch, and rollout weight unit in segment rule targeting (#2582 ) (9c0a88c )
ui: improve insights dashboard env default and chart y-axis (#2525 ) (8a79729 )
ui: prevent infinite 401 retry loop in axios interceptor (#2452 ) (e1a2495 )
ui: recurring schedule update not recalculating nextExecutionAt (#2519 ) (4aeb0b5 )
ui: remove schedule option from flag switch confirmation modal (#2486 ) (b42ee18 )
ui: render archive warning interpolation (#2678 ) (e9a806a )
ui: replace nested button with span in tooltip triggers on create flag page (#2571 ) (0e20eaa )
ui: resolve console warnings on targeting page (#2372 ) (e96c651 )
ui: show correct cycle dates in recurring schedule timeline (#2515 ) (f32eb6f )
ui: show correct modal for stop/delete operations by type (#2483 ) (80dd23a )
ui: update now option is scheduling instead of updating immediately (#2481 ) (a2d4d90 )
ui: use variation name as label in evaluation chart for YAML/JSON types (#2573 ) (6b464ac )
use resilient token source for google pub/sub to survive spot preemption (#2545 ) (89e6002 )
Miscellaneous
add conflict detection for scheduled flag changes (#2405 ) (dbac468 )
add debug logs for sdk internal errors (#2379 ) (568abca )
add recurring schedule proto definitions and domain logic (#2465 ) (43d8032 )
add recurring schedule support to DatetimeWatcher and api service (#2469 ) (5045124 )
add scheduled flag change executor and cross-flag conflict detection (#2406 ) (781184f )
add scheduled flag changes proto definitions and api stubs (#2368 ) (1923f90 )
add scheduled flag changes ui (#2414 ) (a3b7790 )
add scope label to feature flag cacher metrics (#2380 ) (8f38996 )
add storage layer for scheduled flag changes (#2374 ) (c129d56 )
change default auto-archive unused days from 90 to 60 (#2460 ) (694dc77 )
ci: add --frozen-lockfile in 'yarn install' (#2543 ) (5134afc )
create hack script to create service account for e2e (#2559 ) (832e73c )
devcontainer: add dynamic hack tool dependency tracking (#2419 ) (8fe10fd )
devcontainer: add SSH server to devcontainer base image (#2704 ) (c217029 )
devcontainer: remove unused files (#2705 ) (253f70d )
double error check in get evaluation (#2400 ) (e133a5c )
downgrade cache invalidator shutdown logs to debug (#2563 ) (c9e06c0 )
drop unused mau and mau_summary tables (#2424 ) (adf9761 )
enforce homogeneous schedule types per operation (#2491 ) (49c77c6 )
evaluation: remove gRPC requests and reduce the release package size. (#2431 ) (74d1ec4 )
evaluation: update typescript evaluation version to 0.0.7 (#2359 ) (ab72a0e )
hack: update delete redis retry keys app (#2458 ) (c3c8e11 )
ignore sdk cache not found warning logs (#2526 ) (9165b13 )
implement delete e2e data for postgres (#2659 ) (8749e79 )
implement delete postgres data warehouse data (#2660 ) (b8f7c64 )
implement scheduled flag change API handlers (#2375 ) (5f43fe9 )
improve flag cache update delay when executing auto operations (#2376 ) (b6713b7 )
improve scheduled change summaries with segment and cross-flag names (#2422 ) (dd27215 )
init Claude context window for auto memory (#2546 ) (2f7b6f3 )
init database dump, fix pg host and global yaml config (#2568 ) (48d78dc )
insights: add local prometheus for E2E (#2524 ) (888edb7 )
insights: rename the DAU/MAU key (#2442 ) (d42f42b )
make big query optional in minikube (#2435 ) (860de2f )
metrics: collect prometheus error metric for batch jobs/subscriber (#2626 ) (5c29e30 )
refresh L2 caches on domain events to eliminate cache-miss thundering herd (#2562 ) (65d3548 )
regenerate service token for local development (#2611 ) (c5ac44e )
remove empty environment id migration code (#2459 ) (13b5577 )
remove logging of sensitive information (#2490 ) (ee2b047 )
remove unnecessary warning logs from api svc (#2554 ) (7e28980 )
remove unused mau and mau_summary implementation (#2425 ) (a18f233 )
remove user event persisters (upsert maus) (#2653 ) (f708382 )
replace deprecated ingress k8s config (#2456 ) (bc7e69d )
replace ptypes with google.golang.org/protobuf (#2493 ) (3014b6b )
switch local image to timescale db (#2436 ) (1d3f0f4 )
ui: add typeScript types, api hooks, and i18n for scheduled flag changes (#2409 ) (1c125ad )
ui: enhance flag creation with template tooltips and smart defaults (#2479 ) (5c518db )
ui: implement infinite loader for filter maintainer dropdown (#2560 ) (2600de0 )
ui: improve targeting tab UX with evaluation flow indicators (#2488 ) (3003662 )
ui: improve variation dropdown display and validation error messages (#2500 ) (bcbb169 )
ui: visualize targeting evaluation order with a vertical flow (#2644 ) (5045a6b )
use updated_at for server sdk feature hash to match client sdk (#2383 ) (62e9f60 )
validate variation values against schema (#2683 ) (10d82c8 )
bound metrics event processing with a worker pool (#2564 ) (849ff1f )
optimize evaluation count persistence with aggregation (#2449 ) (04de7e6 )
use in-memory cache for environment API key lookups (#2520 ) (d644360 )
Reverts
Build System
deps-dev: bump @babel/core in /evaluation/typescript (#2647 ) (f46f50e )
deps-dev: bump postcss from 8.5.15 to 8.5.18 in /ui/dashboard (#2726 ) (c67d591 )
deps-dev: bump postcss from 8.5.8 to 8.5.10 in /ui/dashboard (#2558 ) (b652653 )
deps-dev: bump svgo from 3.3.2 to 3.3.3 in /ui/dashboard (#2438 ) (1232279 )
deps-dev: bump svgo from 3.3.3 to 3.3.4 in /ui/dashboard (#2713 ) (a415c5a )
deps-dev: bump vite from 7.3.1 to 7.3.2 in /ui/dashboard (#2516 ) (25f3839 )
deps-dev: bump vite from 7.3.3 to 7.3.5 in /ui/dashboard (#2645 ) (b33654c )
deps-ui: upgrade React to v19 and React Router to v7 (#2502 ) (17fd2a5 )
deps: bump @babel/core from 7.29.0 to 7.29.7 in /ui/dashboard (#2649 ) (ff185c8 )
deps: bump @babel/plugin-transform-modules-systemjs (#2570 ) (1616cf6 )
deps: bump axios from 1.12.0 to 1.13.5 in /ui/dashboard (#2399 ) (2b3e389 )
deps: bump axios from 1.14.0 to 1.15.0 in /ui/dashboard (#2533 ) (76fad2c )
deps: bump axios from 1.15.2 to 1.16.0 in /ui/dashboard (#2602 ) (932fa91 )
deps: bump axios from 1.16.1 to 1.18.0 in /ui/dashboard (#2706 ) (463f502 )
deps: bump benc-uk/workflow-dispatch in the dependencies group (#2603 ) (68b4bc5 )
deps: bump diff from 5.2.0 to 5.2.2 in /ui/dashboard (#2361 ) (1aa6c17 )
deps: bump filippo.io/edwards25519 from 1.1.0 to 1.1.1 (#2415 ) (d6134ce )
deps: bump filippo.io/edwards25519 in /hack/delete-e2e-data-mysql (#2416 ) (3e1a048 )
deps: bump flatted from 3.3.3 to 3.4.2 in /evaluation/typescript (#2471 ) (9a122ce )
deps: bump flatted from 3.3.3 to 3.4.2 in /ui/dashboard (#2470 ) (4ad402a )
deps: bump follow-redirects in /ui/dashboard (#2538 ) (a4df7df )
deps: bump form-data from 4.0.5 to 4.0.6 in /ui/dashboard (#2648 ) (1528290 )
deps: bump github.com/slack-go/slack from 0.21.0 to 0.23.1 (#2579 ) (6c9e6a2 )
deps: bump go.opentelemetry.io/otel (#2557 ) (b5e3e4c )
deps: bump golang.org/x/crypto (#2693 ) (b6f7adc )
deps: bump golang.org/x/crypto in /hack/create-e2e-accounts (#2692 ) (0d73975 )
deps: bump golang.org/x/crypto in /hack/delete-e2e-data-mysql (#2695 ) (8672ae8 )
deps: bump golang.org/x/crypto in /hack/delete-e2e-data-postgres (#2694 ) (edfd637 )
deps: bump golang.org/x/net in /hack/delete-e2e-data-mysql (#2681 ) (9be57f4 )
deps: bump golang.org/x/net in /hack/delete-redis-retry-keys (#2682 ) (04eab89 )
deps: bump google.golang.org/grpc (#2467 ) (ff1de07 )
deps: bump google.golang.org/grpc (#2715 ) (1a9de21 )
deps: bump google.golang.org/grpc from 1.79.1 to 1.79.3 (#2468 ) (451e0f9 )
deps: bump google.golang.org/grpc from 1.82.0 to 1.82.1 (#2717 ) (e1180c6 )
deps: bump google.golang.org/grpc in /hack/delete-e2e-data-mysql (#2466 ) (cab2570 )
deps: bump i18next-http-backend in /ui/dashboard (#2553 ) (261351a )
deps: bump js-cookie from 3.0.5 to 3.0.7 in /ui/dashboard (#2590 ) (73afedc )
deps: bump js-yaml from 4.1.1 to 4.2.0 in /evaluation/typescript (#2646 ) (7dd5105 )
deps: bump js-yaml from 4.2.0 to 4.3.0 in /evaluation/typescript (#2718 ) (e1002ab )
deps: bump js-yaml from 4.2.0 to 4.3.0 in /ui/dashboard (#2716 ) (3353ba9 )
deps: bump lodash from 4.17.21 to 4.17.23 in /ui/dashboard (#2366 ) (7b61d86 )
deps: bump lodash from 4.17.21 to 4.18.1 in /ui/dashboard (#2508 ) (0ccc1bb )
deps: bump lodash in /evaluation/typescript (#2367 ) (c15769b )
deps: bump lodash in /evaluation/typescript (#2509 ) (51582eb )
deps: bump minor dependencies (#2498 ) (1556228 )
deps: bump react-router from 7.16.0 to 7.18.0 in /ui/dashboard (#2714 ) (b635b7b )
deps: bump rollup from 4.45.1 to 4.59.0 in /ui/dashboard (#2430 ) (7f74051 )
deps: bump shell-quote in /evaluation/typescript (#2629 ) (16e4512 )
deps: bump shell-quote in /evaluation/typescript (#2719 ) (bf965df )
deps: bump the dependencies group (#2567 ) (b29fc5d )
deps: bump the dependencies group (#2605 ) (2e2c243 )
deps: bump the dependencies group across 1 directory with 20 updates (#2596 ) (6c93366 )
deps: bump the dependencies group across 1 directory with 33 updates (#2724 ) (ee2fd9f )
deps: bump the dependencies group across 1 directory with 5 updates (#2511 ) (9e1f606 )
deps: bump the dependencies group in /ui/dashboard with 7 updates (#2513 ) (8a8695b )
deps: bump the dependencies group with 10 updates (#2604 ) (bc64be9 )
deps: bump the dependencies group with 12 updates (#2512 ) (8ee6bc0 )
deps: bump the dependencies group with 13 updates (#2671 ) (06cfaea )
deps: bump the dependencies group with 14 updates (#2386 ) (e3593c6 )
deps: bump the dependencies group with 17 updates (#2729 ) (f5e0809 )
deps: bump the dependencies group with 21 updates (#2433 ) (8725a0c )
deps: bump the dependencies group with 21 updates (#2497 ) (0e9f119 )
deps: bump the dependencies group with 3 updates (#2728 ) (39a5c87 )
deps: bump the dependencies group with 4 updates (#2432 ) (914f043 )
deps: bump the dependencies group with 4 updates (#2565 ) (b39eb15 )
deps: bump the dependencies group with 4 updates (#2670 ) (e8d9dab )
deps: bump the dependencies group with 6 updates (#2385 ) (44637bb )
ui: bump uuid from 10.0.0 to 14.0.0 (#2555 ) (fd416c5 )
2.2.0 (2026/01/20)
Features
YAML Flag Type Support: Implemented end-to-end support for YAML flag type (#2217 , #2208 )
API Key Last Used Tracking: Complete implementation including backend tracking (#2175 ), filter by maintainer (#2132 ), and sort order support (#2243 )
Enhanced Authentication: Proactive token refresh with configurable access/refresh token TTLs (#2221 )
Email Service: Support for email service integration (#2220 )
Development Tools: Add bash completion to dev container (#2340 ) and gotestsum for improved test output formatting (#2336 )
UI Improvements: Experiment cache reload optimization (#2190 ) and unsaved changes warning popup (#2141 )
Bug Fixes
Graceful Shutdown & System Resilience: Fixed app and envoy container shutdown (#2155 ), health check race condition (#2177 ), and timeout handling during traffic spikes (#2131 )
API Key Last Used Tracking Fixes: Fixed writer execution after shutdown (#2249 ), database write errors (#2239 ), sort not working (#2245 ), and system admin tracking (#2185 )
Authentication & Token Management: Fixed axios interceptor not waiting for token refresh (#2278 ) and login page flash during token refresh (#2287 )
Feature Flag Cloning: Exclude flag and segment-based rules when cloning (#2309 ), fix clone destination env list (#2201 ), and unsaved changes issues (#2182 )
Experiment Management: Fixed start issues (#2328 ), results loading forever (#2206 ), calculator goroutine stacking (#2196 ), filter drawer (#2140 ), and goal event retry collisions (#2219 )
Organization Management: Fixed wrong role when creating organization (#2252 ) and organization switch not updating after creation (#2191 , #2204 )
UI/Dashboard Improvements: Fixed navigation 404 errors (#2273 ), responsive cards (#2257 ), DOM nesting (#2248 ), evaluation event count display (#2195 ), code editor cancellation (#2261 ), YAML/JSON validation (#2276 ), and environment display (#2238 )
Other Fixes: Fixed flag maintainer update (#2356 ), semver v-prefix normalization (#2355 ), debugger flag search (#2357 ), branch name extraction (#2335 ), feature stale watcher nil pointer (#2167 ), Redis counter deleter (#2165 ), e2e tests (#2319 ), puller log creation (#2158 ), HTTP readiness settings (#2194 ), demo config cleanup (#2174 ), migration job image secrets (#2203 ), API key field usage (#2269 ), progressive rollout default rule (#2329 ), and code refs documentation link (#2275 )
Miscellaneous
API Key System Refactoring: Change to UUID for API key IDs (#2250 ) and migration (#2260 )
Evaluation Library Updates: Update TypeScript evaluation to 0.0.5 (#2161 ) and 0.0.6 (#2232 )
Logging Improvements: Reduce info log verbosity with structured logging (#2168 , #2170 ) and suppress context deadline errors in API events (#2171 )
Development Environment: Use MySQL as data warehouse in dev container (#2345 ), replace deleted minikube images (#2291 ), and set log_bin_trust_function_creators (#2303 )
Legacy Console Cleanup: Remove old console make commands (#2139 ), workarounds from account service (#2255 ), and project name from environment URL code (#2224 )
UI Enhancements: Add last_used_at field in API key list (#2240 ), language field to member create page (#2226 ), reset random sampling tooltip (#2280 ), improve dropdown component (#2156 ), format chart Y values (#2186 ), and update documentation links (#2258 )
Other Changes: Add OpenFeature React provider source ID (#2267 ), implement double-write for environment ID migration (#2341 ), log request info on org creation failure (#2253 ), refactor error messages (#2332 ), remove MAU option temporarily (#2266 ), fix typo (#2350 ), and update copyright to 2026 (#2325 )
Reverts
go-redis dependency to 9.14.1 to avoid healthy connection issues (#2228 ) (e02731b )
Build System
deps-dev: bump vite from 7.0.7 to 7.0.8 in /ui/dashboard (#2159 ) (e71e995 )
deps: bump glob from 10.4.5 to 10.5.0 in /ui/dashboard (#2230 ) (76f6480 )
deps: bump golang.org/x/crypto from 0.43.0 to 0.45.0 (#2237 ) (5ce489f )
deps: bump golang.org/x/crypto in /hack/delete-e2e-data-mysql (#2236 ) (053ad9c )
deps: bump js-yaml from 4.1.0 to 4.1.1 in /evaluation/typescript (#2315 ) (9a532ec )
deps: bump js-yaml from 4.1.0 to 4.1.1 in /ui/dashboard (#2210 ) (0ca65fe )
deps: bump the dependencies group across 1 directory with 19 updates (#2334 ) (df83238 )
deps: bump the dependencies group across 1 directory with 5 updates (#2143 ) (d9c0560 )
deps: bump the dependencies group with 12 updates (#2262 ) (a606429 )
deps: bump the dependencies group with 16 updates (#2188 ) (c7842bf )
deps: bump the dependencies group with 3 updates (#2187 ) (dc33b1e )
deps: bump the dependencies group with 3 updates (#2263 ) (612c9e8 )
deps: bump the dependencies group with 6 updates (#2144 ) (c9c9ad6 )
replace bitnami legacy charts with custom subcharts using official images (#2312 ) (41141f9 )
2.1.1 (2025/09/26)
Bug Fixes
add v2 module path for Go modules v2+ semantic versioning (#2137 ) (5bde96c )
2.1.0 (2025/09/26)
Features
Bug Fixes
change log target to cloned feature (#2107 ) (e2164fd )
dashboard/ui: new operation progressive rollout (#2094 ) (dc70be2 )
resolve missing dependencies in incremental feature flag evaluation (#2135 ) (7dc9b2b )
ui/dashboard: experiment filter search params (#2123 ) (8489257 )
ui/dashboard: progressive rollout manual validate (#2111 ) (338ac00 )
Miscellaneous
Build System
deps-dev: bump vite from 7.0.6 to 7.0.7 in /ui/dashboard (#2117 ) (ec2d34b )
deps: bump axios from 1.11.0 to 1.12.0 in /ui/dashboard (#2122 ) (c75bc33 )
deps: bump the dependencies group with 14 updates (#2100 ) (d62102f )
deps: bump the dependencies group with 14 updates (#2129 ) (cd69a01 )
2.0.0 (2025/08/27)
⚠ BREAKING CHANGES
This release introduces the new Bucketeer 2.0 Console , which replaces the old UI.
Some REST/Proto APIs have been promoted to Public API , and may require updated authentication or endpoint usage.
Team and Organization concepts are now generally available; older account management flows have been deprecated.
Features
New Console UI/UX : Completely redesigned dashboard for usability, speed, and scalability. (#1908 )
Flag Management at Scale : Improved list view with search, filters, and bulk management. (#1600 )
Flag Templates : Added built-in templates for Custom, Release, Kill Switch, and Experiment use cases. (#1755 )
Audience Traffic Allocation : Support for splitting traffic inside rollout segments (e.g. 5% rollout, 50/50 test group). (#1800 )
Organizations & Team Management : Create and manage organizations, environments, API keys, members, and roles. (#1874 , #1872 )
User Attribute Keys in Rules : Console now suggests attribute keys automatically from client SDKs. (#1994 , #2054 )
Debugger Enhancements : Debug multiple users and flags, with grouped results and improved insights. (#1706 )
Code References : Detect and display where flags are referenced in application code. (#1504 )
Scheduled Flag Updates : Schedule future changes to variations, rules, or enabled state. (#1591 )
Progressive Rollouts & Flag Triggers : Public APIs and console workflows for gradual rollouts and auto-disable triggers. (#1526 , #1588 )
Lite Version : Added Docker Compose support for easier self-hosted deployments. (#1836 )
Public API : General availability of programmatic APIs for Flags, Environments, Teams, Goals, Experiments, and more. (#2084 , #2049 )
Bug Fixes
Fixed various console issues with environment switching, member updates, and experiment rendering.
Resolved Redis/cluster consistency for user attributes.
Fixed Docker Compose build issues on Apple Silicon.
Corrected validation and error handling in REST and Public APIs.
Optimized list feature flags query latency.
Added indexes for faster audit log queries.
Improved caching behavior across organizations and environments.
1.3.0 (2025/02/28)
Features
add branch URL generation for code references (#1490 ) (0206276 )
add file extension support for code references (#1493 ) (fd2d38a )
be able to group slack notifications by feature flag tag (#1472 ) (fcd92d2 )
implement create/update environment api no command (#1540 ) (bfc545a )
implement delete goal no cmd (#1473 ) (aa09981 )
implement get create list experiments no command (#1468 ) (9d21e17 )
implement REST experiment result api (#1534 ) (5d0b3ab )
implement REST get/list/create auto ops rule (#1511 ) (277b969 )
implement update experiment REST no command (#1482 ) (6468dba )
ui/dashboard: add tags to slack notifications (#1514 ) (7d8d731 )
ui/dashboard: goals managements (#1451 ) (a8641b3 )
ui/dashboard: improvement tags and table cell view with tooltip (#1452 ) (b2e8c9d )
update/execute/stop auto ops rule REST no command (#1519 ) (856fe8e )
Bug Fixes
add missing experiment status in response (#1492 ) (1092dea )
add order by options and correct experiment summary (#1522 ) (bc2be07 )
ambiguous clause error while deleting a tag (#1483 ) (44c2a19 )
cannot delete all tags in the account update api (#1537 ) (29c1d58 )
evaluation unique count not working for go sdk (#1532 ) (a9557ae )
feature update api not validating required fields before saving (#1527 ) (5ce2051 )
goal in-use-status is always false when the connection type is operation (#1505 ) (e3f44ee )
list tags by environment_id filter (#1479 ) (7c736ef )
ui: displaying the same tag when listing tags (#1478 ) (63b5c72 )
ui: list goals not using the connection type (#1507 ) (dc8a295 )
ui: remove connection type validation from create goal modal (#1502 ) (65b95ee )
update feature api cannot update empty lists (#1509 ) (82029e1 )
Miscellaneous
add auto ops status to the goal connection reference (#1497 ) (8740728 )
add debug log for the notification sender (#1487 ) (3b2ceac )
add error logs while authenticating the user (#1520 ) (105e73c )
add feature name to the goal auto ops reference (#1500 ) (4e0e1a1 )
add fields to update feature api to update the schedule update (#1515 ) (af97827 )
add new error flag reasons for open feature support (#1517 ) (ee8f8e7 )
add schedule update field to feature proto message (#1499 ) (ddbd7f0 )
add schedule update field to feature proto message (#1506 ) (dd1fca7 )
add scheduled_flag_update table and proto message (#1535 ) (47b4ee6 )
add sorting filter for entity type in the list tags api (#1476 ) (3a35f75 )
code ref fields doc (#1485 ) (a3f8c60 )
fix the debug log in the notification sender (#1486 ) (9c83de7 )
implement create and update project with not commands (#1541 ) (ce8c8c8 )
implement rest for list features api (#1543 ) (4bdb42c )
improve bucket hash algorithm using murmurHash3 instead of md5 (#1523 ) (1e5a2c1 )
populate goal table with connection type (#1491 ) (1c90d0a )
support list tags by organization id (#1480 ) (1120b0b )
Reverts
1.2.0 (2025/01/22)
Features
add connection type to goal, query connections when getting goal (#1456 ) (5d01e7f )
add disabled field for push (#1406 ) (c93b443 )
add organization_id condition for list api key (#1373 ) (e803651 )
add tag deleter (#1469 ) (6558bd0 )
add tag domain and storage implementation (#1433 ) (a2078e5 )
add tag service (#1443 ) (bf69850 )
code reference API (#1395 ) (6b2ae5f )
evaluation logic in typescript for nodejs sdk (#1258 ) (d56ebab )
expose http protocol for push APIs (#1379 ) (e5b077a )
implement create, list, get goal REST api no command (#1445 ) (8b24d8e )
implement http get and create notification apis, remove command patterns from create and delete apis (#1394 ) (d330622 )
implement public API create and update account (#1376 ) (1764266 )
implement REST bulk download segment users (#1448 ) (03efd5d )
implement REST get segment, list segments, create segment (#1418 ) (8608fe3 )
implement REST list tags #1408 (4a7fd14 )
implement rest update and delete segment REST (#1441 ) (18bfb03 )
implement save api key as editor mechanism (#1352 ) (fa2e6cf )
init http route and remove command pattern for update notification (#1396 ) (7e31980 )
return extra info of public API key and obfuscate the returned key (#1349 ) (736d9a0 )
save cache in child redis instances (#1392 ) (b0b1bb4 )
support filter by organization_id in list subscription v2 and expose http (#1387 ) (151bd30 )
ui/dashboard: fcm management (#1401 ) (4e55a13 )
ui/dashboard: slack management (#1402 ) (d7b8208 )
ui/dashboard: update api keys list (#1346 ) (f05e58c )
ui/dashboard: user segments management (#1426 ) (bd8710e )
ui: add goal connection type on the create goal form (#1466 ) (f668d1e )
ui: add variation id to the debugger results page (#1427 ) (e1f7c79 )
update goal REST no command (#1464 ) (aeabf7e )
Bug Fixes
cannot delete pfmerge key when deleting counts (#1366 ) (5474107 )
cannot write against a read-only redis replica (#1378 ) (3a29bbd )
change dev container start docker system prune to images prune (#1400 ) (89b4af1 )
delete pfmerge key after count users (#1375 ) (d4c6eec )
info and error log level (#1413 ) (ff82dbe )
request method for account and environment svc (#1409 ) (83fa5e3 )
scan error on column index error in the goal api (#1462 ) (0b63009 )
subscriber logs when reporting bigquery errors (#1397 ) (8f3ded4 )
system admin user's last seen not being updated (#1425 ) (436963f )
ui/dashboard: organization table list (#1411 ) (9472d65 )
ui: debugger results text overflow (#1453 ) (cd8fe36 )
ui: subscription not found when updating (#1422 ) (44a5569 )
update evaluation event counter metrics to include variation ID (#1363 ) (e1488a8 )
Miscellaneous
change to save user and event counts in one request (#1369 ) (a576212 )
improve feature caching process (#1399 ) (0709bbe )
improve get environment api key latency (#1380 ) (d9d5895 )
improve redis pfmerge when using redis cluster (#1372 ) (ac36f93 )
update cache across goroutines to speed up caching (#1398 ) (0905244 )
Reverts
change MySQL collate to utf8mb4_general_ci (#1383 ) (9788305 )
change to save user and event counts in one request (#1371 ) (2a84762 )
Build System
deps: bump golang.org/x/crypto from 0.26.0 to 0.31.0 (#1431 ) (b6472fc )
deps: bump golang.org/x/crypto in /hack/delete-e2e-data-mysql (#1432 ) (c13ab51 )
deps: bump golang.org/x/net from 0.28.0 to 0.33.0 (#1434 ) (aa13996 )
fix embed.go not found (#1439 ) (c6ec057 )
fix proto-all rule not working on local machine (#1429 ) (a89f506 )
fix ui/dashboard deleting necessary file (#1446 ) (71a2fa3 )
1.1.0 (2024/12/02)
Features
implement CreateAccountV2 and Update/Disable/Enable/Delete AccountV2 with no command support (#1321 ) (9f1e6ca )
implement CreateAPIKey support no command, save extra api key and maintainer column (#1344 ) (a785ed9 )
implement logic and api description for read public AccountV2 APIs (#1333 ) (bf429a3 )
implement public Push APIs and generate swagger definition document for push (#1292 ) (2298421 )
migrate environment_namespace to environment_id (#1226 ) (d2251a5 )
new update api-key API (#1350 ) (f49e70f )
ui/dashboard: implement api keys ui (#1338 ) (3d4f5a2 )
ui/dashboard: implement members ui (#1326 ) (d6ed679 )
ui: implement confirm dialog (#1318 ) (4de62d9 )
Bug Fixes
batch svc not caching the api keys correctly (#1354 ) (0acbb03 )
cannot create an account (#1324 ) (c1b8d14 )
evaluation event counter metrics is not registered (#1353 ) (104ce58 )
feature not found error on evaluation (#1360 ) (5113449 )
use file io encoded_descriptor when replace encoded descriptor (#1329 ) (10b9ab8 )
Miscellaneous
add api key token and maintainer (#1342 ) (a3292c8 )
add doc for manual atlas migration and populate api_key with values from id (#1345 ) (b7dfb66 )
add enable option for batch and subscriber service charts (#1327 ) (dd09cad )
add evaluation event count metrics to subscriber (#1351 ) (6da6bd6 )
add logging features to batch flag cacher for debugging (#1359 ) (36aadb9 )
change user evaluations id to use feature updated at (#1361 ) (3733b71 )
fix dev container mysql schema (#1337 ) (d64e06f )
remove publish user event from api svc (#1336 ) (5c4ff75 )
set default value for environment_namespace column (#1330 ) (a200202 )
ui: show search filter only once (#1323 ) (382a56c )
update account api permission check (#1335 ) (29c8256 )
Build System
deps: bump the dependencies group with 2 updates (#1314 ) (a812032 )
1.0.0 (2024/11/01)
Features
add new order by clauses for list accounts api (#1312 ) (95aa13c )
implement update push API support no command and deprecate command in delete push API (#1298 ) (2199576 )
save user info from google (#1254 ) (898a084 )
ui: add new project dashboard (#1306 ) (f6a5946 )
ui: project details and environments dashbaord (#1313 ) (67be248 )
Bug Fixes
a member cannot see the organization details (#1311 ) (d354f69 )
err is nil when the flag is not found in the update feature api (7fa2280 )
owner organization role not being updated (#1303 ) (96622e5 )
Miscellaneous
change create project api to support the new console (#1308 ) (3100929 )
update organization api permission check for owner role (#1310 ) (8bb46c1 )
0.4.9 (2024/10/28)
Features
Bug Fixes
audit log pubg message not being acknowledged (#1279 ) (6a2dc67 )
nil pointer when the pubsub puller creation failed (#1278 ) (a5d1c8b )
organiztion API (#1261 ) (50e1d1c )
panic when checking register event request (#1277 ) (6616f54 )
redis cluster pfmerge (#1281 ) (719f78f )
ui: save filter popup being shown upon re-login (#1288 ) (f9076d7 )
ui: show save filter popup while navigating to the targeting page (#1282 ) (6fb9a96 )
ui: unable to create boolean type feature flag (#1247 ) (ff1b300 )
ui: unsaved search filters popup being shown when logging in (#1263 ) (6a8bb86 )
Miscellaneous
add list projects v2 for the new console (#1267 ) (36dd128 )
add log for error metrics from sdk client (#1270 ) (c6d3521 )
add make cmd to delete dev container mysql data (#1293 ) (a526aca )
add organization_id to project unique key (#1302 ) (7c15b95 )
change create organization api to create default environment (#1297 ) (0a6cfd4 )
change the default time range when getting evaluation count to 7 days (#1283 ) (e5bb28c )
get key slot when using redis cluster (#1273 ) (3cce246 )
remove order by clause from count sql (#1262 ) (d3a2867 )
remove redis pipeline command usage (#1271 ) (b3f3667 )
stop error logging when checking register event request for debugging (#1276 ) (628f888 )
support gcp multi cluster ingress (#1198 ) (ce278c5 )
update delete e2e image tag (#1274 ) (c8fedff )
update dev container feature version (#1294 ) (ed20f93 )
update dev container node version (#1301 ) (ca77fc0 )
updgrade go version in devcontainer (#1287 ) (5e20c9a )
Build System
deps-dev: bump vite from 5.4.2 to 5.4.6 in /ui/dashboard (#1241 ) (25883c3 )
deps: bump express from 4.19.2 to 4.21.0 in /ui/web-v2 (#1242 ) (ca100b2 )
deps: bump rollup from 4.21.2 to 4.22.4 in /ui/dashboard (#1256 ) (fa6d61c )
deps: bump the dependencies group across 1 directory with 20 updates (#1265 ) (fd01afc )
0.4.8 (2024/09/17)
Features
Bug Fixes
column 'id' in where clause is ambiguous when searching flag (#1234 ) (abab6d2 )
missing search filter field in the get me api (#1228 ) (5d582ab )
system admin search filter not being updated (#1235 ) (d959edc )
Miscellaneous
Build System
deps-dev: bump webpack from 5.92.0 to 5.94.0 in /ui/web-v2 (#1219 ) (fc855e7 )
deps: bump micromatch from 4.0.7 to 4.0.8 in /ui/dashboard (#1220 ) (7bbba20 )
deps: bump micromatch from 4.0.7 to 4.0.8 in /ui/web-v2 (#1221 ) (fd80067 )
deps: bump the dependencies group with 3 updates (#1223 ) (56975a3 )
0.4.7 (2024/08/27)
Features
add proto and domain for search filter (#1197 ) (03e5580 )
add support for storage as SearchFilter (#1205 ) (fa7632e )
allows to define rules that are enabled when a given value is a partial match to a target attribute (#1187 ) (fe4b9c8 )
fcm service account upload in create push (#1208 ) (1485398 )
move experiment calculator to batch service (#1160 ) (238b390 )
ui: new dashboard strutcure (#1123 ) (31f03c2 )
ui: support multi scheduling in the auto operations (#1143 ) (328b162 )
Bug Fixes
Miscellaneous
add authentication documentation (#1149 ) (f2af674 )
add docs for account get me api (#1212 ) (f36a52e )
add documentation for web account amd environment services (#1211 ) (f253084 )
add environment_id column for tables (#1209 ) (0f6d1fb )
add error logs for push sender (#1201 ) (096fad6 )
add fcm service account field (#1206 ) (3a271cf )
change envoy load balancer to least_request (#1153 ) (66597f4 )
delete deprecated OpsType and ChangeAutoOpsRuleOpsTypeCommand (#1204 ) (c8b4fec )
delete docker building cache when open dev container (#1158 ) (72415b4 )
delete triggered_at column (#1196 ) (b76684a )
delete triggeredAt for AutoOps (#1179 ) (3df9296 )
ensure that all kubectl commands for the dev container run in the minikube only (#1165 ) (57c829f )
ignore context canceled errors when publishing to pubsub (#1185 ) (14454f3 )
migrated account_v2 table to add search_filters (#1199 ) (c93d7a8 )
migration: include atlas schema migration table to initilization file (#1193 ) (251783b )
migration: set default value for triggered_at column (#1194 ) (a460fa2 )
move subscribers to subscriber svc (#1168 ) (d97f383 )
rename api-gateway to api (#1190 ) (19d2d5a )
unify web-gateway and backend (#1181 ) (62e3b1b )
update prd envoy to 1.31.0 (#1155 ) (7c458ff )
Build System
deps-dev: bump postcss from 8.4.24 to 8.4.31 in /ui/web-v2 (#1174 ) (9bff6c5 )
deps: bump github.com/hashicorp/go-retryablehttp (#1175 ) (a6b14a0 )
deps: bump golang.org/x/crypto in /hack/delete-e2e-data-mysql (#1178 ) (02d047e )
deps: bump golang.org/x/net in /hack/delete-e2e-data-mysql (#1177 ) (ce055a0 )
deps: bump google.golang.org/protobuf (#1176 ) (0aefd14 )
deps: bump the dependencies group with 14 updates (#1173 ) (cbed675 )
deps: bump the dependencies group with 3 updates (#1172 ) (5390bc0 )
deps: bump the dependencies group with 4 updates (#1183 ) (34d8f33 )
deps: update package.json (#1182 ) (4470ad2 )
ui: add post build script to recreate the file after building web project (#1166 ) (41da191 )
0.4.6 (2024/07/23)
Features
Bug Fixes
account not found when using system admin account (#1150 ) (61a33f9 )
allow OpsType to be updated to Enable or Disable (#1139 ) (d7df6be )
auditlog detail of goal does not have diff (#1122 ) (6d7663c )
auditlogs have empty entity data (#1120 ) (25d6917 )
cannot update archived features (#1113 ) (b3a1aa5 )
demo environment not being created (#1127 ) (b822a6e )
envoy cannot register descriptor (#1024 ) (c4b3004 )
evaluation: race condition when removing the variation description (#1151 ) (525991b )
failed to put admin audit logs (#1131 ) (6920b8b )
internal error when generating access token (#1145 ) (6bde965 )
nil error check during preparing demo users (#1147 ) (f4edc5d )
proto clone changs empty slice to nil (#1080 ) (fad28c0 )
publish domain event fails due to message being nil (#1129 ) (17c868f )
redirect to the login page if error in exchangeToken (#1144 ) (456c2ff )
remove envirnment table insert sql (#1063 ) (e771d88 )
ui: can't create a user segment #1092 (#1093 ) (c17360a )
ui: can't create an auto operation (#1088 ) (e6220ec )
ui: cannot create an enable auto operation (#1134 ) (95019a7 )
ui: incorrect and unmet peer dependency warnings (#1039 ) (102c665 )
ui: prevent adding duplicate toasts with the same message (#1148 ) (1eda1de )
ui: stop button translation (#1021 ) (799e7fe )
update feature fails due to unknown column environment_id (#1112 ) (339056a )
update TriggeredAt when AutoOps finished (#1136 ) (28b5cca )
variation value input is now shown in add page (#1072 ) (0ee8a6a )
Miscellaneous
Reverts
Build System
deps: bump amannn/action-semantic-pull-request (#1081 ) (bd1d960 )
deps: bump googleapis/release-please-action (#1048 ) (48dd57d )
deps: bump the dependencies group with 12 updates (#1049 ) (442b4b0 )
deps: bump the dependencies group with 8 updates (#1082 ) (f6cf901 )
0.4.5 (2024/06/13)
Features
evaluate flag dependency of targeting rule (#983 ) (15f1008 )
feature can be set in targeting (#993 ) (0f62cb2 )
move auditLog persister to batch service (#984 ) (25ed7ea )
move on-demand subscribers to batch service (#952 ) (b6c3b40 )
move push sender to batch service (#995 ) (7120406 )
ui: add client and server SDKs role in API key page (#1016 ) (83d9a43 )
Bug Fixes
including archived features in the count query (#996 ) (e7cc082 )
missing rule clause validation (#999 ) (8b12f92 )
segment cannot be set in the targeting rule (#1015 ) (b6aa2af )
Miscellaneous
Build System
deps: bump the dependencies group with 2 updates (#980 ) (c8b60e6 )
deps: bump the dependencies group with 2 updates (#981 ) (9aa66d8 )
0.4.4 (2024/05/31)
Features
Bug Fixes
0.4.3 (2024/05/31)
Miscellaneous
proto: add get feature flags and segment users to api ID (#969 ) (5375af5 )
0.4.2 (2024/05/29)
Miscellaneous
0.4.1 (2024/05/28)
Build System
deps: bump docker/setup-buildx-action in the dependencies group (#911 ) (76f22e7 )
deps: bump lewagon/wait-on-check-action in the dependencies group (#906 ) (5b4819e )
deps: bump the dependencies group across 1 directory with 19 updates (#961 ) (e3c95ce )
deps: bump the dependencies group with 15 updates (#864 ) (6f3dc15 )
deps: bump the dependencies group with 17 updates (#899 ) (2b3f487 )
deps: bump the dependencies group with 2 updates (#912 ) (3e3f551 )
deps: bump the dependencies group with 4 updates (#932 ) (b54c4d7 )
deps: bump the dependencies group with 5 updates (#900 ) (7ccf69f )
deps: bump the dependencies group with 5 updates (#907 ) (8fbd877 )
Miscellaneous
add environment settings proto (#875 ) (b4df666 )
add error logs when checking requests in the api-gateway (#902 ) (3818270 )
add error logs when checking the env api key (#905 ) (5e1d525 )
add get segment users api (#951 ) (69f55ef )
add hpa to batch service (#942 ) (2c48255 )
add mysql open connection configuration to batch server (#945 ) (e436a11 )
add project url code to environment api key (#956 ) (85796c8 )
add project url code to metrics (#958 ) (89b6687 )
add SDK_SERVER role to api key (#923 ) (047bc6d )
add source id to register events request (#915 ) (d09e2dd )
add subscribers config for dev container (#917 ) (1ab88cd )
change cronjob error code condition to ignore 503 and 000 errors (#928 ) (09f1516 )
change metrics name for persister (#944 ) (eb61bb5 )
change to allow server api role in the register events api (#954 ) (e179528 )
change to use redis to cache environment api key (#934 ) (1c5a8f8 )
implement created_at in the feature and segment users cache (#931 ) (1f57182 )
implement proto dir as go module (#920 ) (0b5de79 )
move evaluation events persister (#948 ) (e887f32 )
move user persister to batch service (#938 ) (04ac1de )
remove domain informer job for dev container (#918 ) (f87a0c9 )
remove segment persister (#909 ) (1c6bce1 )
remove transaction from upserting in the user persister (#946 ) (1335afe )
remove unnecessary Stop() (#867 ) (ecce354 )
remove unused import (#878 ) (2a4a89a )
rename batch server subscriber metrics (#949 ) (6275053 )
revert check environment role condition (#925 ) (3b9d3ac )
update create api key command (#957 ) (1ea71f9 )
update flag cache when a flag changes (#874 ) (3795a5f )
update go-jose (#960 ) (3cd13b6 )
use go-sql-driver in the mysql client (#876 ) (1112bc3 )
validate environment settings when updating flags (#881 ) (4d97774 )
Features
add require_comment option to environment settings (#883 ) (5c10ae3 )
add batch service authentication (#926 ) (094adce )
add evaluation module (#922 ) (4551f8d )
add get feature flags api for server sdk (#940 ) (2470bed )
add requst counter metrics to api-gateway (#930 ) (0d6d9b2 )
create local environment using dev container (#486 ) (d5bbd2d )
move segment persister to batch service (#896 ) (58b34f1 )
multi subscriber arch in batch service (#880 ) (2961aa0 )
ui: add require_comment option to environment settings (#882 ) (4c3a60e )
Bug Fixes
cannot create a rollout when the flag has a scheduled operation (#859 ) (4a23a14 )
Confirm dialog on targeting page shouldn't display Enabled/Disabled and scheduling options unless only the flag switch is altered. (#894 ) (2b8d5fd )
get segment users api condition (#953 ) (7d3d8a1 )
infinite loop when trying to enable/disable a flag when using auto operation (#914 ) (77e61b9 )
mysql db open connection flag in the batch server (#947 ) (b3ebf79 )
nil pointer when logging (#943 ) (0cce006 )
pubsub subscription check stops working when an error occurs (#852 ) (2525fca )
report subscriberReceivedCounter for domainEventInformer (#950 ) (8cb15a4 )
ui: experiment creation page shouldn't list archived items (#851 ) (4c735a8 )
ui: invalid documentation links for pushes and notifications pages (#856 ) (1cdda52 )
ui: kill switch operation's start status is incorrect (#853 ) (8aee89e )
0.4.0 (2024/02/02)
⚠ BREAKING CHANGES
use range for templating cronjobs (#689 )
Build System
Add code-butler (#585 ) (4ca4e2f )
deps-dev: bump @babel/preset-react in /ui/web-v2 (#756 ) (4728864 )
deps-dev: bump @typescript-eslint/eslint-plugin in /ui/web-v2 (#580 ) (89e5a5f )
deps-dev: bump eslint-plugin-react-hooks in /ui/web-v2 (#583 ) (5fb4e15 )
deps: bump @emotion/styled from 11.1.5 to 11.11.0 in /ui/web-v2 (#601 ) (656f5ac )
deps: bump @material-ui/icons from 4.9.1 to 4.11.3 in /ui/web-v2 (#602 ) (e56926f )
deps: bump @popperjs/core from 2.11.3 to 2.11.8 in /ui/web-v2 (#598 ) (70ef2d8 )
deps: bump actions/cache from 3 to 4 (#766 ) (899ece0 )
deps: bump amannn/action-semantic-pull-request (#534 ) (3bea6f3 )
deps: bump amannn/action-semantic-pull-request (#603 ) (3b436db )
deps: bump arduino/setup-protoc from 2.0.0 to 2.1.0 (#531 ) (54e806a )
deps: bump arduino/setup-protoc from 2.1.0 to 3.0.0 (#767 ) (2f6e338 )
deps: bump bytes from 3.1.1 to 3.1.2 in /ui/web-v2 (#582 ) (057281a )
deps: bump classnames from 2.2.6 to 2.5.1 in /ui/web-v2 (#644 ) (d6a5c89 )
deps: bump cloud.google.com/go/bigquery from 1.52.0 to 1.53.0 (#494 ) (1ac1e95 )
deps: bump cloud.google.com/go/bigquery from 1.53.0 to 1.55.0 (#538 ) (d18fa5b )
deps: bump cloud.google.com/go/kms from 1.12.1 to 1.15.1 (#521 ) (1714a99 )
deps: bump cloud.google.com/go/kms from 1.15.1 to 1.15.4 (#575 ) (7f6b218 )
deps: bump cloud.google.com/go/profiler from 0.3.1 to 0.4.0 (#572 ) (8caf488 )
deps: bump contributor-assistant/github-action (#532 ) (c604c7e )
deps: bump core-js from 3.9.1 to 3.35.0 in /ui/web-v2 (#642 ) (d5b3db9 )
deps: bump deep-equal from 2.2.1 to 2.2.3 in /ui/web-v2 (#641 ) (6d6458f )
deps: bump docker/setup-buildx-action from 2.5.0 to 2.9.1 (#467 ) (08a8685 )
deps: bump docker/setup-buildx-action from 2.9.1 to 2.10.0 (#525 ) (9551abc )
deps: bump docker/setup-qemu-action from 2.2.0 to 3.0.0 (#769 ) (5346807 )
deps: bump github.com/aws/aws-sdk-go-v2/config (#491 ) (0e39496 )
deps: bump github.com/aws/aws-sdk-go-v2/config (#520 ) (9b95a9b )
deps: bump github.com/aws/aws-sdk-go-v2/service/kms (#523 ) (b376aea )
deps: bump github.com/aws/aws-sdk-go-v2/service/kms (#573 ) (d8fcc05 )
deps: bump github.com/go-resty/resty/v2 from 2.7.0 to 2.8.0 (#536 ) (bffad13 )
deps: bump github.com/go-resty/resty/v2 from 2.8.0 to 2.11.0 (#639 ) (a4b360f )
deps: bump github.com/golang-migrate/migrate/v4 (#497 ) (2f7e265 )
deps: bump github.com/itchyny/gojq from 0.12.13 to 0.12.14 (#636 ) (b494aed )
deps: bump github.com/itchyny/gojq from 0.12.5 to 0.12.13 (#537 ) (cce01ed )
deps: bump github.com/mna/redisc from 1.3.2 to 1.4.0 (#637 ) (784468e )
deps: bump github.com/nicksnyder/go-i18n/v2 from 2.2.0 to 2.2.2 (#571 ) (662fa02 )
deps: bump github.com/nicksnyder/go-i18n/v2 from 2.2.2 to 2.4.0 (#764 ) (1f07a4a )
deps: bump github.com/prometheus/client_golang (#522 ) (64bc8b7 )
deps: bump github.com/prometheus/client_golang (#574 ) (445e0a0 )
deps: bump github.com/prometheus/client_golang (#635 ) (3a9dc84 )
deps: bump go.uber.org/mock from 0.1.0 to 0.2.0 (#496 ) (3f21784 )
deps: bump go.uber.org/mock from 0.2.0 to 0.4.0 (#638 ) (bb544e4 )
deps: bump go.uber.org/zap from 1.17.0 to 1.24.0 (#495 ) (00a325c )
deps: bump go.uber.org/zap from 1.24.0 to 1.26.0 (#761 ) (3934766 )
deps: bump golang.org/x/oauth2 from 0.11.0 to 0.12.0 (#539 ) (cd9e641 )
deps: bump golang.org/x/oauth2 from 0.12.0 to 0.15.0 (#610 ) (853f739 )
deps: bump golang.org/x/oauth2 from 0.15.0 to 0.16.0 (#765 ) (9f0da43 )
deps: bump golang.org/x/sync from 0.5.0 to 0.6.0 (#762 ) (0340992 )
deps: bump golang.org/x/text from 0.9.0 to 0.11.0 (#489 ) (a2d75eb )
deps: bump gonum.org/v1/gonum from 0.11.0 to 0.14.0 (#763 ) (3fbf430 )
deps: bump google-github-actions/auth from 1.1.1 to 2.1.0 (#770 ) (5573b76 )
deps: bump google-github-actions/release-please-action (#493 ) (54d9532 )
deps: bump google-github-actions/release-please-action (#535 ) (2450df7 )
deps: bump google-protobuf from 3.14.0 to 3.21.2 in /ui/web-v2 (#600 ) (7026cb6 )
deps: bump google.golang.org/api from 0.126.0 to 0.134.0 (#490 ) (11f3b6b )
deps: bump google.golang.org/api from 0.134.0 to 0.138.0 (#524 ) (7a55dbe )
deps: bump google.golang.org/api from 0.138.0 to 0.152.0 (#606 ) (e6497fa )
deps: bump google.golang.org/grpc from 1.55.0 to 1.57.0 (#488 ) (d4706da )
deps: bump google.golang.org/protobuf from 1.30.0 to 1.31.0 (#487 ) (c5b3ab8 )
deps: bump lewagon/wait-on-check-action from 1.3.1 to 1.3.3 (#646 ) (b9844ee )
deps: bump slackapi/slack-github-action from 1.24.0 to 1.25.0 (#768 ) (ae01bd0 )
deps: bump the dependencies group with 4 updates (#779 ) (03ace3c )
Specify gpt-4-1106-preview as the model for code-butler (#616 ) (e927419 )
Miscellaneous
Features
Bug Fixes
account e2e test fails (#623 ) (79191b9 )
account not being display on the accounts page (#753 ) (1b0721f )
auto operation already triggered error (#509 ) (96101bc )
batch domain-event-informer (#613 ) (b9bf3d1 )
batch server cannot execute ddl to mysql (#632 ) (a1d77f6 )
batch service process timeout (#634 ) (9839fff )
bigquery fails when the value is null (#557 ) (bc918b7 )
calculator envoy health check (#474 ) (aa6bc44 )
cannot delete or update a parent row when deleting e2e data (#627 ) (c6b72b8 )
change the api-gateway metrics label (#662 ) (574b2c7 )
crashing in the localizer (#619 ) (25176b1 )
dispatch workflow fails if commit message contains multi-lines (#693 ) (eb5d45a )
failed to GetAccountV2ByEnvironmentID with empty ID (#658 ) (1c9babb )
getEnvironmentV2 fails to get env with empty ID (#518 ) (05338a8 )
incorrect experiment result when running multiple goals (#558 ) (df11351 )
invalid environment url code in trial project (#655 ) (8ced92e )
invalid mysql connection when using transaction (#755 ) (cb75f9d )
omitempty not being removed in the proto subdirectories (#775 ) (0108e72 )
preStop hook in the api and web gateway (#471 ) (d101811 )
progress rollout fails due to wrong conditions (#718 ) (e352412 )
project hack script not creating environment correctly (#568 ) (a57505f )
rename sql file (#630 ) (b075f72 )
show stop experiment in experiment list action (#690 ) (3c60dc9 )
the component will not refresh when incorrect envID is in localstorage (#529 ) (36b5c5f )
ui: audit log date range position (#697 ) (2e8c285 )
ui: auditlog action filter not working on admin page (#731 ) (1cc2f04 )
ui: column alignment on the experiment results tab (#569 ) (d17ba76 )
ui: documentation link (#621 ) (e970111 )
ui: search filter options break when the same filter is selected (#734 ) (84b7719 )
ui: sort auto operations list by scheduled date. (#615 ) (54386a1 )
ui: update targeting rule with multiple clause (#591 ) (ab0939c )
unable create trial project (#743 ) (8a20e17 )
unable to fetch all orgs when user is system admin (#674 ) (e93eeeb )
unable to filter account list by roles (#733 ) (e5f1284 )
unable to get GA ID from envvar (#500 ) (6bf7f57 )
unknown column 'is_in_use_status' in 'having clause' (#739 ) (fc81930 )
validation while creating a progressive rollout (#629 ) (6f9313b )
variation name is empty (#502 ) (e8c8a42 )
improve redis load in the event persisters (#597 ) (cb8324d )
modify api-gateway to fetch feature flags cache from redis without single flight (#508 ) (bb38e09 )
Reverts
chore replace account v1 to v2 when checking the role (#656 ) (d586b71 )
0.3.0 (2023/07/13)
Features
add experiment calculator manifest chart (#420 ) (0789029 )
rewrite python calculator service in golang (#395 ) (bc0f652 )
ui: add copy user ids feature in the flag targeting (#271 ) (eaaf349 )
ui: add prerequisites in targeting (#209 ) (0db448f )
ui: add the tag filter to the search filter options (#177 ) (3a918da )
ui: add the time range filter in the audit logs search (#259 ) (f80c49d )
ui: add time range menu in the evaluation tab (#333 ) (6e082b0 )
ui: add webhook admin (#243 ) (33abd69 )
ui: show which flag the segment user is using when deleting or updating it (#272 ) (0ea2d1a )
Bug Fixes
change GetEvaluations request field (#461 ) (d98e147 )
environment is not found error during operation of apikey-cacher (#458 ) (9414dc8 )
evaluate prerequisite features correctly (#219 ) (e295d82 )
eventcounter doesn't return goal counts (#176 ) (80ca712 )
flush timeout setting not working (#146 ) (4e68977 )
goal event not being acknowledged correctly (#159 ) (38b9bd0 )
insert same prerequisite features twice (#205 ) (46f71c5 )
insert timestamp correctly in bigquery (#173 ) (6f2befc )
internal error when there are no counts for evaluation time-series count (#184 ) (8cf8a0a )
invalid message type in the api-gateway (#157 ) (a3a7a84 )
mau count yearMonth not matching to the table partition format (#148 ) (0323b84 )
metrics events count is not saved to prometheus (#220 ) (0068c05 )
missing tag property in the domain event for feature flag (#210 ) (fbed22f )
mysql error alerts when the auto ops rule is already triggered (#196 ) (cdd8cb6 )
nil pointer if Reason field is nil (#262 ) (90244de )
not found error being reported as fail error (#186 ) (bebb0b7 )
OOM while trying to delete a segment (#297 ) (2dd94b6 )
prerequisite list is always empty (#201 ) (8f4d7d0 )
tag filter is not working in the feature flag list (#394 ) (9c7cb34 )
ui: assertion error when saving an auto ops rule (#238 ) (0cc348d )
ui: auto ops validation (#171 ) (775e3d4 )
ui: date text only shows in japanese (#234 ) (417bbeb )
ui: rollout percentage not displaying correctly on firefox (#423 ) (7efa83c )
ui: show tooltip while hovering on variation delete button (#143 ) (5c0d7a9 )
ui: targeting rule validation (#149 ) (6b3c872 )
ui: uncaught type error while switching between experiments (#156 ) (d2753a6 )
ui: undefined error while open evaluation tab (#381 ) (f66a9f9 )
web-gateway health check (#456 ) (13bb755 )
wrong starting time in GetEvaluationTimeseriesCount (#326 ) (c848584 )
wrong user counts in 24 hours (#338 ) (cbdec91 )
generate the UEID from the features filtered by the tag (#399 ) (171cc21 )
improve the user evaluation process (#316 ) (12535b8 )
Reverts
Miscellaneous
add api key to log (#300 ) (02d0350 )
add archived feature flags to the cache (#305 ) (d75a4c1 )
add audit-log, auto-ops, environment service into the backend module (#419 ) (c2e49a7 )
add backend service (#404 ) (4a9e7f5 )
add bigquery querier to eventcounter (#129 ) (1d86fe8 )
add content_available option for fcm request (#274 ) (ac1b9cf )
add custom dex web ui (#319 ) (f1b6f95 )
add Dependabot (#329 ) (9accf03 )
add event persister service for A/B tests (#150 ) (ab6298b )
add event persister service for auto ops (#179 ) (1b2643d )
add event-counter, experiment, feature service into the backend module (#422 ) (8be183a )
add features field to list segments api (#402 ) (8079315 )
add function to get prerequisites (#284 ) (2b3545a )
add function to refresh features cache (#293 ) (154a1ed )
add generated files from proto (#398 ) (4d9d5ce )
add GetExperimentGoalCount api to eventcounter (#155 ) (c0728ea )
add github issue template (#278 ) (afa657a )
add httpstan dockerfile (#379 ) (592ade3 )
add javascript source id to the proto message (#226 ) (098218b )
add job schedule options to calculator flags (#161 ) (fab8cdb )
add language field to Recipient (#335 ) (b150407 )
add latencySecond field to latencyMetricsEvent (#265 ) (1a7d7ad )
add log for invalid type event (#299 ) (4bc8135 )
add logs for debug (#393 ) (3de8e76 )
add manifest files for event persister dwh (#154 ) (dd7196e )
add manifest files for event persister dwh (#162 ) (06812cf )
add manifest for event persister ops (#174 ) (8c06c22 )
add metrics events according to HTTP status code (#202 ) (6a53991 )
add metrics for evaluation (#317 ) (c057d9d )
add migration-mysql, notification, push service into the backend module (#426 ) (5cd83db )
add new APIs for ops events using redis (#165 ) (76fe837 )
add projectID to sdk metrics (b207f98 )
add projectID to sdk metrics (#279 ) (ccb7b2b )
add proto file for progressive rollout (#285 ) (d006e2a )
add proto-all command in Makefile (#424 ) (7f9daf9 )
add proto-go-check command (#409 ) (894d345 )
add renovate to cla allowlist (#225 ) (9cc3e6f )
add routing from other microservices to backend service (#416 ) (7493fae )
add routing to event-counter, experiment, feature in the backend module (#425 ) (999ba67 )
add routing to migration-mysql, notification, push in the backend module (#429 ) (10e1ac7 )
add service account config to manifests (#151 ) (4f8db44 )
add serviceAccountName spec to deployment template (#152 ) (f9b5fe9 )
add several metrics for dwh (#191 ) (fcfc122 )
add source id property to metrics event (#214 ) (be1aadc )
add support for a single evaluation in the evaluate features api (#228 ) (b2e8cc5 )
add support for multiple experiment using the same goal id (#203 ) (12d7c3f )
add support to filter feature flags by prerequisites (#230 ) (87a68c7 )
add tag filtering to evaluation by evaluatedAt (#318 ) (9dc6525 )
add the ability to configure timezone (#322 ) (a9010dd )
add time range option in the proto for evaluation count request (#291 ) (f19283b )
add TTL to the put function of the cache (#295 ) (465e502 )
add variation name to get evaluations response (#438 ) (0faba48 )
adjust cache TTL temporarily (#298 ) (daca964 )
adjust features cache TTL (#301 ) (55ca6c0 )
adjust shutdown process (#432 ) (b50b9f2 )
allow calculator image tag to be set individually (#462 ) (3cc1175 )
auto merge PR automatically (#330 ) (8ba3a4f )
change apis calculator executes for experiment (#172 ) (80bc7b2 )
change auto ops count key format (#200 ) (6e2e9dd )
change evaluation count tab api (#183 ) (b4ceb8b )
change get evaluations response (#407 ) (d132227 )
change getEvaluations response (#406 ) (04f8066 )
change hpa api version (#188 ) (212cbe6 )
change list experiments condition in the event persister (#460 ) (66b840d )
change service account to be optional in the helm manifest (#245 ) (9ec1381 )
change service-accounts name (#358 ) (73458d6 )
change service-accounts name in deployment.yaml (#396 ) (7a817a9 )
change the wait-interval field in lewagon/wait-on-check-action (#369 ) (1c68852 )
change to always return the error messages in Japanese temporarily (#218 ) (b34c7ec )
change web-gateway preStop hook (#296 ) (3288511 )
change web-gateway's LB to L7 (#251 ) (42598d6 )
configure timezone fields (#324 ) (b97bfd3 )
deps: update contributor-assistant/github-action digest to b2a7f9f (#247 ) (fcd566d )
deps: update dependency autoprefixer to v9.8.8 (#304 ) (60cce4e )
deps: update dependency cython to v0.29.35 (#371 ) (e6281ed )
deps: update dependency numpy to v1.22.0 [security] (#222 ) (5909420 )
deps: update dependency protobuf to v3.20.2 [security] (#221 ) (dfca8e8 )
deps: update google.golang.org/genproto digest to 7f2fa6f (#248 ) (604f3bc )
disable analysis side menu (#170 ) (b5ed7fa )
enable cache in setup-go (#437 ) (e001aea )
fix backend envoy-config (#427 ) (c98384f )
fix mockgen version (#452 ) (9396d76 )
fix service account in helm charts (#280 ) (5deee42 )
get evaluation count in hourly timestamp (#252 ) (8783f84 )
improve api-gateway health check (#457 ) (119308f )
include the current hour in GetEvaluationTimeseriesCount (#421 ) (258d2ac )
mark event id as a failure when failed to marshal (#166 ) (5111d2c )
mark id as a fail when appends requests is failed (#168 ) (bfe1116 )
modify timeout second of web-gateway backend (#270 ) (c8d0296 )
move function saving metrics event to gateway (#216 ) (f74eacb )
move upsert MAU implementation to user persister (#195 ) (8aa7199 )
precompile stan model (#454 ) (59190d6 )
publish GetEvaluationTimeseriesCountV2 API (#332 ) (48ca696 )
remove bigtable client (#237 ) (9736bcf )
remove bigtable from event persister DWH (#215 ) (f95fb01 )
remove default values from hpa (#189 ) (b6b7872 )
remove event persister goal events kafka (#198 ) (d046b7e )
remove feature persisting user data (#288 ) (37952d3 )
remove feature-tag-cacher (#302 ) (6a939c5 )
remove goal batch transformer service (#153 ) (e0f8fea )
remove kafka and druid helm manifests (#193 ) (1127b16 )
remove kafka and druid implementation (#192 ) (8f23953 )
remove needless helm values.yaml (#182 ) (165247f )
remove renovate.json (#372 ) (a0274c0 )
remove unused command (#431 ) (f24db62 )
remove unused services from helm chart (#430 ) (4d0fc5f )
remove user metadata from user event (#292 ) (cbe7809 )
remove user service (#290 ) (3bf4c9a )
rename event persister kafka to evaluation count (#199 ) (c52baa9 )
replace existing GetEvaluationTimeseriesCount with new implementation (#383 ) (4ba4223 )
run make gen (#410 ) (8ee4e35 )
run make gen_proto (#412 ) (a0a2127 )
run make proto-go (#408 ) (d8dc6c4 )
save evaluation count in hourly timestamp (#249 ) (41c84f2 )
set mysql client's connection max idle time instead of lifetime (#260 ) (9c0e6e4 )
stop updating pip dependency group (#360 ) (529a6ee )
stop upserting daily evaluation count keys (#382 ) (1e05976 )
support multi language for audit log (#336 ) (adb9e2d )
support multiple languages in error messages (#208 ) (fd71214 )
support time range option for evaluation count request (#307 ) (6bd1324 )
ui: add the option to delete values individually in the select menu (18c1818 )
ui: change page not found design (#258 ) (dd0b6f3 )
ui: disable analysis menu (#163 ) (6c774a7 )
ui: fix typo in the language options (#236 ) (c6f0263 )
ui: make the variation name field required in the feature flag (#436 ) (222bcb0 )
ui: set the accept-language in headers (#213 ) (eab4d17 )
update BigQuery query files (#175 ) (ef7b693 )
update dex to v2.36.0 (#281 ) (972a965 )
update envoy to v1.26.2 (#459 ) (ed7a756 )
update js and ts proto files (#418 ) (01b1f07 )
update the directory for npm in dependabot (#380 ) (b36f0ff )
update the version of Go (#357 ) (3ed0e09 )
use gomock in uber (#435 ) (8e1f4c4 )
use squash for auto merging (#354 ) (2a665b2 )
Build System
deps-dev: bump click from 8.1.2 to 8.1.3 in /python (#347 ) (08c5fd1 )
deps-dev: bump pathspec from 0.9.0 to 0.11.1 in /python (#343 ) (65e8460 )
deps-dev: bump postcss from 8.3.11 to 8.4.24 in /ui/web-v2 (#389 ) (87d4e3e )
deps: bump @improbable-eng/grpc-web in /ui/web-v2 (#388 ) (bfb1412 )
deps: bump actions/setup-go from 3 to 4 (#342 ) (91c93ab )
deps: bump amannn/action-semantic-pull-request (#363 ) (c30e024 )
deps: bump Azure/setup-helm from 1.1 to 3.5 (#362 ) (c7f4bc3 )
deps: bump cloud.google.com/go/bigquery from 1.48.0 to 1.51.2 (#377 ) (44ee632 )
deps: bump cloud.google.com/go/kms from 1.9.0 to 1.11.0 (#375 ) (f6577e9 )
deps: bump cloud.google.com/go/profiler from 0.3.0 to 0.3.1 (#368 ) (f638640 )
deps: bump cloud.google.com/go/pubsub from 1.28.0 to 1.31.0 (#376 ) (b00d7fc )
deps: bump contrib.go.opencensus.io/exporter/stackdriver (#448 ) (dc27019 )
deps: bump deep-equal from 2.0.5 to 2.2.1 in /ui/web-v2 (#390 ) (7867ce5 )
deps: bump dependabot/fetch-metadata from 1.5.0 to 1.5.1 (#361 ) (e2ee850 )
deps: bump dependabot/fetch-metadata from 1.5.1 to 1.6.0 (#439 ) (850492d )
deps: bump docker/setup-buildx-action from 2.1.0 to 2.5.0 (#346 ) (d5e1580 )
deps: bump github.com/aws/aws-sdk-go-v2/config (#449 ) (3a7d96c )
deps: bump github.com/aws/aws-sdk-go-v2/service/kms (#392 ) (3007a46 )
deps: bump github.com/coreos/go-oidc (#374 ) (3e04d8c )
deps: bump github.com/go-redis/redis (#349 ) (e07cf84 )
deps: bump github.com/go-sql-driver/mysql from 1.6.0 to 1.7.1 (#446 ) (49cb111 )
deps: bump github.com/googleapis/gax-go/v2 from 2.10.0 to 2.11.0 (#447 ) (5167b95 )
deps: bump github.com/lib/pq from 1.10.7 to 1.10.9 (#365 ) (0c29238 )
deps: bump github.com/mna/redisc from 1.1.2 to 1.3.2 (#352 ) (9a5fad3 )
deps: bump github.com/prometheus/client_golang (#364 ) (1f58081 )
deps: bump github.com/slack-go/slack from 0.6.4 to 0.12.2 (#366 ) (a321c31 )
deps: bump github.com/stretchr/testify from 1.8.1 to 1.8.4 (#359 ) (2ece27f )
deps: bump golang.org/x/oauth2 from 0.6.0 to 0.8.0 (#367 ) (ec61990 )
deps: bump google-github-actions/auth from 0.8.3 to 1.1.1 (#340 ) (5e00ed0 )
deps: bump google-github-actions/release-please-action (#344 ) (2553d6e )
deps: bump google-github-actions/release-please-action (#441 ) (86cc9e2 )
deps: bump google.golang.org/grpc from 1.53.0 to 1.55.0 (#351 ) (a1b251a )
deps: bump gopkg.in/square/go-jose.v2 from 2.4.0 to 2.6.0 (#378 ) (f02c684 )
deps: bump gopkg.in/yaml.v2 from 2.3.0 to 2.4.0 (#350 ) (01d4043 )
deps: bump lewagon/wait-on-check-action from 1.0.0 to 1.3.1 (#339 ) (0829a20 )
deps: bump multidict from 6.0.2 to 6.0.4 in /python (#341 ) (f8c5de8 )
deps: bump slackapi/slack-github-action from 1.23.0 to 1.24.0 (#440 ) (ad4cfd0 )
modify build flow so that it doesn't wait for release workflow (#463 ) (5400c39 )
0.2.0 (2023/01/01)
Features
add track api to grpc server (#45 ) (f7cb80b )
ui: add the menu to change the language in the dashboard (#135 ) (36be7b7 )
Bug Fixes
error handling condition in the kafka writer (#116 ) (207f46a )
error handling while trying to send messages to kafka (#115 ) (34f616b )
evaluation unique count is always zero (#127 ) (7e1a455 )
event user persister should not ack message when DB returns an error (#84 ) (39eb579 )
failed to find feature while trying to update an archived feature (#53 ) (e4b9e0d )
flush size setting being ignored in the event persister (#117 ) (a19af75 )
internal error when there is no value in the event count (#137 ) (b3b5b15 )
json cannot unmarshal array while trying to create a feature flag (#15 ) (142b117 )
redis key expiration is not being set correctly (#118 ) (2cf3bfa )
table has no partition for value from column_list error (#144 ) (d70dcb8 )
the event may duplicate in the kafka if the redis request fails (#128 ) (393afe7 )
ui/web-v2: feature flag name not being validated (#16 ) (6118f38 )
Build System
add include_imports flag to protoc (#57 ) (6ab4f11 )
add rules to build and test go files using go command (#23 ) (399fd6d )
change protoc to use external dependency files (#25 ) (56894fe )
fix not found error while generating proto web files (#27 ) (0471f3b )
generate proto_descriptor using protoc (#46 ) (a8a5f1d )
remove bazelisk command from Makefile (#59 ) (3d3495b )
remove go_embed_data rule (#19 ) (b0efa8f )
set ubuntu-20.04 for python build runner (#64 ) (a1c9ea0 )
setup buildifier via bazel (#8 ) (ab61d14 )
update renovate settings to check once a month (#5 ) (01ddce4 )
Miscellaneous
add auto ops service in the event persister envoy settings (#103 ) (0753c7d )
add default variation id for evaluation count key (#111 ) (f7900d1 )
add env variables for postgres (#65 ) (d9f403c )
add experiment client in the event-persister service (#89 ) (e231c03 )
add experiment service's envoy config in the event persister (#80 ) (54d8d34 )
add expiration to keys for evaluation counts (#100 ) (6c9920f )
add get user evaluation interface implementation (#90 ) (e68dcc2 )
add handling for new metrics events in the persister service (#31 ) (6fc3419 )
add json transcoding to track api for testing (#37 ) (876fdaf )
add metadata property to proto client events (#34 ) (9cabd9f )
add new sdk metrics event types to proto (#29 ) (5d173d5 )
add postgresClient to persister (#73 ) (ff105f2 )
add redis pipeline metrics (#120 ) (610e07d )
add redis settings in the event persister service (#92 ) (bbf62ef )
add sdk version property to proto metrics events (#32 ) (2548847 )
add the ability to handle new metrics event in gateway (#33 ) (f29ab67 )
add the metadata property to metrics event proto message (#132 ) (af575de )
add upsert evaluation event in the persister event service (#88 ) (ce1f4e0 )
change event-counter timeout to 3 hours temporarily (#86 ) (c676599 )
change experiment batch cronjob (#126 ) (9cd856a )
change experiment updater cronjob settings (#55 ) (9a8a4d0 )
change grpc track api name temporarily for testing (#39 ) (03c626d )
change mau count api in the notification sender (#136 ) (5ca4170 )
change the timezone to JP location when saving the count in redis (#130 ) (fd8bd2e )
check for unsent events in the event persister before shutting down the service (#123 ) (1c0cd2c )
configure delete-e2e-data's Makefile to build docker image (#51 ) (0aba9f3 )
configure renovate for automerge and assigning reviewers (#71 ) (7a3429b )
display variation name in the variation label (#68 ) (8c56897 )
link goal event to the auto ops before sending it to kafka (#104 ) (bebc795 )
link the goal event to the experiment before sending it to kafka (#101 ) (015f326 )
remove bazel config files (#67 ) (efb48ea )
remove duplicated environment vars (#114 ) (6dd9801 )
remove expiration setting from the event and user count (#121 ) (b18232f )
remove postgreSQL test implementation from event persister (#96 ) (e9e51cd )
remove unnecessary health check in the envoy egress settings (#85 ) (5140c11 )
remove unnecessary health checks in the envoy settings (#87 ) (77474c2 )
remove whitespaces from the tag before upserting it (#35 ) (7871b97 )
set circuit break for api-gateway (#79 ) (45d1363 )
set version using ldflags (#48 ) (1c9cefb )
stop inserting events into postgres (#76 ) (6eea130 )
store evaluation count in redis (#91 ) (105b4da )
store evaluation events to postgresql (#63 ) (4c82b31 )
support aws kms (#62 ) (77b1ae6 )
support sdk version in the metrics (#54 ) (16cb007 )
ui/web-v2: change the local development server endpoint (#131 ) (d273656 )
update api-gateway proto descriptor value (#43 ) (0c2d619 )
update envoy gateway descriptor (#42 ) (0f95e97 )
update eventpersister to store mau to mysql (#81 ) (571cf44 )
update ingress api version (#99 ) (a33aa7c )
update redis default settings (#125 ) (405e495 )
update test runner image (#38 ) (8cd8db0 )
use redis instead of druid in GetEvaluationTimeseriesCount (#122 ) (517065e )
0.1.0 (2022/09/28)
Features
add the initial implementation (#1 ) (038601c )
0.1.0 (2022/09/25)
Features
0.1.1 (2022/09/25)
Bug Fixes
publish chart workflow not triggering (5f73004 )
0.1.0 (2022/09/25)
Features