Change Log¶
This page indexes every per-feature change note under docs/features_change/.
Notes are grouped by month, then by category (BLAST, Storage, UI,
Security, …). The grouping is generated at build time by
scripts/docs/changelog_index_hook.py
— update its CATEGORY_PREFIXES map if you introduce a new product area.
For curated release-by-release summaries (which feature shipped in which version), see Releases.
2026-07 (6 notes)¶
Storage / DB (2)¶
2026-07-03— DB volume/shard consistency self-heal2026-07-03— Warmup blastdbcmd integrity gate
Misc (4)¶
2026-07-03— Service Bus completion failure detail2026-07-01— Copy curl inlines the real shared token + Bicep persistence2026-07-01— Copy curl in the API Reference emitsX-ELB-API-Token2026-07-01— Universal M2M shared-token auth across everyrequire_callerroute
2026-06 (476 notes)¶
BLAST (65)¶
2026-06-25— Auto-retry + quarantine for transient-failed BLAST jobs2026-06-25— Self-service BLAST submit templates2026-06-23— Faster job detail under cluster outage + correct worker Sizing row2026-06-21— Collapse long BLAST hit descriptions behind a "more" toggle2026-06-21— BLAST jobs list — copyablejob_idchip2026-06-21— BLAST jobs list — realnext_cursor(#50 AC4 / #51 local half)2026-06-21— BLAST live-log tail follow — fix dropped tail + "jump to latest" pill2026-06-21— BLAST Results interactions batch2026-06-21— BLAST results show "degraded" for large successful searches2026-06-21— BLAST Results — UX batch2026-06-21— BLAST step-log reader controls + a11y polish2026-06-21— BLAST Submit wizard — UX batch2026-06-20— BLAST workflow-manager export2026-06-20— NCBI fetch accepts PDB structure-chain accessions2026-06-19— BLAST submit waits for a still-copying database instead of failing2026-06-18— Recent searches page-size cap and BLAST jobs pagination envelope2026-06-18— Inline Web BLAST search-space drift recalibration2026-06-17— BLAST Results — tab badge reads "Queued" for queued jobs (no more mixed Running/queued)2026-06-16— Recover blastn failure detail behind coarse Kubernetes pod-state errors2026-06-15— 2026-06-15 — core_nt sharding default + token 401 self-heal on the data path2026-06-14— Blast External Job Presentation Fixes2026-06-14— Faster job visibility in Recent searches and the dashboard2026-06-13— BLAST failures surface the real reason, not just an opaque error code2026-06-13— BLAST submit failed with "no output captured" — root cause + observability2026-06-12— BLAST DB: clear stale "Update available" after a successful update2026-06-12— BLAST Results — Empty-Column Reason Banner (#32)2026-06-12— BLAST submit failures now surface the detailed console error2026-06-10— 2026-06-10 — BLAST Execution Steps: follow the active step, not the page bottom2026-06-10— NCBI efetch timeout for large GenBank records2026-06-09— BLAST Run button — no more silent disable2026-06-07— BLAST submit idempotency key from the SPA2026-06-06— BLAST DB path uses the blob directory, not the filename base2026-06-06— 2026-06-06 — BLAST search failure reporting + full-DB warmup coverage2026-06-06— BLAST search pod: vmtouch warm step (restored where it actually works)2026-06-05— BLAST database listing performance + upgrade escape-hatch probe gating2026-06-05— BLAST database recommendation panel ("Help me choose")2026-06-05— Block a full-DB BLAST that does not fit node memory (before it runs)2026-06-04— BLAST Databases — immediate Cancel/Delete feedback2026-06-04— BLAST Databases modal — loading skeleton2026-06-04— BLAST job list distinguishes Queued from Running2026-06-04— BLAST submit coordination — Phase 02026-06-03— Fix precise-sharding BLAST submit for NCBI accession queries2026-06-03— BLAST concurrency — live empirical validation (2026-06-03)2026-06-03— BLAST Databases modal — program-oriented filter + best get path2026-06-03— BLAST example picker — auto job title refreshes on example switch2026-06-03— Cancel external (OpenAPI sibling) BLAST jobs via the sibling DELETE endpoint2026-06-03— BLAST jobs shared visibility (dev-stage flag)2026-06-03— BLAST program ↔ database coupling and NCBI v5 catalog name fixes2026-06-03— BLAST result panels beyond NCBI Web BLAST2026-06-03— BLAST Results — live-status-paused banner when polling fails2026-06-03— BLAST run live log — smooth line-by-line auto-scroll2026-06-03— BLAST score-class truncation badge, near-miss preservation, and bit-score explanation2026-06-03— BLAST submit live log — stop mislabeling progress as[stderr]2026-06-03— BLAST submit re-enqueues for node-local warmup instead of failing2026-06-03— NCBI nuccore parity for the Sequence Detail page2026-06-03— Trust and verification signals on the Sequence Detail page2026-06-02— Structured database snapshot-drift verdict for BLAST parity2026-06-02— BLAST submit: actionable hint when the database does not fit node memory2026-06-01— Reproducible Methods citation for BLAST jobs2026-06-01— BLAST database recommendation endpoint2026-06-01— BLAST DB update shows live copy progress, not just "Updating"2026-06-01— BLAST jobs empty-state "no shared queue" note2026-06-01— BLAST Jobs list: mark active rows stale when the cluster is stopped2026-06-01— BLAST submit step now streams ElasticBLAST's full progress log2026-06-01— NCBI Web BLAST-style Descriptions export
AKS / Cluster (25)¶
2026-06-26— Actor audit on cluster lifecycle + auto-stop config2026-06-24— 2026-06-24 — Auto-delete completed BLAST batch Jobs (TTL)2026-06-18— Retry dropped AKS keepalive sockets on k8s GETs (#45)2026-06-18— K8s TLS CA in-memory (#47)2026-06-17— OLD (lines 304-308 before)2026-06-17— K8s API circuit breaker — stop the unreachable-cluster exception flood2026-06-13— AKS Container Insights survives cluster recreate (opt-in)2026-06-12— AKS Provisioning — Monotonic Step Counter2026-06-12— Cluster Job Logs — Surface the Degrade Reason (#28)2026-06-10— OpenAPI ensure-running readiness gate2026-06-08— 2026-06-08 — Cluster workload-node scaling with automatic re-warm2026-06-05— Aks Lifecycle Idempotent Retry2026-06-05— AKS start: kill the "UI stays Starting until refresh" lag2026-06-05— Cluster card refreshes itself while a cluster is provisioning2026-06-04— Fix AKS top-nodes crash on microcore CPU metrics2026-06-03— AKS auto-stop recognises live OpenAPI BLAST runs2026-06-03— AKS idle auto-stop no longer stops a freshly started cluster2026-06-03— AKS card: live real-time auto-stop countdown2026-06-03— AKS Observability: self-heal LinkedAuthorizationFailed when enabling Container Insights2026-06-03— Accept lowercased ARM workspace id when enabling AKS Container Insights2026-06-03— Cluster details — all pods, namespace filter, Node / Pod IP2026-06-03— Cluster modal Workloads card — Pods / Deployments / Jobs tabs2026-06-03— Cluster card no longer flaps "Starting → stopped" after Start2026-06-01— AKS BYO-subnet for workload Storage connectivity2026-06-01— AKS provision modal closes immediately on task enqueue
Terminal (8)¶
2026-06-14— Fix terminal WebSocket / SSE 403 — single uvicorn worker2026-06-05— Terminal preview enabled by default2026-06-04— Terminal Config Builder — live database picker and simplified form2026-06-04— elb-cfg config helper and Cockpit Parameter Form2026-06-04— Terminal find, font zoom, and copy/paste keybindings2026-06-04— Terminal moved behind a Settings → Preview opt-in2026-06-04— Terminal paste safety, delete guard, onboarding, and honest capability tiers2026-06-04— Terminal select-to-copy
Storage / DB (28)¶
2026-06-29— Storage-first download for completion-event result files2026-06-18— Warmup pod-log ConnectionError suppression (#45)2026-06-14— Warmup progress bar — indeterminate state during bootstrap2026-06-13— Warmup no longer rejects prepared databases as "unknown database"2026-06-12— prepare-db: small-DB server-side routing + adaptive poll + pre-baked azcopy image2026-06-10— Auto-warmup warms the current generation when an NCBI update is available2026-06-10— Warmup azcopy: let azcopy auto-tune concurrency (drop the hard-coded 16)2026-06-09— Warmup transparency — show the steps for auto-warmup too2026-06-07— Auto-warmup reconcile memoises the ARM cluster list per tick2026-06-07— Auto-warmup follow-up hardening + second critique (25 new issues)2026-06-07— Auto-warmup "cluster starts but stays cold / Stale" — root cause + reconcile critique2026-06-06— Warmup Job: drop the fake vmtouch step (staging-only semantics)2026-06-05— Prepare Db Aks Progress Since Filter2026-06-05— prepare-db AKS download: single azcopy S3Blob per shard2026-06-05— prepare-db AKS-fanout: in-pod azcopy resume loop (no full-shard re-download)2026-06-05— Prepare Db Per Index Backoff2026-06-05— prepare-db AKS-fanout: surgical per-file repair (delete + re-copy poisoned blobs)2026-06-04— prepare-db AKS: raise Job deadline + per-task Celery limits sont/core_ntfinish2026-06-04— Prepare-DB opts into the fast AKS-fanout azcopy download from the UI2026-06-04— prepare-db AKS-fanout: surface file-level download progress in the BLAST Databases modal2026-06-04— prepare-db AKS: cancel→re-Get Job-name race fix + pod progress logging2026-06-04— prepare-db AKS-fanout: azcopy PipeBlob syntax + idempotency skip fixes2026-06-04— prepare-db Cancel/Delete lifecycle completion2026-06-04— Prepare-DB delete: batch removal + "Deleting…" row state2026-06-04— Fix prepare-db verify false-failures under azcopy 10.322026-06-03— Warmup denominator: node-local warmup Jobs are authoritative over setup Jobs2026-06-03— Warmup status merge preserves DB-generation marker2026-06-01— BLAST database download progress, ETA, and cancel confirmation
OpenAPI (40)¶
2026-06-27— elb-openapiMAX_ACTIVE_SUBMISSIONSdefault → 4 (manifest revision 5)2026-06-23— OpenAPI runtime endpoint re-stamp reconciler (Service Bus drain deadlock fix)2026-06-21— OpenAPI dispatcher reclaims dead-thread submit slots (#62)2026-06-20— openapi/databases route derives Storage account from blob endpoint2026-06-19— elb-openapi burst resilience2026-06-19— elb-openapi run-concurrency 2 → 32026-06-18— Durable-mirror the OpenAPI webhook token (#49)2026-06-16— Custom domain for the OpenAPI public HTTPS endpoint2026-06-16— Thread cluster scope through external BLAST facade outbound calls2026-06-15— API Reference Core section placement and stopped-cluster visibility2026-06-15— Cluster-independent BLAST database catalogue endpoints2026-06-15— Database metadata endpoint reads NCBI metadata blobs for a true elb-openapi drop-in2026-06-15— One-actionelb-openapirebuild + redeploy2026-06-15— Durable backing for the IP-based OpenAPI runtime endpoint cache2026-06-15— Opt-in shared-token auth for the read-only OpenAPI database routes2026-06-14— ROLLOUT ORDER (per charter): sibling first, image second, pin third.2026-06-14— Activate elb-openapi terminal-transition webhook (F4)2026-06-14— Openapi Webhook Token From Ops Redis2026-06-13— Rebuild elb-openapi 4.22 so the finalizer preserves the outfmt 7 '# Fields:' header2026-06-13— OpenAPI internal LoadBalancer subnet-RBAC recovery route (issue #33)2026-06-13— API Reference shows "Starting…" while elb-openapi pod boots2026-06-13— Thread cluster context into the OpenAPI proxy token lookup2026-06-13— OpenAPI proxy "Try it" surfaces the LB subnet-RBAC recovery hint (#33)2026-06-12— API page: scope public-HTTPS status by cluster + stop mislabelling 404 as unreachable2026-06-10— API Reference "Core" control-plane section2026-06-10— OpenAPIelb-openapi4.21 rebuild for shardedoutfmt 72026-06-10— elb-openapi redeploy banner — surface silent-failure cases2026-06-10— elb-openapi redeploy banner (manifest drift detection)2026-06-10— elb-openapi single queue owner (replicas 2 → 1)2026-06-10— Derive OpenAPI submit idempotency key from correlation id2026-06-10— Preserve the OpenAPI API token across AKS stop/start2026-06-07— OpenAPI proxy exact-path allowlist + inspector body secret masking (2026-06-07)2026-06-04— 2026-06-04 — OpenAPI Mode B/v1/jobs16S example fix (4.18 → 4.19)2026-06-04— 2026-06-04 — OpenAPIcompleted→/results404 race fix (4.19 → 4.20)2026-06-03— elb-openapinum_cpusknob and the realcore_ntconcurrency ceiling2026-06-03— Self-learning per-job ETA for the elb-openapi status API2026-06-03— Reactive OpenAPI token resync on 401 readiness probe2026-06-02— elb-openapi ServiceAccount → cluster-admin (BLAST submit RBAC fix)2026-06-02— elb-openapi in-cluster kubeconfig (/v1/ready503 fix)2026-06-02— 2026-06-02 — OpenAPI core_nt sharding regression fix (4.17 → 4.18)
Dashboard / UI (22)¶
2026-06-24— Jobs User column: control-plane origin labels (2026-06-24)2026-06-23— Frontend result screens: prefix-agnostic + date-aware hints2026-06-23— Real-time job updates via SSE2026-06-23— Results-layout backfill + flat/dated coexistence2026-06-23— Hierarchical date layout for results — flag-gated2026-06-21— Dashboard — UX batch2026-06-21— Dashboard UX + perf fixes: skeleton shimmer, fast session-expiry, HTTP inspector, K8s job declutter2026-06-19— Align light-theme dashboard with Azure portal / Fluent surface conventions2026-06-19— New Search "Generate query" — fetch a query sequence from NCBI2026-06-18— 2026-06-18 — BLAST jobs list cold-cache latency fix2026-06-18— Light theme — VS Code Light Modern title-bar chrome2026-06-18— New Search submit no longer hard-blocks on a drifted core_nt calibration2026-06-16— Submit fallback for optional elastic-blast config-param version skew2026-06-13— Dashboard resource-group call dedupe2026-06-13— New Search "Include taxonomy columns" toggle2026-06-10— Optional dashboard RBAC entry gate2026-06-10— Dashboard entry RBAC gate enabled by default2026-06-07— Submit gates single-flight under a 50-parallel burst (2026-06-07)2026-06-05— BLAST jobs listing returns the genuinely most-recent N2026-06-05— 2026-06-05 — New Search database listing: cache + event invalidation + prefetch2026-06-03— Frontend-proxy test client leak fix2026-06-01— Results page scoping uses the job's own cluster RG, not the workspace anchor
Self-upgrade (7)¶
2026-06-07— Self-upgrade fixes — PLATFORM_ACR_NAME env and failed_pre restart2026-06-07— Self-upgrade az login — bootstrap MSI account context for az acr build2026-06-07— Self-upgrade build — context cwd and terminal base image2026-06-07— Self-upgrade commit clone — drop blobless so az acr build sees a full tree2026-06-07— Self-upgrade reconciler — detect success via deployed image2026-06-07— Self-upgrade rollout budget — anchor to the PATCH moment2026-06-07— Self-upgrade reconciler — recognize "RunningAtMaxScale" as healthy
Docs (1)¶
2026-06-13— Documentation screenshot refresh
Deploy (3)¶
2026-06-13— Workload logs: show all pods and all containers2026-06-05— Auto-offer deploy after a successful image build2026-06-01— Deploy: pin images to digests + bake api version
Misc (277)¶
2026-06-29— App Insights connection string survives full provision2026-06-29— Hide cost estimate card and submit templates control2026-06-27— Code audit fixes — race, resource cleanup, narrowing asserts, input caps2026-06-27— Code audit round 2 — second pass after the first round shipped2026-06-27— Fast-fail kombu probes + bounded Celery result backend connect2026-06-27— Message Flow — actor label clipping fix + queued/running clarity2026-06-27— SB throughput observability — App Insights / Log Analytics2026-06-27— Service Bus queue-arrival auto-start ON (worker sidecar)2026-06-27— Service Bus client retry cap2026-06-27— SB throughput load test results — N=10, N=50, (N=200 in progress)2026-06-27— Service Bus throughput tuning — Tier A enabled + Tier B note2026-06-26— Outbound webhook notifications (Slack/Teams/Discord, opt-in)2026-06-26— Provider-aware rich webhook messages (Slack / Teams / Discord)2026-06-25— Cluster cost estimate + budget guardrail2026-06-25— In-app job notification center2026-06-25— Live VM pricing for the cost estimate (opt-in)2026-06-25— Manual retry + auto-retry status for failed jobs2026-06-24— CSV / TSV formula-injection (CSV injection) defence for result exports2026-06-24— Queue/API job detail completeness — 4 follow-ups (2026-06-24)2026-06-24— Full parameter + region capture for queue / API BLAST jobs (2026-06-24)2026-06-24— Service Bus integration hardening (2026-06-24)2026-06-24— Service Bus result downloads — consumer format/decompress options + error bodies2026-06-23— api sidecar bumped to 1.0 vCPU / 2.0Gi2026-06-23— Configure preview reflects the existing cluster shape and outfmt parity columns2026-06-23— ADLS Gen2 (dfs) client pool + capability probe2026-06-23— dfs recursive delete for staged BLAST databases2026-06-23— Recursive job-storage delete via dfs — flag-gated2026-06-23— dfs-backed result listing — flag-gated2026-06-23— Event-driven queue-arrival auto-start2026-06-23— Date-tiered results layout for external (SB / OpenAPI) BLAST jobs2026-06-23— Fix broken result-download fallback (removed SASdownload_urlpath)2026-06-23— Layout-aware result-blob ownership validation2026-06-23— Message Flow — faster queue-arrival visibility2026-06-23— Retention purge + blob soft-delete + cost lifecycle2026-06-23— Service Bus drain — atomic single-writer claim2026-06-23— Service Bus drain — single-flight lease2026-06-23— Service Bus drain — optional parallel submit fan-out2026-06-23— Service Bus queue-arrival AKS auto-start2026-06-23— Service Bus send — fail-closed backpressure2026-06-23— Split jobs are date-aware2026-06-23— Push job status transitions to the SSE stream2026-06-23— Canonical per-job results prefix as system-of-record2026-06-23— Inject Web-BLAST-parity columns into tabular outfmt2026-06-22— ACR image retention — keep newest 3, prune older on deploy/upgrade2026-06-22— Pipeline export menu + Descriptions keyboard grid navigation2026-06-22— ElasticBLAST program enum-sync guard (#56)2026-06-22— Service Bus resultdownload_url— pre-authorize the Azure CLI2026-06-22— Service Bus outfmt-7 path applies the Web BLAST searchsp oracle2026-06-21— A11y + taxonomy UX batch2026-06-21— Auto-refresh cadence ring (#33)2026-06-21— Show db / queries / resource-group in the Configure INI preview2026-06-21— Descriptions table row windowing (#29)2026-06-21— Inline download progress for result files (#24)2026-06-21— Fix api sidecar 100% CPU from non-idempotent external-jobs sync2026-06-21— Hot-path load hardening (chunked history, cached job list, streamed export)2026-06-21— Submit-time program × database compatibility guard (#56)2026-06-21— Serve external/Service Bus result downloads from Storage after cluster auto-stop2026-06-21— Horizontal scroll-shadow cue (#25)2026-06-21— Surface the Service Bus request correlation id + true origin on the Jobs list2026-06-21— Fix 500 + connection leak when downloading a result file from a stopped cluster2026-06-20— Beat tasks skip the tick on transient infra errors instead of crashing2026-06-20— exp-skip-warmed-ssd-init submit failure — durable fix + readable error2026-06-20— Light-theme readability for INI/FASTA file previews2026-06-20— Message lifecycle shows canceled for failed jobs2026-06-20— Natural Service Bus request subjects + "BLAST Jobs" menu label2026-06-20— outfmt 7 results populate Description and HSP Cover columns2026-06-20— Service Bus Playground — editable, auto-validated request body2026-06-20— Fix review-badge popover clipped by table overflow / sticky header2026-06-20— Sequence builder ("Generate query") modal UI/UX overhaul2026-06-20— Fix:-negative_taxids/-taxidsfilter on sharded core_nt (blastn exit 255)2026-06-20— App-wide theme-token & modal polish pass2026-06-20— Cluster Workloads Pods/Jobs — newest-first infinite scroll2026-06-19— Auto-stop respects Service Bus request-queue depth2026-06-19— Auto-stop no longer stuck on "history_scan_truncated"2026-06-19— Auto-stop status route reflects Service Bus queue depth2026-06-19— Completed-job runtime-metric backfill no longer starves older jobs2026-06-19— Recover external-job Query ID from Storage when the Redis label is gone2026-06-19— Fix "Could not load input.fa" query preview for external BLAST jobs2026-06-19— Improve Generate-query modal readability (WCAG AA)2026-06-19— Periodic jobstate time-index reconcile (heals best-effort index gaps)2026-06-19— Message Flow card — background external-jobs sync for fast first paint2026-06-19— Message Flow telemetry fidelity + job-detail redaction hardening2026-06-19— Modal accessibility pass2026-06-19— Integrated platform E2E scenario suite2026-06-19— Service Bus requests surface on the dashboard quickly2026-06-19— Worker sidecar OOM fix + quick-deploy resource reconciliation2026-06-18— ARM discovery AuthorizationFailed log downgrade (#46)2026-06-18— Methods citation reproducibility caveat (#2 R4)2026-06-18— Time-ordered jobstate index — PR-1 (#50)2026-06-18— Message Flow modal — manual refresh + queued-messages clarity2026-06-18— quick-deploy Service Bus gate notice2026-06-18— Recent searches load-more (infinite scroll)2026-06-18— Service Bus completion entity: topic (default) or queue2026-06-18— Drain the shareddefaultcompletion subscription (multi-subscription observer)2026-06-18— Service Bus settings: copyable env-gate remediation commands2026-06-18— Service Bus pipeline latency — drain/publish beat intervals to 10s2026-06-18— Service Bus activation is a runtime feature flag (SERVICEBUS_ENABLED → 3-state override)2026-06-18— AKS top-nodes HTTPError transient classification (#48)2026-06-17— Connect a custom domain to the dashboard Container App (operator automation)2026-06-17— Control plane domain — MSAL redirect URI guidance + FQDN overlap fix2026-06-17— Live pod logs for external / Service Bus jobs via sibling-exposed elb_job_id2026-06-17— Fix Service Bus CI hang (BlobServiceClient pool finalizer self-deadlock) + examples doc2026-06-17— Service Bus completion events carry result-file download URLs2026-06-17— Service Bus jobs keep their "servicebus" source label in Jobs / Recent searches2026-06-17— Service Bus load verification — drain backlog + /v1/jobs rate limit2026-06-17— Clarify Service Bus queue-first architecture docs2026-06-17— Allow request-only Service Bus Settings2026-06-17— Fix stream_file 401 — result download self-heals stale openapi token2026-06-17— BLAST database chip — reframe stale warm cache as a warming step, not an error2026-06-16— Configurable control-plane custom domain2026-06-16— Cross-surface BLAST sharding contract convergence2026-06-16— Reconcile recovers completed jobs from the durable SUCCESS marker2026-06-16— Stop the in-revision Redis broker from evicting queued jobs2026-06-16— Service Bus dead-letter queue management2026-06-16— Service Bus idle tick stops flooding App Insights2026-06-16— Service Bus message peek in Playground and Message Flow2026-06-16— Queue-visible-from-send for Service Bus BLAST requests2026-06-16— Fix singleton prefix-listing upper bound2026-06-16— Fix worker crash-loop that failed and slowed BLAST jobs2026-06-15— Auto-stop "Extend 30 min" now shows the extended time2026-06-15— Issue #24 —blast.tstype extraction completed2026-06-15— Issue #24 —ClusterBento.tsxsplit into focused modules2026-06-15— Issue #24 —prepare_db.pyAKS-fanout dispatch moved to a service2026-06-15— Issue #24 — final four SettingsPanel sections split2026-06-15— MessageFlow closed-loop visualization2026-06-15— 2026-06-15 — monitor cache cross-key invalidation liveness fix2026-06-15— 2026-06-15 — Playground presets and tabular multi-token mode2026-06-15— 2026-06-15 — Service Bus multi-token outfmt (/v1/jobs path)2026-06-15— 2026-06-15 — Service Bus Playground (preview)2026-06-15— Service Busrequest_idpass-through to optional completion events2026-06-15— 2026-06-15 — Service Bus bridge + webhook stability hardening2026-06-14— 2026-06-14 — API jobs no longer stuck as "blast" with no database2026-06-14— Durable live-activity anchor for AKS auto-stop2026-06-14— 2026-06-14 — Consumer-as-writer + message lifecycle trace (Tier 1 of #36)2026-06-14— E2E health sweep — MessageFlow halo stability, lint, and local web launcher2026-06-14— Error-surfacing audit + auto-warmup save toast2026-06-14— 2026-06-14 — External BLAST submit accepts stringoutfmt: "5"2026-06-14— External-origin failed BLAST jobs surface the real sibling error2026-06-14— Message Flow — Service Bus telemetry footer + scope/truncation badges2026-06-14— Message Flow card surfaces direct/v1/jobssubmissions2026-06-14— 2026-06-14 — BLAST jobs appear on Message Flow right after submit2026-06-14— 2026-06-14 — Message lifecycle UI + Bicep flag wiring (#36 finish)2026-06-14— 2026-06-14 — pre-push validates the pushed commit (split-commit guard)2026-06-14— 2026-06-14 — Reject non-positivetaxidat submit2026-06-14— 2026-06-14 — Service Bus unified ingress: Tiers 2-5 of #362026-06-13— App Insights / container-log issue remediation (2026-06-13)2026-06-13— Auto-stop zombie-row age-out + always-explained panel (2026-06-13)2026-06-13— Fix CI test hang from background refresh pools blocking interpreter exit2026-06-13— Extract pure helpers and shared atoms out of ClusterBento2026-06-13— Split EndpointCard.tsx into focused sub-components2026-06-13— ensure-running waits for per-database warmup2026-06-13— Per-cluster cluster context for the external-BLAST outbound resolver2026-06-13— External BLAST job failure detail recovered from cluster artifacts2026-06-13— Cache the direct external-BLAST jobs facade2026-06-13— Live Wall expandable log view (2026-06-13)2026-06-13— Service Bus Message Flow dashboard card2026-06-13— Message Flow modal rework2026-06-13— Message Flow modal — UX hardening pass2026-06-13— Message Flow — settling window + status visuals + energy particles2026-06-13— MessageFlow constellation hardening2026-06-13— MessageFlow constellation visualization2026-06-13— E2E coverage for MessageFlow constellation + cluster-row hardening2026-06-13— Node Resources cache bar: honest labelling2026-06-13— Correct the outfmt guidance to the UNQUOTED canonical multi-token form2026-06-13— Finish the ProvisionModal split — identity + context fields under 6002026-06-13— Extract the node-pool sections out of ProvisionModal2026-06-13— Service Bus dashboard visibility — surface the deployment gate2026-06-13— Service Bus env override survives redeploys + openapi LB-RBAC auto-detect & SPA fix2026-06-13— Per-deployment control-plane toggles survive every redeploy2026-06-13— Settings nav attention dot on Updates (2026-06-13)2026-06-13— Open the sharded merge gate to non-std extended tabular outfmt layouts2026-06-13— Stale warmup / prepare_db jobstate rows reach a terminal status (#34)2026-06-13— Surface container-internal errors across the Workloads card2026-06-13— Warm BLAST DB catalogue cache in the api process2026-06-12—[cd]commit marker triggers approval-free auto-deploy2026-06-12— External (/v1/jobs) jobs now show step content and a real error2026-06-12— Sequence Detail — Durable GenBank/esummary Cache (#27)2026-06-12— Recent searches: Service Bus inbound strip + submission-source filter2026-06-11— Optional Service Bus BLAST integration2026-06-11— Shardedoutfmt 7taxid / scientific-name columns reach the dashboard2026-06-10— App Insights: attach the failure reason to 4xx/5xx request spans2026-06-10— App Insights 4xx/5xx audit + drop the deadvmtouch-db-cache404 probe2026-06-10— Completed BLAST jobs no longer show a staleworker_losterror2026-06-10— Control-plane guard env applied on both full and fast deploys2026-06-10— Edit search loads the original query for external jobs2026-06-10— Feature lifecycle events to Application Insights2026-06-10— Field-aware sharded tabular merge (taxid / reordered outfmt)2026-06-10— Extended outfmt 7 (taxids) — boundary guard, OpenAPI example, routing docs2026-06-10— outfmt 7 sharded BLAST support (New Search + OpenAPI)2026-06-10— Quote-safe multi-token outfmt to shard pods (UNQUOTED wire format)2026-06-10— Recent searches now discovers directly-submitted/v1/jobsjobs across clusters2026-06-10— Run details header shows the query for API-submitted (/v1/jobs) jobs2026-06-10— Sharded merge preserves extended outfmt 7 Fields header2026-06-09— Bug-condition hardening sweep (2026-06-09)2026-06-09— Workspace discovery — reader-only callers see the dashboard, not the wizard2026-06-09— 2026-06-09 — Resync infra/main.json with committed Bicep (phase-1 RBAC + STORAGE_ACCOUNT_NAME)2026-06-09— VNet peering — orphaned ("Disconnected") peering cleanup2026-06-08— Auto-stop clears the fake preflight cooldown on late-skip (2026-06-08)2026-06-08— 2026-06-08 — Auto-stop idle-clock reset on shrink; move node scaling to detail modal; openapi storage env2026-06-08— 2026-06-08 — Live E2E validation of node scaling + warmup; two fixes2026-06-08— Three UX dead-end fixes (2026-06-08)2026-06-08— 2026-06-08 — Build-version stamp, workload-node submit gate, OpenAPI jobs error visibility2026-06-07— Upgrade build-log endpoint returns empty 200 for the in-flight job (2026-06-07)2026-06-07— Self-upgrade build logs flush incrementally during a build (2026-06-07)2026-06-07— External job projection always emits a string job_id (2026-06-07)2026-06-07— Failed-job error rendering — clamp error_code and the Recent searches note2026-06-07— Gzip result cap + NCBI signature sampling divisor (2026-06-07)2026-06-07— Submit-gate lock registry bound + asyncio executor sizing (2026-06-07)2026-06-07— Recent searches lists jobs across all clusters2026-06-07— Terminal sidecar pins ttyd to loopback in a deployed Container App (2026-06-07)2026-06-07— Update indicator deep-links to Settings → Updates (2026-06-07)2026-06-07— Upgrade history/build-log backend caching — stop redundant create_container2026-06-06— 2026-06-06 — App Insights warning hygiene2026-06-06— Diagnose & solve problems — Reliability & Availability diagnostics2026-06-06— Diagnose & solve problems — WAF/CAF catalog expansion (Reliability / Availability / Security)2026-06-06— E2E: permissions + network-isolation + performance scenario suites2026-06-06— E2E: restricted-user (Reader) persona + core_nt mock-lane permissions2026-06-06— #24 — Extract blast.ts types into blast.types.ts2026-06-06— #24 — Extract EndpointCard response helpers2026-06-06— #24 — Retire mockup pages + extract prepare-db AKS Job params2026-06-05— Access review — per-resource-group "View my access"2026-06-05— Commit-channel upgrade execution (install latest main commit)2026-06-05— E2E mock fixtures: faithful warm-status + task-poll + delete-confirm2026-06-05— Full-DB memory block: explain why node count does not help2026-06-05— Fix the full-DB memory block catch-22 for not-warm databases (node_disk)2026-06-05— Recognize group-inherited RBAC in caller permissions2026-06-05— jobstateupdate()submits a MERGE patch, not the full snapshot2026-06-05— Live Wall log SSE backs off when idle; monitor degradation is now metered2026-06-05— Auto warm re-runs after stop/start onnode_diskclusters2026-06-05— Two-colour node memory bar (working set vs. file cache)2026-06-05— Orphaned prepare-db reconciler2026-06-05— Per-operator browser terminal session isolation2026-06-05— Permission gate recognises inherited and group-granted roles2026-06-05— quick-deploy.sh backfills missing workspace discovery tags2026-06-05— Sequence Detail: "Your BLAST jobs for this accession" card2026-06-05— Settings → Updates: committed version + always-enabled check2026-06-05— Settings → Updates: scoped Reset + visible upgrade CTA + change diff link2026-06-05— Update check: zero-config default remote + "new commits" channel toggle2026-06-05— Upgrade actions authorized by Owner/Contributor RBAC (no allowlist needed)2026-06-05— Upgrade page: make "Check remote" give visible feedback2026-06-05— Settings — show existing VNet peerings2026-06-04— Native ACA blue/green self-upgrade2026-06-04— Byte-based prepare-db copy ETA2026-06-04— Terminal Cockpit critique round-2 fixes2026-06-04— Terminal Cockpit functional fixes (20-item critique)2026-06-04— External-API BLAST jobs show the full database metadata block2026-06-04— Fix invalid NCBI deep-links (sequence detail + BLAST taxonomy)2026-06-04— Settings → Updates section2026-06-04— VNet peering auto-detects the elb-openapi private IP2026-06-04— VNet peering for BYO-subnet AKS clusters2026-06-04— VNet peering RBAC remediation2026-06-03— GenBank flat-file record card on the Sequence Detail page2026-06-03— Measured cluster start/stop estimate2026-06-03— Build DB order oracle button gated on AKS cluster running2026-06-03— Settings → Performance: per-cluster warm-cache mode2026-06-03— Public HTTPS — open the BYO node-subnet NSG to the ingress LoadBalancer2026-06-03— quick-deploy: refuse to bake a wrong-tenant MSAL client into the cloud frontend2026-06-03— NCBI-style colored full-sequence view2026-06-03— Sequence Detail — show full, no truncation2026-06-03— In-page NCBI Sequence Viewer (SViewer) embed2026-06-03— Workloads: Logs / Describe / Delete for Deployments and Jobs2026-06-02— API concurrency and throughput improvements2026-06-02— API security hardening — batch 12026-06-02— API security hardening — batch 22026-06-02— External BLAST API evalue default aligned to NCBI (0.05)2026-06-02— Live Wall logs: fix LA-fallback self-deadlock on first fetch2026-06-02— Sequence Detail page surfaces NCBI-record provenance fields2026-06-02— Sign-in: route expired sessions to the login page; finish az-demo cleanup2026-06-02— Workspace banner: dropaz-demodev hint, describe managed-identity Reader2026-06-01— Auto-stop livelock: act task skipped its own enqueued stop on cooldown2026-06-01— CI-mirror git hooks block red builds before push2026-06-01— Maintainability hardening: shared env-loader, azure.mgmt factory consolidation, feature-gate registry2026-06-01— Parallel result-blob reads for BLAST export and aggregate2026-06-01— Runtime summary reflects the effective warmup / sharding that will run2026-06-01— Sharded throughput gate distinguishes "checking" from "not warm"2026-06-01— SRP split ofapi/services/k8s/monitoring.py2026-06-01— Reconcile: refine opaqueworker_lostintocluster_stopped/cluster_not_found
2026-05 (618 notes)¶
Security (17)¶
2026-05-30— RBAC removal preflight — 30-point hardening wave2026-05-30— 2026-05-30 — Phase-1 RBAC narrowing for the shared control-plane UAMI (audit P2 #16-20)2026-05-30— 2026-05-30 — RBAC removal halt atazd provision(charter §12a Rule 7)2026-05-30— Security hardening governance + safety net2026-05-29— 2026-05-29 — RBAC-aware UI:/api/me/permissions+<PermissionGate>(#6)2026-05-29— 2026-05-29 — PermissionGate wave 2, BLAST submit sanitisation, quick-deploy preflight (#6 / #7 / #8)2026-05-22— MSAL clientId placeholder guard + local-run auto-pull2026-05-22— Security audit 2026-05-22 — items #12, #13, #14, #18, #202026-05-22— Security audit 2026-05-22 — items #3, #6, #72026-05-22— Security audit 2026-05-22 — items #4 (tid claim) + #8 (cross-account)2026-05-22— Security audit 2026-05-22 — item #52026-05-22— Security audit 2026-05-22 — items #9, #10, #112026-05-19— Production Feature Flags2026-05-15— 2026-05-15 — Auth claims cache, AGENTS.md navigation map, CAF resource tags2026-05-13— Auth Session Refresh Banner2026-05-13— Production Hardening Wave 22026-05-11— Security Hardening Audit — 60 Findings
BLAST (106)¶
2026-05-31— NCBI Web BLAST parity wave — 8 code fixes + 12 documented gaps2026-05-28— BLAST Results: Review badge popover + column hint tooltips2026-05-28— 2026-05-28 — NCBI accession + SequenceDetail hardening (10 critique items)2026-05-28— NCBI accession workflow — sequence detail page + BLAST submit-by-accession2026-05-28— Web BLAST parity fixtures and request-mapping contract test2026-05-28— Web BLAST XML comparator, exclusion verifier, and full reference XML capture2026-05-27— BLAST Options Reference (mkdocs)2026-05-27— BLAST pre-flight: ACR images gate + one-click build remediation2026-05-27— Blast submit: default Execution Profile to a Running cluster2026-05-26— Synchronous BLAST submit preflight gates2026-05-26— BLAST Submit Slot Waiting UI2026-05-25— BLAST DB Version FTP Links2026-05-25— 2026-05-25 —blast-execution-validationfull-azure run (concurrency=2, max-hours=4)2026-05-25— BLAST Execution Validation Skill2026-05-25— BLAST Submit — subscription-wide cluster picker2026-05-25— BLAST submit hardening — control-plane direct vs OpenAPI path audit2026-05-25— 2026-05-25 — BLAST submit silently failed (kubeconfig drift + storage env mismatch)2026-05-24— BLAST Database Availability Guard2026-05-24— NCBI-style result download options2026-05-23— BLAST DB catalog: mark unsupported entries with a dedicated badge2026-05-23— BLAST Database Large Download Focus2026-05-22— Alignments tab — infinite scroll for pairwise cards2026-05-22— BLAST DB download hardening — version preview, honest copy status, atomic promotion2026-05-22— BLAST DB hardening round 2 — concurrency, signatures, security, cancel UX2026-05-22— 2026-05-22 — BLAST DB metadata cache hardening (4-step rollout)2026-05-22— BLAST jobs list endpoint latency root-cause fixes2026-05-22— Poll cadence — back off after the first minute2026-05-22— 2026-05-22 — BLAST submit pipeline hardening (live logs, ANSI, error banner, missing re-export)2026-05-22— Backend + frontend SRP split pass2026-05-22— BLAST XML parser — incremental walk via iterparse2026-05-22— Taxonomy tab — organism fallback + Blast Name column (NCBI parity)2026-05-21— 2026-05-21 —/api/blast/databases/versions구현2026-05-21— BLAST results page — restore DB metadata rows2026-05-21— BLAST job header — "Download all" gated on completed results2026-05-21— 2026-05-21 — BLAST live pod log discovery resilient to lazy state writes2026-05-21— 2026-05-21 — Persist k8s pod logs at BLAST job finalization2026-05-21— 2026-05-21 — BLAST REST API: database catalogue endpoints2026-05-21— BLAST result database metadata2026-05-21— BLAST Results Fast Polling2026-05-21— BLAST Running Refresh Throttle2026-05-21— BLAST submit phase: parallelise four azcopy prep calls in elastic-blast (sibling repo)2026-05-21— BLAST Skipped Stage Advance2026-05-21— 2026-05-21 — BLAST status latency: list refresh + per-phase throttle + per-job poller (+ sibling repo parallelism)2026-05-21— BLAST Submit Control Plane Slimming2026-05-21— BLAST Submit Fast Azure Prep2026-05-21— BLAST submit: parallelise prep + sub-progress badge2026-05-21— 2026-05-21 —/blast/submitready-state focus pass2026-05-20— BLAST Config Storage URL Hardening2026-05-20— BLAST submit: surface the full NCBI standard nucleotide catalogue in the database dropdown2026-05-20— Make the BLAST database category radio look like the NCBI radio (and behave like it)2026-05-20— BLAST job artifacts fast path2026-05-20— BLAST Job Table Sync — Resilience, Multi-User, Performance2026-05-20— BLAST Jobs List Latency2026-05-20— BLAST Live Log SSE2026-05-20— BLAST result database metadata2026-05-20— 2026-05-20 — BLAST results relevance sort2026-05-20— BLAST route package SRP split2026-05-20— BLAST Run Progress and SSD Staging2026-05-20— BLAST Submit Search Set Table2026-05-20— BLAST Submit Lock Scope2026-05-20— BLAST Submit Proposal B Light Alignment2026-05-20— BLAST Submit Warmup-Ready Stall2026-05-20— BLAST Web Equivalence Hardening2026-05-20— 2026-05-20 — NCBI-aligned BLAST UX: hardening + server-side rollups2026-05-20— 2026-05-20 — NCBI BLAST UX: Lineage + multi-HSP drilldown (round 4)2026-05-20— 2026-05-20 — NCBI-aligned BLAST results UX (round 2)2026-05-20— Web BLAST Compatibility Contract2026-05-20— Web BLAST Contract Stages 3-92026-05-19— BLAST Query Preview2026-05-19— BLAST Submit Default Title And Database2026-05-19— BLAST Submit Live Progress2026-05-19— BLAST Submit NCBI-Style UX Refresh2026-05-19— 2026-05-19 — NCBI-aligned BLAST results UX2026-05-18— BLAST XML Results Preview2026-05-18— 2026-05-18 Core NT EQ-13 Widepool Validation2026-05-18— Taxonomy Modal Scroll Fallback2026-05-18— Web BLAST 10-Example Equivalence Harness2026-05-18— Web BLAST equivalence contract2026-05-17— BLAST Output Format 5 Option2026-05-17— BLAST results / submit form — defensive hardening pass2026-05-17— BLAST Submit 422 Diagnostics2026-05-17— BLAST Submit Local SSD Default2026-05-17— BLAST Tie-Window Comparator2026-05-17— 2026-05-17 — BLAST XML comparator2026-05-17— Primer diagnostics in the submit form + degraded/truncated banner in analytics2026-05-17— Taxonomy detail (efetch) + Wikipedia image proxy2026-05-17— Taxonomy Filter Modal — Variant B Visual Hardening2026-05-17— Taxonomy filter UX overhaul (v2)2026-05-17— Taxonomy search API2026-05-17— Web BLAST CSV Comparator2026-05-17— Web BLAST Low-Complexity Default2026-05-17— Web BLAST Positive RID Evidence2026-05-17— 2026-05-17 — Web BLAST searchsp defaults2026-05-16— Plan: core_nt Full-Database Search Space Calibration2026-05-16— 2026-05-16 — E16 shard warmup searchsp comparison2026-05-16— Discovery: NCBI BLASTAlign Search Space Is Not Fixed2026-05-16— outfmt 5 XML Sharded Merge Support2026-05-15— BlastResults page — SRP split intopages/blastResults/modules2026-05-15— BLAST task hardening2026-05-14— BLAST Result Access Hardening2026-05-13— BLAST DB Update Route Runtime Fix2026-05-13— BLAST Results Hardening2026-05-13— BLAST Route Blueprint Extraction2026-05-13— Primer Design Terminal SSH Execution2026-05-11— BLAST Pre-flight Readiness Checks2026-05-10— BLAST Orchestrator Reliability & Managed Identity Fallback
AKS / Cluster (46)¶
2026-05-29— 2026-05-29 — AKS idle auto-stop (opt-in cost saver)2026-05-27— AKS create: fresh-RG-name no longer fails preflight2026-05-27— AKS card — Jobs roster collapses to a single-line row2026-05-27— 2026-05-27 —provision_aksself-grants runtime RBAC on the cluster RG2026-05-27— 2026-05-27 — AKS runtime RBAC: default workload Storage target from platform env2026-05-27— 2026-05-27 — Auto-peer dashboard VNet ↔ AKS cluster VNet onprovision_aks2026-05-27— Cluster Diagnostics — collapsible Node Resources, icon-only pod actions, pod delete2026-05-26— AKS provision RBAC hardening + progress visibility2026-05-26— AKS Create modal: tier presets + system pool default 1 node2026-05-26— 2026-05-26 — ClusterCard "Provisioning failed" banner is transient again2026-05-25— AKS Cluster Card: subscription-wide list +elb-tierclassification2026-05-25— Cluster card: initial skeleton only2026-05-24— AKS operation conflict retry2026-05-24— AKS Provisioning — Pre-flight, Region-filtered SKU Picker, Portal Link2026-05-24— AKS Provisioning UX — P3 (Cancel, Persistence, Portal Fallback)2026-05-24— AKS Provisioning UX — Remaining items (Server-side persistence, cross-tab sync, cancel-with-partial)2026-05-24— AKS Provision Modal Stability2026-05-24— AKS Provisioning — Allow Reusing an Existing Resource Group2026-05-24— AKS Provisioning UX Overhaul — P0+P1+P2 (preflight rigour, modal lifecycle, error card, live preflight, smart defaults)2026-05-24— AKS Provisioning — Step / Pool / ARM Sub-Progress2026-05-23— Cluster provisioning: ARM eventual-consistency guard for the RG ensure step2026-05-23— K8s pooled session — bump HTTPAdapter pool_maxsize to 322026-05-23— k8s_monitoring — shared ThreadPoolExecutor (drop per-call spawn)2026-05-21— AKS SKU Warning Noise2026-05-21— AKS starting status indicator2026-05-21— Cluster Pulse — Jobs roster visual hierarchy pass2026-05-20— AKS start: kill the "Cluster is stopped after Start" stale-state window2026-05-20— AKS and Storage route packages2026-05-20— Cluster Plane AKS Card Density2026-05-20— Kubernetes Observability SRP2026-05-19— AKS Card Action Alignment2026-05-19— Cluster Pulse Status Tone2026-05-18— AKS cluster card → "Single-Line Pulse" (Variant A)2026-05-18— AKS Equivalence Runner2026-05-18— AKS Start Estimate Tips2026-05-17— AKS Runtime RBAC Ensure2026-05-17— Cluster Health And Node Details2026-05-16— AKS bento — 3-round critique-and-polish pass2026-05-16— 2026-05-16 — AKS bento truthfulness + noise hardening2026-05-16— 2026-05-16 — AKS card information density pass2026-05-16— AKS card — actually run sharding from the dashboard2026-05-16— AKS card — Databases chip state clarity2026-05-16— AKS Provisioning State Truthfulness2026-05-16— Cluster Bento — port mockup to production with graceful degrade2026-05-15— 2026-05-15 — AKS SKU allow-list aligned with sibling repo2026-05-15— 2026-05-15 — AKS provision UI: system / user pool split + grouped SKU dropdown
Terminal (19)¶
2026-05-30— 2026-05-30 — terminal WebSocket close-code metrics (audit P3 #29)2026-05-27— Disable tmux right-click context menu in browser terminal2026-05-19— Terminal Base Image Cache2026-05-16— 2026-05-16 — Allowsudo apt install/updatein the browser terminal2026-05-16— Terminal Cockpit2026-05-16— Terminal Command Insert Run2026-05-16— 2026-05-16 — Terminal disconnect hardening2026-05-16— Per-user command history logging in the browser terminal sidecar2026-05-16— Terminal Manual And Toolchain2026-05-16— Terminal Screen Scroll2026-05-16— Terminal Tmux Persistence2026-05-16— Terminal Wheel Scroll2026-05-15— 2026-05-15 — Fix local compose browser terminal reachability2026-05-15— 2026-05-15 — Programmatic exec channel into the terminal sidecar; retire Run Command2026-05-15— Terminal Pixel Banner2026-05-15— 2026-05-15 — Browser terminal login banner and shell safety guard2026-05-14— Terminal Managed Identity Login2026-05-14— 2026-05-14 — Terminal sidecar replaces the Remote Terminal VM2026-05-13— Terminal SSH Hardening and Durable Jobs Recovery
Storage / DB (33)¶
2026-05-28— prepare-db: optional AKS-fanout download mode (Phase 1)2026-05-28— 2026-05-28 — Warmup / RBAC silent-wrong-RG fail-fast hardening2026-05-27— Seed JobState before enqueueing auto-warmup tasks2026-05-27— DB readiness honorscopy_status.phaseend-to-end2026-05-27— Stage NCBI shared taxonomy files during prepare-db2026-05-27— Subscription-wide AKS list rolled out to remaining card / hooks (fix "no cluster" false alarm)2026-05-24— DB Get AKS Topology Confirmation2026-05-23— storage_usage_cache — JSON bytes storage, no per-hit deepcopy2026-05-23— wait_for_warmup_jobs — dedup state writes + adaptive poll backoff2026-05-22— Storage Container Usage And Grouping2026-05-22— Storage onboarding grants the API managed identity Blob RBAC2026-05-22— stream_blob_bytes — wrap every active transfer in a bounded semaphore2026-05-20— Auto warmup Ready node guard2026-05-20— Auto warmup reconcile SRP split2026-05-20— BLAST DB Generation Lifecycle2026-05-20— Storage Firewall Classifier for Local Debug2026-05-20— Storage local-debug: switch from Deny+ipRule to Allow strategy2026-05-20— Warmup Release Feedback2026-05-19— Storage Private Only Label2026-05-17— DB Order Oracle Cache2026-05-17— Warmup Search Space Submit Guard2026-05-16— 2026-05-16 — Storage local-debug button + AKS node table polish2026-05-16— 2026-05-16 — Warmup feasibility planner (Phase 1 of warmup pipeline)2026-05-16— 2026-05-16 — WarmupSection consumes warmup_plan (Phase 1 follow-up #1)2026-05-15— 2026-05-15: Mandatory DB sharding for warmed BLAST databases2026-05-15— 2026-05-15 — DB Warmup is a no-op (verification-only); legacy DaemonSet path missing2026-05-15— Local-debug auto-open for Storage publicNetworkAccess (prepare-db)2026-05-15— StorageCard SRP split2026-05-15— Storage failure classifier — distinguish network vs RBAC2026-05-15— Local-debug toggle for Storage publicNetworkAccess2026-05-15— 2026-05-15 — Wire DB Warmup button to the Celery task2026-05-14— 2026-05-14 — Storage public-network-access permanently disabled2026-05-14— 2026-05-14 — Browser ↔ Storage proxy: api sidecar streams uploads and downloads
OpenAPI (54)¶
2026-05-31— OpenAPI execution RBAC gate (opt-in, default-OFF)2026-05-31— OpenAPI proxy: forensic audit trail for state-changing "Try it" calls2026-05-30— 2026-05-30 — openapi pin P0 rollback (4.16 → 4.14)2026-05-29— 2026-05-29 — openapi /v1/ready critique fixes2026-05-29— 2026-05-29 — elb-openapi direct access (PLS + peering)2026-05-29— 2026-05-29 — OpenAPI readiness hardening (post-PR1+PR2 mitigations)2026-05-29— 2026-05-29 — elb-openapi /v1/ready probe + external submit pre-flight2026-05-27— API Reference: submit screenshot + dedicated error code section2026-05-27— 2026-05-27 — API Reference multi-cluster selection2026-05-27— API Reference: small 16S ribosomal RNA example for POST /v1/jobs2026-05-27— 2026-05-27 — API Reference: Copy as curl button2026-05-27— Make theelb-openapideploy self-contained + hide unreachable Swagger UI link2026-05-27— OpenAPI menu audit — wireacr_resource_group, drop stale fallbacks, sync mocks2026-05-27— OpenAPI peering recovery — surface in-product2026-05-27— Public HTTPS endpoint forelb-openapi— Azure auto-domain + Let's Encrypt2026-05-27— OpenAPI API token status self-heals legacy deployments2026-05-26— OpenAPI Service Discovery No-4042026-05-26— OpenAPI Deploy — systempool readiness diagnostics2026-05-25— API Reference OpenAPI Deploy Scope2026-05-25— OpenAPI internal LoadBalancer2026-05-24— OpenAPI BLAST Contract Hardening2026-05-23— OpenAPI BLAST submit path hardening — Phase 1+22026-05-22— elb-openapi 3.6.0 cache hardening + transient classification2026-05-22— OpenAPI proxy — public-LB opt-in (OPENAPI_ALLOW_PUBLIC_LB)2026-05-22— OpenAPI token Generate — switch from strategic-merge to JSON Patch2026-05-21— API core_nt submit example2026-05-21— 2026-05-21 — API Reference: binary responses auto-download2026-05-21— API Reference Guide Polish2026-05-21— API Reference — hide internal-only header parameters2026-05-21— 2026-05-21 — API Reference loading skeleton2026-05-21— API Reference Screenshot Guide2026-05-21— 2026-05-21 — API Reference response contract shapes2026-05-21— API response contract loading skeleton2026-05-21— Bump elb-openapi image tag to 4.102026-05-21— OpenAPI Error Logging2026-05-20— OpenAPI API token UI2026-05-19— API Reference Request No Refresh2026-05-19— OpenAPI core_nt precise sharding2026-05-19— OpenAPI jobs discovery2026-05-19— OpenAPI status and result repair2026-05-18— OpenAPI Auto Deploy After AKS Start2026-05-18— 2026-05-18 - OpenAPI Try It Proxy2026-05-17— API submit terminal managed identity fallback2026-05-16— API Reference page — prefetch on Dashboard + refresh guard during deploy2026-05-15— External ElasticBLAST API Facade2026-05-15— 2026-05-15 — elb-openapi pod scheduling on system/user pool split clusters2026-05-15— OpenAPI deploy: real Celery task + clean status envelope2026-05-15— 2026-05-15 — Fix permanent "Deploying…" on /docs (broker split-brain + stale-PENDING guard)2026-05-15— 2026-05-15 — OpenAPI Update button + local-run terminal-exec sidecar2026-05-14— OpenAPI Deploy Progress Persistence2026-05-12— elb-openapi promoted to core image + per-image Build buttons2026-05-12— POST /api/aks/openapi/deploy + ApiReference Deploy panel2026-05-11— API Reference Page — Premium Glassmorphic Redesign2026-05-10— New BLAST API Endpoints & Dashboard Enhancements
Container Apps / Infra (22)¶
2026-05-22— Postprovision Private Endpoint Subnet Wiring2026-05-22— Postprovision Redirect URI Guard2026-05-21— azd up progress map2026-05-20— Lean azd deployment and workspace tag discovery2026-05-20— postprovision.sh: Fix wrong subscription in az acr build2026-05-19— Sidecar Loading Neutral Chrome2026-05-18— Sidecar Reporter Fallback2026-05-17— Postprovision build wait key quoting2026-05-16— Sidecar HTTP Inspector — Backend wire-up + SidecarsCard integration2026-05-16— 2026-05-16 — Sidecar HTTP inspector mockups (Variant A, critique-hardened)2026-05-16— Sidecar Card Stale API State2026-05-15— Control Plane Sidecars card — cgroup → redis → SSE pipeline2026-05-15— 2026-05-15 — Sidecars event-driven animation: critical hardening pass2026-05-15— 2026-05-15 — Sidecars topology animation is now event-driven2026-05-14— 2026-05-14 — Container Apps migration Phase 0: code scaffolding2026-05-14— 2026-05-14 — Container Apps migration Phase 1+: deployable bundled topology2026-05-14— 2026-05-14 — CPU/memory sizing methodology and cost estimate2026-05-14— 2026-05-14 — Cost-minimised Container Apps topology: one app, four sidecars2026-05-14— 2026-05-14 — Container Apps migration plan: Celery + self-hosted Redis + Storage state2026-05-14— Container Apps Migration Plan2026-05-14— 2026-05-14 — Frontend sidecar replaces the Static Web App2026-05-12— Bundle remote-terminal cloud-init in deployment package
Dashboard / UI (60)¶
2026-05-26— Dashboard AKS navigation warning2026-05-25— New Search Cluster Readiness2026-05-24— 2026-05-24 — New Search: DB-first stepper + per-DB query examples2026-05-23— frontend_proxy — stream the upstream response instead of buffering2026-05-22— Dashboard polling bottleneck removal2026-05-22— BLAST submit — stop consuming retry budget on lock contention2026-05-22— Per-cluster submit lock + fast SPA polling on running BLAST jobs2026-05-21— Dashboard guide screenshots2026-05-21— Dashboard BLAST jobs card removal2026-05-21— Dashboard jobs column spacing2026-05-21— Dashboard AKS jobs preview limit2026-05-21— 2026-05-21 — Dashboard hides Terminal + Sidecar runtime on mobile2026-05-21— Dashboard Query Dedupe2026-05-21— 2026-05-21 — Execution Steps: GitHub Actions-style scroll behaviour2026-05-21— First-run readiness guide2026-05-21— Frontend API base URL guard + cloud env recovery2026-05-21— New Search command preview styling2026-05-21— Azure resource name convention2026-05-21— Results endpoint?content=mode (full / merged / xml)2026-05-21— 2026-05-21 — Step log UI: no scrollbar, full output, CI-style highlighting2026-05-21— Submit Slower Profile Confirmation2026-05-21— Setup wizard region selection2026-05-20— Command Preview Mockup Colors2026-05-20— Command Preview Search Space2026-05-20— Completed Progress Normalization2026-05-20— Dashboard BLAST job row metadata2026-05-20— Dashboard Hero Summary Removal2026-05-20— Dashboard Theme Proposals2026-05-20— Frontend Auth Token Cache2026-05-20— Light theme vividness pass2026-05-20— Microsoft brand palette (opt-in, light theme only)2026-05-20— Recent Search Duration2026-05-20— Submit Compatibility Before Upload2026-05-20— Submit Database Downloaded-Only List2026-05-20— Submit-to-Cancel handoff2026-05-20— Submit Runtime Loading Stability2026-05-20— Submit Sharded Throughput Default2026-05-19— Dashboard Error Noise2026-05-19— Dashboard job roster hardening2026-05-19— Dashboard Job State Classification2026-05-19— Results file grouping2026-05-18— Frontend Runtime Environment Config2026-05-18— 2026-05-18 — Stop surfacingopenapi_not_configuredasexternal_degraded2026-05-18— 2026-05-18 — UI/UX Phase A: critical hardening pass + deploy + Jobs empty-state diagnosis2026-05-18— 2026-05-18 — UI/UX Phase A (16 items)2026-05-18— 2026-05-18 — UI/UX Phase C (160 round-two derivations)2026-05-17— Frontend Taxonomy Filter2026-05-17— Submit Performance Sharding UX2026-05-16— Dashboard config strip → header chips, configurable auto-refresh2026-05-16— Dashboard header layout — consistent breadcrumb + title + right-side actions2026-05-16— Dashboard redesign — Grafana-flavoured v3 cards2026-05-16— Jobs Mono Style2026-05-16— Mono Control Pages2026-05-16— New Search Mono Style2026-05-16— New Search Workload Node Pool2026-05-16— Submit Pipeline Empty State2026-05-15— 2026-05-15 — BLAST Jobs page no longer silently empty2026-05-14— Execution Step Live Logs2026-05-14— 2026-05-14 — Critical hardening pass on submit + status (round 2)2026-05-09— Premium BLAST Results UX
Self-upgrade (9)¶
2026-05-22— Self-upgrade — 40-point critique hardening (2026-05-22)2026-05-22— Self-upgrade — 20-point critique hardening (2026-05-22)2026-05-22— In-app self-upgrade — design (2026-05-22)2026-05-22— F1 —__version__auto-injection (2026-05-22)2026-05-22— F2 — ACR retention pre-flight for rollback (2026-05-22)2026-05-22— PR1 — self-upgrade read-only surface (2026-05-22)2026-05-22— PR2 — self-upgrade build pipeline (2026-05-22)2026-05-22— PR3 — self-upgrade apply + rollback + escape hatch (2026-05-22)2026-05-22— PR4 — self-upgrade UX + history (2026-05-22)
Local dev (21)¶
2026-05-27— 2026-05-27 — Local log layout: one file per service, no session folders2026-05-26— Local Server Log Guarantee2026-05-24— Local log active-session guard2026-05-24— Local Server Restart Hardening2026-05-23— Local Storage RBAC Recovery2026-05-22— 2026-05-22 —local-debug-auth.shone-shot toggle for real MSAL login locally2026-05-21— Local API Without Uvicorn Reload2026-05-21— Local Azure Context Guard2026-05-20— Local API Port Guard2026-05-19— Local Dev CORS Default2026-05-19— Local Sidecar Probes2026-05-19— Local Storage Debug Access2026-05-18— VS Code Full Stack Launch2026-05-17— Local BLAST 16S Baseline Evidence2026-05-17— Local Job State Endpoint Defaults2026-05-16— Local API Port 80852026-05-15— 2026-05-15 — Dev compose: surface hostaz loginto api/worker/beat2026-05-15— 2026-05-15 — Fast Container App debug loop2026-05-15— Local-dev CPU usage drop (uvicorn reloader 34% → ~0%)2026-05-15— Local development log sessions2026-05-14— Local Dev Auth Bypass
Docs (13)¶
2026-05-27— Get Started — deploy.sh walkthrough refresh2026-05-27— User Guide: Observability page2026-05-25— Docs accuracy refresh — 2026-05-252026-05-22— 2026-05-22 — Documentation SEO and GEO baseline2026-05-22— Per-release feature change notes2026-05-22— Release Build Number2026-05-22— Release-notes hardening pass2026-05-21— Docs Mock UI Preview2026-05-21— Get Started audience split2026-05-21— MkDocs changelog navigation2026-05-21— 2026-05-21 — User Guide refresh2026-05-20— Documentation screenshot workflow scaffold2026-05-17— 2026-05-17 - End-to-end Get Started runbook
Deploy (14)¶
2026-05-28— Deploy-time VNet peering self-heal2026-05-27— Manual deploy scripts: az login is the source of truth (auto-sync azd env)2026-05-26— deploy.sh: interactive subscription/tenant mismatch prompt2026-05-25— Container Apps Redeploy + App Insights Error Cleanup2026-05-22— Deploy Auth Context Guard2026-05-22— Deploy Script Parallelization2026-05-22— Deploy Progress UI2026-05-22— Workload RG stale config recovery2026-05-18— Workload Storage Private Endpoints for Container Apps2026-05-15— Workload RG dropdown — disable RGs without elb-* tags2026-05-13— Workload Identity Contributor Role2026-05-12— Azure Deployment — Function App + SWA + Entra ID Auth2026-05-12— Azure SDK calls switched to Managed Identity only2026-05-11— AKS Workload Identity for OpenAPI Service
Misc (204)¶
2026-05-31— 2026-05-31 — azd default env /.envdemo leak cleanup2026-05-31— BLAST capacity gate — Stage 1 unit tests2026-05-31— PLS transition banner — in-banner "Deploy with PLS recreate" button2026-05-31— Preference tables — ETag-based optimistic concurrency2026-05-31— Stage 2 — terminal sidecar per-job workdir isolation (issue #23)2026-05-31— BLAST capacity gate — Stage 3 (submit-task wiring + Bicep env defaults)2026-05-31— BLAST capacity gate — Stage 3a (live signal resolver)2026-05-31— Stage 4 — Capacity gate snapshot route + dashboard cell2026-05-31— AKS Capacity Gate — Stage 5 telemetry counters2026-05-30— 2026-05-30 — caller_hash on the request-completion log line (audit P3 #26)2026-05-30— 2026-05-30 — critique round closure (issues #9-#20, sibling 3.7.3, dashboard 4.17)2026-05-30— HTTPException detail sanitisation (audit P1 #7 #8)2026-05-30— 2026-05-30 — Strict JWT validation (azp/appid+ shorter cache TTL)2026-05-30— PII log redaction forcaller.object_id(audit P0 #1)2026-05-30— Fail-closed production guards (audit P0 #4 #5, P1 #11)2026-05-30— 2026-05-30 — SRP cleanup: extract Celery signal handlers intoapi/celery_signals.py2026-05-30— 2026-05-30 — SRP cleanup: drop Remote Terminal VM helpers fromapi/services/network.py2026-05-30— SSE ticket binding hardening (audit P0 #2 #3)2026-05-30— 2026-05-30 —STRICT_AUDIT_HASHhashes PII in jobhistory payloads (audit P2 #13 #14)2026-05-30— 2026-05-30 —STRICT_CORSnarrows methods + headers (audit P2 #12)2026-05-30— 2026-05-30 — STRICT_EXEC_RATE_LIMIT gate on the loopback exec server2026-05-29— 2026-05-29 — Auto-stop critique fixes wave A (#9.x / #10–#19)2026-05-29— 2026-05-29 — Autostop / NCBI / OpenAPI critique fixes wave B (#16 / #18 / #20.5 / #20.6 / #20.12)2026-05-29— 2026-05-29 — Self-critique round 1+2 fixes (C3 / C5 / M2 / M5 / M8)2026-05-28— Workspace auto-discovery falls back to backend MI proxy on empty ARM list2026-05-28— Grant Local Rbac Auto Detect2026-05-28— Settings — VNet peering "Apply NSG rule" hardening pass2026-05-28— Public HTTPS hardening + Auto OpenAPI deploy (2026-05-28)2026-05-28— Public-HTTPS reliability + diagnostics + multi-cluster UX (2026-05-28, follow-up)2026-05-28— Settings — VNet peering "Apply NSG rule" action2026-05-28— 2026-05-28 — Settings: VNet peering panel2026-05-27— 2026-05-27 — Always create Private Endpoints; add deploy.sh storage parity guard2026-05-27— App Insights init: enable Live Metrics by default2026-05-27— 2026-05-27 — FAQ: clarify who downloads BLAST databases from NCBI2026-05-27— GitHub Actions deploy: build on push, deploy on demand2026-05-27— grant-runtime-rbac.sh — tag-based AKS auto-detect2026-05-27— init-ssd Job stuck in CreateContainerConfigError ("stat /workspace: no such file or directory")2026-05-27— Live Wall log tail — Container Apps fallback via Log Analytics2026-05-27— App Insights cluster-aware monitor noise reduction (5-pillar plan)2026-05-27— Multi-cluster fleet defaults across the SPA2026-05-27— 2026-05-27 — Multi-cluster Cluster Plane hardening2026-05-27— Progressive nav collapse — Tools group → "More ▾" dropdown before hamburger2026-05-27— Public HTTPS pipeline — fix the cert-manager-webhook retry race2026-05-27— Public HTTPS enable: lift terminal exec server body cap to 8 MiB2026-05-27— Public HTTPS pipeline — systempool toleration injection + SPA dict-failure surfacing2026-05-27— Public HTTPS: layered defense against ingress-nginx admission-webhook races2026-05-27—quick-deploy.sh all— parallel image builds2026-05-27— Remove flatapi/services/*_*.pycompatibility shims2026-05-27— Settings panel: replacewindow.confirmwith glassConfirmDialogand collapse Provision target fields2026-05-27— SSE ticket failures return 204 (not 401) to break browser auto-retry storm2026-05-27— Telemetry > Provision form — validation, lookup, safety, and parity2026-05-27— Telemetry Settings panel — UX, safety, and parity overhaul2026-05-27— Distinguish explicit warmup from prior-submit DB cache2026-05-26— 2026-05-26 — Bootstrap-mode RBAC for fresh-subscription cluster creation2026-05-26— Delete AKS prunes empty resource group2026-05-26— Detached Local Server Controls2026-05-26— Fix: Cancelled BLAST job still shows "Running" on the AKS cluster card2026-05-26— Fix:/api/blast/databases/nt/preview502 — URL-encode NCBI S3 continuation token2026-05-26— Docs: glossary page for Azure / Kubernetes / project abbreviations2026-05-26— 2026-05-26 — MI RBAC doctor + ensure_acr MI grant + ACR role-ID typo fix2026-05-26— Bump Node 20 → Node 22 (LTS) for frontend image and full compose2026-05-25— Frontend bug sweep — 2026-05-252026-05-25— 2026-05-25 — Auto-grant runtime RBAC on AKS cluster RG2026-05-25— Container App Consumption Resource Total2026-05-25— Deployed dashboard: AKS cluster card visibility restored2026-05-25— 2026-05-25 — e2e Live Wall preview flag + Today-group timestamp gaps2026-05-25— Live Wall preview opt-in2026-05-25— Fix flaky CI: mock validate_blast_database_available in preflight contract test2026-05-25— Quick Deploy All Target2026-05-25— 2026-05-25 —quick-deploy.shenv-leak hardening + e2erecent-failed-provisionsmock2026-05-25— Server Application Insights Telemetry2026-05-25— Settings App Insights Apply2026-05-25— Settings Sizing Recommendation2026-05-25— Topbar Active Job Status2026-05-24— Auto Warm Sharded Throughput Defaults2026-05-24— Failed Job Run Details Tab2026-05-24— HTTP Inspector Metadata Capture2026-05-24— Key Vault Soft-Delete Recovery2026-05-24— Live Wall Log Stream2026-05-24— Second-pass performance hardening2026-05-24— SKU Normalization for Warmup Capacity2026-05-24— Status Message Truthfulness2026-05-24— WAF six-stage hardening pass2026-05-24— Workspace Discovery Ready Tags2026-05-23— ACR card: surface in-progress builds after browser refresh2026-05-23— API refactor compatibility hardening2026-05-23— 2026-05-23 — api/app/ subpackage (main.py split)2026-05-23— require_caller — async + lazy threadpool offload2026-05-23— audit_log — collapse N+1 history query into a single bulk read2026-05-23— cancel — raise the child-limit cap and reject overflow explicitly2026-05-23— 2026-05-23 — Add CI test workflow2026-05-23— cli-upgrade.sh — deep readiness probe + Storage isolation parity preflight2026-05-23— cli-upgrade hardening round 2 — concurrent-deploy lock, deploy history, richer probe diagnostics2026-05-23— lifespan — warm DefaultAzureCredential at startup2026-05-23— UI E2E launcher2026-05-23— _ensure_table — double-checked lock to collapse first-boot herd2026-05-23— Fix pre-existing test failures so backend CI turns green2026-05-23— request-detail inspector — lazy slice (drop the duplicate body buffer)2026-05-23— JWKS single-flight election2026-05-23— monitor_cache — JSON bytes storage (no more deepcopy)2026-05-23— Dashboard cards: minimum shimmer duration on refresh2026-05-23— Performance hardening batch2026-05-23— 2026-05-23 — routes/terminal subpackage2026-05-23— sanitise — short-circuit + factored GUID redactor2026-05-23— 2026-05-23 — services/blast subpackage (15 modules)2026-05-23— 2026-05-23 — services facade contract regression test2026-05-23— 2026-05-23 — services/k8s subpackage (metrics/monitoring/observability/timestamps)2026-05-23— 2026-05-23 — services/openapi subpackage2026-05-23— 2026-05-23 — services/storage subpackage2026-05-23— 2026-05-23 — services/warmup subpackage (jobs/planner/scripts)2026-05-23— _shard_set_already_present — single list_blobs probe2026-05-23— 2026-05-23 — SRP / directory restructure summary (Phase A+B+D+hardening)2026-05-23— Tail-batch P2 — lifecycle + concurrency + streaming proxy + lock-free emit2026-05-23— 2026-05-23 — Test configuration overhaul (parallel + filtered dev loop)2026-05-22— 2026-05-22 —/api/arm/.../locationsModuleNotFoundError fix2026-05-22— BlobServiceClient pool — finalizer + idle TTL2026-05-22— Cache hot path: drop deepcopy + use OrderedDict LRU eviction2026-05-22— Clear Stale Resource Slot2026-05-22— Bound worker memory: exec_server output cap + Celery lifecycle limits2026-05-22— exec_server: line-length cap + temp-dir GC daemon2026-05-22— Hide Managed Workspace Resource Groups2026-05-22— 2026-05-22 —/api/mevisible subscriptions + invisible-subscription banner2026-05-22— Bound every metadatadownload_blob().readall()with a hard size cap2026-05-22— Redis client pool — stop per-callfrom_urlleak2026-05-22— reset_credential() cascade — reset every downstream pool2026-05-22— Descriptions / Taxonomy fast-path — fix artifact cache misses2026-05-22— Parallelize split-child report + artifact downloads2026-05-22— 2026-05-22 — Split oversized__init__.pyfiles inapi/tasks/2026-05-22— Split-parent XML merge — streaming rewrite2026-05-22— Pool the per-request TableClient in job_artifacts + auto_warmup2026-05-22— Tail hardening: inflight TTL + event_emitter shutdown + blob fast path2026-05-22— 2026-05-22 — Workspace degraded-state diagnostics2026-05-22— 2026-05-22 — Workspace diagnostics hardening2026-05-21— Existing resource group choice2026-05-21— High Level Architecture2026-05-21— Overview researcher copy2026-05-21— One-command azd Bootstrap2026-05-21— 2026-05-21 — Recent searches loading skeleton2026-05-21— Warmed SSD Init Skip2026-05-20— HTTP inspector live window controls2026-05-20— Large Python SRP Refactor2026-05-20— Result Analytics Route SRP2026-05-20— Route package hardening2026-05-20— Run Details Completed Logs2026-05-20— Running Result Tabs2026-05-20— Service SRP Slices2026-05-20— Trusted BLAST Submit Metadata2026-05-19— ACR Build Access Guard2026-05-19— 2026-05-19 — Slim Copilot charter; extract detail todocs/copilot/2026-05-19— Force Local SSD for BLAST Submit2026-05-19— Job file previews2026-05-19— Job State V2 Title Contract2026-05-19— 2026-05-19 — Charter guardrail: do not redeploy for ordinary code changes2026-05-19— Drop legacy/ tree and split stubs.py into focused route modules2026-05-18— Auto-warm re-enqueues stale DBs and OpenAPI Update panel hides when up to date2026-05-18— Evidence-Aware Sharding Claim2026-05-18— HTTP Inspector Layering Fix2026-05-18— Auto-warmup: delete stale Jobs pinned to removed VMSS nodes2026-05-18— 2026-05-18 Web XML Core NT Strict Oracle Evidence2026-05-17— ACR Build Network Unlock2026-05-17— Backend BLAST taxid filter2026-05-17— HTTP Inspector Modal2026-05-17— Monitor Backend Latency2026-05-17— Monitor Query Key Dedupe2026-05-17— Monitor Response Snapshot Cache2026-05-17— Optional Control Plane RBAC Assignments2026-05-17— Query Example Modal2026-05-17— Search Space Default Hardening2026-05-16— Async sharding + auto-shard on warmup + hardening2026-05-16— Canonical BLAST Jobs API2026-05-16— 2026-05-16 — ComputeSection consumes warmup_plan + SRP extractuseDbWithWarmupPlan2026-05-16— ElasticBLAST Dashboard Title2026-05-16— 2026-05-16 — Full UI sweep + degraded-state fixes2026-05-16— Hide AKS-managed RGs from workspace selectors2026-05-16— 2026-05-16 — TopbarLatestJobChip2026-05-16— 2026-05-16 — Node-local Warmup Job Manifests2026-05-16— Run BLAST CTA2026-05-16— 2026-05-16 — Sharding equivalence guard2026-05-16— Warm Cache Management UX2026-05-15— ACR build pipeline — end-to-end working2026-05-15— 2026-05-15 — Consolidate api/, adopt uv, bump Python 3.12, retire Functions2026-05-15— Env Example Scrub2026-05-15— 2026-05-15 — Fixshared_task.delay()resolving to phantom Celery app (AKS provision silently dropped)2026-05-15— Gate action buttons on prerequisites, retire Remote Terminal VM remnants2026-05-15— Lab Tools: retire VM wording, gate sidecar tools, surface unimplemented backends2026-05-15— Monitoring service SRP extraction2026-05-15— 2026-05-15 — Production hardening: MI sub-scope Reader + ARM diagnostics2026-05-15— RemoveUnlock/Autobuttons from Storage Account card2026-05-15— 2026-05-15 — Restore BLAST DB download via private-endpoint blob copy2026-05-15— 2026-05-15 — Align/api/monitor/aks/service-ipwith SPA contract2026-05-14— 2026-05-14 — Job submit & warmup hardening2026-05-14— Service Reliability Hardening2026-05-14— Typography Accessibility2026-05-14— Wider Operational Modals2026-05-12— Async BLAST DB download with progress tracking2026-05-12— DNS label uniqueness across resource groups2026-05-12— Cloud-init: install elastic_blast package metadata reliably2026-05-12— Getting Started guide modal on first workspace open2026-05-12— Fix: ncbi/elasticblast-job-submit ACR build context2026-05-12— Key Vault name uniqueness across resource groups2026-05-12— Key Vault provisioning works on RBAC-mode existing vaults2026-05-12— Idempotent Public IP reuse in ensure_network2026-05-11— Disable cloud job submission — direct kubectl submit2026-05-08— ACR Build: Switch from VM Run Command to ACR Build Tasks API