Files
mesh-host/internal/nodegrant/testdata/node.json
T
jschoubben f6bda12a32 The node whole publishes its compositions and answers a candidate (H6)
ADR 0593 §6, §7, §9: the integration test runs the node agent against
the real bus under the grant the grants part composes for a node: it
publishes web's composition in composed-<node> with the digest its have
names, and answers compose-candidate for the indexer's candidate,
changing nothing. A node that cannot compose now answers unready, so
the checker counts it as no answer by the verdict and never by words.
The golden grant reads the indexer's candidates and verdicts as it
reads the builder's builds.

Claude-Session: https://claude.ai/code/session_01NcbgfJ9Gum47zkFKWRaovL
2026-11-02 18:39:12 +01:00

137 lines
6.7 KiB
JSON

{
"Publish": [
"$JS.ACK.NODES.NODE.>",
"$JS.API.CONSUMER.CREATE.KV_composed-NODE.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-config_resolved.*.$KV.mesh-config_resolved.NODE.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-delivery-assigner_candidates.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-delivery-assigner_placement.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-delivery-assigner_wants.*.$KV.mesh-delivery-assigner_wants.want.NODE.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-delivery-builder_builds.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-delivery-indexer_candidates.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-delivery-indexer_manifests.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-delivery-indexer_modules.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-delivery-indexer_verdicts.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-host_acts.*.$KV.mesh-host_acts.NODE.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-host_data.*.$KV.mesh-host_data.NODE.>",
"$JS.API.CONSUMER.CREATE.KV_mesh-host_health.*.$KV.mesh-host_health.NODE",
"$JS.API.CONSUMER.CREATE.KV_mesh-host_packages.*.$KV.mesh-host_packages.NODE",
"$JS.API.CONSUMER.CREATE.KV_mesh-provisioner_provisions.*.$KV.mesh-provisioner_provisions.NODE.>",
"$JS.API.CONSUMER.CREATE.KV_node-engine_have.*.$KV.node-engine_have.*.node",
"$JS.API.CONSUMER.CREATE.KV_node-engine_have.*.$KV.node-engine_have.NODE.>",
"$JS.API.CONSUMER.CREATE.OBJ_declaration-files-NODE.*.$O.declaration-files-NODE.C.*",
"$JS.API.CONSUMER.DELETE.KV_composed-NODE.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-config_resolved.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-delivery-assigner_candidates.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-delivery-assigner_placement.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-delivery-assigner_wants.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-delivery-builder_builds.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-delivery-indexer_candidates.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-delivery-indexer_manifests.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-delivery-indexer_modules.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-delivery-indexer_verdicts.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-host_acts.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-host_data.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-host_health.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-host_packages.>",
"$JS.API.CONSUMER.DELETE.KV_mesh-provisioner_provisions.>",
"$JS.API.CONSUMER.DELETE.KV_node-engine_have.>",
"$JS.API.CONSUMER.DELETE.OBJ_declaration-files-NODE.*",
"$JS.API.CONSUMER.INFO.NODES.NODE",
"$JS.API.DIRECT.GET.KV_composed-NODE.>",
"$JS.API.DIRECT.GET.KV_mesh-config_resolved.$KV.mesh-config_resolved.NODE.>",
"$JS.API.DIRECT.GET.KV_mesh-delivery-assigner_candidates.>",
"$JS.API.DIRECT.GET.KV_mesh-delivery-assigner_placement.>",
"$JS.API.DIRECT.GET.KV_mesh-delivery-assigner_wants.$KV.mesh-delivery-assigner_wants.want.NODE.>",
"$JS.API.DIRECT.GET.KV_mesh-delivery-builder_builds.>",
"$JS.API.DIRECT.GET.KV_mesh-delivery-indexer_candidates.>",
"$JS.API.DIRECT.GET.KV_mesh-delivery-indexer_manifests.>",
"$JS.API.DIRECT.GET.KV_mesh-delivery-indexer_modules.>",
"$JS.API.DIRECT.GET.KV_mesh-delivery-indexer_verdicts.>",
"$JS.API.DIRECT.GET.KV_mesh-host_acts.$KV.mesh-host_acts.NODE.>",
"$JS.API.DIRECT.GET.KV_mesh-host_data.$KV.mesh-host_data.NODE.>",
"$JS.API.DIRECT.GET.KV_mesh-host_health.$KV.mesh-host_health.NODE",
"$JS.API.DIRECT.GET.KV_mesh-host_packages.$KV.mesh-host_packages.NODE",
"$JS.API.DIRECT.GET.KV_mesh-provisioner_provisions.$KV.mesh-provisioner_provisions.NODE.>",
"$JS.API.DIRECT.GET.KV_node-engine_have.$KV.node-engine_have.*.node",
"$JS.API.DIRECT.GET.KV_node-engine_have.$KV.node-engine_have.NODE.>",
"$JS.API.DIRECT.GET.OBJ_declaration-files-NODE.$O.declaration-files-NODE.M.*",
"$JS.API.STREAM.INFO.KV_composed-NODE",
"$JS.API.STREAM.INFO.KV_mesh-config_resolved",
"$JS.API.STREAM.INFO.KV_mesh-delivery-assigner_candidates",
"$JS.API.STREAM.INFO.KV_mesh-delivery-assigner_placement",
"$JS.API.STREAM.INFO.KV_mesh-delivery-assigner_wants",
"$JS.API.STREAM.INFO.KV_mesh-delivery-builder_builds",
"$JS.API.STREAM.INFO.KV_mesh-delivery-indexer_candidates",
"$JS.API.STREAM.INFO.KV_mesh-delivery-indexer_manifests",
"$JS.API.STREAM.INFO.KV_mesh-delivery-indexer_modules",
"$JS.API.STREAM.INFO.KV_mesh-delivery-indexer_verdicts",
"$JS.API.STREAM.INFO.KV_mesh-host_acts",
"$JS.API.STREAM.INFO.KV_mesh-host_data",
"$JS.API.STREAM.INFO.KV_mesh-host_health",
"$JS.API.STREAM.INFO.KV_mesh-host_packages",
"$JS.API.STREAM.INFO.KV_mesh-provisioner_provisions",
"$JS.API.STREAM.INFO.KV_node-engine_have",
"$JS.FC.KV_composed-NODE.>",
"$JS.FC.KV_mesh-config_resolved.>",
"$JS.FC.KV_mesh-delivery-assigner_candidates.>",
"$JS.FC.KV_mesh-delivery-assigner_placement.>",
"$JS.FC.KV_mesh-delivery-assigner_wants.>",
"$JS.FC.KV_mesh-delivery-builder_builds.>",
"$JS.FC.KV_mesh-delivery-indexer_candidates.>",
"$JS.FC.KV_mesh-delivery-indexer_manifests.>",
"$JS.FC.KV_mesh-delivery-indexer_modules.>",
"$JS.FC.KV_mesh-delivery-indexer_verdicts.>",
"$JS.FC.KV_mesh-host_acts.>",
"$JS.FC.KV_mesh-host_data.>",
"$JS.FC.KV_mesh-host_health.>",
"$JS.FC.KV_mesh-host_packages.>",
"$JS.FC.KV_mesh-provisioner_provisions.>",
"$JS.FC.KV_node-engine_have.>",
"$JS.FC.OBJ_declaration-files-NODE.>",
"$KV.composed-NODE.>",
"$KV.mesh-host_acts.NODE.>",
"$KV.mesh-host_data.NODE.>",
"$KV.mesh-host_health.NODE",
"$KV.mesh-host_packages.NODE",
"$KV.node-engine_have.NODE.>",
"$SRV.INFO",
"$SRV.INFO.>",
"$SRV.PING",
"$SRV.PING.>",
"$SRV.PING.node-tools.NODE",
"mesh.control.NODE.>",
"mesh.seat.node-backup.call.backed-up.NODE.node~NODE",
"mesh.seat.node-backup.call.now.NODE.node~NODE",
"mesh.seat.node-backup.tool.backed-up.NODE",
"mesh.seat.node-backup.tool.now.NODE",
"mesh.seat.node-engine.event.*.NODE"
],
"PublishDeny": null,
"Subscribe": [
"$JS.EVENT.ADVISORY.STREAM.CREATED.KV_mesh-delivery-assigner_candidates",
"$JS.EVENT.ADVISORY.STREAM.CREATED.KV_mesh-delivery-assigner_placement",
"$SRV.INFO",
"$SRV.INFO.node-engine",
"$SRV.INFO.node-engine.>",
"$SRV.PING",
"$SRV.PING.node-engine",
"$SRV.PING.node-engine.>",
"$SRV.STATS",
"$SRV.STATS.node-engine",
"$SRV.STATS.node-engine.>",
"_DELIVER.NODE",
"_DELIVER.NODE.>",
"_INBOX.node.NODE.>",
"mesh.mod.restic.event.backed-up",
"mesh.node.NODE.ask.access-act",
"mesh.node.NODE.ask.hand-over",
"mesh.node.NODE.ask.judge-directories",
"mesh.node.NODE.ask.move-secret",
"mesh.node.NODE.ask.report",
"mesh.node.NODE.ask.setuid-search",
"mesh.node.NODE.declare",
"mesh.seat.node-engine.call.*.NODE.*",
"mesh.seat.node-engine.tool.*.NODE"
],
"AllowResponses": true
}