ADR 0073 — the installer carries a builder, and the registry stays where it is. Settles the two questions the design record named as the one gap stopping a fresh mesh from producing anything: how the builder arrives, and what it publishes into. It also records an argument that failed. It was put that a produced image must be published before anything can fetch it, so the registry would have to precede the control plane; it does not, because the machine that builds the image is the machine that runs it, and a local image is named by the digest of its own configuration exactly as a carried one is. Building changes where the bytes came from, not where they are. The argument is kept because it was asked for, and a negative answer is still the answer.
Issue 044 — the runtime every module builds on cannot be built by the mesh. Opened and resolved. It was the one artifact outside the build chain, which is why it was pinned by hand, why nobody could check it, and why the rule that catches a base moving could never fire for the change that reaches every module at once. That also explains a drift it had accumulated unnoticed: the recipe named one operating system while serving another.
Issue 045 — a container keeps the values it started with. Open. Two intentions can both be applied successfully and leave a container holding values from neither, because a container captures its environment once and nothing re-reads it. The failure is silent in the worst way: the container is up, the machine reports success, and the thing inside is using a credential the mesh no longer believes in.
Raising a mesh is rewritten to describe the program that exists, and its checks table now says how the builder's arrival is verified — the one rule it previously admitted nothing checked.
**ADR 0073 — the installer carries a builder, and the registry stays where it is.** Settles the two questions the design record named as the one gap stopping a fresh mesh from producing anything: how the builder arrives, and what it publishes into. It also records an argument that failed. It was put that a produced image must be published before anything can fetch it, so the registry would have to precede the control plane; it does not, because the machine that builds the image is the machine that runs it, and a local image is named by the digest of its own configuration exactly as a carried one is. Building changes where the bytes came from, not where they are. The argument is kept because it was asked for, and a negative answer is still the answer.
**Issue 044 — the runtime every module builds on cannot be built by the mesh.** Opened and resolved. It was the one artifact outside the build chain, which is why it was pinned by hand, why nobody could check it, and why the rule that catches a base moving could never fire for the change that reaches every module at once. That also explains a drift it had accumulated unnoticed: the recipe named one operating system while serving another.
**Issue 045 — a container keeps the values it started with.** Open. Two intentions can both be applied successfully and leave a container holding values from neither, because a container captures its environment once and nothing re-reads it. The failure is silent in the worst way: the container is up, the machine reports success, and the thing inside is using a credential the mesh no longer believes in.
**Raising a mesh** is rewritten to describe the program that exists, and its checks table now says how the builder's arrival is verified — the one rule it previously admitted nothing checked.
The runtime every module compiles against cannot be built by the mesh, so the
one rule that would catch it moving can never fire. And a container keeps the
values it was created with, so two good applies can leave it running on neither.
Cloned alone, built by the mesh, every module moved onto it, and the base then
changed for real: all three went stale naming what moved. A comment-only change
correctly makes nothing stale, which found a second bug — staleness compared
commits where it should compare artifacts.
The two questions the design record named as the one gap stopping a fresh mesh
from producing anything. They cannot be answered apart: a builder with nowhere
to publish has made a file on a disk.
The registry's role did not change — the answer to 'must it precede the control
plane' did, because the control plane's image is now produced rather than
carried, and a produced image must be put somewhere before it can be fetched.
Written an hour ago claiming a produced image must be published before anything
can fetch it, so the registry had to precede the control plane. The premise is
false: the machine that builds the image is the machine that runs it, and the
temporary control plane names a built image exactly as it names a carried one —
by the digest of its own configuration, which requires nothing to have served
it. Building changes where the bytes came from, not where they are.
Rewritten rather than superseded because nothing has been built on it and
nobody has read it: a record that contradicts itself is a draft, not a decision.
The argument is kept, because it was asked for and a negative answer is the
result.
The section saying the change was decided and had not happened now contradicted
the section below it. It also records the argument that failed, because a reader
will otherwise ask the same question and reach the same wrong answer.
The builder's arrival was the one rule the document said nothing checked. It is
checked now, by both genesis beds — and so is the thing that distinguishes a
built control plane from a carried one, which every earlier assertion accepted
either way.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
ADR 0073 — the installer carries a builder, and the registry stays where it is. Settles the two questions the design record named as the one gap stopping a fresh mesh from producing anything: how the builder arrives, and what it publishes into. It also records an argument that failed. It was put that a produced image must be published before anything can fetch it, so the registry would have to precede the control plane; it does not, because the machine that builds the image is the machine that runs it, and a local image is named by the digest of its own configuration exactly as a carried one is. Building changes where the bytes came from, not where they are. The argument is kept because it was asked for, and a negative answer is still the answer.
Issue 044 — the runtime every module builds on cannot be built by the mesh. Opened and resolved. It was the one artifact outside the build chain, which is why it was pinned by hand, why nobody could check it, and why the rule that catches a base moving could never fire for the change that reaches every module at once. That also explains a drift it had accumulated unnoticed: the recipe named one operating system while serving another.
Issue 045 — a container keeps the values it started with. Open. Two intentions can both be applied successfully and leave a container holding values from neither, because a container captures its environment once and nothing re-reads it. The failure is silent in the worst way: the container is up, the machine reports success, and the thing inside is using a credential the mesh no longer believes in.
Raising a mesh is rewritten to describe the program that exists, and its checks table now says how the builder's arrival is verified — the one rule it previously admitted nothing checked.