Daily Reading for 2026-10-14 - Learning in Public

Daily Reading for 2026-10-14

Daily Reading for 2026-10-14

AI-Assisted Software Development

LLM-generated code has shifted the bottleneck in software development from writing to reviewing and steering. The ZAP project responds with explicit contributor rules: submitters own their code, pull requests must be small and well tested, and a fresh LLM performs a first-pass review before humans do. Anthropic’s story is the same pressure at hyperscale — roughly 30,000 merged changes a day forced a bespoke source-control system (Scion) and an adversarial review system (Antique). Geoffrey Huntley’s quote shows the tactical layer: pre-commit hooks that fail the build and inject a prompt when an agent bypasses a diagnostics library. Together these describe an emerging discipline of governing agentic contributors.

Watch for:

  • Whether ZAP’s “submitter owns the code” rule changes contributor behaviour or mostly adds review latency.
  • Adoption of Anthropic’s Scion and Antique by other large engineering organisations, and any reversal on offline support.
  • Pre-commit-hook prompt injection becoming a standard guardrail pattern for coding agents.

Wardley signals:

  • Components: Coding agents (Claude, GPT-class models), ZAP Automation Framework, Anthropic Scion (source control), Antique (code review), fresh-LLM review passes, pre-commit hooks and AGENTS.md, diagnostics libraries, CI pipelines.

  • Evolution stage: Coding agents — Product (rapidly increasing use, competing models, feature differentiation). LLM code review — Custom (emerging, many competing approaches, no accepted form). Agent governance hooks — Genesis (novel, project-specific). Git-style source control — Commodity (Scion is a custom hyperscale rebuild).

  • Doctrine hits/misses: Hits: “Use appropriate tools”, “Focus on the outcome”, “Think small teams” (Anthropic’s seven-person Scion team), “Manage inertia” (pushing back on review burden). Misses: Anthropic’s own warning about over-engineering parts of the system in response to hypothetical concerns.

  • Climatic patterns: “Efficiency enables innovation” (cheap code generation drives new review tooling); “Higher order systems create new sources of value” (Scion, Antique); “Shifts from product to utility” (LLM review becoming a standard pipeline stage); “Success breeds inertia” (review capacity lagging generation capacity).

  • Diffusion markers: Open-source projects publishing explicit AI-contribution policies; the practice of using a second, fresh LLM as reviewer spreading by imitation; Anthropic publishing its custom-tooling rationale as a template others may copy.

  • Developing ZAP in the LLM Age

  • Redesigning source control at Anthropic

  • Quoting Geoffrey Huntley

wardley-beta
%% 1. Users: software engineers shipping code and maintainers reviewing it
%% 2. Needs: ship changes fast without exhausting review capacity
%% 3. Capabilities: code generation, review, source control, governance guardrails
%% 4. Components: codingAgent, llmReviewPass, reviewGovernanceHooks, sourceControlPlatform, ciPipelines, diagnosticsLibrary
%% 5. Maturity: coding agents Product; LLM review Custom; governance hooks Genesis; source control and CI Commodity
%% 6. Management: engineering teams and platform teams owning policy and pipelines
anchor softwareEngineer [0.9, 0.9]
anchor maintainer [0.85, 0.82]
component codingAgent [0.55, 0.8]
component llmReviewPass [0.35, 0.62]
component reviewGovernanceHooks [0.12, 0.45]
component sourceControlPlatform [0.9, 0.55]
component ciPipelines [0.85, 0.5]
component diagnosticsLibrary [0.3, 0.35]
codingAgent -> softwareEngineer
llmReviewPass -> maintainer
reviewGovernanceHooks -> codingAgent
sourceControlPlatform -> codingAgent
ciPipelines -> llmReviewPass
diagnosticsLibrary -> codingAgent
evolve codingAgent 0.68

Simon Willison’s LLM Model Plugins

