From 9f7476752bffbbce8b956e37d5c922fea7bfb787 Mon Sep 17 00:00:00 2001 From: "marcin p. joachimiak" <4625870+realmarcin@users.noreply.github.com> Date: Tue, 6 Oct 2026 07:12:54 -0700 Subject: [PATCH] Bound wet-up viral mortality and groundwater genomic causal claims --- ...sland_Soil_WetUp_Virus_Host_Community.html | 107 +- ...ter_Elusimicrobia_Diverse_Metabolisms.html | 135 +- .../2026-10-06T135836Z-codex-64198f.yaml | 24 + .../2026-10-06T135837Z-codex-b5b944.yaml | 25 + ...sland_Soil_WetUp_Virus_Host_Community.yaml | 139 +- ...ter_Elusimicrobia_Diverse_Metabolisms.yaml | 166 ++- reports/causal_graph_review/README.md | 15 + .../adversarial-review-20261006-batch49.yaml | 141 ++ .../20261006-wetup-elusimicrobia-batch49.yaml | 192 +++ reports/causal_graph_review/inventory.tsv | 4 +- reports/causal_graph_review/summary.json | 8 +- .../validation-20261006-batch49.json | 1137 +++++++++++++++++ tests/test_causal_review_batch49.py | 117 ++ ...est_community_level_connectivity_credit.py | 3 +- tests/test_participating_taxa.py | 2 + 15 files changed, 2012 insertions(+), 203 deletions(-) create mode 100644 history/records/Grassland_Soil_WetUp_Virus_Host_Community/2026-10-06T135836Z-codex-64198f.yaml create mode 100644 history/records/Groundwater_Elusimicrobia_Diverse_Metabolisms/2026-10-06T135837Z-codex-b5b944.yaml create mode 100644 reports/causal_graph_review/adversarial-review-20261006-batch49.yaml create mode 100644 reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml create mode 100644 reports/causal_graph_review/validation-20261006-batch49.json create mode 100644 tests/test_causal_review_batch49.py diff --git a/docs/communities/Grassland_Soil_WetUp_Virus_Host_Community.html b/docs/communities/Grassland_Soil_WetUp_Virus_Host_Community.html index cb655f77a..d001bc8a8 100644 --- a/docs/communities/Grassland_Soil_WetUp_Virus_Host_Community.html +++ b/docs/communities/Grassland_Soil_WetUp_Virus_Host_Community.html @@ -570,13 +570,20 @@

Ecological Interactions

-

Lytic Virus Activity Dominates Wet-Up Response

- PREDATION +

Lytic-Dominated Viral Response Inferred After Wet-Up

-

After wet-up, lytic rather than lysogenic cycles dominate, with viral richness declining by 50 percent within 24 hours and viral biomass increasing four-fold within one week.

+

Laboratory wet-up microcosms showed viral richness loss and increasing viral-DNA biomass proxies, with isotope incorporation supporting active viral DNA replication. The authors infer a predominantly lytic response from these measurements and lifestyle markers. This positive evidence does not exclude nonintegrating temperate lifestyles or directly count every productive infection. The abstract reports a 50% richness decline within 24 h and a four-fold biomass increase within one week; the main Results summarize richness loss over the week. Those time-window summaries need not conflict; no independent reconstruction of the time course is claimed here.

+ + +

Participating Taxa: + soil DNA viruses (virions), + + grassland soil bacterial hosts + +

@@ -599,8 +606,8 @@

Lytic Virus Activity Dominates Wet-Up Response

Downstream Effects:
- → Viral Lysis Drives Microbial Death -

Wet-up lytic viral activity produces measurable host-cell lysis by one week after rewetting.

+ → Estimated Viral Contribution to Microbial Death +

PARTIAL - productive lytic infection would cause host death. Viral replication, particle dynamics and lifestyle markers support this contribution, but the magnitude is inferred using burst-size and recovery assumptions rather than directly resolved infection-to-death events.

@@ -616,7 +623,7 @@

Evidence

PMID:37730729 - - SUPPORT (IN_VIVO) + - PARTIAL (COMPUTATIONAL)
"viruses in lytic cycles dominate the response to wet-up"
@@ -629,7 +636,7 @@

Evidence

PMID:37730729 - - SUPPORT (IN_VIVO) + - SUPPORT (IN_VITRO)
"Viral richness decreases by 50% within 24 h post wet-up, while viral biomass increases four-fold within one week"
@@ -642,10 +649,10 @@

Evidence

-

Viral Lysis Drives Microbial Death

+

Estimated Viral Contribution to Microbial Death

PREDATION
-

Viruses drive measurable and continuous cell lysis, accounting for up to 46 percent of microbial death one week after wet-up.

+

The study estimates a viral contribution to bacterial mortality from extracellular viral DNA and a separately estimated bacterial-death denominator. Its cumulative one-week estimate ranges from below 1% to 46.6% as assumed burst size changes from 200 to 1 virions per cell. This is a model-dependent inference, not directly counted lysis of 46% of all microbes. The estimate depends on viral genome length, extraction recovery, particle persistence and assumptions about bacterial rRNA gene copies. Canonical virus-to-bacterium direction denotes the proposed aggregate predatory process, not resolved strain-specific host links.

Source Taxon: soil DNA viruses (virions)

@@ -675,8 +682,8 @@

Viral Lysis Drives Microbial Death

Downstream Effects:
- → Lysis-Coupled Biomass Turnover and CO2 Efflux -

Virus-driven bacterial death contributes to microbial biomass turnover and the post-wet-up CO2 efflux from seasonally dry soil.

+ → Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux +

HYPOTHESIZED - lysis-released cellular carbon could support turnover and community respiration. The study does not isolate the viral share of CO2 efflux or selectively establish this carbon-transfer mediation.

@@ -692,7 +699,7 @@

Evidence

PMID:37730729 - - SUPPORT (IN_VIVO) + - PARTIAL (COMPUTATIONAL)
"up to 46% of microbial death driven by viral lysis one week following wet-up"
@@ -705,17 +712,20 @@

Evidence

-

Lysis-Coupled Biomass Turnover and CO2 Efflux

- PREDATION +

Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux

-

Viral lysis contributes to turnover of soil microbial biomass and the widely reported CO2 efflux following wet-up of seasonally dry soils.

+

HYPOTHESIZED - lysis can release cellular material that contributes to soil biomass turnover and potentially fuels respiration after wet-up. The paper interprets its viral dynamics and mortality estimates in this ecosystem context; it does not selectively isolate virus-driven CO2 flux or establish this pathway as the cause of the whole wet-up respiration pulse.

-

Source Taxon: soil DNA viruses (virions)

+

Participating Taxa: -

Target Taxon: grassland soil bacterial hosts

+ soil DNA viruses (virions), + + grassland soil bacterial hosts + +

@@ -742,7 +752,7 @@

Evidence

PMID:37730729 - - SUPPORT (IN_VIVO) + - PARTIAL (COMPUTATIONAL)
"viruses contribute to turnover of soil microbial biomass and the widely reported CO2 efflux following wet-up of seasonally dry soils"
@@ -758,6 +768,25 @@

Evidence

+
+

Knowledge gaps & discussions (1)

+ +
+

+ KNOWLEDGE_GAP + OPEN + How much wet-up mortality and respiratory carbon flux are caused by viruses? +

+

Resolve burst size, genome-length conversion, extraction efficiency, persistent particles and the assumed six bacterial 16S copies per cell before assigning a fixed mortality fraction. The Results and Discussion give slightly different lower bounds, both below 1%; no equation or analysis-code reimplementation is claimed. Separate early osmotic mortality from later viral effects. Genomic lifestyle markers do not exclude nonintegrating temperate infections, and coarse host predictions do not identify every infected strain. Direct viral perturbations and carbon tracing are needed for the proposed CO2 mediation. Abstract and main-body richness summaries use different time windows, which need not be contradictory. Preserve all positive time-course evidence while retaining these uncertainty labels; non-graph metadata is not recertified.

+ +

Attaches to: ecological_interactions#Lytic-Dominated Viral Response Inferred After Wet-Up, ecological_interactions#Estimated Viral Contribution to Microbial Death, ecological_interactions#Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux

+ + + + +
+ +
@@ -993,7 +1022,7 @@

Environmental Factors

