diff --git a/modules/mesh-conditions/cmd/mesh-conditions/manifest_test.go b/modules/mesh-conditions/cmd/mesh-conditions/manifest_test.go index 62f46aa07..627dfec9c 100644 --- a/modules/mesh-conditions/cmd/mesh-conditions/manifest_test.go +++ b/modules/mesh-conditions/cmd/mesh-conditions/manifest_test.go @@ -27,6 +27,12 @@ func TestTheManifestSaysWhatTheCodeDoes(t *testing.T) { if err != nil { t.Fatalf("the manifest does not decode: %v", err) } + // Every setting the keeper reads itself is marked runtime (ADR 0348 ยง5): no file places it. + for _, key := range []string{SettingAskBound, SettingViewWaits, SettingHandover} { + if d, ok := m.Settings[key]; !ok || !d.Runtime { + t.Errorf("the setting %s the keeper reads itself is not declared runtime: %+v", key, d) + } + } catalogue.UseSeats(catalogue.SeatsFromDefinitions(seatlisttest.Definitions())) def, _ := catalogue.SeatNamed(Seat) if m.Module != Module || m.RunsAs != Module || len(m.Claims) != 1 || m.Claims[0].Name != Seat || diff --git a/modules/mesh-conditions/module.json b/modules/mesh-conditions/module.json index 2036a41b8..f8b9ca440 100644 --- a/modules/mesh-conditions/module.json +++ b/modules/mesh-conditions/module.json @@ -65,7 +65,8 @@ "type": "number", "description": "How long a failed head stays its commit's author's, in seconds, before the keeper hands its condition to the operator: 7200 is two hours.", "minimum": 1, - "default": 7200 + "default": 7200, + "runtime": true }, "view-waits-seconds": { "type": "number",