Context
The migration in #7 converted existing computed/*.json files to the new leaf_metrics envelope by mapping the old flat metrics to the first inline leaf of each root product. This was correct for single-charm products (Discourse → discourse-k8s, NetBox → netbox-k8s, etc.).
For multi-charm products, only the first leaf has real metrics — the remaining leaves currently show insufficient_data:
| Root product |
First leaf (has data) |
Secondary leaves (no data yet) |
| Matrix |
synapse |
saml-integrator |
| Wazuh |
wazuh-server |
wazuh-indexer, wazuh-dashboard |
| Indico |
indico-operator |
indico-nginx-ingress (if applicable) |
What needs to happen
This resolves itself automatically once the nightly scorer runs against these products. When make score PRODUCT=matrix or the nightly GHA workflow runs, all leaf units will be scored and their metrics written to the leaf_metrics envelope.
No code changes are needed — this is a tracking issue to confirm secondary leaf data is populated after the next nightly run following merge of #7.
Acceptance criteria
- After the first nightly run post-merge,
computed/matrix.json has metrics for both synapse and saml-integrator
- After the first nightly run post-merge,
computed/wazuh.json has metrics for wazuh-server, wazuh-indexer, and wazuh-dashboard
- The UI shows real medals (not
insufficient_data) for all composed leaves of the above products
Notes
- No action needed before merge — this is a post-merge data verification task
- If the nightly run fails to populate secondary leaves, the scorer contract in
logic.py or the GHA invocation should be checked
Context
The migration in #7 converted existing
computed/*.jsonfiles to the newleaf_metricsenvelope by mapping the old flat metrics to the first inline leaf of each root product. This was correct for single-charm products (Discourse →discourse-k8s, NetBox →netbox-k8s, etc.).For multi-charm products, only the first leaf has real metrics — the remaining leaves currently show
insufficient_data:synapsesaml-integratorwazuh-serverwazuh-indexer,wazuh-dashboardindico-operatorindico-nginx-ingress(if applicable)What needs to happen
This resolves itself automatically once the nightly scorer runs against these products. When
make score PRODUCT=matrixor the nightly GHA workflow runs, all leaf units will be scored and their metrics written to theleaf_metricsenvelope.No code changes are needed — this is a tracking issue to confirm secondary leaf data is populated after the next nightly run following merge of #7.
Acceptance criteria
computed/matrix.jsonhas metrics for bothsynapseandsaml-integratorcomputed/wazuh.jsonhas metrics forwazuh-server,wazuh-indexer, andwazuh-dashboardinsufficient_data) for all composed leaves of the above productsNotes
logic.pyor the GHA invocation should be checked