Two of Simon Willison’s llm plugins track the same fast-moving frontier of commercial foundation models. llm-gemini 0.35 adds Gemini 4 Argon, priced at $2/$10 per million tokens, doubling on December 1st while still undercutting Claude Fable 5.1 and GPT-6 Astra. llm-meta-ai 0.2 adds Meta’s Muse Wonder and Muse Wonder Full, which Artificial Analysis places near GPT-6.1 Sol and which ship on a roughly monthly cadence. Both posts use the author’s signature pelican-drawing benchmark as a quick capability check, and both stress that agentic cost-per-task, not sticker price, is the metric that now matters.

Watch for:

  • Whether Gemini 4 Argon’s December price doubling erodes its cost-per-task advantage.
  • Meta’s monthly model cadence and whether quality gains keep pace with the release rate.
  • Plugin API churn as providers add reasoning levels and new modalities.

Wardley signals:

  • Components: llm CLI and plugin ecosystem (llm-gemini, llm-meta-ai), Gemini 4 Argon, Meta Muse Wonder and Muse Wonder Full, GPT-6 Sol/Astra, Claude Opus 5.5 and Fable 5.1, Artificial Analysis benchmark-cost data, the pelican SVG test.

  • Evolution stage: Foundation models — Product (competing forms, rapid improvement, price competition). llm plugins — Product (standardised adapter interface, regular releases). Pelican benchmark — Custom (informal community practice, no accepted standard). Agentic cost benchmarking — Custom (emerging, contested).

  • Doctrine hits/misses: Hits: “Bias towards action” (same-day plugin updates), “Use appropriate tools”, “Focus on user needs” (cost-per-task framing). Misses: none clearly apply.

  • Climatic patterns: “Everything evolves through supply and demand competition” (model price/quality race); “Commoditisation <> Centralisation” (API access to frontier models); “Rates of evolution can vary by ecosystem”; “Creative destruction” (new models displacing prior leaders monthly).

  • Diffusion markers: The same pelican benchmark reused across models and providers, creating a de-facto comparison ritual; monthly release cadence; Artificial Analysis emerging as a shared cost reference; plugins normalising multi-provider access.

  • llm-gemini 0.35

  • llm-meta-ai 0.2

wardley-beta
%% 1. Users: developers and tool builders using LLMs through one CLI
%% 2. Needs: reach many frontier models and compare capability and cost
%% 3. Capabilities: provider adapters, model access APIs, benchmark comparisons
%% 4. Components: llmCli, providerPlugin, foundationModel, modelProviderApi, pelicanBenchmark, costPerTaskBenchmark
%% 5. Maturity: foundation models and plugins Product; benchmarks Custom; provider APIs Commodity
%% 6. Management: plugin maintainers and model providers setting prices and cadence
anchor developer [0.9, 0.9]
component llmCli [0.7, 0.55]
component providerPlugin [0.75, 0.6]
component foundationModel [0.6, 0.8]
component modelProviderApi [0.85, 0.5]
component pelicanBenchmark [0.2, 0.3]
component costPerTaskBenchmark [0.3, 0.4]
providerPlugin -> llmCli
llmCli -> developer
foundationModel -> providerPlugin
modelProviderApi -> foundationModel
pelicanBenchmark -> foundationModel
costPerTaskBenchmark -> foundationModel

web-edit

These two Simon Willison posts cover his web-edit tool: a small release (0.1a1) and a deep profiling study. The profiling work, run with Python 3.15’s built-in profiling.sampling, found that mixed line-ending preservation dominates a busy editing workload — preserve_endings appeared in 64.8% of 15,296 recorded CPU stacks, with SequenceMatcher.find_longest_match responsible for 38.3% of leaf samples. Critically, 95.1% of stacks came from AnyIO’s worker thread, so sampling all threads was essential; a main-thread-only profile would have missed the real hotspot. The posts pair a low-level performance investigation with the tool release it supports.

