§610: the runner's seat definition drops every verb's named callers
Builds: design 47 G §610, A-75 Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
This commit is contained in:
@@ -16,10 +16,6 @@
|
||||
{
|
||||
"name": "run",
|
||||
"description": "The run on request of one or more members, each a module at a named commit, through their pipelines; delivers nothing, replacing the checker's try (ADR 0666 section 18). Says run-started.",
|
||||
"callers": [
|
||||
"sessions",
|
||||
"operator"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -61,10 +57,6 @@
|
||||
{
|
||||
"name": "start",
|
||||
"description": "A delivering pipeline for a watched branch's head, by hand; written in the hand-act log.",
|
||||
"callers": [
|
||||
"operator",
|
||||
"healers"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -101,11 +93,6 @@
|
||||
{
|
||||
"name": "show",
|
||||
"description": "One pipeline whole: its steps, its step log and its outputs, with the stores' fill. Reads only.",
|
||||
"callers": [
|
||||
"persons",
|
||||
"sessions",
|
||||
"healers"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -153,11 +140,6 @@
|
||||
{
|
||||
"name": "list",
|
||||
"description": "The pipelines and runs of a module, a branch or a commit, newest first, with the store's fill. Reads only.",
|
||||
"callers": [
|
||||
"persons",
|
||||
"sessions",
|
||||
"healers"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -200,11 +182,6 @@
|
||||
{
|
||||
"name": "stands",
|
||||
"description": "What stands still, and since when: each step not ended and each wait held. Reads only.",
|
||||
"callers": [
|
||||
"persons",
|
||||
"sessions",
|
||||
"healers"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {}
|
||||
@@ -228,11 +205,6 @@
|
||||
{
|
||||
"name": "why-carried",
|
||||
"description": "Where a step's result was carried from, with the kept results it rests on. Reads only.",
|
||||
"callers": [
|
||||
"persons",
|
||||
"sessions",
|
||||
"healers"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -279,11 +251,6 @@
|
||||
{
|
||||
"name": "kept",
|
||||
"description": "The kept results, by digest, package or level, with the store's fill. Reads only.",
|
||||
"callers": [
|
||||
"persons",
|
||||
"sessions",
|
||||
"healers"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -320,9 +287,6 @@
|
||||
{
|
||||
"name": "review",
|
||||
"description": "A code review's result for a commit and fingerprint, taken from the reviewer's account and refused from the commit's author (ADR 0666 section 22).",
|
||||
"callers": [
|
||||
"sessions"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -373,10 +337,6 @@
|
||||
{
|
||||
"name": "rerun",
|
||||
"description": "One step again; its step-ended says it is a rerun and the caller the runtime proved. Written in the hand-act log.",
|
||||
"callers": [
|
||||
"operator",
|
||||
"healers"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -428,9 +388,6 @@
|
||||
{
|
||||
"name": "accept",
|
||||
"description": "A failed optional step accepted, with who and why, in the hand-act log.",
|
||||
"callers": [
|
||||
"operator"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -479,10 +436,6 @@
|
||||
{
|
||||
"name": "cancel",
|
||||
"description": "A pipeline ended cancelled, its waiting asks dropped by each build seat's drop. Written in the hand-act log.",
|
||||
"callers": [
|
||||
"operator",
|
||||
"healers"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -516,9 +469,6 @@
|
||||
{
|
||||
"name": "ask-again",
|
||||
"description": "A declined approval step asked again (ADR 0666 section 10). Written in the hand-act log.",
|
||||
"callers": [
|
||||
"operator"
|
||||
],
|
||||
"input": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package pipeline_test
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"os"
|
||||
"slices"
|
||||
"testing"
|
||||
@@ -83,6 +84,31 @@ func TestManifest(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// §610, A-75: no verb of the runner's definition names its callers, so the class's default holds for each.
|
||||
func TestNoVerbNamesItsCallers(t *testing.T) {
|
||||
raw, err := os.ReadFile("../../contracts/seats/mesh-pipeline-runner/seat.json")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
var def struct {
|
||||
Verbs []struct {
|
||||
Name string `json:"name"`
|
||||
Callers []string `json:"callers"`
|
||||
} `json:"verbs"`
|
||||
}
|
||||
if err := json.Unmarshal(raw, &def); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if len(def.Verbs) == 0 {
|
||||
t.Fatal("the definition holds no verb")
|
||||
}
|
||||
for _, v := range def.Verbs {
|
||||
if len(v.Callers) != 0 {
|
||||
t.Errorf("the verb %s names callers %v; from G no verb does (§610)", v.Name, v.Callers)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func equalSets(a, b []string) bool {
|
||||
x, y := slices.Clone(a), slices.Clone(b)
|
||||
slices.Sort(x)
|
||||
|
||||
Reference in New Issue
Block a user