Jump to content

The Principia Machina/Diagrams/C4 Landing pipeline: Difference between revisions

From The Invariance Itself
m 1 revision imported
Human-facing page: C4 Landing pipeline
Line 6: Line 6:
* GENERATED FROM: declared by the human 2026-09-17; TPS 5.7-5.10, 6.2, 6.4
* GENERATED FROM: declared by the human 2026-09-17; TPS 5.7-5.10, 6.2, 6.4
* STATUS: hand-authored at TPS 0.1.0; conceptual, kept by the human; never generated
* STATUS: hand-authored at TPS 0.1.0; conceptual, kept by the human; never generated
* SOURCE SHA-256: <code>eee33b01d101392be5f61e7a594b8d900f0f2c31a3bee79116dec6d802f74441</code>
* SOURCE SHA-256: <code>ded57f5424ec0b9303e0e221fc4ad38258081fbfe69afdfea833e9276860af10</code>


Rendered live from the source, which is the text equivalent and is shown under the drawing. The key to the shapes is in the panel.
Rendered live from the source, which is the text equivalent and is shown under the drawing. The key to the shapes is in the panel.
Line 12: Line 12:
<onlyinclude><div style="clear:both; overflow-x:auto; max-width:100%; border:1px solid #c8ccd1; background:#ffffff; padding:0.5em; margin:0.5em 0;">
<onlyinclude><div style="clear:both; overflow-x:auto; max-width:100%; border:1px solid #c8ccd1; background:#ffffff; padding:0.5em; margin:0.5em 0;">
{{#mermaid:
{{#mermaid:
%% C4 Landing and collaboration pipeline with the post-refusal branch. TPS 0.1.0: 5.7, 5.8, 5.9, 5.10, 6.2, 6.4.
%% C4 Landing and collaboration pipeline. TPS 5.7-5.10, 6.2, 6.4.
flowchart TD
flowchart TD
   subgraph S1 ["1. Petition (5.8.2, 5.8.5, 5.7.4)"]
   subgraph S1 ["1. Petition, TPS 5.8.2, 5.8.5"]
     P1[(PETITION row: ACCOUNT,<br/>CAPABILITY, STATUS)] --> Q1[queue in revision order]
     P1[(PETITION row on the collaboration page)] --> Q1[queue in revision order]
     Q1 --> Q2[head acquires within the<br/>ACQUISITION WINDOW,<br/>else the next waiter]
     Q1 --> Q2[head acquires within the window]
   end
   end
   subgraph S2 ["2. Assign (5.8.3, 5.9.2)"]
   subgraph S2 ["2. Assign, TPS 5.8.3, 5.9.2"]
     Q2 --> A1[/lead writes the ASSIGNMENT:<br/>BLOCK ID, GRANT, LEASED RANGE,<br/>RETURN PAGE/]
     Q2 --> A1[/lead writes the ASSIGNMENT/]
     A1 --> A2[(SCHEDULE LOG: COMMISSIONED,<br/>OWNED BY, ETA)]
     A1 --> A2[(SCHEDULE LOG entry)]
   end
   end
   subgraph S3 ["3. Work locally (5.4.3, 5.9.3, 6.4)"]
   subgraph S3 ["3. Work locally, TPS 5.4.3, 5.9.3, 6.4"]
     A2 --> W1[local working instance:<br/>draft carrying the block ID]
     A2 --> W1[local instance, draft with block ID]
     W1 --> W2[local manifest rebuilt<br/>on every write]
     W1 --> W2[local manifest rebuilt on every write]
     W2 --> W3[benchmark quarantine: external<br/>values checked after termination]
     W2 --> W3[benchmark quarantine]
   end
   end
   subgraph S4 ["4. Return and vet (5.8.4, 6.2)"]
   subgraph S4 ["4. Return and vet, TPS 5.8.4, 6.2"]
     W3 --> R1[(RETURN on the staging subpage:<br/>RECORDS, USED RANGE, DIFFERENCE)]
     W3 --> R1[(RETURN on the staging subpage)]
     R1 --> V1[lead vets the return<br/>as untrusted input]
     R1 --> V1[lead vets it as untrusted input]
     V1 -- detection --> V2[/decision item<br/>to the human/]
     V1 -- detection --> V2[/decision item to the human/]
     V1 -- clean --> V3[incorporate; allocate identifiers;<br/>reclaim the unused range]
     V1 -- clean --> V3[incorporate, reclaim the range]
   end
   end
   subgraph S5 ["5. Land (5.9.5, 5.9.8, 5.10.1)"]
   subgraph S5 ["5. Land, TPS 5.9.5, 5.9.8, 5.10.1"]
     V3 --> L1[push with grant number, block ID,<br/>conformance declaration]
     V3 --> L1[push: grant, block ID, declaration]
     L1 --> L2[TPX checks: grant not stale,<br/>holder is pusher, block ID not EXPIRED,<br/>declared TPS version current]
     L1 --> L2[TPX checks all three]
     L2 -- pass --> L3[(records land; manifest rebuilt;<br/>BADGE written last)]
     L2 -- pass --> L2b[TPX recomputes presented values]
     L3 --> L4[release valid only<br/>after the push]
    L2b -- match --> L3[(records land, badge written last)]
    L2b -- mismatch --> PR
     L3 --> L4[release valid only after the push]
     L2 -- fail --> PR
     L2 -- fail --> PR
   end
   end
   subgraph S6 ["Post-refusal (5.9.7)"]
   subgraph S6 ["Post-refusal, TPS 5.9.7"]
     PR[read the control panel; apply<br/>to the lead; the lead's answer<br/>is authoritative]
     PR[ask the lead, its answer decides]
     PR -- neither reassigned<br/>nor landed --> PR1[new block ID with<br/>back-pointer; land under it]
     PR -- neither --> PR1[new block ID, land under it]
     PR -- reassigned --> PR2[enter the queue; wait for<br/>that block to land or expire]
     PR -- reassigned --> PR2[queue, wait to land or expire]
     PR -- landed --> PR3[compare with the<br/>landed result]
     PR -- landed --> PR3[compare with the landed result]
     PR3 -- match --> PR4[(CORROBORATION RECORD;<br/>block closes CORROBORATED)]
     PR3 -- match --> PR4[(CORROBORATION RECORD)]
     PR3 -- mismatch --> PR5[audit: a new work block<br/>ending in a decision item]
     PR3 -- mismatch --> PR5[audit ends in a decision item]
     PR2 --> PR
     PR2 --> PR
   end
   end
Line 61: Line 63:
   style S5 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
   style S5 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
   style S6 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
   style S6 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
   class Q1,Q2,W1,W2,W3,V1,V3,L1,L2,L4,PR,PR1,PR2,PR3,PR5 task
   class Q1,Q2,W1,W2,W3,V1,V3,L1,L2,L2b,L4,PR,PR1,PR2,PR3,PR5 task
   class A1,V2 human
   class A1,V2 human
   class P1,A2,R1 data
   class P1,A2,R1 data
Line 70: Line 72:
<div class="mw-collapsible-content">
<div class="mw-collapsible-content">
<pre>
<pre>
%% C4 Landing and collaboration pipeline with the post-refusal branch. TPS 0.1.0: 5.7, 5.8, 5.9, 5.10, 6.2, 6.4.
%% C4 Landing and collaboration pipeline. TPS 5.7-5.10, 6.2, 6.4.
flowchart TD
flowchart TD
   subgraph S1 ["1. Petition (5.8.2, 5.8.5, 5.7.4)"]
   subgraph S1 ["1. Petition, TPS 5.8.2, 5.8.5"]
     P1[(PETITION row: ACCOUNT,<br/>CAPABILITY, STATUS)] --> Q1[queue in revision order]
     P1[(PETITION row on the collaboration page)] --> Q1[queue in revision order]
     Q1 --> Q2[head acquires within the<br/>ACQUISITION WINDOW,<br/>else the next waiter]
     Q1 --> Q2[head acquires within the window]
   end
   end
   subgraph S2 ["2. Assign (5.8.3, 5.9.2)"]
   subgraph S2 ["2. Assign, TPS 5.8.3, 5.9.2"]
     Q2 --> A1[/lead writes the ASSIGNMENT:<br/>BLOCK ID, GRANT, LEASED RANGE,<br/>RETURN PAGE/]
     Q2 --> A1[/lead writes the ASSIGNMENT/]
     A1 --> A2[(SCHEDULE LOG: COMMISSIONED,<br/>OWNED BY, ETA)]
     A1 --> A2[(SCHEDULE LOG entry)]
   end
   end
   subgraph S3 ["3. Work locally (5.4.3, 5.9.3, 6.4)"]
   subgraph S3 ["3. Work locally, TPS 5.4.3, 5.9.3, 6.4"]
     A2 --> W1[local working instance:<br/>draft carrying the block ID]
     A2 --> W1[local instance, draft with block ID]
     W1 --> W2[local manifest rebuilt<br/>on every write]
     W1 --> W2[local manifest rebuilt on every write]
     W2 --> W3[benchmark quarantine: external<br/>values checked after termination]
     W2 --> W3[benchmark quarantine]
   end
   end
   subgraph S4 ["4. Return and vet (5.8.4, 6.2)"]
   subgraph S4 ["4. Return and vet, TPS 5.8.4, 6.2"]
     W3 --> R1[(RETURN on the staging subpage:<br/>RECORDS, USED RANGE, DIFFERENCE)]
     W3 --> R1[(RETURN on the staging subpage)]
     R1 --> V1[lead vets the return<br/>as untrusted input]
     R1 --> V1[lead vets it as untrusted input]
     V1 -- detection --> V2[/decision item<br/>to the human/]
     V1 -- detection --> V2[/decision item to the human/]
     V1 -- clean --> V3[incorporate; allocate identifiers;<br/>reclaim the unused range]
     V1 -- clean --> V3[incorporate, reclaim the range]
   end
   end
   subgraph S5 ["5. Land (5.9.5, 5.9.8, 5.10.1)"]
   subgraph S5 ["5. Land, TPS 5.9.5, 5.9.8, 5.10.1"]
     V3 --> L1[push with grant number, block ID,<br/>conformance declaration]
     V3 --> L1[push: grant, block ID, declaration]
     L1 --> L2[TPX checks: grant not stale,<br/>holder is pusher, block ID not EXPIRED,<br/>declared TPS version current]
     L1 --> L2[TPX checks all three]
     L2 -- pass --> L3[(records land; manifest rebuilt;<br/>BADGE written last)]
     L2 -- pass --> L2b[TPX recomputes presented values]
     L3 --> L4[release valid only<br/>after the push]
    L2b -- match --> L3[(records land, badge written last)]
    L2b -- mismatch --> PR
     L3 --> L4[release valid only after the push]
     L2 -- fail --> PR
     L2 -- fail --> PR
   end
   end
   subgraph S6 ["Post-refusal (5.9.7)"]
   subgraph S6 ["Post-refusal, TPS 5.9.7"]
     PR[read the control panel; apply<br/>to the lead; the lead's answer<br/>is authoritative]
     PR[ask the lead, its answer decides]
     PR -- neither reassigned<br/>nor landed --> PR1[new block ID with<br/>back-pointer; land under it]
     PR -- neither --> PR1[new block ID, land under it]
     PR -- reassigned --> PR2[enter the queue; wait for<br/>that block to land or expire]
     PR -- reassigned --> PR2[queue, wait to land or expire]
     PR -- landed --> PR3[compare with the<br/>landed result]
     PR -- landed --> PR3[compare with the landed result]
     PR3 -- match --> PR4[(CORROBORATION RECORD;<br/>block closes CORROBORATED)]
     PR3 -- match --> PR4[(CORROBORATION RECORD)]
     PR3 -- mismatch --> PR5[audit: a new work block<br/>ending in a decision item]
     PR3 -- mismatch --> PR5[audit ends in a decision item]
     PR2 --> PR
     PR2 --> PR
   end
   end
Line 119: Line 123:
   style S5 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
   style S5 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
   style S6 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
   style S6 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
   class Q1,Q2,W1,W2,W3,V1,V3,L1,L2,L4,PR,PR1,PR2,PR3,PR5 task
   class Q1,Q2,W1,W2,W3,V1,V3,L1,L2,L2b,L4,PR,PR1,PR2,PR3,PR5 task
   class A1,V2 human
   class A1,V2 human
   class P1,A2,R1 data
   class P1,A2,R1 data

Revision as of 04:14, 18 September 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)


Conceptual diagram 4 of 5. Part of the TPM hub.

  • KIND: process
  • LANGUAGE: Mermaid
  • GENERATED FROM: declared by the human 2026-09-17; TPS 5.7-5.10, 6.2, 6.4
  • STATUS: hand-authored at TPS 0.1.0; conceptual, kept by the human; never generated
  • SOURCE SHA-256: ded57f5424ec0b9303e0e221fc4ad38258081fbfe69afdfea833e9276860af10

Rendered live from the source, which is the text equivalent and is shown under the drawing. The key to the shapes is in the panel.

Source (the text equivalent; Mermaid)
%% C4 Landing and collaboration pipeline. TPS 5.7-5.10, 6.2, 6.4.
flowchart TD
  subgraph S1 ["1. Petition, TPS 5.8.2, 5.8.5"]
    P1[(PETITION row on the collaboration page)] --> Q1[queue in revision order]
    Q1 --> Q2[head acquires within the window]
  end
  subgraph S2 ["2. Assign, TPS 5.8.3, 5.9.2"]
    Q2 --> A1[/lead writes the ASSIGNMENT/]
    A1 --> A2[(SCHEDULE LOG entry)]
  end
  subgraph S3 ["3. Work locally, TPS 5.4.3, 5.9.3, 6.4"]
    A2 --> W1[local instance, draft with block ID]
    W1 --> W2[local manifest rebuilt on every write]
    W2 --> W3[benchmark quarantine]
  end
  subgraph S4 ["4. Return and vet, TPS 5.8.4, 6.2"]
    W3 --> R1[(RETURN on the staging subpage)]
    R1 --> V1[lead vets it as untrusted input]
    V1 -- detection --> V2[/decision item to the human/]
    V1 -- clean --> V3[incorporate, reclaim the range]
  end
  subgraph S5 ["5. Land, TPS 5.9.5, 5.9.8, 5.10.1"]
    V3 --> L1[push: grant, block ID, declaration]
    L1 --> L2[TPX checks all three]
    L2 -- pass --> L2b[TPX recomputes presented values]
    L2b -- match --> L3[(records land, badge written last)]
    L2b -- mismatch --> PR
    L3 --> L4[release valid only after the push]
    L2 -- fail --> PR
  end
  subgraph S6 ["Post-refusal, TPS 5.9.7"]
    PR[ask the lead, its answer decides]
    PR -- neither --> PR1[new block ID, land under it]
    PR -- reassigned --> PR2[queue, wait to land or expire]
    PR -- landed --> PR3[compare with the landed result]
    PR3 -- match --> PR4[(CORROBORATION RECORD)]
    PR3 -- mismatch --> PR5[audit ends in a decision item]
    PR2 --> PR
  end

  classDef task fill:#eaecf0,stroke:#a2a9b1,color:#202122
  classDef human fill:#eaf3ff,stroke:#36c,color:#202122
  classDef data fill:#fef6e7,stroke:#ac6600,color:#202122
  classDef bad fill:#fee7e6,stroke:#d33,color:#202122
  classDef good fill:#d5fdf4,stroke:#14866d,color:#202122
  style S1 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
  style S2 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
  style S3 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
  style S4 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
  style S5 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
  style S6 fill:#f8f9fa,stroke:#c8ccd1,color:#202122
  class Q1,Q2,W1,W2,W3,V1,V3,L1,L2,L2b,L4,PR,PR1,PR2,PR3,PR5 task
  class A1,V2 human
  class P1,A2,R1 data
  class L3,PR4 good

Text equivalent

Stage 1 Petition: a PETITION row with CAPABILITY enters the queue in revision order; the head acquires within the ACQUISITION WINDOW (5.8.2, 5.8.5). Stage 2 Assign: the lead writes the ASSIGNMENT and the schedule log entry (5.8.3, 5.9.2). Stage 3 Work locally on the local instance under benchmark quarantine (5.4.3, 5.9.3, 6.4). Stage 4 Return and vet: the RETURN on the staging subpage is untrusted input; a detection becomes a decision item, a clean return is incorporated (5.8.4, 6.2). Stage 5 Land: the push carries grant, block ID and conformance declaration; TPX checks them and writes the badge last; release is valid only after the push (5.9.5, 5.9.8, 5.10.1). A refused push enters the post-refusal branch (5.9.7).