Watch for:

  • Whether line-ending preservation gets optimised or refactored after the hotspot finding.
  • Adoption of Python 3.15’s profiling.sampling for asyncio and AnyIO applications.
  • Further web-edit alpha releases and feature changes.

Wardley signals:

  • Components: web-edit (app/tool), Python 3.15 profiling.sampling, flame graphs, source heatmaps, AnyIO worker threads, SequenceMatcher/difflib, mixed line-ending preservation, PyPI packaging.

  • Evolution stage: web-edit — Genesis (0.1a1, novel experimental tool). Python 3.15 sampling profiler — Product (built in, documented, broadly usable). Flame graphs and heatmaps — Product (accepted visualisation practice). SequenceMatcher — Commodity (stdlib utility).

  • Doctrine hits/misses: Hits: “Know the details”, “Bias towards data” (profiler evidence over intuition), “Use appropriate tools” (built-in sampling profiler). Misses: none clearly apply.

  • Climatic patterns: “Efficiency enables innovation” (better profiling tools reveal new optimisations); “No single method fits all” (sampling all threads versus main-thread-only).

  • Diffusion markers: Standardisation of sampling profilers in the standard library; reproducible profiling demos shared publicly; the flame-graph format as a widely copied convention.

  • web-edit 0.1a1

  • Profiling web-edit with Python 3.15: flame graphs and source heatmaps

wardley-beta
%% 1. Users: writers and developers editing web content in place
%% 2. Needs: reliable edits and insight into where time is spent
%% 3. Capabilities: editing, diff matching, profiling and visualisation
%% 4. Components: webEditTool, lineEndingPreservation, samplingProfiler, flameGraphView, anyioWorkers, sequenceMatcher
%% 5. Maturity: web-edit Genesis; profiler and flame graphs Product; SequenceMatcher Commodity; line-ending handling Custom
%% 6. Management: Simon Willison maintains the tool; CPython ships the profiler
anchor contentEditor [0.9, 0.9]
component webEditTool [0.15, 0.7]
component lineEndingPreservation [0.3, 0.55]
component samplingProfiler [0.7, 0.45]
component flameGraphView [0.65, 0.5]
component anyioWorkers [0.8, 0.35]
component sequenceMatcher [0.9, 0.25]
webEditTool -> contentEditor
lineEndingPreservation -> webEditTool
samplingProfiler -> webEditTool
flameGraphView -> samplingProfiler
anyioWorkers -> samplingProfiler
sequenceMatcher -> lineEndingPreservation

Ivanti Connect Secure Zero-Day Exploit Chain

Volexity documents UTA0576 chaining three zero-days to gain unauthenticated root on a fully patched Ivanti Connect Secure VPN appliance. An authentication bypass in welcome.cgi routes requests to protected CGI scripts; a file-write race in wu.cgi yields code execution; and a privilege-escalation bug in the dsinvoked broker’s trust of DSCache data reaches root. The attacker used the exploit channel itself for command-and-control, patched libraries only in memory, and scrubbed logs, defeating Ivanti’s Integrity Checker. Post-exploitation focused on credential theft — LAPS passwords, BitLocker keys, LDAP captures and Kerberoasting — signalling preparation for lateral movement. Memory forensics, not disk integrity tooling, was required to reconstruct the chain.

Watch for:

  • Ivanti’s pending fix for the privilege-escalation component and patch uptake.
  • Reuse of the URL-versus-X-DSCGI-PATH mismatch technique against other edge devices.
  • Whether in-memory-only library patching becomes a recurring anti-forensic pattern.

