DLV-M6r5: the judge takes a claimed seat's module with tools of its own beside its seat's verbs

The lead's ruling 5: one row in the judge's table, the enrolment's shape (a claim serving the seat's
verbs and the first-view tools in its own tools list); the judge accepts it as it stands.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
This commit is contained in:
2026-11-04 14:14:37 +01:00
parent a6fdb121fe
commit c6c66873f4
@@ -35,6 +35,13 @@ func TestTheJudge(t *testing.T) {
"two": `{"module":"two","version":"1","seats":[{"name":"thing","scope":"mesh"}]}`, "two": `{"module":"two","version":"1","seats":[{"name":"thing","scope":"mesh"}]}`,
"ok": `{"module":"ok","version":"1"}`}, "ok": `{"module":"ok","version":"1"}`},
want: map[string]string{"one": "already declares", "two": "already declares"}}, want: map[string]string{"one": "already declares", "two": "already declares"}},
// The lead's ruling 5 for A2h: a module that claims a seat and serves its verbs keeps tools of its own beside them
// (the enrolment's first-view tools, DLV-M6), and the judge takes it.
{name: "a claimed seat's module with tools of its own",
raws: map[string]string{
"def": `{"module":"def","version":"1","seats":[{"name":"enrolment","scope":"mesh","serves":["issue","again"]}]}`,
"enrolment": `{"module":"enrolment","version":"1","claims":[{"name":"enrolment","scope":"mesh","serves":["issue","again"]}],` +
`"tools":["enrolment_first_views","enrolment_first_view_again"]}`}},
} { } {
raws := map[string][]byte{} raws := map[string][]byte{}
for k, v := range row.raws { for k, v := range row.raws {