Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Changelog

This file records meaningful content and validation changes to the placement preparation book. Dates use the project timezone, Asia/Calcutta.

  • Created 92 missing pages: 91 per-function syscall pages the coverage ledger and domain hubs linked to (process: getresuid, getresgid, setgid, process_mrelease, rseq, rseq_slice_yield; fs-mounts-namespace: fchroot, file_getattr, file_setattr, getxattrat, listxattrat, removexattrat, setxattrat, listns; signals-time: alarm, clock_adjtime, restart_syscall, rt_sigqueueinfo, sigpending, sigtimedwait, sgetmask, stime, time, times, tkill; sched-misc: 65 pages from sysctl to xtensa incl. the grouped unimplemented, stat-oldslots and uname-oldslots entries; net-ipc: timerfd_settime) plus linux/libc/musl-catalog.md.
  • Provenance: man-pages 6.19 HTML from man7.org (53 pages fetched and cached for this round), kernel sources fetched from torvalds/linux master (fs/open.c, fs/xattr.c, fs/file_attr.c, kernel/nstree.c, kernel/rseq.c, mm/oom_kill.c, arch/arm, arch/alpha, arch/sparc, arch/m68k, arch/riscv, arch/openrisc, arch/xtensa, scripts/syscall.tbl, syscall_64.tbl), installed UAPI headers, and nm -D on glibc 2.41 for wrapper claims.
  • Status honesty: 45 syscall ledger rows flipped source-limited → documented (433/46/56 of 535); 28 sched-misc + 1 signals-time overview rows flipped to match; hub and interface-encyclopedia counts reconciled against the ledger (also fixing pre-existing staleness in the process, fs-mount and net-ipc documented counts).
  • Repairs beyond the 92 pages: process-exit-signal-coverage.md NAV-002 link re-pointed to ../SUMMARY.md; Section G language index links re-pointed to ../../../languages/process-runtime/index.md; 188 null bytes removed from sched-misc/overview.md (corruption introduced in the wave-3 rebuild, verified against history).
  • Validation after the round: check-links 0 broken (was 217), check-summary 4,208 nav entries / 0 duplicates / 0 dead, check-fences 0 problems across 4,212 files, check-mathjax clean, mermaid heuristic 5,546/5,546.

2026-10-13 — Eight-language process/runtime semantics (Section G) + navigation integrity round

Two user-directed efforts landed together and closed the book’s navigation and warning debt.

Section G (eight-language process/runtime semantics). A new part, src/languages/process-runtime/, covers exit codes, signals and process lifecycle for C, C++, Python, Go, Java, Rust, Node.js and OCaml — one chapter (8.5k–10.4k words) plus one G4 coverage ledger per language, a part hub, and a nine-dimension cross-language comparison (562 lines, 11 tables). An audit against the G1–G6 acceptance criteria found one real gap: the C, C++, Rust and comparison chapters cited sources by name without links (the Rust chapter had zero URLs). A reference-policy pass verified 209 URLs with live fetches and added 144 hyperlinks, bringing the part to spec: 633 ledger rows (623 documented / 10 source-limited with reasons), zero duplicate IDs, all 388 intra-book links resolving, and 290 of 291 external URLs reachable (en.cppreference.com refuses bots with a documented Cloudflare 403).

Navigation integrity. The 2026-10-12/13 content rounds left 295 authored pages unwired (mdBook silently drops pages that are not in SUMMARY.md, so none of them rendered). All 295 were wired: the Linux binaries flatlands were rebuilt into a designed hierarchy (overview → 16 collection hubs → pages), the sysfs Class Encyclopedia and crossref maps joined the nav, the glibc function hub was moved from mid-block to block top (it had been splitting 282 pages under the “musl ledger”), 14 stray pseudo-part headings were promoted to real overview titles, and the Section G ledgers became real nav children, fixing 8 live-site 404s. SUMMARY.md now carries 4,116 nav entries with 0 duplicate destinations and 0 dead entries, verified by a real mdBook v0.5.4 build with create-missing=false (exit 0; all 4,119 pages render). A duplicate-entry defect that broke CI (languages/comparison.md listed twice) was fixed the same day by giving the language-chapters group a real hub page.

Warning cleanup. The newly-parsed sysfs pages surfaced 130 mdBook “unclosed HTML tag” warnings: bare <token> placeholders such as ttyS<x>, SIG<NAME> and <PCI BDF> parse as HTML start tags and are swallowed at render time. All 130 sites across 33 files were wrapped in inline code spans (fence- and code-span-aware fixer, negative control: mini-build 130 warnings before → 0 after). The book’s three branches (research, dev, main) were then synced to the same commit.

2026-10-12 — Interface Encyclopedia per-function rebuild + process-exit-signal knowledge base

Interface Encyclopedia. The Linux interface coverage was rebuilt from per-domain mega-chapters into one page per interface, with man-page families sharing pages per the source-derived .so alias map. Seven waves produced 207 files under src/linux/syscalls/, 292 under src/linux/libc/ (glibc families including math/threads/termios/users/vm/misc plus fs/stdio/strings/net, and the musl catalog), 121 under src/linux/sysfs/ and 5 under src/linux/crossref/. The four coverage ledgers were regenerated from sources and every status flipped in place: syscalls 388 documented / 46 researched / 101 source-limited of 535 with 0 not-started remaining; glibc 1,047 documented / 10 source-limited of 1,881 documented-API rows with 0 researched remaining; sysfs 106 documented / 14 source-limited of 120 classes; crossref 37 documented / 1 source-limited (msr-tools docs unreachable) of 38. Every new page is ASCII-only with balanced fences and resolving relative links.

Process-exit-signal knowledge base. A new top-level part, src/linux/process-exit-signal/, grew from a seeded skeleton (unified coverage ledger, 174 requirement IDs) into 43 pages: a signals inventory and interfaces map, the exit-status lifecycle, shell chapters (bash/dash/zsh), language chapters (C/C++/Rust/Go/Python/Java/Node/OCaml — later promoted into the dedicated Section G part above), service managers (systemd, OpenRC, runit, s6), containers (PID 1 semantics, Docker, Kubernetes), a cross-language comparison and a troubleshooting decision tree.

2026-10-09 — Linux Userland Binaries: a 280-page per-binary collection set

The book gained a new top-level part, Linux Userland Binaries (src/linux/binaries/), covering the core Linux command-line packages one binary per page — 280 new pages organized as 16 collections that follow the upstream packaging (and the collection names uutils uses): GNU Coreutils (104 binaries + hub), util-linux (96 + hub), shadow (24), login (8), procps (18), findutils, diffutils, grep, sed, gawk, tar, ACL tools, hostname, bsdutils, BusyBox (one deep page with a ~50-applet matrix), and a uutils landscape page.

Every binary page follows one house template: Overview facts table (package, man section, path, lineage, standards), man-style Synopsis, an in-depth How It Works, the options that matter as tables, realistic usage patterns, nuances and gotchas, exit status, cross-linked related commands, interview Q&As, and references. Flagships (ls, cp, mv, rm, chmod, chown, dd, sort, stat, du, df, ps, top, pgrep, fdisk, mount, diff, tar, setfacl, useradd, usermod) run 320-420 lines; the collection hubs add package-level context — Debian’s package splits (mount/fdisk/uuid-runtime/eject/ bsdextrautils/util-linux-extra/ncal), the four-file account model, the /proc mapping table, and the uutils maturity landscape — instead of repeating usage coverage.

Dedup discipline. find, xargs, grep, sed, and awk already had deep dedicated pages in the shell track; they remain canonical — the collection hubs link into them rather than duplicate, and no SUMMARY entry appears twice. Near-identical siblings (sha*sum family, dir/vdir, mount/umount, pgrep/pkill) each keep their own page and cross-link the shared concepts.