Wardley signals:

  • Components: Ivanti Connect Secure VPN, welcome.cgi/wu.cgi/dsinvoked/DSCache, CVE-2026-104935, Volexity Volcano memory forensics, Active Directory and LDAP, LAPS, BitLocker, Kerberoasting tooling, custom Python LDAP tool, Ivanti Integrity Checker.

  • Evolution stage: Ivanti Connect Secure — Product (widely deployed commercial appliance). Exploit chain — Genesis (novel zero-day, custom built). Memory forensics tooling — Product (commercial, documented). Kerberoasting and LDAP tooling — Commodity (well-known techniques).

  • Doctrine hits/misses: Hits: “Know the details” (memory-level reconstruction), “Bias towards data” (core dumps and memory over log claims). Misses: trusting Ivanti’s Integrity Checker over runtime memory is a situational-awareness gap.

  • Climatic patterns: “Success breeds inertia” (edge appliances widely deployed and hard to patch); “Competitors actions will change the game” (copy-cat LDAP capture seen from UTA0533 on SonicWall); “You cannot measure evolution over time or adoption” (in-memory attacks evade standard detection).

  • Diffusion markers: Similar exploitation of SonicWall SMA by UTA0533; LLM-assisted exploit development assessed with medium confidence; coordinated disclosure and IOC sharing via Volexity’s GitHub.

  • Ivanti Connect Secure Zero-Day Chain Exploited for Unauthenticated Root Access and Credential Theft

wardley-beta
%% 1. Users: incident responders and security architects defending edge VPNs
%% 2. Needs: detect and reconstruct zero-day exploitation of an appliance
%% 3. Capabilities: memory forensics, identity monitoring, threat reconstruction
%% 4. Components: ivantiAppliance, exploitChain, memoryForensics, credentialTheftToolkit, kerberoastingToolkit, activeDirectory
%% 5. Maturity: appliance Product; exploit chain Genesis; memory forensics Product; Kerberoasting and AD Commodity
%% 6. Management: Ivanti patches; responders run forensics; IT owns identity infrastructure
%% note: signals named Ivanti Integrity Checker, but sources show it defeated by in-memory patching — folded into ivantiAppliance
anchor incidentResponder [0.9, 0.9]
component ivantiAppliance [0.72, 0.8]
component exploitChain [0.12, 0.62]
component memoryForensics [0.78, 0.5]
component credentialTheftToolkit [0.35, 0.35]
component kerberoastingToolkit [0.86, 0.28]
component activeDirectory [0.92, 0.45]
exploitChain -> ivantiAppliance
memoryForensics -> ivantiAppliance
ivantiAppliance -> incidentResponder
credentialTheftToolkit -> activeDirectory
kerberoastingToolkit -> activeDirectory
activeDirectory -> incidentResponder

North Korean Terraform Provider Malware Campaign

ThreatLabz analyses a suspected North Korean (TraderTraitor) campaign that trojanizes an AWS Terraform provider to deliver cross-platform malware. The fake terraform-provider-awsbeta binary hides a malicious sibling package invoked at startup; it downloads a Bash loader that masquerades payloads as web fonts, then drops the Rust FLATROOF backdoor and Python information stealers across macOS, Linux and Windows. Command-and-control uses Telegram, GitHub polling and webhooks, with persistence tailored per operating system. A related ROOFDECK backdoor resolves its C2 through signed Pastebin drops and Nostr metadata. The campaign targets cloud engineers and CI/CD systems, blending traffic with legitimate developer activity, and shows signs of LLM-assisted script generation.

Watch for:

  • Whether trojanized Terraform or CI plugins become a repeatable supply-chain vector.
  • Continued abuse of public hosting (GitHub, Vercel, Pastebin) and Nostr for dead-drop command-and-control.
  • Detection of the hashicorp-terraform[.]io lookalike domain and the font-file payload pattern.

