Jump to content

The Principia Machina/GTP/Walk/5 Keeping the pieces in step: Difference between revisions

From The Invariance Itself
m 1 revision imported
Edited under the disclosure rule
 
(One intermediate revision by the same user not shown)
Line 10: Line 10:


The answer is that every piece declares three things about itself, in its own header, where a reader and a machine can both find them. Its own version. The range of profile versions it is built to work with. And the sections of other documents it actually relies on.
The answer is that every piece declares three things about itself, in its own header, where a reader and a machine can both find them. Its own version. The range of profile versions it is built to work with. And the sections of other documents it actually relies on.
The diagram shows what happens with those declarations at the moment a piece is loaded.
{{:The Principia Machina/Diagrams/P05 Compatibility and version semantics}}
''What each artifact declares, and what happens when the declaration does not match.'' ([[The Principia Machina/Diagrams/P05 Compatibility and version semantics|diagram page]].)


The declared range is compared against the profile that is actually in force. If it matches, the piece runs. If it does not, or if the declaration is missing altogether, the piece says so and stops. It does not run with a warning attached, because a warning is something to be read past, and the whole point is that this particular failure is invisible in the output.
The declared range is compared against the profile that is actually in force. If it matches, the piece runs. If it does not, or if the declaration is missing altogether, the piece says so and stops. It does not run with a warning attached, because a warning is something to be read past, and the whole point is that this particular failure is invisible in the output.

Latest revision as of 07:01, 13 October 2026

The Principia Machina: map
Reading the diagrams
Structure key
Process key
Definition of terms
Roles
Reading by audience
Start here: the walk through
The operator's guide
Tutorial: create a UUID Workspace Container (UWC)
Public Recorder inputs
Sponsors: your first agent
The specification
Contents: parts, tables, diagrams
TPS 0.5.0 (declared 2026-10-03, revision 8; machine-optimized text)
Decisions (the foundations record, one line each)


The GTP walk through, page 5 of 6. Written for the general reader; nothing here is a rule. Every rule it mentions is stated in the text published under the name GTP, documentation beside the specification, which governs wherever they differ.

Keeping the pieces in step

The instruction set is not one document. It is a profile, a project layer, and a handful of separate procedures, and each of them is revised on its own schedule by its own round of work. That is the sane way to maintain them, and it creates a specific hazard.

A procedure written against last year's profile can rely on a section that has since been reworded, or on a rule that has since moved. Nothing announces this. The procedure still loads, still reads sensibly, and still produces output that looks like its output always looked. It is simply now built on something that is no longer there.

The answer is that every piece declares three things about itself, in its own header, where a reader and a machine can both find them. Its own version. The range of profile versions it is built to work with. And the sections of other documents it actually relies on.

The declared range is compared against the profile that is actually in force. If it matches, the piece runs. If it does not, or if the declaration is missing altogether, the piece says so and stops. It does not run with a warning attached, because a warning is something to be read past, and the whole point is that this particular failure is invisible in the output.

It is a range, with a top and a bottom, rather than a minimum. A minimum is a promise about releases that do not exist, made by someone who cannot have tried them. The range says what was actually tested and leaves the next version to state its own case.

The numbers themselves are not decoration. Three parts, each meaning something definite: one moves when something that other documents depend on has changed in a way that breaks them, one when something was added that does not break anything, and one when a mistake was fixed. Reading the numbers tells you whether you need to look.

What counts as breakage is defined per kind of document, which is subtler than it sounds. For an instruction artifact it is the cues it answers to, plus any section another document names. A section nothing else refers to can be rewritten freely; a section someone else depends on cannot, even if the rewrite is an improvement. For a body of findings it is the claims and the labels others cite.

One restriction is aimed squarely at machines. Work running with nobody watching may never claim more than a fix. Deciding that a change is larger than that is a judgement about what other people were relying on, and a judgement of that kind needs somebody present to make it.


Previous: What the agent will not do. Next: Saying what the work is for.