The Principia Machina/Testing: Difference between revisions
m 1 revision imported |
DeltaS Zero (talk | contribs) B1 PASSED: M4 and M3 passed on 2026-10-08; O-1 and O-5 discharged; O-6 open for M1 (second approver: TBD) |
||
| (4 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
{{TPM map}} | {{TPM map}} | ||
{{DISPLAYTITLE:Testing the Principia Machina}} | {{DISPLAYTITLE:Testing the Principia Machina}} | ||
''Round 3, Phase 2. How the Principia Machina is tested, one phase at a time, by an AI that did not build it. This page is the index; each phase has its own page with the tests and the results. Status as of 2026-10- | ''Round 3, Phase 2. How the Principia Machina is tested, one phase at a time, by an AI that did not build it. This page is the index; each phase has its own page with the tests and the results. Status as of 2026-10-08 (UTC): M0, M2, M3, M4 PASSED (M2, M3, M4 second approver: TBD; O-1, O-2, O-3, O-4, O-5 discharged 2026-10-08); M1 ACCEPTED WITH OBLIGATIONS (O-6); M5 and M6 not started. The states are those of the plan's version 0.3.1 (section 3); every unmet criterion is on [[The Principia Machina/Testing/Obligations|Obligations]]. Where a page here and [[The Principia Machina/TPS|the specification]] differ, the specification governs.'' | ||
== The idea == | == The idea == | ||
Each piece of the machinery is built in its smallest working form, published on this wiki, and then tested from the wiki by an outside AI before the next piece is built. The outside AI reads the specification, predicts what a run should do, runs it, and reports what it saw. The operator (a person) accepts a phase with one written word; nothing is accepted on the builder's say-so. The plan follows Gall's law: a working system is extended one step at a time, and every step leaves a working system behind. | Each piece of the machinery is built in its smallest working form, published on this wiki, and then tested from the wiki by an outside AI before the next piece is built. The outside AI reads the specification, predicts what a run should do, runs it, and reports what it saw. The operator (a person) accepts a phase with one written word, and from the plan's version 0.3.0 (2026-10-06) a named second person approves every PASSED and every change of a criterion; nothing is accepted on the builder's say-so. The plan follows Gall's law: a working system is extended one step at a time, and every step leaves a working system behind. | ||
Four parties take part: | |||
* '''The operator''' (H-DECL and H-OP, the same person): imports the pages, deploys TPX, declares every UWC, runs the operator's own test, and accepts or refuses a phase. He gives the tester no hints and runs nothing for it. | * '''The operator''' (H-DECL and H-OP, the same person): imports the pages, deploys TPX, declares every UWC, runs the operator's own test, and accepts or refuses a phase. He gives the tester no hints and runs nothing for it. | ||
* '''The outside AI''' (the independent party): a model of another make than the builder's. It learns everything from invarians.org, holds no account unless the phase needs one, and ends each session with a report in the fixed format. | * '''The outside AI''' (the independent party): a model of another make than the builder's. It learns everything from invarians.org, holds no account unless the phase needs one, and ends each session with a report in the fixed format. | ||
* '''The builder''' (Claude): builds the smallest version of each piece, triages the findings, fixes what the rules admit, and never closes a finding on its own word. | * '''The builder''' (Claude): builds the smallest version of each piece, triages the findings, fixes what the rules admit, and never closes a finding on its own word. It also wrote every script the operator runs, and each page says so where such a script produced the evidence. | ||
* '''The second approver''' (from 2026-10-06; the plan's version 0.3.1): a person who is not the operator, countersigning every PASSED and every change of an acceptance criterion by a recorded word. The ideal holder is a dually qualified physicist from outside the project, or the closest available match possible for realistic support of the project; for a new-physics claim (M6 on), the outside physicist. The role is not yet filled: SECOND APPROVER: TBD (to be determined; 2026-10-06). Until it is, the operator's word alone makes a PASSED, marked "second approver: TBD" on [[The Principia Machina/Testing/Obligations|Obligations]] for countersignature when the role is filled. | |||
<graphviz> | <graphviz> | ||
| Line 34: | Line 35: | ||
== The phases, in order == | == The phases, in order == | ||
The seven phases of the plan (tpm_third_party_plan 0.2.0, 2026-09-30). Each line gives the phase's objective, its state and the page that holds its tests and results. | The seven phases of the plan (tpm_third_party_plan 0.2.0, 2026-09-30; restated in 0.3.0, 2026-10-06, after two outside reviews of the regime). Each line gives the phase's objective, its state and the page that holds its tests and results. | ||
# '''[[The Principia Machina/Testing/M0 Outside AI and the sandbox|M0 An outside AI, from the wiki alone]]''' – an outside AI, given one sentence, sets itself up from the wiki, creates and works a UWC with the published calculator and sandbox, and tests the pages and the live gate; every prediction reported with its outcome; no soundness finding open. ''' | # '''[[The Principia Machina/Testing/M0 Outside AI and the sandbox|M0 An outside AI, from the wiki alone]]''' – an outside AI, given one sentence, sets itself up from the wiki, creates and works a UWC with the published calculator and sandbox, and tests the pages and the live gate; every prediction reported with its outcome; no soundness finding open. '''PASSED.''' Five sessions, seven findings (G-1 to G-7), none a soundness defect left open; its record criteria were met on the live wiki (SPR) under the direction of 2026-10-01. | ||
# '''[[The Principia Machina/Testing/M1 The register duties|M1 The register's research duties]]''' – the register does what the specification says a register does: strikes under SR1, SR5 and SR7 with their withdrawal and gap records, the audit block, promotion, the verification of a result against an outside value, withdrawals and their cascade. ''' | # '''[[The Principia Machina/Testing/M1 The register duties|M1 The register's research duties]]''' – the register does what the specification says a register does: strikes under SR1, SR5 and SR7 with their withdrawal and gap records, the audit block, promotion, the verification of a result against an outside value, withdrawals and their cascade. '''ACCEPTED WITH OBLIGATIONS 2026-10-05''' as part of Step A (TPX 0.5.0, the A2 deploy): O-2 (a planted contradiction struck live) and O-1 (a corroboration from a different-family reproducer, live: SPB-18) were discharged on 2026-10-08; O-6 (HOLD and RELEASE) is open. | ||
# '''[[The Principia Machina/Testing/M2 The calculator from the specification|M2 The calculator, tested from the specification]]''' – an outside tester writes its own test cases from the specification's rule text, never from the published corpora, and runs them through a read-only operation that executes one named calculator function. ''' | # '''[[The Principia Machina/Testing/M2 The calculator from the specification|M2 The calculator, tested from the specification]]''' – an outside tester writes its own test cases from the specification's rule text, never from the published corpora, and runs them through a read-only operation that executes one named calculator function. '''PASSED 2026-10-08''' (second approver: TBD), accepted with obligations on 2026-10-05 as part of Step A; the operation (TPCRUN) is live and was used by every outside session since; O-3, the tester-written case set (100 cases across 10 sections), was met on 2026-10-08 by seven sessions under [[The Principia Machina/Hub/Outside AI/M2 The calculator from the specification|the M2 brief]] (254 cases, 11 TPS section pages, every mismatch triaged) and discharged the same day. | ||
# '''[[The Principia Machina/Testing/M3 TPX, the smallest server|M3 TPX, the smallest server that does what the sandbox does]]''' – the server extension TPX, on the live wiki, does by machine what the sandbox did on a tester's computer, byte for byte: the new-UWC form, the declaration with the genesis of the chains, the landing API. ''' | # '''[[The Principia Machina/Testing/M3 TPX, the smallest server|M3 TPX, the smallest server that does what the sandbox does]]''' – the server extension TPX, on the live wiki, does by machine what the sandbox did on a tester's computer, byte for byte: the new-UWC form, the declaration with the genesis of the chains, the landing API. '''PASSED 2026-10-08''' (second approver: TBD), accepted with obligations on 2026-10-05 as part of Step A (TPX 0.4.0 then 0.5.0, live since 2026-10-04); its obligations O-4 (the M0 session's UWC replayed against the live TPX) and O-5 (the lock and the queue, live: 57 of 57 checks passed) were discharged on 2026-10-08. | ||
# '''[[The Principia Machina/Testing/M4 PRB, the smallest client|M4 PRB, the smallest client]]''' – the agent-side client: it petitions, locks, pushes, polls and releases against live TPX, and places the calculator as the specification says; a full UWC lifecycle with a second agent's corroboration. ''' | # '''[[The Principia Machina/Testing/M4 PRB, the smallest client|M4 PRB, the smallest client]]''' – the agent-side client: it petitions, locks, pushes, polls and releases against live TPX, and places the calculator as the specification says; a full UWC lifecycle with a second agent's corroboration. '''PASSED 2026-10-08''' (second approver: TBD): Step B opened 2026-10-06; TPX 0.6.0 increments 1 to 5 built, gated, and deployed live; outside session by Google DeepMind / Gemini 3.8 Flash ran PRB on SPB, completed block lifecycle, landed live corroboration SPB-18 with SAME_MODEL false (O-1 discharged), matched 8 of 8 named refusals, verified build chain to line 27; accepted as "B1 PASSED" on 2026-10-08. | ||
# '''[[The Principia Machina/Testing/M5 Certification|M5 Certification, with the outside AI as the first candidate]]''' – the six-probe suite on the synthetic UWC and the supervised trial; the outside AI is certified or refused exactly as a sponsor's agent would be; a second outside model plays the red team. '''Not started''' (Step B). | # '''[[The Principia Machina/Testing/M5 Certification|M5 Certification, with the outside AI as the first candidate]]''' – the six-probe suite on the synthetic UWC and the supervised trial; the outside AI is certified or refused exactly as a sponsor's agent would be; a second outside model plays the red team. '''Not started''' (Step B). | ||
# '''[[The Principia Machina/Testing/M6 The first live UWC|M6 Live: the first real UWC]]''' – TPX deployed by tag, the first real research container, and an outside reproduction of its first ESTABLISHED result from the public pages alone. '''Not started''' (Step C). | # '''[[The Principia Machina/Testing/M6 The first live UWC|M6 Live: the first real UWC]]''' – TPX deployed by tag, the first real research container, and an outside reproduction of its first ESTABLISHED result from the public pages alone. '''Not started''' (Step C, after the control UWC C0). | ||
<graphviz> | <graphviz> | ||
| Line 48: | Line 49: | ||
digraph ladder { | digraph ladder { | ||
rankdir=TB; ranksep=0.35; node [shape=box, style=filled, color="#a2a9b1", fontcolor="#202122", fontname="Helvetica", fontsize=10]; edge [fontname="Helvetica", fontsize=9, color="#54595d", fontcolor="#202122"]; | rankdir=TB; ranksep=0.35; node [shape=box, style=filled, color="#a2a9b1", fontcolor="#202122", fontname="Helvetica", fontsize=10]; edge [fontname="Helvetica", fontsize=9, color="#54595d", fontcolor="#202122"]; | ||
M0 [label="M0\nOutside AI,\nfrom the wiki alone\ | M0 [label="M0\nOutside AI,\nfrom the wiki alone\nPASSED", fillcolor="#cef2e0"]; | ||
M1 [label="M1\nThe register\nduties\nACCEPTED | M1 [label="M1\nThe register\nduties\nACCEPTED WITH\nOBLIGATIONS 10-05\nO-6", fillcolor="#ffedad"]; | ||
M2 [label="M2\nThe calculator\nfrom the spec\ | M2 [label="M2\nThe calculator\nfrom the spec\nPASSED 10-08\n(second approver:\nTBD)", fillcolor="#cef2e0"]; | ||
M3 [label="M3\nTPX, the\nsmallest server\ | M3 [label="M3\nTPX, the\nsmallest server\nPASSED 10-08\n(second approver:\nTBD)", fillcolor="#cef2e0"]; | ||
M4 [label="M4\nPRB, the\nsmallest client\ | M4 [label="M4\nPRB, the\nsmallest client\nPASSED 10-08\n(second approver:\nTBD)", fillcolor="#cef2e0"]; | ||
M5 [label="M5\nCertification\nNOT STARTED", fillcolor="#eaecf0"]; | M5 [label="M5\nCertification\nNOT STARTED", fillcolor="#eaecf0"]; | ||
M6 [label="M6\nLive: the first\nreal UWC\nNOT STARTED", fillcolor="#eaecf0"]; | M6 [label="M6\nLive: the first\nreal UWC\nNOT STARTED", fillcolor="#eaecf0"]; | ||
M0 -> M1 -> M2 -> M3 -> M4 -> M5 -> M6; | M0 -> M1 -> M2 -> M3 -> M4 -> M5 -> M6; | ||
subgraph cluster_a { label="Step A (closed 2026-10-05)"; fontname="Helvetica"; fontsize=10; color="#a2a9b1"; labeljust="l"; M1; M2; M3; } | subgraph cluster_a { label="Step A (closed 2026-10-05)"; fontname="Helvetica"; fontsize=10; color="#a2a9b1"; labeljust="l"; M1; M2; M3; } | ||
subgraph cluster_b { label="Step B ( | subgraph cluster_b { label="Step B (open 2026-10-06)"; fontname="Helvetica"; fontsize=10; color="#a2a9b1"; labeljust="l"; M4; M5; } | ||
subgraph cluster_c { label="Step C"; fontname="Helvetica"; fontsize=10; color="#a2a9b1"; labeljust="l"; M6; } | subgraph cluster_c { label="Step C (C0, then M6)"; fontname="Helvetica"; fontsize=10; color="#a2a9b1"; labeljust="l"; M6; } | ||
} | } | ||
</graphviz> | </graphviz> | ||
Beside the phase pages, | Beside the phase pages, four pages cut across them: | ||
* [[The Principia Machina/Testing/Obligations|Obligations]] – every criterion a phase was accepted without, with the phase or runner that discharges it and its state; the second approver's record; the four states of a phase. | |||
* [[The Principia Machina/Testing/Step A, the deploys A1 and A2|Step A, the deploys A1 and A2]] – the two live deploys of TPX that met M1, M2 and M3 together: what was deployed, the three tests run on each, the records they left in the first UWC, SPR. | * [[The Principia Machina/Testing/Step A, the deploys A1 and A2|Step A, the deploys A1 and A2]] – the two live deploys of TPX that met M1, M2 and M3 together: what was deployed, the three tests run on each, the records they left in the first UWC, SPR. | ||
| Line 70: | Line 73: | ||
== How the phases were grouped for the live wiki == | == How the phases were grouped for the live wiki == | ||
The plan of 2026-09-30 set six milestones after M0, each with its own build, outside session and acceptance word. On 2026-10-03 the operator chose (decision D237.1) to run them on the live wiki in three steps, to cut the number of cycles from six to three: Step A took M1, M2 and M3 together as one deploy of TPX; Step B takes M4 and M5; Step C is M6. Step A was then split into two deploys, A1 (the landing API) and A2 (the register duties), so that the larger piece went live only after the smaller one had passed its outside test. | The plan of 2026-09-30 set six milestones after M0, each with its own build, outside session and acceptance word. On 2026-10-03 the operator chose (decision D237.1) to run them on the live wiki in three steps, to cut the number of cycles from six to three: Step A took M1, M2 and M3 together as one deploy of TPX; Step B takes M4 and M5; Step C is the control UWC C0 and then M6. Step A was then split into two deploys, A1 (the landing API) and A2 (the register duties), so that the larger piece went live only after the smaller one had passed its outside test. | ||
<graphviz> | <graphviz> | ||
| Line 79: | Line 82: | ||
D [label="D237.1, 2026-10-03\nLIVE, THREE STEPS\n(the operator's selection)", fillcolor="#cedff2"]; | D [label="D237.1, 2026-10-03\nLIVE, THREE STEPS\n(the operator's selection)", fillcolor="#cedff2"]; | ||
SA [label="Step A = M1 + M2 + M3\nTPX part 2 on live\naccept: \"M1 M2 M3 accepted\"", fillcolor="#cef2e0"]; | SA [label="Step A = M1 + M2 + M3\nTPX part 2 on live\naccept: \"M1 M2 M3 accepted\"", fillcolor="#cef2e0"]; | ||
SB [label="Step B = M4 + M5\nPRB, then certification\naccept: \"M4 M5 | SB [label="Step B = M4 + M5\nPRB, then certification\naccept: \"B1 PASSED\",\nthen \"M4 M5 PASSED\""]; | ||
SC [label="Step C = M6\nthe | SC [label="Step C = C0 + M6\nthe control UWC, then\nthe first live UWC\naccept: \"C0 PASSED\", \"M6 PASSED\""]; | ||
A1 [label="A1 TPX 0.4.0\nthe landing API\naccepted 2026-10-04", fillcolor="#cef2e0"]; | A1 [label="A1 TPX 0.4.0\nthe landing API\naccepted 2026-10-04", fillcolor="#cef2e0"]; | ||
A2 [label="A2 TPX 0.5.0\nthe register duties\naccepted 2026-10-05", fillcolor="#cef2e0"]; | A2 [label="A2 TPX 0.5.0\nthe register duties\naccepted 2026-10-05", fillcolor="#cef2e0"]; | ||
| Line 91: | Line 94: | ||
== How a phase is tested: the cycle == | == How a phase is tested: the cycle == | ||
One cycle per phase (plan 0.2.0, section 3). The builder states the exit test before building and gets at most two build iterations; the outside AI gets one session of at most 25 runs; triage is the same day; at most two fix iterations; the next session opens with the fixed findings' repro steps; the operator accepts. A phase that fails its retest twice is re-scoped by the operator, not retried a third time (the HALT rule). An open soundness finding (class S1) stops the line. | One cycle per phase (plan 0.2.0, section 3). The builder states the exit test before building and gets at most two build iterations; the outside AI gets one session of at most 25 runs; triage is the same day; at most two fix iterations; the next session opens with the fixed findings' repro steps; the operator accepts; the second approver's word is recorded with every PASSED once that role is filled (TBD on 2026-10-06). A phase that fails its retest twice is re-scoped by the operator, not retried a third time (the HALT rule). An open soundness finding (class S1) stops the line. | ||
<graphviz> | <graphviz> | ||
| Line 103: | Line 106: | ||
C5 [label="C5 FIX\nonly what the rules admit\nat most 2 iterations"]; | C5 [label="C5 FIX\nonly what the rules admit\nat most 2 iterations"]; | ||
C6 [label="C6 RETEST\nthe next session opens\nwith the repro steps", fillcolor="#ffedad"]; | C6 [label="C6 RETEST\nthe next session opens\nwith the repro steps", fillcolor="#ffedad"]; | ||
C7 [label="C7 ACCEPT\nthe operator\ | C7 [label="C7 ACCEPT\nthe operator's word (the second\napprover's when the role is filled):\nPASSED, or ACCEPTED\nWITH OBLIGATIONS", fillcolor="#cef2e0"]; | ||
H [label="HALT\nfails twice at C6:\nthe operator re-scopes", fillcolor="#fee7e6"]; | H [label="HALT\nfails twice at C6:\nthe operator re-scopes", fillcolor="#fee7e6"]; | ||
C1 -> C2 -> C3 -> C4 -> C5 -> C6 -> C7; | C1 -> C2 -> C3 -> C4 -> C5 -> C6 -> C7; | ||
| Line 113: | Line 116: | ||
The tester works on up to three tracks. Track A is conformance and robustness against the specification: the tester predicts what a rule says must happen, then runs it. Track B is real use: it does ordinary register work. Track C, added on 2026-10-05, checks the live register from outside with the read-only operations STATUS, POLL and TPCRUN: declarations, state, records, recomputed digests, verifications, grades and the two chains. The tracks and the report format are on [[The Principia Machina/Hub/Outside AI|Outside AI: start here]]. | The tester works on up to three tracks. Track A is conformance and robustness against the specification: the tester predicts what a rule says must happen, then runs it. Track B is real use: it does ordinary register work. Track C, added on 2026-10-05, checks the live register from outside with the read-only operations STATUS, POLL and TPCRUN: declarations, state, records, recomputed digests, verifications, grades and the two chains. The tracks and the report format are on [[The Principia Machina/Hub/Outside AI|Outside AI: start here]]. | ||
== The states of a phase == | |||
From plan 0.3.0 (2026-10-06) a phase is in exactly one of four states, and no other word names a state on these pages. '''PASSED''': every acceptance criterion met by evidence named on the phase's page, no S1 finding open, the operator's word recorded with its date, and the second approver's word beside it when that role is filled (SECOND APPROVER: TBD on 2026-10-06; until the role is filled the operator's word alone, marked "second approver: TBD" on [[The Principia Machina/Testing/Obligations|Obligations]]). '''ACCEPTED WITH OBLIGATIONS''': the operator accepted the phase by a recorded word while named criteria were unmet; each unmet criterion is an obligation on [[The Principia Machina/Testing/Obligations|Obligations]], with the phase or runner that discharges it; the phase becomes PASSED when every obligation of it is discharged. '''SUPERSEDED''': the phase or a criterion was replaced by a later version of the plan, the old and the new wording side by side in its change record. '''FAILED''': the phase failed its retest twice, or an S1 finding stayed open past the fix budget; the operator re-scopes it. An acceptance criterion, an obligation's evidence or a state's definition changes only by a new version of the plan, with the old and the new wording side by side and the second approver's word where that role is filled, never in the same act as an acceptance and never by a page edit alone. | |||
<graphviz> | |||
// The four states of a phase (plan 0.3.0, section 3; the second approver's rule of 0.3.1) and what moves a phase between them. | |||
digraph states4 { | |||
rankdir=LR; node [shape=box, style=filled, color="#a2a9b1", fontcolor="#202122", fontname="Helvetica", fontsize=9]; edge [fontname="Helvetica", fontsize=9, color="#54595d", fontcolor="#202122"]; | |||
T [label="a phase under test", fillcolor="#eaecf0"]; | |||
P [label="PASSED\nevery criterion met;\nno S1 open; the operator's word\n(the second approver's\nwhen the role is filled)", fillcolor="#cef2e0"]; | |||
A [label="ACCEPTED WITH OBLIGATIONS\nthe operator's word with\nnamed criteria unmet;\neach an obligation", fillcolor="#ffedad"]; | |||
S [label="SUPERSEDED\na criterion or the phase\nreplaced by a plan version,\nold and new side by side", fillcolor="#cedff2"]; | |||
F [label="FAILED\nthe retest failed twice,\nor an S1 open past the budget;\nthe operator re-scopes", fillcolor="#fee7e6"]; | |||
T -> P; T -> A; A -> P [label="every obligation\ndischarged"]; T -> F; A -> S [label="plan version"]; T -> S [label="plan version"]; | |||
} | |||
</graphviz> | |||
== How a finding is classed == | == How a finding is classed == | ||
| Line 146: | Line 166: | ||
L3 [label="M1 the register duties: strikes, gaps, audit stub, promotion, verification, withdrawals", fillcolor="#cef2e0"]; | L3 [label="M1 the register duties: strikes, gaps, audit stub, promotion, verification, withdrawals", fillcolor="#cef2e0"]; | ||
L4 [label="M2 the calculator exercised from the specification through TPCRUN", fillcolor="#cef2e0"]; | L4 [label="M2 the calculator exercised from the specification through TPCRUN", fillcolor="#cef2e0"]; | ||
L5 [label="M4 PRB, the agent-side client: petition, lock, push, release, corroboration"]; | L5 [label="M4 PRB, the agent-side client: petition, lock, push, release, corroboration", fillcolor="#cef2e0"]; | ||
L6 [label="M5 certification: the six-probe suite on the synthetic UWC, the supervised trial"]; | L6 [label="M5 certification: the six-probe suite on the synthetic UWC, the supervised trial"]; | ||
L7 [label="M6 the first real UWC, and an outside reproduction of its first ESTABLISHED result"]; | L7 [label="M6 the first real UWC, and an outside reproduction of its first ESTABLISHED result"]; | ||
| Line 157: | Line 177: | ||
{{#mermaid: | {{#mermaid: | ||
gantt | gantt | ||
title Testing the Principia Machina, 2026-09-30 to 2026-10- | title Testing the Principia Machina, 2026-09-30 to 2026-10-08 (UTC) | ||
dateFormat YYYY-MM-DD | dateFormat YYYY-MM-DD | ||
axisFormat %m-%d | axisFormat %m-%d | ||
| Line 169: | Line 189: | ||
A2 TPX 0.5.0 deployed and tested, Step A closed : done, a2, 2026-10-05, 1d | A2 TPX 0.5.0 deployed and tested, Step A closed : done, a2, 2026-10-05, 1d | ||
section Step B | section Step B | ||
B1 increments 1 to 3 gated; the regime reviews; plan 0.3.0 : done, b, 2026-10-06, 1d | |||
A3 closeout: the status batch, the runner, the M2 sessions; O-2, O-3, O-4 discharged : done, b2, 2026-10-07, 2d | |||
B1 outside session on SPB, SPB-18 landed, B1 PASSED : done, b3, 2026-10-07, 2d | |||
|config.theme=neutral}} | |config.theme=neutral}} | ||
== What a reader can check today == | == What a reader can check today == | ||
The tests leave their evidence on public pages. Anyone can read the first UWC's register ([[The Principia Machina/UWC/SPR/Register/Volume 1|SPR, Register Volume 1]]), its control panel ([[The Principia Machina/UWC/SPR/Control panel|SPR, Control panel]]), the chain of declarations ([[The Principia Machina/Declarations/Volume 1|Declarations, Volume 1]]) and the build chain ([[The Principia Machina/Build chain/Volume 1|Build chain, Volume 1]]), and recompute any stored digest through the read-only operation TPCRUN of the API, as the outside sessions did. The operator's | The tests leave their evidence on public pages. Anyone can read the first UWC's register ([[The Principia Machina/UWC/SPR/Register/Volume 1|SPR, Register Volume 1]]), its control panel ([[The Principia Machina/UWC/SPR/Control panel|SPR, Control panel]]), the chain of declarations ([[The Principia Machina/Declarations/Volume 1|Declarations, Volume 1]]) and the build chain ([[The Principia Machina/Build chain/Volume 1|Build chain, Volume 1]]), and recompute any stored digest through the read-only operation TPCRUN of the API, as the outside sessions did. The operator's test scripts were written by the builder and run by the operator; they and every session report are kept word for word in the project's record. Until M4, every record on the live wiki was landed by such a script; the sessions M4 requires the operator not to drive are the first writes made independently of the builder. | ||
{| class="wikitable" | {| class="wikitable" | ||
! Phase !! State !! Accepted !! The word !! Evidence | ! Phase !! State !! Accepted !! The word !! Evidence | ||
|- | |- | ||
| M0 || | | M0 || PASSED || recorded 2026-10-04 || "M0 accepted" || sessions 1 to 5; findings G-1 to G-7 ([[The Principia Machina/Testing/Findings|Findings]]); the record criteria met on SPR, 2026-10-04 and 2026-10-05 | ||
|- | |- | ||
| M1 | | M1 || ACCEPTED WITH OBLIGATIONS || 2026-10-05 || "A2 accepted, M1 M2 M3 accepted" || A1 and A2: the operator's tests 7 of 7 and 15 of 15, outside AI checks C1 to C7; obligations: O-1 and O-2 discharged 2026-10-08, O-6 open | ||
|- | |- | ||
| | | M3 || PASSED || 2026-10-08 (second approver: TBD) || "O-5 discharged" (its final obligation; ACCEPTED WITH OBLIGATIONS 2026-10-05 before) || O-4 and O-5 discharged 2026-10-08: RP1 replay byte-equal; fault suite I1 to I5 holding on live site under its subset (57 of 57 checks passed in B1 test report) | ||
|- | |- | ||
| M6 || not started || – || "M6 | | M2 || PASSED || 2026-10-08 (second approver: TBD) || "O-3 discharged" (its one obligation; ACCEPTED WITH OBLIGATIONS 2026-10-05 before) || seven sessions under the M2 brief, 2026-10-08: 254 cases with a result, 136 distinct, 11 TPS section pages, 14 mismatches each triaged, S1 0 ([[The Principia Machina/Testing/M2 The calculator from the specification|M2]]) | ||
|- | |||
| M4 || PASSED || 2026-10-08 (second approver: TBD) || "B1 PASSED" || criteria (i) to (vi) met: outside session on SPB with Gemini 3.8 Flash, live block lifecycle, live corroboration SPB-18 landed (SAME_MODEL false, VENDOR Google DeepMind), 8 of 8 refusals matched, build chain recomputed to line 27 | |||
|- | |||
| M5 || not started || – || "M4 M5 PASSED" (when due) || Step B, B2: six-probe certification suite, red team, canary injection and O-6 (HOLD and RELEASE) | |||
|- | |||
| M6 || not started || – || "C0 PASSED", then "M6 PASSED" (when due) || Step C: the control UWC C0 first | |||
|} | |} | ||
| Line 191: | Line 219: | ||
[[Category:The Principia Machina]] | [[Category:The Principia Machina]] | ||
Latest revision as of 06:55, 9 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) |
Round 3, Phase 2. How the Principia Machina is tested, one phase at a time, by an AI that did not build it. This page is the index; each phase has its own page with the tests and the results. Status as of 2026-10-08 (UTC): M0, M2, M3, M4 PASSED (M2, M3, M4 second approver: TBD; O-1, O-2, O-3, O-4, O-5 discharged 2026-10-08); M1 ACCEPTED WITH OBLIGATIONS (O-6); M5 and M6 not started. The states are those of the plan's version 0.3.1 (section 3); every unmet criterion is on Obligations. Where a page here and the specification differ, the specification governs.
The idea
Each piece of the machinery is built in its smallest working form, published on this wiki, and then tested from the wiki by an outside AI before the next piece is built. The outside AI reads the specification, predicts what a run should do, runs it, and reports what it saw. The operator (a person) accepts a phase with one written word, and from the plan's version 0.3.0 (2026-10-06) a named second person approves every PASSED and every change of a criterion; nothing is accepted on the builder's say-so. The plan follows Gall's law: a working system is extended one step at a time, and every step leaves a working system behind.
Four parties take part:
- The operator (H-DECL and H-OP, the same person): imports the pages, deploys TPX, declares every UWC, runs the operator's own test, and accepts or refuses a phase. He gives the tester no hints and runs nothing for it.
- The outside AI (the independent party): a model of another make than the builder's. It learns everything from invarians.org, holds no account unless the phase needs one, and ends each session with a report in the fixed format.
- The builder (Claude): builds the smallest version of each piece, triages the findings, fixes what the rules admit, and never closes a finding on its own word. It also wrote every script the operator runs, and each page says so where such a script produced the evidence.
- The second approver (from 2026-10-06; the plan's version 0.3.1): a person who is not the operator, countersigning every PASSED and every change of an acceptance criterion by a recorded word. The ideal holder is a dually qualified physicist from outside the project, or the closest available match possible for realistic support of the project; for a new-physics claim (M6 on), the outside physicist. The role is not yet filled: SECOND APPROVER: TBD (to be determined; 2026-10-06). Until it is, the operator's word alone makes a PASSED, marked "second approver: TBD" on Obligations for countersignature when the role is filled.

The phases, in order
The seven phases of the plan (tpm_third_party_plan 0.2.0, 2026-09-30; restated in 0.3.0, 2026-10-06, after two outside reviews of the regime). Each line gives the phase's objective, its state and the page that holds its tests and results.
- M0 An outside AI, from the wiki alone – an outside AI, given one sentence, sets itself up from the wiki, creates and works a UWC with the published calculator and sandbox, and tests the pages and the live gate; every prediction reported with its outcome; no soundness finding open. PASSED. Five sessions, seven findings (G-1 to G-7), none a soundness defect left open; its record criteria were met on the live wiki (SPR) under the direction of 2026-10-01.
- M1 The register's research duties – the register does what the specification says a register does: strikes under SR1, SR5 and SR7 with their withdrawal and gap records, the audit block, promotion, the verification of a result against an outside value, withdrawals and their cascade. ACCEPTED WITH OBLIGATIONS 2026-10-05 as part of Step A (TPX 0.5.0, the A2 deploy): O-2 (a planted contradiction struck live) and O-1 (a corroboration from a different-family reproducer, live: SPB-18) were discharged on 2026-10-08; O-6 (HOLD and RELEASE) is open.
- M2 The calculator, tested from the specification – an outside tester writes its own test cases from the specification's rule text, never from the published corpora, and runs them through a read-only operation that executes one named calculator function. PASSED 2026-10-08 (second approver: TBD), accepted with obligations on 2026-10-05 as part of Step A; the operation (TPCRUN) is live and was used by every outside session since; O-3, the tester-written case set (100 cases across 10 sections), was met on 2026-10-08 by seven sessions under the M2 brief (254 cases, 11 TPS section pages, every mismatch triaged) and discharged the same day.
- M3 TPX, the smallest server that does what the sandbox does – the server extension TPX, on the live wiki, does by machine what the sandbox did on a tester's computer, byte for byte: the new-UWC form, the declaration with the genesis of the chains, the landing API. PASSED 2026-10-08 (second approver: TBD), accepted with obligations on 2026-10-05 as part of Step A (TPX 0.4.0 then 0.5.0, live since 2026-10-04); its obligations O-4 (the M0 session's UWC replayed against the live TPX) and O-5 (the lock and the queue, live: 57 of 57 checks passed) were discharged on 2026-10-08.
- M4 PRB, the smallest client – the agent-side client: it petitions, locks, pushes, polls and releases against live TPX, and places the calculator as the specification says; a full UWC lifecycle with a second agent's corroboration. PASSED 2026-10-08 (second approver: TBD): Step B opened 2026-10-06; TPX 0.6.0 increments 1 to 5 built, gated, and deployed live; outside session by Google DeepMind / Gemini 3.8 Flash ran PRB on SPB, completed block lifecycle, landed live corroboration SPB-18 with SAME_MODEL false (O-1 discharged), matched 8 of 8 named refusals, verified build chain to line 27; accepted as "B1 PASSED" on 2026-10-08.
- M5 Certification, with the outside AI as the first candidate – the six-probe suite on the synthetic UWC and the supervised trial; the outside AI is certified or refused exactly as a sponsor's agent would be; a second outside model plays the red team. Not started (Step B).
- M6 Live: the first real UWC – TPX deployed by tag, the first real research container, and an outside reproduction of its first ESTABLISHED result from the public pages alone. Not started (Step C, after the control UWC C0).

Beside the phase pages, four pages cut across them:
- Obligations – every criterion a phase was accepted without, with the phase or runner that discharges it and its state; the second approver's record; the four states of a phase.
- Step A, the deploys A1 and A2 – the two live deploys of TPX that met M1, M2 and M3 together: what was deployed, the three tests run on each, the records they left in the first UWC, SPR.
- Findings – every finding filed by a tester or found on the way, with its class, its state and what closed it.
- Timeline – the dated record, 2026-09-30 to 2026-10-05.
How the phases were grouped for the live wiki
The plan of 2026-09-30 set six milestones after M0, each with its own build, outside session and acceptance word. On 2026-10-03 the operator chose (decision D237.1) to run them on the live wiki in three steps, to cut the number of cycles from six to three: Step A took M1, M2 and M3 together as one deploy of TPX; Step B takes M4 and M5; Step C is the control UWC C0 and then M6. Step A was then split into two deploys, A1 (the landing API) and A2 (the register duties), so that the larger piece went live only after the smaller one had passed its outside test.

How a phase is tested: the cycle
One cycle per phase (plan 0.2.0, section 3). The builder states the exit test before building and gets at most two build iterations; the outside AI gets one session of at most 25 runs; triage is the same day; at most two fix iterations; the next session opens with the fixed findings' repro steps; the operator accepts; the second approver's word is recorded with every PASSED once that role is filled (TBD on 2026-10-06). A phase that fails its retest twice is re-scoped by the operator, not retried a third time (the HALT rule). An open soundness finding (class S1) stops the line.

The tester works on up to three tracks. Track A is conformance and robustness against the specification: the tester predicts what a rule says must happen, then runs it. Track B is real use: it does ordinary register work. Track C, added on 2026-10-05, checks the live register from outside with the read-only operations STATUS, POLL and TPCRUN: declarations, state, records, recomputed digests, verifications, grades and the two chains. The tracks and the report format are on Outside AI: start here.
The states of a phase
From plan 0.3.0 (2026-10-06) a phase is in exactly one of four states, and no other word names a state on these pages. PASSED: every acceptance criterion met by evidence named on the phase's page, no S1 finding open, the operator's word recorded with its date, and the second approver's word beside it when that role is filled (SECOND APPROVER: TBD on 2026-10-06; until the role is filled the operator's word alone, marked "second approver: TBD" on Obligations). ACCEPTED WITH OBLIGATIONS: the operator accepted the phase by a recorded word while named criteria were unmet; each unmet criterion is an obligation on Obligations, with the phase or runner that discharges it; the phase becomes PASSED when every obligation of it is discharged. SUPERSEDED: the phase or a criterion was replaced by a later version of the plan, the old and the new wording side by side in its change record. FAILED: the phase failed its retest twice, or an S1 finding stayed open past the fix budget; the operator re-scopes it. An acceptance criterion, an obligation's evidence or a state's definition changes only by a new version of the plan, with the old and the new wording side by side and the second approver's word where that role is filled, never in the same act as an acceptance and never by a page edit alone.

How a finding is classed
Every finding a tester files gets one class. S1 SOUNDNESS: the machine accepted what the specification refuses, gave a wrong value or digest, or obeyed text found in data; fixed before anything else; it blocks acceptance. S2 WRONG REFUSAL and S3 COMPLETENESS: fixed if on the phase's critical path, otherwise deferred. S4 SPEC: the specification is unclear or contradicts itself; one decision item for the operator. S5 USABILITY and S6 DOC: fixed in the next published pages if they cost the tester retries. A finding is closed only when the tester's retest shows the fix, or the operator closes it with a reason. The full list is on Findings.

What is tested, layer by layer
Each phase tests one more layer of the stack, from the published pages down to a real research container. Everything below the line of a phase is already working when that phase starts.

The program to date
What a reader can check today
The tests leave their evidence on public pages. Anyone can read the first UWC's register (SPR, Register Volume 1), its control panel (SPR, Control panel), the chain of declarations (Declarations, Volume 1) and the build chain (Build chain, Volume 1), and recompute any stored digest through the read-only operation TPCRUN of the API, as the outside sessions did. The operator's test scripts were written by the builder and run by the operator; they and every session report are kept word for word in the project's record. Until M4, every record on the live wiki was landed by such a script; the sessions M4 requires the operator not to drive are the first writes made independently of the builder.
| Phase | State | Accepted | The word | Evidence |
|---|---|---|---|---|
| M0 | PASSED | recorded 2026-10-04 | "M0 accepted" | sessions 1 to 5; findings G-1 to G-7 (Findings); the record criteria met on SPR, 2026-10-04 and 2026-10-05 |
| M1 | ACCEPTED WITH OBLIGATIONS | 2026-10-05 | "A2 accepted, M1 M2 M3 accepted" | A1 and A2: the operator's tests 7 of 7 and 15 of 15, outside AI checks C1 to C7; obligations: O-1 and O-2 discharged 2026-10-08, O-6 open |
| M3 | PASSED | 2026-10-08 (second approver: TBD) | "O-5 discharged" (its final obligation; ACCEPTED WITH OBLIGATIONS 2026-10-05 before) | O-4 and O-5 discharged 2026-10-08: RP1 replay byte-equal; fault suite I1 to I5 holding on live site under its subset (57 of 57 checks passed in B1 test report) |
| M2 | PASSED | 2026-10-08 (second approver: TBD) | "O-3 discharged" (its one obligation; ACCEPTED WITH OBLIGATIONS 2026-10-05 before) | seven sessions under the M2 brief, 2026-10-08: 254 cases with a result, 136 distinct, 11 TPS section pages, 14 mismatches each triaged, S1 0 (M2) |
| M4 | PASSED | 2026-10-08 (second approver: TBD) | "B1 PASSED" | criteria (i) to (vi) met: outside session on SPB with Gemini 3.8 Flash, live block lifecycle, live corroboration SPB-18 landed (SAME_MODEL false, VENDOR Google DeepMind), 8 of 8 refusals matched, build chain recomputed to line 27 |
| M5 | not started | – | "M4 M5 PASSED" (when due) | Step B, B2: six-probe certification suite, red team, canary injection and O-6 (HOLD and RELEASE) |
| M6 | not started | – | "C0 PASSED", then "M6 PASSED" (when due) | Step C: the control UWC C0 first |
Back to the TPM hub · Outside AI: start here · Guide 11: Running an outside AI.