Wardley signals:

  • Components: HashiCorp Terraform and providers, terraform-provider-awsbeta, the safari_updater Bash loader, FLATROOF backdoor, ROOFDECK backdoor, Python information stealers, Telegram Bot API, GitHub API polling, Nostr metadata, Pastebin dead drops, AES/RSA cryptography, CI/CD systems.

  • Evolution stage: Terraform providers — Product (standard plugin ecosystem). Malware families (FLATROOF, ROOFDECK) — Custom (bespoke, evolving tooling). Telegram/GitHub/Nostr abuse — Commodity (cheap ubiquitous services repurposed). Font-file payload disguise — Custom.

  • Doctrine hits/misses: Hits: the attacker “exploits the landscape” by reusing public infrastructure. Defender misses: “Know the details” (provider supply chain) and “Remove bias and duplication”; “Manage inertia” applies to slow patching of developer tooling.

  • Climatic patterns: “Everything evolves through supply and demand competition” (malware tooling); “Higher order systems create new sources of value” (developer supply chain); “Evolution of communication mechanisms can increase the speed of evolution” (dead-drop C2); “Success breeds inertia” (trust in package ecosystems).

  • Diffusion markers: SentinelLabs independently reporting related TraderTraitor activity; shared family attribution to the KelpDAO incident; LLM-assisted code generation visible in the stealer scripts; reuse of legitimate public services as C2.

  • Suspected North Korean Threat Actors Weaponize Terraform Providers to Deploy Cross-Platform Malware

wardley-beta
%% 1. Users: cloud engineers and platform teams provisioning infrastructure
%% 2. Needs: trustworthy IaC providers and supply-chain integrity
%% 3. Capabilities: provisioning, CI/CD execution, backdoor and C2 detection
%% 4. Components: terraformProvider, ciCdPipeline, trojanizedProvider, backdoorMalware, infoStealer, publicHostingC2
%% 5. Maturity: Terraform providers Product; trojanized provider and malware Custom; public C2 Commodity
%% 6. Management: HashiCorp and vendors ship providers; attackers abuse public services
anchor cloudEngineer [0.9, 0.9]
component terraformProvider [0.7, 0.75]
component ciCdPipeline [0.8, 0.65]
component trojanizedProvider [0.2, 0.6]
component backdoorMalware [0.35, 0.5]
component infoStealer [0.4, 0.4]
component publicHostingC2 [0.9, 0.35]
terraformProvider -> cloudEngineer
ciCdPipeline -> cloudEngineer
trojanizedProvider -> terraformProvider
backdoorMalware -> trojanizedProvider
infoStealer -> backdoorMalware
publicHostingC2 -> backdoorMalware

GitLab Security Patch Release

GitLab’s 19.4.2, 19.3.5 and 19.2.8 patch releases fix a batch of security issues, led by a critical CI/CD regular-expression compiler integer overflow (CVE-2026-97229, CVSS 10.0) that could let an unauthenticated user execute arbitrary code on the server. The release also addresses a high-severity stored cross-site scripting flaw, downstream-pipeline authorization issues, and an LLM prompt-injection problem in the GitLab Duo Agent Platform. Several medium and low CVEs cover GraphQL authorization, cache poisoning, SSRF and package-registry access control. GitLab urges all self-managed installations to upgrade immediately; GitLab.com and Dedicated are already patched. Database migrations mean single-node upgrades incur downtime.

Watch for:

  • Exploitation attempts against CVE-2026-97229 given its CVSS 10.0, pre-auth nature.
  • Whether the Duo Agent Platform prompt-injection class recurs as AI features expand.
  • Upgrade completion rates among self-managed instances facing downtime.

Wardley signals:

  • Components: GitLab CE/EE, the CI/CD regular-expression compiler, GitLab Duo Agent Platform, GraphQL API, GitLab Pages, Kubernetes proxy, package registry, container registry, scheduled pipeline execution policy, the patch-release process.

  • Evolution stage: GitLab platform — Product (mature commercial DevOps platform). CI/CD — Commodity (essential, standardised). Duo Agent Platform — Genesis/Custom (emerging AI feature). Vulnerability disclosure via patch releases — Commodity (standard practice).

  • Doctrine hits/misses: Hits: “Set exceptional standards” (transparent CVE disclosure), “Focus on the outcome” (urgent upgrade guidance), “Use standards” (CVSS, CVE). Misses: recurring authorization bugs suggest a “Manage failure” gap.

  • Climatic patterns: “Everything evolves through supply and demand competition”; “Higher order systems create new sources of value” (AI agent features add attack surface); “Efficiency enables innovation”; “Change is not always linear” (a CVSS 10.0 pre-auth RCE).

  • Diffusion markers: Standardised patch-release cadence and CVSS scoring; 90-day disclosure norms; bug-bounty reporters credited; AI features introducing a new CVE class (LLM prompt injection).

  • GitLab Patches Critical CI/CD Vulnerability Allowing Unauthenticated Server Code Execution

