Files
mesh-delivery/modules/mesh-delivery-indexer/module.json
T
jschoubben aa647d0eda DLV-I17, I18, I19, I20: the indexer keeps every contracts module's seat definitions on the bus
Design 26 and ADR 0608 §2-§4: the definitions are read at each trunk merge and pull request head
through the forge's get-file tool, parsed by mesh-sdk seatdef and kept in the state seat-definitions
by seat and source; seat-definition-changed is said, kept seven days, only when a digest moved. A
trunk definition that does not parse leaves the trunk's entry and writes seat-definition-unparsed;
a pull request's entries go when it closes or merges. A trunk build end naming out-of-step files
writes generated-types-out-of-step, cleared only by a clean build of the same module; the checker's
verdict keeps a pull request's. Tools indexer_seat_definition, indexer_seat_definitions_again (a hand
act) and indexer_out_of_step.

Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig
2026-11-04 14:18:17 +01:00

167 lines
4.4 KiB
JSON

{
"module": "mesh-delivery-indexer",
"version": "1",
"slug": "indexer",
"runs-as": "mesh-delivery-indexer",
"claims": [
{
"name": "mesh-catalog",
"scope": "mesh",
"serves": [
"modules",
"module",
"provides",
"dependents"
]
}
],
"tools": [
"indexer_take_in",
"indexer_old_sections",
"indexer_verdicts",
"indexer_judge",
"manifests",
"modules",
"verdicts",
"indexer_read_manifests",
"indexer_read_modules",
"indexer_read_predefined",
"indexer_read_config_candidates",
"indexer_read_candidates",
"indexer_read_packages",
"indexer_read_graph",
"indexer_read_heard",
"indexer_read_taken",
"indexer_read_findings",
"indexer_first_views",
"indexer_first_view_again",
"indexer_config_readers",
"indexer_bus_state",
"indexer_requirements",
"indexer_package_users",
"indexer_say_accepted",
"indexer_seat_definition",
"indexer_seat_definitions_again",
"indexer_out_of_step"
],
"consumes": [
"go-package-registry.published",
"mesh-build-go.toolchain.reported",
"mesh-build-node.toolchain.reported",
"mesh-delivery-assigner.views.placement",
"mesh-delivery-builder.version.numbered",
"mesh-delivery-checker.preview.written",
"mesh-delivery-checker.verdict",
"mesh-delivery-forge-bridge.forge.**",
"npm-package-registry.published"
],
"state": [
{ "name": "candidates", "history": 10 },
{ "name": "heard", "history": 64 },
{ "name": "manifests", "history": 1 },
{ "name": "modules", "history": 20 },
{ "name": "predefined", "history": 5 },
{ "name": "config-candidates", "history": 5 },
{ "name": "taken", "history": 1 },
{ "name": "takeins", "history": 1 },
{ "name": "verdicts", "history": 5 },
{ "name": "oldsections", "history": 1 },
{ "name": "packages", "history": 5 },
{ "name": "graph", "history": 5 },
{ "name": "view-marks", "history": 1 },
{ "name": "findings", "history": 5 },
{ "name": "first-views", "history": 1 },
{ "name": "requirements", "history": 5 },
{ "name": "seat-definitions", "history": 5 }
],
"streams": [
{ "name": "indexer-views", "events": ["views.**"], "max-age-days": 7, "max-mib": 256 },
{ "name": "indexer-seat-definitions", "events": ["seat-definition-changed"], "max-age-days": 7 }
],
"emits": [
"manifest-refused",
"manifest-accepted"
],
"reads": [
"mesh-build-go.toolchains",
"mesh-build-node.toolchains",
"mesh-delivery-builder.build-log",
"mesh-delivery-checker.previews",
"mesh-delivery-gate.source"
],
"invokes": [
"mesh-delivery-assigner.placement",
"gitea.gitea_commit_trees",
"gitea.gitea_contains",
"gitea.gitea_get_file",
"gitea.gitea_open_pulls",
"seat:node-engine.composition",
"seat:mesh-hand-acts.hand-act"
],
"own-secrets": {
"broker": "${dir:state}/broker"
},
"secrets-owner": "mesh-delivery-indexer",
"resources": [
{
"id": "account",
"type": "user",
"name": "mesh-delivery-indexer",
"shell": "/usr/bin/nologin",
"home": "/var/lib/mesh-delivery-indexer"
},
{
"id": "state",
"type": "directory",
"mode": "0700",
"owner": "mesh-delivery-indexer",
"place": ".",
"unknown": "program"
},
{
"id": "indexer",
"type": "process",
"name": "mesh-delivery-indexer",
"artifact": "program",
"run": [
"./mesh-delivery-indexer"
],
"env": {
"MESH_BROKER_FILE": "${dir:state}/broker"
},
"user": "mesh-delivery-indexer",
"health": {
"kind": "unit"
}
}
],
"build": {
"artifacts": [
{
"name": "program",
"kind": "bundle",
"language": "go",
"system": "arch",
"from": "cmd/mesh-delivery-indexer",
"binary": "mesh-delivery-indexer"
},
{
"name": "tools",
"kind": "bundle",
"language": "go",
"system": "arch",
"from": "cmd/mesh-delivery-indexer-tools",
"binary": "mesh-delivery-indexer-tools",
"loads": [
"mesh-delivery-indexer-tools"
],
"env": {
"MESH_VIEW_CALLERS_MANIFESTS": "mesh-grants,node-tools,mesh-delivery-assigner",
"MESH_VIEW_CALLERS_MODULES": "mesh-grants,node-tools,mesh-delivery-assigner",
"MESH_VIEW_CALLERS_VERDICTS": "mesh-grants"
}
}
]
}
}