Reference verification. All 280 pages cite only URLs verified live the same day: 285 per-binary man pages on manpages.debian.org (bookworm, with trixie/alternative-package fallbacks after Debian’s util-linux split was mapped — fdisk(8)/cfdisk(8)/sfdisk(8) live in fdisk, mount/umount/ losetup/swapon/swapoff in mount, uuidgen/uuidparse in uuid-runtime, cal in ncal, col/hexdump/look/ul/write in bsdextrautils), sources.debian.org source browsers, GitHub mirrors (coreutils, util-linux, shadow, uutils), the BusyBox manual, and the POSIX 2018 specification. gnu.org was unreachable from the work environment, so unverified GNU pages were not cited (the already-verified tar manual from the reference CSVs excepted). Two upstream casualties are documented rather than invented: raw(8) (removed in util-linux 2.37) and pg(1) (left Debian packaging).

Validation. SUMMARY wiring: 3,385 pages reachable, 0 duplicates, 0 broken links/anchors across the whole book, MathJax clean. All 5,527 Mermaid diagrams pass the real mermaid@11 parser (the new pages favor house-style ASCII diagrams). README stats recomputed: 3,385 pages, ~7.73M words, 12,370 unique external URLs.

2026-10-09 — Reference libraries: a new DSA index, then video and conference tracks on all fourteen

Two pieces of work on src/references/. First, a fourteenth index, dsa-competitive-programming.md — DSA, competitive programming and competitive math — rebuilt from a flat source list into the house format: 170 entries across nine categories (contest platforms and judges, curricula and reference implementations, competitive math, tooling and judge infrastructure, interview and OA platforms, editorials, university and MOOC material, community and video, repositories), 72 education resources in two tracks, 30 research sources, and 402 verified URLs. It is wired into src/SUMMARY.md and into src/references/README.md, and its CSV is generated from the page.

Second, every one of the fourteen indexes gained two new sections: Video courses, channels & talks (195 resources) and Conference videos, notes & archives (86 sources, split into conference channels / video archives and proceedings / note archives). Both are navigation layers in the same voice as the rest of the book — one line per resource, each with an honest caveat about what it is good for and where it misleads. Highlights: Onur Mutlu’s lecture series and Hot Chips for architecture; Kernel Recipes, Linux Plumbers, linux.conf.au, OSDI/ATC and EuroSys for operating systems; CMU 15-445 plus VLDB/SIGMOD/Percona Live for databases; MIT 6.824, Strange Loop, KTH distributed algorithms and SREcon for distributed systems; Stanford CS229, NeurIPS/ICLR/ICML, the CVF open-access portal and MLSys for ML; LLVM developer meetings, PyCon US and SIGPLAN for compilers; DEF CON, USENIX Security, Black Hat, HITB and media.ccc.de for security; CppCon and the kernel tracks for concurrency; FAST, SNIA and OpenZFS for storage; netdev, SIGCOMM, RIPE and IETF for networking; and the IOI / ICPC / IMO task archives for competitive programming, where the honest note is that the task archive matters and no talk circuit exists.

Verification. Every channel, playlist and archive URL added was fetched and, for YouTube, title-checked — a 200 on a handle is not proof of identity, and the rejections are recorded in-page: @NANOG resolves to “Nano G”, @OWASPfoundation to an unrelated channel, @BlackHatEvents to “InfoSec Events”, @sigplan to a personal channel, and @nptel/@NPTEL/@NPTELNOC, @ISCAconf, @sigmod, @CiscoLive, @nanogorg, @MIT6S191 and @ACLmeeting all 404. Dead hosts (hitb.org, kernel-recipes.net, debconf-video.debian.net) were dropped; three sites that 403 automated checkers but work in a browser (nanog.org, blackhat.com, rsaconference.com) are kept and flagged. Two guessed playlist IDs resolved to “undefined” and were discarded; CMU 15-418 is listed with its real caveat, that slides and assignments are open but lecture video needs an andrew.cmu.edu YouTube login.

