stack_baseline.md
Stack baseline — 2026-2027
Stack baseline — 2026-2027
Single source of truth for versions and facts used across these notes. Every content edit checks claims against this table. Web-verified 2026-08-08; Vue, data-engineering, quant, healthcare and AI-tooling rows verified 2026-08-10.
Rule: when a note states a version, it either matches this table or explicitly says why an older version matters (“Django 4.2 is where X was introduced”). Never leave a bare unversioned claim that was true only in 2023.
Python
| Item |
Current |
Notes for notes |
| Python |
3.14.7 (3.14.0 GA 2025-10-07) |
Baseline for all examples. 3.13 acceptable where a feature needs it. |
| Free-threading |
Official (PEP 779) in 3.14 |
No longer experimental. 3.13 was experimental. Build is still opt-in (python3.14t). Rewrite every GIL note around this. |
| JIT |
Experimental (copy-and-patch) |
Say “experimental”, not “coming”. |
| Subinterpreters |
PEP 734, stdlib interpreters in 3.14 |
New concurrency option alongside threads/async/processes. |
| t-strings |
PEP 750 in 3.14 |
Template strings. New topic — safe SQL/HTML interpolation angle. |
| Deferred annotations |
PEP 649 in 3.14 |
from __future__ import annotations story changed. Update typing notes. |
compression.zstd |
PEP 784 in 3.14 |
Minor; mention in stdlib note. |
| EOL |
3.9 EOL Oct 2025 |
Anything referencing 3.7/3.8/3.9 as “modern” is wrong. |
| Item |
Current |
Notes for notes |
| Package manager |
uv |
The 2026 default. Repo mentions it in 3 files — should be the primary answer in packaging/CI/Docker notes, with pip/Poetry as context. |
| Lint + format |
Ruff |
800+ rules; replaces flake8 + black + isort + pyupgrade + bandit. Used by FastAPI, LangChain, HuggingFace. |
| Type checker |
mypy (established), ty (Astral, newer) |
mypy is still the safe interview answer; mention ty/pyright as the moving edge. |
| Config |
pyproject.toml only |
uv, Ruff, mypy, pytest, coverage, build all live there. setup.py/setup.cfg/.flake8/mypy.ini are legacy. |
| Base image |
python:3.14-slim |
Repo Docker notes should not pin 3.11. |
Web / backend
| Item |
Current |
Notes for notes |
| FastAPI |
0.136.x, fastapi[standard] |
OpenAPI 3.1. Still the default Python API framework. |
| Pydantic |
v2 (2.7+) |
v1 only as migration context. 5–50× faster validation. |
| SQLAlchemy |
2.0, AsyncSession |
2.0 select() style only. Sync SQLAlchemy blocks the event loop — that’s the interview point. |
| Django |
6.1 (2026-08-05); 6.0 Dec 2025 |
5.2 is the LTS. Repo says 4.2 — stale. |
| DRF |
current |
Check async support story. |
| ASGI |
ASGI 3 |
Granian/uvicorn/hypercorn landscape. |
Data stores
| Item |
Current |
Notes for notes |
| PostgreSQL |
18.4 (18 GA Sep 2025) |
Repo says 12/13. PG18: async I/O, UUIDv7, virtual generated columns, OAuth auth. |
| Redis |
8.x; license changed 2024 |
The license split is itself an interview topic. |
| Valkey |
Linux Foundation fork of Redis 7.2 |
Currently a 1-line stub in the repo — needs real content. |
| Kafka |
4.x (4.0 Mar 2025; 4.3.1 Jun 2026) |
ZooKeeper fully removed — KRaft only. Repo says 2.4/2.8 — badly stale. Also: queues for Kafka (KIP-932), faster rebalances. |
| MongoDB |
8.x |
|
| Elasticsearch |
9.x |
|
| pgvector |
current |
Under-covered (2 files). Default vector store for Postgres shops. |
| Item |
Current |
Notes for notes |
| Kubernetes |
1.3x (verify at edit time) |
Gateway API is GA and replaces Ingress for new work — 0 mentions in repo. |
| Docker |
current |
Multi-stage + distroless; BuildKit default. |
| Terraform |
1.x; BSL license since 2023 → OpenTofu fork |
License split is an interview talking point. 0 mentions. |
| Node.js |
24 LTS (22 maintenance) |
Repo mixes node10/14/16 with 22/24. |
| OpenTelemetry |
GA for traces/metrics/logs |
Also OTel GenAI semantic conventions for LLM spans — near-zero coverage. |
Frontend
| Item |
Current |
Notes for notes |
| React |
19.2.7 (Jun 2026) |
No React 20 announced. Repo mixes 15/16/17/18/19. |
| React Compiler |
1.0 stable (2025-10-07) |
Default assumption for new projects. Auto-memoization means useMemo/useCallback advice in the repo is outdated guidance, not just an old version number. |
| Next.js |
15+ (Turbopack, async request APIs) |
Repo mentions 13 and 15. |
| TypeScript |
5.x |
|
| Vue |
3.5.41 stable; 3.6.0-rc.2 (2026-07-22) |
3.6 = Vapor Mode feature-complete (opt-in, no VDOM, compiles SFCs to direct DOM ops) + @vue/reactivity rewritten on alien-signals. Still RC as of 2026-08 — do not write “3.6 shipped”. Vue 2 EOL since 2023-12-31. |
| Vue ecosystem |
Vue Router 5.2, Pinia 3/4, Pinia Colada 1.4, Nuxt 4.5 |
Nuxt 4.5 ships Vite 8 + Rspack 2; Nuxt 3 EOL during 2026. Radix Vue renamed Reka UI (2025). |
AI / LLM
| Item |
Current |
Notes for notes |
| Frontier models |
Claude Opus 5 (2026-07-24), Fable 5, Sonnet 5, Mythos 5; GPT-5.6 “Sol”; Gemini 3 / 3.1 Pro; Grok 4 |
Repo says GPT-4 (33×), GPT-4o (14×), Llama-2, claude-sonnet-4-5. All stale. |
| Model strategy |
Routing across models by task complexity |
2026 production norm — cheap model for simple, frontier for hard. This is now a design-interview answer, not a footnote. |
| MCP |
spec 2026-07-28 |
Landmark revision: stateless protocol core, session management removed from transport, multi-round-trip requests, header-based routing, cacheable list results, authz hardening, extensions framework. Tasks moved to an extension. Repo’s MCP note predates all of this. |
| LangChain / LangGraph |
both 1.0 GA Oct 2025; LangGraph 1.3.11 (Jun 2026) |
LangChain 1.0 = core agent loop + middleware. No breaking changes until 2.0. Repo predates 1.0. |
| Serving |
vLLM, TGI; speculative decoding, continuous batching |
Near-zero coverage. |
| Classical ML |
scikit-learn (default), XGBoost/LightGBM/CatBoost (structured data), PyTorch + TensorFlow (DL), JAX |
Essentially absent from the repo. |
| Tuning |
Optuna, AutoGluon, PyCaret, FLAML |
Absent. |
| MLOps |
MLflow (safest first answer; now also does prompt logging, eval, tracing for GenAI) |
0 mentions in repo. |
Compliance / security
| Item |
Current |
Notes for notes |
| EU AI Act |
phased obligations in force |
0 mentions. Relevant to any AI-facing role. |
| Passkeys / WebAuthn |
mainstream |
2 mentions. |
| SBOM / SLSA |
standard supply-chain asks |
thin. |
| Prompt injection |
OWASP LLM Top 10 |
2 mentions — far too thin for an AI-focused candidate. |
Data engineering
Verified 2026-08-10.
| Item |
Current |
Notes for notes |
| Apache Airflow |
3.3.0 (2026-07-06) |
Airflow 3 rearchitected execution with task isolation, new UI, DAG versioning. Do not describe Airflow as 2.x. |
| dbt |
dbt Core v2.0 open-sources the Rust Fusion engine (Apache 2.0) |
State-aware runs skip unchanged models. Big parse-time speedup. |
| dbt Labs / Fivetran |
Merger completed 2026-06-01 (all-stock) |
Fivetran also acquired Census (2025) and Tobiko Data / SQLMesh. Consolidation is the 2025-26 story. |
| Apache Iceberg |
v3 GA across major platforms, H1 2026 |
The interoperable lakehouse table format; Polars can now sink to Iceberg. |
| Polars |
1.42 (2026-07-02) |
Optimizer improvements in 1.40-1.42 speed queries with no code change. |
| Data mesh |
widely partial adoption |
Data contracts and domain ownership transferred to mainstream; full mesh purity did not. Say that rather than advocating. |
Domain: quant / fintech
Verified 2026-08-10.
| Item |
Current |
Notes for notes |
| vectorbt |
actively developed; OSS core + commercial PRO |
The vectorized screening tool. |
| Backtrader |
effectively unmaintained |
Fine to maintain an existing codebase, wrong choice for a new one. Naming it unqualified dates you. |
| QuantConnect / LEAN |
actively developed |
C# engine, Python API, managed multi-asset point-in-time data, one path to live. |
| NautilusTrader |
actively developed |
Rust core, Python API; the high-fidelity event-driven option. |
| Zipline |
original is dead; zipline-reloaded is the maintained fork |
|
Domain: healthcare / regulated
Verified 2026-08-10.
| Item |
Current |
Notes for notes |
| FHIR |
R4 normative and what 95%+ of certified EHRs implement; R5 published with limited adoption; R6 in ballot (v6.0.0-ballot4, May 2026), expected 2026-2027 |
Build against R4 and say so. Claiming R5/R6 in production is a tell. US Core is being built on R6 next. |
| HL7 v2 |
still the hospital interface workhorse |
MLLP over TCP, ACK/NAK, Z-segments. Not going away. |
| OMOP CDM |
the analytics model (OHDSI) |
Distinct from FHIR: exchange format vs analytics model. |
| CDISC SDTM/ADaM |
FDA submission standard |
Active work on SDTM-to-OMOP conversion. |
| FDA validation |
CSA (Computer Software Assurance) is the current risk-based guidance |
Supersedes the binder-heavy CSV interpretation; accepts automated test evidence. |
| EU AI Act |
Art. 50 transparency + GPAI enforcement + penalties in force 2026-08-02; high-risk delayed to Dec 2027 / Aug 2028 |
|
AI-assisted development
Verified 2026-08-10.
| Item |
Current |
Notes for notes |
| Agentic IDEs |
Kiro (AWS, spec-driven), Antigravity (Google, agent-first), Codex (OpenAI), Claude Code, Cursor, Windsurf, Copilot, Cline |
The axis that matters is how much structure the tool imposes, not the vendor. |
| AI-DLC |
AWS open-source methodology: Inception / Construction / Operations, in “bolts” (hours-days) replacing sprints |
Human validation at each step is the load-bearing principle. |
How to use this file
- Before editing any note, check the technologies it names against this table.
- If a claim here is older than ~3 months, re-verify with a web search and update this file in the same commit.
- Date every claim that will rot: “As of 2026-08, …”.
- When this file changes, the notes that cite the changed row get flagged in PLAN.md.
Sources