wardley-beta
%% 1. Users: platform engineers running self-managed GitLab
%% 2. Needs: patch critical pre-auth RCE without prolonged downtime
%% 3. Capabilities: CI/CD execution, API surface, disclosure and patch process
%% 4. Components: gitlabPlatform, cicdRegexCompiler, duoAgentPlatform, graphqlApi, patchReleaseProcess, cveScoring
%% 5. Maturity: platform Product; CI/CD and patch process Commodity; Duo agent feature Genesis/Custom
%% 6. Management: GitLab publishes patch releases; self-managed admins upgrade
%% note: signals called the Duo prompt-injection a new CVE class — kept duoAgentPlatform at Genesis/Custom to reflect that novelty
anchor platformEngineer [0.9, 0.9]
component gitlabPlatform [0.75, 0.85]
component cicdRegexCompiler [0.7, 0.55]
component duoAgentPlatform [0.18, 0.6]
component graphqlApi [0.8, 0.5]
component patchReleaseProcess [0.9, 0.45]
component cveScoring [0.88, 0.3]
gitlabPlatform -> platformEngineer
cicdRegexCompiler -> gitlabPlatform
duoAgentPlatform -> gitlabPlatform
graphqlApi -> gitlabPlatform
patchReleaseProcess -> gitlabPlatform
cveScoring -> patchReleaseProcess

AI Threat Modeling Training

Kris Yun reflects on the Threat Modeling Intensive with Complete AI from a developer’s perspective. The Four Question Framework still anchors the practice, but LLMs change the failure modes: generated data-flow diagrams are verbose, over-specified, and quietly fill gaps with statistical assumptions that readers mistake for validated facts. Michael Novack’s sessions reframe AI as an attack surface — data used in pre-training, fine-tuning and post-training can be exploited to induce harmful model behaviour. The takeaway for developers is that AI-specific threats are part of system design, not a separate security concern, and teams benefit from a shared language plus combined threat-modeling-and-AI training.

Watch for:

  • Whether LLM-generated data-flow diagrams get validation gates before entering threat-modeling workflows.
  • Adoption of AI-specific threat modeling in developer training curricula.
  • Demand signals from the OWASP Global AppSec USA course (November 2–4, 2026).

Wardley signals:

  • Components: Four Question Framework, LLM-generated data-flow diagrams, AI threat modeling training, OWASP Global AppSec, LLM training phases (pre-training, fine-tuning, post-training), security architects and analysts.

  • Evolution stage: Threat modeling — Product (established, taught practice). Four Question Framework — Commodity (accepted canon). LLM-generated data-flow diagrams — Genesis/Custom (novel, unreliable). AI threat modeling training — Custom (emerging, few providers).

  • Doctrine hits/misses: Hits: “Know your users”, “Common Language” (team vocabulary), “Challenge Assumptions” (doubting LLM output), “Focus on the outcome”. Misses: accepting verbose LLM output risks failing “Remove bias and duplication”.

  • Climatic patterns: “Components can co-evolve” (threat modeling co-evolving with AI practice); “No single method fits all”; “The less evolved something is then the more uncertain it becomes” (the AI threat surface).

  • Diffusion markers: Conference courses and training expanding; instructors building shared terminology; IBM-sourced model-training descriptions circulating; AI threat modeling entering mainstream security curricula.

  • Part 2: Threat Modeling Intensive with Complete AI From a Developer’s POV

