From dc1e5dc5160691c2ee6870e93a6de5e4e3129189 Mon Sep 17 00:00:00 2001
From: "marcin p. joachimiak" <4625870+realmarcin@users.noreply.github.com>
Date: Mon, 5 Oct 2026 19:10:18 -0700
Subject: [PATCH] Review GenX, compost and wheat-straw causal graphs
---
...nity_G_GenX_Biodegradation_Consortium.html | 34 +-
...nCom_Lignocellulose_Degradation_Humus.html | 58 +-
...um_Citrobacter_Wheat_Straw_Consortium.html | 167 +++--
.../2026-10-06T015743Z-codex-597f4d.yaml | 25 +
.../2026-10-06T015743Z-codex-ed6a9c.yaml | 27 +
.../2026-10-06T015744Z-codex-58759d.yaml | 28 +
...nity_G_GenX_Biodegradation_Consortium.yaml | 55 +-
...nCom_Lignocellulose_Degradation_Humus.yaml | 105 ++--
...um_Citrobacter_Wheat_Straw_Consortium.yaml | 172 ++++--
.../adversarial-review-20261005-batch23.yaml | 120 ++++
.../20261005-three-records-batch23.yaml | 241 ++++++++
reports/causal_graph_review/inventory.tsv | 6 +-
reports/causal_graph_review/summary.json | 4 +-
.../validation-20261005-batch23.json | 568 ++++++++++++++++++
tests/test_causal_review_batch23.py | 163 +++++
15 files changed, 1554 insertions(+), 219 deletions(-)
create mode 100644 history/records/Community_G_GenX_Biodegradation_Consortium/2026-10-06T015743Z-codex-597f4d.yaml
create mode 100644 history/records/Composting_SynCom_Lignocellulose_Degradation_Humus/2026-10-06T015743Z-codex-ed6a9c.yaml
create mode 100644 history/records/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium/2026-10-06T015744Z-codex-58759d.yaml
create mode 100644 reports/causal_graph_review/adversarial-review-20261005-batch23.yaml
create mode 100644 reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
create mode 100644 reports/causal_graph_review/validation-20261005-batch23.json
create mode 100644 tests/test_causal_review_batch23.py
diff --git a/docs/communities/Community_G_GenX_Biodegradation_Consortium.html b/docs/communities/Community_G_GenX_Biodegradation_Consortium.html
index 29ae92003..90df939c4 100644
--- a/docs/communities/Community_G_GenX_Biodegradation_Consortium.html
+++ b/docs/communities/Community_G_GenX_Biodegradation_Consortium.html
@@ -729,7 +729,7 @@
Ecological Interactions
Ecological interaction network for Community G GenX Biodegradation Consortium
- 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 (competition).
+ 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.
@@ -737,8 +737,8 @@
Ecological Interactions
Competition
+ aria-hidden="true" data-symbol="symbolTriangle2"
+ data-color="#929caa"> Other
@@ -746,10 +746,9 @@ Ecological Interactions
-
During active GenX biodegradation, Salmonella enterica, Pseudomonas tolaasii, Stenotrophomonas sp. LM091, and Stenotrophomonas sp. MYb57 expanded while initially abundant Stenotrophomonas cyclobalanopsidis and Pseudomonas arcuscaelestis declined or disappeared.
+
Community G 16S profiles showed relative enrichment of Salmonella enterica, Pseudomonas tolaasii and two Stenotrophomonas strains, with relative declines of initially abundant taxa, during GenX exposure. The six named participants are an observed subset, not the complete consortium. Bulk GenX loss and fluoride release support community activity; relative profiles, genomic homology and docking do not establish absolute viable expansion or extinction, member-specific degradation, complete carbon mineralization or reciprocal competitive harm.
@@ -798,7 +797,7 @@
Evidence
PMID:42422733
- - SUPPORT (IN_VITRO)
+ - PARTIAL (IN_VITRO)
"This restructuring reflects adaptive enrichment of efficient GenX-degrading specialists."
@@ -850,7 +849,7 @@ Associated Datasets
- Knowledge gaps & discussions (1)
+ Knowledge gaps & discussions (2)
@@ -900,6 +899,21 @@
+
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which Community G members causally contribute to GenX transformation?
+
+
Absolute viable abundance, partner perturbations, enzyme assays and carbon/fluorine mass balance would distinguish compositional change from degrader activity and competitive effects. Homology and docking predict potential, not catalytic flux. Community G was followed in sterile soil; GENIA indigenous-microbiome comparisons do not establish Community G ecological safety. The partial roster remains unresolved; the previously removed dangling outcome arrow is not restored.
+
+
Attaches to: ecological_interactions#Community G Relative Taxonomic Restructuring During GenX Exposure
+
+
+
+
@@ -1251,7 +1265,7 @@ Evidence
(function() {
var intId = "interaction:0";
- var intType = "COMPETITION";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
@@ -1264,7 +1278,7 @@ Evidence
nodes.push({
id: intId,
- label: "Community G GenX-Driven Taxonomic Restructuring",
+ label: "Community G Relative Taxonomic Restructuring During GenX Exposure",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
diff --git a/docs/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.html b/docs/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.html
index 6baceabab..45fea9fd2 100644
--- a/docs/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.html
+++ b/docs/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.html
@@ -558,7 +558,7 @@ Ecological Interactions
Ecological interaction network for Five-member bacterial-fungal composting SynCom for lignocellulose degradation
- 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 (colonization facilitation).
+ 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.
@@ -566,8 +566,8 @@
Ecological Interactions
Colonization facilitation
+ aria-hidden="true" data-symbol="symbolTriangle2"
+ data-color="#929caa"> Other
@@ -575,10 +575,9 @@ Ecological Interactions
-
SynCom inoculation restructures the indigenous composting microbiome, enriching key lignocellulose-degrading functional genera (Thermobifida, Actinomadura) that carry an enriched carbohydrate-active enzyme repertoire in the SynCom-treated compost.
+
The available abstract reports a native compost microbiome response to five-member bacterial-fungal SynCom inoculation, including enrichment of Thermobifida and Actinomadura. These are enriched native genera, not the five inoculant identities. The community abundance response does not by itself demonstrate establishment or identify which genera carry every enriched functional gene.
@@ -616,8 +615,8 @@
SynCom-driven restructuring and enrichment of native degraders
Downstream Effects:
-
→ Carbohydrate-active enzyme repertoire expansion
-
Enrichment of native Thermobifida and Actinomadura is linked to a larger cellulase, hemicellulase, and lignin-modifying auxiliary-activity enzyme repertoire in SynCom-treated compost.
+
→ Metagenomic CAZyme Repertoire Enrichment
+
HYPOTHESIZED - a compositional shift toward native degraders could contribute to the enriched CAZyme gene repertoire. The abstract links community and functional profiles, but does not establish gene ownership or selective mediation by Thermobifida and Actinomadura.
@@ -646,10 +645,9 @@ Evidence
-
SynCom-treated compost showed greater abundance of cellulases (GH5 and GH12), hemicellulases (CE1 and CE3), and lignin-modifying auxiliary-activity enzymes (AA1 and AA6), linking the Thermobifida/Actinomadura-rich native microbiome to faster polymer deconstruction.
+
Metagenomic analysis associates SynCom-treated compost with enriched CAZyme families GH5, GH12, CE1, CE3, AA1 and AA6. This is community gene-repertoire potential, not a direct measurement of enzyme expression or catalytic activity. The available abstract does not resolve each gene to the two named native genera.
@@ -688,7 +686,7 @@
Carbohydrate-active enzyme repertoire expansion
→ Enriched lignocellulose degradation and humus accumulation
-
The expanded cellulase, hemicellulase, and lignin-modifying enzyme repertoire enables higher lignin, cellulose, and hemicellulose degradation in SynCom-treated compost.
+
HYPOTHESIZED - the enriched gene repertoire could support polymer hydrolysis and supply humification precursors, contributing to the measured degradation and humus outcomes. Metagenomic, metabolomic and correlation analyses support this model, not a selective enzyme or precursor perturbation establishing mediation.
@@ -704,7 +702,7 @@ Evidence
PMID:41297400
- - SUPPORT (IN_VITRO)
+ - SUPPORT (COMPUTATIONAL)
"crucial carbohydrate-active enzymes (CAZymes), including cellulases (GH5, GH12), hemicellulases (CE1, CE3), and lignin-modifying auxiliary activity enzymes (AA1, AA6)"
@@ -718,9 +716,8 @@ Evidence
-
The SynCom-treated compost showed higher overall degradation of lignin, cellulose, and hemicellulose, plus a higher humus content, consistent with the SynCom-enriched CAZyme and lignin-modifying enzyme repertoire.
+
The available abstract reports that SynCom-treated compost had greater lignin, cellulose and hemicellulose degradation and higher humus content than the control, together with earlier maturation. These are positive treatment-level outcomes. Their association with community genes and humification precursors does not establish which organisms or enzymes mediate the improvement.
@@ -778,7 +775,7 @@
Evidence
PMID:41297400
- - SUPPORT (IN_VITRO)
+ - PARTIAL (COMPUTATIONAL)
"crucial carbohydrate-active enzymes (CAZymes), including cellulases (GH5, GH12), hemicellulases (CE1, CE3), and lignin-modifying auxiliary activity enzymes (AA1, AA6)"
@@ -794,6 +791,25 @@ Evidence
+
+ Knowledge gaps & discussions (1)
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which inoculant and native functions mediate improved degradation and humification?
+
+
The complete abstract supports treatment-level benefits, native-community enrichment, metagenomic potential and associated metabolites. The full body and exact five-member inoculant roster were unavailable. Gene ownership, enzyme activity and selective mediator perturbations are needed before assigning the two native genera a complete causal pathway or claiming establishment. Retain both arrows as hypotheses rather than directly demonstrated mediation.
+
+
Attaches to: ecological_interactions#Native Microbiome Response To SynCom Inoculation, ecological_interactions#Metagenomic CAZyme Repertoire Enrichment, ecological_interactions#Enriched lignocellulose degradation and humus accumulation
+
+
+
+
+
+
+
@@ -940,7 +956,7 @@ Evidence
(function() {
var intId = "interaction:0";
- var intType = "COLONIZATION_FACILITATION";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
@@ -957,7 +973,7 @@ Evidence
nodes.push({
id: intId,
- label: "SynCom-driven restructuring and enrichment of native degraders",
+ label: "Native Microbiome Response To SynCom Inoculation",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -972,7 +988,7 @@ Evidence
(function() {
var intId = "interaction:1";
- var intType = "COLONIZATION_FACILITATION";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
@@ -989,7 +1005,7 @@ Evidence
nodes.push({
id: intId,
- label: "Carbohydrate-active enzyme repertoire expansion",
+ label: "Metagenomic CAZyme Repertoire Enrichment",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1004,7 +1020,7 @@ Evidence
(function() {
var intId = "interaction:2";
- var intType = "COLONIZATION_FACILITATION";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
diff --git a/docs/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.html b/docs/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.html
index 762f715a2..1fe23cfbd 100644
--- a/docs/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.html
+++ b/docs/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.html
@@ -638,7 +638,7 @@ Ecological Interactions
Ecological interaction network for Coniochaeta-Sphingobacterium-Citrobacter Wheat Straw Consortium
- 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 (competition, 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.
@@ -646,13 +646,8 @@
Ecological Interactions
Competition
-
-
- Niche partitioning
+ aria-hidden="true" data-symbol="symbolTriangle2"
+ data-color="#929caa"> Other
@@ -660,22 +655,15 @@ Ecological Interactions
-
Coniochaeta sp. 2T2.1 expresses plant biomass-degrading enzymes in wheat-straw cultures and is inferred to contribute cellulose and xylan degradation at early stages plus lignin modification at later stages.
+
Coniochaeta sp. 2T2.1 expresses genes annotated for cellulose and xylan degradation and lignin modification. The 2023 study measures transcript profiles across 60 and 180 rpm and days 1, 5 and 13. These data support inferred fungal capacity, not directly measured enzyme activity, transferred products or a demonstrated reduction of competition through niche partitioning.
Source Taxon: Coniochaeta sp. 2T2.1
-
Participating Taxa:
-
- Coniochaeta sp. 2T2.1
-
-
-
Metabolites:
@@ -720,7 +708,7 @@
Fungal Cellulose-Xylan-Lignin Modification Role
→ Community Wheat-Straw Degradation
-
Fungal cellulose, xylan, and lignin-modification activity contributes to the tripartite consortium's wheat-straw degradation output.
+
PARTIAL - expression of fungal lignocellulose-associated genes is consistent with a contribution to measured wheat-straw loss. Protein activity, partner-resolved flux and selective enzyme perturbations are needed to assign the fungal share or show that transcript differences mediate the shaking-speed effect.
@@ -736,7 +724,7 @@ Evidence
PMID:31769802
- - SUPPORT (COMPUTATIONAL)
+ - PARTIAL (COMPUTATIONAL)
"carbohydrate-active enzymes indicated an onset of (hemi)cellulose degradation"
@@ -749,7 +737,7 @@ Evidence
PMID:36991472
- - SUPPORT (COMPUTATIONAL)
+ - PARTIAL (COMPUTATIONAL)
"lignin modification processes"
@@ -762,17 +750,20 @@ Evidence
-
Sphingobacterium w15 and Citrobacter freundii so4 partition bacterial degradation roles, with w15 associated mainly with hemicellulose degradation and vitamin B2 production and so4 associated with oligosaccharide or sugar-dimer degradation and detoxification.
+
Transcript profiles support proposed roles for w15 in hemicellulose use and so4 in oligosaccharide or sugar-dimer use and stress responses. PARTIAL - these are functional hypotheses, not demonstrated w15-to-so4 transfer or reduced competition. RibE is encoded by all three members, the medium supplies riboflavin, and so4 ribE expression increases late at 60 rpm; exclusive w15 vitamin B2 donation is not established.
-
Source Taxon: Sphingobacterium multivorum w15
+
Participating Taxa:
+
+ Sphingobacterium multivorum w15,
-
Target Taxon: Citrobacter freundii so4
+ Citrobacter freundii so4
+
+
@@ -814,7 +805,7 @@
Bacterial Hemicellulose And Oligosaccharide Partitioning
→ Community Wheat-Straw Degradation
-
Bacterial hemicellulose, oligosaccharide, and sugar-dimer partitioning contributes to wheat-straw degradation by the full consortium.
+
PARTIAL - the inferred bacterial carbohydrate and support functions could contribute to whole-consortium wheat-straw loss. Transcript patterns and observed growth support this contribution, but do not selectively establish enzyme activity, detoxification, exchanged-carbon flux or the bacterial share of degradation.
@@ -830,7 +821,7 @@ Evidence
PMID:36991472
- - SUPPORT (COMPUTATIONAL)
+ - PARTIAL (COMPUTATIONAL)
"S. paramultivorum w15 is involved in the degradation of mainly hemicellulose"
@@ -843,7 +834,7 @@ Evidence
PMID:36991472
- - SUPPORT (COMPUTATIONAL)
+ - PARTIAL (COMPUTATIONAL)
"C. freundii so4 in the degradation of oligosaccharides or sugar dimers"
@@ -856,17 +847,22 @@ Evidence
-
The bacterial pair altered Coniochaeta gene expression, including upregulation of oxidases and transporter genes, while the tripartite consortium showed suppression of the fungal hemicellulolytic arsenal and lower degradation percentages under the tested conditions.
+
The 2020 abstract reports altered fungal transcripts and lower degradation in the tripartite consortium than with Coniochaeta alone under its tested conditions. The bacterial pair, not isolated w15, was compared with the fungal monoculture. Amensalism is suggested, not established reciprocal competitive harm. The 2023 shaking-speed comparison shows condition-dependent transcript and growth patterns, so inhibition must not be generalized to every culture condition.
+
+
+
+
Participating Taxa:
-
Source Taxon: Sphingobacterium multivorum w15
+ Coniochaeta sp. 2T2.1,
+ Sphingobacterium multivorum w15,
+ Citrobacter freundii so4
-
Target Taxon: Coniochaeta sp. 2T2.1
+
@@ -896,7 +892,7 @@
Evidence
PMID:31769802
- - SUPPORT (COMPUTATIONAL)
+ - PARTIAL (COMPUTATIONAL)
"inter-kingdom interactions (e.g. amensalism)"
@@ -923,12 +919,21 @@ Evidence
-
Coniochaeta sp. 2T2.1, Sphingobacterium paramultivorum w15, and Citrobacter freundii so4 collectively degrade wheat straw through alternative lignocellulose, hemicellulose, oligosaccharide, and detoxification roles.
+
The tripartite consortium lost more wheat-straw mass after 13 days at 60 rpm (27.1 +/- 2.4%) than at 180 rpm (16.2 +/- 1.7%) in the 2023 experiment. This supports a culture-condition effect on community degradation, not selectively demonstrated enzyme synergism or universal improvement over fungal monoculture. Functional roles, detoxification and vitamin exchange remain proposed contributors.
+
+
+
Participating Taxa:
+
+ Coniochaeta sp. 2T2.1,
+ Sphingobacterium multivorum w15,
+
+ Citrobacter freundii so4
+
+
@@ -980,7 +985,7 @@
Evidence
PMID:36991472
- - SUPPORT (COMPUTATIONAL)
+ - PARTIAL (COMPUTATIONAL)
"The synergism and alternative functional roles presented in this study enhance the eco-enzymological understanding of the degradation of lignocellulose in this tripartite microbial consortium."
@@ -1079,6 +1084,25 @@ Associated Datasets
+
+ Knowledge gaps & discussions (1)
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which partner functions mediate the condition-dependent wheat-straw degradation?
+
+
The 2023 primary body reports mass loss, growth and transcript differences under two shaking speeds, with vitamin-supplemented medium. Selective partner/enzyme perturbations and flux measurements are needed to test inferred carbohydrate roles, detoxification or vitamin transfer. The 2020 abstract reports a bacterial-pair comparison, not a w15-only effect; its full Methods and Results were inaccessible. Do not infer reciprocal harm, exclusive donation or universal synergy from these observations.
+
+
Attaches to: ecological_interactions#Fungal Lignocellulose-Associated Transcript Profile, ecological_interactions#Bacterial Carbohydrate And Support Transcript Profiles, ecological_interactions#Bacterial-Pair-Associated Fungal Response, ecological_interactions#Community Wheat-Straw Degradation
+
+
+
+
+
+
+
@@ -1562,7 +1586,7 @@ Evidence
(function() {
var intId = "interaction:0";
- var intType = "NICHE_PARTITIONING";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1585,7 +1609,7 @@ Evidence
nodes.push({
id: intId,
- label: "Fungal Cellulose-Xylan-Lignin Modification Role",
+ label: "Fungal Lignocellulose-Associated Transcript Profile",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1605,7 +1629,7 @@ Evidence
(function() {
var intId = "interaction:1";
- var intType = "NICHE_PARTITIONING";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1626,7 +1650,7 @@ Evidence
nodes.push({
id: intId,
- label: "Bacterial Hemicellulose And Oligosaccharide Partitioning",
+ label: "Bacterial Carbohydrate And Support Transcript Profiles",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1635,23 +1659,26 @@ Evidence
});
- var srcKey = "Sphingobacterium multivorum w15";
- if (taxonNodeIds[srcKey]) {
- links.push({ source: taxonNodeIds[srcKey], target: intId });
- }
+ var participantKeys = [
- var tgtKey = "Citrobacter freundii so4";
- if (taxonNodeIds[tgtKey]) {
- links.push({ source: intId, target: taxonNodeIds[tgtKey] });
- }
+ "Sphingobacterium multivorum w15",
+
+ "Citrobacter freundii so4"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
})();
(function() {
var intId = "interaction:2";
- var intType = "COMPETITION";
+ var intType = "UNKNOWN";
var metabolites = [];
var processes = [];
@@ -1664,7 +1691,7 @@ Evidence
nodes.push({
id: intId,
- label: "Inter-Kingdom Interaction And Amensalism Signal",
+ label: "Bacterial-Pair-Associated Fungal Response",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1673,23 +1700,28 @@ Evidence
});
- var srcKey = "Sphingobacterium multivorum w15";
- if (taxonNodeIds[srcKey]) {
- links.push({ source: taxonNodeIds[srcKey], target: intId });
- }
+ var participantKeys = [
- var tgtKey = "Coniochaeta sp. 2T2.1";
- if (taxonNodeIds[tgtKey]) {
- links.push({ source: intId, target: taxonNodeIds[tgtKey] });
- }
+ "Coniochaeta sp. 2T2.1",
+
+ "Sphingobacterium multivorum w15",
+
+ "Citrobacter freundii so4"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
})();
(function() {
var intId = "interaction:3";
- var intType = "NICHE_PARTITIONING";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1723,6 +1755,21 @@ Evidence
+ var participantKeys = [
+
+ "Coniochaeta sp. 2T2.1",
+
+ "Sphingobacterium multivorum w15",
+
+ "Citrobacter freundii so4"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
+
})();
diff --git a/history/records/Community_G_GenX_Biodegradation_Consortium/2026-10-06T015743Z-codex-597f4d.yaml b/history/records/Community_G_GenX_Biodegradation_Consortium/2026-10-06T015743Z-codex-597f4d.yaml
new file mode 100644
index 000000000..e4dceeb3a
--- /dev/null
+++ b/history/records/Community_G_GenX_Biodegradation_Consortium/2026-10-06T015743Z-codex-597f4d.yaml
@@ -0,0 +1,25 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml
+ slug: Community_G_GenX_Biodegradation_Consortium
+session:
+ id: 2026-10-06T015743Z-codex-597f4d
+ timestamp: '2026-10-06T01:57:43Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1347
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain relative community restructuring and positive bulk chemical endpoints without
+ reciprocal-harm, absolute-growth or member-degrader claims.
+ details: Source-based self-adversarial graph repairs; no new nodes/arrows. reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
diff --git a/history/records/Composting_SynCom_Lignocellulose_Degradation_Humus/2026-10-06T015743Z-codex-ed6a9c.yaml b/history/records/Composting_SynCom_Lignocellulose_Degradation_Humus/2026-10-06T015743Z-codex-ed6a9c.yaml
new file mode 100644
index 000000000..35d285c63
--- /dev/null
+++ b/history/records/Composting_SynCom_Lignocellulose_Degradation_Humus/2026-10-06T015743Z-codex-ed6a9c.yaml
@@ -0,0 +1,27 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml
+ slug: Composting_SynCom_Lignocellulose_Degradation_Humus
+session:
+ id: 2026-10-06T015743Z-codex-ed6a9c
+ timestamp: '2026-10-06T01:57:43Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1348
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain native-community enrichment without establishment or inoculant-roster inference.;
+ Distinguish metagenomic potential from enzyme activity and qualify proposed mediation.;
+ Preserve measured treatment benefits without assigning them selectively to a taxon, gene
+ or precursor.
+ details: Source-based self-adversarial graph repairs; no new nodes/arrows. reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
diff --git a/history/records/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium/2026-10-06T015744Z-codex-58759d.yaml b/history/records/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium/2026-10-06T015744Z-codex-58759d.yaml
new file mode 100644
index 000000000..209bd8423
--- /dev/null
+++ b/history/records/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium/2026-10-06T015744Z-codex-58759d.yaml
@@ -0,0 +1,28 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml
+ slug: Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium
+session:
+ id: 2026-10-06T015744Z-codex-58759d
+ timestamp: '2026-10-06T01:57:44Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1349
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Represent intrinsic fungal transcript-based capacity with its canonical source
+ only.; Represent the two bacterial inferred roles as a subset, preserving vitamin supplementation
+ and nonexclusive ribE expression.; Attribute the reported fungal response to the tested
+ bacterial pair, not solely w15 or reciprocal harm.; Preserve measured shaking-speed-dependent
+ community mass loss while qualifying proposed mediators.
+ details: Source-based self-adversarial graph repairs; no new nodes/arrows. reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
diff --git a/kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml b/kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml
index 467ba4004..d824ee95c 100644
--- a/kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml
+++ b/kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml
@@ -149,11 +149,13 @@ taxonomy:
snippet: Stenotrophomonas cyclobalanopsidis and P. arcuscaelestis were competitively excluded
explanation: Names Pseudomonas arcuscaelestis as an initially abundant Community G member that declined by day 3.
ecological_interactions:
-- name: Community G GenX-Driven Taxonomic Restructuring
- description: During active GenX biodegradation, Salmonella enterica, Pseudomonas tolaasii, Stenotrophomonas sp. LM091, and
- Stenotrophomonas sp. MYb57 expanded while initially abundant Stenotrophomonas cyclobalanopsidis and Pseudomonas arcuscaelestis
- declined or disappeared.
- interaction_type: COMPETITION
+- name: Community G Relative Taxonomic Restructuring During GenX Exposure
+ description: Community G 16S profiles showed relative enrichment of Salmonella enterica, Pseudomonas tolaasii
+ and two Stenotrophomonas strains, with relative declines of initially abundant taxa, during GenX exposure. The
+ six named participants are an observed subset, not the complete consortium. Bulk GenX loss and fluoride release
+ support community activity; relative profiles, genomic homology and docking do not establish absolute viable
+ expansion or extinction, member-specific degradation, complete carbon mineralization or reciprocal competitive
+ harm.
scope: COMMUNITY_LEVEL
participating_taxa:
- preferred_term: Salmonella enterica
@@ -187,10 +189,12 @@ ecological_interactions:
label: xenobiotic metabolic process
evidence:
- reference: PMID:42422733
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: IN_VITRO
snippet: This restructuring reflects adaptive enrichment of efficient GenX-degrading specialists.
- explanation: Interprets the opposing abundance trajectories in Community G as GenX-driven enrichment and exclusion.
+ explanation: The caption interprets relative taxonomic trajectories as specialist enrichment. Primary Methods
+ and Results support the compositional observation and separate bulk chemical endpoints, not experimentally
+ assigned member functions or reciprocal harm.
environmental_factors:
- name: Soil-microcosm GenX removal
value: 80.6% removal by day 3
@@ -314,15 +318,15 @@ associated_datasets:
microbial consortia and soil microcosm experiments.
discussions:
- discussion_id: community-g-full-roster
- prompt: The inspected GenX paper text names the enriched Community G specialists and initially abundant competitors, but
- not the complete source roster or every species label present in its Figure 4C stack plot.
+ prompt: The inspected GenX paper text names the enriched Community G specialists and initially abundant competitors,
+ but not the complete source roster or every species label present in its Figure 4C stack plot.
kind: CURATION_TODO
status: OPEN
attaches_to:
- taxonomy
- rationale: Resolving an explicit sample-to-condition map for the Figshare amplicon outputs, or the upstream Prospector supplement,
- would allow the record to replace this explicitly partial taxonomy with the full Community G member list and species-level
- strain identifiers.
+ rationale: Resolving an explicit sample-to-condition map for the Figshare amplicon outputs, or the upstream Prospector
+ supplement, would allow the record to replace this explicitly partial taxonomy with the full Community G member
+ list and species-level strain identifiers.
evidence:
- reference: PMID:42173377
supports: SUPPORT
@@ -334,13 +338,26 @@ discussions:
snippet: Stacked area plot showing relative abundance of Community G members
posed_by: claude
posed_date: '2026-09-18'
+- discussion_id: community_g_relative_abundance_and_function
+ prompt: Which Community G members causally contribute to GenX transformation?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Community G Relative Taxonomic Restructuring During GenX Exposure
+ rationale: Absolute viable abundance, partner perturbations, enzyme assays and carbon/fluorine mass balance would
+ distinguish compositional change from degrader activity and competitive effects. Homology and docking predict
+ potential, not catalytic flux. Community G was followed in sterile soil; GENIA indigenous-microbiome comparisons
+ do not establish Community G ecological safety. The partial roster remains unresolved; the previously removed
+ dangling outcome arrow is not restored.
+ posed_by: codex
+ posed_date: '2026-10-05'
curation_history:
- timestamp: '2026-09-18T12:25:48Z'
curator: claude
action: CREATE_COMMUNITY
changes: Created CommunityMech:000387 for the Community G GenX biodegradation consortium from PMID:42422733/PMID:42173377,
- including explicitly reported taxonomic restructuring, GenX removal and defluorination outcomes, M9 plus GenX screening
- conditions, and a discussion for the unresolved full Community G roster.
+ including explicitly reported taxonomic restructuring, GenX removal and defluorination outcomes, M9 plus GenX
+ screening conditions, and a discussion for the unresolved full Community G roster.
llm_assisted: true
- timestamp: '2026-09-18T12:29:03Z'
curator: claude
@@ -352,6 +369,12 @@ curation_history:
- timestamp: '2026-09-18T12:32:43Z'
curator: claude
action: FIX_CAUSAL_GRAPH
- changes: Removed an invalid downstream edge from the Community G taxonomic-restructuring interaction because the GenX
- removal endpoint is an environmental factor, not another named ecological interaction in the causal graph.
+ changes: Removed an invalid downstream edge from the Community G taxonomic-restructuring interaction because the
+ GenX removal endpoint is an environmental factor, not another named ecological interaction in the causal graph.
+ llm_assisted: true
+- timestamp: '2026-10-06T01:57:42Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain relative community restructuring and positive bulk chemical endpoints without reciprocal-harm,
+ absolute-growth or member-degrader claims. Issue #1347; reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml'
llm_assisted: true
diff --git a/kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml b/kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml
index 2d03528fc..9ba65c74a 100644
--- a/kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml
+++ b/kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml
@@ -74,11 +74,11 @@ taxonomy:
explanation: Metagenomics identifies Actinomadura as an enriched functional genus in the SynCom-treated
compost.
ecological_interactions:
-- name: SynCom-driven restructuring and enrichment of native degraders
- description: SynCom inoculation restructures the indigenous composting microbiome, enriching key
- lignocellulose-degrading functional genera (Thermobifida, Actinomadura) that carry an enriched
- carbohydrate-active enzyme repertoire in the SynCom-treated compost.
- interaction_type: COLONIZATION_FACILITATION
+- name: Native Microbiome Response To SynCom Inoculation
+ description: The available abstract reports a native compost microbiome response to five-member bacterial-fungal
+ SynCom inoculation, including enrichment of Thermobifida and Actinomadura. These are enriched native genera,
+ not the five inoculant identities. The community abundance response does not by itself demonstrate establishment
+ or identify which genera carry every enriched functional gene.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: cellulose catabolic process
@@ -94,25 +94,22 @@ ecological_interactions:
id: GO:0046274
label: lignin catabolic process
downstream:
- - target: Carbohydrate-active enzyme repertoire expansion
- description: Enrichment of native Thermobifida and Actinomadura is linked to a
- larger cellulase, hemicellulase, and lignin-modifying auxiliary-activity
- enzyme repertoire in SynCom-treated compost.
+ - target: Metagenomic CAZyme Repertoire Enrichment
+ description: HYPOTHESIZED - a compositional shift toward native degraders could contribute to the enriched CAZyme
+ gene repertoire. The abstract links community and functional profiles, but does not establish gene ownership
+ or selective mediation by Thermobifida and Actinomadura.
evidence:
- reference: PMID:41297400
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: the SynCom profoundly restructured the native microbiome, enriching for key functional genera
- such as Thermobifida and Actinomadura
- explanation: Community-level facilitation in which the engineered SynCom enriches native functional
- degraders.
-- name: Carbohydrate-active enzyme repertoire expansion
- description: SynCom-treated compost showed greater abundance of cellulases
- (GH5 and GH12), hemicellulases (CE1 and CE3), and lignin-modifying
- auxiliary-activity enzymes (AA1 and AA6), linking the
- Thermobifida/Actinomadura-rich native microbiome to faster polymer
- deconstruction.
- interaction_type: COLONIZATION_FACILITATION
+ snippet: the SynCom profoundly restructured the native microbiome, enriching for key functional genera such
+ as Thermobifida and Actinomadura
+ explanation: Supports the reported native-community response, not direct establishment or the complete inoculant
+ roster.
+- name: Metagenomic CAZyme Repertoire Enrichment
+ description: Metagenomic analysis associates SynCom-treated compost with enriched CAZyme families GH5, GH12, CE1,
+ CE3, AA1 and AA6. This is community gene-repertoire potential, not a direct measurement of enzyme expression
+ or catalytic activity. The available abstract does not resolve each gene to the two named native genera.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: cellulose catabolic process
@@ -129,22 +126,21 @@ ecological_interactions:
label: lignin catabolic process
downstream:
- target: Enriched lignocellulose degradation and humus accumulation
- description: The expanded cellulase, hemicellulase, and lignin-modifying
- enzyme repertoire enables higher lignin, cellulose, and hemicellulose
- degradation in SynCom-treated compost.
+ description: HYPOTHESIZED - the enriched gene repertoire could support polymer hydrolysis and supply humification
+ precursors, contributing to the measured degradation and humus outcomes. Metagenomic, metabolomic and correlation
+ analyses support this model, not a selective enzyme or precursor perturbation establishing mediation.
evidence:
- reference: PMID:41297400
supports: SUPPORT
- evidence_source: IN_VITRO
- snippet: crucial carbohydrate-active enzymes (CAZymes), including cellulases (GH5, GH12), hemicellulases
- (CE1, CE3), and lignin-modifying auxiliary activity enzymes (AA1, AA6)
- explanation: Supports enrichment of cellulose-, hemicellulose-, and lignin-active
- enzyme families in the SynCom-treated compost microbiome.
+ evidence_source: COMPUTATIONAL
+ snippet: crucial carbohydrate-active enzymes (CAZymes), including cellulases (GH5, GH12), hemicellulases (CE1,
+ CE3), and lignin-modifying auxiliary activity enzymes (AA1, AA6)
+ explanation: Supports CAZyme functional potential inferred from metagenomics; gene abundance is not enzyme activity.
- name: Enriched lignocellulose degradation and humus accumulation
- description: The SynCom-treated compost showed higher overall degradation of lignin,
- cellulose, and hemicellulose, plus a higher humus content, consistent with the
- SynCom-enriched CAZyme and lignin-modifying enzyme repertoire.
- interaction_type: COLONIZATION_FACILITATION
+ description: The available abstract reports that SynCom-treated compost had greater lignin, cellulose and hemicellulose
+ degradation and higher humus content than the control, together with earlier maturation. These are positive
+ treatment-level outcomes. Their association with community genes and humification precursors does not establish
+ which organisms or enzymes mediate the improvement.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: cellulose catabolic process
@@ -163,18 +159,17 @@ ecological_interactions:
- reference: PMID:41297400
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: the SynCom treatment enhanced the overall degradation rates of lignin, cellulose,
- and hemicellulose by 19.3 %, 7.9 %, and 12.0 %, respectively, and boosted
- humus content by 34.4 %
- explanation: Supports the downstream composting output of faster lignocellulose
- degradation and greater humus accumulation.
+ snippet: the SynCom treatment enhanced the overall degradation rates of lignin, cellulose, and hemicellulose
+ by 19.3 %, 7.9 %, and 12.0 %, respectively, and boosted humus content by 34.4 %
+ explanation: Supports the positive inoculation-versus-control output reported in the complete abstract; full
+ experimental details were unavailable.
- reference: PMID:41297400
- supports: SUPPORT
- evidence_source: IN_VITRO
- snippet: crucial carbohydrate-active enzymes (CAZymes), including cellulases (GH5, GH12), hemicellulases
- (CE1, CE3), and lignin-modifying auxiliary activity enzymes (AA1, AA6)
- explanation: Supports the cellulose, hemicellulose, and lignin degradation
- processes encoded by the enriched native compost microbiome after SynCom inoculation.
+ supports: PARTIAL
+ evidence_source: COMPUTATIONAL
+ snippet: crucial carbohydrate-active enzymes (CAZymes), including cellulases (GH5, GH12), hemicellulases (CE1,
+ CE3), and lignin-modifying auxiliary activity enzymes (AA1, AA6)
+ explanation: Supports correlated metagenomic functional potential, not a selectively demonstrated cause of the
+ measured compost outcomes.
growth_media:
- name: "co-composting substrate (cattle manure and mulberry branches)"
preparation_notes: "Thermophilic solid-state co-composting; SynCom bioaugmentation significantly elevated pile temperatures and shortened the maturation period by ~7 days."
@@ -184,3 +179,27 @@ growth_media:
evidence_source: IN_VITRO
snippet: "significantly elevating pile temperatures and shortening the maturation period"
explanation: "Reports elevated (thermophilic) pile temperatures during co-composting cultivation."
+discussions:
+- discussion_id: compost_syncom_roster_and_mediation
+ prompt: Which inoculant and native functions mediate improved degradation and humification?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Native Microbiome Response To SynCom Inoculation
+ - ecological_interactions#Metagenomic CAZyme Repertoire Enrichment
+ - ecological_interactions#Enriched lignocellulose degradation and humus accumulation
+ rationale: The complete abstract supports treatment-level benefits, native-community enrichment, metagenomic potential
+ and associated metabolites. The full body and exact five-member inoculant roster were unavailable. Gene ownership,
+ enzyme activity and selective mediator perturbations are needed before assigning the two native genera a complete
+ causal pathway or claiming establishment. Retain both arrows as hypotheses rather than directly demonstrated
+ mediation.
+ posed_by: codex
+ posed_date: '2026-10-05'
+curation_history:
+- timestamp: '2026-10-06T01:57:43Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain native-community enrichment without establishment or inoculant-roster inference.; Distinguish
+ metagenomic potential from enzyme activity and qualify proposed mediation.; Preserve measured treatment benefits
+ without assigning them selectively to a taxon, gene or precursor. Issue #1348; reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml b/kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml
index 37acabaaa..8bdf09ec8 100644
--- a/kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml
+++ b/kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml
@@ -144,17 +144,12 @@ taxonomy:
snippet: detoxification-related proteins
explanation: Supports C. freundii so4 as a functional helper involved in detoxification-related expression.
ecological_interactions:
-- name: Fungal Cellulose-Xylan-Lignin Modification Role
- description: Coniochaeta sp. 2T2.1 expresses plant biomass-degrading enzymes in wheat-straw cultures
- and is inferred to contribute cellulose and xylan degradation at early stages plus lignin modification
- at later stages.
- interaction_type: NICHE_PARTITIONING
- scope: COMMUNITY_LEVEL
- participating_taxa:
- - preferred_term: Coniochaeta sp. 2T2.1
- term:
- id: NCBITaxon:1571157
- label: Coniochaeta sp. 2T2.1
+- name: Fungal Lignocellulose-Associated Transcript Profile
+ description: Coniochaeta sp. 2T2.1 expresses genes annotated for cellulose and xylan degradation and lignin modification.
+ The 2023 study measures transcript profiles across 60 and 180 rpm and days 1, 5 and 13. These data support inferred
+ fungal capacity, not directly measured enzyme activity, transferred products or a demonstrated reduction of
+ competition through niche partitioning.
+ scope: PAIRWISE
source_taxon:
preferred_term: Coniochaeta sp. 2T2.1
term:
@@ -184,35 +179,28 @@ ecological_interactions:
label: xylan catabolic process
downstream:
- target: Community Wheat-Straw Degradation
- description: Fungal cellulose, xylan, and lignin-modification activity contributes
- to the tripartite consortium's wheat-straw degradation output.
+ description: PARTIAL - expression of fungal lignocellulose-associated genes is consistent with a contribution
+ to measured wheat-straw loss. Protein activity, partner-resolved flux and selective enzyme perturbations are
+ needed to assign the fungal share or show that transcript differences mediate the shaking-speed effect.
evidence:
- reference: PMID:31769802
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: COMPUTATIONAL
snippet: carbohydrate-active enzymes indicated an onset of (hemi)cellulose degradation
- explanation: Supports Coniochaeta CAZyme expression during wheat-straw degradation.
+ explanation: Supports a transcript-based functional inference, not direct catalytic or partner-resolved flux
+ measurement; the 2020 study was reviewed at abstract scope.
- reference: PMID:36991472
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: COMPUTATIONAL
snippet: lignin modification processes
- explanation: Supports the later-stage lignin-modification role assigned to Coniochaeta sp. 2T2.1.
-- name: Bacterial Hemicellulose And Oligosaccharide Partitioning
- description: Sphingobacterium w15 and Citrobacter freundii so4 partition bacterial degradation roles,
- with w15 associated mainly with hemicellulose degradation and vitamin B2 production and so4 associated
- with oligosaccharide or sugar-dimer degradation and detoxification.
- interaction_type: NICHE_PARTITIONING
- scope: PAIRWISE
- source_taxon:
- preferred_term: Sphingobacterium multivorum w15
- term:
- id: NCBITaxon:2886510
- label: Sphingobacterium paramultivorum
- target_taxon:
- preferred_term: Citrobacter freundii so4
- term:
- id: NCBITaxon:546
- label: Citrobacter freundii
+ explanation: Supports a transcript-based functional inference, not direct catalytic or partner-resolved flux
+ measurement; the 2020 study was reviewed at abstract scope.
+- name: Bacterial Carbohydrate And Support Transcript Profiles
+ description: Transcript profiles support proposed roles for w15 in hemicellulose use and so4 in oligosaccharide
+ or sugar-dimer use and stress responses. PARTIAL - these are functional hypotheses, not demonstrated w15-to-so4
+ transfer or reduced competition. RibE is encoded by all three members, the medium supplies riboflavin, and so4
+ ribE expression increases late at 60 rpm; exclusive w15 vitamin B2 donation is not established.
+ scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: xylan
term:
@@ -233,35 +221,38 @@ ecological_interactions:
label: riboflavin biosynthetic process
evidence:
- reference: PMID:36991472
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: COMPUTATIONAL
snippet: S. paramultivorum w15 is involved in the degradation of mainly hemicellulose
- explanation: Supports hemicellulose-linked functional specialization by w15.
+ explanation: Supports a role inferred from the measured transcript profile and annotation, not directed metabolite
+ transfer or selective causal mediation.
- reference: PMID:36991472
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: COMPUTATIONAL
snippet: C. freundii so4 in the degradation of oligosaccharides or sugar dimers
- explanation: Supports secondary carbohydrate utilization by C. freundii so4.
+ explanation: Supports a role inferred from the measured transcript profile and annotation, not directed metabolite
+ transfer or selective causal mediation.
downstream:
- target: Community Wheat-Straw Degradation
- description: Bacterial hemicellulose, oligosaccharide, and sugar-dimer
- partitioning contributes to wheat-straw degradation by the full consortium.
-- name: Inter-Kingdom Interaction And Amensalism Signal
- description: The bacterial pair altered Coniochaeta gene expression, including upregulation of oxidases
- and transporter genes, while the tripartite consortium showed suppression of the fungal hemicellulolytic
- arsenal and lower degradation percentages under the tested conditions.
- interaction_type: COMPETITION
- scope: PAIRWISE
- source_taxon:
- preferred_term: Sphingobacterium multivorum w15
+ description: PARTIAL - the inferred bacterial carbohydrate and support functions could contribute to whole-consortium
+ wheat-straw loss. Transcript patterns and observed growth support this contribution, but do not selectively
+ establish enzyme activity, detoxification, exchanged-carbon flux or the bacterial share of degradation.
+ participating_taxa:
+ - preferred_term: Sphingobacterium multivorum w15
term:
id: NCBITaxon:2886510
label: Sphingobacterium paramultivorum
- target_taxon:
- preferred_term: Coniochaeta sp. 2T2.1
+ - preferred_term: Citrobacter freundii so4
term:
- id: NCBITaxon:1571157
- label: Coniochaeta sp. 2T2.1
+ id: NCBITaxon:546
+ label: Citrobacter freundii
+- name: Bacterial-Pair-Associated Fungal Response
+ description: The 2020 abstract reports altered fungal transcripts and lower degradation in the tripartite consortium
+ than with Coniochaeta alone under its tested conditions. The bacterial pair, not isolated w15, was compared
+ with the fungal monoculture. Amensalism is suggested, not established reciprocal competitive harm. The 2023
+ shaking-speed comparison shows condition-dependent transcript and growth patterns, so inhibition must not be
+ generalized to every culture condition.
+ scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: biological process involved in interspecies interaction between organisms
term:
@@ -269,20 +260,35 @@ ecological_interactions:
label: biological process involved in interspecies interaction between organisms
evidence:
- reference: PMID:31769802
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: COMPUTATIONAL
snippet: inter-kingdom interactions (e.g. amensalism)
- explanation: Supports a competitive or inhibitory interaction signal among fungal and bacterial members.
+ explanation: Supports the authors' amensalism hypothesis from the bacterial-pair comparison, not a selectively
+ demonstrated w15 effect or reciprocal harm.
- reference: PMID:31769802
supports: SUPPORT
evidence_source: IN_VITRO
snippet: lower degradation percentages within the microbial consortium
- explanation: Supports that the tripartite outcome was not simply synergistic under the tested conditions.
+ explanation: Preserves the reported unfavorable tripartite-versus-fungal outcome; complete 2020 experimental
+ details were not accessible in this review.
+ participating_taxa:
+ - preferred_term: Coniochaeta sp. 2T2.1
+ term:
+ id: NCBITaxon:1571157
+ label: Coniochaeta sp. 2T2.1
+ - preferred_term: Sphingobacterium multivorum w15
+ term:
+ id: NCBITaxon:2886510
+ label: Sphingobacterium paramultivorum
+ - preferred_term: Citrobacter freundii so4
+ term:
+ id: NCBITaxon:546
+ label: Citrobacter freundii
- name: Community Wheat-Straw Degradation
- description: Coniochaeta sp. 2T2.1, Sphingobacterium paramultivorum w15, and
- Citrobacter freundii so4 collectively degrade wheat straw through alternative
- lignocellulose, hemicellulose, oligosaccharide, and detoxification roles.
- interaction_type: NICHE_PARTITIONING
+ description: The tripartite consortium lost more wheat-straw mass after 13 days at 60 rpm (27.1 +/- 2.4%) than
+ at 180 rpm (16.2 +/- 1.7%) in the 2023 experiment. This supports a culture-condition effect on community degradation,
+ not selectively demonstrated enzyme synergism or universal improvement over fungal monoculture. Functional roles,
+ detoxification and vitamin exchange remain proposed contributors.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: cellulose
@@ -308,13 +314,25 @@ ecological_interactions:
label: xylan catabolic process
evidence:
- reference: PMID:36991472
- supports: SUPPORT
+ supports: PARTIAL
evidence_source: COMPUTATIONAL
- snippet: The synergism and alternative functional roles presented in this study enhance
- the eco-enzymological understanding of the degradation of lignocellulose
- in this tripartite microbial consortium.
- explanation: Supports the full consortium output assembled from the fungal and
- bacterial lignocellulose-degradation roles.
+ snippet: The synergism and alternative functional roles presented in this study enhance the eco-enzymological
+ understanding of the degradation of lignocellulose in this tripartite microbial consortium.
+ explanation: The abstract presents a functional-role interpretation. Primary Results directly measure condition-dependent
+ wheat-straw mass loss, but do not isolate the mediating proteins, interactions or partner fluxes.
+ participating_taxa:
+ - preferred_term: Coniochaeta sp. 2T2.1
+ term:
+ id: NCBITaxon:1571157
+ label: Coniochaeta sp. 2T2.1
+ - preferred_term: Sphingobacterium multivorum w15
+ term:
+ id: NCBITaxon:2886510
+ label: Sphingobacterium paramultivorum
+ - preferred_term: Citrobacter freundii so4
+ term:
+ id: NCBITaxon:546
+ label: Citrobacter freundii
environmental_factors:
- name: Wheat straw substrate
value: wheat straw
@@ -521,3 +539,29 @@ rare_earth_elements_present: []
metal_relevance: NOT_APPLICABLE
metal_notes: No metal or rare earth element processing role was reported for this wheat-straw
lignocellulose-degrading consortium in the curated sources.
+discussions:
+- discussion_id: wheat_straw_partner_flux_and_conditions
+ prompt: Which partner functions mediate the condition-dependent wheat-straw degradation?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Fungal Lignocellulose-Associated Transcript Profile
+ - ecological_interactions#Bacterial Carbohydrate And Support Transcript Profiles
+ - ecological_interactions#Bacterial-Pair-Associated Fungal Response
+ - ecological_interactions#Community Wheat-Straw Degradation
+ rationale: The 2023 primary body reports mass loss, growth and transcript differences under two shaking speeds,
+ with vitamin-supplemented medium. Selective partner/enzyme perturbations and flux measurements are needed to
+ test inferred carbohydrate roles, detoxification or vitamin transfer. The 2020 abstract reports a bacterial-pair
+ comparison, not a w15-only effect; its full Methods and Results were inaccessible. Do not infer reciprocal harm,
+ exclusive donation or universal synergy from these observations.
+ posed_by: codex
+ posed_date: '2026-10-05'
+curation_history:
+- timestamp: '2026-10-06T01:57:43Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Represent intrinsic fungal transcript-based capacity with its canonical source only.; Represent the
+ two bacterial inferred roles as a subset, preserving vitamin supplementation and nonexclusive ribE expression.;
+ Attribute the reported fungal response to the tested bacterial pair, not solely w15 or reciprocal harm.; Preserve
+ measured shaking-speed-dependent community mass loss while qualifying proposed mediators. Issue #1349; reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml'
+ llm_assisted: true
diff --git a/reports/causal_graph_review/adversarial-review-20261005-batch23.yaml b/reports/causal_graph_review/adversarial-review-20261005-batch23.yaml
new file mode 100644
index 000000000..b12fcdd6b
--- /dev/null
+++ b/reports/causal_graph_review/adversarial-review-20261005-batch23.yaml
@@ -0,0 +1,120 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: eabaa6b3bccc20c8eea91cce9849c6e64ea945da
+decision_ledger: reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
+validation_report: reports/causal_graph_review/validation-20261005-batch23.json
+scope:
+- kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml
+- kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml
+- kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml
+findings:
+- issue: 1347
+ severity: P2
+ finding: Relative taxonomic restructuring encoded as reciprocal competition and absolute expansion/extinction;
+ degrader identities inferred beyond chemical and sequence assays.
+ disposition: addressed_and_locally_verified
+- issue: 1348
+ severity: P2
+ finding: Native abundance, metagenomic potential and compost outputs encoded as establishment with unqualified
+ enzyme mediation.
+ disposition: addressed_and_locally_verified
+- issue: 1349
+ severity: P2
+ finding: Transcript-based roles encoded as niche partitioning and directed bacterial transfer; bacterial-pair
+ effect assigned to w15 alone and reciprocal competition.
+ disposition: addressed_and_locally_verified
+open_nongraph_followups:
+- issue: 746
+ disposition: not_closed_by_graph_only_patch
+- issue: 524
+ disposition: not_closed_by_graph_only_patch
+adversarial_checks:
+- Account for all eight original nodes and four original arrows. Six exact renames and matching discussion anchors;
+ no additions, removals or Edison spend.
+- Challenge COMPETITION against the actual reciprocal-harm enum. GenX relative profiles and the wheat-straw bacterial-pair
+ effect do not demonstrate harm to both partners.
+- Preserve Community G chemical loss and fluoride release as positive community observations without assigning member
+ functions, absolute viability or full carbon mineralization.
+- 'GenX homology, docking and functional-guild interpretations are not catalytic validation. Keep the six canonical
+ participants as a subset and preserve the existing full-roster gap and exact IDs from #946.'
+- 'Do not restore the invalid GenX endpoint arrow removed by #947. Community G sterile-soil assays must not inherit
+ GENIA indigenous-microbiome ecological-safety claims.'
+- Keep native Thermobifida/Actinomadura separate from the five-member compost inoculant. Abstract-only access does
+ not establish exact member identity, gene ownership or establishment.
+- Metagenomic CAZyme families represent gene potential, not enzyme expression/activity. Retain both proposed causal
+ arrows as HYPOTHESIZED rather than erase plausible mechanisms or assert selective mediation.
+- Preserve positive compost degradation, humus and maturation outcomes without replacing treatment effects with
+ a generic absence-of-evidence claim.
+- Fungal transcript-based intrinsic capacity is source-only PAIRWISE with no target; bacterial roles are a canonical
+ subset, and pair-response/output nodes identify all three tested members.
+- Keep the historical w15 preferred label and canonical paramultivorum ID. No taxonomy or grounding changes are
+ part of this patch.
+- '2023 wheat-straw Methods supply riboflavin. All three members encode ribE and so4 late-60-rpm expression rises:
+ no exclusive w15 donation, extracellular exchange or rescue asserted.'
+- 2023 direct mass-loss and growth measurements support condition effects; they do not directly establish the enzyme,
+ detoxification or partner-flux mediators. Both retained output arrows are PARTIAL.
+- 2020 complete abstract supports lower consortium degradation and a bacterial-pair comparison, not w15-only causation
+ or universal inhibition across conditions. Author PDF access failed after partial reading; full Methods/Results
+ not claimed.
+- Two complete primary main bodies, four complete additional abstracts and displayed primary tables/captions were
+ reviewed. No visual images or supplementary files inspected; no copyrighted full body added to git.
+- 'Six tracked cache artifacts and unrelated YAML blocks are byte-preserved. Unrelated metadata is not scientifically
+ certified, and broader #746/#524 remain open.'
+- Both-root census confirms unchanged connected taxa and mixed-scope counts. Exactly two bacterial taxa move from
+ pairwise to community-only connectivity credit (1218 -> 1220); no bounds or registry changes.
+- Source-based self-adversarial review is not independent approval, protected CI success or corpus completion.
+verification:
+ status: local_validation_complete
+ checks: 30
+ records: 460
+ nodes: 1474
+ edges: 710
+ review_status_counts:
+ needs_research: 3
+ pending: 339
+ reviewed: 118
+ structural_defects: 0
+ network_errors: 0
+ network_warnings: 25
+ new_network_warnings: 0
+ unchanged_raw_blocks: 42
+ snippet_counts:
+ MATCH: 53
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ published_description_coverage:
+ pages: 456
+ node_descriptions: 1460
+ edge_descriptions: 702
+ render_determinism: passed
+ regressions: 278 passed in 291.48s (0:04:51)
+ rights: 3 passed in 2.55s
+ rights_import_root_verified: true
+ caches_unchanged: true
+ primary_artifact_hashes_rechecked: true
+ corpus_sentinels_unchanged: true
+ connectivity_survey_before:
+ records: 460
+ with_community_level: 389
+ mixed: 122
+ community_level_only: 267
+ taxa: 1499
+ credited_solely_by_the_rule: 1218
+ connectivity_survey:
+ records: 460
+ with_community_level: 389
+ mixed: 122
+ community_level_only: 267
+ taxa: 1499
+ credited_solely_by_the_rule: 1220
+ connectivity_delta:
+ records: 0
+ with_community_level: 0
+ mixed: 0
+ community_level_only: 0
+ taxa: 0
+ credited_solely_by_the_rule: 2
diff --git a/reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml b/reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
new file mode 100644
index 000000000..0217a155c
--- /dev/null
+++ b/reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
@@ -0,0 +1,241 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: eabaa6b3bccc20c8eea91cce9849c6e64ea945da
+issues:
+- 1347
+- 1348
+- 1349
+open_nongraph_followups:
+- 746
+- 524
+issue_deduplication:
+ all_state_issue_titles_bodies: 684
+ ignored_hidden_local_files_included: true
+ comments_exhaustive: false
+ relevant_issues_read:
+ - 947
+ - 946
+ - 948
+ - 258
+ - 911
+ - 746
+ - 524
+ - 749
+ - 752
+ finding: No exact graph duplicates in searched scope; broader taxonomy/provenance work remains separate.
+reference_cache_original_hashes:
+ references_cache/PMID_36991472.md: 715fd0be091b2e2c4aae7c60ba24a6fe789c08f802964a1a425acf3ccdab3ebd
+ references_cache/PMID_42422733.txt: 325e78dd4f7233cce72949131192a66cf526eba1bc33594ceec379bb5172a5e5
+ references_cache/PMID_42173377.txt: 860064ea83750a11c90a664cd1e592298a358ef21d17a6216b79bebb09187bfa
+ references_cache/PMID_31769802.md: f73089e6a352e3a9164527daca0fc4bf46fbdebf43888a805891694959cc89ab
+ references_cache/PMID_34683378.md: fd76b8f6f4e148878c46b432193fe2308c6718f2af53e163f568bf5b43a72d7b
+ references_cache/PMID_41297400.md: 0e32038dfe1637c473b0f3348015dd8c05ae976f122b6587fb0a1976967393f2
+limitations:
+- All eight nodes and four arrows retained with six exact renames; no new structure or Edison spend.
+- Two complete primary main bodies and four complete abstracts reviewed; no visual images or supplementary files
+ inspected. The 2020 PDF failed after partial reading; no complete-body claim.
+- Six existing cache artifacts unchanged; no copyrighted full body added to git.
+- Unrelated metadata and canonical taxonomy preserved, not scientifically certified. Existing 746/524 remain open.
+- Source-based self-adversarial review is not independent approval or corpus completion.
+records:
+- path: kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml
+ id: CommunityMech:000387
+ original_sha256: db1550951ed40632bcbb2fd2c106b566402e96c10c5ffa32fb7dbc4a77de8986
+ record_sha256: 4aefdcd766a663a1d8fd547207b3f754cfcf6bc938f2212ea4389ca221aacb8d
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
+ scope: Whole record and every original node/arrow; primary access scope bounded below.
+ summary: Retain relative community restructuring and positive bulk chemical endpoints without reciprocal-harm,
+ absolute-growth or member-degrader claims.
+ renamed_nodes:
+ Community G GenX-Driven Taxonomic Restructuring: Community G Relative Taxonomic Restructuring During GenX Exposure
+ node_decisions:
+ - node: Community G Relative Taxonomic Restructuring During GenX Exposure
+ rationale: Retain relative community restructuring and positive bulk chemical endpoints without reciprocal-harm,
+ absolute-growth or member-degrader claims.
+ edges_before: []
+ edges_after: []
+ retained_edge_decisions: []
+ removed_edge_decisions: []
+ references:
+ - PMID:42422733
+ - PMID:42173377
+ issues:
+ - 1347
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ source_review:
+ PMID:42422733:
+ url: https://doi.org/10.3389/fmicb.2026.1848796
+ path: /private/tmp/communitymech-batch23/PMC13344493.xml
+ sha256: 7dbcf60b99cdc2249ee1d0f15d15844e7c507858853d7b577bfd6c2e855b7459
+ license: CC BY
+ reviewed_scope: Complete primary main body, Methods, Results, Discussion, Conclusion and displayed main/supplementary
+ captions; images and supplementary files not inspected.
+ PMID:42173377:
+ url: https://pubmed.ncbi.nlm.nih.gov/42173377/
+ reviewed_scope: Complete abstract only; no full body available. Context, not additional Community G-specific
+ causal evidence.
+ history_files:
+ - history/records/Community_G_GenX_Biodegradation_Consortium/2026-10-06T015743Z-codex-597f4d.yaml
+- path: kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml
+ id: CommunityMech:000277
+ original_sha256: 93603f50bf2b08fcddd9202e560ad7a1b703f9274132946dbd9447b718f75dc9
+ record_sha256: 16e496ddf18a513d3b3ca26c61999146cdf18b0675044ad7ae0d1425482ed270
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
+ scope: Whole record and every original node/arrow; primary access scope bounded below.
+ summary: Retain native-community enrichment without establishment or inoculant-roster inference.; Distinguish
+ metagenomic potential from enzyme activity and qualify proposed mediation.; Preserve measured treatment benefits
+ without assigning them selectively to a taxon, gene or precursor.
+ renamed_nodes:
+ SynCom-driven restructuring and enrichment of native degraders: Native Microbiome Response To SynCom Inoculation
+ Carbohydrate-active enzyme repertoire expansion: Metagenomic CAZyme Repertoire Enrichment
+ node_decisions:
+ - node: Native Microbiome Response To SynCom Inoculation
+ rationale: Retain native-community enrichment without establishment or inoculant-roster inference.
+ - node: Metagenomic CAZyme Repertoire Enrichment
+ rationale: Distinguish metagenomic potential from enzyme activity and qualify proposed mediation.
+ - node: Enriched lignocellulose degradation and humus accumulation
+ rationale: Preserve measured treatment benefits without assigning them selectively to a taxon, gene or precursor.
+ edges_before:
+ - source: SynCom-driven restructuring and enrichment of native degraders
+ target: Carbohydrate-active enzyme repertoire expansion
+ description: Enrichment of native Thermobifida and Actinomadura is linked to a larger cellulase, hemicellulase,
+ and lignin-modifying auxiliary-activity enzyme repertoire in SynCom-treated compost.
+ - source: Carbohydrate-active enzyme repertoire expansion
+ target: Enriched lignocellulose degradation and humus accumulation
+ description: The expanded cellulase, hemicellulase, and lignin-modifying enzyme repertoire enables higher lignin,
+ cellulose, and hemicellulose degradation in SynCom-treated compost.
+ edges_after:
+ - source: Native Microbiome Response To SynCom Inoculation
+ target: Metagenomic CAZyme Repertoire Enrichment
+ description: HYPOTHESIZED - a compositional shift toward native degraders could contribute to the enriched CAZyme
+ gene repertoire. The abstract links community and functional profiles, but does not establish gene ownership
+ or selective mediation by Thermobifida and Actinomadura.
+ - source: Metagenomic CAZyme Repertoire Enrichment
+ target: Enriched lignocellulose degradation and humus accumulation
+ description: HYPOTHESIZED - the enriched gene repertoire could support polymer hydrolysis and supply humification
+ precursors, contributing to the measured degradation and humus outcomes. Metagenomic, metabolomic and correlation
+ analyses support this model, not a selective enzyme or precursor perturbation establishing mediation.
+ retained_edge_decisions:
+ - source: Native Microbiome Response To SynCom Inoculation
+ target: Metagenomic CAZyme Repertoire Enrichment
+ rationale: HYPOTHESIZED - a compositional shift toward native degraders could contribute to the enriched CAZyme
+ gene repertoire. The abstract links community and functional profiles, but does not establish gene ownership
+ or selective mediation by Thermobifida and Actinomadura.
+ - source: Metagenomic CAZyme Repertoire Enrichment
+ target: Enriched lignocellulose degradation and humus accumulation
+ rationale: HYPOTHESIZED - the enriched gene repertoire could support polymer hydrolysis and supply humification
+ precursors, contributing to the measured degradation and humus outcomes. Metagenomic, metabolomic and correlation
+ analyses support this model, not a selective enzyme or precursor perturbation establishing mediation.
+ removed_edge_decisions: []
+ references:
+ - PMID:41297400
+ issues:
+ - 1348
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ source_review:
+ PMID:41297400:
+ url: https://pubmed.ncbi.nlm.nih.gov/41297400/
+ reviewed_scope: Complete abstract only; publisher body inaccessible. No full-assay inference.
+ history_files:
+ - history/records/Composting_SynCom_Lignocellulose_Degradation_Humus/2026-10-06T015743Z-codex-ed6a9c.yaml
+- path: kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml
+ id: CommunityMech:000195
+ original_sha256: 008d639e3e8fcff7fd48e7aee126798987fc4dabbf475c90bdc8bab5e83b0b92
+ record_sha256: eb6927ba0ac59c0884bc3f479f20606ca4ae1f80b0855c415759db879a03fd2f
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml
+ scope: Whole record and every original node/arrow; primary access scope bounded below.
+ summary: Represent intrinsic fungal transcript-based capacity with its canonical source only.; Represent the two
+ bacterial inferred roles as a subset, preserving vitamin supplementation and nonexclusive ribE expression.;
+ Attribute the reported fungal response to the tested bacterial pair, not solely w15 or reciprocal harm.; Preserve
+ measured shaking-speed-dependent community mass loss while qualifying proposed mediators.
+ renamed_nodes:
+ Fungal Cellulose-Xylan-Lignin Modification Role: Fungal Lignocellulose-Associated Transcript Profile
+ Bacterial Hemicellulose And Oligosaccharide Partitioning: Bacterial Carbohydrate And Support Transcript Profiles
+ Inter-Kingdom Interaction And Amensalism Signal: Bacterial-Pair-Associated Fungal Response
+ node_decisions:
+ - node: Fungal Lignocellulose-Associated Transcript Profile
+ rationale: Represent intrinsic fungal transcript-based capacity with its canonical source only.
+ - node: Bacterial Carbohydrate And Support Transcript Profiles
+ rationale: Represent the two bacterial inferred roles as a subset, preserving vitamin supplementation and nonexclusive
+ ribE expression.
+ - node: Bacterial-Pair-Associated Fungal Response
+ rationale: Attribute the reported fungal response to the tested bacterial pair, not solely w15 or reciprocal
+ harm.
+ - node: Community Wheat-Straw Degradation
+ rationale: Preserve measured shaking-speed-dependent community mass loss while qualifying proposed mediators.
+ edges_before:
+ - source: Fungal Cellulose-Xylan-Lignin Modification Role
+ target: Community Wheat-Straw Degradation
+ description: Fungal cellulose, xylan, and lignin-modification activity contributes to the tripartite consortium's
+ wheat-straw degradation output.
+ - source: Bacterial Hemicellulose And Oligosaccharide Partitioning
+ target: Community Wheat-Straw Degradation
+ description: Bacterial hemicellulose, oligosaccharide, and sugar-dimer partitioning contributes to wheat-straw
+ degradation by the full consortium.
+ edges_after:
+ - source: Fungal Lignocellulose-Associated Transcript Profile
+ target: Community Wheat-Straw Degradation
+ description: PARTIAL - expression of fungal lignocellulose-associated genes is consistent with a contribution
+ to measured wheat-straw loss. Protein activity, partner-resolved flux and selective enzyme perturbations are
+ needed to assign the fungal share or show that transcript differences mediate the shaking-speed effect.
+ - source: Bacterial Carbohydrate And Support Transcript Profiles
+ target: Community Wheat-Straw Degradation
+ description: PARTIAL - the inferred bacterial carbohydrate and support functions could contribute to whole-consortium
+ wheat-straw loss. Transcript patterns and observed growth support this contribution, but do not selectively
+ establish enzyme activity, detoxification, exchanged-carbon flux or the bacterial share of degradation.
+ retained_edge_decisions:
+ - source: Fungal Lignocellulose-Associated Transcript Profile
+ target: Community Wheat-Straw Degradation
+ rationale: PARTIAL - expression of fungal lignocellulose-associated genes is consistent with a contribution
+ to measured wheat-straw loss. Protein activity, partner-resolved flux and selective enzyme perturbations are
+ needed to assign the fungal share or show that transcript differences mediate the shaking-speed effect.
+ - source: Bacterial Carbohydrate And Support Transcript Profiles
+ target: Community Wheat-Straw Degradation
+ rationale: PARTIAL - the inferred bacterial carbohydrate and support functions could contribute to whole-consortium
+ wheat-straw loss. Transcript patterns and observed growth support this contribution, but do not selectively
+ establish enzyme activity, detoxification, exchanged-carbon flux or the bacterial share of degradation.
+ removed_edge_decisions: []
+ references:
+ - PMID:36991472
+ - PMID:31769802
+ - PMID:34683378
+ issues:
+ - 1349
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ source_review:
+ PMID:36991472:
+ url: https://doi.org/10.1186/s13068-023-02289-0
+ path: /private/tmp/communitymech-batch23/PMC10061750.xml
+ sha256: 79be59439865226a3812ac3545432d2e8a568e43ed82f1424af41ae38ecee50b
+ license: CC BY 4.0
+ reviewed_scope: Complete primary main body, Methods, Results, Discussion, Conclusions, main tables and displayed
+ captions; images and supplementary files not inspected.
+ PMID:31769802:
+ url: https://research.rug.nl/files/127680366/fiz186.pdf
+ reviewed_scope: Complete abstract; author PDF cover, abstract and early Introduction initially read, then
+ access failed with 403. Full Methods/Results not read.
+ copyright: Oxford University Press 2019; no full body added to git.
+ PMID:34683378:
+ url: https://pubmed.ncbi.nlm.nih.gov/34683378/
+ reviewed_scope: Complete abstract for taxonomy context only; taxonomy unchanged.
+ history_files:
+ - history/records/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium/2026-10-06T015744Z-codex-58759d.yaml
diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv
index eb1abf075..4dfccf681 100644
--- a/reports/causal_graph_review/inventory.tsv
+++ b/reports/causal_graph_review/inventory.tsv
@@ -117,9 +117,9 @@ kb/communities/Clostridium_Thermoanaerobacter_Cellulosic_Bioethanol_Coculture.ya
kb/communities/Clostridium_Thermoanaerobacterium_JN4_GD17_Cellulosic_Biofuel_Coculture.yaml CommunityMech:000180 5dfcac09163ce6ac2930e58230d3d82efda7d5f63cda1afeba33bc16c05d2ecd 3 2 90.0 reports/causal_graph_review/decisions/20261005-three-records-batch22.yaml reviewed
kb/communities/Clostridium_Thermocellum_Saccharoperbutylacetonicum_Cellulosic_Butanol_Coculture.yaml CommunityMech:000208 750b838217019c6d341bdb5d6e797acead41d051c49ba068e48bb58e1cff9f87 3 2 93.3 reports/causal_graph_review/decisions/20261005-three-records-batch22.yaml reviewed
kb/communities/Coastal_Forested_Wetland_Seawater_Ion_Microcosm_Community.yaml CommunityMech:000258 cf9d8d36d20665d0732f08fd825c77c5eada6c5f7fd668c9092d7a29a8698728 4 2 90.0 reports/causal_graph_review/decisions/20261005-three-records-batch22.yaml reviewed
-kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml CommunityMech:000387 db1550951ed40632bcbb2fd2c106b566402e96c10c5ffa32fb7dbc4a77de8986 1 0 65.0 pending
-kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml CommunityMech:000277 93603f50bf2b08fcddd9202e560ad7a1b703f9274132946dbd9447b718f75dc9 3 2 100.0 pending
-kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml CommunityMech:000195 008d639e3e8fcff7fd48e7aee126798987fc4dabbf475c90bdc8bab5e83b0b92 4 2 100.0 pending
+kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml CommunityMech:000387 4aefdcd766a663a1d8fd547207b3f754cfcf6bc938f2212ea4389ca221aacb8d 1 0 55.0 reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml reviewed
+kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml CommunityMech:000277 16e496ddf18a513d3b3ca26c61999146cdf18b0675044ad7ae0d1425482ed270 3 2 90.0 reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml reviewed
+kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml CommunityMech:000195 eb6927ba0ac59c0884bc3f479f20606ca4ae1f80b0855c415759db879a03fd2f 4 2 90.0 reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml reviewed
kb/communities/Copper_Biomining_Heap_Leach.yaml CommunityMech:000019 49e5dcc2b5ca5164ebb9437f56bddbb7806d97d8f04ee8b89d68d170ffd3c1e3 5 8 100.0 pending
kb/communities/Cordyceps_Malbranchea_Antimicrobial_Coculture.yaml CommunityMech:000453 2b61b970b93b4db345670df9f86f00ba299b29ba76cb56b99333fd8bf68e7c6d 2 0 55.0 pending
kb/communities/Corynebacterium_glutamicum_Shewanella_oneidensis_Succinic_Acid_Coculture.yaml CommunityMech:000294 4226ad9fea30e5f9235f7cf8f39e2f5ec754fd6823df63f8b44c152962501c9d 3 2 100.0 pending
diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json
index 4bb400ca5..8bfeff986 100644
--- a/reports/causal_graph_review/summary.json
+++ b/reports/causal_graph_review/summary.json
@@ -8,8 +8,8 @@
"records_without_edges": 141,
"review_status_counts": {
"needs_research": 3,
- "pending": 342,
- "reviewed": 115
+ "pending": 339,
+ "reviewed": 118
},
"structural_defects": [],
"network_audit": [
diff --git a/reports/causal_graph_review/validation-20261005-batch23.json b/reports/causal_graph_review/validation-20261005-batch23.json
new file mode 100644
index 000000000..f3d2204e0
--- /dev/null
+++ b/reports/causal_graph_review/validation-20261005-batch23.json
@@ -0,0 +1,568 @@
+{
+ "base_commit": "eabaa6b3bccc20c8eea91cce9849c6e64ea945da",
+ "scope": [
+ "kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml",
+ "kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml",
+ "kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml"
+ ],
+ "reference_validator_version": "0.1.7",
+ "results": [
+ {
+ "check": "Community_G_GenX_Biodegradation_Consortium-schema",
+ "command": [
+ "linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "No issues found\n"
+ },
+ {
+ "check": "Community_G_GenX_Biodegradation_Consortium-strict",
+ "command": [
+ "python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/Community_G_GenX_Biodegradation_Consortium-strict.tsv",
+ "kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "Validating 1 files with 1 workers; schema=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: /Community_G_GenX_Biodegradation_Consortium-strict.tsv\n"
+ },
+ {
+ "check": "Community_G_GenX_Biodegradation_Consortium-terms",
+ "command": [
+ "linkml-term-validator",
+ "validate-data",
+ "kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Community_G_GenX_Biodegradation_Consortium-references-explained",
+ "command": [
+ "linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "Validating kb/communities/Community_G_GenX_Biodegradation_Consortium.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": "Community_G_GenX_Biodegradation_Consortium-snippets",
+ "command": [
+ "python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "# 18 evidence snippets scanned across 1 files\n MATCH 18\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": "Community_G_GenX_Biodegradation_Consortium-rank",
+ "command": [
+ "python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000387\",\n \"name\": \"Community G GenX Biodegradation Consortium\",\n \"score\": 55.0,\n \"taxonomy\": 6,\n \"connected_taxa\": 6,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 1,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 1,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_interactions\",\n \"downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Community_G_GenX_Biodegradation_Consortium.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Community_G_GenX_Biodegradation_Consortium-history-0",
+ "command": [
+ "linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Community_G_GenX_Biodegradation_Consortium/2026-10-06T015743Z-codex-597f4d.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "No issues found\n"
+ },
+ {
+ "check": "Composting_SynCom_Lignocellulose_Degradation_Humus-schema",
+ "command": [
+ "linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "No issues found\n"
+ },
+ {
+ "check": "Composting_SynCom_Lignocellulose_Degradation_Humus-strict",
+ "command": [
+ "python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/Composting_SynCom_Lignocellulose_Degradation_Humus-strict.tsv",
+ "kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "Validating 1 files with 1 workers; schema=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: /Composting_SynCom_Lignocellulose_Degradation_Humus-strict.tsv\n"
+ },
+ {
+ "check": "Composting_SynCom_Lignocellulose_Degradation_Humus-terms",
+ "command": [
+ "linkml-term-validator",
+ "validate-data",
+ "kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Composting_SynCom_Lignocellulose_Degradation_Humus-references-explained",
+ "command": [
+ "linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "Validating kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.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": "Composting_SynCom_Lignocellulose_Degradation_Humus-snippets",
+ "command": [
+ "python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "# 7 evidence snippets scanned across 1 files\n MATCH 7\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": "Composting_SynCom_Lignocellulose_Degradation_Humus-rank",
+ "command": [
+ "python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000277\",\n \"name\": \"Five-member bacterial-fungal composting SynCom for lignocellulose degradation\",\n \"score\": 90.0,\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/Composting_SynCom_Lignocellulose_Degradation_Humus.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Composting_SynCom_Lignocellulose_Degradation_Humus-history-0",
+ "command": [
+ "linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Composting_SynCom_Lignocellulose_Degradation_Humus/2026-10-06T015743Z-codex-ed6a9c.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "No issues found\n"
+ },
+ {
+ "check": "Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium-schema",
+ "command": [
+ "linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "No issues found\n"
+ },
+ {
+ "check": "Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium-strict",
+ "command": [
+ "python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium-strict.tsv",
+ "kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "Validating 1 files with 1 workers; schema=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: /Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium-strict.tsv\n"
+ },
+ {
+ "check": "Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium-terms",
+ "command": [
+ "linkml-term-validator",
+ "validate-data",
+ "kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium-references-explained",
+ "command": [
+ "linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "Validating kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.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": "Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium-snippets",
+ "command": [
+ "python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "# 28 evidence snippets scanned across 1 files\n MATCH 28\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": "Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium-rank",
+ "command": [
+ "python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000195\",\n \"name\": \"Coniochaeta-Sphingobacterium-Citrobacter Wheat Straw Consortium\",\n \"score\": 90.0,\n \"taxonomy\": 3,\n \"connected_taxa\": 3,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 4,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 7,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium-history-0",
+ "command": [
+ "linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium/2026-10-06T015744Z-codex-58759d.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "No issues found\n"
+ },
+ {
+ "check": "inventory",
+ "command": [
+ "python3",
+ "reports/causal_graph_review/build_inventory.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "{\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\": 1474,\n \"edges\": 710,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 141,\n \"review_status_counts\": {\n \"needs_research\": 3,\n \"pending\": 339,\n \"reviewed\": 118\n },\n \"structural_defects\": []\n}\n"
+ },
+ {
+ "check": "network",
+ "command": [
+ "python3",
+ "-m",
+ "communitymech.cli",
+ "audit-network",
+ "--json"
+ ],
+ "exit_code": 1,
+ "expected_exit_codes": [
+ 1
+ ],
+ "output": "Pinus massoniana' not found in taxonomy section (community-level scope)\"\n },\n {\n \"type\": \"UNKNOWN_TARGET\",\n \"interaction\": \"Protective Enzyme and Resistance-Gene Activation\",\n \"interaction_index\": 2,\n \"taxon\": \"Pinus massoniana\",\n \"severity\": \"warning\",\n \"message\": \"Target taxon 'Pinus massoniana' not found in taxonomy section (community-level scope)\"\n }\n ],\n \"Brocadia_Low_Nitrogen_Anammox_Consortium\": [\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Ca. Kuenenia early-acclimation lineage\",\n \"taxon_id\": \"NCBITaxon:380738\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Ca. Kuenenia early-acclimation lineage\",\n \"term\": {\n \"id\": \"NCBITaxon:380738\",\n \"label\": \"Candidatus Kuenenia\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"Ca. Kuenenia was resolved at genus level as an early-acclimation anammox lineage that was ultimately replaced by Ca. Brocadia.\"\n },\n \"functional_role\": [\n \"PRIMARY_PRODUCER\"\n ],\n \"evidence\": [\n {\n \"reference\": \"PMID:42323145\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"COMPUTATIONAL\",\n \"snippet\": \"During early acclimation, Ca. Kuenenia reduced the expression of costly biosynthetic pathways\",\n \"explanation\": \"Supports Ca. Kuenenia as the early-acclimation lineage tracked in the biofilter succession study.\"\n }\n ]\n },\n \"message\": \"Taxon 'Ca. Kuenenia early-acclimation lineage' has no interactions\"\n }\n ],\n \"Mangrove_Benzene_MFC_Bioanode_Consortium\": [\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Pelobacter\",\n \"taxon_id\": \"NCBITaxon:18\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Pelobacter\",\n \"term\": {\n \"id\": \"NCBITaxon:18\",\n \"label\": \"Pelobacter\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"Pelobacter was a lower-abundance genus in the benzene-fed 16S profile; no species-level identity or functional role was resolved.\\n\"\n },\n \"relative_abundance\": 2.22,\n \"relative_abundance_unit\": \"percent\",\n \"evidence\": [\n {\n \"reference\": \"PMID:41210787\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Pelobacter, Desulfurumonas, and Pseudomonas were also identified at 2.22, 1.64, and 0.87%\",\n \"explanation\": \"Supports Pelobacter as a minor detected genus in the benzene-fed MFC biofilm.\"\n }\n ]\n },\n \"message\": \"Taxon 'Pelobacter' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Pseudomonas\",\n \"taxon_id\": \"NCBITaxon:286\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Pseudomonas\",\n \"term\": {\n \"id\": \"NCBITaxon:286\",\n \"label\": \"Pseudomonas\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"Pseudomonas was a lower-abundance genus in the benzene-fed 16S profile; no species-level identity or functional role was resolved.\\n\"\n },\n \"relative_abundance\": 0.87,\n \"relative_abundance_unit\": \"percent\",\n \"evidence\": [\n {\n \"reference\": \"PMID:41210787\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Pelobacter, Desulfurumonas, and Pseudomonas were also identified at 2.22, 1.64, and 0.87%\",\n \"explanation\": \"Supports Pseudomonas as a minor detected genus in the benzene-fed MFC biofilm.\"\n }\n ]\n },\n \"message\": \"Taxon 'Pseudomonas' has no interactions\"\n }\n ],\n \"Nitrifying_Wastewater_Ammonia_Oxidizing_Consortium\": [\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Legionella MAGs\",\n \"taxon_id\": \"NCBITaxon:445\",\n \"taxon_data\": {\n \"taxon_term\": {\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": "render",
+ "command": [
+ "python3",
+ "-m",
+ "communitymech.render"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "South_Bay_Salt_Pond_Methane_Restoration_Community.html\n \u2713 Soy_Sauce_Temporal_SevenSpecies_SynCom.yaml \u2192 docs/communities/Soy_Sauce_Temporal_SevenSpecies_SynCom.html\n \u2713 Soybean_Chlorophyll_Selected_Biofertilizer_SynCom.yaml \u2192 docs/communities/Soybean_Chlorophyll_Selected_Biofertilizer_SynCom.html\n \u2713 Soybean_N_Fixation_sfSynCom.yaml \u2192 docs/communities/Soybean_N_Fixation_sfSynCom.html\n \u2713 Soymilk_Mixed_Starter_Metabolic_Division_SynCom.yaml \u2192 docs/communities/Soymilk_Mixed_Starter_Metabolic_Division_SynCom.html\n \u2713 Space_Habitat_SevenMember_Stress_Tolerance_SynCom.yaml \u2192 docs/communities/Space_Habitat_SevenMember_Stress_Tolerance_SynCom.html\n \u2713 Sphingobium_Nitrososphaera_Phenanthrene_Carbon_SynCom.yaml \u2192 docs/communities/Sphingobium_Nitrososphaera_Phenanthrene_Carbon_SynCom.html\n \u2713 Sphingobium_Rhodococcus_Lignin_Dimer_Valorization_Coculture.yaml \u2192 docs/communities/Sphingobium_Rhodococcus_Lignin_Dimer_Valorization_Coculture.html\n \u2713 Staged_Cattle_Manure_Ensifer_Bacillus_SynCom.yaml \u2192 docs/communities/Staged_Cattle_Manure_Ensifer_Bacillus_SynCom.html\n \u2713 Staphylococcus_Candida_Context_Dependent_Biofilm_Coculture.yaml \u2192 docs/communities/Staphylococcus_Candida_Context_Dependent_Biofilm_Coculture.html\n \u2713 Stordalen_Mire_Methylotrophic_Methanogenesis_Community.yaml \u2192 docs/communities/Stordalen_Mire_Methylotrophic_Methanogenesis_Community.html\n \u2713 Streptomyces_A2_A5_A11_M7_Pesticide_Consortium.yaml \u2192 docs/communities/Streptomyces_A2_A5_A11_M7_Pesticide_Consortium.html\n \u2713 Subsurface_Carboxydocella_CO_Aquifer_Community.yaml \u2192 docs/communities/Subsurface_Carboxydocella_CO_Aquifer_Community.html\n \u2713 Suillus_Bacillus_Thiamine_Ectomycorrhizal_SynCom.yaml \u2192 docs/communities/Suillus_Bacillus_Thiamine_Ectomycorrhizal_SynCom.html\n \u2713 Sulfide_Spring_Autotrophic_CPR_Biofilm.yaml \u2192 docs/communities/Sulfide_Spring_Autotrophic_CPR_Biofilm.html\n \u2713 SynComBac10_Chicken_Intestinal_SynCom.yaml \u2192 docs/communities/SynComBac10_Chicken_Intestinal_SynCom.html\n \u2713 SynCom_ARC_Peanut_Aflatoxin_Nodulation.yaml \u2192 docs/communities/SynCom_ARC_Peanut_Aflatoxin_Nodulation.html\n \u2713 SynCom_BsBv_Cigar_Tobacco_Leaf_Fermentation.yaml \u2192 docs/communities/SynCom_BsBv_Cigar_Tobacco_Leaf_Fermentation.html\n \u2713 SynCom_Chlorella_sorokiniana_Biogas_Slurry_Coupling_System.yaml \u2192 docs/communities/SynCom_Chlorella_sorokiniana_Biogas_Slurry_Coupling_System.html\n \u2713 SynCom_MetG2_Rhizobacteria_Sugarcane_Stress_Resilience.yaml \u2192 docs/communities/SynCom_MetG2_Rhizobacteria_Sugarcane_Stress_Resilience.html\n \u2713 SynCom_Pseudomonas_Rahnella_Artemisia_Phytoremediation.yaml \u2192 docs/communities/SynCom_Pseudomonas_Rahnella_Artemisia_Phytoremediation.html\n \u2713 SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.yaml \u2192 docs/communities/SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.html\n \u2713 SynCom_Y_Agrobacterium_Bacillus_Biofilm_Biocontrol_Coculture.yaml \u2192 docs/communities/SynCom_Y_Agrobacterium_Bacillus_Biofilm_Biocontrol_Coculture.html\n \u2713 Synechococcus_Azotobacter_Photoproduction_Mutualism.yaml \u2192 docs/communities/Synechococcus_Azotobacter_Photoproduction_Mutualism.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to docs/communities\n \u2713 Generated browser at docs/browser.html\n \u2713 Generated landing at docs/index.html\n"
+ },
+ {
+ "check": "render-repeat",
+ "command": [
+ "python3",
+ "-m",
+ "communitymech.render"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "South_Bay_Salt_Pond_Methane_Restoration_Community.html\n \u2713 Soy_Sauce_Temporal_SevenSpecies_SynCom.yaml \u2192 docs/communities/Soy_Sauce_Temporal_SevenSpecies_SynCom.html\n \u2713 Soybean_Chlorophyll_Selected_Biofertilizer_SynCom.yaml \u2192 docs/communities/Soybean_Chlorophyll_Selected_Biofertilizer_SynCom.html\n \u2713 Soybean_N_Fixation_sfSynCom.yaml \u2192 docs/communities/Soybean_N_Fixation_sfSynCom.html\n \u2713 Soymilk_Mixed_Starter_Metabolic_Division_SynCom.yaml \u2192 docs/communities/Soymilk_Mixed_Starter_Metabolic_Division_SynCom.html\n \u2713 Space_Habitat_SevenMember_Stress_Tolerance_SynCom.yaml \u2192 docs/communities/Space_Habitat_SevenMember_Stress_Tolerance_SynCom.html\n \u2713 Sphingobium_Nitrososphaera_Phenanthrene_Carbon_SynCom.yaml \u2192 docs/communities/Sphingobium_Nitrososphaera_Phenanthrene_Carbon_SynCom.html\n \u2713 Sphingobium_Rhodococcus_Lignin_Dimer_Valorization_Coculture.yaml \u2192 docs/communities/Sphingobium_Rhodococcus_Lignin_Dimer_Valorization_Coculture.html\n \u2713 Staged_Cattle_Manure_Ensifer_Bacillus_SynCom.yaml \u2192 docs/communities/Staged_Cattle_Manure_Ensifer_Bacillus_SynCom.html\n \u2713 Staphylococcus_Candida_Context_Dependent_Biofilm_Coculture.yaml \u2192 docs/communities/Staphylococcus_Candida_Context_Dependent_Biofilm_Coculture.html\n \u2713 Stordalen_Mire_Methylotrophic_Methanogenesis_Community.yaml \u2192 docs/communities/Stordalen_Mire_Methylotrophic_Methanogenesis_Community.html\n \u2713 Streptomyces_A2_A5_A11_M7_Pesticide_Consortium.yaml \u2192 docs/communities/Streptomyces_A2_A5_A11_M7_Pesticide_Consortium.html\n \u2713 Subsurface_Carboxydocella_CO_Aquifer_Community.yaml \u2192 docs/communities/Subsurface_Carboxydocella_CO_Aquifer_Community.html\n \u2713 Suillus_Bacillus_Thiamine_Ectomycorrhizal_SynCom.yaml \u2192 docs/communities/Suillus_Bacillus_Thiamine_Ectomycorrhizal_SynCom.html\n \u2713 Sulfide_Spring_Autotrophic_CPR_Biofilm.yaml \u2192 docs/communities/Sulfide_Spring_Autotrophic_CPR_Biofilm.html\n \u2713 SynComBac10_Chicken_Intestinal_SynCom.yaml \u2192 docs/communities/SynComBac10_Chicken_Intestinal_SynCom.html\n \u2713 SynCom_ARC_Peanut_Aflatoxin_Nodulation.yaml \u2192 docs/communities/SynCom_ARC_Peanut_Aflatoxin_Nodulation.html\n \u2713 SynCom_BsBv_Cigar_Tobacco_Leaf_Fermentation.yaml \u2192 docs/communities/SynCom_BsBv_Cigar_Tobacco_Leaf_Fermentation.html\n \u2713 SynCom_Chlorella_sorokiniana_Biogas_Slurry_Coupling_System.yaml \u2192 docs/communities/SynCom_Chlorella_sorokiniana_Biogas_Slurry_Coupling_System.html\n \u2713 SynCom_MetG2_Rhizobacteria_Sugarcane_Stress_Resilience.yaml \u2192 docs/communities/SynCom_MetG2_Rhizobacteria_Sugarcane_Stress_Resilience.html\n \u2713 SynCom_Pseudomonas_Rahnella_Artemisia_Phytoremediation.yaml \u2192 docs/communities/SynCom_Pseudomonas_Rahnella_Artemisia_Phytoremediation.html\n \u2713 SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.yaml \u2192 docs/communities/SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.html\n \u2713 SynCom_Y_Agrobacterium_Bacillus_Biofilm_Biocontrol_Coculture.yaml \u2192 docs/communities/SynCom_Y_Agrobacterium_Bacillus_Biofilm_Biocontrol_Coculture.html\n \u2713 Synechococcus_Azotobacter_Photoproduction_Mutualism.yaml \u2192 docs/communities/Synechococcus_Azotobacter_Photoproduction_Mutualism.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to docs/communities\n \u2713 Generated browser at docs/browser.html\n \u2713 Generated landing at docs/index.html\n"
+ },
+ {
+ "check": "regressions",
+ "command": [
+ "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_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_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"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "........................................................................ [ 25%]\n........................................................................ [ 51%]\n........................................................................ [ 77%]\n.............................................................. [100%]\n278 passed in 291.48s (0:04:51)\n"
+ },
+ {
+ "check": "workspace-rights",
+ "command": [
+ "python3",
+ "-m",
+ "pytest",
+ "-q",
+ "tests/test_no_paywalled_text_in_repo.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "... [100%]\n3 passed in 2.55s\n"
+ },
+ {
+ "check": "black",
+ "command": [
+ "black",
+ "--check",
+ "tests/test_causal_review_batch23.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "All done! \u2728 \ud83c\udf70 \u2728\n1 file would be left unchanged.\n"
+ },
+ {
+ "check": "ruff",
+ "command": [
+ "ruff",
+ "check",
+ "tests/test_causal_review_batch23.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": "All checks passed!\n"
+ },
+ {
+ "check": "diff-check",
+ "command": [
+ "git",
+ "diff",
+ "--check"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "output": ""
+ }
+ ],
+ "limitations": [
+ "Source-based self-adversarial review, not independent approval or corpus completion.",
+ "Actual baseline just audit-network-json lacked its console entry point; exact repository CLI implementation used. No dependency changes.",
+ "All 684 prior issue titles/bodies and ignored-inclusive local reports/history/research/tests searched; comments not exhaustive.",
+ "GenX and 2023 wheat-straw primary main bodies, Methods, tables/captions read. Four additional abstracts reviewed; 2020 PDF only partially accessible; no visual images/supplementary files inspected.",
+ "Eight nodes retained, six exact renames, all four arrows retained and qualified. No new causal structure or Edison spend.",
+ "Existing #746/#524 remain open; unrelated metadata not certified. Unrelated YAML blocks and six cache artifacts byte-preserved.",
+ "Generated pages checked by deterministic rendering and exact parsed description coverage, not browser screenshots."
+ ],
+ "unchanged_raw_blocks": 42,
+ "reference_caches_unchanged": true,
+ "corpus_sentinels_unchanged": true,
+ "connectivity_survey_before": {
+ "records": 460,
+ "with_community_level": 389,
+ "mixed": 122,
+ "community_level_only": 267,
+ "taxa": 1499,
+ "credited_solely_by_the_rule": 1218
+ },
+ "new_network_warnings": [],
+ "render_determinism": "passed",
+ "published_description_coverage": {
+ "pages": 456,
+ "node_descriptions": 1460,
+ "edge_descriptions": 702
+ },
+ "rights_import_root_verified": true,
+ "connectivity_survey": {
+ "records": 460,
+ "with_community_level": 389,
+ "mixed": 122,
+ "community_level_only": 267,
+ "taxa": 1499,
+ "credited_solely_by_the_rule": 1220
+ },
+ "connectivity_delta": {
+ "records": 0,
+ "with_community_level": 0,
+ "mixed": 0,
+ "community_level_only": 0,
+ "taxa": 0,
+ "credited_solely_by_the_rule": 2
+ },
+ "snippet_counts": {
+ "MATCH": 53,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "corpus": {
+ "scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.",
+ "records": 460,
+ "nodes": 1474,
+ "edges": 710,
+ "records_without_nodes": 8,
+ "records_without_edges": 141,
+ "review_status_counts": {
+ "needs_research": 3,
+ "pending": 339,
+ "reviewed": 118
+ },
+ "structural_defects": []
+ },
+ "network_warning_count": 25,
+ "status": "passed"
+}
diff --git a/tests/test_causal_review_batch23.py b/tests/test_causal_review_batch23.py
new file mode 100644
index 000000000..6f8810a69
--- /dev/null
+++ b/tests/test_causal_review_batch23.py
@@ -0,0 +1,163 @@
+"""Preserve omics measurement limits, tested partners and positive outcomes."""
+
+import hashlib
+from collections import Counter
+from pathlib import Path
+
+import yaml
+
+ROOT = Path(__file__).resolve().parents[1]
+LEDGER = ROOT / "reports/causal_graph_review/decisions/20261005-three-records-batch23.yaml"
+STEMS = [
+ "Community_G_GenX_Biodegradation_Consortium",
+ "Composting_SynCom_Lignocellulose_Degradation_Humus",
+ "Coniochaeta_Sphingobacterium_Citrobacter_Wheat_Straw_Consortium",
+]
+
+
+def record(index):
+ return yaml.safe_load((ROOT / "kb/communities" / f"{STEMS[index]}.yaml").read_text())
+
+
+def assert_participants(node, doc, indices):
+ assert node["scope"] == "COMMUNITY_LEVEL"
+ assert not {"source_taxon", "target_taxon", "interaction_type"} & node.keys()
+ assert node["participating_taxa"] == [
+ {
+ "preferred_term": doc["taxonomy"][i]["taxon_term"]["preferred_term"],
+ "term": doc["taxonomy"][i]["taxon_term"]["term"],
+ }
+ for i in indices
+ ]
+
+
+def test_genx_relative_profiles_do_not_establish_competition_or_degrader_identity():
+ doc = record(0)
+ (node,) = doc["ecological_interactions"]
+ assert_participants(node, doc, range(6))
+ assert not node.get("downstream")
+ assert "relative enrichment" in node["description"]
+ assert "an observed subset, not the complete consortium" in node["description"]
+ assert "Bulk GenX loss and fluoride release support community activity" in node["description"]
+ assert "do not establish absolute viable expansion or extinction" in node["description"]
+ assert "reciprocal competitive harm" in node["description"]
+ assert node["evidence"][0]["supports"] == "PARTIAL"
+ assert any("GENIA" in d.get("rationale", "") for d in doc["discussions"])
+
+
+def test_compost_metagenomics_and_native_genera_are_not_activity_or_inoculant_roster():
+ native, genes, output = record(1)["ecological_interactions"]
+ for node in (native, genes, output):
+ assert node["scope"] == "COMMUNITY_LEVEL"
+ assert (
+ not {"interaction_type", "participating_taxa", "source_taxon", "target_taxon"}
+ & node.keys()
+ )
+ assert "not the five inoculant identities" in native["description"]
+ assert (
+ "not a direct measurement of enzyme expression or catalytic activity"
+ in genes["description"]
+ )
+ assert genes["evidence"][0]["evidence_source"] == "COMPUTATIONAL"
+ assert native["downstream"][0]["target"] == genes["name"]
+ assert genes["downstream"][0]["target"] == output["name"]
+ assert all(
+ n["downstream"][0]["description"].startswith("HYPOTHESIZED") for n in (native, genes)
+ )
+
+
+def test_compost_retains_positive_treatment_outcome_and_abstract_access_limit():
+ doc = record(1)
+ output = doc["ecological_interactions"][2]
+ assert "higher humus content than the control" in output["description"]
+ assert "earlier maturation" in output["description"]
+ assert output["evidence"][0]["supports"] == "SUPPORT"
+ assert "full experimental details were unavailable" in output["evidence"][0]["explanation"]
+ assert any("full body" in d.get("rationale", "") for d in doc["discussions"])
+
+
+def test_straw_fungal_capacity_is_source_only_and_not_measured_catalysis():
+ doc = record(2)
+ fungus = doc["ecological_interactions"][0]
+ assert fungus["scope"] == "PAIRWISE"
+ assert fungus["source_taxon"]["term"]["id"] == "NCBITaxon:1571157"
+ assert not {"target_taxon", "participating_taxa", "interaction_type"} & fungus.keys()
+ assert "not directly measured enzyme activity" in fungus["description"]
+ assert all(e["supports"] == "PARTIAL" for e in fungus["evidence"])
+
+
+def test_straw_bacterial_roles_do_not_assert_directed_or_exclusive_vitamin_donation():
+ doc = record(2)
+ bacteria = doc["ecological_interactions"][1]
+ assert_participants(bacteria, doc, [1, 2])
+ assert "RibE is encoded by all three members" in bacteria["description"]
+ assert "the medium supplies riboflavin" in bacteria["description"]
+ assert "so4 ribE expression increases late at 60 rpm" in bacteria["description"]
+ assert "exclusive w15 vitamin B2 donation is not established" in bacteria["description"]
+
+
+def test_straw_pair_effect_and_output_keep_control_and_condition_boundaries():
+ doc = record(2)
+ fungus, bacteria, inhibition, output = doc["ecological_interactions"]
+ for node in (inhibition, output):
+ assert_participants(node, doc, [0, 1, 2])
+ assert "bacterial pair, not isolated w15" in inhibition["description"]
+ assert "lower degradation" in inhibition["description"]
+ assert "not established reciprocal competitive harm" in inhibition["description"]
+ assert "60 rpm (27.1 +/- 2.4%)" in output["description"]
+ assert "180 rpm (16.2 +/- 1.7%)" in output["description"]
+ assert "not selectively demonstrated enzyme synergism" in output["description"]
+ for node in (fungus, bacteria):
+ assert node["downstream"][0]["target"] == output["name"]
+ assert node["downstream"][0]["description"].startswith("PARTIAL")
+
+
+def test_batch23_source_scope_does_not_claim_inaccessible_bodies_were_read():
+ ledger = yaml.safe_load(LEDGER.read_text())
+ rows = ledger["records"]
+ assert "Complete abstract only" in rows[1]["source_review"]["PMID:41297400"]["reviewed_scope"]
+ assert (
+ "Full Methods/Results not read"
+ in rows[2]["source_review"]["PMID:31769802"]["reviewed_scope"]
+ )
+ assert (
+ "Complete primary main body" in rows[2]["source_review"]["PMID:36991472"]["reviewed_scope"]
+ )
+
+
+def test_batch23_ledger_accounts_for_every_node_arrow_and_cache():
+ ledger = yaml.safe_load(LEDGER.read_text())
+ assert ledger["independent_approval"] is False
+ assert len(ledger["reference_cache_original_hashes"]) == 6
+ rows = ledger["records"]
+ assert len(rows) == 3
+ assert sum(len(r["node_decisions"]) for r in rows) == 8
+ assert sum(len(r["retained_edge_decisions"]) for r in rows) == 4
+ assert not any(r["removed_edge_decisions"] for r in rows)
+ assert sum(len(r["renamed_nodes"]) for r in rows) == 6
+ for row in rows:
+ raw = (ROOT / row["path"]).read_bytes()
+ assert hashlib.sha256(raw).hexdigest() == row["record_sha256"]
+ doc = yaml.safe_load(raw)
+ nodes = doc["ecological_interactions"]
+ names = {n["name"] for n in nodes}
+ assert Counter(d["node"] for d in row["node_decisions"]) == Counter(names)
+ edges = [{"source": n["name"], **e} for n in nodes for e in n.get("downstream", [])]
+ assert row["edges_after"] == edges
+ renames = row["renamed_nodes"]
+ before = {
+ (renames.get(e["source"], e["source"]), renames.get(e["target"], e["target"]))
+ for e in row["edges_before"]
+ }
+ assert before == {(e["source"], e["target"]) for e in row["retained_edge_decisions"]}
+ assert all(e["target"] in names for e in edges)
+ assert len(row["history_files"]) == 1
+ assert any(d["kind"] == "KNOWLEDGE_GAP" for d in doc["discussions"])
+ assert all(
+ a.split("#", 1)[1] in names
+ for d in doc["discussions"]
+ for a in d["attaches_to"]
+ if a.startswith("ecological_interactions#")
+ )
+ for path, expected in ledger["reference_cache_original_hashes"].items():
+ assert hashlib.sha256((ROOT / path).read_bytes()).hexdigest() == expected