Unreleased¶
Feature-change notes added in v0.2.0..HEAD.
Count: 91
Features¶
2026-05-23— Local Storage RBAC Recovery (0f24d7a)2026-05-23— API refactor compatibility hardening (d67ec27)2026-05-23— UI E2E launcher (d67ec27)2026-05-22— BLAST DB download hardening — version preview, honest copy status, atomic promotion (a408186)2026-05-22— PR1 — self-upgrade read-only surface (2026-05-22) (7afddae)2026-05-22— PR2 — self-upgrade build pipeline (2026-05-22) (f706047)2026-05-22— PR3 — self-upgrade apply + rollback + escape hatch (2026-05-22) (28ed94a)2026-05-22— PR4 — self-upgrade UX + history (2026-05-22) (6679940)2026-05-22— F2 — ACR retention pre-flight for rollback (2026-05-22) (bc3f553)2026-05-22— BLAST DB hardening round 2 — concurrency, signatures, security, cancel UX (409d02f)
Fixes¶
2026-05-23— OpenAPI BLAST submit path hardening — Phase 1+2 (c4d6d5c)2026-05-23— Cluster provisioning: ARM eventual-consistency guard for the RG ensure step (54eb4ab)2026-05-22— F1 —__version__auto-injection (2026-05-22) (3a1b2e4)2026-05-22— BLAST submit — stop consuming retry budget on lock contention (68dc696)
Other¶
2026-05-24— AKS Provisioning — Pre-flight, Region-filtered SKU Picker, Portal Link (6684d1d)2026-05-24— AKS Provisioning UX — P3 (Cancel, Persistence, Portal Fallback) (6684d1d)2026-05-24— AKS Provisioning UX — Remaining items (Server-side persistence, cross-tab sync, cancel-with-partial) (6684d1d)2026-05-24— AKS Provision Modal Stability (6684d1d)2026-05-24— AKS Provisioning — Allow Reusing an Existing Resource Group (6684d1d)2026-05-24— AKS Provisioning UX Overhaul — P0+P1+P2 (preflight rigour, modal lifecycle, error card, live preflight, smart defaults) (6684d1d)2026-05-24— AKS Provisioning — Step / Pool / ARM Sub-Progress (6684d1d)2026-05-24— Auto Warm Sharded Throughput Defaults (6684d1d)2026-05-24— BLAST Database Availability Guard (6684d1d)2026-05-24— DB Get AKS Topology Confirmation (6684d1d)2026-05-24— Failed Job Run Details Tab (6684d1d)2026-05-24— HTTP Inspector Metadata Capture (6684d1d)2026-05-24— Key Vault Soft-Delete Recovery (6684d1d)2026-05-24— Live Wall Log Stream (6684d1d)2026-05-24— Local log active-session guard (6684d1d)2026-05-24— Local Server Restart Hardening (6684d1d)2026-05-24— NCBI-style result download options (6684d1d)2026-05-24— 2026-05-24 — New Search: DB-first stepper + per-DB query examples (6684d1d)2026-05-24— Second-pass performance hardening (6684d1d)2026-05-24— SKU Normalization for Warmup Capacity (6684d1d)2026-05-24— Status Message Truthfulness (6684d1d)2026-05-24— WAF six-stage hardening pass (6684d1d)2026-05-24— Workspace Discovery Ready Tags (6684d1d)2026-05-23— K8s pooled session — bump HTTPAdapter pool_maxsize to 32 (ff630d4)2026-05-23— monitor_cache — JSON bytes storage (no more deepcopy) (b04657a)2026-05-23— frontend_proxy — stream the upstream response instead of buffering (87dff03)2026-05-23— audit_log — collapse N+1 history query into a single bulk read (40f883a)2026-05-23— require_caller — async + lazy threadpool offload (b451f08)2026-05-23— wait_for_warmup_jobs — dedup state writes + adaptive poll backoff (b31c022)2026-05-23— storage_usage_cache — JSON bytes storage, no per-hit deepcopy (20b53de)2026-05-23— sanitise — short-circuit + factored GUID redactor (33d64fa)2026-05-23— request-detail inspector — lazy slice (drop the duplicate body buffer) (5a86e02)2026-05-23— JWKS single-flight election (2683176)2026-05-23— _ensure_table — double-checked lock to collapse first-boot herd (84c3a35)2026-05-23— k8s_monitoring — shared ThreadPoolExecutor (drop per-call spawn) (874f5d9)2026-05-23— lifespan — warm DefaultAzureCredential at startup (d7e4a37)2026-05-23— _shard_set_already_present — single list_blobs probe (6fb6dec)2026-05-23— cancel — raise the child-limit cap and reject overflow explicitly (5300bbe)2026-05-23— Tail-batch P2 — lifecycle + concurrency + streaming proxy + lock-free emit (575663a)2026-05-23— ACR card: surface in-progress builds after browser refresh (a7031aa)2026-05-23— BLAST DB catalog: mark unsupported entries with a dedicated badge (a7031aa)2026-05-23— Dashboard cards: minimum shimmer duration on refresh (a7031aa)2026-05-23— 2026-05-23 — services/openapi subpackage (c0611ff)2026-05-23— 2026-05-23 — services/storage subpackage (c5279c6)2026-05-23— 2026-05-23 — services/warmup subpackage (jobs/planner/scripts) (775eefa)2026-05-23— 2026-05-23 — services/k8s subpackage (metrics/monitoring/observability/timestamps) (2122727)2026-05-23— 2026-05-23 — services/blast subpackage (15 modules) (0f2b5b6)2026-05-23— 2026-05-23 — api/app/ subpackage (main.py split) (b8e3879)2026-05-23— 2026-05-23 — routes/terminal subpackage (903bfb6)2026-05-23— 2026-05-23 — services facade contract regression test (1985680)2026-05-23— 2026-05-23 — SRP / directory restructure summary (Phase A+B+D+hardening) (ffd9136)2026-05-23— cli-upgrade.sh — deep readiness probe + Storage isolation parity preflight (13ddf03)2026-05-23— cli-upgrade hardening round 2 — concurrent-deploy lock, deploy history, richer probe diagnostics (1c4eebc)2026-05-23— 2026-05-23 — Test configuration overhaul (parallel + filtered dev loop) (5d9c569)2026-05-23— 2026-05-23 — Add CI test workflow (5e52d08)2026-05-23— Fix pre-existing test failures so backend CI turns green (16f544e)2026-05-23— BLAST Database Large Download Focus (6684d1d)2026-05-23— Performance hardening batch (6684d1d)2026-05-22— In-app self-upgrade — design (2026-05-22) (6c24603)2026-05-22— Self-upgrade — 20-point critique hardening (2026-05-22) (bc34a7e)2026-05-22— Self-upgrade — 40-point critique hardening (2026-05-22) (5fa611f)2026-05-22— Redis client pool — stop per-callfrom_urlleak (ebc6011)2026-05-22— Split-parent XML merge — streaming rewrite (8314071)2026-05-22— Bound every metadatadownload_blob().readall()with a hard size cap (2b354de)2026-05-22— Bound worker memory: exec_server output cap + Celery lifecycle limits (00126cc)2026-05-22— Parallelize split-child report + artifact downloads (3f5668a)2026-05-22— BLAST XML parser — incremental walk via iterparse (61e9c66)2026-05-22— Cache hot path: drop deepcopy + use OrderedDict LRU eviction (4d2e6c8)2026-05-22— Poll cadence — back off after the first minute (28d3ba6)2026-05-22— Pool the per-request TableClient in job_artifacts + auto_warmup (6687035)2026-05-22— BlobServiceClient pool — finalizer + idle TTL (fcf6398)2026-05-22— exec_server: line-length cap + temp-dir GC daemon (50f4e90)2026-05-22— stream_blob_bytes — wrap every active transfer in a bounded semaphore (92b739a)2026-05-22— Tail hardening: inflight TTL + event_emitter shutdown + blob fast path (b54c4f5)2026-05-22— reset_credential() cascade — reset every downstream pool (f2e7507)2026-05-22— 2026-05-22 —/api/arm/.../locationsModuleNotFoundError fix (a7031aa)2026-05-22— 2026-05-22 —local-debug-auth.shone-shot toggle for real MSAL login locally (a7031aa)