wardley-beta
%% 1. Users: developers and security architects learning threat modeling
%% 2. Needs: find AI-specific threats and share a common language
%% 3. Capabilities: frameworks, training, AI attack-surface analysis
%% 4. Components: threatModelingTraining, fourQuestionFramework, llmDataFlowDiagrams, aiThreatModelingCourse, llmTrainingPhases, owaspAppSec
%% 5. Maturity: Four Questions Commodity; training Product; AI course and LLM diagrams Custom/Genesis
%% 6. Management: trainers and OWASP run courses; teams adopt shared vocabulary
anchor developer [0.9, 0.9]
anchor securityArchitect [0.85, 0.84]
component threatModelingTraining [0.7, 0.55]
component fourQuestionFramework [0.88, 0.4]
component llmDataFlowDiagrams [0.2, 0.6]
component aiThreatModelingCourse [0.3, 0.5]
component llmTrainingPhases [0.35, 0.35]
component owaspAppSec [0.8, 0.3]
threatModelingTraining -> developer
threatModelingTraining -> securityArchitect
aiThreatModelingCourse -> developer
fourQuestionFramework -> threatModelingTraining
llmDataFlowDiagrams -> threatModelingTraining
llmTrainingPhases -> aiThreatModelingCourse
owaspAppSec -> aiThreatModelingCourse

Vulnerability Management Metrics

YesWeHack challenges the viral claim that “average time to exploit is now negative.” The -7-day figure from Mandiant’s 2026 M-Trends describes mean time to first observed exploit activity, not mass exploitation before disclosure. New CVEs are a small share of exploited CVEs — 69% of KEV additions but only 17.4% of all exploited CVEs — and 80% of persistently exploited CVEs predate 2024. Analysis of React2Shell (CVE-2025-55182) shows the real spike came days to weeks after disclosure. AI is accelerating CVE discovery far more than exploitation; the report argues defenders should prioritise what makes a CVE dangerous to them and shorten response windows rather than panic over industry averages.

Watch for:

  • Whether AI-driven CVE discovery volume starts to shift exploitation timelines.
  • Adoption of exploit-activity-distribution metrics over raw mean time-to-exploit.
  • Reuse of the report’s framing by vendors selling vulnerability-management products.

Wardley signals:

  • Components: Mandiant M-Trends, CISA KEV Catalog, Verizon DBIR, time-to-exploit (TTE/TTFE), DScope internet telescope, The CVE Wayback Machine, React2Shell (CVE-2025-55182), AI-assisted vulnerability discovery, bug-bounty platforms.

  • Evolution stage: CVE and KEV catalogs — Commodity (standardised infrastructure). TTE as a metric — Custom (contested, evolving interpretation). AI-assisted discovery — Custom/Genesis (emerging, accelerating). Vulnerability management practice — Product (established discipline).

  • Doctrine hits/misses: Hits: “Bias towards data” (first-hand experience versus vendor claims), “Challenge Assumptions” (interrogating the negative-TTE meme), “Understand what is being considered” (TTE versus TTFE). Misses: vendors using distorted statistics illustrate “signal distortion”.

  • Climatic patterns: “Not everything is random (P(what) vs P(when))”; “Efficiency enables innovation” (AI speeds discovery); “Most competitors have poor situational awareness” (uncritical adoption of scary stats); “Change is not always linear”.

  • Diffusion markers: Industry-wide repetition of the -7-day stat; independent datasets (Cloudflare, CSIR, DScope) converging on post-disclosure exploitation; AI-upskilling evidence showing the benefit skews to already skilled actors.

  • The scariest stat in vulnerability management (is wrong)