Also updated: data/*.csv now carries one row per resource including the new video and conference rows (and education rows for the four indexes whose CSVs were previously entry-only); src/references/README.md gains Video and Conference columns and recomputed per-page URL counts; the book totals were recomputed to 1,257 entries and 2,744 unique URLs after the previous headline figure was found not to reconcile with its own per-index column; src/meta/ was refreshed (status, progress, coverage dashboard, knowledge graph) and the root README.md now lists the reference libraries in What’s Inside, in the repository structure, and in the stats table.

2026-10-09 — Round 11: five new pages, two thin pages deepened

Eleventh round toward the 30k-page goal. Of the six candidates queued by round 10, four turned out to be already covered when dedup-checked before writing — gVisor/Kata/Firecracker each have dedicated pages in cloud/virtualization/, the feature store owns ml/system-design/ feature-store.md plus a case study, the WASM component model has compilers/advanced/wasm-component-model.md, and Pixie/Parca are covered by linux/observability/ebpf-observability.md and performance-engineering/ continuous-profiling.md — so the round re-mined the wider inventory for true gaps. Five new pages: Zanzibar and relationship-based access control (relation tuples, userset rewrite rules, the zookie snapshot model, sharded Check evaluation with cache tiers, SpiceDB/OpenFGA/Keto survey, Drive-sharing interview walkthrough — security/advanced); schema migration tooling (versioned vs declarative authoring, the Flyway/Liquibase/sqitch/Atlas/ Alembic landscape, where migrations run, expand–contract worked end-to-end across four deploys, resumable backfills, forward-only rollback discipline — dbms/advanced, cross-linked to online-schema-change.md which keeps the big-table DDL mechanics); LLM eval tooling (promptfoo YAML matrices and red-teaming, Inspect AI’s task/solver/scorer architecture, DeepEval pytest-style metrics, Ragas RAG metrics, LangSmith trace-linked datasets, five-tool comparison and stack composition — llm/evals, complementing eval-harnesses.md); geospatial indexing (geohash bit mechanics and the boundary problem, S2 Hilbert cells, H3 hexagons, PostGIS/Elasticsearch query paths, the nearest-drivers worked example — dbms/advanced, linking the GiST and ride-hailing pages); and micro-frontends (integration-pattern taxonomy from build-time packages through Module Federation, single-spa, Web Components, iframes, and edge composition; routing, shared state, version skew, performance costs, and the when-not-to section — frontend). Two thin pages deepened in place with every original line preserved: sre/chaos-engineering.md 76 -> 271 lines (fault taxonomy, experiment design depth, Chaos Mesh/Litmus/FIS/Toxiproxy mechanics, production safety gates, Netflix case studies) and cloud/disaster-recovery.md 119 -> 260 lines (RTO/RPO budget math, backup-verification drills, data-layer failover mechanics, the four-rung DR testing ladder, DR-as-code runbooks). Every external URL used was verified live the same day; four dead candidates were replaced and the bot-blocked Percona docs stay flagged per convention. Validation: mdBook build clean (3,106 HTML pages), 3,104 pages reachable via SUMMARY, 0 broken links, 0 fence problems, MathJax clean, 5,527/5,527 diagrams pass the real mermaid@11 parser. README stats refreshed (page, diagram, word, and URL counts re-measured with a consistent method).

2026-10-09 — Round 10 of reference mining: 5 new pages, 1 stub deepened

Tenth round toward the 30k-page goal, mining the round-9 backlog queue. Five new pages: Valkey and the Redis fork landscape (licence-change origin story, multi-threaded I/O engine, RESP/module compatibility, migration mechanics, 11-row comparison — dbms/caching); Well-Architected frameworks (AWS six pillars + lenses, Azure WAF, running reviews as evidence loops, pillar trade-offs argued both sides — cloud); Talos, k3s & minimal Kubernetes (distro design space, API-managed immutable Talos, single-binary k3s with SQLite-vs-etcd, 9-row distro comparison — cloud); offensive web tooling (WSTG methodology, interception proxies, ffuf filtering, Nuclei templates, sqlmap — strictly authorized-targets framing — security/advanced); and vulnerability reachability tooling (the four-level present/loaded/ reachable/triggerable ladder, govulncheck & OSV-Scanner mechanics, SBOM pipelines, VEX/OpenVEX, CI gate economics — security/advanced). The 44-line distributed-projects stub became a 271-line labs curriculum (MIT 6.5840 labs, Gossip Glomers, Maelstrom, TinyKV; fault-injection ladder; interview payoff) while preserving every original line. All external URLs verbatim from the verified reference indexes. Validation: 3,099 pages reachable, 0 broken links, 0 fence problems, MathJax clean, 5,511/5,511 diagrams pass the real mermaid@11 parser.

2026-10-08 — Full-corpus mining across all 13 indexes: 15 new pages, 2 deepened

Ninth round, continuing toward the 30k-page goal. The gap-analysis script was re-run over the whole reference corpus (1,781 entries across the now thirteen indexes, 1,066 raw misses); after filtering education-track and paper-venue noise and dedup-checking every candidate against the book (many apparent gaps were already covered — Go/Java/Rust concurrency, WebAssembly, MCP, event-driven patterns, the block layer, backup), fifteen true gaps became pages. Five OS kernel-family deep dives landed in os/advanced: Windows NT internals (IRQLs/DPCs, object manager, memory manager, IRP flow), XNU & Darwin (Mach ports, compressor VM, kqueue, launchd, Apple Silicon boot chain), the real-time landscape (RMA/EDF theory, Zephyr, FreeRTOS, NuttX, Tock/Hubris, PREEMPT_RT), illumos (DTrace delta-enablement, Zones, SMF, FMA), and POSIX & the Single UNIX Specification. Four security pages — the first mining of the round-8 security index — cover the AppSec toolchain (Semgrep/CodeQL/Trivy/secrets, reachability triage), vulnerability management (CVE/CWE/KEV/EPSS prioritization, patch SLAs, Log4Shell case study), reverse engineering & malware analysis (Ghidra/r2/YARA/Volatility 3), and host detection & response (osquery/Wazuh/Tetragon eBPF enforcement). DBMS adds search-engine internals (Lucene segments, BM25, translog-vs-refresh, ES/OpenSearch), Vitess sharding middleware (vindexes, MoveTables resharding), and query-engine frameworks (Calcite/DataFusion/Polars). Runtimes adds managed runtimes beyond the JVM (PyPy meta-tracing, GraalVM partial evaluation, LuaJIT, .NET tiering), rustc query-based internals (HIR/MIR, NLL, trait solving), and JAX functional ML (grad/jit/vmap/pmap, XLA). Two thin pages were deepened in place: cloud/autoscaling.md 148 -> 290 (HPA mechanics, KEDA, Karpenter, scaling-signal traps) and os/advanced/kernel-architectures.md 147 -> 251 (a ten-kernel design survey, isolation mechanisms, verification spectrum, cross-links to the new kernel-family pages).

Validation: 0 broken links, SUMMARY OK (3,094 pages, 0 duplicates), fences OK, MathJax clean, real Mermaid v11 parser 5,496/5,496 pass.

2026-10-08 — Skipped-gap pages + three new reference indexes: 8 new pages, 213 new index entries

Eighth round, two tracks. Track 1 closed the five gaps deliberately skipped by the reference-mining round: HotSpot internals (runtime/ interpreter/tiering/safepoints/oops, complementing the existing JVM pages), Fuchsia & Zircon (capability microkernel in production), HashiCorp Nomad (architecture, drivers, Nomad-vs-Kubernetes decision table), in-memory data grids (Hazelcast/Ignite/Coherence with CP-subsystem and split-brain coverage), and internal developer platforms (Backstage catalog/Scaffolder/TechDocs with Team Topologies framing). Track 2 grew the references section from ten to thirteen verified indexes — Security Engineering (81 entries), Concurrency & Parallelism (68), Storage Systems (64) — each in the established format with education tracks, the shared research-venue section, and a machine-readable CSV. All 321 URLs in the three new CSVs were HTTP-verified: 301 OK; 17 bot-blocked sources flagged in-page rather than dropped (cppreference, git.kernel.org cgit, uefi.org, nfs.sourceforge.net, datatracker, CISA KEV, AppArmor GitLab); 3 long-stable canonical sites unreachable from the build network (io500.org, gnu.org tar manual/Savannah) flagged the same way; 8 dead or moved URLs were replaced with verified working ones (Ceph developer guide, fio HOWTO.rst, kernel NVDIMM driver-api page, exfatprogs, BeeGFS portal).

Validation: 0 broken links, SUMMARY OK (3,079 pages), fences OK, MathJax clean, real Mermaid v11 parser 5,463/5,463 pass.

2026-10-08 — IaC section depth + Twelve-Factor: 1 new page, 4 enhanced

Companion wave to the reference-mining round. The src/iac/ section was the thinnest in the book (README 29, interview-questions 18, terraform 133, ansible 128 lines) and the Twelve-Factor App — the classic cloud-native vocabulary — had no dedicated page. Now: the IaC overview explains state, push-vs-pull, the full tool landscape and a maturity ladder; terraform.md covers providers/locks, plan-apply lifecycle, S3+ DynamoDB locking, modules, workspaces, import, drift and six footguns; ansible.md covers dynamic inventory, idempotency mechanics, roles vs collections, Vault, execution environments and the Terraform boundary; interview-questions.md is a real 18-question graded set. New page src/backend/twelve-factor-app.md maps all 12 factors to modern cloud-native practice and lists which factors changed meaning since 2011.

Validation: 0 broken links, SUMMARY OK (3,071 pages), fences OK, MathJax clean, real Mermaid v11 parser 5,449/5,449 pass.

2026-10-08 — Mining the reference libraries: 15 new source-grounded pages

Seventh round, driven by a systematic gap analysis of the ten reference indexes in src/references/ (888 entries, 1,822 verified URLs): every index entry was diffed against the book’s page inventory, and the high-value systems with no dedicated deep-dive were written up, grounded in the primary sources the indexes already list. New pages: OS — xv6 anatomy (PDOS/6.1810), the BSD family (FreeBSD/OpenBSD/NetBSD/illumos), and a kernel source-reading curriculum (docs.kernel.org, LWN, Elixir, KernelNewbies, Bootlin). Architecture — architectural simulation (gem5, Spike, Verilator, Ramulator 2, DRAMsim3, CACTI), the microarchitectural measurement toolbox (uops.info, llvm-mca, Agner Fog, Intel Intrinsics Guide, Chips and Cheese), and hardware root of trust (OpenTitan, TPM 2.0, OpenSBI). Databases/data — DuckDB internals, Apache Beam (the Dataflow model), and time-series databases (InfluxDB TSM→v3, TimescaleDB hypertables, delta-of-delta + Gorilla compression with worked examples). Distributed — Jepsen/Maelstrom/Gossip Glomers testing and TigerBeetle’s deterministic financial ledger (VOPR, Viewstamped Replication, 128-bit money). Tooling — reading small compilers (chibicc, QBE, c4), IaC beyond Terraform (OpenTofu, Pulumi, CDK, Crossplane, Terragrunt), policy as code (OPA/Rego, Kyverno, Falco), and the 2026 agent SDK landscape (OpenAI Agents SDK, Claude Agent SDK, Google ADK, smolagents, Mastra, Semantic Kernel). Every page cross-links its sibling book chapters and ends with interview Q&A.

Validation: 0 broken links, SUMMARY OK (3,070 pages), 0 MathJax issues, fences OK, real Mermaid v11 parser 5,446/5,446 pass.

2026-10-08 — Competitive programming, math olympiads & quant puzzles: 27 new pages

Sixth round: three new top-level sections requested for competition-track candidates. src/competitive-programming/ (8 pages): hub + rating ladders, Codeforces and AtCoder guides, LeetCode archive strategy, ICPC and IOI pipelines (incl. the India path via IARCS), clist.by/vJudge contest-calendar workflows, and a 14-judge resource directory. src/competitive-math/ (8 pages): olympiad track hub, IMO format/scoring/preparation, proof-first number theory, combinatorics (15-puzzle parity, invariants, extremal arguments), algebra (FE playbook, Vieta jumping), geometry (power of a point, barycentric/complex fallbacks), the Indian IOQM→RMO→INMO pipeline, and a resource directory (AoPS, Evan Chen, HBCSE). The CP section also gained a per-competition archive miner (IOI/ICPC/USACO/CF/AtCoder/LC past sets with a 12-week mining plan) and a tooling-and-workflow page (Codeforces API, kenkoooo sheets, clist feeds, stress-testing rig, mistake-log tracker). src/quant-prep/ (9 pages): quant landscape + role/interview funnel, a 20-firm directory (Jane Street/HRT/Optiver/IMC/SIG/Jump/DRW/Two Sigma/DE Shaw + India scene), Jane Street monthly-puzzle framework with two fully worked style-puzzles, HRT brainteasers (pirates, airplane, blue eyes, von Neumann coins), the EV canon derived via first-step analysis (HHT=14 vs HTT=10, St. Petersburg, two envelopes, secretary problem), market-making game math with adverse selection, mental-math speed drills (zetamac, 4-week plan), game-theory puzzles (Nim, backward induction), and the green-book canon map.

Validation: 0 broken links, SUMMARY OK (3,055 pages), 0 MathJax issues, fences OK, real Mermaid v11 parser 5,407/5,407 pass.

2026-10-08 — Indian recruiter guides & SQL round: 4 new pages, 2 enhanced

Fifth round: new company guides for the Indian placement season — TCS (NQT, Ninja/Digital/Prime), Infosys (SE/DSE/Power Programmer tracks), other mass recruiters (Wipro/Accenture/Cognizant/Capgemini/LTIMindtree comparison), and the India product-company landscape (Flipkart/Swiggy/ Razorpay/Atlassian-style funnels, LLD emphasis, ESOP reality). SQL-rounds page expanded into a 12-pattern query catalog with window functions; compound-interest aptitude page deepened.

Validation: 0 broken links, SUMMARY OK (3,028 pages), 0 MathJax issues, real Mermaid v11 parser 5,359/5,359 pass.

2026-10-08 — Placement-process & puzzles round: 4 new pages, 13 enhanced

Fourth round closing the placement-logistics gaps: the entire src/placement-preparation/ section deepened (funnel & 12-week plan, campus vs off-campus mechanics, technical/HR/GD/communication rounds, OA platforms, coding assessments, cognitive tests, internships/PPO), the aptitude hub + trigonometry + calculus pages expanded, and a NEW puzzles section (src/interview/puzzles/) added with fully-worked solutions for the canon: weighing/weaving classics (8 balls, 25 horses, 2 eggs/100 floors), logic deduction (100 prisoners, hats, chameleons, birthday grid), and probability (Monty Hall, birthday paradox, cycle-following prisoners).

Validation: 0 broken links, SUMMARY navigation OK (3,024 pages), 0 MathJax issues, real Mermaid v11 parser 5,354/5,354 pass.

2026-10-08 — Interview-classics expansion: 36 new pages, 5,336 diagrams

Third expansion round targeting the remaining classic interview topics and thin high-traffic pages. 36 new pages (13,539 lines inserted) plus 10 existing pages substantially enhanced (+2,463 lines net).

New pages (all wired into src/SUMMARY.md):

  • System-design case studies (src/interview/system-design/case-studies/, 18 pages) — IRCTC/Tatkal train booking, UPI/NPCI payments, food delivery (HLD), video conferencing (SFU/WebRTC), live comments, online exam platform, dating app, CDN service, matchmaking & leaderboards, fantasy sports, grocery instant delivery, loyalty points ledger, vaccination slot booking, telehealth, digital lending, C2C marketplace, Google Photos-scale media, content moderation platform.
  • Machine coding (src/machine-coding/, 9 pages) — car rental, meeting room scheduler, shopping cart, Stack Overflow Q&A, cricket scoreboard, thread pool, pub-sub broker, inventory management, cron parser.
  • Networks — DDoS mitigation deep dive (src/networks/security/).
  • HPC — SIMD vectorization & roofline model; fault tolerance & checkpoint/restart (src/hpc/).
  • Security — threat modeling, zero-trust architecture, incident response & forensics (src/security/).
  • Modern kernel — Rust in the Linux kernel, THP/khugepaged, zram swap tuning (src/os/modern/).

Enhanced pages: coding-pattern pages (binary search, sliding window, two pointers), OA/MCQ/pseudocode strategy guides, interview/coding/README.md, case-studies README rebuilt as a 37-study catalog, machine-coding README rebuilt as a 23-problem catalog, TGI deep dive, LLM serving security, vector-database internals, CI/CD case study expanded to full format.

Validation: 0 broken links, SUMMARY navigation OK (3,020 pages), 0 MathJax issues, real Mermaid v11 parser 5,336/5,336 pass.

2026-10-07 — Reference-grounded expansion: 140 new pages, 5,182 diagrams

Large expansion driven by the Reference Libraries section: each new deep dive was written against the verified primary-source indexes (machine-learning-ai, agentic-engineering, prompt-engineering, distributed-systems, database-systems, networking, operating-systems) and cites them. 140 new pages (31,870 lines inserted), 6 existing pages substantially enhanced.

New sections (all wired into src/SUMMARY.md):

  • LLM Architectures (src/llm/architectures/, 10 pages) — Mamba/SSM, RWKV, linear attention, long-context strategies, hybrid architectures, Mixture of Depths, model merging, vision-language, SSM-vs-attention decision guide.
  • LLM Post-Training (src/llm/post-training/, 10 pages) — DPO family, GRPO/RLVR, reward models, PRMs, reward hacking, synthetic data, continual pretraining, self-improvement, data pipelines.
  • Agentic Systems Engineering (src/llm/agentic/, 10 pages) — MCP/A2A protocols, agent auth (OAuth 2.1, token exchange), sandboxed execution, observability, guardrails, computer-use agents, SWE-agents, memory, topologies.
  • Advanced Prompt Engineering (src/llm/prompting/, 9 pages) — CoT/self- consistency, ToT/GoT, prompt caching, compression, few-shot selection, structured outputs, injection defense (incl. CaMeL), system prompt design.
  • Advanced Retrieval & RAG (src/llm/retrieval-advanced/, 9 pages) — chunking, hybrid fusion, rerankers, GraphRAG, agentic RAG, embedding fine-tuning, RAG evaluation, long-context-vs-RAG.
  • System Design Case Studies (src/interview/system-design/case-studies/, 11 pages) — ticketmaster, stock exchange, ad-tech RTB, distributed task scheduler, metrics monitoring, distributed tracing, log analytics, live auction, feature store, CI/CD.
  • Coordination Systems Internals (src/distributed/systems/, 10 pages) — etcd, ZooKeeper/ZAB, Chubby & Consul, CockroachDB, TiDB, Spanner/TrueTime, Calvin, SWIM/memberlist, consistency verification (Jepsen/FDB/VOPR).
  • Messaging Internals (src/distributed/messaging-internals/, 9 pages) — Kafka log & rebalancing, Pulsar/BookKeeper, Redpanda, NATS JetStream, exactly-once, backpressure.
  • Storage Formats & Lakehouse (src/storage/formats/, 9 pages) — Iceberg, Delta, Hudi, comparison, Parquet internals, cache eviction, Ceph CRUSH (backlog item closed), deduplication.
  • Database Internals additions (src/dbms/internals/, 9 pages) — PostgreSQL MVCC, InnoDB, Bw-tree, column-store execution, adaptive query execution, vector indexes, LSM hybrids, TSDB internals, observability.
  • Modern Kernel Internals (src/os/modern/, 10 pages) — EEVDF, PSI/DAMON, MGLRU, sched_ext, SCHED_DEADLINE, futex, maple tree, page reclaim, OOM killer.
  • OS Security Internals (src/os/security-internals/, 8 pages) — seccomp, Landlock, BPF LSM, IMA, livepatching, vDSO, ptrace, lockdown.
  • Network Protocols (src/networks/protocols/, 10 pages) — SCTP, EVPN-VXLAN, RPKI, TLS ECH, QUIC migration, BBR deep dive, PMTUD, RoCEv2, Wi-Fi 7.
  • CS Theory additions (src/cs-theory/, 9 new pages) — randomized algorithms, derandomization, communication complexity, information theory, coding theory, online algorithms, algorithmic game theory, PCP/inapproximability.
  • DSA Chapters 195-202 — Li Chao segment tree, Segment Tree Beats, matroid intersection, Sprague-Grundy, XOR basis, finger trees, slope trick, offline dynamic connectivity.

Enhanced (thin pages deepened to 200-320 lines): cs-theory README set (logic, proofs, formal languages, computability, Turing machines, sets, complexity classes, comparison-sorting lower bound), networks overview/routing/ ssl/advanced, os filesystems/boot/kernel, dbms/postgresql, llm/advanced, distributed overview, dbms/internals README.

A same-day second wave added 10 more pages: serving engines (llama.cpp/GGUF, LMDeploy, cache-aware KV routing, engine-comparison matrix), audio & speech models, diffusion transformers/flow matching, tokenizer internals, six new case studies (social graph, API gateway, secrets manager, feature flags, video transcoding, durable execution), an LLM Evaluation section (benchmark landscape, harnesses, LLM-as-judge), and network additions (BGP route reflector, anycast & geo routing, DNS tuning).

Validation: all four fast validators pass (0 broken links, SUMMARY navigation OK for 2,985 pages, 0 MathJax issues incl. 358 single-backslash delimiters repaired, heuristic mermaid 100%) and the real Mermaid v11 parser passes 5,249/5,249 diagrams — up from 4,889.

2026-09-20 — Sixth pass: papers resolved at metadata level, moved docs, pruned posts

58 more dead links repaired (453 → 395 genuine broken links). Nothing was replaced unless the target was fetched and title-checked live, or a Wayback snapshot of the same URL was confirmed.

  • OpenAlex paper resolution over 81 unresolved dead PDFs (Semantic Scholar answers 429 to scripted clients): 5 applied, each after reading the citation line. A metadata match alone is not enough — the candidate offered for scottaaronson.com/papers/kuperberg.pdf was a different Kuperberg paper and was rejected.
  • GitHub facts checked through the API instead of by guesswork: ongardio/dissertation → ongardie/dissertation, ocaml-multicore/ocaml-mpst → keigoi/ocaml-mpst, and the WASI Preview 2 spec now lives at specifications/wasi-0.2.0/Overview.md. Deleted repositories (peepmatic, keir/pompeii, ptcube/jump-consistent-hash) resolved to nothing and were left in the backlog rather than pointed at a lookalike.
  • Documentation that moved without redirects: web.dev articles/http-caching → articles/http-cache; Lighthouse accessibility scoring → developer.chrome.com/docs/lighthouse/accessibility/scoring/; Anthos clusters security/networking → the GKE network overview; kubectl.docs.kubernetes.io/pages/* → references/kustomize/*; kernelnewbies CamelCase pages → /Module, /Documentation/Subsystems, /FirstKernelPatch; Spanner query-plans → query-execution-plans; Cloud Run run/docs/about → run/docs/overview/what-is-cloud-run; NIST pubs/nistir/* → pubs/ir/* plus the nvlpubs PDF host.
  • Pruned comparison posts, substituted but not mislabelled: the AWS blog, Confluent and CNCF “X vs Y” posts are gone with no successor, so those links now point at the same vendor’s documentation for the topic and each label says what the target actually is. Two pages that survive only in the Wayback Machine (libev, Luca Padovani’s research page) link to their snapshots.
  • scripts/dead-links-report.txt regenerated: 395 genuine broken links across 298 hosts, with a per-host listing and the pass-6 strategy notes.
  • README.md and src/meta/status.md corrected while editing them: both still said “281 repaired across four passes” (the pass-3 count of 30 had been dropped from the sum) and “601 dead” where the measured figure is 630.

30 more dead links repaired (483 → 453 genuine broken links), and the automation itself was measured rather than assumed.

  • Structural URL variants. 2,740 candidate URLs across 483 dead links (case, file extension, trailing slash, separators, locale and version segments) produced 7 confirmed fixes — e.g. OWASP’s Cross-Site_Scripting… → Cross_Site_Scripting…, and engineering.fb.com and herbsutter.com posts reachable with the date prefix dropped. A second round adding host-alias rewrites (/users/X/ → /~X/) produced 0 from 638 candidates.
  • Crossref / arXiv matching against the citation titles of 88 dead PDFs, accepting only ≥0.80 title similarity: 5 confirmed. Two further candidates were rejected on inspection — a journal article standing in for a PhD thesis, and a paper whose result exponent (0.091n) differed from the cited one (0.054n). Verifying at the metadata level rather than by HTTP status is what caught those: an earlier, looser pass had matched a Tendermint thesis to an unrelated Information Sciences article.
  • Sitemap harvesting. 440 of the 468 links then outstanding sit on hosts that still resolve, so the pages moved rather than the sites dying. Each live host’s own sitemap.xml / MkDocs search_index.json was harvested — 184 hosts, 102,590 URLs — and slug-matched at a strict threshold for 16 more confirmed replacements (Redis’s reorganised docs, sre.google book chapters, Pony tutorial, catonmat, Stripe, EleutherAI, and others).
  • Also corrected: three more citations whose cited document does not exist rather than merely having moved — AWS’s “Use of Formal Methods” URL was fabricated (it mixed Prime Video into the slug) and now cites the real CACM paper by DOI; two AWS marketing comparison pages were replaced with the product feature pages they were describing.

Why the remaining 453 need a human. Every candidate was rejected unless it passed a same-document test: no index/ancestor pages, no locale swaps, no version downgrades, and the leading distinctive word of the dead URL had to survive. Loosening that bar made the matcher propose a Japanese-locale page for an English one, map “sed one-liners” to “awk one-liners”, and offer an older release in place of a newer one. The 453 that remain are pages that exist in no equivalent form — removed vendor documentation, pruned blog posts, retired academic pages, dead DOIs — so substituting anything would make the bibliography wrong rather than merely stale.

A counting bug in the previous passes is corrected here. The URL extractor stopped at the first ) and bled across ], so every URL containing a parenthesis was measured as truncated and reported dead. A Markdown-aware extractor (balanced parentheses, stops at link syntax) replaces it.

  • 20 links were never broken. 14 doi.org DOIs, the 5 Wikipedia articles (Erlang_(unit), Null_(SQL), …) and one testcontainers page all return 200. They were false positives of the old extractor, not dead links.
  • Re-measured everything: 8,638 external URLs, 6,112 live, 601 dead. Of the dead, 116 appear only inside fenced code blocks and 66 are intentional placeholders, leaving 483 genuine broken links — down from the previously reported 522, which was itself inflated.
  • 30 more links repaired, each fetched and title-checked first: removed PostgreSQL and cp-algorithms doc paths, brendangregg.com’s restructured site (including the book page and four blog slugs), LLVM’s dead doxygen file pages replaced with the canonical GitHub sources, research.google numeric pub ids replaced with the current slugs, three Cloudflare blog slugs that changed in their 2024 migration, and four more GitHub paths (grpc A6, src/udevd → src/udev, SE-0302 whose title and path were both wrong, and Chainlink’s contracts which now live in chainlink-evm).
  • Two citations again turned out to be fabricated rather than merely moved: SE-0302 was cited under a title and directory that do not exist.

Worked the remaining backlog directly rather than only cataloguing it. 90 more dead links repaired, every replacement fetched and title-checked first.

  • 26 GitHub URLs. Resolved through the GitHub tree API instead of guessing: renamed repos (openxml/stablehlo → openxla/stablehlo, gilt/wrk2 → giltene/wrk2, epaxos/spindle → efficient/epaxos, eclipse-threadx/rtos → eclipse-threadx/threadx, jorgebucaran/awsm-fish → awsm.fish, graphprotocol/graphprotocol-docs → graphprotocol/docs, and others) and relocated files (cranelift/src/egraph.rs → cranelift/codegen/src/egraph/mod.rs, containerd docs/architecture.md → docs/cri/architecture.md, groupcache jump.go → consistenthash.go, edk2 ShellBinPkg → ShellPkg). The OP-TEE examples live at linaro-swg/optee_examples; iovisor/bpfprobe is upstreamed into bpftrace/bpftrace.
  • 67 documentation pages re-pointed at their live parent section — applied only where the parent is the same documentation area, and deliberately not for blog posts, papers, release announcements or named source files, where the parent would be different content.
  • 2 fabricated citations corrected. Two “Swift-evolution proposals” had both a title and a number that do not exist; they now cite the real proposals (SE-0297 concurrency/Obj-C interop, SE-0304 structured concurrency).
  • Also recorded: 68 URLs that 404 appear only inside fenced code blocks — code samples, XML namespace identifiers (http://xml.org/sax/features/...), template strings (linux-${KERNEL_VERSION}.tar.xz) and placeholder hosts. Those are correct as written and are no longer counted as broken links; they are listed separately at the end of scripts/dead-links-report.txt.
  • Remaining backlog: 522 genuine broken links across 332 hosts, down from 681. Dominated by dead DOIs (14), removed vendor blog posts, retired doc trees and academic pages. web.archive.org was retried and yielded snapshots for only 10 URLs, too few to justify substituting an archived page elsewhere.

The first pass worked from a catalogue of 758 flagged URLs. This pass threw the catalogue away and re-fetched every distinct external URL in src/ — 8,662 links across 2,067 hosts.

  • What the full sweep found. 5,872 live (HTTP 200), 761 dead (404/410); the remainder answered 403/429/bot-challenge and were recorded as unverifiable rather than dead. The earlier catalogue was incomplete: 305 of the 761 dead links had never been catalogued, and 456 were known ones still unresolved.
  • 60 replacement URLs across 54 files, each fetched and title-checked before being written. Every kernel.org link in the book is now live (471/471) — the sweep tested all of them, not just the catalogued ones, and re-pointed 20 to real pages (selinux, seccomp, bpf/maps, cpufreq, cpuidle, driver-api/vfio, core-api/memory-allocation, arch/x86/boot, timers/index, netlink/specs, locking/spinlocks, core-api/workqueue, filesystems/overlayfs, and the OLS proceedings for the kprobes and udev papers, whose original PDFs were removed from kernel.org).
  • Also repaired: 7 systemd.io pages that were reorganised, 5 Cassandra doc paths, 16 man pages (man7.org section errors, manpages.debian.org, and man.archlinux.org for pages man7.org does not mirror), 7 Rust RFC/Miri links, and a malformed ClickHouse citation whose link text, URL and closing quote were all wrong.
  • Remaining backlog: 681 genuine dead links (plus 40 intentional example.com placeholders, which are correct as written), recatalogued by host in scripts/dead-links-report.txt. These are pages deleted upstream — files that exist at no path in the cited repository, retired documentation trees, removed vendor posts — so each needs a substitution decision, not a rewrite.

Worked through the external-URL backlog. Of the 758 links flagged dead by the original probe, 161 now resolve and 20 turned out to be false positives.

  • 161 repaired. 129 re-pointed to a verified live page, 32 given an archived snapshot. Every replacement was fetched and confirmed (HTTP 200 and a real page title) before being written; nothing was applied on a guess.
  • 93 of those were kernel docs. The largest cluster was docs.kernel.org paths that never existed (/security/IMA.html, /networking/qdisc.html, /mm/slub.html, …). Each was resolved against docs.kernel.org’s own search index (4,074 real document paths) and confirmed by page title, e.g. www.kernel.org/doc/Documentation/block/blk-mq.txt → docs.kernel.org/block/blk-mq.html, virt/kvm/mmu.html → virt/kvm/x86/mmu.html, security/tomoyo.html → admin-guide/LSM/tomoyo.html.
  • 20 man pages that man7.org does not mirror (apt, chroot, nmcli, nft, qemu-img, watchdog, …) now point at manpages.debian.org, whose /<name>.<section> URLs are version-agnostic.
  • 32 archived snapshots for hard 404s with no live equivalent — the only non-primary sources in the book; all were fetched and confirmed live.
  • 20 false positives. A careful re-probe showed links such as criu.org, the NIST/AMD/NVIDIA PDFs and vldb.org resolve fine; they had failed transiently (DNS/TLS/timeout) during the first probe. None had been modified.
  • Rejected bad “fixes”. Automated repair was deliberately conservative: an NVIDIA PDF “fixed” by adding a trailing slash returned HTTP 200 with the title Page Not Found, and a Merkle/NRC rewrite silently redirected to the site homepage. A topic-token check rejected these rather than shipping them.
  • git.kernel.org is unusable as a fallback. It sits behind an Anubis anti-bot wall that answers automated requests with HTTP 200 and a challenge page, so a link there cannot be verified — and naive checking would have reported the challenge page as a working link.
  • 471 hard 404s remain, catalogued by host in scripts/dead-links-report.txt. Each needs a human decision (re-point, swap source, or drop).

2026-09-19 — Independent review and fix pass

Full audit of the research tree, then repair of every defect it found. Net result: the book’s own validators are now stronger than the ones that missed these bugs.

  • Code fences (11 lines / 7 files) — fences abbreviated to a bare double backtick, and the mangled double-backtick-plus-n form left an orphaned closer that opened a runaway code block, so following prose, headings and tables rendered as code. Repaired in cloud-scheduling, hpc-infra, trigonometry, approximate-privacy, applied-systems, reliability-patterns, monotonic-queue-dp; a stray mangled fence token deleted from approximate-privacy.md:75. Verified over all 33,152 fenced blocks.
  • documentation.md nested fences (4 blocks) — ```markdown templates containing ```bash samples were invalid CommonMark; the inner fence closed the outer block, producing 25 phantom code blocks and swallowing the section’s headings. Outer fences widened to 4 backticks and verified with a real mdBook build.
  • profit-loss.md — replaced two wrong same-selling-price formulas (one contradicts its own proof) with the exact Loss% = x²/100 result and the general Net% = (100y − 100x + 2xy)/(200 + x − y); brute-force verified over 36 pairs. The vacuous “Trick 4” became a derived breakeven y = 100x/(100 + 2x).
  • time-work.md — worked example rewritten so its premise, arithmetic and conclusion agree, with an explicit consistency check.
  • ppo.md MathJax/link collision — H[\pi_\theta](s) inside display math was parsed as a Markdown link, rendering H<a href="s">…</a>. Rewritten with \lbrack/\rbrack; render-verified.
  • 48 site-root-absolute links — [x](/a/b) never resolves in an mdBook and was invisible to check-links.py. Repointed or removed.
  • URL repairs — docs.yugabyte.compreview/... ×3, a dead Cloudflare consistent-hashing blog, a URL containing a literal space (X100/MonetDB), and a duplicated “Linux Unplugged” entry that actually pointed at Late Night Linux.
  • Stale/incorrect counts — kernel size unified on ~40M lines (Linux 6.14) across the 7 pages that disagreed; page/diagram/math counts refreshed in README, status, progress, coverage_dashboard and the cross-reference graph.
  • “prompt.md” claim retracted — meta/status.md asserted full coverage of 1,528 prompt.md topics, but no prompt.md exists in the repository.
  • Structure — page-rejection.md → page-replacement-overview.md; two SUMMARY.md indentation jumps fixed; collision labels disambiguated for the three page-replacement and two query-optimization pages; mobile/README.md expanded into a landing page.
  • Tooling — new scripts/check-fences.py (wired in as validate step 2/7); check-links.py now catches site-root-absolute and non-.md targets and no longer mistakes C++/Go samples such as Sum[int](myInts) for links; check-mathjax.py detects ]( inside math spans and drops an always-true condition.
  • CI deliberately left build-only — the README badge, CONTRIBUTING and scripts/README.md claimed validation ran in CI “and weekly”, but the only workflow is the main-only Pages build+deploy, so research had never been built by CI. Validation is a local/agent step in this repository to avoid burning hosted minutes; the documents and the badge were corrected to say so instead of adding validation jobs.
  • Known backlog — 758 external URLs were flagged dead. A dedicated follow-up pass repaired 161 (129 verified live replacements, 32 archived snapshots), identified 20 as transient false positives, and left 471 hard 404s catalogued by host in scripts/dead-links-report.txt. Internal links, anchors, SUMMARY, Mermaid, MathJax, fences and all 491 DOIs are clean.

2026-08-13 — Software Engineering: dedicated Testing, DevOps, and Contributing pages

  • Added software-engineering/testing.md (levels, types, TDD/BDD, strategy), software-engineering/devops.md (CI/CD, deployment strategies, IaC), and software-engineering/CONTRIBUTING.md (contribution guide).
  • Registered all three in SUMMARY.md; re-pointed the Software Engineering README and documentation.md links to the new local pages (previously routed to ../testing/README.md, ../cloud/cicd/README.md, and a GitHub URL).
  • Validation after change: 0 broken links, Summary navigation OK, MathJax OK, Mermaid heuristic 4,405/4,405.
  • Committed on dev as 6318d8b and pushed to origin/dev; main unchanged.

2026-08-13 — Pull and topic-completeness audit

  • Fast-forwarded local dev to remote commit 61ac3ce.
  • Found ten Summary entries whose target files were absent and added concise, referenced pages for data formats, data quality, search fundamentals, vector search, technical interviews, group discussions, SQL window functions, joins, DBMS concurrency scenarios, and testing interview questions.
  • Repaired four stale links in Software Engineering and testing documentation.
  • Validation after repair: 0 broken links, complete Summary reachability, MathJax OK, Mermaid 4,405/4,405, and Mermaid v11 parser 4,405/4,405.
  • Work remains on dev; main was not modified.

2026-08-13 — Massive content expansion (parallel agents)

Six parallel agents are creating comprehensive new sections:

Git Section (15 files)

  • src/git/README.md — Overview and chapter outline
  • src/git/internals.md — Objects (blob, tree, commit, tag), refs, HEAD, index, packfiles, SHA-1
  • src/git/fundamentals.md — Setup, config, staging, committing, diffing, undoing
  • src/git/branching.md — Branches, fast-forward, three-way merge, conflicts, octopus merge
  • src/git/rebasing.md — Rebase, interactive rebase, –onto, autosquash, rerere
  • src/git/stashing.md — Stash operations, partial stashing, branch from stash
  • src/git/advanced.md — cherry-pick, revert, reset, reflog, bisect, worktree, submodule, blame, grep
  • src/git/remotes.md — fetch, pull, push, force-with-lease, multiple remotes
  • src/git/tags.md — Lightweight vs annotated, semver, GPG signing
  • src/git/hooks.md — Client-side (pre-commit, commit-msg, pre-push), server-side (pre-receive, update)
  • src/git/workflows.md — Trunk-based, GitFlow, GitHub Flow, GitLab Flow, forking
  • src/git/github.md — PRs, code review, branch protection, CODEOWNERS, GitHub Actions
  • src/git/interview-questions.md — 25+ questions from beginner to advanced + scenarios
  • src/git/cheat-sheet.md — Quick reference for all commands

Software Engineering Section (10 files)

  • SDLC models, Agile/Scrum, requirements engineering, software design (SOLID)
  • Code quality, documentation, project management, metrics, team dynamics
  • Interview questions covering all SE topics

Programming Fundamentals Section (10 files)

  • Variables/types, scope/lifetime, functions (closures, HOFs, generators)
  • Error handling, type systems, memory model, I/O/serialization
  • Modules/packages, interview questions

Aptitude & Placement Preparation (17 files)

  • Quantitative: percentages, ratios, averages, profit/loss, time/work, speed/distance
  • Logical: probability, number systems, logical reasoning, data interpretation
  • Placement: campus process, online assessment, technical/HR interview, group discussion

Resume, Behavioral, Communication (15 files)

  • Resume: structure, bullet writing, projects, technical skills, ATS optimization
  • Behavioral: STAR method, 30+ common questions, company fit, scenarios
  • Communication: technical, interview, written

Machine Coding & Practical Problems (22 files)

  • Machine coding: parking lot, elevator, library, splitwise, rate limiter, LRU cache, task scheduler
  • Practical problems: parsers, CLI tools, file processing, concurrent problems, system utilities
  • DBMS interview problems: classic SQL, window functions, joins, optimization, concurrency

Security, Data Engineering, Search (18 files)

  • Security: authentication (OAuth/OIDC/JWT), authorization (RBAC/ABAC), web security (OWASP Top 10)
  • Cryptography: AES/RSA/ECC, TLS, password hashing, certificates, PKI
  • Data engineering: Spark, Kafka, Airflow, Parquet/Avro/ORC, data quality
  • Search: inverted indexes, TF-IDF/BM25, Elasticsearch, vector search

2026-08-12 — Research loop batch 4

  • Added backend/api/graphql-federation.md with entities, composition, directives, query planning, schema governance, and failure modes.
  • Added distributed/fundamentals/distributed-locks.md with lease races, fencing tokens, Redis/Redlock, ZooKeeper, etcd, and lock alternatives.
  • Added storage/tiered-storage.md with hot/warm/cold policies, RocksDB tiering, object lifecycle, caching, cost, latency, and recovery trade-offs.
  • Added navigation, cross-reference edges, backlog markers, and coverage data for the research batch.

2026-08-12 — Research loop batch 3

  • Added networks/ebpf-networking.md using Linux kernel networking/BPF docs, AF_XDP, XSKMAP, SOCKMAP, BPF maps, Cilium, and eBPF Docs references.
  • Added languages/rust/async-runtimes.md using the Rust Async Book, Tokio, smol, async-std, Glommio, Monoio, and Embassy documentation.
  • Added backend/observability/opentelemetry.md using OpenTelemetry signal, propagation, semantic-convention, sampling, and specification docs.
  • Added Summary links, graph edges, backlog markers, and coverage updates.

2026-08-12 — Research loop batch 2

  • Added storage/nvmeof.md using current NVM Express TCP/RDMA transport specifications and Linux NVMe documentation.
  • Added distributed/fundamentals/crdts.md using CRDT.tech, the CRDT papers bibliography, the original CRDT literature, and Ink & Switch local-first and Peritext research.
  • Added backend/patterns/cdc-outbox.md using current Debezium connector, Outbox Event Router, PostgreSQL logical decoding, and Microservices.io transaction-log-tailing documentation.
  • Added Summary links, cross-reference edges, backlog completion markers, and coverage updates for all three topics.

2026-08-12 — Research: ABA and safe memory reclamation

  • Added src/concurrency/aba-problem.md covering ABA interleavings, tagged pointers, hazard pointers, epoch-based reclamation, RCU, reference counting, memory ordering, implementation choices, and interview questions.
  • Cross-linked the chapter to lock-free structures, the memory model, Linux RCU, OS memory barriers, C++, Rust/Crossbeam, and DSA hardware context.
  • Researched against Linux RCU Concepts, WG21 P2530R3, WG21 P2545R4, the current C++ working draft, IBM’s hazard-pointer paper, Boost.Lockfree, Folly Hazptr, and Crossbeam Epoch.

2026-08-12 — Add MathJax validation tooling

  • Added scripts/check-mathjax.py to verify mathjax-support = true, balanced escaped inline/block delimiters, no legacy $$ delimiters outside code, and no unclosed Markdown fences.
  • Added optional --book-dir checking for the generated MathJax runtime.
  • Added the MathJax check as step 6 in scripts/validate-all.sh and documented standalone usage in scripts/README.md.

2026-08-12 — Research and validation audit

Fixed

  • Converted legacy $$...$$ display equations in 61 Markdown pages to the mdBook-compatible escaped block delimiters used by MathJax.
  • Closed malformed code fences in DSA advanced segment trees, Linux firewall maps, and ML optimizer examples.
  • Repaired nine stale internal heading fragments and four escaped Ctrl+ code examples discovered by the audit.
  • Corrected the retired ebpf.io/docs URL to the maintained docs.ebpf.io documentation site.

Audit result

  • Broken relative links: 0.
  • SUMMARY reachability: 1,533 of 1,533 content pages linked.
  • Mermaid heuristic/parser: 4,387 / 4,387 passed.
  • Math delimiter counts are balanced outside fenced code and inline code spans.
  • No exact duplicate Markdown bodies were found.
  • 73 URL-bearing pages without a References-style heading and 112 pages with no content cross-links remain as research-review candidates; they are not navigation failures because Summary reachability is complete.

2026-08-12 — Enable MathJax and automatic cross-reference graph

  • Enabled mdBook’s built-in MathJax support with output.html.mathjax-support = true.
  • Added scripts/generate-cross-reference-graph.py and a Meta navigation page; the GitHub Pages workflow now generates the interactive graph automatically after every successful mdBook build.
  • Added the Cross-Reference Graph Meta page; the generated view is output-only and is not committed as a large artifact.
  • Confirmed the integrated DSA source uses mdBook-compatible escaped inline mdBook-compatible inline and block delimiters.
  • The generated DSA math page now includes the MathJax runtime instead of leaving formulas as raw delimiter text.

2026-08-12 — Linux and DSA book integration

Added

  • Integrated the educational Markdown from lb2 into the navigable src/linux/ Linux deep-dive track.
  • Integrated the educational Markdown from dsa_book_2 into the navigable src/dsa/ DSA track.
  • Added a referenced Linux Tools for Placement Preparation chapter covering file/text, process, storage, networking, debugging, and developer-workflow tools.
  • Added explicit project status, progress, backlog, coverage, and knowledge graph tracking for this batch.

Fixed

  • Rewrote imported relative Markdown links for their final locations and removed stale source-only targets rather than leaving broken navigation.
  • Repaired 34 imported Mermaid diagrams identified by the repository heuristic validator, including unsafe labels, malformed subgraphs, sequence syntax, and a corrupted routing diagram.
  • Repaired 15 parser-only Mermaid failures found by Mermaid v11, including nested quotes, multiline labels, invalid state transitions, inline comments, reserved node IDs, and source-file line-join corruption.
  • Added five Linux build chapters that were initially hidden by the target repository’s generic build/ ignore rule.

Validation

  • Link checker: 0 broken links.
  • SUMMARY checker: OK for 1,534 Markdown files (1,533 linked chapters).
  • Mermaid heuristic: 4,387 / 4,387 passed.
  • Mermaid v11 parser: 4,387 / 4,387 passed.
  • validate-all.sh: exit 0 / ALL VALIDATION PASSED when called with an absolute repository path.
  • mdBook 0.4.52: a full search-disabled build produced 1,575 output files successfully; the normal search-enabled build was killed by the sandbox memory limit with exit 137. The production configuration remains unchanged.

Git

  • Integration commits 42c4e57 and 5f986da, followed by metadata/validation commit 79145d7, were made on dev and pushed to origin/dev.
  • The validated tree was promoted from dev to main and synchronized back to dev; both release branches are kept aligned.
  • The working tree was clean after promotion.

Earlier history

See the preceding commits for the existing autonomous content-expansion batches. This changelog intentionally records the current integration batch without rewriting that history.

2026-08-15 — Massive advanced topics expansion (1,500+ topics across 20 sections)

Two commits pushed to origin/dev:

  1. docs: add 1,500+ advanced topics across 20 sections (A-T) (fa3dc05) — 131 new markdown files across 20 directories covering topics 1-1500 from the master specification. ~249K words total. Sections: Advanced OS, Linux Kernel, Distributed Systems, Distributed Storage, Advanced DBs, Advanced Algorithms, PL/Compilers, Computer Architecture, HPC, Networking Research, Formal Methods, Security Research, Blockchain, AI Systems, AI+Distributed, Cloud/Serverless, Edge/IoT, Quantum Computing, Supply Chain/Build Systems, Observability.
  2. fix: resolve all validation errors and add gap content (3c41f0b) — Added Build-It-Yourself track (34 implementation projects across 5 domains), Advanced Benchmarking section (methodology, pitfalls, statistics, tools, flame graphs), fixed 3 missing topics (hugetlbfs, TCP autotuning, zk-rollups), fixed 3 missing SUMMARY entries, 11 broken links, 13 mermaid errors, 3 legacy MathJax delimiters, 6 unclosed code fences, 26 single-backslash delimiters.

Validation after expansion

  • Link checker: 0 broken links
  • SUMMARY checker: OK (2,117 content files, all reachable at that snapshot; now 2,809)
  • Mermaid heuristic: 4,883 / 4,883 passed (100%) — 478 new diagrams (now 4,889 / 4,889)
  • MathJax: OK (0 legacy delimiters, 0 unclosed fences, 0 unbalanced)

Every commit was preceded by a clean validation run. main unchanged; all work on dev.

2026-08-15 — OpenClaw expansion batch

Five focused commits pushed to origin/dev:

  1. docs(index): add master topic index as authoritative roadmap — src/index.md (1 660 lines, 50 topic sections) added; wired into SUMMARY.md top nav and Meta section.
  2. docs(java): expand virtual-threads page with depth — src/languages/java/virtual-threads.md 139 → 261 lines. JEP timeline, continuation-on-heap internals, structured-concurrency API churn, migration playbook, comparison vs goroutines / Kotlin coroutines / Reactor.
  3. docs(python): expand free-threaded page with depth — src/languages/python/free-threaded.md 148 → 235 lines. PEP 779, biased-locking internals, immortal objects, Py_BEGIN_CRITICAL_SECTION, Cython freethreading directive, runtime introspection, comparison vs Java Loom / Go / Ruby Ractor.
  4. docs(storage): expand Ceph CRUSH/RADOS deep dive — src/storage/ceph-crush.md 181 → 340 lines. Straw2 algorithm, CRUSH rules, upmap balancer, PG peering state machine, Bluestore internals, replication vs EC table, upper-layer services.
  5. docs(cs-theory): add formal methods page — new src/cs-theory/formal-methods.md (282 lines). TLA+, Alloy, Coq, Lean, Isabelle/HOL, Dafny, model checking, symbolic execution, abstract interpretation, distributed-systems verification, 8 interview questions.

Every commit was preceded by a clean mdbook build; no warnings introduced. token.txt is in .gitignore and was never staged.

2026-10-12 - Linux Interface Encyclopedia rebuilt as per-function pages

Six waves re-authored the encyclopedia with one page per function (the previous per-domain chapter layout is gone). Resumed after a workspace loss: the four coverage ledgers were regenerated from primary sources via the surviving generator scripts, and all 2 095 per-entry status rows were restored from the surviving status/ reports; two of seventeen lost chapter texts were recovered from persisted tool outputs and split into per-function pages.

PartPagesLedger state
syscalls (7 domains, per-function pages + auto hubs)194 + 7 hubs378 documented / 46 researched / 101 source-limited / 10 not-started of 535
glibc functions (stdio/process/strings/net/fs)122504 documented of 1 881 documented-API rows
musl family pages + catalog6110-family inventory (1 482 funcs)
sysfs classes (one page per documented class)4242 documented / 77 researched / 1 source-limited of 120
cross-layer maps338 rows (26 documented / 12 source-limited)

Shared grouping authority page_groups.py (roff .so alias map + family groups) keeps ledger rows, hub tables and file layout consistent. Every page: ASCII-only, balanced fences, relative links verified, numbers cross-checked against kernel syscall tables / installed headers / nm on host glibc 2.41. Source-limited rows name their missing sources; no completeness claim beyond ledger statuses.

Linux Interface Encyclopedia - wave 7 (push to research) - 2026-10-13

PartResult
Syscalls10 not-started rows closed (rlimit family, getrusage, execv, personality, chown32 trio): 388 documented / 46 researched / 101 source-limited of 535; 0 not-started
glibc157 per-function pages across 6 new dirs (math, threads, termios, users, vm, misc) plus fs/stdio/strings/net additions; ledger 1047 documented / 10 source-limited / 0 researched of the 1881 documented-API rows
sysfsall 77 remaining researched classes -> per-class pages (65 documented, 13 honest source-limited stubs): 106 documented / 14 source-limited of 120
crossref11 of 12 source-limited rows upgraded with fetched upstream docs (NetworkManager, thermald, UPower, libinput, libdrm, rdma-core, ndctl, procps, dmidecode) plus local NSS/kernel sources; XR-112 stays source-limited (msr-tools docs unreachable)
Validationevery new page ASCII-only, balanced fences, relative links resolve; statuses/notes flipped in all four ledgers; SUMMARY wired (282 glibc entries, 119 class entries)