Skip to content

I0924 — The decision is recorded where architecture decisions are recorded

Write the architecture decision record for deploying as a generated projection of canonical deployment metadata, with the alternatives that were genuinely considered and the consequences that follow.

CANCELLED wave 1 · p1 · 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

Write the architecture decision record for deploying as a generated projection of canonical deployment metadata, with the alternatives that were genuinely considered and the consequences that follow.

Why

The repository decides architecture in ADRs, and the ones that matter here — a hand-written Dockerfile against a generated one, Alpine against a distroless or slim base, one machine against redundancy, an account token against a scoped one — will be revisited by somebody who was not in this session.

Current state

Twelve ADRs cover the CLI, the registry, the shared server, performance, projections, CI, skills, use cases, prompt capture, knowledge, directory contracts, the cockpit and web surfaces. None covers deployment.

Desired state

One ADR states the decision, the alternatives, the tradeoffs and what would have to change to revisit them, in the repository's own ADR format.

Scope

  • .ai/repo/adrs

Out of scope

  • A second ADR format or an ADR that restates the documentation

Dependencies

What waits on this

Acceptance criteria

  • The record follows the repository's ADR format and its frontmatter exactly
  • It states the decision, the container strategy against buildpacks and image-based alternatives, the runtime base, the single-machine cheap profile, the autostop behaviour, the token model and the generation architecture
  • Alternatives that were genuinely available are recorded with why they were not taken
  • The consequences include what scaling, rollback and migration would mean under this decision
  • It is related to the ADRs it depends on rather than restating them

Validation

  • bin/majordomus doctor
  • bash test/run.sh

Evidence required

  • adr_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

An ADR written after everything is finished records the implementation rather than the decision. It has to be written when the choice is still visible.

Completion report

Cancelled 2026-10-14 on master ce5959db59: the decision this issue would record is gone. The owner disconnected Fly.io on 2026-10-12 and the deployment is the release binaries, GitHub Pages and the GHCR image; commit 9af3fa65a4 removed the Dockerfile and fly.toml, so there is no Fly, Alpine or autostop choice left to decide.

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/I0924.yaml. Read it back with majordomus plan show I0924.

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