wardley-beta
%% 1. Users: vulnerability-management leaders and analysts
%% 2. Needs: prioritise CVEs that are actually dangerous to them
%% 3. Capabilities: exploit data, prioritisation, honest metric interpretation
%% 4. Components: vulnManagementPractice, cveKevCatalog, tteMetric, exploitActivityDistribution, aiVulnDiscovery, bugBountyPlatform
%% 5. Maturity: CVE/KEV Commodity; TTE contested Custom; AI discovery Genesis/Custom; practice Product
%% 6. Management: CISA and industry run catalogs; vendors publish reports; teams set priorities
anchor securityLeader [0.9, 0.9]
anchor vulnAnalyst [0.85, 0.84]
component vulnManagementPractice [0.7, 0.75]
component cveKevCatalog [0.9, 0.4]
component tteMetric [0.3, 0.45]
component exploitActivityDistribution [0.35, 0.55]
component aiVulnDiscovery [0.18, 0.6]
component bugBountyPlatform [0.8, 0.3]
vulnManagementPractice -> securityLeader
vulnManagementPractice -> vulnAnalyst
cveKevCatalog -> vulnManagementPractice
tteMetric -> vulnManagementPractice
exploitActivityDistribution -> tteMetric
aiVulnDiscovery -> exploitActivityDistribution
bugBountyPlatform -> aiVulnDiscovery

Peter Fleming and 1930s British Travel Writers

Neal Stephenson’s brief post resurrects Peter Fleming, recommending his 1936 travel book “News from Tartary” and an older edition with its pull-out maps. He places Fleming alongside Robert Byron and Patrick Leigh Fermor as part of a remarkable 1930s cohort of highly educated British writers who sought out the world’s last strange and wild places — partly as an escape from the civilisation that produced them. The war, Stephenson notes, shattered the group: two were killed and the third’s trajectory changed utterly. It is a compact literary recommendation that doubles as an elegy for a vanished mode of travel writing.

Watch for:

  • Renewed interest in 1930s travel writing and reissues with original maps.
  • Availability of Fleming’s “News from Tartary” in older illustrated editions.
  • Connections drawn between this cohort and contemporary travel or nature writing.

Wardley signals:

  • Components: Peter Fleming’s “News from Tartary”, Robert Byron, Patrick Leigh Fermor, the 1930s British travel-writing cohort, older illustrated editions with pull-out maps, Neal Stephenson’s Substack.

  • Evolution stage: Travel writing as a genre — Commodity (established literary form). Fleming’s specific works — Product (known, in print, reissued). The 1930s cohort’s cultural memory — Custom (curated by enthusiasts). Substack recommendation — Commodity (standard publishing channel).

  • Doctrine hits/misses: None clearly apply — this is a literary recommendation, not an operational context.

  • Climatic patterns: None identified.

  • Diffusion markers: Reissues and recommendations circulating through newsletters; the cohort being grouped and revisited as a canon; pull-out-map editions valued by collectors.

  • Peter Fleming

wardley-beta
%% 1. Users: readers seeking classic 1930s travel writing
%% 2. Needs: discover and obtain notable works and editions
%% 3. Capabilities: recommendation, publishing, curation of a literary cohort
%% 4. Components: newsFromTartary, byronFermorWorks, travelWritingGenre, cohortMemory, illustratedEditions, substackChannel
%% 5. Maturity: genre and Substack Commodity; works Product; cohort memory Custom; illustrated editions niche Product
%% 6. Management: publishers reissue; enthusiasts and newsletters curate
anchor reader [0.9, 0.9]
component newsFromTartary [0.6, 0.7]
component byronFermorWorks [0.65, 0.65]
component travelWritingGenre [0.9, 0.55]
component cohortMemory [0.25, 0.5]
component illustratedEditions [0.45, 0.4]
component substackChannel [0.85, 0.6]
newsFromTartary -> reader
byronFermorWorks -> reader
substackChannel -> reader
travelWritingGenre -> newsFromTartary
cohortMemory -> newsFromTartary
illustratedEditions -> newsFromTartary