Skip to content

I0922 — The memory hypothesis is tested, not asserted

Run the production image under the intended memory limit, measure resident memory through a representative request sequence, and let the evidence decide the memory the deployment declares.

CANCELLED wave 6 · p0 · implementation profile · parallel safe

Part of fly-deployment — The container image is a projection of the repository model, and its smoke is its evidence.

Objective

Run the production image under the intended memory limit, measure resident memory through a representative request sequence, and let the evidence decide the memory the deployment declares.

Why

The cheap profile rests on a guess about memory. Raising it because a run failed once is how a hosting bill quadruples; keeping it because it looks tidy is how a Machine gets killed under load. Only a measurement settles it.

Current state

The canonical object states a memory hypothesis. Nothing has been run under any limit.

Desired state

Resident memory is measured at startup and after each representative request, the high-water mark is recorded, and the declared memory is the smallest value the evidence supports.

Scope

  • .ai/repo/benchmarks/rust

Out of scope

  • Raising the limit before diagnosing what consumed the memory
  • A load test; this is a resource envelope, not a throughput study

Dependencies

What waits on this

Acceptance criteria

  • The image runs under the declared limit and stays alive through the whole representative sequence
  • Resident memory is measured after startup and after a landing, documentation, API, OpenAPI and cockpit request, and the high-water mark is recorded
  • If the declared limit does not hold, the cause is diagnosed and the waste addressed before the limit is raised, and the raise is recorded with its evidence
  • The measurement is recorded through the existing benchmark infrastructure and becomes a regression budget

Validation

  • majordomus bench --check
  • bash test/run.sh

Evidence required

  • rss_measured
  • runs_at_limit
  • budget_recorded

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Risk

A single machine's measurement is not a guarantee on another host. The high-water mark needs headroom, and the headroom needs to be stated.

Completion report

Cancelled 2026-10-14 on master e28daccd9b: the 256 MB limit it measures against is a Fly Machine size, and nothing reads the object's resources any more. The owner disconnected Fly.io on 2026-10-12; this repository deploys release binaries, the GHCR image and GitHub Pages (commit 9af3fa65a4 removed fly.toml).

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I0922.yaml. Read it back with majordomus plan show I0922.

Searches the titles and descriptions of every page this site publishes.