You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Auto-generated summary unavailable; review changelog and commit details below.
Release scope: v0.2.2..v0.2.3.
Validation recommendation: run regression tests before production rollout.
Changelog Extract
Added
API key authentication middleware (APP_API_KEY) to restrict backend access via X-API-Key request header
Runtime config injection via docker-entrypoint.sh: writes env-config.js at container startup so the frontend can read the API key without baking it into the image at build time
Dev server middleware in vite.config.ts to serve empty env-config.js locally, eliminating 404 noise during development
Changed
Replaced EventSource with fetch + ReadableStream in useSSE.ts to support custom request headers for SSE streams
Docker image is now fully stateless (no secrets baked in); CI builds a generic image and the API key is injected at runtime via environment variable
Changed (Breaking)
Breaking: refactored module layout by moving setting/context/protocols/logger_util out of utils into config/settings, core/context, contracts/protocols, and observability/log_config; removed legacy import paths.
Simplified default app configuration: removed APP_NAME/APP_VERSION and kept only ENVIRONMENT (dropped DEBUG) from baseline runtime mode env vars.
Unified retry implementation by reusing decorator_utils retry internals from common_utils.
Removed Settings/get_settings/reload_settings re-exports from common_utils to reduce cross-module coupling.
Unified JSON write contracts so write_json and async_write_json both return bool.
Unified current date/time defaults to UTC in date_utils (get_current_date/get_current_time), with use_utc=False for local time.
Commits
78462e2 fix(test): stabilize useSSE reconnect timing (Tendo33)