Judge machines with the node-engine that knows unknown and knows (issue 1024, ADR 0422)
mesh/merge-gate head 34197afa0181 merged into trunk c43772fd94eb — pass: builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus…
mesh/repo-check head 34197afa0181 merged into trunk c43772fd94eb — pass: its merge-check.sh passed
mesh/delivery delivered
mesh/merge-gate head 34197afa0181 merged into trunk c43772fd94eb — pass: builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus…
mesh/repo-check head 34197afa0181 merged into trunk c43772fd94eb — pass: its merge-check.sh passed
mesh/delivery delivered
The gate composes every machine with the node-engine's own validator, vendored at mesh-host of 2026-10-15, which refuses the `unknown` and `knows` keys mesh-host #117 added; every catalogue manifest using them was refused on every machine (mesh-catalog #349). The pin moves to #117's merge, 6469e8238443, delivered; only the declaration validator changes in vendor/. A test holds the gate to taking such a directory.
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
"github.com/novox/mesh-host/validate"
|
||||
)
|
||||
|
||||
// A directory or an archive that says how it reacts to files it does not know (novox/hq ADR 0422) is a
|
||||
// declaration the node-engine takes, so the gate, which judges every machine with the node-engine's own
|
||||
// validator, takes it too. Before the pin moved, every catalogue manifest using the words was refused
|
||||
// on every machine (issue 1024).
|
||||
func TestTheGateTakesADirectoryThatSaysHowItReacts(t *testing.T) {
|
||||
decl := fmt.Sprintf(`{"declaration":%d,"resources":[
|
||||
{"id":"xorg.config","type":"directory","path":"/home/a/.config/xorg","mode":"0755","owner":"a","unknown":"move-out","knows":["scripts/"]},
|
||||
{"id":"p10k.theme","type":"archive","source":"https://example.invalid/a.tar","digest":"sha256:`+
|
||||
"0000000000000000000000000000000000000000000000000000000000000000"+
|
||||
`","path":"/home/a/.local/share/powerlevel10k","unknown":"move-out"}]}`, validate.Version)
|
||||
if problems := validate.Declaration([]byte(decl)); len(problems) != 0 {
|
||||
t.Fatalf("refused: %q", problems)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user