# .plan-26-40: A whole new world (of wall-to-wall Tessera embeddings)

*2026-10-04 — note*


I'm almost set for the start of teaching term now and meeting our newest intake
and catching up with everyone after a year away! My [1A Foundations of CS](https://anil.recoil.org/notes/focs) starts next week, and I've decided to lock in the [use of Forester](https://anil.recoil.org/notes/forester-teaching-notes) for this.
For the first time, we won't be
giving out the traditional [printed
notes](https://www.cl.cam.ac.uk/teaching/2526/FoundsCS/materials.html).
I'm a little worried about not giving away since I've seen students scribbling on them well
into their second years in the past! I'm hoping that the cross-referenced
Forester will be more friendly to the tablets and notebooks that students are
all using these days.

## GeoTessera 0.11.0 now has wall-to-wall embeddings\!

As its start-of-term here, [David Coomes](https://coomeslab.org) [Sadiq Jaffer](https://toao.com) and I will give an intro to Tessera talk
at the CRI next week, so pop along if you're in town\!

<figure class="image-center"><img src="/images/cri-seminar-26.webp" alt="" title="" loading="lazy" srcset="/images/cri-seminar-26.768.webp 768w, /images/cri-seminar-26.640.webp 640w, /images/cri-seminar-26.480.webp 480w, /images/cri-seminar-26.320.webp 320w, /images/cri-seminar-26.1920.webp 1920w, /images/cri-seminar-26.1600.webp 1600w, /images/cri-seminar-26.1440.webp 1440w, /images/cri-seminar-26.1280.webp 1280w, /images/cri-seminar-26.1024.webp 1024w"><figcaption></figcaption></figure>

I also shipped [geotessera v0.11.0](https://github.com/ucam-eo/geotessera/releases/tag/v0.11.0), which now
provides **wall-to-wall embeddings for anywhere in the world from 2017-2025**, a major first for the project! Yay\!
See the release notes above for details.

There are now _two_ separate full copies of the v1.1 embeddings available, in either
Icechunk or Zarr format, with the choice depending on your particular usecase.
This has been a (validly) confusing point for [early users](https://digitalflapjack.com/weeknotes/2026-10-05/), so here's an explanation of the innards.

### Icechunk for bulk streaming

First, the dClimate team [built a custom inference stack](https://blog.dclimate.net/how-we-re-engineered-the-tessera-embeddings-inference-pipeline-into-a-faster-cheaper-cloud-native-open-source-library/) that uses [Icechunk](https://icechunk.io), and publishes this in the `s3://tessera-embeddings` bucket on AWS.
This has been optimised for 'streaming access' with relatively large shard and chunk sizes to minimise round-trip traffic.

However, it can _only_ be accessed using Icechunk-compatible bindings since although Icechunk has a [Zarr-compatible store interface](https://icechunk.io/en/latest/understanding/faq/), its on-disk (via HTTP) format completely differs from standard Zarr. Therefore, a client in something like OCaml that speaks the Zarr standard will [not be able to interoperate](https://anil.recoil.org/notes/2026w31) with the Icechunk store.

### Zarr v3 for smaller mobile-friendly chunks

This motivated us to transcode the Icechunk store to a _separate_ pure Zarr v3 format. While we lost some cool management features available with Icechunk (like versioning and snapshots), we gained compatibility with clients that implement pure Zarr (like my own OCaml code for example).  While we were here, I also changed the size of the chunking to be lower to make it more friendly for mobile streaming. This is what allows mobile JavaScript frontends like [TZE](https://tze.geotessera.org) to work.

Therefore as a user, with GeoTessera 0.11 you now have a choice between the two:

- The Zarr store on Source Cooperative is the default for streaming reads.
- Pass an `.icechunk` URL to `GeoTesseraZarr()` instead if you want the Icechunk repository directly. The production store is at `s3://tessera-embeddings/v1.1/dclimate.icechunk`. I'll expose this as a builtin option in a future geotessera.

### Bypassing the Source Coop proxy for direct S3

One reason that many users saw bad performance initially is that the Source Coop has an additional caching layer over Amazon via a Rust proxy (`data.source.coop`), and this appears to be throttling rapid connections in a way that directly going to S3 isn't. GeoTessera 0.11 now reads straight from the S3 bucket by default to avoid putting any undue pressure on the poor sole proxy server that Source Coop is kindly running for us, with the gateway still available as an opt-in in the geotessera CLI via `--via-gateway` if you want its Cloudflare edge caching.

Phew! There's a lot going on here with where the embeddings are stored, but I hope we're hitting the right notes as to how to make them as maximally accessible as possible. My next step here is to publish the [HTTP perma proxy](https://anil.recoil.org/notes/2026w9) I wrote a few months ago for caching Zarr tiles, in order to provide a gateway proxy in Cambridge that stashes commonly used years locally to avoid lots of network traffic.

<a href="https://github.com/ucam-eo/geotessera/releases/tag/v0.11.0"> <figure class="image-center"><img src="/images/tessera-wall-to-wall.webp" alt="Wall to wall Tessera, anywhere in the world! Woohoo!" title="Wall to wall Tessera, anywhere in the world! Woohoo!" loading="lazy" srcset="/images/tessera-wall-to-wall.768.webp 768w, /images/tessera-wall-to-wall.640.webp 640w, /images/tessera-wall-to-wall.480.webp 480w, /images/tessera-wall-to-wall.320.webp 320w, /images/tessera-wall-to-wall.1920.webp 1920w, /images/tessera-wall-to-wall.1600.webp 1600w, /images/tessera-wall-to-wall.1440.webp 1440w, /images/tessera-wall-to-wall.1280.webp 1280w, /images/tessera-wall-to-wall.1024.webp 1024w"><figcaption>Wall to wall Tessera, anywhere in the world! Woohoo!</figcaption></figure> </a>

## Going to the Other Place to talk at the Intelligent Earth CDT
 
I was invited by the enthusiastic crew to give a talk on on "Technology for Living Evidence" (my overall name for the work we're doing on [Tessera](https://anil.recoil.org/projects/tessera), [habitat](https://anil.recoil.org/projects/rsn) and [species](https://anil.recoil.org/projects/enki) mapping and [evidence](https://anil.recoil.org/projects/ce) ) to the new student cohort at the [Intelligent Earth CDT](https://intelligent-earth.ox.ac.uk/) in Oxford.

The venue was the incredibly impressive new [Centre for Life and Mind](https://www.biology.ox.ac.uk/article/the-life-and-mind-building-a-new-home-for-discovery-and-collaboration), which opened about a year ago and still had that 'new building' smell.  I was told it cost a cool ~£200m and is Oxford's largest-ever building project, except for certain other [hilariously bad](https://www.oxfordmail.co.uk/news/26565850.oxford-disbelief-237m-bridge-reopens-three-years/) bridges. I'm told it supports 1,400 researchers, \>1,000 undergraduates a year, and has shielded EEG rooms, eye-tracking labs, and even a sleep laboratory tucked away somewhere\!

<figure class="image-center"><img src="/images/w40-5.webp" alt="A buzzing student poster session in Oxford at the Intelligent Earth CDT." title="A buzzing student poster session in Oxford at the Intelligent Earth CDT." loading="lazy" srcset="/images/w40-5.768.webp 768w, /images/w40-5.640.webp 640w, /images/w40-5.480.webp 480w, /images/w40-5.3840.webp 3840w, /images/w40-5.320.webp 320w, /images/w40-5.2560.webp 2560w, /images/w40-5.1920.webp 1920w, /images/w40-5.1600.webp 1600w, /images/w40-5.1440.webp 1440w, /images/w40-5.1280.webp 1280w, /images/w40-5.1024.webp 1024w"><figcaption>A buzzing student poster session in Oxford at the Intelligent Earth CDT.</figcaption></figure>

The Intelligent Earth CDT is a UKRI-funded initiative that'll train 100 PhD students years across climate, biodiversity, natural hazards, and environmental solutions.
This is temporally a follow-on to our own [AI4ER](https://ai4er-cdt.esc.cam.ac.uk/) program here that's drawing to a close now, so it was also excellent to have [Yihang She](https://yihshe.github.io/) along from our group to act as a bridge between generations of students\!

The director, [Philip Stier](https://intelligent-earth.ox.ac.uk/people/philip-stier), was a brilliant host and also tutored me on his expert topic of the [physics of clouds](https://lacuna.tiptreesystems.com/work/cloudflow-a-flow-matching-model-to-generate-high-resolution-cloud-structures/wrk_c5f82ceb675cdb33b7015ac4a5841deb). He recently built a [flow-matching model](https://icml.cc/virtual/2026/73478) that downscales high-resolution (~1km) cloud structure from the coarse (~25km) fields that climate models calculate.

<figure class="image-center"><img src="/images/w40-3.webp" alt="Philip Stier introduces the program for the three days" title="Philip Stier introduces the program for the three days" loading="lazy" srcset="/images/w40-3.768.webp 768w, /images/w40-3.640.webp 640w, /images/w40-3.480.webp 480w, /images/w40-3.3840.webp 3840w, /images/w40-3.320.webp 320w, /images/w40-3.2560.webp 2560w, /images/w40-3.1920.webp 1920w, /images/w40-3.1600.webp 1600w, /images/w40-3.1440.webp 1440w, /images/w40-3.1280.webp 1280w, /images/w40-3.1024.webp 1024w"><figcaption>Philip Stier introduces the program for the three days</figcaption></figure>

<figure class="image-center"><img src="/images/w40-1.webp" alt="If nature had a CEO, they'd have their office in this building by jove" title="If nature had a CEO, they'd have their office in this building by jove" loading="lazy" srcset="/images/w40-1.768.webp 768w, /images/w40-1.640.webp 640w, /images/w40-1.480.webp 480w, /images/w40-1.3840.webp 3840w, /images/w40-1.320.webp 320w, /images/w40-1.2560.webp 2560w, /images/w40-1.1920.webp 1920w, /images/w40-1.1600.webp 1600w, /images/w40-1.1440.webp 1440w, /images/w40-1.1280.webp 1280w, /images/w40-1.1024.webp 1024w"><figcaption>If nature had a CEO, they'd have their office in this building by jove</figcaption></figure>

### The Oxford-Cambridge rail certainly isnt moving very fast

Getting to Oxford was a nightmare as usual, as the only useful options were trains via London (~3 hours but the line was down), a bus via Bedford (~2.5h), or motorbiking down the single-carriageway A421 (~2h "on a good day"). As [others have noted](https://radicalhonesty.uk/p/kickstart-britain-connect-oxford) the East-West railway can't come soon enough:

> Today, travelling between Oxford and Cambridge by public transport is a joke. \[...\]
> With East West Rail, that journey time drops to ninety minutes. \[...\]
> This means a researcher in Cambridge can collaborate with a lab in Oxford without losing a day to the journey

Despite the [Varsity line](https://en.wikipedia.org/wiki/Varsity_Line) dating back well into the 19th century, the campaign to reinstate has been going on for 30 years (!), and under [East West Railway Company's revised April 2026 proposals](https://railway-news.com/east-west-rail-presents-revised-plans-for-earlier-delivery/) the full end-to-end Oxford–Cambridge service isn't scheduled until the mid-to-late 2030s. Absolute snail's pace progress here...

<figure class="image-center"><img src="/images/w40-4.webp" alt="Excellent talk as always from Yihang representing the Cambridge side!" title="Excellent talk as always from Yihang representing the Cambridge side!" loading="lazy" srcset="/images/w40-4.768.webp 768w, /images/w40-4.640.webp 640w, /images/w40-4.480.webp 480w, /images/w40-4.3840.webp 3840w, /images/w40-4.320.webp 320w, /images/w40-4.2560.webp 2560w, /images/w40-4.1920.webp 1920w, /images/w40-4.1600.webp 1600w, /images/w40-4.1440.webp 1440w, /images/w40-4.1280.webp 1280w, /images/w40-4.1024.webp 1024w"><figcaption>Excellent talk as always from Yihang representing the Cambridge side!</figcaption></figure>

## Scrutineer fixes keep rolling

[InfoQ picked up](https://www.infoq.com/news/2026/10/open-source-ai-security/) my ['rumour is the exploit'](https://anil.recoil.org/notes/rumour-is-the-exploit) post, on how AI agents can basically find working exploit faster than traditional embargoed disclosure can keep up. In the meanwhile, Scrutineer continues to be extremely successful at finding issues, and [Hannes Mehnert](https://github.com/hannesm) and Edwin Torok continue to fix many of them (thank you!!). I'm going to catch up on my Patch the Planet planning backlog later as I've been extremely busy preparing for the start of term.

In terms of where activity has been focussed, [mirage/awa-ssh](https://github.com/mirage/awa-ssh) joins the list of repos being fixed, with a [nonce fix](https://github.com/mirage/awa-ssh/pull/94), a [CPU/memory fix](https://github.com/mirage/awa-ssh/pull/99) and a [required-authenticator fix](https://github.com/mirage/awa-ssh/pull/100). Elsewhere I spotted [ocaml-tls's signature-algorithm fix](https://github.com/mirleft/ocaml-tls/pull/535), [happy-eyeballs's empty-address fix](https://github.com/robur-coop/happy-eyeballs/pull/51), more [Solo5](https://github.com/Solo5/solo5) bounds checks ([#682](https://github.com/Solo5/solo5/pull/682)/[#684](https://github.com/Solo5/solo5/pull/684) closed, [#683](https://github.com/Solo5/solo5/pull/683) carried over, plus new [dev-type](https://github.com/Solo5/solo5/pull/686) and [note-size](https://github.com/Solo5/solo5/pull/687) checks).

## The LIFE tour, and offsetting ourselves

I built an [interactive LIFE tour](https://anil.recoil.org/notes/life-zarr-and-everything) using an ensemble
of agents narrating and animating the LIFE metric over the live Zarr store.
This was worryingly quick and good, and with several reactions on the socials like [LinkedIn](https://www.linkedin.com/posts/anilmadhavapeddy_frontier-agents-can-build-interactive-tutorials-ugcPost-7511738497364439040-Nqe5/).

This ranged from [Alison Eyres](https://www.conservation.cam.ac.uk/staff/dr-alison-eyres) being very impressed, to [Chris Sandbrook asked how the process actually worked](https://www.linkedin.com/posts/anilmadhavapeddy_frontier-agents-can-build-interactive-tutorials-ugcPost-7511738497364439040-Nqe5/) and worrying about the implications. It's fair to say that I am worried as well; I'm feeling awe at the one-shot quality, intrigue at the educational potential for personalisation, and a little shock at the implications for jobs down the line. Will we end up needing to 'offset' our use of AI to support human endeavour, the way we do for [carbon credits](https://anil.recoil.org/notes/carbon-credits-vs-offsets)?

<a href="https://life-metric.org"> <figure class="image-center"><img src="/images/life-metric-ss-2.webp" alt="A fun interactive guided tour about what the LIFE metric is and some uses for it" title="A fun interactive guided tour about what the LIFE metric is and some uses for it" loading="lazy" srcset="/images/life-metric-ss-2.768.webp 768w, /images/life-metric-ss-2.640.webp 640w, /images/life-metric-ss-2.480.webp 480w, /images/life-metric-ss-2.320.webp 320w, /images/life-metric-ss-2.2560.webp 2560w, /images/life-metric-ss-2.1920.webp 1920w, /images/life-metric-ss-2.1600.webp 1600w, /images/life-metric-ss-2.1440.webp 1440w, /images/life-metric-ss-2.1280.webp 1280w, /images/life-metric-ss-2.1024.webp 1024w"><figcaption>A fun interactive guided tour about what the LIFE metric is and some uses for it</figcaption></figure> </a>

## Released a new OCaml mdx to unblock Eio dev

I [released mdx 2.7.0](https://github.com/ocaml/opam-repository/pull/30853) to add support by [Thomas Leonard](https://roscidus.com) for a new `mdx_skip` [directive](https://github.com/realworldocaml/mdx/pull/483) and [shonfeder's dune 3.24 support fix](https://github.com/realworldocaml/mdx/pull/482).  Thanks to a Windows VM that [Mark Elvers](https://www.tunbury.org/) setup for me  I no longer need a physical Windows desktop, which has made me much less grumpy. I've resumed working on  [Eio's Windows process spawning](https://github.com/ocaml-multicore/eio/pull/936) and [`nt_path` normalisation](https://github.com/ocaml-multicore/eio/pull/947), as well as dusting off my changes to the [IOCP bindings](https://github.com/avsm/ocaml-iocp). This is the 'relaxing' hacking of the week, but may need to be put on ice as term starts\!

## References

1. Madhavapeddy (2026). .plan-26-31: Sorting out Tessera and Evidence TAP infrastructure. <https://doi.org/10.59350/30e5y-n8p97>
2. Madhavapeddy (2025). Foundations of Computer Science. <https://doi.org/10.59350/qms3q-ymn65>
3. Madhavapeddy (2026). Just a rumour of a bug is enough to find a security exploit these days. <https://doi.org/10.59350/tngsm-6rx23>
4. Madhavapeddy (2026). Using Forester to turn Foundations of CS into interactive evergreen lectures. <https://doi.org/10.59350/sjcvd-hb857>
5. Madhavapeddy (2025). Disentangling carbon credits and offsets with contributions. <https://doi.org/10.59350/g4ch1-64343>

Synopsis: Michaelmas term restarts, with Forester replacing my traditional printed FoCS notes, GeoTessera is now wall-to-wall across dual Zarr/Icechunk stores, and a trip to Oxford's Intelligent Earth CDT.
Words: 1450

Discussion:
- Bluesky: <https://bsky.app/profile/anil.recoil.org/post/3mx52u7kj322j>
- LinkedIn: <https://lnkd.in/p/eBWBWAkj>
- Mastodon: <https://amok.recoil.org/@avsm/117388637881562555>
- Twitter: <https://x.com/avsm/status/2107106625983033789>

## Related

- [LIFE, Zarr and everything](https://anil.recoil.org/notes/life-zarr-and-everything) (note, 2026-09-30)
  Serving LIFE v1.01 as a streamable Zarr v3 store, and three new clients in JavaScript, Python and R.
- [Just a rumour of a bug is enough to find a security exploit these days](https://anil.recoil.org/notes/rumour-is-the-exploit) (note, 2026-08-22)
  Thinking through how the conventional OSS security embargoes no longer buy us time, and what open source maintainers might do instead to respond
- [Using Forester to turn Foundations of CS into interactive evergreen lectures](https://anil.recoil.org/notes/forester-teaching-notes) (note, 2026-08-16)
  Porting the FoCS lecture notes to Forester, including transclusions and stable section URLs, and a live OCaml toplevel compiled into the browser.
- [.plan-26-31: Sorting out Tessera and Evidence TAP infrastructure](https://anil.recoil.org/notes/2026w31) (note, 2026-08-02)
  A petabyte of TESSERA embeddings moves to Source Cooperative, and Taposaur's GROBID metadata index and capability-based downloader take shape for Evidence TAP, while Eio gets some native Windows support.
- [.plan-26-09: Browser TESSERA, package management and Docker in the CACM](https://anil.recoil.org/notes/2026w9) (note, 2026-03-01)
  Got TESSERA working in Zarr and the browser, and a preprint of package management a la carte pushed out
- [Enki, a Dashboard of Life on Earth](https://anil.recoil.org/projects/enki) (project, 2026-01-01)
- [Disentangling carbon credits and offsets with contributions](https://anil.recoil.org/notes/carbon-credits-vs-offsets) (note, 2025-02-12)
  Clarifying carbon credits, offsets, and contributions to understand effective climate action strategies
- [Foundations of Computer Science](https://anil.recoil.org/notes/focs) (note, 2025-01-03)
  Resources for teaching Foundations of Computer Science with OCaml and Jupyter notebooks.
- [TESSERA, a pixelwise geospatial foundation model](https://anil.recoil.org/projects/tessera) (project, 2025-01-01)
- [Conservation Evidence Copilots](https://anil.recoil.org/projects/ce) (project, 2024-01-01)
- [Remote Sensing of Nature](https://anil.recoil.org/projects/rsn) (project, 2023-01-01)

---
Canonical: https://anil.recoil.org/notes/2026w40
Type: note
License: CC BY 4.0 <https://creativecommons.org/licenses/by/4.0/>
Tags: teaching, compsci, tessera, security, ocaml
