Files
mesh-catalog/modules/mesh-conditions/module.json
T
jschoubben 0bd978f4ee JUDGE (ADR 0348 §5, §557): the keeper's two settings are marked runtime, and mesh-conditions requires the catalog client it imports
ask-bound-seconds and view-waits-seconds are read by the keeper's own code at its start (settings.go ReadSettings, stdio.Config), so the manifest marks them runtime: true; go.mod requires meshcatalogclient at the zero version, which cmd/mesh-conditions/branches.go imports (the requiredmodules check).

Builds: design 47 G §557

Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
2026-11-11 22:44:29 +01:00

109 lines
2.5 KiB
JSON

{
"module": "mesh-conditions",
"version": "0.1",
"runs-as": "mesh-conditions",
"claims": [
{
"name": "mesh-conditions",
"scope": "mesh",
"serves": [
"conditions",
"silence",
"resync"
]
}
],
"reads": [
"mesh-healers.attempts",
"node-engine.have"
],
"invokes": [
"mesh-delivery-assigner.assigner_read_wants",
"mesh-delivery-assigner.assigner_read_assignments",
"seat:mesh-hand-acts.hand-act",
"seat:mesh-wants.revision",
"seat:mesh-catalog.registrations",
"seat:mesh-catalog.revision",
"seat:mesh-broker.list"
],
"consumes": [
"mesh-delivery-assigner.views.wants",
"mesh-delivery-assigner.views.assignments",
"*.finding-written",
"*.finding-cleared",
"*.findings-stated",
"mesh-watchdogs.machine-away",
"mesh-watchdogs.machine-back",
"mesh-wants.assignment-revision",
"mesh-catalog.registration-changed",
"mesh-catalog.catalog-revision",
"mesh-broker.created",
"node-engine.running"
],
"state": [
"conditions",
{
"name": "history",
"ttl-seconds": 7776000
},
"held",
"findings-views",
{
"name": "bounds",
"key-ttl": true
}
],
"config": {
"ask-bound-seconds": {
"type": "number",
"description": "How long an observer has to state its findings after an ask, in seconds, before the keeper raises findings-unstated for it: 300 is five minutes.",
"minimum": 1,
"default": 300,
"runtime": true
},
"view-waits-seconds": {
"type": "number",
"description": "How long a first view may stay unanswered, in seconds, before the keeper raises view-waits for it: 300 is five minutes.",
"minimum": 1,
"default": 300,
"runtime": true
}
},
"own-secrets": {
"broker": "${dir:state}/broker"
},
"secrets-owner": "mesh-conditions",
"resources": [
{
"id": "account",
"type": "user",
"name": "mesh-conditions",
"shell": "/usr/bin/nologin",
"home": "/var/lib/mesh-conditions"
},
{
"id": "state",
"type": "directory",
"mode": "0700",
"owner": "mesh-conditions",
"place": ".",
"unknown": "program"
}
],
"build": {
"artifacts": [
{
"name": "tools",
"kind": "bundle",
"language": "go",
"system": "arch",
"from": "cmd/mesh-conditions",
"binary": "mesh-conditions",
"loads": [
"mesh-conditions"
]
}
]
}
}