A run-once step leaves nothing to ask, and V4 asked anyway
V4's first run reported a working mesh as broken: it asserted that lavinmq's run-once bootstrap container existed, and the host removes an exited run-once container on purpose — so a later apply is not confused by a stopped one, keeping the record that it ran in its own store instead. So the check asserted the opposite of correct behaviour. The step had run; it is why the broker came up configured. Counted as unverified now rather than assumed good. What would verify a step is the host's own record of having run it, and this walks the machine rather than the host — so the honest answer is that this check says nothing about steps, and it now says so. Claude-Session: https://claude.ai/code/session_01D6qtiYU3P9jk3pnAXyAFyx
This commit is contained in:
+24
-17
@@ -1,13 +1,13 @@
|
||||
{
|
||||
"scenario": "one-node-mesh",
|
||||
"established": 20,
|
||||
"of": 21,
|
||||
"established": 19,
|
||||
"of": 22,
|
||||
"steps": [
|
||||
{
|
||||
"code": "R1",
|
||||
"title": "a bare machine becomes a mesh of one, raised by the installer",
|
||||
"status": "pass",
|
||||
"seconds": 145,
|
||||
"seconds": 140,
|
||||
"why": ""
|
||||
},
|
||||
{
|
||||
@@ -56,21 +56,21 @@
|
||||
"code": "P1",
|
||||
"title": "the mesh builds the shared base from source",
|
||||
"status": "pass",
|
||||
"seconds": 72,
|
||||
"seconds": 87,
|
||||
"why": ""
|
||||
},
|
||||
{
|
||||
"code": "P2",
|
||||
"title": "the mesh builds and runs a store of its own",
|
||||
"status": "pass",
|
||||
"seconds": 43,
|
||||
"seconds": 39,
|
||||
"why": ""
|
||||
},
|
||||
{
|
||||
"code": "P3",
|
||||
"title": "the mesh builds and runs its own catalogue",
|
||||
"status": "pass",
|
||||
"seconds": 26,
|
||||
"seconds": 32,
|
||||
"why": ""
|
||||
},
|
||||
{
|
||||
@@ -105,14 +105,14 @@
|
||||
"code": "U2",
|
||||
"title": "the mesh runs a broker for that module to talk to",
|
||||
"status": "pass",
|
||||
"seconds": 20,
|
||||
"seconds": 31,
|
||||
"why": ""
|
||||
},
|
||||
{
|
||||
"code": "U3",
|
||||
"title": "the anchor runs the module the mesh built",
|
||||
"status": "pass",
|
||||
"seconds": 6,
|
||||
"seconds": 7,
|
||||
"why": ""
|
||||
},
|
||||
{
|
||||
@@ -125,9 +125,9 @@
|
||||
{
|
||||
"code": "V2",
|
||||
"title": "the catalogue holds every module this mesh built",
|
||||
"status": "fail",
|
||||
"seconds": 1,
|
||||
"why": "the catalogue does not hold mesh-tools, postgres — the mesh built them and its own record has no trace of it (novox/hq issue 050):\n{\"modules\":[{\"module\":\"amqp-ping\",\"commit\":\"e0c92195d4240841bfcf4b4a9ef869d5afeca331\",\"repository\":\"https://git.novox.be/novox/mesh-catalog.git\",\"path\":\"modules/amqp-ping\"},{\"module\":\"lavinmq\",\"commit\":\"e0c92195d4240841bfcf4b4a9ef869d5afeca331\",\"repository\":\"https://git.novox.be/novox/mesh-catalog.git\",\"path\":\"modules/lavinmq\"},{\"module\":\"mesh-control\",\"commit\":\"5062c36fc9efe159aa9706c0ca2c873351ef1ce0\",\"repository\":\"https://git.novox.be/novox/mesh-control.git\",\"path\":\"\"}]}\n\n+ actual - expected\n\n+ [\n+ 'mesh-tools',\n+ 'postgres'\n+ ]\n- []\n"
|
||||
"status": "pass",
|
||||
"seconds": 3,
|
||||
"why": ""
|
||||
},
|
||||
{
|
||||
"code": "V3",
|
||||
@@ -136,19 +136,26 @@
|
||||
"seconds": 1,
|
||||
"why": ""
|
||||
},
|
||||
{
|
||||
"code": "V4",
|
||||
"title": "every resource the mesh declared is true on the machine",
|
||||
"status": "fail",
|
||||
"seconds": 13,
|
||||
"why": "the machine is not what the mesh said it should be:\n container lavinmq.bootstrap: the container lavinmq-bootstrap was never created\n+ actual - expected\n\n+ [\n+ 'container lavinmq.bootstrap: the container lavinmq-bootstrap was never created'\n+ ]\n- []\n"
|
||||
},
|
||||
{
|
||||
"code": "E1",
|
||||
"title": "a change to a module's source reaches the machine on its own",
|
||||
"status": "pass",
|
||||
"seconds": 14,
|
||||
"why": ""
|
||||
"status": "skip",
|
||||
"seconds": 0,
|
||||
"why": "not attempted — V4 (every resource the mesh declared is true on the machine) did not succeed"
|
||||
},
|
||||
{
|
||||
"code": "E2",
|
||||
"title": "the mesh comes back after the machine reboots",
|
||||
"status": "pass",
|
||||
"seconds": 32,
|
||||
"why": ""
|
||||
"status": "skip",
|
||||
"seconds": 0,
|
||||
"why": "not attempted — E1 (a change to a module's source reaches the machine on its own) did not succeed"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user