(function() { var intId = "interaction:0"; - var intType = "PREDATION"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; @@ -1006,7 +1035,7 @@

Environmental Factors

nodes.push({ id: intId, - label: "Lytic Virus Activity Dominates Wet-Up Response", + label: "Lytic-Dominated Viral Response Inferred After Wet-Up", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1017,6 +1046,19 @@

Environmental Factors

+ var participantKeys = [ + + "soil DNA viruses (virions)", + + "grassland soil bacterial hosts" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { @@ -1034,7 +1076,7 @@

Environmental Factors

nodes.push({ id: intId, - label: "Viral Lysis Drives Microbial Death", + label: "Estimated Viral Contribution to Microbial Death", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1059,7 +1101,7 @@

Environmental Factors

(function() { var intId = "interaction:2"; - var intType = "PREDATION"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1072,7 +1114,7 @@

Environmental Factors

nodes.push({ id: intId, - label: "Lysis-Coupled Biomass Turnover and CO2 Efflux", + label: "Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1081,17 +1123,20 @@

Environmental Factors

}); - var srcKey = "soil DNA viruses (virions)"; - if (taxonNodeIds[srcKey]) { - links.push({ source: taxonNodeIds[srcKey], target: intId }); - } + var participantKeys = [ - var tgtKey = "grassland soil bacterial hosts"; - if (taxonNodeIds[tgtKey]) { - links.push({ source: intId, target: taxonNodeIds[tgtKey] }); - } + "soil DNA viruses (virions)", + + "grassland soil bacterial hosts" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); })(); diff --git a/docs/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.html b/docs/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.html index a3406431f..86f47058f 100644 --- a/docs/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.html +++ b/docs/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.html @@ -563,7 +563,7 @@

Ecological Interactions

Ecological interaction network for Groundwater Elusimicrobia Diverse Metabolisms Community - Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction (cross-feeding, commensalism, niche partitioning). + Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction.
@@ -571,18 +571,8 @@

Ecological Interactions

Cross-feeding -
-
- Commensalism -
-
- Niche partitioning + aria-hidden="true" data-symbol="symbolTriangle2" + data-color="#929caa"> Other
@@ -590,39 +580,26 @@

Ecological Interactions

-

Groundwater Elusimicrobia Metabolic Expansion

- NICHE_PARTITIONING +

Comparative Elusimicrobia Genomic Metabolic Repertoires

-

Free-living groundwater-associated Elusimicrobia encode a broader inferred metabolic repertoire than animal-associated Elusimicrobia, spanning heterotrophic and autotrophic respiration, Rnf-dependent acetogenesis, and radical-SAM/nitrogenase-paralog loci predicted to modify tetrapyrroles.

- +

The 94-genome survey compares habitat-associated groups with different inferred metabolic repertoires. These genomes represent multiple sites and lineages, not a demonstrated coexisting community. Both canonical habitat labels are retained despite sharing a taxon CURIE; the comparison does not establish niche partitioning or a causal sequence among the component findings.

+

Participating Taxa: + groundwater-associated Elusimicrobia, + animal-associated Elusimicrobia +

-
- Downstream Effects: -
- → Versatile Heterotrophic/Autotrophic Respiration -

Groundwater-associated clades contribute oxygen- or nitrate/nitrite-dependent respiration and use a variety of organic compounds as respiratory substrates.

-
-
- → Rnf-Dependent Acetogenesis from H2 and CO2 -

The groundwater-associated repertoire includes Rnf-dependent acetogenesis using hydrogen and carbon dioxide as substrates.

-
-
- → Novel Nitrogenase Paralog and Radical SAM Cluster -

Two groundwater-associated clades encode the novel nitrogenase-paralog/radical-SAM gene clusters predicted to reduce a tetrapyrrole cofactor precursor.

-
-
@@ -635,7 +612,7 @@

Evidence

PMID:32681159 - - SUPPORT (IN_VIVO) + - SUPPORT (COMPUTATIONAL)
"Groundwater Elusimicrobia are metabolically diverse compared to gut microbiome Elusimicrobia"
@@ -648,12 +625,13 @@

Evidence

-

Versatile Heterotrophic/Autotrophic Respiration

- CROSS_FEEDING +

Predicted Lineage-Specific Respiratory Capacities

-

Groundwater Elusimicrobia can perform heterotrophic or autotrophic respiration with oxygen or nitrate/nitrite as terminal electron acceptors and a variety of organic compounds as substrates.

+

Selected groundwater-associated lineages encode respiratory machinery consistent with oxygen or nitrogen-oxide use. Capacities differ by lineage; they are not a universal complete respiratory or denitrification route and are not demonstrated cross-feeding. These are source-only genomic predictions, not measured growth or electron flux.

+

Source Taxon: groundwater-associated Elusimicrobia

+ @@ -689,7 +667,7 @@

Evidence

PMID:32681159 - - SUPPORT (IN_VIVO) + - PARTIAL (COMPUTATIONAL)
"reliant on oxygen or nitrate/nitrite-dependent respiration, or a variety of organic compounds"
@@ -702,11 +680,12 @@

Evidence

-

Rnf-Dependent Acetogenesis from H2 and CO2

- CROSS_FEEDING +

Predicted Rnf-Associated Acetogenesis from H2 and CO2

-

Some groundwater Elusimicrobia encode Rhodobacter nitrogen fixation (Rnf) complex-dependent acetogenesis using H2 and CO2 as substrates.

+

Genomic features in lineages VII, VIII and IX support predicted hydrogen/carbon-dioxide acetogenesis involving Wood-Ljungdahl and Rnf components. The study does not demonstrate acetogenic flux, obligatory Rnf dependence or transfer of acetate to a partner. The Rnf name is not evidence of nitrogen fixation.

+ +

Source Taxon: groundwater-associated Elusimicrobia

@@ -754,7 +733,7 @@

Evidence

PMID:32681159 - - SUPPORT (IN_VIVO) + - PARTIAL (COMPUTATIONAL)
"Rhodobacter nitrogen fixation (Rnf) complex-dependent acetogenesis with hydrogen and carbon dioxide as the substrates"
@@ -767,12 +746,13 @@

Evidence

-

Novel Nitrogenase Paralog and Radical SAM Cluster

- COMMENSALISM +

Nitrogenase-Paralog Loci with Predicted Tetrapyrrole Function

-

Two groundwater Elusimicrobia clades encode a novel nitrogenase paralog co-occurring with an extensive suite of radical S-Adenosylmethionine proteins; similar genomic loci occur in Gracilibacteria and Myxococcales and are predicted to reduce a tetrapyrrole, possibly to form a novel cofactor.

+

Genomic neighborhoods contain divergent nitrogenase-paralog genes, often near radical-SAM genes. Their proposed tetrapyrrole-related function remains unresolved. These loci do not demonstrate nitrogen fixation, a chemically identified cofactor, metabolite donation or commensalism.

+

Source Taxon: groundwater-associated Elusimicrobia

+ @@ -803,7 +783,7 @@

Evidence

PMID:32681159 - - SUPPORT (IN_VIVO) + - SUPPORT (COMPUTATIONAL)
"a new group of nitrogenase paralogs that co-occur with an extensive suite of radical S-Adenosylmethionine (SAM) proteins"
@@ -816,7 +796,7 @@

Evidence

PMID:32681159 - - SUPPORT (IN_VIVO) + - PARTIAL (COMPUTATIONAL)
"predict that the gene clusters reduce a tetrapyrrole, possibly to form a novel cofactor"
@@ -832,6 +812,25 @@

Evidence

+
+

Knowledge gaps & discussions (1)

+ +
+

+ KNOWLEDGE_GAP + OPEN + Which predicted capacities operate in these organisms and their actual communities? +

+

Genome annotation and pathway-completeness thresholds are not cultivation, catalytic activity or exchange measurements. Determine strain-level pathway activity, partner identities and co-occurrence before assigning ecological interaction mechanisms. Establish the paralog product experimentally before equating it with nitrogen fixation or a specific cofactor. Preserve the two distinct habitat labels sharing one CURIE; groundwater predictions must not silently propagate to animal-associated organisms. The three former arrows were overview inclusion links, not causal evidence. Non-graph functional roles and evidence classifications are preserved outside this graph review, not certified.

+ +

Attaches to: ecological_interactions#Comparative Elusimicrobia Genomic Metabolic Repertoires, ecological_interactions#Predicted Lineage-Specific Respiratory Capacities, ecological_interactions#Predicted Rnf-Associated Acetogenesis from H2 and CO2, ecological_interactions#Nitrogenase-Paralog Loci with Predicted Tetrapyrrole Function

+ + + + +
+ +
@@ -1041,7 +1040,7 @@

Environmental Factors

(function() { var intId = "interaction:0"; - var intType = "NICHE_PARTITIONING"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; @@ -1050,7 +1049,7 @@

Environmental Factors

nodes.push({ id: intId, - label: "Groundwater Elusimicrobia Metabolic Expansion", + label: "Comparative Elusimicrobia Genomic Metabolic Repertoires", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1061,11 +1060,24 @@

Environmental Factors

+ var participantKeys = [ + + "groundwater-associated Elusimicrobia", + + "animal-associated Elusimicrobia" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { var intId = "interaction:1"; - var intType = "CROSS_FEEDING"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1082,7 +1094,7 @@

Environmental Factors

nodes.push({ id: intId, - label: "Versatile Heterotrophic/Autotrophic Respiration", + label: "Predicted Lineage-Specific Respiratory Capacities", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1091,13 +1103,18 @@

Environmental Factors

}); + var srcKey = "groundwater-associated Elusimicrobia"; + if (taxonNodeIds[srcKey]) { + links.push({ source: taxonNodeIds[srcKey], target: intId }); + } + })(); (function() { var intId = "interaction:2"; - var intType = "CROSS_FEEDING"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1118,7 +1135,7 @@

Environmental Factors

nodes.push({ id: intId, - label: "Rnf-Dependent Acetogenesis from H2 and CO2", + label: "Predicted Rnf-Associated Acetogenesis from H2 and CO2", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1127,13 +1144,18 @@

Environmental Factors

}); + var srcKey = "groundwater-associated Elusimicrobia"; + if (taxonNodeIds[srcKey]) { + links.push({ source: taxonNodeIds[srcKey], target: intId }); + } + })(); (function() { var intId = "interaction:3"; - var intType = "COMMENSALISM"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; @@ -1146,7 +1168,7 @@

Environmental Factors

nodes.push({ id: intId, - label: "Novel Nitrogenase Paralog and Radical SAM Cluster", + label: "Nitrogenase-Paralog Loci with Predicted Tetrapyrrole Function", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1155,6 +1177,11 @@

Environmental Factors

}); + var srcKey = "groundwater-associated Elusimicrobia"; + if (taxonNodeIds[srcKey]) { + links.push({ source: taxonNodeIds[srcKey], target: intId }); + } + })(); diff --git a/history/records/Grassland_Soil_WetUp_Virus_Host_Community/2026-10-06T135836Z-codex-64198f.yaml b/history/records/Grassland_Soil_WetUp_Virus_Host_Community/2026-10-06T135836Z-codex-64198f.yaml new file mode 100644 index 000000000..113a17a42 --- /dev/null +++ b/history/records/Grassland_Soil_WetUp_Virus_Host_Community/2026-10-06T135836Z-codex-64198f.yaml @@ -0,0 +1,24 @@ +history_version: 1 +target: + kind: record + path: kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml + slug: Grassland_Soil_WetUp_Virus_Host_Community +session: + id: 2026-10-06T135836Z-codex-64198f + timestamp: '2026-10-06T13:58:36Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1490 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Bound wet-up viral mortality and inferred carbon mediation. + details: Source-based self-adversarial graph repair. reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml diff --git a/history/records/Groundwater_Elusimicrobia_Diverse_Metabolisms/2026-10-06T135837Z-codex-b5b944.yaml b/history/records/Groundwater_Elusimicrobia_Diverse_Metabolisms/2026-10-06T135837Z-codex-b5b944.yaml new file mode 100644 index 000000000..46724e63b --- /dev/null +++ b/history/records/Groundwater_Elusimicrobia_Diverse_Metabolisms/2026-10-06T135837Z-codex-b5b944.yaml @@ -0,0 +1,25 @@ +history_version: 1 +target: + kind: record + path: kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml + slug: Groundwater_Elusimicrobia_Diverse_Metabolisms +session: + id: 2026-10-06T135837Z-codex-b5b944 + timestamp: '2026-10-06T13:58:37Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1491 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Separate genomic capacities from ecological labels and remove three overview inclusion + arrows. + details: Source-based self-adversarial graph repair. reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml diff --git a/kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml b/kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml index d9d392805..b12d54091 100644 --- a/kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml +++ b/kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml @@ -66,11 +66,14 @@ taxonomy: dry period explanation: Supports the bacterial host membership and their wet-up dynamics. ecological_interactions: -- name: Lytic Virus Activity Dominates Wet-Up Response - description: After wet-up, lytic rather than lysogenic cycles dominate, with - viral richness declining by 50 percent within 24 hours and viral biomass - increasing four-fold within one week. - interaction_type: PREDATION +- name: Lytic-Dominated Viral Response Inferred After Wet-Up + description: Laboratory wet-up microcosms showed viral richness loss and increasing viral-DNA biomass proxies, + with isotope incorporation supporting active viral DNA replication. The authors infer a predominantly lytic + response from these measurements and lifestyle markers. This positive evidence does not exclude nonintegrating + temperate lifestyles or directly count every productive infection. The abstract reports a 50% richness decline + within 24 h and a four-fold biomass increase within one week; the main Results summarize richness loss over + the week. Those time-window summaries need not conflict; no independent reconstruction of the time course is + claimed here. scope: COMMUNITY_LEVEL biological_processes: - preferred_term: virus-host interaction @@ -78,24 +81,40 @@ ecological_interactions: id: GO:0044003 label: symbiont-mediated perturbation of host process downstream: - - target: Viral Lysis Drives Microbial Death - description: Wet-up lytic viral activity produces measurable host-cell - lysis by one week after rewetting. + - target: Estimated Viral Contribution to Microbial Death + description: PARTIAL - productive lytic infection would cause host death. Viral replication, particle dynamics + and lifestyle markers support this contribution, but the magnitude is inferred using burst-size and recovery + assumptions rather than directly resolved infection-to-death events. evidence: - reference: PMID:37730729 - supports: SUPPORT - evidence_source: IN_VIVO + supports: PARTIAL + evidence_source: COMPUTATIONAL snippet: viruses in lytic cycles dominate the response to wet-up - explanation: Supports the dominance of lytic over lysogenic cycles. + explanation: Supports the authors' lifestyle inference from genomic markers and experimental time courses, not + proof that all particles arose by lysis or that all temperate lifestyles were absent. - reference: PMID:37730729 supports: SUPPORT - evidence_source: IN_VIVO - snippet: Viral richness decreases by 50% within 24 h post wet-up, while - viral biomass increases four-fold within one week - explanation: Supports the time-course richness and biomass dynamics. -- name: Viral Lysis Drives Microbial Death - description: Viruses drive measurable and continuous cell lysis, accounting - for up to 46 percent of microbial death one week after wet-up. + evidence_source: IN_VITRO + snippet: Viral richness decreases by 50% within 24 h post wet-up, while viral biomass increases four-fold within + one week + explanation: Supports laboratory microcosm time-course observations. Viral DNA is a biomass proxy; source sections + summarize richness loss over different time windows, without necessarily conflicting. + participating_taxa: + - preferred_term: soil DNA viruses (virions) + term: + id: NCBITaxon:10239 + label: Viruses + - preferred_term: grassland soil bacterial hosts + term: + id: NCBITaxon:2 + label: Bacteria +- name: Estimated Viral Contribution to Microbial Death + description: The study estimates a viral contribution to bacterial mortality from extracellular viral DNA and + a separately estimated bacterial-death denominator. Its cumulative one-week estimate ranges from below 1% to + 46.6% as assumed burst size changes from 200 to 1 virions per cell. This is a model-dependent inference, not + directly counted lysis of 46% of all microbes. The estimate depends on viral genome length, extraction recovery, + particle persistence and assumptions about bacterial rRNA gene copies. Canonical virus-to-bacterium direction + denotes the proposed aggregate predatory process, not resolved strain-specific host links. interaction_type: PREDATION scope: PAIRWISE source_taxon: @@ -114,44 +133,45 @@ ecological_interactions: id: GO:0044003 label: symbiont-mediated perturbation of host process downstream: - - target: Lysis-Coupled Biomass Turnover and CO2 Efflux - description: Virus-driven bacterial death contributes to microbial biomass - turnover and the post-wet-up CO2 efflux from seasonally dry soil. + - target: Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux + description: HYPOTHESIZED - lysis-released cellular carbon could support turnover and community respiration. + The study does not isolate the viral share of CO2 efflux or selectively establish this carbon-transfer mediation. evidence: - reference: PMID:37730729 - supports: SUPPORT - evidence_source: IN_VIVO - snippet: up to 46% of microbial death driven by viral lysis one week - following wet-up - explanation: Supports the curated quantitative attribution of microbial - death to viral lysis. -- name: Lysis-Coupled Biomass Turnover and CO2 Efflux - description: Viral lysis contributes to turnover of soil microbial biomass - and the widely reported CO2 efflux following wet-up of seasonally dry soils. - interaction_type: PREDATION - scope: PAIRWISE - source_taxon: - preferred_term: soil DNA viruses (virions) - term: - id: NCBITaxon:10239 - label: Viruses - target_taxon: - preferred_term: grassland soil bacterial hosts - term: - id: NCBITaxon:2 - label: Bacteria + supports: PARTIAL + evidence_source: COMPUTATIONAL + snippet: up to 46% of microbial death driven by viral lysis one week following wet-up + explanation: The abstract upper bound summarizes a burst-size-dependent mortality estimate. It is not a direct + census or a fixed effect across assumptions. +- name: Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux + description: HYPOTHESIZED - lysis can release cellular material that contributes to soil biomass turnover and + potentially fuels respiration after wet-up. The paper interprets its viral dynamics and mortality estimates + in this ecosystem context; it does not selectively isolate virus-driven CO2 flux or establish this pathway as + the cause of the whole wet-up respiration pulse. + scope: COMMUNITY_LEVEL metabolites: - preferred_term: carbon dioxide term: id: CHEBI:16526 label: carbon dioxide + notes: Proposed downstream respiratory product, not virus-attributed measured carbon flux. evidence: - reference: PMID:37730729 - supports: SUPPORT - evidence_source: IN_VIVO - snippet: viruses contribute to turnover of soil microbial biomass and the - widely reported CO2 efflux following wet-up of seasonally dry soils - explanation: Supports the ecosystem-level CO2-efflux contribution. + supports: PARTIAL + evidence_source: COMPUTATIONAL + snippet: viruses contribute to turnover of soil microbial biomass and the widely reported CO2 efflux following + wet-up of seasonally dry soils + explanation: Supports an inferred ecosystem contribution, not virus-specific carbon tracing, selective viral + manipulation or a measured CO2 mediation effect. + participating_taxa: + - preferred_term: soil DNA viruses (virions) + term: + id: NCBITaxon:10239 + label: Viruses + - preferred_term: grassland soil bacterial hosts + term: + id: NCBITaxon:2 + label: Bacteria environmental_factors: - name: Wet-up event value: prolonged dry period followed by laboratory rewetting @@ -202,3 +222,28 @@ rare_earth_elements_present: [] metal_relevance: NOT_APPLICABLE metal_notes: No metal or rare earth element processing role is curated for this grassland soil virus-host community. +discussions: +- discussion_id: wetup_viral_mortality_and_carbon_mediation + prompt: How much wet-up mortality and respiratory carbon flux are caused by viruses? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#Lytic-Dominated Viral Response Inferred After Wet-Up + - ecological_interactions#Estimated Viral Contribution to Microbial Death + - ecological_interactions#Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux + rationale: Resolve burst size, genome-length conversion, extraction efficiency, persistent particles and the assumed + six bacterial 16S copies per cell before assigning a fixed mortality fraction. The Results and Discussion give + slightly different lower bounds, both below 1%; no equation or analysis-code reimplementation is claimed. Separate + early osmotic mortality from later viral effects. Genomic lifestyle markers do not exclude nonintegrating temperate + infections, and coarse host predictions do not identify every infected strain. Direct viral perturbations and + carbon tracing are needed for the proposed CO2 mediation. Abstract and main-body richness summaries use different + time windows, which need not be contradictory. Preserve all positive time-course evidence while retaining these + uncertainty labels; non-graph metadata is not recertified. + posed_by: codex + posed_date: '2026-10-06' +curation_history: +- timestamp: '2026-10-06T13:58:36Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Bound wet-up viral mortality and inferred carbon mediation. Issue #1490; reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml' + llm_assisted: true diff --git a/kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml b/kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml index b4b293d50..b6fbc769d 100644 --- a/kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml +++ b/kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml @@ -86,118 +86,130 @@ taxonomy: explanation: Supports the animal-associated clades and their nested phylogenetic placement. ecological_interactions: -- name: Groundwater Elusimicrobia Metabolic Expansion - description: Free-living groundwater-associated Elusimicrobia encode a broader - inferred metabolic repertoire than animal-associated Elusimicrobia, spanning - heterotrophic and autotrophic respiration, Rnf-dependent acetogenesis, and - radical-SAM/nitrogenase-paralog loci predicted to modify tetrapyrroles. - interaction_type: NICHE_PARTITIONING +- name: Comparative Elusimicrobia Genomic Metabolic Repertoires + description: The 94-genome survey compares habitat-associated groups with different inferred metabolic repertoires. + These genomes represent multiple sites and lineages, not a demonstrated coexisting community. Both canonical + habitat labels are retained despite sharing a taxon CURIE; the comparison does not establish niche partitioning + or a causal sequence among the component findings. scope: COMMUNITY_LEVEL - downstream: - - target: Versatile Heterotrophic/Autotrophic Respiration - description: Groundwater-associated clades contribute oxygen- or - nitrate/nitrite-dependent respiration and use a variety of organic - compounds as respiratory substrates. - - target: Rnf-Dependent Acetogenesis from H2 and CO2 - description: The groundwater-associated repertoire includes Rnf-dependent - acetogenesis using hydrogen and carbon dioxide as substrates. - - target: Novel Nitrogenase Paralog and Radical SAM Cluster - description: Two groundwater-associated clades encode the novel - nitrogenase-paralog/radical-SAM gene clusters predicted to reduce a - tetrapyrrole cofactor precursor. evidence: - reference: PMID:32681159 supports: SUPPORT - evidence_source: IN_VIVO - snippet: Groundwater Elusimicrobia are metabolically diverse compared to - gut microbiome Elusimicrobia - explanation: Supports the broader metabolic repertoire curated for - groundwater-associated Elusimicrobia. -- name: Versatile Heterotrophic/Autotrophic Respiration - description: Groundwater Elusimicrobia can perform heterotrophic or - autotrophic respiration with oxygen or nitrate/nitrite as terminal - electron acceptors and a variety of organic compounds as substrates. - interaction_type: CROSS_FEEDING - scope: COMMUNITY_LEVEL + evidence_source: COMPUTATIONAL + snippet: Groundwater Elusimicrobia are metabolically diverse compared to gut microbiome Elusimicrobia + explanation: Supports comparative genomic diversity, not experimentally demonstrated community niche partitioning. + participating_taxa: + - preferred_term: groundwater-associated Elusimicrobia + term: + id: NCBITaxon:641853 + label: Elusimicrobia + - preferred_term: animal-associated Elusimicrobia + term: + id: NCBITaxon:641853 + label: Elusimicrobia +- name: Predicted Lineage-Specific Respiratory Capacities + description: Selected groundwater-associated lineages encode respiratory machinery consistent with oxygen or nitrogen-oxide + use. Capacities differ by lineage; they are not a universal complete respiratory or denitrification route and + are not demonstrated cross-feeding. These are source-only genomic predictions, not measured growth or electron + flux. + scope: PAIRWISE metabolites: - preferred_term: nitrate term: id: CHEBI:17632 label: nitrate + notes: Associated with a predicted intrinsic pathway, not measured interspecies exchange. - preferred_term: nitrite term: id: CHEBI:16301 label: nitrite + notes: Associated with a predicted intrinsic pathway, not measured interspecies exchange. - preferred_term: dioxygen term: id: CHEBI:15379 label: dioxygen + notes: Associated with a predicted intrinsic pathway, not measured interspecies exchange. evidence: - reference: PMID:32681159 - supports: SUPPORT - evidence_source: IN_VIVO - snippet: reliant on oxygen or nitrate/nitrite-dependent respiration, or a - variety of organic compounds - explanation: Supports the curated heterotrophic/autotrophic respiration - modes. -- name: Rnf-Dependent Acetogenesis from H2 and CO2 - description: Some groundwater Elusimicrobia encode Rhodobacter nitrogen - fixation (Rnf) complex-dependent acetogenesis using H2 and CO2 as - substrates. - interaction_type: CROSS_FEEDING - scope: COMMUNITY_LEVEL + supports: PARTIAL + evidence_source: COMPUTATIONAL + snippet: reliant on oxygen or nitrate/nitrite-dependent respiration, or a variety of organic compounds + explanation: Supports predicted capacities across different genomes, not a measured universal pathway or donor-recipient + exchange. + source_taxon: + preferred_term: groundwater-associated Elusimicrobia + term: + id: NCBITaxon:641853 + label: Elusimicrobia +- name: Predicted Rnf-Associated Acetogenesis from H2 and CO2 + description: Genomic features in lineages VII, VIII and IX support predicted hydrogen/carbon-dioxide acetogenesis + involving Wood-Ljungdahl and Rnf components. The study does not demonstrate acetogenic flux, obligatory Rnf + dependence or transfer of acetate to a partner. The Rnf name is not evidence of nitrogen fixation. + scope: PAIRWISE metabolites: - preferred_term: dihydrogen term: id: CHEBI:18276 label: dihydrogen + notes: Associated with a predicted intrinsic pathway, not measured interspecies exchange. - preferred_term: carbon dioxide term: id: CHEBI:16526 label: carbon dioxide + notes: Associated with a predicted intrinsic pathway, not measured interspecies exchange. - preferred_term: acetate term: id: CHEBI:30089 label: acetate + notes: Associated with a predicted intrinsic pathway, not measured interspecies exchange. biological_processes: - preferred_term: carbon fixation term: id: GO:0015977 label: carbon fixation + notes: Predicted carbon-fixation potential; no measured flux assigned. evidence: - reference: PMID:32681159 - supports: SUPPORT - evidence_source: IN_VIVO - snippet: Rhodobacter nitrogen fixation (Rnf) complex-dependent acetogenesis - with hydrogen and carbon dioxide as the substrates - explanation: Supports Rnf-dependent acetogenesis from H2 and CO2. -- name: Novel Nitrogenase Paralog and Radical SAM Cluster - description: Two groundwater Elusimicrobia clades encode a novel nitrogenase - paralog co-occurring with an extensive suite of radical S-Adenosylmethionine - proteins; similar genomic loci occur in Gracilibacteria and Myxococcales - and are predicted to reduce a tetrapyrrole, possibly to form a novel - cofactor. - interaction_type: COMMENSALISM - scope: COMMUNITY_LEVEL + supports: PARTIAL + evidence_source: COMPUTATIONAL + snippet: Rhodobacter nitrogen fixation (Rnf) complex-dependent acetogenesis with hydrogen and carbon dioxide + as the substrates + explanation: Supports a genomic acetogenesis prediction, not measured carbon fixation, pathway necessity or + cross-feeding. + source_taxon: + preferred_term: groundwater-associated Elusimicrobia + term: + id: NCBITaxon:641853 + label: Elusimicrobia +- name: Nitrogenase-Paralog Loci with Predicted Tetrapyrrole Function + description: Genomic neighborhoods contain divergent nitrogenase-paralog genes, often near radical-SAM genes. + Their proposed tetrapyrrole-related function remains unresolved. These loci do not demonstrate nitrogen fixation, + a chemically identified cofactor, metabolite donation or commensalism. + scope: PAIRWISE biological_processes: - preferred_term: tetrapyrrole metabolic process term: id: GO:0033013 label: tetrapyrrole metabolic process + notes: Hypothesized biochemical function, not an experimentally assigned product or activity. evidence: - reference: PMID:32681159 supports: SUPPORT - evidence_source: IN_VIVO - snippet: a new group of nitrogenase paralogs that co-occur with an - extensive suite of radical S-Adenosylmethionine (SAM) proteins - explanation: Supports the curated nitrogenase-paralog and radical-SAM - cluster. + evidence_source: COMPUTATIONAL + snippet: a new group of nitrogenase paralogs that co-occur with an extensive suite of radical S-Adenosylmethionine + (SAM) proteins + explanation: Supports encoded gene neighborhoods; it does not establish their biochemical products or ecological + effects. - reference: PMID:32681159 - supports: SUPPORT - evidence_source: IN_VIVO - snippet: predict that the gene clusters reduce a tetrapyrrole, possibly to - form a novel cofactor - explanation: Supports the predicted tetrapyrrole-reductase function. + supports: PARTIAL + evidence_source: COMPUTATIONAL + snippet: predict that the gene clusters reduce a tetrapyrrole, possibly to form a novel cofactor + explanation: The source explicitly predicts function; it does not report catalytic validation or cofactor identification. + source_taxon: + preferred_term: groundwater-associated Elusimicrobia + term: + id: NCBITaxon:641853 + label: Elusimicrobia environmental_factors: - name: Habitat diversity value: animal-associated, sediments, soils, groundwater @@ -302,3 +314,29 @@ rare_earth_elements_present: [] metal_relevance: NOT_APPLICABLE metal_notes: No metal or rare earth element processing role is curated for this Elusimicrobia community. +discussions: +- discussion_id: elusimicrobia_genomic_capacity_and_ecological_context + prompt: Which predicted capacities operate in these organisms and their actual communities? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#Comparative Elusimicrobia Genomic Metabolic Repertoires + - ecological_interactions#Predicted Lineage-Specific Respiratory Capacities + - ecological_interactions#Predicted Rnf-Associated Acetogenesis from H2 and CO2 + - ecological_interactions#Nitrogenase-Paralog Loci with Predicted Tetrapyrrole Function + rationale: Genome annotation and pathway-completeness thresholds are not cultivation, catalytic activity or exchange + measurements. Determine strain-level pathway activity, partner identities and co-occurrence before assigning + ecological interaction mechanisms. Establish the paralog product experimentally before equating it with nitrogen + fixation or a specific cofactor. Preserve the two distinct habitat labels sharing one CURIE; groundwater predictions + must not silently propagate to animal-associated organisms. The three former arrows were overview inclusion + links, not causal evidence. Non-graph functional roles and evidence classifications are preserved outside this + graph review, not certified. + posed_by: codex + posed_date: '2026-10-06' +curation_history: +- timestamp: '2026-10-06T13:58:36Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Separate genomic capacities from ecological labels and remove three overview inclusion arrows. Issue + #1491; reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml' + llm_assisted: true diff --git a/reports/causal_graph_review/README.md b/reports/causal_graph_review/README.md index 0dfac6f9a..1502c78b8 100644 --- a/reports/causal_graph_review/README.md +++ b/reports/causal_graph_review/README.md @@ -5,6 +5,21 @@ source-based self-adversarial review. These records are not independent approval or proof that every graph is complete. The current inventory and summary distinguish `reviewed`, `pending` and `needs_research`. +## Batch49: Wet-Up Viruses And Groundwater Elusimicrobia + +[Decisions](decisions/20261006-wetup-elusimicrobia-batch49.yaml), +[validation](validation-20261006-batch49.json) and +[self-adversarial review](adversarial-review-20261006-batch49.yaml) distinguish +wet-up viral observations from model-dependent mortality and proposed carbon +mediation. Both viral arrows remain explicitly qualified. All four groundwater +findings remain as genomic observations or predictions; three overview inclusion +arrows and unsupported ecological labels are removed. Both habitat labels sharing +one taxon ID remain distinct. The measured connectivity census change is recorded. +The review corrects an overstatement about different richness time-window summaries; +earlier check receipts are retained, with final-text verification recorded separately. +Main texts and embedded captions were inspected, not figure images or supplements. +Non-graph metadata remains outside this repair and is not recertified. + ## Batch48: Ginseng CL95 And Glutamicibacter S11 [Decisions](decisions/20261006-ginseng-s11-batch48.yaml), diff --git a/reports/causal_graph_review/adversarial-review-20261006-batch49.yaml b/reports/causal_graph_review/adversarial-review-20261006-batch49.yaml new file mode 100644 index 000000000..a30afa737 --- /dev/null +++ b/reports/causal_graph_review/adversarial-review-20261006-batch49.yaml @@ -0,0 +1,141 @@ +reviewer: codex +review_mode: source_based_self_adversarial_review +independent_approval: false +base_commit: e3864bd9f75e621affb7f2e9705a62ce001321d5 +scope: +- kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml +- kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml +decision_ledger: reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml +validation_report: reports/causal_graph_review/validation-20261006-batch49.json +findings: +- issue: 1490 + severity: P2 + status: addressed_in_this_change + finding: Bound wet-up viral mortality and inferred carbon mediation. + disposition: Close only after protected main merge. +- issue: 1491 + severity: P2 + status: addressed_in_this_change + finding: Separate genomic capacities from ecological labels and remove three overview inclusion arrows. + disposition: Close only after protected main merge. +adversarial_checks: +- Whole records and all seven original nodes/five arrows read. Wet-up complete cached main body/Methods/embedded + captions; groundwater complete primary PMC main body/Methods/embedded captions plus local abstract. + No figure images, supplements, raw data or code audited. +- Wet-up positive viral time-course and isotope-incorporation observations remain. Biomass is a viral-DNA + proxy; lifestyle inference does not exclude nonintegrating temperate infection. Canonical virus-to-bacterium + predation direction is preserved, not reversed or assigned to resolved strains. +- The cumulative mortality range depends on assumed burst size and conversion/recovery/rRNA-copy assumptions. + Below 1% to 46.6% is not a directly counted fixed effect. The first arrow remains PARTIAL; no model + equation or analysis-code reimplementation claimed. +- The ecosystem carbon node is community-level, with both canonical participants. Its incoming arrow remains + HYPOTHESIZED because virus-specific CO2 mediation is not selectively resolved. No new causal structure + or paid Edison research run occurred. +- 'The adversarial pass corrected an overstatement: different 24-hour and one-week richness summaries + need not contradict each other. Initial actual validation receipts were retained as superseded, then + every verification command rerun against corrected final wording. No history was removed or source cache + changed.' +- Groundwater is a comparative multi-habitat genome survey, not a demonstrated coexisting community. The + two habitat-specific labels remain distinct despite sharing NCBITaxon:641853. Three intrinsic source-only + capacities cannot credit the animal-associated bin as a partner or create same-CURIE self-exchange. +- All four groundwater findings remain. Remove NICHE_PARTITIONING, CROSS_FEEDING and COMMENSALISM labels + and three overview inclusion arrows. Genomic evidence is COMPUTATIONAL; gene-neighborhood support is + distinguished from PARTIAL biochemical predictions. The paralog and Rnf name are not nitrogen-fixation + proof. +- 'Measured census: 460 records, 389 with community scope, mixed126->127, community-only263->262, 1498 + taxa, solely credited1223->1222. Two participant-registry entries and only the measured mixed upper + bound updated; no production matching changes.' +- Inspected record and test diffs. Seven nodes retained, two existing arrows qualified, three inclusion + arrows removed. Six focused tests cover direction, participants, model bounds, evidence type, exact + anchors and hash-bound all-node/arrow coverage. All458 other records and920 caches preserved, not certified; + non-graph evidence/roles remain outside scope. +- Actual schema, strict, terms, references, snippets, rank and history gates passed. Network equals baseline + with34 pre-existing findings and zero structural defects. Repeat HTML renders and exact descriptions + across456 pages parser-checked; no browser screenshot claim. Post-commit docs-current remains a separate + actual gate. +- Dedup checked801 all-state issue titles/bodies and ignored/hidden local review files, not every comment + or PR review. Issues1490/1491 addressed here and remain open until protected main merge. This is source-based + self-adversarial review, not independent approval. +verification: + combined_regressions: 478 passed in 184.49s (0:03:04) + new_regression_tests: 6 + schema_strict_terms_history: Passed with actual output digests + references: CLI Total checks counts reported issues, not executed checks. Exit0 is no reported issues, + not source verification. SupportingReference coverage (#476), Linux DOI-cache lookup (#1091) and selected-cache + provenance (#1362) remain limitations. + snippet_counts_by_record: + kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml: + MATCH: 9 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml: + MATCH: 14 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + network: + existing_findings_preserved: 34 + added_findings: {} + removed_findings: {} + black_ruff_diff: passed + tested_file_sha256: + reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml: 0b3c8b79e2264e4b9bc5ced88f6eedab41110a20b09bd21b4820554a62a1af6d + tests/test_causal_review_batch49.py: 84fc66b8c879ad8b11037465cefbd3db2866022d719aee5a2aabf0f810761065 + tests/test_participating_taxa.py: 1d92e0223433203a099a8cdff20df8635d04dcb41babbc9729f96969c14645d3 + tests/test_community_level_connectivity_credit.py: 4558cd732952343c247c0014da0ae1311bb93ea213a57ffeb7a31b788e68800b + kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml: 69f8f1177ae4ad7775872f98f55d3bcc9d184f0c4c45425fbc189128d1427d93 + kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml: 0f6adfa3d990e2d2d09e5680230095263aecd71f1ee1b00288ebe13e5a995089 + reports/causal_graph_review/README.md: 0532a816f308848fb6e20fef089cf22f43c2c2d8d693174b28b154e47ea620b3 + post_commit_docs_current: Separate publication gate; not asserted before commit. +participant_census: + measurements: + baseline: + records: 460 + with_community_level: 389 + mixed: 126 + community_level_only: 263 + taxa: 1498 + credited_solely_by_the_rule: 1223 + current: + records: 460 + with_community_level: 389 + mixed: 127 + community_level_only: 262 + taxa: 1498 + credited_solely_by_the_rule: 1222 + interpretation: Groundwater comparison remains community-scoped while three intrinsic capacities become + source-only. Measured mixed +1, CL-only -1, solely credited -1; two registry entries added. No production + matching change. +corpus: + records: 460 + nodes: 1465 + edges: 676 + review_status_counts: + needs_research: 14 + pending: 273 + reviewed: 173 +limitations: +- Whole 204-line wet-up and 304-line groundwater records and every original node/arrow reviewed. Wet-up + complete cached main body/Methods/captions and groundwater complete primary PMC main body/Methods/captions + read. No figure images, supplements, raw data or analysis code audited. +- Existing-structure repairs only; no new causal nodes/arrows, no paid Edison job or provider spend. Positive + observations and genomic findings retained without claims that all possible mechanisms are represented. +- Wet-up mortality is burst-size/model dependent; biomass is a viral-DNA proxy, host links are coarse + and lifestyle alternatives remain. Richness summaries cover different time windows and need not conflict; + lower mortality bounds differ slightly across source sections. No equation or code reimplementation + claimed; CO2 mediation remains a hypothesis. +- Groundwater is a comparative multi-habitat genome survey, not one demonstrated coexisting community. + Same-CURIE habitat labels retained separately. Encoded loci are distinct from predicted function, and + the nitrogenase paralog is not demonstrated nitrogen fixation. +- All non-graph raw blocks and 920 cache files preserved, not certified. This leaves non-graph broad functional + roles and evidence classifications outside the present repair. Reference CLI Total checks counts reported + issues, not executed checks; SupportingReference coverage (#476), Linux DOI-cache lookup (#1091) and + selected-cache provenance (#1362) remain limitations. +- Dedup checked 801 all-state issue titles/bodies and ignored/hidden local review files, not every comment + or PR review. Source-based self-adversarial review is not independent approval. Protected-main merge + and corpus completion remain pending. diff --git a/reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml b/reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml new file mode 100644 index 000000000..04eca3471 --- /dev/null +++ b/reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml @@ -0,0 +1,192 @@ +reviewer: codex +review_mode: source_based_self_adversarial_review +independent_approval: false +base_commit: e3864bd9f75e621affb7f2e9705a62ce001321d5 +baseline_commit: e3864bd9f75e621affb7f2e9705a62ce001321d5 +base_tree: affd939b0a8cf19217bf113d7fb469a7413849d0 +pre_source_baseline_sha256: ce4eaac41e5777098565309689eb74aac32a51f889ea6e54cbce94ee54029339 +issues: +- 1490 +- 1491 +issue_deduplication: + all_state_issue_titles_and_bodies: 801 + ignored_hidden_local_search: true + matching_issues: [] + matching_local_files: 13 + disposition: No matching issue in inspected scope; local matches are inventory/validation and taxonomy checks. + limitations: Not all issue comments or PR reviews inspected. +reference_cache_original_hashes: + references_cache/PMID_37730729.txt: f9bef84c96937671020d02d7d564a0a698f3b63df2bdddd053c67cfa8a5ee8b4 + references_cache/PMID_37730729.md: 2aebb802f2aa2b9596101bdfa3a6ed40031cec7263d12289f3e9f36b7f7e0286 + references_cache/PMID_32681159.txt: f015c9879c14e218e12c7884546fd50e28c1d9942e5b6cf21271768d039cd73b + references_cache/PMID_32681159.md: ad43461a5d40e6dcad2464dba664aad00efa2ceeabe6eecc089acf869f9d73aa +limitations: +- Whole 204-line wet-up and 304-line groundwater records and every original node/arrow reviewed. Wet-up complete + cached main body/Methods/captions and groundwater complete primary PMC main body/Methods/captions read. No figure + images, supplements, raw data or analysis code audited. +- Existing-structure repairs only; no new causal nodes/arrows, no paid Edison job or provider spend. Positive observations + and genomic findings retained without claims that all possible mechanisms are represented. +- Wet-up mortality is burst-size/model dependent; biomass is a viral-DNA proxy, host links are coarse and lifestyle + alternatives remain. Richness summaries cover different time windows and need not conflict; lower mortality bounds + differ slightly across source sections. No equation or code reimplementation claimed; CO2 mediation remains a + hypothesis. +- Groundwater is a comparative multi-habitat genome survey, not one demonstrated coexisting community. Same-CURIE + habitat labels retained separately. Encoded loci are distinct from predicted function, and the nitrogenase paralog + is not demonstrated nitrogen fixation. +- All non-graph raw blocks and 920 cache files preserved, not certified. This leaves non-graph broad functional + roles and evidence classifications outside the present repair. Reference CLI Total checks counts reported issues, + not executed checks; SupportingReference coverage (#476), Linux DOI-cache lookup (#1091) and selected-cache provenance + (#1362) remain limitations. +- Dedup checked 801 all-state issue titles/bodies and ignored/hidden local review files, not every comment or PR + review. Source-based self-adversarial review is not independent approval. Protected-main merge and corpus completion + remain pending. +records: +- path: kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml + id: CommunityMech:000224 + original_sha256: 8e64d4781390ec08a6fd3be1e1327c9a839e595ccbf94a774546b4b7bd639a52 + record_sha256: 69f8f1177ae4ad7775872f98f55d3bcc9d184f0c4c45425fbc189128d1427d93 + status: reviewed + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml + scope: Whole record and every original node/arrow; bounded current structure, not all possible mechanisms. + summary: Bound wet-up viral mortality and inferred carbon mediation. + renamed_nodes: + Lytic Virus Activity Dominates Wet-Up Response: Lytic-Dominated Viral Response Inferred After Wet-Up + Viral Lysis Drives Microbial Death: Estimated Viral Contribution to Microbial Death + Lysis-Coupled Biomass Turnover and CO2 Efflux: Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux + node_decisions: + - node: Lytic-Dominated Viral Response Inferred After Wet-Up + rationale: Retain positive laboratory viral time-course and replication observations; distinguish biomass proxies + and lifestyle inference from resolved infection events. + - node: Estimated Viral Contribution to Microbial Death + rationale: Retain aggregate virus-to-bacterium predation as a model-bounded mortality estimate, not a directly + measured fixed 46% effect. + - node: Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux + rationale: Retain the authors' ecosystem carbon interpretation as a community-level hypothesis, not pairwise + predation or isolated CO2 mediation. + removed_node_decisions: [] + edges_before: + - source: Lytic Virus Activity Dominates Wet-Up Response + target: Viral Lysis Drives Microbial Death + description: Wet-up lytic viral activity produces measurable host-cell lysis by one week after rewetting. + - source: Viral Lysis Drives Microbial Death + target: Lysis-Coupled Biomass Turnover and CO2 Efflux + description: Virus-driven bacterial death contributes to microbial biomass turnover and the post-wet-up CO2 + efflux from seasonally dry soil. + edges_after: + - source: Lytic-Dominated Viral Response Inferred After Wet-Up + target: Estimated Viral Contribution to Microbial Death + description: PARTIAL - productive lytic infection would cause host death. Viral replication, particle dynamics + and lifestyle markers support this contribution, but the magnitude is inferred using burst-size and recovery + assumptions rather than directly resolved infection-to-death events. + - source: Estimated Viral Contribution to Microbial Death + target: Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux + description: HYPOTHESIZED - lysis-released cellular carbon could support turnover and community respiration. + The study does not isolate the viral share of CO2 efflux or selectively establish this carbon-transfer mediation. + retained_edge_decisions: + - source: Lytic-Dominated Viral Response Inferred After Wet-Up + target: Estimated Viral Contribution to Microbial Death + description: PARTIAL - productive lytic infection would cause host death. Viral replication, particle dynamics + and lifestyle markers support this contribution, but the magnitude is inferred using burst-size and recovery + assumptions rather than directly resolved infection-to-death events. + rationale: Retained with explicit PARTIAL model-dependent mortality inference. + - source: Estimated Viral Contribution to Microbial Death + target: Inferred Lysis Contribution to Biomass Turnover and CO2 Efflux + description: HYPOTHESIZED - lysis-released cellular carbon could support turnover and community respiration. + The study does not isolate the viral share of CO2 efflux or selectively establish this carbon-transfer mediation. + rationale: Retained with explicit HYPOTHESIZED carbon mediation; no virus-isolated CO2 flux. + removed_edge_decisions: [] + references: + - PMID:37730729 + issues: + - 1490 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/Grassland_Soil_WetUp_Virus_Host_Community/2026-10-06T135836Z-codex-64198f.yaml + source_review: + PMID:37730729: + cache: references_cache/PMID_37730729.txt + url: https://pmc.ncbi.nlm.nih.gov/articles/PMC10511743/ + scope: Complete cached main body, Methods and embedded Figures 1-5 captions; primary PubMed abstract corroborated. + No figure images, supplements, raw data or code inspected. + sha256: f9bef84c96937671020d02d7d564a0a698f3b63df2bdddd053c67cfa8a5ee8b4 +- path: kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml + id: CommunityMech:000242 + original_sha256: dd15456140df648778bf038e65ee93969dd4181a45aa85337c02d46af40d4748 + record_sha256: 0f6adfa3d990e2d2d09e5680230095263aecd71f1ee1b00288ebe13e5a995089 + status: reviewed + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml + scope: Whole record and every original node/arrow; bounded current structure, not all possible mechanisms. + summary: Separate genomic capacities from ecological labels and remove three overview inclusion arrows. + renamed_nodes: + Groundwater Elusimicrobia Metabolic Expansion: Comparative Elusimicrobia Genomic Metabolic Repertoires + Versatile Heterotrophic/Autotrophic Respiration: Predicted Lineage-Specific Respiratory Capacities + Rnf-Dependent Acetogenesis from H2 and CO2: Predicted Rnf-Associated Acetogenesis from H2 and CO2 + Novel Nitrogenase Paralog and Radical SAM Cluster: Nitrogenase-Paralog Loci with Predicted Tetrapyrrole Function + node_decisions: + - node: Comparative Elusimicrobia Genomic Metabolic Repertoires + rationale: Retain multi-habitat genomic comparison without niche partitioning or assumed co-occurrence; remove + all three inclusion arrows. + - node: Predicted Lineage-Specific Respiratory Capacities + rationale: Retain conditional intrinsic respiratory potential without demonstrated cross-feeding or a universal + complete route. + - node: Predicted Rnf-Associated Acetogenesis from H2 and CO2 + rationale: Retain predicted intrinsic acetogenesis without measured flux, Rnf necessity or partner exchange. + - node: Nitrogenase-Paralog Loci with Predicted Tetrapyrrole Function + rationale: Separate observed gene neighborhoods from predicted function; do not equate the paralog with nitrogen + fixation or commensalism. + removed_node_decisions: [] + edges_before: + - source: Groundwater Elusimicrobia Metabolic Expansion + target: Versatile Heterotrophic/Autotrophic Respiration + description: Groundwater-associated clades contribute oxygen- or nitrate/nitrite-dependent respiration and use + a variety of organic compounds as respiratory substrates. + - source: Groundwater Elusimicrobia Metabolic Expansion + target: Rnf-Dependent Acetogenesis from H2 and CO2 + description: The groundwater-associated repertoire includes Rnf-dependent acetogenesis using hydrogen and carbon + dioxide as substrates. + - source: Groundwater Elusimicrobia Metabolic Expansion + target: Novel Nitrogenase Paralog and Radical SAM Cluster + description: Two groundwater-associated clades encode the novel nitrogenase-paralog/radical-SAM gene clusters + predicted to reduce a tetrapyrrole cofactor precursor. + edges_after: [] + retained_edge_decisions: [] + removed_edge_decisions: + - source: Groundwater Elusimicrobia Metabolic Expansion + target: Versatile Heterotrophic/Autotrophic Respiration + description: Groundwater-associated clades contribute oxygen- or nitrate/nitrite-dependent respiration and use + a variety of organic compounds as respiratory substrates. + rationale: Overview-to-component membership is not a demonstrated causal direction. + - source: Groundwater Elusimicrobia Metabolic Expansion + target: Rnf-Dependent Acetogenesis from H2 and CO2 + description: The groundwater-associated repertoire includes Rnf-dependent acetogenesis using hydrogen and carbon + dioxide as substrates. + rationale: Overview-to-component membership is not a demonstrated causal direction. + - source: Groundwater Elusimicrobia Metabolic Expansion + target: Novel Nitrogenase Paralog and Radical SAM Cluster + description: Two groundwater-associated clades encode the novel nitrogenase-paralog/radical-SAM gene clusters + predicted to reduce a tetrapyrrole cofactor precursor. + rationale: Overview-to-component membership is not a demonstrated causal direction. + references: + - PMID:32681159 + issues: + - 1491 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/Groundwater_Elusimicrobia_Diverse_Metabolisms/2026-10-06T135837Z-codex-b5b944.yaml + source_review: + PMID:32681159: + cache: references_cache/PMID_32681159.txt + url: https://pmc.ncbi.nlm.nih.gov/articles/PMC7785019/ + scope: Complete primary PMC main text, Methods and embedded captions, plus local abstract. No figure images, + supplementary datasets, raw data or analysis code inspected. Local caches remain abstract-only. + sha256: f015c9879c14e218e12c7884546fd50e28c1d9942e5b6cf21271768d039cd73b diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv index cae529c39..34b7703d9 100644 --- a/reports/causal_graph_review/inventory.tsv +++ b/reports/causal_graph_review/inventory.tsv @@ -186,8 +186,8 @@ kb/communities/Geobacter_Methanosarcina_DIET.yaml CommunityMech:000033 b6b5f1714 kb/communities/Geobacter_Pseudomonas_Formate_Fumarate_Electroactive_Coculture.yaml CommunityMech:000201 23bc65dd7bc600d926ad4f080c7f5af377da12558d2602e08f8c77324bab6fe1 4 1 81.2 reports/causal_graph_review/decisions/20261006-geobacter-pseudomonas-batch47.yaml reviewed kb/communities/Ginseng_CL95_Rusty_Root_Rot_Biocontrol_SynCom.yaml CommunityMech:000376 e228c2b46ce20acca93762d68d61fe0945620902a42deb516e65fb5f87eee720 3 0 65.0 reports/causal_graph_review/decisions/20261006-ginseng-s11-batch48.yaml reviewed kb/communities/Glutamicibacter_S11_Aquaculture_Nitrogen_Removal_SynCom.yaml CommunityMech:000411 8348a96a90c28a1f575a7badf3c05194fdbbe1c69e23d5d4469468542c849bd4 1 0 55.0 reports/causal_graph_review/decisions/20261006-ginseng-s11-batch48.yaml reviewed -kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml CommunityMech:000224 8e64d4781390ec08a6fd3be1e1327c9a839e595ccbf94a774546b4b7bd639a52 3 2 100.0 pending -kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml CommunityMech:000242 dd15456140df648778bf038e65ee93969dd4181a45aa85337c02d46af40d4748 4 3 98.8 pending +kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml CommunityMech:000224 69f8f1177ae4ad7775872f98f55d3bcc9d184f0c4c45425fbc189128d1427d93 3 2 93.3 reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml reviewed +kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml CommunityMech:000242 0f6adfa3d990e2d2d09e5680230095263aecd71f1ee1b00288ebe13e5a995089 4 0 63.8 reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml reviewed kb/communities/HAMBI_Carbon_Gradient_SynCom16.yaml CommunityMech:000423 1d702bfc31295364092b1aa83379e518f643e6b297b0a9d982d51544b937dca4 1 0 65.0 pending kb/communities/Hanford_300_Area_Unconfined_Aquifer_Community.yaml CommunityMech:000138 9355b5ace5248724637a24a984d88b87d8af124c60c300998c6d9a14bb9c2b30 3 2 100.0 pending kb/communities/Hexamine_Formaldehyde_Consortium_C6.yaml CommunityMech:000405 379d0dd82d072b0be02a50febc2ca4202385dc7f0dcf2f2dbb3de49c2b1faaf5 2 0 60.0 pending diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json index 37b4073de..d947ca270 100644 --- a/reports/causal_graph_review/summary.json +++ b/reports/causal_graph_review/summary.json @@ -3,13 +3,13 @@ "semantic_review_rule": "Structural checks and readiness scores do not establish causal support. Completed reviews must match the current record SHA-256, cover every node once with a rationale, and reproduce the current edge list.", "records": 460, "nodes": 1465, - "edges": 679, + "edges": 676, "records_without_nodes": 8, - "records_without_edges": 149, + "records_without_edges": 150, "review_status_counts": { "needs_research": 14, - "pending": 275, - "reviewed": 171 + "pending": 273, + "reviewed": 173 }, "structural_defects": [], "network_audit": [ diff --git a/reports/causal_graph_review/validation-20261006-batch49.json b/reports/causal_graph_review/validation-20261006-batch49.json new file mode 100644 index 000000000..4c8326c40 --- /dev/null +++ b/reports/causal_graph_review/validation-20261006-batch49.json @@ -0,0 +1,1137 @@ +{ + "base_commit": "e3864bd9f75e621affb7f2e9705a62ce001321d5", + "scope": [ + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml" + ], + "reference_validator_version": "0.1.7", + "results": [ + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-strict.tsv", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-strict.log", + "log_sha256": "5ec5ecee1465c6b796e2421723a75005c5eb7cc9e76d1e39f8cbb9d1a736d3b0", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch49/src/communitymech/schema/communitymech.yaml\n\n=== validate-strict summary ===\n files scanned: 1\n files with ERROR: 0\n total ERROR rows: 0\n TSV: /private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-strict.tsv\n" + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-references.log", + "log_sha256": "9275ed627fc18c182b690085516f2418ce91b867fcae751ff8afb835d85cfebf", + "output_tail": "Validating kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n", + "explained_output_tail": "Validating kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n" + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-snippets.log", + "log_sha256": "32e79f5bf36e5c97f219c301b9924d6a9da1ff1bf07e2b076f93f0d0ee74a358", + "output_tail": "# 9 evidence snippets scanned across 1 files\n MATCH 9\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 0\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n\n# MISMATCH/WEAK detail\n\n# Files by RENDERING (faithful quote; differs from cache only by\n# punctuation/whitespace/Greek \u2014 this is what validate-references flags)\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n" + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-rank.log", + "log_sha256": "b8ef369d056d611ab27c0904f21d89612dfb08dddd3544c019b14b890715b28a", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000224\",\n \"name\": \"Grassland Soil Wet-Up Virus-Host Community\",\n \"score\": 93.3,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 4,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml\"\n }\n]\n" + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/Grassland_Soil_WetUp_Virus_Host_Community/2026-10-06T135836Z-codex-64198f.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-history-0.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-strict.tsv", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-strict.log", + "log_sha256": "7efefb80479debfa7e63ddf70df900db3adc1cdcbf7d0b9c99dc8b0ee59140f1", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch49/src/communitymech/schema/communitymech.yaml\n\n=== validate-strict summary ===\n files scanned: 1\n files with ERROR: 0\n total ERROR rows: 0\n TSV: /private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-strict.tsv\n" + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-references.log", + "log_sha256": "aa3cb7c8a748ef09d34ce9fded351e148b6eb58aefbd8990a53004fd93cf797e", + "output_tail": "Validating kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n", + "explained_output_tail": "Validating kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n" + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-snippets.log", + "log_sha256": "872637a69e95b3997368edea80eba5db2a2155e0ac9344b758394dcf97491410", + "output_tail": "# 14 evidence snippets scanned across 1 files\n MATCH 14\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 0\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n\n# MISMATCH/WEAK detail\n\n# Files by RENDERING (faithful quote; differs from cache only by\n# punctuation/whitespace/Greek \u2014 this is what validate-references flags)\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n" + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-rank.log", + "log_sha256": "c9ddd73000a35e07c6940f4ebe18b3ee36c9afa3592669dbefb2636cbefc3e10", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000242\",\n \"name\": \"Groundwater Elusimicrobia Diverse Metabolisms Community\",\n \"score\": 63.8,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 4,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 5,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"downstream\",\n \"metabolites_or_biological_processes\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml\"\n }\n]\n" + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/Groundwater_Elusimicrobia_Diverse_Metabolisms/2026-10-06T135837Z-codex-b5b944.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-history-0.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "inventory", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "reports/causal_graph_review/build_inventory.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/inventory.log", + "log_sha256": "6283f18defbd63e717194f85169e113a1b79d749a1563ac86cd80a71da2a9a34", + "output_tail": "{\n \"scope\": \"Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.\",\n \"semantic_review_rule\": \"Structural checks and readiness scores do not establish causal support. Completed reviews must match the current record SHA-256, cover every node once with a rationale, and reproduce the current edge list.\",\n \"records\": 460,\n \"nodes\": 1465,\n \"edges\": 676,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 150,\n \"review_status_counts\": {\n \"needs_research\": 14,\n \"pending\": 273,\n \"reviewed\": 173\n },\n \"structural_defects\": []\n}\n" + }, + { + "check": "network", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "communitymech.cli", + "audit-network", + "--json" + ], + "exit_code": 1, + "expected_exit_codes": [ + 1 + ], + "log": "/private/tmp/communitymech-batch49/network.log", + "log_sha256": "71a1e46fdd5d7c44e1766fabc85efb996c70258e3e64018891cfa94bb22fb13e", + "output_tail": "{\n \"preferred_term\": \"Legionella MAGs\",\n \"term\": {\n \"id\": \"NCBITaxon:445\",\n \"label\": \"Legionella\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The study detected Legionella-affiliated MAGs and used them in a virulence-gene risk assessment; the source did not assert pathogenicity for a cultured Legionella isolate.\\n\"\n },\n \"abundance_value\": \"Lower-abundance Legionella-affiliated MAGs detected during metagenomic risk assessment.\\n\",\n \"evidence\": [\n {\n \"reference\": \"PMID:41457319\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"COMPUTATIONAL\",\n \"snippet\": \"detection of waterborne pathogens from the Legionella genus\",\n \"explanation\": \"Supports Legionella-affiliated lower-abundance bins as monitored biosafety-relevant members of the consortium.\\n\"\n }\n ]\n },\n \"message\": \"Taxon 'Legionella MAGs' has no interactions\"\n }\n ],\n \"Sclerotinia_Sclerotia_12Strain_Biocontrol_SynCom\": [\n {\n \"type\": \"UNKNOWN_TARGET\",\n \"interaction\": \"Twelve-Strain SynCom Suppression of Sclerotinia Sclerotia\",\n \"interaction_index\": 0,\n \"taxon\": \"Sclerotinia sclerotiorum\",\n \"severity\": \"warning\",\n \"message\": \"Target taxon 'Sclerotinia sclerotiorum' not found in taxonomy section (community-level scope)\"\n },\n {\n \"type\": \"UNKNOWN_TARGET\",\n \"interaction\": \"Trinickia MC Key Contribution to Sclerotia Mortality\",\n \"interaction_index\": 1,\n \"taxon\": \"Sclerotinia sclerotiorum\",\n \"severity\": \"warning\",\n \"message\": \"Target taxon 'Sclerotinia sclerotiorum' not found in taxonomy section (community-level scope)\"\n }\n ],\n \"Space_Habitat_SevenMember_Stress_Tolerance_SynCom\": [\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Acinetobacter radioresistens 50V1\",\n \"taxon_id\": \"NCBITaxon:40216\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Acinetobacter radioresistens 50V1\",\n \"term\": {\n \"id\": \"NCBITaxon:40216\",\n \"label\": \"Acinetobacter radioresistens\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The isolate came from the preflight Mars Odyssey Orbiter; ontology grounding is at species level.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"50V1\",\n \"genome_accession\": \"GCA_002834555.1\"\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Acinetobacter radioresistens | 50V1 | Preflight Mars Odyssey Orbiter | \\u2013 | Mccoy et al., 2012 | GCA_002834555.1 | TSYB/TSYA | 37 \\u00b0C | 16\\u201318 h\",\n \"explanation\": \"Identifies A. radioresistens 50V1 as a consortium member and gives its spacecraft-associated source, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Acinetobacter radioresistens 50V1' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Micrococcus luteus W4-Al-K1\",\n \"taxon_id\": \"NCBITaxon:1270\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Micrococcus luteus W4-Al-K1\",\n \"term\": {\n \"id\": \"NCBITaxon:1270\",\n \"label\": \"Micrococcus luteus\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The isolate was recovered from an ISS aluminum-case touch array; ontology grounding is at species level.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"W4-Al-K1\",\n \"genome_accession\": \"GCA_057816565.1\"\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Micrococcus luteus | W4-Al-K1 | ISS, Touch Array Aluminum Case | - | Kr\\u00e4mer et al., 2025 | GCA_057816565.1 | NB, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies M. luteus W4-Al-K1 as a consortium member and gives its ISS source, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Micrococcus luteus W4-Al-K1' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Propionibacterium cyclohexanicum TA-12T\",\n \"taxon_id\": \"NCBITaxon:64702\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Propionibacterium cyclohexanicum TA-12T\",\n \"term\": {\n \"id\": \"NCBITaxon:64702\",\n \"label\": \"Propionibacterium cyclohexanicum\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the P. cyclohexanicum type strain as a biosafety-level-1 representative.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"TA-12T\",\n \"genome_accession\": \"GCA_900111365\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"16859\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Propionibacterium cyclohexanicum | TA-12 T | Spoilt Orange Juice | DSM 16859 T | Kusano et al., 1997 | GCA_900111365 | BHI, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies P. cyclohexanicum TA-12T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Propionibacterium cyclohexanicum TA-12T' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Pseudomonas antarctica CMS 35T\",\n \"taxon_id\": \"NCBITaxon:219572\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Pseudomonas antarctica CMS 35T\",\n \"term\": {\n \"id\": \"NCBITaxon:219572\",\n \"label\": \"Pseudomonas antarctica\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the P. antarctica type strain as a biosafety-level-1 Pseudomonas surrogate.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"CMS 35T\",\n \"genome_accession\": \"GCA_010634845\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"15318\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Pseudomonas antarctica | CMS 35 T | Antarctica | DSM 15318 T | Reddy et al., 2004 | GCA_010634845 | TSYB/TSYA | Ambient | 12\\u201316 h\",\n \"explanation\": \"Identifies P. antarctica CMS 35T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Pseudomonas antarctica CMS 35T' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Staphylococcus capitis K1-2-2-23\",\n \"taxon_id\": \"NCBITaxon:29388\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Staphylococcus capitis K1-2-2-23\",\n \"term\": {\n \"id\": \"NCBITaxon:29388\",\n \"label\": \"Staphylococcus capitis\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The isolate was recovered from ISS V2A steel; ontology grounding is at species level.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"K1-2-2-23\",\n \"genome_accession\": \"GCA_025272695\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"111179\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Staphylococcus capitis | K1-2-2-23 | ISS, V2A Steel | DSM 111179 | Sobisch et al., 2019 | GCA_025272695 | TSYB/TSYA | 37 \\u00b0C | 16\\u201324 h\",\n \"explanation\": \"Identifies S. capitis K1-2-2-23 as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Staphylococcus capitis K1-2-2-23' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Streptococcus halotolerans HTS9T\",\n \"taxon_id\": \"NCBITaxon:1814128\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Streptococcus halotolerans HTS9T\",\n \"term\": {\n \"id\": \"NCBITaxon:1814128\",\n \"label\": \"Streptococcus halotolerans\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the S. halotolerans type strain as a biosafety-level-1 representative.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"HTS9T\",\n \"genome_accession\": \"GCA_001598035\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"101996\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Streptococcus halotolerans | HTS9 T | Respiratory Tract of Marmota himalayana | DSM 101996 T | Niu et al., 2016 | GCA_001598035 | 2xLB, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies S. halotolerans HTS9T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Streptococcus halotolerans HTS9T' has no interactions\"\n }\n ]\n}\n" + }, + { + "check": "rank-all", + "command": [ + "just", + "rank-causal-graphs" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/rank-all.log", + "log_sha256": "a391e8a1d27e1221600cbca7c65381c8debe35cbfc1c0a6ab9b353a9889d734b", + "output_tail": "ities/Soybean_N_Fixation_sfSynCom.yaml\tCommunityMech:000064\tSoybean N-Fixation Simplified SynCom\t4\t4\t0\t3\t2\t3\t\t0\t0\n402\t100.0\tkb/communities/Sphingobium_Rhodococcus_Lignin_Dimer_Valorization_Coculture.yaml\tCommunityMech:000267\tSphingobium-Rhodococcus Lignin-Dimer Valorization Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n403\t100.0\tkb/communities/Staphylococcus_Candida_Context_Dependent_Biofilm_Coculture.yaml\tCommunityMech:000326\tStaphylococcus-Candida Context-Dependent Biofilm Coculture\t2\t2\t0\t6\t2\t13\t\t0\t0\n404\t100.0\tkb/communities/Stordalen_Mire_Methylotrophic_Methanogenesis_Community.yaml\tCommunityMech:000254\tStordalen Mire Methylotrophic Methanogenesis Community\t3\t3\t0\t4\t4\t9\t\t0\t0\n405\t100.0\tkb/communities/Streptomyces_A2_A5_A11_M7_Pesticide_Consortium.yaml\tCommunityMech:000335\tStreptomyces A2-A5-A11-M7 Pesticide-Bioremediation Consortium\t4\t4\t0\t4\t2\t5\t\t0\t0\n406\t100.0\tkb/communities/Subsurface_Carboxydocella_CO_Aquifer_Community.yaml\tCommunityMech:000251\tSubsurface Carboxydocella CO-Oxidation Aquifer Community\t1\t1\t0\t5\t2\t5\t\t0\t0\n407\t100.0\tkb/communities/Suillus_Bacillus_Thiamine_Ectomycorrhizal_SynCom.yaml\tCommunityMech:000312\tSuillus clintonianus-Bacillus altitudinis Thiamine Cross-Feeding SynCom\t3\t3\t0\t4\t3\t4\t\t0\t0\n408\t100.0\tkb/communities/Sulfide_Spring_Autotrophic_CPR_Biofilm.yaml\tCommunityMech:000222\tSulfide Spring Autotrophic CPR-Hosting Biofilm\t3\t3\t0\t3\t2\t4\t\t0\t0\n409\t100.0\tkb/communities/SynComBac10_Chicken_Intestinal_SynCom.yaml\tCommunityMech:000127\tSynComBac10 Chicken Intestinal SynCom\t3\t3\t0\t3\t2\t3\t\t0\t0\n410\t100.0\tkb/communities/SynCom_ARC_Peanut_Aflatoxin_Nodulation.yaml\tCommunityMech:000314\tSynCom ARC Peanut Aflatoxin-Control and Nodulation-Coupling Community\t5\t5\t0\t3\t2\t3\t\t0\t0\n411\t100.0\tkb/communities/SynCom_BsBv_Cigar_Tobacco_Leaf_Fermentation.yaml\tCommunityMech:000278\tSynCom BsBv Cigar Tobacco Leaf Fermentation\t2\t2\t0\t3\t2\t3\t\t0\t0\n412\t100.0\tkb/communities/SynCom_Chlorella_sorokiniana_Biogas_Slurry_Coupling_System.yaml\tCommunityMech:000285\tSynCom + Chlorella sorokiniana Biogas-slurry Coupling System\t2\t2\t0\t5\t3\t5\t\t0\t0\n413\t100.0\tkb/communities/SynCom_MetG2_Rhizobacteria_Sugarcane_Stress_Resilience.yaml\tCommunityMech:000302\tSynCom MetG2 Rhizobacteria Sugarcane Stress Resilience\t2\t2\t0\t3\t2\t4\t\t0\t0\n414\t100.0\tkb/communities/SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.yaml\tCommunityMech:000283\tSesame-flavor Baijiu Fuqu SynCom (13-genus)\t13\t13\t0\t3\t2\t3\t\t0\t0\n415\t100.0\tkb/communities/SynCom_Y_Agrobacterium_Bacillus_Biofilm_Biocontrol_Coculture.yaml\tCommunityMech:000272\tSynCom Y Agrobacterium-Bacillus Biofilm Biocontrol Co-culture\t2\t2\t0\t4\t2\t6\t\t0\t0\n416\t100.0\tkb/communities/Synechococcus_Azotobacter_Photoproduction_Mutualism.yaml\tCommunityMech:000207\tSynechococcus-Azotobacter Photoproduction Mutualism\t2\t2\t0\t3\t2\t6\t\t0\t0\n417\t100.0\tkb/communities/Synechococcus_Bacillus_SPC.yaml\tCommunityMech:000065\tSynechococcus-Bacillus Synthetic Photosynthetic Consortium\t2\t2\t0\t3\t2\t4\t\t0\t0\n418\t100.0\tkb/communities/Synechococcus_Ecoli_SPC.yaml\tCommunityMech:000066\tSynechococcus-E.coli Synthetic Photosynthetic Consortium\t2\t2\t0\t3\t2\t4\t\t0\t0\n419\t100.0\tkb/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml\tCommunityMech:000198\tSynechococcus-Halomonas Light-Driven PHB Coculture\t2\t2\t0\t3\t2\t6\t\t0\t0\n420\t100.0\tkb/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml\tCommunityMech:000167\tSynechococcus-Pseudomonas Phototrophic PHA and DNT Coculture\t2\t2\t0\t4\t2\t8\t\t0\t0\n421\t100.0\tkb/communities/Synechococcus_Saccharomyces_SPC.yaml\tCommunityMech:000067\tSynechococcus-Saccharomyces Synthetic Photosynthetic Consortium\t2\t2\t0\t3\t2\t4\t\t0\t0\n422\t100.0\tkb/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml\tCommunityMech:000211\tSynechococcus-Shewanella D-Lactate Biophotovoltaic Consortium\t2\t2\t0\t3\t2\t6\t\t0\t0\n423\t100.0\tkb/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml\tCommunityMech:000149\tSynthetic Lichen Synechococcus-Rhodotorula Coculture\t2\t2\t0\t3\t2\t4\t\t0\t0\n424\t100.0\tkb/communities/Syntrophobacter_Methanobacterium_Syntrophy.yaml\tCommunityMech:000068\tSyntrophobacter-Methanobacterium Syntrophic Consortium\t2\t2\t0\t3\t3\t8\t\t0\t0\n425\t100.0\tkb/communities/Syntrophobacter_Methanospirillum_Syntrophy.yaml\tCommunityMech:000069\tSyntrophobacter-Methanospirillum Syntrophic Consortium\t2\t2\t0\t3\t3\t5\t\t0\t0\n426\t100.0\tkb/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml\tCommunityMech:000189\tSyntrophomonas-Methanococcus Butyrate Growth Coordination Coculture\t2\t2\t0\t3\t2\t6\t\t0\t0\n427\t100.0\tkb/communities/Syntrophomonas_Methanospirillum_Syntrophy.yaml\tCommunityMech:000070\tSyntrophomonas-Methanospirillum Syntrophic Consortium\t2\t2\t0\t3\t3\t7\t\t0\t0\n428\t100.0\tkb/communities/Syntrophus_Benzoate_Degrader.yaml\tCommunityMech:000071\tSyntrophus Benzoate Degrader\t2\t2\t0\t3\t2\t6\t\t0\t0\n429\t100.0\tkb/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml\tCommunityMech:000187\tSyntrophus-Methanospirillum Gentianae Benzoate Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n430\t100.0\tkb/communities/THOR_Rhizosphere_Model_Community.yaml\tCommunityMech:000079\tTHOR Rhizosphere Model Community\t3\t3\t0\t4\t2\t5\t\t0\t0\n431\t100.0\tkb/communities/TYQ1_Nematode_Biocontrol_SynCom.yaml\tCommunityMech:000072\tTYQ1 Nematode Biocontrol SynCom\t8\t8\t0\t4\t4\t4\t\t0\t0\n432\t100.0\tkb/communities/Teosinte_Maize_Biofertilizer_SynCom7.yaml\tCommunityMech:000100\tTeosinte-Derived Maize Biofertilizer SynCom7\t4\t4\t0\t6\t2\t12\t\t0\t0\n433\t100.0\tkb/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml\tCommunityMech:000259\tThalassiosira-Marinobacter Marine Snow Coculture\t2\t2\t0\t4\t2\t10\t\t0\t0\n434\t100.0\tkb/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml\tCommunityMech:000162\tThalassiosira-Ruegeria Phycosphere Coculture\t2\t2\t0\t3\t2\t4\t\t0\t0\n435\t100.0\tkb/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml\tCommunityMech:000182\tThermacetogenium-Methanothermobacter Acetate Oxidation Coculture\t2\t2\t0\t3\t2\t8\t\t0\t0\n436\t100.0\tkb/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml\tCommunityMech:000282\tThermophilic Lignocellulose-degrading Composting SynCom\t5\t5\t0\t3\t2\t3\t\t0\t0\n437\t100.0\tkb/communities/Thermophilic_Pyrite_QS_Consortium.yaml\tCommunityMech:000073\tThermophilic Pyrite Quorum Sensing Consortium\t3\t3\t0\t6\t2\t14\t\t0\t0\n438\t100.0\tkb/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml\tCommunityMech:000186\tThermotoga-Methanocaldococcus Hyperthermophilic Syntrophy\t2\t2\t0\t3\t2\t8\t\t0\t0\n439\t100.0\tkb/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml\tCommunityMech:000239\tThiocyanate-Degrading Afipia and Thiobacillus Bioreactor Community\t3\t3\t0\t3\t2\t3\t\t0\t0\n440\t100.0\tkb/communities/Tinto_River_Iron_Cycling_Community.yaml\tCommunityMech:000074\tTinto River Iron Cycling Community\t6\t6\t0\t5\t3\t6\t\t0\t0\n441\t100.0\tkb/communities/Tobacco_Chemotactic_Biocontrol_SynCom.yaml\tCommunityMech:000106\tTobacco Chemotactic Biocontrol SynCom\t2\t2\t0\t3\t2\t4\t\t0\t0\n442\t100.0\tkb/communities/Tomato_Oxylipin_SynCom3.yaml\tCommunityMech:000107\tTomato Oxylipin-Protective SynCom3\t3\t3\t0\t3\t2\t4\t\t0\t0\n443\t100.0\tkb/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml\tCommunityMech:000112\tTribromophenol Anaerobic Bioremediation SynCom\t3\t3\t0\t4\t3\t5\t\t0\t0\n444\t100.0\tkb/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml\tCommunityMech:000188\tTrichococcus-Syntrophomonas-Methanospirillum Butyrate Coculture\t3\t3\t0\t3\t2\t6\t\t0\t0\n445\t100.0\tkb/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml\tCommunityMech:000205\tTrichoderma-E. coli Cellulosic Isobutanol Coculture\t2\t2\t0\t3\t2\t5\t\t0\t0\n446\t100.0\tkb/communities/Trichoderma_Lactate_Platform.yaml\tCommunityMech:000075\tTrichoderma Lactate Platform for SCFA Production\t3\t3\t0\t3\t2\t3\t\t0\t0\n447\t100.0\tkb/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml\tCommunityMech:000270\tTrichoderma-Streptomyces Filamentous Cellulose Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n448\t100.0\tkb/communities/Trichodesmium_Alteromonas_Marine_Consortium.yaml\tCommunityMech:000147\tTrichodesmium-Alteromonas Marine Consortium\t3\t3\t0\t3\t2\t5\t\t0\t0\n449\t100.0\tkb/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml\tCommunityMech:000337\tTropidoatractus magnetotacticus Magnetotactic Ciliate Tripartite Syntrophy\t3\t3\t0\t4\t2\t9\t\t0\t0\n450\t100.0\tkb/communities/Urine_Nitrification_SynCom.yaml\tCommunityMech:000117\tUrine Nitrification Synthetic Microbial Community\t5\t5\t0\t3\t2\t5\t\t0\t0\n451\t100.0\tkb/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml\tCommunityMech:000213\tVariovorax-Cryptococcus Vitamin Cross-Feeding Microcosm\t2\t2\t0\t3\t2\t4\t\t0\t0\n452\t100.0\tkb/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml\tCommunityMech:000328\tWaste-Sludge Electro-Fermentation Biofilm-Suspension Community\t5\t5\t0\t4\t2\t6\t\t0\t0\n453\t100.0\tkb/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.yaml\tCommunityMech:000098\tWatermelon Rhizosphere Fusarium-Protective SynCom8\t2\t2\t0\t3\t2\t7\t\t0\t0\n454\t100.0\tkb/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml\tCommunityMech:000255\tWetland Oxygen-Sulfate Greenhouse Gas Microcosm Community\t3\t3\t0\t3\t2\t6\t\t0\t0\n455\t100.0\tkb/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.yaml\tCommunityMech:000118\tWheat Straw Biogas Pretreatment SynCom\t4\t4\t0\t3\t2\t4\t\t0\t0\n456\t100.0\tkb/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml\tCommunityMech:000354\tYarrowia lipolytica Division-of-Labor Lipid Consortium\t2\t2\t0\t3\t2\t3\t\t0\t0\n457\t100.0\tkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml\tCommunityMech:000164\tYogurt Two-Species Starter Culture\t2\t2\t0\t4\t2\t9\t\t0\t0\n458\t100.0\tkb/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml\tCommunityMech:000210\tZymomonas-E. coli Exometabolomics-Designed Obligate Mutualism\t2\t2\t0\t3\t2\t6\t\t0\t0\n459\t100.0\tkb/communities/hCom2_Complex_Gut_Microbiome.yaml\tCommunityMech:000123\thCom2 Complex Gut Microbiome\t1\t1\t0\t3\t2\t3\t\t0\t0\n460\t100.0\tkb/communities/mCAFEs_Brachypodium_RCC.yaml\tCommunityMech:000078\tm-CAFEs Brachypodium Reduced Complexity Consortia\t10\t10\t0\t6\t2\t11\t\t0\t0\nPYTHONPATH=src uv run python scripts/rank_causal_graph_readiness.py \n" + }, + { + "check": "render", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "communitymech.render" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/render.log", + "log_sha256": "263cbfa7a884147f651effa433c12959b741e7488ff97f49f5f1f89e22d607af", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch49/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch49/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch49/docs/index.html\n" + }, + { + "check": "render-repeat", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "communitymech.render" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/render-repeat.log", + "log_sha256": "263cbfa7a884147f651effa433c12959b741e7488ff97f49f5f1f89e22d607af", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch49/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch49/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch49/docs/index.html\n" + }, + { + "check": "connectivity-survey", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-c", + "import json, pathlib, runpy\nfn=runpy.run_path('tests/test_community_level_connectivity_credit.py')['_survey']\nresult={}\nfor name,root in [('baseline', pathlib.Path('/private/tmp/communitymech-causal-batch48')), ('current',pathlib.Path.cwd())]:\n paths=sorted(p for r in ['kb/communities','data/isolates'] for p in (root/r).rglob('*.yaml'))\n assert len(paths)==460\n fn.__globals__['record_files']=lambda: paths\n result[name]=fn()\nprint(json.dumps(result))\n" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/connectivity-survey.log", + "log_sha256": "94714af3980cd1b72aa668c7f6e836a32cb28037e2a2e7c5157aabf634fe6c32", + "output_tail": "{\"baseline\": {\"records\": 460, \"with_community_level\": 389, \"mixed\": 126, \"community_level_only\": 263, \"taxa\": 1498, \"credited_solely_by_the_rule\": 1223}, \"current\": {\"records\": 460, \"with_community_level\": 389, \"mixed\": 127, \"community_level_only\": 262, \"taxa\": 1498, \"credited_solely_by_the_rule\": 1222}}\n" + }, + { + "check": "regressions", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "pytest", + "-q", + "tests/test_causal_review_batch10.py", + "tests/test_causal_review_batch11.py", + "tests/test_causal_review_batch12.py", + "tests/test_causal_review_batch13.py", + "tests/test_causal_review_batch14.py", + "tests/test_causal_review_batch15.py", + "tests/test_causal_review_batch16.py", + "tests/test_causal_review_batch17.py", + "tests/test_causal_review_batch18.py", + "tests/test_causal_review_batch19.py", + "tests/test_causal_review_batch20.py", + "tests/test_causal_review_batch21.py", + "tests/test_causal_review_batch22.py", + "tests/test_causal_review_batch23.py", + "tests/test_causal_review_batch24.py", + "tests/test_causal_review_batch25.py", + "tests/test_causal_review_batch27.py", + "tests/test_causal_review_batch28.py", + "tests/test_causal_review_batch29.py", + "tests/test_causal_review_batch30.py", + "tests/test_causal_review_batch31.py", + "tests/test_causal_review_batch32.py", + "tests/test_causal_review_batch33.py", + "tests/test_causal_review_batch34.py", + "tests/test_causal_review_batch35.py", + "tests/test_causal_review_batch36.py", + "tests/test_causal_review_batch37.py", + "tests/test_causal_review_batch38.py", + "tests/test_causal_review_batch39.py", + "tests/test_causal_review_batch40.py", + "tests/test_causal_review_batch41.py", + "tests/test_causal_review_batch42.py", + "tests/test_causal_review_batch43.py", + "tests/test_causal_review_batch44.py", + "tests/test_causal_review_batch45.py", + "tests/test_causal_review_batch46.py", + "tests/test_causal_review_batch47.py", + "tests/test_causal_review_batch48.py", + "tests/test_causal_review_batch49.py", + "tests/test_causal_review_batch5.py", + "tests/test_causal_review_batch6.py", + "tests/test_causal_review_batch7.py", + "tests/test_causal_review_batch8.py", + "tests/test_causal_review_batch9.py", + "tests/test_site_audit_fixes.py", + "tests/test_causal_review_inventory.py", + "tests/test_rank_causal_graph_readiness.py", + "tests/test_network_auditor.py", + "tests/test_participating_taxa.py", + "tests/test_causal_descriptions_are_published.py", + "tests/test_published_pages_name_real_records.py", + "tests/test_reference_validator_actually_validates.py", + "tests/test_snippet_audit_artefact_classes.py", + "tests/test_reference_error_annotation.py", + "tests/test_community_level_connectivity_credit.py", + "tests/test_no_paywalled_text_in_repo.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/regressions.log", + "log_sha256": "f36620a8a8a2762c713a587a1227a2e0c8aebf3d7c2af7be071efc9a872a68b3", + "output_tail": "........................................................................ [ 15%]\n........................................................................ [ 30%]\n........................................................................ [ 45%]\n........................................................................ [ 60%]\n........................................................................ [ 75%]\n........................................................................ [ 90%]\n.............................................. [100%]\n478 passed in 184.49s (0:03:04)\n" + }, + { + "check": "black", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black", + "--check", + "tests/test_causal_review_batch49.py", + "tests/test_participating_taxa.py", + "tests/test_community_level_connectivity_credit.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/black.log", + "log_sha256": "45a468fa6205768496f23f1716ebb7575e9b723449d2099b88bf2afef60b721f", + "output_tail": "All done! \u2728 \ud83c\udf70 \u2728\n3 files would be left unchanged.\n" + }, + { + "check": "ruff", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/wCcxEYRM4HeHgwYPZemHX/bin/ruff", + "check", + "tests/test_causal_review_batch49.py", + "tests/test_participating_taxa.py", + "tests/test_community_level_connectivity_credit.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/ruff.log", + "log_sha256": "82b3e6a6c090a57601d22943bd23fca9218d1031dbe5a7b754092f9a156b4f18", + "output_tail": "All checks passed!\n" + }, + { + "check": "diff-check", + "command": [ + "git", + "diff", + "--check" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/diff-check.log", + "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "output_tail": "" + } + ], + "limitations": [ + "Whole 204-line wet-up and 304-line groundwater records and every original node/arrow reviewed. Wet-up complete cached main body/Methods/captions and groundwater complete primary PMC main body/Methods/captions read. No figure images, supplements, raw data or analysis code audited.", + "Existing-structure repairs only; no new causal nodes/arrows, no paid Edison job or provider spend. Positive observations and genomic findings retained without claims that all possible mechanisms are represented.", + "Wet-up mortality is burst-size/model dependent; biomass is a viral-DNA proxy, host links are coarse and lifestyle alternatives remain. Richness summaries cover different time windows and need not conflict; lower mortality bounds differ slightly across source sections. No equation or code reimplementation claimed; CO2 mediation remains a hypothesis.", + "Groundwater is a comparative multi-habitat genome survey, not one demonstrated coexisting community. Same-CURIE habitat labels retained separately. Encoded loci are distinct from predicted function, and the nitrogenase paralog is not demonstrated nitrogen fixation.", + "All non-graph raw blocks and 920 cache files preserved, not certified. This leaves non-graph broad functional roles and evidence classifications outside the present repair. Reference CLI Total checks counts reported issues, not executed checks; SupportingReference coverage (#476), Linux DOI-cache lookup (#1091) and selected-cache provenance (#1362) remain limitations.", + "Dedup checked 801 all-state issue titles/bodies and ignored/hidden local review files, not every comment or PR review. Source-based self-adversarial review is not independent approval. Protected-main merge and corpus completion remain pending.", + "HTML descriptions checked by exact parser and repeat renders, not browser screenshots. Post-commit docs-current is a separate publication gate.", + "CLI Total checks counts reported issues, not executed checks. Exit0 is no reported issues, not source verification. SupportingReference coverage (#476), Linux DOI-cache lookup (#1091) and selected-cache provenance (#1362) remain limitations." + ], + "superseded_checks": [ + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-schema-attempt1.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-strict.tsv", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-strict-attempt1.log", + "log_sha256": "5ec5ecee1465c6b796e2421723a75005c5eb7cc9e76d1e39f8cbb9d1a736d3b0", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch49/src/communitymech/schema/communitymech.yaml\n\n=== validate-strict summary ===\n files scanned: 1\n files with ERROR: 0\n total ERROR rows: 0\n TSV: /private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-strict.tsv\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-terms-attempt1.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-references-attempt1.log", + "log_sha256": "9275ed627fc18c182b690085516f2418ce91b867fcae751ff8afb835d85cfebf", + "output_tail": "Validating kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n", + "explained_output_tail": "Validating kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-snippets-attempt1.log", + "log_sha256": "32e79f5bf36e5c97f219c301b9924d6a9da1ff1bf07e2b076f93f0d0ee74a358", + "output_tail": "# 9 evidence snippets scanned across 1 files\n MATCH 9\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 0\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n\n# MISMATCH/WEAK detail\n\n# Files by RENDERING (faithful quote; differs from cache only by\n# punctuation/whitespace/Greek \u2014 this is what validate-references flags)\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-rank-attempt1.log", + "log_sha256": "b8ef369d056d611ab27c0904f21d89612dfb08dddd3544c019b14b890715b28a", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000224\",\n \"name\": \"Grassland Soil Wet-Up Virus-Host Community\",\n \"score\": 93.3,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 4,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml\"\n }\n]\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Grassland_Soil_WetUp_Virus_Host_Community-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/Grassland_Soil_WetUp_Virus_Host_Community/2026-10-06T135836Z-codex-64198f.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Grassland_Soil_WetUp_Virus_Host_Community-history-0-attempt1.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-schema-attempt1.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-strict.tsv", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-strict-attempt1.log", + "log_sha256": "7efefb80479debfa7e63ddf70df900db3adc1cdcbf7d0b9c99dc8b0ee59140f1", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch49/src/communitymech/schema/communitymech.yaml\n\n=== validate-strict summary ===\n files scanned: 1\n files with ERROR: 0\n total ERROR rows: 0\n TSV: /private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-strict.tsv\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-terms-attempt1.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-references-attempt1.log", + "log_sha256": "aa3cb7c8a748ef09d34ce9fded351e148b6eb58aefbd8990a53004fd93cf797e", + "output_tail": "Validating kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n", + "explained_output_tail": "Validating kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-snippets-attempt1.log", + "log_sha256": "872637a69e95b3997368edea80eba5db2a2155e0ac9344b758394dcf97491410", + "output_tail": "# 14 evidence snippets scanned across 1 files\n MATCH 14\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 0\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n\n# MISMATCH/WEAK detail\n\n# Files by RENDERING (faithful quote; differs from cache only by\n# punctuation/whitespace/Greek \u2014 this is what validate-references flags)\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-rank-attempt1.log", + "log_sha256": "c9ddd73000a35e07c6940f4ebe18b3ee36c9afa3592669dbefb2636cbefc3e10", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000242\",\n \"name\": \"Groundwater Elusimicrobia Diverse Metabolisms Community\",\n \"score\": 63.8,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 4,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 5,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"downstream\",\n \"metabolites_or_biological_processes\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml\"\n }\n]\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "Groundwater_Elusimicrobia_Diverse_Metabolisms-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/Groundwater_Elusimicrobia_Diverse_Metabolisms/2026-10-06T135837Z-codex-b5b944.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/Groundwater_Elusimicrobia_Diverse_Metabolisms-history-0-attempt1.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "inventory", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "reports/causal_graph_review/build_inventory.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/inventory-attempt1.log", + "log_sha256": "6283f18defbd63e717194f85169e113a1b79d749a1563ac86cd80a71da2a9a34", + "output_tail": "{\n \"scope\": \"Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.\",\n \"semantic_review_rule\": \"Structural checks and readiness scores do not establish causal support. Completed reviews must match the current record SHA-256, cover every node once with a rationale, and reproduce the current edge list.\",\n \"records\": 460,\n \"nodes\": 1465,\n \"edges\": 676,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 150,\n \"review_status_counts\": {\n \"needs_research\": 14,\n \"pending\": 273,\n \"reviewed\": 173\n },\n \"structural_defects\": []\n}\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "network", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "communitymech.cli", + "audit-network", + "--json" + ], + "exit_code": 1, + "expected_exit_codes": [ + 1 + ], + "log": "/private/tmp/communitymech-batch49/network-attempt1.log", + "log_sha256": "71a1e46fdd5d7c44e1766fabc85efb996c70258e3e64018891cfa94bb22fb13e", + "output_tail": "{\n \"preferred_term\": \"Legionella MAGs\",\n \"term\": {\n \"id\": \"NCBITaxon:445\",\n \"label\": \"Legionella\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The study detected Legionella-affiliated MAGs and used them in a virulence-gene risk assessment; the source did not assert pathogenicity for a cultured Legionella isolate.\\n\"\n },\n \"abundance_value\": \"Lower-abundance Legionella-affiliated MAGs detected during metagenomic risk assessment.\\n\",\n \"evidence\": [\n {\n \"reference\": \"PMID:41457319\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"COMPUTATIONAL\",\n \"snippet\": \"detection of waterborne pathogens from the Legionella genus\",\n \"explanation\": \"Supports Legionella-affiliated lower-abundance bins as monitored biosafety-relevant members of the consortium.\\n\"\n }\n ]\n },\n \"message\": \"Taxon 'Legionella MAGs' has no interactions\"\n }\n ],\n \"Sclerotinia_Sclerotia_12Strain_Biocontrol_SynCom\": [\n {\n \"type\": \"UNKNOWN_TARGET\",\n \"interaction\": \"Twelve-Strain SynCom Suppression of Sclerotinia Sclerotia\",\n \"interaction_index\": 0,\n \"taxon\": \"Sclerotinia sclerotiorum\",\n \"severity\": \"warning\",\n \"message\": \"Target taxon 'Sclerotinia sclerotiorum' not found in taxonomy section (community-level scope)\"\n },\n {\n \"type\": \"UNKNOWN_TARGET\",\n \"interaction\": \"Trinickia MC Key Contribution to Sclerotia Mortality\",\n \"interaction_index\": 1,\n \"taxon\": \"Sclerotinia sclerotiorum\",\n \"severity\": \"warning\",\n \"message\": \"Target taxon 'Sclerotinia sclerotiorum' not found in taxonomy section (community-level scope)\"\n }\n ],\n \"Space_Habitat_SevenMember_Stress_Tolerance_SynCom\": [\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Acinetobacter radioresistens 50V1\",\n \"taxon_id\": \"NCBITaxon:40216\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Acinetobacter radioresistens 50V1\",\n \"term\": {\n \"id\": \"NCBITaxon:40216\",\n \"label\": \"Acinetobacter radioresistens\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The isolate came from the preflight Mars Odyssey Orbiter; ontology grounding is at species level.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"50V1\",\n \"genome_accession\": \"GCA_002834555.1\"\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Acinetobacter radioresistens | 50V1 | Preflight Mars Odyssey Orbiter | \\u2013 | Mccoy et al., 2012 | GCA_002834555.1 | TSYB/TSYA | 37 \\u00b0C | 16\\u201318 h\",\n \"explanation\": \"Identifies A. radioresistens 50V1 as a consortium member and gives its spacecraft-associated source, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Acinetobacter radioresistens 50V1' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Micrococcus luteus W4-Al-K1\",\n \"taxon_id\": \"NCBITaxon:1270\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Micrococcus luteus W4-Al-K1\",\n \"term\": {\n \"id\": \"NCBITaxon:1270\",\n \"label\": \"Micrococcus luteus\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The isolate was recovered from an ISS aluminum-case touch array; ontology grounding is at species level.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"W4-Al-K1\",\n \"genome_accession\": \"GCA_057816565.1\"\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Micrococcus luteus | W4-Al-K1 | ISS, Touch Array Aluminum Case | - | Kr\\u00e4mer et al., 2025 | GCA_057816565.1 | NB, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies M. luteus W4-Al-K1 as a consortium member and gives its ISS source, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Micrococcus luteus W4-Al-K1' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Propionibacterium cyclohexanicum TA-12T\",\n \"taxon_id\": \"NCBITaxon:64702\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Propionibacterium cyclohexanicum TA-12T\",\n \"term\": {\n \"id\": \"NCBITaxon:64702\",\n \"label\": \"Propionibacterium cyclohexanicum\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the P. cyclohexanicum type strain as a biosafety-level-1 representative.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"TA-12T\",\n \"genome_accession\": \"GCA_900111365\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"16859\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Propionibacterium cyclohexanicum | TA-12 T | Spoilt Orange Juice | DSM 16859 T | Kusano et al., 1997 | GCA_900111365 | BHI, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies P. cyclohexanicum TA-12T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Propionibacterium cyclohexanicum TA-12T' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Pseudomonas antarctica CMS 35T\",\n \"taxon_id\": \"NCBITaxon:219572\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Pseudomonas antarctica CMS 35T\",\n \"term\": {\n \"id\": \"NCBITaxon:219572\",\n \"label\": \"Pseudomonas antarctica\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the P. antarctica type strain as a biosafety-level-1 Pseudomonas surrogate.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"CMS 35T\",\n \"genome_accession\": \"GCA_010634845\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"15318\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Pseudomonas antarctica | CMS 35 T | Antarctica | DSM 15318 T | Reddy et al., 2004 | GCA_010634845 | TSYB/TSYA | Ambient | 12\\u201316 h\",\n \"explanation\": \"Identifies P. antarctica CMS 35T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Pseudomonas antarctica CMS 35T' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Staphylococcus capitis K1-2-2-23\",\n \"taxon_id\": \"NCBITaxon:29388\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Staphylococcus capitis K1-2-2-23\",\n \"term\": {\n \"id\": \"NCBITaxon:29388\",\n \"label\": \"Staphylococcus capitis\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The isolate was recovered from ISS V2A steel; ontology grounding is at species level.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"K1-2-2-23\",\n \"genome_accession\": \"GCA_025272695\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"111179\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Staphylococcus capitis | K1-2-2-23 | ISS, V2A Steel | DSM 111179 | Sobisch et al., 2019 | GCA_025272695 | TSYB/TSYA | 37 \\u00b0C | 16\\u201324 h\",\n \"explanation\": \"Identifies S. capitis K1-2-2-23 as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Staphylococcus capitis K1-2-2-23' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Streptococcus halotolerans HTS9T\",\n \"taxon_id\": \"NCBITaxon:1814128\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Streptococcus halotolerans HTS9T\",\n \"term\": {\n \"id\": \"NCBITaxon:1814128\",\n \"label\": \"Streptococcus halotolerans\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the S. halotolerans type strain as a biosafety-level-1 representative.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"HTS9T\",\n \"genome_accession\": \"GCA_001598035\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"101996\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Streptococcus halotolerans | HTS9 T | Respiratory Tract of Marmota himalayana | DSM 101996 T | Niu et al., 2016 | GCA_001598035 | 2xLB, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies S. halotolerans HTS9T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Streptococcus halotolerans HTS9T' has no interactions\"\n }\n ]\n}\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "rank-all", + "command": [ + "just", + "rank-causal-graphs" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/rank-all-attempt1.log", + "log_sha256": "a391e8a1d27e1221600cbca7c65381c8debe35cbfc1c0a6ab9b353a9889d734b", + "output_tail": "ities/Soybean_N_Fixation_sfSynCom.yaml\tCommunityMech:000064\tSoybean N-Fixation Simplified SynCom\t4\t4\t0\t3\t2\t3\t\t0\t0\n402\t100.0\tkb/communities/Sphingobium_Rhodococcus_Lignin_Dimer_Valorization_Coculture.yaml\tCommunityMech:000267\tSphingobium-Rhodococcus Lignin-Dimer Valorization Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n403\t100.0\tkb/communities/Staphylococcus_Candida_Context_Dependent_Biofilm_Coculture.yaml\tCommunityMech:000326\tStaphylococcus-Candida Context-Dependent Biofilm Coculture\t2\t2\t0\t6\t2\t13\t\t0\t0\n404\t100.0\tkb/communities/Stordalen_Mire_Methylotrophic_Methanogenesis_Community.yaml\tCommunityMech:000254\tStordalen Mire Methylotrophic Methanogenesis Community\t3\t3\t0\t4\t4\t9\t\t0\t0\n405\t100.0\tkb/communities/Streptomyces_A2_A5_A11_M7_Pesticide_Consortium.yaml\tCommunityMech:000335\tStreptomyces A2-A5-A11-M7 Pesticide-Bioremediation Consortium\t4\t4\t0\t4\t2\t5\t\t0\t0\n406\t100.0\tkb/communities/Subsurface_Carboxydocella_CO_Aquifer_Community.yaml\tCommunityMech:000251\tSubsurface Carboxydocella CO-Oxidation Aquifer Community\t1\t1\t0\t5\t2\t5\t\t0\t0\n407\t100.0\tkb/communities/Suillus_Bacillus_Thiamine_Ectomycorrhizal_SynCom.yaml\tCommunityMech:000312\tSuillus clintonianus-Bacillus altitudinis Thiamine Cross-Feeding SynCom\t3\t3\t0\t4\t3\t4\t\t0\t0\n408\t100.0\tkb/communities/Sulfide_Spring_Autotrophic_CPR_Biofilm.yaml\tCommunityMech:000222\tSulfide Spring Autotrophic CPR-Hosting Biofilm\t3\t3\t0\t3\t2\t4\t\t0\t0\n409\t100.0\tkb/communities/SynComBac10_Chicken_Intestinal_SynCom.yaml\tCommunityMech:000127\tSynComBac10 Chicken Intestinal SynCom\t3\t3\t0\t3\t2\t3\t\t0\t0\n410\t100.0\tkb/communities/SynCom_ARC_Peanut_Aflatoxin_Nodulation.yaml\tCommunityMech:000314\tSynCom ARC Peanut Aflatoxin-Control and Nodulation-Coupling Community\t5\t5\t0\t3\t2\t3\t\t0\t0\n411\t100.0\tkb/communities/SynCom_BsBv_Cigar_Tobacco_Leaf_Fermentation.yaml\tCommunityMech:000278\tSynCom BsBv Cigar Tobacco Leaf Fermentation\t2\t2\t0\t3\t2\t3\t\t0\t0\n412\t100.0\tkb/communities/SynCom_Chlorella_sorokiniana_Biogas_Slurry_Coupling_System.yaml\tCommunityMech:000285\tSynCom + Chlorella sorokiniana Biogas-slurry Coupling System\t2\t2\t0\t5\t3\t5\t\t0\t0\n413\t100.0\tkb/communities/SynCom_MetG2_Rhizobacteria_Sugarcane_Stress_Resilience.yaml\tCommunityMech:000302\tSynCom MetG2 Rhizobacteria Sugarcane Stress Resilience\t2\t2\t0\t3\t2\t4\t\t0\t0\n414\t100.0\tkb/communities/SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.yaml\tCommunityMech:000283\tSesame-flavor Baijiu Fuqu SynCom (13-genus)\t13\t13\t0\t3\t2\t3\t\t0\t0\n415\t100.0\tkb/communities/SynCom_Y_Agrobacterium_Bacillus_Biofilm_Biocontrol_Coculture.yaml\tCommunityMech:000272\tSynCom Y Agrobacterium-Bacillus Biofilm Biocontrol Co-culture\t2\t2\t0\t4\t2\t6\t\t0\t0\n416\t100.0\tkb/communities/Synechococcus_Azotobacter_Photoproduction_Mutualism.yaml\tCommunityMech:000207\tSynechococcus-Azotobacter Photoproduction Mutualism\t2\t2\t0\t3\t2\t6\t\t0\t0\n417\t100.0\tkb/communities/Synechococcus_Bacillus_SPC.yaml\tCommunityMech:000065\tSynechococcus-Bacillus Synthetic Photosynthetic Consortium\t2\t2\t0\t3\t2\t4\t\t0\t0\n418\t100.0\tkb/communities/Synechococcus_Ecoli_SPC.yaml\tCommunityMech:000066\tSynechococcus-E.coli Synthetic Photosynthetic Consortium\t2\t2\t0\t3\t2\t4\t\t0\t0\n419\t100.0\tkb/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml\tCommunityMech:000198\tSynechococcus-Halomonas Light-Driven PHB Coculture\t2\t2\t0\t3\t2\t6\t\t0\t0\n420\t100.0\tkb/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml\tCommunityMech:000167\tSynechococcus-Pseudomonas Phototrophic PHA and DNT Coculture\t2\t2\t0\t4\t2\t8\t\t0\t0\n421\t100.0\tkb/communities/Synechococcus_Saccharomyces_SPC.yaml\tCommunityMech:000067\tSynechococcus-Saccharomyces Synthetic Photosynthetic Consortium\t2\t2\t0\t3\t2\t4\t\t0\t0\n422\t100.0\tkb/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml\tCommunityMech:000211\tSynechococcus-Shewanella D-Lactate Biophotovoltaic Consortium\t2\t2\t0\t3\t2\t6\t\t0\t0\n423\t100.0\tkb/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml\tCommunityMech:000149\tSynthetic Lichen Synechococcus-Rhodotorula Coculture\t2\t2\t0\t3\t2\t4\t\t0\t0\n424\t100.0\tkb/communities/Syntrophobacter_Methanobacterium_Syntrophy.yaml\tCommunityMech:000068\tSyntrophobacter-Methanobacterium Syntrophic Consortium\t2\t2\t0\t3\t3\t8\t\t0\t0\n425\t100.0\tkb/communities/Syntrophobacter_Methanospirillum_Syntrophy.yaml\tCommunityMech:000069\tSyntrophobacter-Methanospirillum Syntrophic Consortium\t2\t2\t0\t3\t3\t5\t\t0\t0\n426\t100.0\tkb/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml\tCommunityMech:000189\tSyntrophomonas-Methanococcus Butyrate Growth Coordination Coculture\t2\t2\t0\t3\t2\t6\t\t0\t0\n427\t100.0\tkb/communities/Syntrophomonas_Methanospirillum_Syntrophy.yaml\tCommunityMech:000070\tSyntrophomonas-Methanospirillum Syntrophic Consortium\t2\t2\t0\t3\t3\t7\t\t0\t0\n428\t100.0\tkb/communities/Syntrophus_Benzoate_Degrader.yaml\tCommunityMech:000071\tSyntrophus Benzoate Degrader\t2\t2\t0\t3\t2\t6\t\t0\t0\n429\t100.0\tkb/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml\tCommunityMech:000187\tSyntrophus-Methanospirillum Gentianae Benzoate Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n430\t100.0\tkb/communities/THOR_Rhizosphere_Model_Community.yaml\tCommunityMech:000079\tTHOR Rhizosphere Model Community\t3\t3\t0\t4\t2\t5\t\t0\t0\n431\t100.0\tkb/communities/TYQ1_Nematode_Biocontrol_SynCom.yaml\tCommunityMech:000072\tTYQ1 Nematode Biocontrol SynCom\t8\t8\t0\t4\t4\t4\t\t0\t0\n432\t100.0\tkb/communities/Teosinte_Maize_Biofertilizer_SynCom7.yaml\tCommunityMech:000100\tTeosinte-Derived Maize Biofertilizer SynCom7\t4\t4\t0\t6\t2\t12\t\t0\t0\n433\t100.0\tkb/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml\tCommunityMech:000259\tThalassiosira-Marinobacter Marine Snow Coculture\t2\t2\t0\t4\t2\t10\t\t0\t0\n434\t100.0\tkb/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml\tCommunityMech:000162\tThalassiosira-Ruegeria Phycosphere Coculture\t2\t2\t0\t3\t2\t4\t\t0\t0\n435\t100.0\tkb/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml\tCommunityMech:000182\tThermacetogenium-Methanothermobacter Acetate Oxidation Coculture\t2\t2\t0\t3\t2\t8\t\t0\t0\n436\t100.0\tkb/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml\tCommunityMech:000282\tThermophilic Lignocellulose-degrading Composting SynCom\t5\t5\t0\t3\t2\t3\t\t0\t0\n437\t100.0\tkb/communities/Thermophilic_Pyrite_QS_Consortium.yaml\tCommunityMech:000073\tThermophilic Pyrite Quorum Sensing Consortium\t3\t3\t0\t6\t2\t14\t\t0\t0\n438\t100.0\tkb/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml\tCommunityMech:000186\tThermotoga-Methanocaldococcus Hyperthermophilic Syntrophy\t2\t2\t0\t3\t2\t8\t\t0\t0\n439\t100.0\tkb/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml\tCommunityMech:000239\tThiocyanate-Degrading Afipia and Thiobacillus Bioreactor Community\t3\t3\t0\t3\t2\t3\t\t0\t0\n440\t100.0\tkb/communities/Tinto_River_Iron_Cycling_Community.yaml\tCommunityMech:000074\tTinto River Iron Cycling Community\t6\t6\t0\t5\t3\t6\t\t0\t0\n441\t100.0\tkb/communities/Tobacco_Chemotactic_Biocontrol_SynCom.yaml\tCommunityMech:000106\tTobacco Chemotactic Biocontrol SynCom\t2\t2\t0\t3\t2\t4\t\t0\t0\n442\t100.0\tkb/communities/Tomato_Oxylipin_SynCom3.yaml\tCommunityMech:000107\tTomato Oxylipin-Protective SynCom3\t3\t3\t0\t3\t2\t4\t\t0\t0\n443\t100.0\tkb/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml\tCommunityMech:000112\tTribromophenol Anaerobic Bioremediation SynCom\t3\t3\t0\t4\t3\t5\t\t0\t0\n444\t100.0\tkb/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml\tCommunityMech:000188\tTrichococcus-Syntrophomonas-Methanospirillum Butyrate Coculture\t3\t3\t0\t3\t2\t6\t\t0\t0\n445\t100.0\tkb/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml\tCommunityMech:000205\tTrichoderma-E. coli Cellulosic Isobutanol Coculture\t2\t2\t0\t3\t2\t5\t\t0\t0\n446\t100.0\tkb/communities/Trichoderma_Lactate_Platform.yaml\tCommunityMech:000075\tTrichoderma Lactate Platform for SCFA Production\t3\t3\t0\t3\t2\t3\t\t0\t0\n447\t100.0\tkb/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml\tCommunityMech:000270\tTrichoderma-Streptomyces Filamentous Cellulose Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n448\t100.0\tkb/communities/Trichodesmium_Alteromonas_Marine_Consortium.yaml\tCommunityMech:000147\tTrichodesmium-Alteromonas Marine Consortium\t3\t3\t0\t3\t2\t5\t\t0\t0\n449\t100.0\tkb/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml\tCommunityMech:000337\tTropidoatractus magnetotacticus Magnetotactic Ciliate Tripartite Syntrophy\t3\t3\t0\t4\t2\t9\t\t0\t0\n450\t100.0\tkb/communities/Urine_Nitrification_SynCom.yaml\tCommunityMech:000117\tUrine Nitrification Synthetic Microbial Community\t5\t5\t0\t3\t2\t5\t\t0\t0\n451\t100.0\tkb/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml\tCommunityMech:000213\tVariovorax-Cryptococcus Vitamin Cross-Feeding Microcosm\t2\t2\t0\t3\t2\t4\t\t0\t0\n452\t100.0\tkb/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml\tCommunityMech:000328\tWaste-Sludge Electro-Fermentation Biofilm-Suspension Community\t5\t5\t0\t4\t2\t6\t\t0\t0\n453\t100.0\tkb/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.yaml\tCommunityMech:000098\tWatermelon Rhizosphere Fusarium-Protective SynCom8\t2\t2\t0\t3\t2\t7\t\t0\t0\n454\t100.0\tkb/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml\tCommunityMech:000255\tWetland Oxygen-Sulfate Greenhouse Gas Microcosm Community\t3\t3\t0\t3\t2\t6\t\t0\t0\n455\t100.0\tkb/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.yaml\tCommunityMech:000118\tWheat Straw Biogas Pretreatment SynCom\t4\t4\t0\t3\t2\t4\t\t0\t0\n456\t100.0\tkb/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml\tCommunityMech:000354\tYarrowia lipolytica Division-of-Labor Lipid Consortium\t2\t2\t0\t3\t2\t3\t\t0\t0\n457\t100.0\tkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml\tCommunityMech:000164\tYogurt Two-Species Starter Culture\t2\t2\t0\t4\t2\t9\t\t0\t0\n458\t100.0\tkb/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml\tCommunityMech:000210\tZymomonas-E. coli Exometabolomics-Designed Obligate Mutualism\t2\t2\t0\t3\t2\t6\t\t0\t0\n459\t100.0\tkb/communities/hCom2_Complex_Gut_Microbiome.yaml\tCommunityMech:000123\thCom2 Complex Gut Microbiome\t1\t1\t0\t3\t2\t3\t\t0\t0\n460\t100.0\tkb/communities/mCAFEs_Brachypodium_RCC.yaml\tCommunityMech:000078\tm-CAFEs Brachypodium Reduced Complexity Consortia\t10\t10\t0\t6\t2\t11\t\t0\t0\nPYTHONPATH=src uv run python scripts/rank_causal_graph_readiness.py \n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "render", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "communitymech.render" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/render-attempt1.log", + "log_sha256": "263cbfa7a884147f651effa433c12959b741e7488ff97f49f5f1f89e22d607af", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch49/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch49/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch49/docs/index.html\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "render-repeat", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "communitymech.render" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/render-repeat-attempt1.log", + "log_sha256": "263cbfa7a884147f651effa433c12959b741e7488ff97f49f5f1f89e22d607af", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch49/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch49/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch49/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch49/docs/index.html\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "connectivity-survey", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-c", + "import json, pathlib, runpy\nfn=runpy.run_path('tests/test_community_level_connectivity_credit.py')['_survey']\nresult={}\nfor name,root in [('baseline', pathlib.Path('/private/tmp/communitymech-causal-batch48')), ('current',pathlib.Path.cwd())]:\n paths=sorted(p for r in ['kb/communities','data/isolates'] for p in (root/r).rglob('*.yaml'))\n assert len(paths)==460\n fn.__globals__['record_files']=lambda: paths\n result[name]=fn()\nprint(json.dumps(result))\n" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/connectivity-survey-attempt1.log", + "log_sha256": "94714af3980cd1b72aa668c7f6e836a32cb28037e2a2e7c5157aabf634fe6c32", + "output_tail": "{\"baseline\": {\"records\": 460, \"with_community_level\": 389, \"mixed\": 126, \"community_level_only\": 263, \"taxa\": 1498, \"credited_solely_by_the_rule\": 1223}, \"current\": {\"records\": 460, \"with_community_level\": 389, \"mixed\": 127, \"community_level_only\": 262, \"taxa\": 1498, \"credited_solely_by_the_rule\": 1222}}\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "regressions", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "pytest", + "-q", + "tests/test_causal_review_batch10.py", + "tests/test_causal_review_batch11.py", + "tests/test_causal_review_batch12.py", + "tests/test_causal_review_batch13.py", + "tests/test_causal_review_batch14.py", + "tests/test_causal_review_batch15.py", + "tests/test_causal_review_batch16.py", + "tests/test_causal_review_batch17.py", + "tests/test_causal_review_batch18.py", + "tests/test_causal_review_batch19.py", + "tests/test_causal_review_batch20.py", + "tests/test_causal_review_batch21.py", + "tests/test_causal_review_batch22.py", + "tests/test_causal_review_batch23.py", + "tests/test_causal_review_batch24.py", + "tests/test_causal_review_batch25.py", + "tests/test_causal_review_batch27.py", + "tests/test_causal_review_batch28.py", + "tests/test_causal_review_batch29.py", + "tests/test_causal_review_batch30.py", + "tests/test_causal_review_batch31.py", + "tests/test_causal_review_batch32.py", + "tests/test_causal_review_batch33.py", + "tests/test_causal_review_batch34.py", + "tests/test_causal_review_batch35.py", + "tests/test_causal_review_batch36.py", + "tests/test_causal_review_batch37.py", + "tests/test_causal_review_batch38.py", + "tests/test_causal_review_batch39.py", + "tests/test_causal_review_batch40.py", + "tests/test_causal_review_batch41.py", + "tests/test_causal_review_batch42.py", + "tests/test_causal_review_batch43.py", + "tests/test_causal_review_batch44.py", + "tests/test_causal_review_batch45.py", + "tests/test_causal_review_batch46.py", + "tests/test_causal_review_batch47.py", + "tests/test_causal_review_batch48.py", + "tests/test_causal_review_batch49.py", + "tests/test_causal_review_batch5.py", + "tests/test_causal_review_batch6.py", + "tests/test_causal_review_batch7.py", + "tests/test_causal_review_batch8.py", + "tests/test_causal_review_batch9.py", + "tests/test_site_audit_fixes.py", + "tests/test_causal_review_inventory.py", + "tests/test_rank_causal_graph_readiness.py", + "tests/test_network_auditor.py", + "tests/test_participating_taxa.py", + "tests/test_causal_descriptions_are_published.py", + "tests/test_published_pages_name_real_records.py", + "tests/test_reference_validator_actually_validates.py", + "tests/test_snippet_audit_artefact_classes.py", + "tests/test_reference_error_annotation.py", + "tests/test_community_level_connectivity_credit.py", + "tests/test_no_paywalled_text_in_repo.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/regressions-attempt1.log", + "log_sha256": "0c2157dda488335098391f09385b99cf85fadfea0fdf51cf3ffbc4186f7f185a", + "output_tail": "........................................................................ [ 15%]\n........................................................................ [ 30%]\n........................................................................ [ 45%]\n........................................................................ [ 60%]\n........................................................................ [ 75%]\n........................................................................ [ 90%]\n.............................................. [100%]\n478 passed in 197.12s (0:03:17)\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "black", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black", + "--check", + "tests/test_causal_review_batch49.py", + "tests/test_participating_taxa.py", + "tests/test_community_level_connectivity_credit.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/black-attempt1.log", + "log_sha256": "45a468fa6205768496f23f1716ebb7575e9b723449d2099b88bf2afef60b721f", + "output_tail": "All done! \u2728 \ud83c\udf70 \u2728\n3 files would be left unchanged.\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "ruff", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/wCcxEYRM4HeHgwYPZemHX/bin/ruff", + "check", + "tests/test_causal_review_batch49.py", + "tests/test_participating_taxa.py", + "tests/test_community_level_connectivity_credit.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/ruff-attempt1.log", + "log_sha256": "82b3e6a6c090a57601d22943bd23fca9218d1031dbe5a7b754092f9a156b4f18", + "output_tail": "All checks passed!\n", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + }, + { + "check": "diff-check", + "command": [ + "git", + "diff", + "--check" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch49/diff-check-attempt1.log", + "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "output_tail": "", + "superseded_reason": "Pre-correction source-window wording; all verification rerun against final text." + } + ], + "resume_note": "Existing command receipts reused only after command identity, exit status, log hash, record hashes and unchanged source-cache checks. Any interrupted verification retains its original receipts; no unexecuted check is counted as passed.", + "snippet_counts_by_record": { + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml": { + "MATCH": 9, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml": { + "MATCH": 14, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + } + }, + "unchanged_raw_blocks": 33, + "unchanged_record_files": 458, + "unchanged_cache_files": 920, + "network_delta": { + "existing_findings_preserved": 34, + "added_findings": {}, + "removed_findings": {} + }, + "render_determinism": true, + "published_description_coverage": { + "pages": 456, + "nodes": 1451, + "arrows": 668 + }, + "participant_census": { + "measurements": { + "baseline": { + "records": 460, + "with_community_level": 389, + "mixed": 126, + "community_level_only": 263, + "taxa": 1498, + "credited_solely_by_the_rule": 1223 + }, + "current": { + "records": 460, + "with_community_level": 389, + "mixed": 127, + "community_level_only": 262, + "taxa": 1498, + "credited_solely_by_the_rule": 1222 + } + }, + "interpretation": "Groundwater comparison remains community-scoped while three intrinsic capacities become source-only. Measured mixed +1, CL-only -1, solely credited -1; two registry entries added. No production matching change." + }, + "corpus": { + "scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.", + "records": 460, + "nodes": 1465, + "edges": 676, + "records_without_nodes": 8, + "records_without_edges": 150, + "review_status_counts": { + "needs_research": 14, + "pending": 273, + "reviewed": 173 + }, + "structural_defects": [] + }, + "tested_file_sha256": { + "reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml": "0b3c8b79e2264e4b9bc5ced88f6eedab41110a20b09bd21b4820554a62a1af6d", + "tests/test_causal_review_batch49.py": "84fc66b8c879ad8b11037465cefbd3db2866022d719aee5a2aabf0f810761065", + "tests/test_participating_taxa.py": "1d92e0223433203a099a8cdff20df8635d04dcb41babbc9729f96969c14645d3", + "tests/test_community_level_connectivity_credit.py": "4558cd732952343c247c0014da0ae1311bb93ea213a57ffeb7a31b788e68800b", + "kb/communities/Grassland_Soil_WetUp_Virus_Host_Community.yaml": "69f8f1177ae4ad7775872f98f55d3bcc9d184f0c4c45425fbc189128d1427d93", + "kb/communities/Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml": "0f6adfa3d990e2d2d09e5680230095263aecd71f1ee1b00288ebe13e5a995089", + "reports/causal_graph_review/README.md": "0532a816f308848fb6e20fef089cf22f43c2c2d8d693174b28b154e47ea620b3" + }, + "status": "verified_wetup_elusimicrobia_graph_repair", + "reference_validator_caveat": "CLI Total checks counts reported issues, not executed checks. Exit0 is no reported issues, not source verification. SupportingReference coverage (#476), Linux DOI-cache lookup (#1091) and selected-cache provenance (#1362) remain limitations.", + "pre_research_baseline": { + "base_commit": "e3864bd9f75e621affb7f2e9705a62ce001321d5", + "base_tree": "affd939b0a8cf19217bf113d7fb469a7413849d0", + "research_worktree": "/private/tmp/communitymech-causal-batch48", + "checks": [ + { + "name": "rank", + "command": [ + "just", + "rank-causal-graphs" + ], + "exit_code": 0, + "expected_exit_code": 0, + "log": "/private/tmp/communitymech-batch49/baseline-rank.log", + "sha256": "4032f7f5734a6eb895737b4d4f11e27d62a96696fb0b6d86de28c78a1a322f6d", + "output_tail": "/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml\tCommunityMech:000337\tTropidoatractus magnetotacticus Magnetotactic Ciliate Tripartite Syntrophy\t3\t3\t0\t4\t2\t9\t\t0\t0\n450\t100.0\tkb/communities/Urine_Nitrification_SynCom.yaml\tCommunityMech:000117\tUrine Nitrification Synthetic Microbial Community\t5\t5\t0\t3\t2\t5\t\t0\t0\n451\t100.0\tkb/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml\tCommunityMech:000213\tVariovorax-Cryptococcus Vitamin Cross-Feeding Microcosm\t2\t2\t0\t3\t2\t4\t\t0\t0\n452\t100.0\tkb/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml\tCommunityMech:000328\tWaste-Sludge Electro-Fermentation Biofilm-Suspension Community\t5\t5\t0\t4\t2\t6\t\t0\t0\n453\t100.0\tkb/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.yaml\tCommunityMech:000098\tWatermelon Rhizosphere Fusarium-Protective SynCom8\t2\t2\t0\t3\t2\t7\t\t0\t0\n454\t100.0\tkb/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml\tCommunityMech:000255\tWetland Oxygen-Sulfate Greenhouse Gas Microcosm Community\t3\t3\t0\t3\t2\t6\t\t0\t0\n455\t100.0\tkb/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.yaml\tCommunityMech:000118\tWheat Straw Biogas Pretreatment SynCom\t4\t4\t0\t3\t2\t4\t\t0\t0\n456\t100.0\tkb/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml\tCommunityMech:000354\tYarrowia lipolytica Division-of-Labor Lipid Consortium\t2\t2\t0\t3\t2\t3\t\t0\t0\n457\t100.0\tkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml\tCommunityMech:000164\tYogurt Two-Species Starter Culture\t2\t2\t0\t4\t2\t9\t\t0\t0\n458\t100.0\tkb/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml\tCommunityMech:000210\tZymomonas-E. coli Exometabolomics-Designed Obligate Mutualism\t2\t2\t0\t3\t2\t6\t\t0\t0\n459\t100.0\tkb/communities/hCom2_Complex_Gut_Microbiome.yaml\tCommunityMech:000123\thCom2 Complex Gut Microbiome\t1\t1\t0\t3\t2\t3\t\t0\t0\n460\t100.0\tkb/communities/mCAFEs_Brachypodium_RCC.yaml\tCommunityMech:000078\tm-CAFEs Brachypodium Reduced Complexity Consortia\t10\t10\t0\t6\t2\t11\t\t0\t0\nPYTHONPATH=src uv run python scripts/rank_causal_graph_readiness.py \n" + }, + { + "name": "just-network", + "command": [ + "just", + "audit-network-json" + ], + "exit_code": 2, + "expected_exit_code": 2, + "log": "/private/tmp/communitymech-batch49/baseline-just-network.log", + "sha256": "8595db43420d3f0a01c57acd6ad733a531a72e962486d20b4e1c2840dda55bff", + "output_tail": "uv run communitymech audit-network --json\nerror: Failed to spawn: `communitymech`\n Caused by: No such file or directory (os error 2)\nerror: recipe `audit-network-json` failed on line 574 with exit code 2\n" + }, + { + "name": "network", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "communitymech.cli", + "audit-network", + "--json" + ], + "exit_code": 1, + "expected_exit_code": 1, + "log": "/private/tmp/communitymech-batch49/baseline-network.log", + "sha256": "71a1e46fdd5d7c44e1766fabc85efb996c70258e3e64018891cfa94bb22fb13e", + "output_tail": " \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Staphylococcus capitis | K1-2-2-23 | ISS, V2A Steel | DSM 111179 | Sobisch et al., 2019 | GCA_025272695 | TSYB/TSYA | 37 \\u00b0C | 16\\u201324 h\",\n \"explanation\": \"Identifies S. capitis K1-2-2-23 as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Staphylococcus capitis K1-2-2-23' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Streptococcus halotolerans HTS9T\",\n \"taxon_id\": \"NCBITaxon:1814128\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Streptococcus halotolerans HTS9T\",\n \"term\": {\n \"id\": \"NCBITaxon:1814128\",\n \"label\": \"Streptococcus halotolerans\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the S. halotolerans type strain as a biosafety-level-1 representative.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"HTS9T\",\n \"genome_accession\": \"GCA_001598035\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"101996\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Streptococcus halotolerans | HTS9 T | Respiratory Tract of Marmota himalayana | DSM 101996 T | Niu et al., 2016 | GCA_001598035 | 2xLB, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies S. halotolerans HTS9T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Streptococcus halotolerans HTS9T' has no interactions\"\n }\n ]\n}\n" + }, + { + "name": "downstream", + "command": [ + "rg", + "--no-ignore", + "--hidden", + "-n", + "downstream:", + "kb/communities", + "data/isolates", + "--glob", + "*.yaml" + ], + "exit_code": 0, + "expected_exit_code": 0, + "log": "/private/tmp/communitymech-batch49/baseline-downstream.log", + "sha256": "2a83bea4d84558a7185243e60f05e22e1a8ea76f5027ee0ab8b4582fe8488672", + "output_tail": "ream:\nkb/communities/Lunar_Simulant_Phosphate_Solubilizing_Bacteria_Nicotiana.yaml:324: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:138: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:182: downstream:\nkb/communities/Desulfovibrio_Methanococcus_Syntrophy.yaml:232: downstream:\nkb/communities/Clostridium_Carboxidivorans_Kluyveri_CO_Chain_Elongation_Coculture.yaml:247: downstream:\nkb/communities/Clostridium_Carboxidivorans_Kluyveri_CO_Chain_Elongation_Coculture.yaml:344: downstream:\nkb/communities/At_RSPHERE_SynCom.yaml:207: downstream:\nkb/communities/At_RSPHERE_SynCom.yaml:249: downstream:\nkb/communities/Ferroplasma_Leptospirillum_Syntrophy.yaml:125: downstream:\nkb/communities/PMI_Variovorax_Thermotolerance_Collection.yaml:330: downstream:\nkb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml:157: downstream:\nkb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml:203: downstream:\nkb/communities/Salar_Atacama_Lithium_Brine_Community.yaml:295: downstream:\nkb/communities/Salar_Atacama_Lithium_Brine_Community.yaml:339: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:268: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:315: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:104: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:127: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:120: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:152: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:65: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:98: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:131: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:155: downstream:\nkb/communities/BioModels_MODEL2204300001_Kefir_Community_Model.yaml:203: downstream:\n" + } + ], + "baseline_sha256": "ce4eaac41e5777098565309689eb74aac32a51f889ea6e54cbce94ee54029339" + }, + "self_review_correction": { + "issue": 1490, + "previous_record_sha256": "99f6077a20ddcc6124795cb7d55a349d71d03e2786789e2a7a4966b5160d03c5", + "record_sha256": "69f8f1177ae4ad7775872f98f55d3bcc9d184f0c4c45425fbc189128d1427d93", + "changed_fields": [ + "discussions", + "ecological_interactions" + ], + "history_unchanged": true, + "reason": "Different time-window summaries do not demonstrate a contradiction.", + "all_prior_checks_superseded": true + } +} diff --git a/tests/test_causal_review_batch49.py b/tests/test_causal_review_batch49.py new file mode 100644 index 000000000..0121cb5a6 --- /dev/null +++ b/tests/test_causal_review_batch49.py @@ -0,0 +1,117 @@ +"""Preserve positive observations without treating models as resolved mechanisms.""" + +import hashlib +from pathlib import Path + +import yaml + +ROOT = Path(__file__).resolve().parents[1] +LEDGER = ROOT / "reports/causal_graph_review/decisions/20261006-wetup-elusimicrobia-batch49.yaml" + + +def records(): + ledger = yaml.safe_load(LEDGER.read_text()) + return ledger, [yaml.safe_load((ROOT / r["path"]).read_text()) for r in ledger["records"]] + + +def test_viral_predation_direction_and_ecosystem_participants(): + _, (doc, _) = records() + activity, death, carbon = doc["ecological_interactions"] + for node in [activity, carbon]: + assert node["scope"] == "COMMUNITY_LEVEL" + assert not {"interaction_type", "source_taxon", "target_taxon"} & node.keys() + assert [p["preferred_term"] for p in node["participating_taxa"]] == [ + t["taxon_term"]["preferred_term"] for t in doc["taxonomy"] + ] + assert death["scope"] == "PAIRWISE" and death["interaction_type"] == "PREDATION" + assert death["source_taxon"]["term"]["id"] == "NCBITaxon:10239" + assert death["target_taxon"]["term"]["id"] == "NCBITaxon:2" + assert carbon["metabolites"][0]["term"]["id"] == "CHEBI:16526" + + +def test_wetup_observation_and_modeled_mortality_are_distinct(): + _, (doc, _) = records() + activity, death, carbon = doc["ecological_interactions"] + assert "four-fold biomass increase" in activity["description"] + assert "does not exclude nonintegrating temperate" in activity["description"] + assert activity["evidence"][0]["evidence_source"] == "COMPUTATIONAL" + assert activity["evidence"][0]["supports"] == "PARTIAL" + assert activity["evidence"][1]["evidence_source"] == "IN_VITRO" + assert "below 1% to 46.6%" in death["description"] + assert "200 to 1 virions per cell" in death["description"] + assert "not directly counted lysis" in death["description"] + for node in [death, carbon]: + assert all(e["supports"] == "PARTIAL" for e in node["evidence"]) + assert all(e["evidence_source"] == "COMPUTATIONAL" for e in node["evidence"]) + assert "six bacterial 16S copies" in doc["discussions"][0]["rationale"] + + +def test_viral_arrows_are_qualified_and_carbon_is_not_isolated_flux(): + _, (doc, _) = records() + activity, death, carbon = doc["ecological_interactions"] + assert activity["downstream"][0]["target"] == death["name"] + assert activity["downstream"][0]["description"].startswith("PARTIAL -") + assert death["downstream"][0]["target"] == carbon["name"] + assert death["downstream"][0]["description"].startswith("HYPOTHESIZED -") + assert "does not isolate the viral share of CO2" in death["downstream"][0]["description"] + assert "downstream" not in carbon + + +def test_comparative_habitat_labels_do_not_become_self_exchange(): + _, (_, doc) = records() + comparison, *intrinsic = doc["ecological_interactions"] + assert comparison["scope"] == "COMMUNITY_LEVEL" + members = comparison["participating_taxa"] + assert len(members) == 2 and members[0]["term"] == members[1]["term"] + assert [p["preferred_term"] for p in members] == [ + t["taxon_term"]["preferred_term"] for t in doc["taxonomy"] + ] + assert members[0]["preferred_term"] != members[1]["preferred_term"] + assert "not a demonstrated coexisting community" in comparison["description"] + for node in intrinsic: + assert node["scope"] == "PAIRWISE" and node["source_taxon"] == members[0] + assert not {"target_taxon", "participating_taxa"} & node.keys() + for node in doc["ecological_interactions"]: + assert not {"interaction_type", "downstream"} & node.keys() + + +def test_genomic_loci_and_predicted_functions_keep_distinct_support(): + _, (_, doc) = records() + comparison, respiration, acetogenesis, paralog = doc["ecological_interactions"] + for node in doc["ecological_interactions"]: + assert all(e["evidence_source"] == "COMPUTATIONAL" for e in node["evidence"]) + assert comparison["evidence"][0]["supports"] == "SUPPORT" + assert respiration["evidence"][0]["supports"] == "PARTIAL" + assert acetogenesis["evidence"][0]["supports"] == "PARTIAL" + assert [e["supports"] for e in paralog["evidence"]] == ["SUPPORT", "PARTIAL"] + assert "not evidence of nitrogen fixation" in acetogenesis["description"] + assert "do not demonstrate nitrogen fixation" in paralog["description"] + assert "Predicted" in acetogenesis["biological_processes"][0]["notes"] + assert "Hypothesized" in paralog["biological_processes"][0]["notes"] + + +def test_every_node_and_arrow_has_a_hash_bound_review_decision(): + ledger, docs = records() + assert ledger["review_mode"] == "source_based_self_adversarial_review" + assert ledger["independent_approval"] is False and ledger["issues"] == [1490, 1491] + assert ledger["issue_deduplication"]["ignored_hidden_local_search"] is True + for row, doc in zip(ledger["records"], docs, strict=True): + assert [n["node"] for n in row["node_decisions"]] == [ + n["name"] for n in doc["ecological_interactions"] + ] + assert row["status"] == "reviewed" and row["removed_node_decisions"] == [] + assert len(row["edges_before"]) == len(row["retained_edge_decisions"]) + len( + row["removed_edge_decisions"] + ) + assert len(row["edges_after"]) == len(row["retained_edge_decisions"]) + assert hashlib.sha256((ROOT / row["path"]).read_bytes()).hexdigest() == row["record_sha256"] + assert len(row["history_files"]) == 1 and (ROOT / row["history_files"][0]).is_file() + assert doc["curation_history"][-1]["llm_assisted"] is True + names = {n["name"] for n in doc["ecological_interactions"]} + for gap in doc["discussions"]: + assert gap["status"] == "OPEN" + assert all(a.split("#", 1)[1] in names for a in gap["attaches_to"]) + assert sum(len(r["edges_before"]) for r in ledger["records"]) == 5 + assert sum(len(r["edges_after"]) for r in ledger["records"]) == 2 + for path, digest in ledger["reference_cache_original_hashes"].items(): + assert hashlib.sha256((ROOT / path).read_bytes()).hexdigest() == digest diff --git a/tests/test_community_level_connectivity_credit.py b/tests/test_community_level_connectivity_credit.py index a9fecb023..230812c78 100644 --- a/tests/test_community_level_connectivity_credit.py +++ b/tests/test_community_level_connectivity_credit.py @@ -112,11 +112,12 @@ def test_the_mixed_records_are_where_the_coarseness_bites(survey): #1360 adds Copper and Coscinodiscus intrinsic-source corrections (122 -> 124). #1471 restricts the existing Variovorax fucose result to CF313 (124 -> 125). #1485 separates Geobacter-Pseudomonas community outcomes from transfer (125 -> 126). + #1491 separates habitat comparison from intrinsic genomic capacities (126 -> 127). #312 measured 46. In the community-level-only records the credit is not coarse — there is no pairwise edge it could be masking. """ - assert 35 <= survey["mixed"] <= 126, survey + assert 35 <= survey["mixed"] <= 127, survey assert survey["mixed"] + survey["community_level_only"] == survey["with_community_level"] diff --git a/tests/test_participating_taxa.py b/tests/test_participating_taxa.py index f9a570b27..a4618be70 100644 --- a/tests/test_participating_taxa.py +++ b/tests/test_participating_taxa.py @@ -281,6 +281,8 @@ def test_a_curie_is_ambiguous_where_members_share_an_id(example): "Geobacter_Pseudomonas_Formate_Fumarate_Electroactive_Coculture.yaml", "Ginseng_CL95_Rusty_Root_Rot_Biocontrol_SynCom.yaml", "Glutamicibacter_S11_Aquaculture_Nitrogen_Removal_SynCom.yaml", + "Grassland_Soil_WetUp_Virus_Host_Community.yaml", + "Groundwater_Elusimicrobia_Diverse_Metabolisms.yaml", "Honeybee_Core20_Defined_Microbiota.yaml", "Hualgayoc_Acidic_Sulfate_Reducing_AMD_Consortium.yaml", "Iberian_Pit_Lake_Stratified_Community.yaml",