"members of the Actinobacteriota phylum are important in the degradation of lactose, via the Leloir pathway and the bifid shunt, and the production of acetic, lactic, and succinic acids
@@ -1008,22 +1017,26 @@
-
Firmicutes members (Clostridium, Agathobacter) perform reverse beta-oxidation (chain elongation) using lactic acid, ethanol, or lactose as electron donors and carbon sources to produce butyric (C4), hexanoic (C6), and octanoic (C8) acids. This represents a key cross-feeding interaction where Actinobacteriota-produced lactic acid fuels Firmicutes chain elongation.
-
+
HYPOTHESIZED: Reverse-beta-oxidation genes, EtfB phylogeny/gene neighborhoods and reactor profiles suggest different chain-elongating roles for the three abundant Firmicute MAGs. CLOS1 is proposed to use lactate and predominantly produce butyrate; LCO1 is proposed to use lactose directly; ACID1 may use ethanol, but that assignment is inconclusive and other substrates remain possible. Butyric, hexanoic and octanoic acids were measured in reactor broth, not assigned to individual cells by flux experiments. No genomic diagnostic of terminal chain length was established. Neither all Firmicutes consuming lactate nor every member producing all three acids is demonstrated; C4 butyrate is distinguished from the C6/C8 medium-chain products.
+
Participating Taxa:
+ Clostridium_B sp. (MAG CLOS1),
-
Metabolites:
+ Agathobacter rectalis (MAG LCO1),
+
+ Acidaminococcus sp. (MAG ACID1)
+
+
- lactic acid
- (
CHEBI:422 ),
+
+
+
Metabolites:
ethanol
(Evidence
PMID:37324413
- - SUPPORT (IN_VITRO)
+ - PARTIAL (COMPUTATIONAL)
"members of the Firmicutes phylum contribute to the chain-elongation-mediated production of butyric, hexanoic, and octanoic acids, with different microbes using either lactose, ethanol, or lactic acid as the growth substrate
@@ -1072,26 +1085,24 @@
Evidence
-
The core metabolic interaction in the community is cross-feeding between Actinobacteriota (which produce lactic acid from lactose) and Firmicutes (which consume lactic acid for chain elongation). This syntrophic relationship enables the full conversion of lactose into medium-chain fatty acids via a two-step metabolic cascade.
-
+
HYPOTHESIZED: The conceptual model proposes that lactate made by some lactose-fermenting Actinobacteriota can supply CLOS1 chain elongation. ATO3 and Bifidobacterium MAGs represent proposed donor candidates, not a measured set of donor-recipient transfers. CLOS1 contains the inferred LacT, electron-confurcating LDH and associated EtfAB machinery; the other two abundant Firmicutes have different proposed substrates. The study did not directly trace ATO3-to-CLOS1 carbon flow, establish obligatory syntrophy, determine lactate stereochemistry or show complete conversion of lactose into medium-chain fatty acids. The canonical labels retain their existing genus-level or ambiguous groundings rather than assert newly identified species.
-
Source Taxon: Olsenella_B sp. (MAG ATO3)
+
Participating Taxa:
-
Target Taxon: Clostridium_B sp. (MAG CLOS1)
+ Olsenella_B sp. (MAG ATO3),
+ Bifidobacterium tibiigranuli (MAG BIF2),
+ Bifidobacterium sp. (MAG BIF11),
-
Metabolites:
+ Bifidobacterium thermophilum (MAG BIF18),
- lactic acid
- (CHEBI:422 )
+ Clostridium_B sp. (MAG CLOS1)
@@ -1099,13 +1110,14 @@
Actinobacteriota-Firmicutes Cross-Feeding Network
+
+
Downstream Effects:
-
→ Chain Elongation to Medium-Chain Fatty Acids
-
The inferred Actinobacteriota-to-Firmicutes lactic-acid transfer routes lactose-derived short-chain acid into reverse-beta-oxidation production of butyrate, hexanoate, and octanoate.
-
+
→ Proposed Firmicutes Chain Elongation Roles
+
HYPOTHESIZED: Access to donor-derived lactate could support the proposed CLOS1 branch of reverse beta-oxidation, associated mainly with butyrate. This arrow does not route all C6/C8 synthesis through CLOS1 or make LCO1 direct-lactose and ACID1 possible-ethanol metabolism dependent on lactate transfer.
@@ -1121,7 +1133,7 @@
Evidence
PMID:37324413
- - SUPPORT (IN_VITRO)
+ - PARTIAL (COMPUTATIONAL)
"members of the Actinobacteriota phylum are important in the degradation of lactose, via the Leloir pathway and the bifid shunt, and the production of acetic, lactic, and succinic acids
@@ -1174,6 +1186,25 @@
Associated Datasets
+
+ Knowledge gaps & discussions (1)
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which MAGs exchange carbon and determine terminal chain length?
+
+
The reactor measurements support fermentation, whereas member roles and both retained model arrows are hypotheses. Metatranscriptomics, isotope tracing and selective member/substrate perturbations would test donor identity, CLOS1 uptake, ACID1 substrate and chain-length allocation. SPH2 has a separate proposed ethanol role outside these existing Actinobacteriota/lactate and Firmicute nodes; no new node is invented to hide its disconnected warning. Unsupported stereospecific CHEBI:422 entries are removed from graph nodes without guessing a replacement. Non-graph ingredient/taxonomy role text and all #486/#624 grounding history remain unchanged and are not certified by this graph-only review.
+
+
Attaches to: ecological_interactions#Proposed Actinobacteriota Lactose Fermentation Roles, ecological_interactions#Proposed Firmicutes Chain Elongation Roles, ecological_interactions#Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+
+
+
+
+
+
+
@@ -1457,7 +1488,7 @@
Evidence
(function() {
var intId = "interaction:0";
- var intType = "CROSS_FEEDING";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1465,8 +1496,6 @@
Evidence
metabolites.push("acetic acid");
- metabolites.push("lactic acid");
-
metabolites.push("succinic acid");
@@ -1476,7 +1505,7 @@
Evidence
nodes.push({
id: intId,
- label: "Lactose Degradation to Organic Acids",
+ label: "Proposed Actinobacteriota Lactose Fermentation Roles",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1487,16 +1516,35 @@
Evidence
+ var participantKeys = [
+
+ "Olsenella_B sp. (MAG ATO3)",
+
+ "Pauljensenia sp. (MAG ACT2)",
+
+ "Bifidobacterium tibiigranuli (MAG BIF2)",
+
+ "Bifidobacterium sp. (MAG BIF11)",
+
+ "Olsenella_B sp900119625 (MAG ATO6)",
+
+ "Bifidobacterium thermophilum (MAG BIF18)"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
+
})();
(function() {
var intId = "interaction:1";
- var intType = "CROSS_FEEDING";
+ var intType = "UNKNOWN";
var metabolites = [];
- metabolites.push("lactic acid");
-
metabolites.push("ethanol");
metabolites.push("butyric acid");
@@ -1512,7 +1560,7 @@
Evidence
nodes.push({
id: intId,
- label: "Chain Elongation to Medium-Chain Fatty Acids",
+ label: "Proposed Firmicutes Chain Elongation Roles",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1523,24 +1571,35 @@
Evidence
+ var participantKeys = [
+
+ "Clostridium_B sp. (MAG CLOS1)",
+
+ "Agathobacter rectalis (MAG LCO1)",
+
+ "Acidaminococcus sp. (MAG ACID1)"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
+
})();
(function() {
var intId = "interaction:2";
- var intType = "CROSS_FEEDING";
+ var intType = "UNKNOWN";
var metabolites = [];
-
- metabolites.push("lactic acid");
-
-
var processes = [];
var evidenceCount = 1;
nodes.push({
id: intId,
- label: "Actinobacteriota-Firmicutes Cross-Feeding Network",
+ label: "Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1549,17 +1608,26 @@
Evidence
});
- var srcKey = "Olsenella_B sp. (MAG ATO3)";
- if (taxonNodeIds[srcKey]) {
- links.push({ source: taxonNodeIds[srcKey], target: intId });
- }
+ var participantKeys = [
- var tgtKey = "Clostridium_B sp. (MAG CLOS1)";
- if (taxonNodeIds[tgtKey]) {
- links.push({ source: intId, target: taxonNodeIds[tgtKey] });
- }
+ "Olsenella_B sp. (MAG ATO3)",
+
+ "Bifidobacterium tibiigranuli (MAG BIF2)",
+
+ "Bifidobacterium sp. (MAG BIF11)",
+
+ "Bifidobacterium thermophilum (MAG BIF18)",
+
+ "Clostridium_B sp. (MAG CLOS1)"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
})();
diff --git a/docs/communities/GOM_Oil_Degrading_Consortium.html b/docs/communities/GOM_Oil_Degrading_Consortium.html
index 02903d413..314a3cea4 100644
--- a/docs/communities/GOM_Oil_Degrading_Consortium.html
+++ b/docs/communities/GOM_Oil_Degrading_Consortium.html
@@ -643,7 +643,7 @@
Ecological Interactions
Ecological interaction network for Gulf of Mexico Oil-Degrading 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 (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.
@@ -651,8 +651,8 @@
Ecological Interactions
Niche partitioning
+ aria-hidden="true" data-symbol="symbolTriangle2"
+ data-color="#929caa"> Other
-
The four-member Gulf of Mexico consortium degraded n-alkanes from light crude oil, one of the two GC-MS-measured contaminant classes supporting its improved crude-oil removal.
+
GC-MS with an abiotic-control baseline measured C8-C38 n-alkane depletion in the four-strain consortium and individual cultures. Consortium values reached about 60% at day 30 and about 45% at day 75; chain-length fractions differed, and time-dependent abiotic loss of shorter alkanes affects these relative estimates. These measurements support hydrocarbon transformation, not complete mineralization, obligatory niche partitioning or strain-resolved in-consortium flux. Similar monoculture preferences and MetaMIS predictions do not assign the consortium result exclusively to Pseudomonas or Alcanivorax.
+
Participating Taxa:
+
+ Pseudomonas sp. GOM,
+
+ Halopseudomonas aestusnigri GOM5,
+
+ Paenarthrobacter sp. GOM3,
+
+ Alcanivorax sp. GOM
+
+
+
Metabolites:
alkane
(CHEBI:18310 ),
-
- dodecane
- (CHEBI:28817 )
+ class="term-link" target="_blank" rel="noopener noreferrer">CHEBI:18310)
@@ -697,16 +704,6 @@
Consortium n-Alkane Biodegradation
-
-
Downstream Effects:
-
-
-
→ Enhanced Light Crude Oil Removal
-
Consortium-scale n-alkane biodegradation contributes to improved gravimetric light-crude-oil removal by the selected four-strain consortium.
-
-
-
-
Evidence
@@ -732,12 +729,23 @@
Evidence
-
The selected four-strain consortium degraded 12 measured polyaromatic hydrocarbons from light crude oil alongside its n-alkane biodegradation activity.
+
GC-MS monitored 12 aromatic analytes, with different susceptibilities; not all 12 were substantially biodegraded. The consortium aggregate PAH estimate reached about 16% at day 75 relative to the abiotic baseline. The main text identifies fluorene, dibenzothiophene, methylated phenanthrenes and pyrene among susceptible compounds, while others were hardly biodegraded. This does not establish generic phenanthrene degradation, complete mineralization or a necessary division of labor. The canonical four participants identify the assayed consortium, not four proven owners of each degradation reaction.
+
+
+
+
+
Participating Taxa:
+
+ Pseudomonas sp. GOM,
+ Halopseudomonas aestusnigri GOM5,
+ Paenarthrobacter sp. GOM3,
+ Alcanivorax sp. GOM
+
+
@@ -751,10 +759,6 @@
Consortium Polyaromatic Hydrocarbon Biodegradation
(
CHEBI:23681 ),
- phenanthrene
- (
CHEBI:28851 ),
-
pyrene
(
CHEBI:39106 )
@@ -765,16 +769,6 @@
Consortium Polyaromatic Hydrocarbon Biodegradation
-
-
Downstream Effects:
-
-
-
→ Enhanced Light Crude Oil Removal
-
PAH biodegradation is one measured hydrocarbon-removal activity of the consortium that reached higher total crude-oil removal than any individual member.
-
-
-
-
Evidence
@@ -799,13 +793,24 @@
Evidence
-
The Plackett-Burman-selected Pseudomonas, Halopseudomonas, Paenarthrobacter, and Alcanivorax consortium removed more light crude oil than any constituent grown alone over the 75-day assay.
+
After 75 days, gravimetric light-crude-oil removal was about 62% in the Plackett-Burman-selected four-strain consortium versus about 25-39% in individual cultures. The authors explicitly did not subtract abiotic-control removal from these gross percentages, unlike the baseline used for GC-MS biodegradation. Both monocultures and consortium started at 1e8 CFU/mL per strain, so total starting CFUs were higher in the consortium; this is not a total-inoculum-matched synergy test. Stable relative abundance after day 7 and inferred MetaMIS interactions suggest possible cooperation, not directly demonstrated niche partitioning or the mechanism of this comparative endpoint. Neither the n-alkane nor PAH percentage alone selectively explains the gross-removal advantage.
+
+
Participating Taxa:
+
+ Pseudomonas sp. GOM,
+
+ Halopseudomonas aestusnigri GOM5,
+
+ Paenarthrobacter sp. GOM3,
+
+ Alcanivorax sp. GOM
+
+
@@ -813,11 +818,7 @@
Enhanced Light Crude Oil Removal
alkane
(
CHEBI:18310 ),
-
- polyaromatic hydrocarbons
- (
CHEBI:33848 )
+ class="term-link" target="_blank" rel="noopener noreferrer">CHEBI:18310)
@@ -852,6 +853,25 @@
Evidence
+
+ Knowledge gaps & discussions (1)
+
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which processes explain the consortium gross-removal advantage?
+
+
Equal-total-inoculum controls, abiotic-adjusted mass balance and selective partner or metabolic perturbations would separate starting cell number, hydrocarbon transformation, other removal processes and true interaction effects. The paper infers a signed network from relative-abundance time series using MetaMIS; these predictions and possible biosurfactant/cometabolic roles are not newly curated causal nodes here. Two class-to-bulk arrows are removed because neither establishes mediation of the comparative gross endpoint. Existing cache has an abstract and one Methods sentence despite a FULL TEXT marker; the publisher main body, Methods, tables and captions were read separately. Non-graph claims of significant degradation and metadata remain preserved, not certified.
+
+
Attaches to: ecological_interactions#Consortium n-Alkane Biodegradation, ecological_interactions#Consortium Polyaromatic Hydrocarbon Biodegradation, ecological_interactions#Higher Gross Light Crude Oil Removal
+
+
+
+
+
+
+
@@ -1068,14 +1088,12 @@
Evidence
(function() {
var intId = "interaction:0";
- var intType = "NICHE_PARTITIONING";
+ var intType = "UNKNOWN";
var metabolites = [];
metabolites.push("alkane");
- metabolites.push("dodecane");
-
var processes = [];
@@ -1098,11 +1116,28 @@
Evidence
+ var participantKeys = [
+
+ "Pseudomonas sp. GOM",
+
+ "Halopseudomonas aestusnigri GOM5",
+
+ "Paenarthrobacter sp. GOM3",
+
+ "Alcanivorax sp. GOM"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
+
})();
(function() {
var intId = "interaction:1";
- var intType = "NICHE_PARTITIONING";
+ var intType = "UNKNOWN";
var metabolites = [];
@@ -1110,8 +1145,6 @@
Evidence
metabolites.push("dibenzothiophene");
- metabolites.push("phenanthrene");
-
metabolites.push("pyrene");
@@ -1132,18 +1165,33 @@
Evidence
+ var participantKeys = [
+
+ "Pseudomonas sp. GOM",
+
+ "Halopseudomonas aestusnigri GOM5",
+
+ "Paenarthrobacter sp. GOM3",
+
+ "Alcanivorax sp. GOM"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
+
})();
(function() {
var intId = "interaction:2";
- var intType = "NICHE_PARTITIONING";
+ var intType = "UNKNOWN";
var metabolites = [];
metabolites.push("alkane");
- metabolites.push("polyaromatic hydrocarbons");
-
var processes = [];
@@ -1151,7 +1199,7 @@
Evidence
nodes.push({
id: intId,
- label: "Enhanced Light Crude Oil Removal",
+ label: "Higher Gross Light Crude Oil Removal",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -1162,6 +1210,23 @@
Evidence
+ var participantKeys = [
+
+ "Pseudomonas sp. GOM",
+
+ "Halopseudomonas aestusnigri GOM5",
+
+ "Paenarthrobacter sp. GOM3",
+
+ "Alcanivorax sp. GOM"
+
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
+ });
+
})();
diff --git a/docs/communities/Garlic_Pseudomonas_SynCom6.html b/docs/communities/Garlic_Pseudomonas_SynCom6.html
index a609f2a16..c59eb4f34 100644
--- a/docs/communities/Garlic_Pseudomonas_SynCom6.html
+++ b/docs/communities/Garlic_Pseudomonas_SynCom6.html
@@ -527,75 +527,18 @@
Ecological Interactions
-
Field amplicon and co-occurrence analyses nominated Pseudomonas as a garlic PGPR candidate: the genus was enriched under late-stage or fertile-soil rhizosphere conditions and was prioritized in Apr, May, sandy loam, and loam co-occurrence networks.
-
+
The equal-proportion M mixture of six garlic-rhizosphere Pseudomonas isolates increased radish seedling length relative to sterile-water CK and B8-7 alone in the two-day incubator assay. Adding B8-7 to M did not significantly change the growth-promoting effect, and B8-7 alone did not promote growth. This is a consortium-level host response, not a garlic field-yield result or demonstrated cooperation among the six strains. Individual Pseudomonas monocultures and member omissions were not the comparison reported here, so synergy and each member's necessity are unresolved. The single canonical Pseudomonas sp. participant is an unresolved umbrella for the six isolates, not a complete strain-resolved roster or a claim that they are one species.
+
Participating Taxa:
+ Pseudomonas sp.
-
-
-
Biological Processes:
-
-
-
-
-
-
-
Evidence
-
-
-
-
-
- "Pseudomonas was enriched in eight comparison groups under the late growth periods and good growth conditions"
-
-
-
-
-
-
- "Compared with the network of Mar and sandy soil datasets, Pseudomonas plays more important role in the Apr, May, sandy loam and loam networks."
-
-
-
-
-
-
-
-
-
-
Six garlic rhizosphere Pseudomonas isolates with different 16S/BLAST phylogenetic names were mixed in equal proportions to form the M SynCom used for plant-growth testing.
-
-
-
-
+
@@ -605,9 +548,9 @@
Six-Strain Pseudomonas SynCom Assembly
@@ -625,10 +568,10 @@
Evidence
PMID:32762153
- - SUPPORT (IN_VITRO)
+ - SUPPORT (IN_VIVO)
-
"Group M consisted of six Pseudomonas sp. strains with different phylogenetic names mixed in equal proportions."
+
"SynCom with six Pseudomonas sp. strains significantly promote plant growth."
@@ -636,60 +579,31 @@
Evidence
-
-
-
The six-strain Pseudomonas M SynCom promoted radish seedling growth after assembly from garlic rhizosphere isolates.
-
-
-
-
-
-
-
-
-
Biological Processes:
-
-
-
+
+
-
Evidence
-
+
+ Knowledge gaps & discussions (1)
-
-
+
+
+ KNOWLEDGE_GAP
+ OPEN
+ Which members and mechanisms drive the radish seedling response?
+
+
Field garlic amplicon enrichment and co-occurrence nominated Pseudomonas; six isolates with provisional 16S/BLAST names were then mixed in equal proportions. Those selection and assembly steps are design context, not ecological interactions, so their two workflow nodes and symbiosis annotations are removed. The prior 2026-10-02 removal of workflow arrows is preserved. Single-member, omission, dose-matched and metabolite perturbations would test necessity and synergy; longer-term garlic and field assays would test transfer of the radish result. Provisional species names do not justify invented canonical IDs. No figure images, separate supplements or raw data were independently audited.
-
PMID:32762153
+
Attaches to: ecological_interactions#Radish Seedling Length Response to Pseudomonas SynCom6
- - SUPPORT (IN_VITRO)
-
-
"SynCom with six Pseudomonas sp. strains significantly promote plant growth."
-
-
-
-
-
-
-
@@ -883,42 +797,14 @@ Evidence
var processes = [];
- processes.push("symbiotic process");
-
-
- var evidenceCount = 2;
-
- nodes.push({
- id: intId,
- label: "Top-Down Pseudomonas PGPR Selection",
- type: "interaction",
- interactionType: intType,
- metabolites: metabolites,
- processes: processes,
- evidenceCount: evidenceCount
- });
-
-
-
-
- })();
-
- (function() {
- var intId = "interaction:1";
- var intType = "UNKNOWN";
- var metabolites = [];
-
- var processes = [];
-
-
- processes.push("symbiotic process");
+ processes.push("growth");
var evidenceCount = 1;
nodes.push({
id: intId,
- label: "Six-Strain Pseudomonas SynCom Assembly",
+ label: "Radish Seedling Length Response to Pseudomonas SynCom6",
type: "interaction",
interactionType: intType,
metabolites: metabolites,
@@ -929,34 +815,17 @@ Evidence
- })();
-
- (function() {
- var intId = "interaction:2";
- var intType = "UNKNOWN";
- var metabolites = [];
-
- var processes = [];
-
-
- processes.push("growth");
+ var participantKeys = [
+ "Pseudomonas sp."
- var evidenceCount = 1;
-
- nodes.push({
- id: intId,
- label: "Pseudomonas-Mediated Growth Promotion",
- type: "interaction",
- interactionType: intType,
- metabolites: metabolites,
- processes: processes,
- evidenceCount: evidenceCount
+ ];
+ participantKeys.forEach(function(key) {
+ if (taxonNodeIds[key]) {
+ links.push({ source: taxonNodeIds[key], target: intId });
+ }
});
-
-
-
})();
@@ -978,7 +847,7 @@ Evidence
var svg = d3.select("#network-svg");
var width = container.clientWidth - 32;
// Dynamic height based on node count: minimum 500px, add 40px per node
- var nodeCount = 4;
+ var nodeCount = 2;
var height = Math.max(500, 400 + nodeCount * 20);
svg.attr("width", width).attr("height", height);
diff --git a/history/records/GLBRC_UFMP_Fermentation_Community/2026-10-06T121037Z-codex-6f8e55.yaml b/history/records/GLBRC_UFMP_Fermentation_Community/2026-10-06T121037Z-codex-6f8e55.yaml
new file mode 100644
index 000000000..2a52ae8a7
--- /dev/null
+++ b/history/records/GLBRC_UFMP_Fermentation_Community/2026-10-06T121037Z-codex-6f8e55.yaml
@@ -0,0 +1,28 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/GLBRC_UFMP_Fermentation_Community.yaml
+ slug: GLBRC_UFMP_Fermentation_Community
+session:
+ id: 2026-10-06T121037Z-codex-6f8e55
+ timestamp: '2026-10-06T12:10:37Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1474
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain heterogeneous Actinobacteriota genome-based fermentation hypotheses, not
+ universal demonstrated products.; Retain three substrate-distinct Firmicute hypotheses
+ and distinguish measured reactor products from member allocation.; Retain the proposed
+ lactate-transfer model with candidate donors and CLOS1, not obligatory syntrophy or complete
+ conversion.
+ details: Source-based self-adversarial existing-graph repair; no new structure. reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml
diff --git a/history/records/GOM_Oil_Degrading_Consortium/2026-10-06T121037Z-codex-7c3bc4.yaml b/history/records/GOM_Oil_Degrading_Consortium/2026-10-06T121037Z-codex-7c3bc4.yaml
new file mode 100644
index 000000000..c995162ca
--- /dev/null
+++ b/history/records/GOM_Oil_Degrading_Consortium/2026-10-06T121037Z-codex-7c3bc4.yaml
@@ -0,0 +1,27 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/GOM_Oil_Degrading_Consortium.yaml
+ slug: GOM_Oil_Degrading_Consortium
+session:
+ id: 2026-10-06T121037Z-codex-7c3bc4
+ timestamp: '2026-10-06T12:10:37Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1475
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain abiotic-referenced, time-dependent n-alkane depletion without assigned in-consortium
+ member flux.; Retain heterogeneous PAH-panel depletion, not substantial degradation of
+ all 12 or generic phenanthrene.; Retain gross removal improvement while exposing abiotic
+ and total-inoculum limits on synergy.
+ details: Source-based self-adversarial existing-graph repair; no new structure. reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml
diff --git a/history/records/Garlic_Pseudomonas_SynCom6/2026-10-06T121038Z-codex-149752.yaml b/history/records/Garlic_Pseudomonas_SynCom6/2026-10-06T121038Z-codex-149752.yaml
new file mode 100644
index 000000000..4b084b6e7
--- /dev/null
+++ b/history/records/Garlic_Pseudomonas_SynCom6/2026-10-06T121038Z-codex-149752.yaml
@@ -0,0 +1,25 @@
+history_version: 1
+target:
+ kind: record
+ path: kb/communities/Garlic_Pseudomonas_SynCom6.yaml
+ slug: Garlic_Pseudomonas_SynCom6
+session:
+ id: 2026-10-06T121038Z-codex-149752
+ timestamp: '2026-10-06T12:10:38Z'
+ actors:
+ - type: ai_agent
+ name: codex
+ model: unspecified
+ agent_tool: codex
+links:
+ issues:
+ - https://github.com/CultureBotAI/CommunityMech/issues/1476
+events:
+- type: EDIT
+ outcome: changed
+ sections:
+ - interactions
+ - discussions
+ summary: Retain only the measured two-day radish host-response outcome, with unresolved
+ six-member identity and mechanism explicit.
+ details: Source-based self-adversarial existing-graph repair; no new structure. reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml
diff --git a/kb/communities/GLBRC_UFMP_Fermentation_Community.yaml b/kb/communities/GLBRC_UFMP_Fermentation_Community.yaml
index c1b8c0049..9b93ca832 100644
--- a/kb/communities/GLBRC_UFMP_Fermentation_Community.yaml
+++ b/kb/communities/GLBRC_UFMP_Fermentation_Community.yaml
@@ -479,138 +479,178 @@ taxonomy:
'
explanation: Acidaminococcus sp. ACID1 may perform ethanol-based chain elongation
ecological_interactions:
-- name: Lactose Degradation to Organic Acids
- description: 'Actinobacteriota members (Olsenella, Bifidobacterium, Pauljensenia) degrade lactose via
- the Leloir pathway and the bifid shunt, producing acetic, lactic, and succinic acids as primary fermentation
- products. These short-chain acids serve as substrates for downstream chain elongation by Firmicutes.
-
- '
- interaction_type: CROSS_FEEDING
+- name: Proposed Actinobacteriota Lactose Fermentation Roles
+ description: 'HYPOTHESIZED: Genomic pathways and reactor abundance/product associations suggest heterogeneous
+ lactose-fermenting roles among the six abundant Actinobacteriota MAGs. ACT2 is proposed to contribute succinic
+ acid, while bifid-shunt potential supports lactic/acetic acid production in ATO3 and Bifidobacterium MAGs. Lactose
+ permease plus beta-galactosidase were identified in ACT2, BIF2 and BIF11; ATO3 lactose use remains inferred
+ despite no identified LacS homologue. The listed MAGs are the analyzed Actinobacteriota subset, not six experimentally
+ verified producers of every product. Reactor sugar depletion and organic-acid accumulation were measured, but
+ their allocation to these members is computational and correlative. LCO1 also has inferred direct lactose utilization,
+ so this is not an exclusive Actinobacteriota function.'
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: lactose
term:
id: CHEBI:17716
label: lactose
- notes: Primary substrate from ultra-filtered milk permeate
+ notes: Detected reactor substrate/product; member-specific production or consumption is inferred, not measured
+ flux.
- preferred_term: acetic acid
term:
id: CHEBI:15366
label: acetic acid
- notes: Product of Leloir pathway and bifid shunt
- - preferred_term: lactic acid
- term:
- id: CHEBI:422
- label: (S)-lactic acid
- notes: Product of lactose fermentation; substrate for chain elongation
+ notes: Detected reactor substrate/product; member-specific production or consumption is inferred, not measured
+ flux.
- preferred_term: succinic acid
term:
id: CHEBI:30031
label: succinate(2-)
- notes: Produced primarily by Pauljensenia sp.
+ notes: Detected reactor substrate/product; member-specific production or consumption is inferred, not measured
+ flux.
downstream:
- - target: Actinobacteriota-Firmicutes Cross-Feeding Network
- description: >
- Actinobacteriota lactose fermentation supplies the lactic-acid pool
- inferred to feed Firmicutes chain elongators in the UFMP reactor.
+ - target: Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+ description: 'HYPOTHESIZED: Lactate production by a subset of lactose-fermenting Actinobacteriota could supply
+ the proposed CLOS1 donor pool. Genomic potential and extracellular profiles support the model, not traced
+ member-specific secretion or transfer; ACT2 succinate production is not evidence of lactate donation.'
evidence:
- reference: PMID:37324413
- supports: SUPPORT
- evidence_source: IN_VITRO
- snippet: 'members of the Actinobacteriota phylum are important in the degradation of lactose, via
- the Leloir pathway and the bifid shunt, and the production of acetic, lactic, and succinic acids
+ supports: PARTIAL
+ evidence_source: COMPUTATIONAL
+ snippet: 'members of the Actinobacteriota phylum are important in the degradation of lactose, via the Leloir
+ pathway and the bifid shunt, and the production of acetic, lactic, and succinic acids
'
- explanation: Documents lactose degradation pathways of Actinobacteriota members
-- name: Chain Elongation to Medium-Chain Fatty Acids
- description: 'Firmicutes members (Clostridium, Agathobacter) perform reverse beta-oxidation (chain elongation)
- using lactic acid, ethanol, or lactose as electron donors and carbon sources to produce butyric (C4),
- hexanoic (C6), and octanoic (C8) acids. This represents a key cross-feeding interaction where Actinobacteriota-produced
- lactic acid fuels Firmicutes chain elongation.
-
- '
- interaction_type: CROSS_FEEDING
+ explanation: Supports an author-proposed MAG role from gene content and reactor associations, not member-specific
+ flux or demonstrated partner dependence. Bulk reactor metabolites were measured separately by HPLC/GC-MS.
+ participating_taxa:
+ - preferred_term: Olsenella_B sp. (MAG ATO3)
+ term:
+ id: NCBITaxon:133925
+ label: Olsenella
+ - preferred_term: Pauljensenia sp. (MAG ACT2)
+ term:
+ id: NCBITaxon:2740557
+ label: Pauljensenia
+ - preferred_term: Bifidobacterium tibiigranuli (MAG BIF2)
+ term:
+ id: NCBITaxon:1678
+ label: Bifidobacterium
+ - preferred_term: Bifidobacterium sp. (MAG BIF11)
+ term:
+ id: NCBITaxon:1678
+ label: Bifidobacterium
+ - preferred_term: Olsenella_B sp900119625 (MAG ATO6)
+ term:
+ id: NCBITaxon:133925
+ label: Olsenella
+ - preferred_term: Bifidobacterium thermophilum (MAG BIF18)
+ term:
+ id: NCBITaxon:33905
+ label: Bifidobacterium thermophilum
+- name: Proposed Firmicutes Chain Elongation Roles
+ description: 'HYPOTHESIZED: Reverse-beta-oxidation genes, EtfB phylogeny/gene neighborhoods and reactor profiles
+ suggest different chain-elongating roles for the three abundant Firmicute MAGs. CLOS1 is proposed to use lactate
+ and predominantly produce butyrate; LCO1 is proposed to use lactose directly; ACID1 may use ethanol, but that
+ assignment is inconclusive and other substrates remain possible. Butyric, hexanoic and octanoic acids were measured
+ in reactor broth, not assigned to individual cells by flux experiments. No genomic diagnostic of terminal chain
+ length was established. Neither all Firmicutes consuming lactate nor every member producing all three acids
+ is demonstrated; C4 butyrate is distinguished from the C6/C8 medium-chain products.'
scope: COMMUNITY_LEVEL
metabolites:
- - preferred_term: lactic acid
- term:
- id: CHEBI:422
- label: (S)-lactic acid
- notes: Electron donor and carbon source for chain elongation
- preferred_term: ethanol
term:
id: CHEBI:16236
label: ethanol
- notes: Alternative electron donor for chain elongation
+ notes: Detected reactor substrate/product; member-specific production or consumption is inferred, not measured
+ flux.
- preferred_term: butyric acid
term:
id: CHEBI:30772
label: butyric acid
- notes: C4 chain elongation product
+ notes: Detected reactor substrate/product; member-specific production or consumption is inferred, not measured
+ flux.
- preferred_term: hexanoic acid
term:
id: CHEBI:30776
label: hexanoic acid
- notes: C6 chain elongation product
+ notes: Detected reactor substrate/product; member-specific production or consumption is inferred, not measured
+ flux.
- preferred_term: octanoic acid
term:
id: CHEBI:28837
label: octanoic acid
- notes: C8 chain elongation product
+ notes: Detected reactor substrate/product; member-specific production or consumption is inferred, not measured
+ flux.
evidence:
- reference: PMID:37324413
- supports: SUPPORT
- evidence_source: IN_VITRO
- snippet: 'members of the Firmicutes phylum contribute to the chain-elongation-mediated production
- of butyric, hexanoic, and octanoic acids, with different microbes using either lactose, ethanol,
- or lactic acid as the growth substrate
+ supports: PARTIAL
+ evidence_source: COMPUTATIONAL
+ snippet: 'members of the Firmicutes phylum contribute to the chain-elongation-mediated production of butyric,
+ hexanoic, and octanoic acids, with different microbes using either lactose, ethanol, or lactic acid as the
+ growth substrate
'
- explanation: Documents chain elongation by Firmicutes using multiple substrates
-- name: Actinobacteriota-Firmicutes Cross-Feeding Network
- description: 'The core metabolic interaction in the community is cross-feeding between Actinobacteriota
- (which produce lactic acid from lactose) and Firmicutes (which consume lactic acid for chain elongation).
- This syntrophic relationship enables the full conversion of lactose into medium-chain fatty acids
- via a two-step metabolic cascade.
-
- '
- interaction_type: CROSS_FEEDING
- scope: COMMUNITY_LEVEL
- source_taxon:
- preferred_term: Olsenella_B sp. (MAG ATO3)
- term:
- id: NCBITaxon:133925
- label: Olsenella
- notes: 'Representative of Actinobacteriota acid producers. Grounded at genus, which is what this
- participant''s own preferred_term names — it carried the species id NCBITaxon:133926
- (Olsenella uli) while standing for the genus at COMMUNITY_LEVEL scope (#486).'
- target_taxon:
- preferred_term: Clostridium_B sp. (MAG CLOS1)
+ explanation: Supports an author-proposed MAG role from gene content and reactor associations, not member-specific
+ flux or demonstrated partner dependence. Bulk reactor metabolites were measured separately by HPLC/GC-MS.
+ participating_taxa:
+ - preferred_term: Clostridium_B sp. (MAG CLOS1)
term:
id: NCBITaxon:1485
label: Clostridium
- notes: Representative of Firmicutes chain elongators
- metabolites:
- - preferred_term: lactic acid
+ - preferred_term: Agathobacter rectalis (MAG LCO1)
term:
- id: CHEBI:422
- label: (S)-lactic acid
- notes: Key cross-feeding metabolite between Actinobacteriota and Firmicutes
+ id: NCBITaxon:1766253
+ label: Agathobacter
+ - preferred_term: Acidaminococcus sp. (MAG ACID1)
+ term:
+ id: NCBITaxon:904
+ label: Acidaminococcus
+- name: Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+ description: 'HYPOTHESIZED: The conceptual model proposes that lactate made by some lactose-fermenting Actinobacteriota
+ can supply CLOS1 chain elongation. ATO3 and Bifidobacterium MAGs represent proposed donor candidates, not a
+ measured set of donor-recipient transfers. CLOS1 contains the inferred LacT, electron-confurcating LDH and associated
+ EtfAB machinery; the other two abundant Firmicutes have different proposed substrates. The study did not directly
+ trace ATO3-to-CLOS1 carbon flow, establish obligatory syntrophy, determine lactate stereochemistry or show complete
+ conversion of lactose into medium-chain fatty acids. The canonical labels retain their existing genus-level
+ or ambiguous groundings rather than assert newly identified species.'
+ scope: COMMUNITY_LEVEL
downstream:
- - target: Chain Elongation to Medium-Chain Fatty Acids
- description: >
- The inferred Actinobacteriota-to-Firmicutes lactic-acid transfer routes
- lactose-derived short-chain acid into reverse-beta-oxidation production
- of butyrate, hexanoate, and octanoate.
+ - target: Proposed Firmicutes Chain Elongation Roles
+ description: 'HYPOTHESIZED: Access to donor-derived lactate could support the proposed CLOS1 branch of reverse
+ beta-oxidation, associated mainly with butyrate. This arrow does not route all C6/C8 synthesis through CLOS1
+ or make LCO1 direct-lactose and ACID1 possible-ethanol metabolism dependent on lactate transfer.'
evidence:
- reference: PMID:37324413
- supports: SUPPORT
- evidence_source: IN_VITRO
- snippet: 'members of the Actinobacteriota phylum are important in the degradation of lactose, via
- the Leloir pathway and the bifid shunt, and the production of acetic, lactic, and succinic acids
+ supports: PARTIAL
+ evidence_source: COMPUTATIONAL
+ snippet: 'members of the Actinobacteriota phylum are important in the degradation of lactose, via the Leloir
+ pathway and the bifid shunt, and the production of acetic, lactic, and succinic acids
'
- explanation: Actinobacteriota produce lactic acid consumed by Firmicutes chain elongators
+ explanation: Supports an author-proposed MAG role from gene content and reactor associations, not member-specific
+ flux or demonstrated partner dependence. Bulk reactor metabolites were measured separately by HPLC/GC-MS.
+ participating_taxa:
+ - preferred_term: Olsenella_B sp. (MAG ATO3)
+ term:
+ id: NCBITaxon:133925
+ label: Olsenella
+ - preferred_term: Bifidobacterium tibiigranuli (MAG BIF2)
+ term:
+ id: NCBITaxon:1678
+ label: Bifidobacterium
+ - preferred_term: Bifidobacterium sp. (MAG BIF11)
+ term:
+ id: NCBITaxon:1678
+ label: Bifidobacterium
+ - preferred_term: Bifidobacterium thermophilum (MAG BIF18)
+ term:
+ id: NCBITaxon:33905
+ label: Bifidobacterium thermophilum
+ - preferred_term: Clostridium_B sp. (MAG CLOS1)
+ term:
+ id: NCBITaxon:1485
+ label: Clostridium
related_ingredients:
- preferred_term: lactose
chebi_term:
@@ -818,3 +858,30 @@ cultivation_setup:
evidence_source: IN_VITRO
snippet: was continuously fed at a rate of 0.5 L/day throughout 282 days of operation resulting in solids and hydraulic retention times of 6 days
explanation: Documents continuous feeding at 0.5 L/day and the 6-day hydraulic retention time.
+discussions:
+- discussion_id: ufmp_member_flux_and_terminal_products
+ prompt: Which MAGs exchange carbon and determine terminal chain length?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Proposed Actinobacteriota Lactose Fermentation Roles
+ - ecological_interactions#Proposed Firmicutes Chain Elongation Roles
+ - ecological_interactions#Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+ rationale: 'The reactor measurements support fermentation, whereas member roles and both retained model arrows
+ are hypotheses. Metatranscriptomics, isotope tracing and selective member/substrate perturbations would test
+ donor identity, CLOS1 uptake, ACID1 substrate and chain-length allocation. SPH2 has a separate proposed ethanol
+ role outside these existing Actinobacteriota/lactate and Firmicute nodes; no new node is invented to hide its
+ disconnected warning. Unsupported stereospecific CHEBI:422 entries are removed from graph nodes without guessing
+ a replacement. Non-graph ingredient/taxonomy role text and all #486/#624 grounding history remain unchanged
+ and are not certified by this graph-only review.'
+ posed_by: codex
+ posed_date: '2026-10-06'
+curation_history:
+- timestamp: '2026-10-06T12:10:36Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain heterogeneous Actinobacteriota genome-based fermentation hypotheses, not universal demonstrated
+ products.; Retain three substrate-distinct Firmicute hypotheses and distinguish measured reactor products from
+ member allocation.; Retain the proposed lactate-transfer model with candidate donors and CLOS1, not obligatory
+ syntrophy or complete conversion. Issue #1474; reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml'
+ llm_assisted: true
diff --git a/kb/communities/GOM_Oil_Degrading_Consortium.yaml b/kb/communities/GOM_Oil_Degrading_Consortium.yaml
index 192da2f18..90e063f92 100644
--- a/kb/communities/GOM_Oil_Degrading_Consortium.yaml
+++ b/kb/communities/GOM_Oil_Degrading_Consortium.yaml
@@ -97,41 +97,57 @@ taxonomy:
genera: Pseudomonas, Halopseudomonas, Paenarthrobacter, and Alcanivorax'
ecological_interactions:
- name: Consortium n-Alkane Biodegradation
- description: The four-member Gulf of Mexico consortium degraded n-alkanes from
- light crude oil, one of the two GC-MS-measured contaminant classes supporting
- its improved crude-oil removal.
- interaction_type: NICHE_PARTITIONING
+ description: GC-MS with an abiotic-control baseline measured C8-C38 n-alkane depletion in the four-strain consortium
+ and individual cultures. Consortium values reached about 60% at day 30 and about 45% at day 75; chain-length
+ fractions differed, and time-dependent abiotic loss of shorter alkanes affects these relative estimates. These
+ measurements support hydrocarbon transformation, not complete mineralization, obligatory niche partitioning
+ or strain-resolved in-consortium flux. Similar monoculture preferences and MetaMIS predictions do not assign
+ the consortium result exclusively to Pseudomonas or Alcanivorax.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: alkane
term:
id: CHEBI:18310
label: alkane
- - preferred_term: dodecane
- term:
- id: CHEBI:28817
- label: dodecane
biological_processes:
- preferred_term: alkane catabolic process
term:
id: GO:0043448
label: alkane catabolic process
- downstream:
- - target: Enhanced Light Crude Oil Removal
- description: Consortium-scale n-alkane biodegradation contributes to improved
- gravimetric light-crude-oil removal by the selected four-strain consortium.
evidence:
- reference: doi:10.3389/fmars.2022.962071
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: We also measured biodegradation levels by Gas Chromatography/Mass Spectrometry (GC-MS) observing
- 12 polyaromatic hydrocarbons (PAHs) degradation analyzed and n-alkanes degradation with a preference
- for specific chain length
+ snippet: We also measured biodegradation levels by Gas Chromatography/Mass Spectrometry (GC-MS) observing 12
+ polyaromatic hydrocarbons (PAHs) degradation analyzed and n-alkanes degradation with a preference for specific
+ chain length
+ explanation: The abstract supports the measured hydrocarbon class and chain-length differences. Publisher Methods
+ 2.7-2.8 and Results 3.3.2 bound the quantitative/time-dependent interpretation; it is not a selectively demonstrated
+ cause of the comparative gross-removal advantage.
+ participating_taxa:
+ - preferred_term: Pseudomonas sp. GOM
+ term:
+ id: NCBITaxon:306
+ label: Pseudomonas sp.
+ - preferred_term: Halopseudomonas aestusnigri GOM5
+ term:
+ id: NCBITaxon:857252
+ label: Halopseudomonas aestusnigri
+ - preferred_term: Paenarthrobacter sp. GOM3
+ term:
+ id: NCBITaxon:2782567
+ label: Paenarthrobacter sp. GOM3
+ - preferred_term: Alcanivorax sp. GOM
+ term:
+ id: NCBITaxon:1872427
+ label: Alcanivorax sp.
- name: Consortium Polyaromatic Hydrocarbon Biodegradation
- description: The selected four-strain consortium degraded 12 measured
- polyaromatic hydrocarbons from light crude oil alongside its n-alkane
- biodegradation activity.
- interaction_type: NICHE_PARTITIONING
+ description: GC-MS monitored 12 aromatic analytes, with different susceptibilities; not all 12 were substantially
+ biodegraded. The consortium aggregate PAH estimate reached about 16% at day 75 relative to the abiotic baseline.
+ The main text identifies fluorene, dibenzothiophene, methylated phenanthrenes and pyrene among susceptible compounds,
+ while others were hardly biodegraded. This does not establish generic phenanthrene degradation, complete mineralization
+ or a necessary division of labor. The canonical four participants identify the assayed consortium, not four
+ proven owners of each degradation reaction.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: fluorene
@@ -142,10 +158,6 @@ ecological_interactions:
term:
id: CHEBI:23681
label: dibenzothiophene
- - preferred_term: phenanthrene
- term:
- id: CHEBI:28851
- label: phenanthrene
- preferred_term: pyrene
term:
id: CHEBI:39106
@@ -154,37 +166,69 @@ ecological_interactions:
- reference: doi:10.3389/fmars.2022.962071
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: We also measured biodegradation levels by Gas Chromatography/Mass Spectrometry (GC-MS) observing
- 12 polyaromatic hydrocarbons (PAHs) degradation analyzed and n-alkanes degradation with a preference
- for specific chain length
- downstream:
- - target: Enhanced Light Crude Oil Removal
- description: PAH biodegradation is one measured hydrocarbon-removal activity
- of the consortium that reached higher total crude-oil removal than any
- individual member.
-- name: Enhanced Light Crude Oil Removal
- description: The Plackett-Burman-selected Pseudomonas, Halopseudomonas, Paenarthrobacter,
- and Alcanivorax consortium removed more light crude oil than any constituent
- grown alone over the 75-day assay.
- interaction_type: NICHE_PARTITIONING
+ snippet: We also measured biodegradation levels by Gas Chromatography/Mass Spectrometry (GC-MS) observing 12
+ polyaromatic hydrocarbons (PAHs) degradation analyzed and n-alkanes degradation with a preference for specific
+ chain length
+ explanation: The abstract reports the GC-MS panel, while publisher Results 3.3.3 states heterogeneous susceptibility
+ and hardly biodegraded analytes. Twelve analyzed compounds must not become twelve substantial positive degradation
+ results.
+ participating_taxa:
+ - preferred_term: Pseudomonas sp. GOM
+ term:
+ id: NCBITaxon:306
+ label: Pseudomonas sp.
+ - preferred_term: Halopseudomonas aestusnigri GOM5
+ term:
+ id: NCBITaxon:857252
+ label: Halopseudomonas aestusnigri
+ - preferred_term: Paenarthrobacter sp. GOM3
+ term:
+ id: NCBITaxon:2782567
+ label: Paenarthrobacter sp. GOM3
+ - preferred_term: Alcanivorax sp. GOM
+ term:
+ id: NCBITaxon:1872427
+ label: Alcanivorax sp.
+- name: Higher Gross Light Crude Oil Removal
+ description: After 75 days, gravimetric light-crude-oil removal was about 62% in the Plackett-Burman-selected
+ four-strain consortium versus about 25-39% in individual cultures. The authors explicitly did not subtract abiotic-control
+ removal from these gross percentages, unlike the baseline used for GC-MS biodegradation. Both monocultures and
+ consortium started at 1e8 CFU/mL per strain, so total starting CFUs were higher in the consortium; this is not
+ a total-inoculum-matched synergy test. Stable relative abundance after day 7 and inferred MetaMIS interactions
+ suggest possible cooperation, not directly demonstrated niche partitioning or the mechanism of this comparative
+ endpoint. Neither the n-alkane nor PAH percentage alone selectively explains the gross-removal advantage.
scope: COMMUNITY_LEVEL
metabolites:
- preferred_term: alkane
term:
id: CHEBI:18310
label: alkane
- - preferred_term: polyaromatic hydrocarbons
- term:
- id: CHEBI:33848
- label: polycyclic arene
evidence:
- reference: doi:10.3389/fmars.2022.962071
supports: SUPPORT
evidence_source: IN_VITRO
- snippet: Individually, bacterial oil removal by these microorganisms was evaluated by
- gravimetry, reaching 39% at maximum after 75 days, whereas in consortium
- it was ~62%.
- explanation: Supports the enhanced whole-consortium oil-removal endpoint.
+ snippet: Individually, bacterial oil removal by these microorganisms was evaluated by gravimetry, reaching 39%
+ at maximum after 75 days, whereas in consortium it was ~62%.
+ explanation: Supports the positive gross gravimetric consortium-versus-individual comparison. Primary Methods
+ 2.4/2.7 and Results 3.3.1 limit causal interpretation through per-strain inocula and unsubtracted abiotic
+ removal.
+ participating_taxa:
+ - preferred_term: Pseudomonas sp. GOM
+ term:
+ id: NCBITaxon:306
+ label: Pseudomonas sp.
+ - preferred_term: Halopseudomonas aestusnigri GOM5
+ term:
+ id: NCBITaxon:857252
+ label: Halopseudomonas aestusnigri
+ - preferred_term: Paenarthrobacter sp. GOM3
+ term:
+ id: NCBITaxon:2782567
+ label: Paenarthrobacter sp. GOM3
+ - preferred_term: Alcanivorax sp. GOM
+ term:
+ id: NCBITaxon:1872427
+ label: Alcanivorax sp.
environmental_factors:
- name: Oil removal efficiency
value: 62% (consortium) vs 39% (individual)
@@ -263,3 +307,29 @@ growth_media:
evidence_source: IN_VITRO
snippet: Glass flasks containing 20 mL of marine medium were inoculated with each consortium and incubated for 75 days at 30°C, 180 RPM.
explanation: Source states the glass-flask vessel, marine medium, 75-day incubation, 30 °C temperature and 180 rpm shaking of the consortium cultivation.
+discussions:
+- discussion_id: gom_abiotic_inoculum_and_mediation
+ prompt: Which processes explain the consortium gross-removal advantage?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Consortium n-Alkane Biodegradation
+ - ecological_interactions#Consortium Polyaromatic Hydrocarbon Biodegradation
+ - ecological_interactions#Higher Gross Light Crude Oil Removal
+ rationale: Equal-total-inoculum controls, abiotic-adjusted mass balance and selective partner or metabolic perturbations
+ would separate starting cell number, hydrocarbon transformation, other removal processes and true interaction
+ effects. The paper infers a signed network from relative-abundance time series using MetaMIS; these predictions
+ and possible biosurfactant/cometabolic roles are not newly curated causal nodes here. Two class-to-bulk arrows
+ are removed because neither establishes mediation of the comparative gross endpoint. Existing cache has an abstract
+ and one Methods sentence despite a FULL TEXT marker; the publisher main body, Methods, tables and captions were
+ read separately. Non-graph claims of significant degradation and metadata remain preserved, not certified.
+ posed_by: codex
+ posed_date: '2026-10-06'
+curation_history:
+- timestamp: '2026-10-06T12:10:37Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain abiotic-referenced, time-dependent n-alkane depletion without assigned in-consortium member flux.;
+ Retain heterogeneous PAH-panel depletion, not substantial degradation of all 12 or generic phenanthrene.; Retain
+ gross removal improvement while exposing abiotic and total-inoculum limits on synergy. Issue #1475; reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml'
+ llm_assisted: true
diff --git a/kb/communities/Garlic_Pseudomonas_SynCom6.yaml b/kb/communities/Garlic_Pseudomonas_SynCom6.yaml
index 43c8f73c1..1821ec469 100644
--- a/kb/communities/Garlic_Pseudomonas_SynCom6.yaml
+++ b/kb/communities/Garlic_Pseudomonas_SynCom6.yaml
@@ -39,55 +39,14 @@ taxonomy:
evidence:
- *id001
ecological_interactions:
-- name: Top-Down Pseudomonas PGPR Selection
- description: >
- Field amplicon and co-occurrence analyses nominated Pseudomonas as a garlic PGPR candidate:
- the genus was enriched under late-stage or fertile-soil rhizosphere conditions and was
- prioritized in Apr, May, sandy loam, and loam co-occurrence networks.
- scope: COMMUNITY_LEVEL
- biological_processes:
- - preferred_term: symbiotic process
- term:
- id: GO:0044403
- label: biological process involved in symbiotic interaction
- evidence:
- - reference: PMID:32762153
- supports: SUPPORT
- evidence_source: IN_VIVO
- snippet: Pseudomonas was enriched in eight comparison groups under the late growth periods
- and good growth conditions
- explanation: >
- Identifies Pseudomonas as a repeatedly enriched genus in garlic rhizospheres from late-growth
- or higher-yield field conditions.
- - reference: PMID:32762153
- supports: SUPPORT
- evidence_source: IN_VIVO
- snippet: Compared with the network of Mar and sandy soil datasets, Pseudomonas plays more
- important role in the Apr, May, sandy loam and loam networks.
- explanation: >
- Shows that Pseudomonas was also retained as an important co-occurrence network member in
- later-growth and more fertile-soil rhizosphere communities.
-- name: Six-Strain Pseudomonas SynCom Assembly
- description: >
- Six garlic rhizosphere Pseudomonas isolates with different 16S/BLAST phylogenetic names were
- mixed in equal proportions to form the M SynCom used for plant-growth testing.
- scope: COMMUNITY_LEVEL
- biological_processes:
- - preferred_term: symbiotic process
- term:
- id: GO:0044403
- label: biological process involved in symbiotic interaction
- evidence:
- - reference: PMID:32762153
- supports: SUPPORT
- evidence_source: IN_VITRO
- snippet: Group M consisted of six Pseudomonas sp. strains with different phylogenetic names
- mixed in equal proportions.
- explanation: >
- Defines the six-member Pseudomonas consortium assembled from garlic rhizosphere isolates.
-- name: Pseudomonas-Mediated Growth Promotion
- description: The six-strain Pseudomonas M SynCom promoted radish seedling growth
- after assembly from garlic rhizosphere isolates.
+- name: Radish Seedling Length Response to Pseudomonas SynCom6
+ description: The equal-proportion M mixture of six garlic-rhizosphere Pseudomonas isolates increased radish seedling
+ length relative to sterile-water CK and B8-7 alone in the two-day incubator assay. Adding B8-7 to M did not
+ significantly change the growth-promoting effect, and B8-7 alone did not promote growth. This is a consortium-level
+ host response, not a garlic field-yield result or demonstrated cooperation among the six strains. Individual
+ Pseudomonas monocultures and member omissions were not the comparison reported here, so synergy and each member's
+ necessity are unresolved. The single canonical Pseudomonas sp. participant is an unresolved umbrella for the
+ six isolates, not a complete strain-resolved roster or a claim that they are one species.
scope: COMMUNITY_LEVEL
biological_processes:
- preferred_term: growth
@@ -97,11 +56,16 @@ ecological_interactions:
evidence:
- reference: PMID:32762153
supports: SUPPORT
- evidence_source: IN_VITRO
+ evidence_source: IN_VIVO
snippet: SynCom with six Pseudomonas sp. strains significantly promote plant growth.
- explanation: >
- Reports the growth-promotion phenotype of the six-strain Pseudomonas SynCom in the seedling
- assay.
+ explanation: Supports the observed radish seedling response to M; the host assay is distinct from in-vitro preparation
+ of the inoculum. Main Methods specifies a two-day length endpoint, not garlic yield or a test of interstrain
+ synergy.
+ participating_taxa:
+ - preferred_term: Pseudomonas sp.
+ term:
+ id: NCBITaxon:306
+ label: Pseudomonas sp.
environmental_factors:
- name: defined synthetic community design
value: Six Pseudomonas strains isolated from garlic rhizosphere were combined into a SynCom.
@@ -130,9 +94,31 @@ curation_history:
- timestamp: '2026-10-02T05:55:33Z'
curator: codex
action: PRUNE_CAUSAL_GRAPH_WORKFLOW_EDGES
- changes: >
- Removed two downstream edges that linked field top-down Pseudomonas
- selection to six-strain SynCom assembly and linked assembly to the radish
- growth-promotion assay as curation workflow rather than ecological causal
+ changes: 'Removed two downstream edges that linked field top-down Pseudomonas selection to six-strain SynCom assembly
+ and linked assembly to the radish growth-promotion assay as curation workflow rather than ecological causal
transitions.
+
+ '
+ llm_assisted: true
+- timestamp: '2026-10-06T12:10:37Z'
+ curator: codex
+ action: REVIEW_CAUSAL_GRAPH
+ changes: 'Retain only the measured two-day radish host-response outcome, with unresolved six-member identity and
+ mechanism explicit. Issue #1476; reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml'
llm_assisted: true
+discussions:
+- discussion_id: garlic_syncom_workflow_and_host_scope
+ prompt: Which members and mechanisms drive the radish seedling response?
+ kind: KNOWLEDGE_GAP
+ status: OPEN
+ attaches_to:
+ - ecological_interactions#Radish Seedling Length Response to Pseudomonas SynCom6
+ rationale: Field garlic amplicon enrichment and co-occurrence nominated Pseudomonas; six isolates with provisional
+ 16S/BLAST names were then mixed in equal proportions. Those selection and assembly steps are design context,
+ not ecological interactions, so their two workflow nodes and symbiosis annotations are removed. The prior 2026-10-02
+ removal of workflow arrows is preserved. Single-member, omission, dose-matched and metabolite perturbations
+ would test necessity and synergy; longer-term garlic and field assays would test transfer of the radish result.
+ Provisional species names do not justify invented canonical IDs. No figure images, separate supplements or raw
+ data were independently audited.
+ posed_by: codex
+ posed_date: '2026-10-06'
diff --git a/reports/causal_graph_review/README.md b/reports/causal_graph_review/README.md
index 28b20130a..812bcf727 100644
--- a/reports/causal_graph_review/README.md
+++ b/reports/causal_graph_review/README.md
@@ -5,6 +5,17 @@ source-based self-adversarial review. These records are not independent approval
or proof that every graph is complete. The current inventory and summary distinguish
`reviewed`, `pending` and `needs_research`.
+## Batch44: UFMP, GOM and Garlic
+
+[Decisions](decisions/20261006-three-records-batch44.yaml),
+[validation](validation-20261006-batch44.json) and
+[self-adversarial review](adversarial-review-20261006-batch44.yaml) distinguish
+genome-based UFMP flux hypotheses, GOM gross removal versus abiotic-referenced
+hydrocarbon depletion, and the garlic-derived SynCom's radish seedling endpoint.
+Two UFMP model arrows remain explicitly hypothetical; two GOM mediation arrows
+and two Garlic design-workflow nodes are removed. SPH2's uncovered proposed
+ethanol role is reported rather than hidden by an invented interaction.
+
## Connectivity Census Correction (2026-10-06)
The historical test survey unioned names, labels and CURIEs for pairwise endpoints.
diff --git a/reports/causal_graph_review/adversarial-review-20261006-batch44.yaml b/reports/causal_graph_review/adversarial-review-20261006-batch44.yaml
new file mode 100644
index 000000000..12ae7ec6a
--- /dev/null
+++ b/reports/causal_graph_review/adversarial-review-20261006-batch44.yaml
@@ -0,0 +1,216 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: 5b0b555a45aa07071a1e9865f46a37842d9ab27e
+scope:
+- kb/communities/GLBRC_UFMP_Fermentation_Community.yaml
+- kb/communities/GOM_Oil_Degrading_Consortium.yaml
+- kb/communities/Garlic_Pseudomonas_SynCom6.yaml
+decision_ledger: reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml
+validation_report: reports/causal_graph_review/validation-20261006-batch44.json
+findings:
+- issue: 1474
+ severity: P2
+ status: addressed_in_this_change
+ finding: Retain heterogeneous Actinobacteriota genome-based fermentation hypotheses, not universal demonstrated
+ products.; Retain three substrate-distinct Firmicute hypotheses and distinguish measured reactor products
+ from member allocation.; Retain the proposed lactate-transfer model with candidate donors and CLOS1,
+ not obligatory syntrophy or complete conversion.
+ disposition: See all-node and all-arrow decisions; close only after protected main merge.
+- issue: 1475
+ severity: P2
+ status: addressed_in_this_change
+ finding: Retain abiotic-referenced, time-dependent n-alkane depletion without assigned in-consortium
+ member flux.; Retain heterogeneous PAH-panel depletion, not substantial degradation of all 12 or generic
+ phenanthrene.; Retain gross removal improvement while exposing abiotic and total-inoculum limits on
+ synergy.
+ disposition: See all-node and all-arrow decisions; close only after protected main merge.
+- issue: 1476
+ severity: P2
+ status: addressed_in_this_change
+ finding: Retain only the measured two-day radish host-response outcome, with unresolved six-member identity
+ and mechanism explicit.
+ disposition: See all-node and all-arrow decisions; close only after protected main merge.
+adversarial_checks:
+- All three whole records, nine original nodes and four original arrows reviewed. Primary main bodies/Methods/tables/captions
+ read for all three. UFMP cache has appended full text despite stale abstract_only front matter; that
+ front matter is preserved, not treated as an accurate reading-scope label. No figure images, separate
+ supplementary files, raw data or analysis code audited.
+- 'UFMP: preserve measured reactor substrate/product changes while marking member roles and both retained
+ arrows HYPOTHESIZED with PARTIAL COMPUTATIONAL evidence. CLOS1 lactate/butyrate, LCO1 direct lactose
+ and inconclusive ACID1 ethanol assignments must not become universal lactate dependence or terminal-chain-length
+ diagnostics.'
+- 'UFMP: six Actinobacteriota and three Firmicute MAGs retain exact canonical preferred names, not guessed
+ species or representative pair attribution. The five-member proposed lactate-transfer subset is not
+ measured flux. Existing #486/#624 taxonomy and grounding notes remain intact. Remove unsupported stereospecific
+ CHEBI:422 from graph nodes without claiming the non-graph ingredient block is fixed.'
+- 'UFMP: SPH2 is deliberately outside these existing nodes. Its proposed ethanol role does not justify
+ automatically crediting it to the lactate network. The audit exposes exactly one new disconnected warning;
+ no link is invented to hide it.'
+- 'GOM: positive n-alkane and PAH measurements remain. GC-MS uses an abiotic baseline; n-alkane time points
+ and PAH panel heterogeneity are not replaced by generic total-oil percentages. Remove unsupported representative
+ dodecane and generic phenanthrene assertions. The gross endpoint is a crude-oil mixture measurement,
+ not an identified polycyclic-arene concentration.'
+- 'GOM: gross ~62% versus ~25-39% removal does not subtract abiotic loss. Each strain starts at 1e8 CFU/mL,
+ so consortium and monoculture are not matched on total starting CFUs. Higher removal is not a selectively
+ demonstrated synergy or niche-partitioning mechanism. Both class-to-comparative-endpoint arrows are
+ removed. Relative population stability after day7 and MetaMIS directions are predictions, not newly
+ added causal nodes.'
+- 'GOM: the existing cache includes an abstract and one Methods sentence despite its FULL TEXT marker.
+ Separately downloaded publisher main body is hash-identified in the ledger; source caches are not expanded
+ to silence validation. Abstract snippets support broad observations, with body-based restrictions and
+ source locations in explanations.'
+- 'Garlic: selection and equal-proportion assembly are removed as workflow nodes, not converted into symbiosis.
+ Preserve earlier 2026-10-02 arrow-removal history. The remaining two-day radish length result is IN_VIVO
+ host evidence, not garlic yield, proven six-member synergy or necessity. B8-7 alone lacks growth promotion
+ and does not significantly change M when added.'
+- 'Garlic: retain the unresolved canonical Pseudomonas umbrella, explicitly not a strain-resolved roster
+ or a claim of one species. Do not promote tentative 16S names to invented species CURIEs.'
+- All current graph diffs inspected. Exactly three guarded records, three append-only history artifacts
+ and three regenerated pages. 457 other records, all 920 caches, non-graph raw blocks and prior history
+ artifacts preserved; old inline history is semantically unchanged.
+- Schema, strict, terms, reference, snippet, rank and history checks passed. Existing 33 audit warnings
+ preserved exactly plus one justified SPH2 warning; no structural errors. Repeat renders deterministic
+ and published node/arrow descriptions parser-checked across all 456 pages; no browser screenshot claim.
+- Six focused tests plus historical-batch and shared regressions passed. Reference-validator positive/negative
+ canaries included. Three participant-registry additions (190 to 193), unchanged corrected connectivity
+ census and unchanged numeric bounds. Production auditor and ranker semantics unchanged.
+- Verification helper initially treated the network JSON object as a list; its assertion failed after
+ all per-record gates passed. The helper was corrected without changing curated bytes, completed command
+ logs were hash-checked and reused, and remaining verification completed. Failure and correction are
+ explicitly retained; not a data-gate failure or a false pass.
+- Dedup included 790 all-state issue titles/bodies and ignored/hidden local files. Five relevant issue
+ bodies and prior UFMP/Garlic histories read. Existing render/audit logs naming candidates were not mistaken
+ for completed source reviews. Not all comments or PR reviews inspected.
+- Self-adversarial review is not independent approval. Exact-head COMMENT and actual post-commit docs-current
+ are publication steps; protected main checks and dependent-parent merges remain mandatory. Full-corpus
+ completion is not claimed.
+verification:
+ combined_regressions: 451 passed in 209.31s (0:03:29)
+ new_regression_tests: 6
+ schema_strict_terms_history: passed with actual outputs and digests
+ references: 'CLI Total checks counts reported issues, not executed checks. All three records exited
+ 0; textual matching does not prove scientific support or independent provenance. SupportingReference
+ coverage remains incomplete under #476.'
+ snippet_counts_by_record:
+ kb/communities/GLBRC_UFMP_Fermentation_Community.yaml:
+ MATCH: 27
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/GOM_Oil_Degrading_Consortium.yaml:
+ MATCH: 10
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ kb/communities/Garlic_Pseudomonas_SynCom6.yaml:
+ MATCH: 5
+ RENDERING: 0
+ ASSEMBLED: 0
+ WEAK: 0
+ MISMATCH: 0
+ NOCONTENT: 0
+ network:
+ existing_findings_preserved: 33
+ new_disconnected: 1
+ added_findings:
+ GLBRC_UFMP_Fermentation_Community:
+ - type: DISCONNECTED
+ taxon: RUG023 sp. (MAG SPH2)
+ taxon_id: NCBITaxon:203691
+ taxon_data:
+ taxon_term:
+ preferred_term: RUG023 sp. (MAG SPH2)
+ term:
+ id: NCBITaxon:203691
+ label: Spirochaetota
+ gtdb_grounding_status: GROUNDED
+ gtdb_classification:
+ gtdb_id: GTDB:p__Spirochaetota
+ gtdb_taxon: Spirochaetota
+ gtdb_lineage: d__Bacteria;p__Spirochaetota
+ ncbi_source_id: NCBITaxon:203691
+ majority_fraction: 1.0
+ support_genomes: 6024
+ total_genomes: 6025
+ is_reclassified: false
+ mapping_source: kg-microbe NCBI2GTDB.tsv.gz; GTDB release latest (built 2026-07-25) [grounded
+ at p__ rank; 2 GTDB taxa under the NCBI taxon]
+ notes: 'Spirochaetota member (up to 16.1% relative abundance). Produces ethanol which serves
+ as substrate for chain elongation by Firmicutes.
+
+ '
+ strain_designation:
+ strain_name: MAG SPH2
+ isolation_source: UFMP bioreactor metagenome
+ functional_role:
+ - CROSS_FEEDER
+ abundance_level: DOMINANT
+ abundance_value: up to 16.1% relative abundance
+ evidence:
+ - reference: PMID:37324413
+ supports: SUPPORT
+ evidence_source: IN_VITRO
+ snippet: 'members of the Firmicutes phylum contribute to the chain-elongation-mediated production
+ of butyric, hexanoic, and octanoic acids, with different microbes using either lactose,
+ ethanol, or lactic acid as the growth substrate
+
+ '
+ explanation: RUG023 sp. SPH2 produces ethanol used as chain elongation substrate
+ message: Taxon 'RUG023 sp. (MAG SPH2)' has no interactions
+ removed_findings: {}
+ rationale: Explicit UFMP guild participants expose SPH2 outside existing nodes. No causal link invented
+ to suppress the warning.
+ black_ruff_diff: passed
+ tested_file_sha256:
+ reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml: 066c435d002774ad3950ddaeb4cc0d22f9cdff48c82e5cf8fbb431ccf1be9bcb
+ tests/test_causal_review_batch44.py: cbeedafaf01b58a8d56a33236a4e1d866accc7ebdfe2408fc3a2f225ae2fad0d
+ tests/test_participating_taxa.py: 6080726bb3d197c9af0b45fd6941fc460c8fa0a13f3557575f0cc4b4933ce7a9
+ kb/communities/GLBRC_UFMP_Fermentation_Community.yaml: 0cd65716c7bf522b2c8326bdc476339c3196f551d9a2ee92c405d15dc9ea9c92
+ kb/communities/GOM_Oil_Degrading_Consortium.yaml: 90d4d45224abfc9829feb8fd1cabde320c410a7a843ea3410c89dda4852cc299
+ kb/communities/Garlic_Pseudomonas_SynCom6.yaml: 0052209591a0d6d3e106ad27feaca9dde69645f9725f01ba63e41ebeb5c5c59c
+ reports/causal_graph_review/README.md: 7a3f52353d7fa286a75110ca6b068676a86657db5ac8d7650bebf12e659d20f3
+ post_commit_docs_current: Separate publication gate, not asserted before commit.
+participant_census:
+ measurements:
+ baseline:
+ records: 460
+ with_community_level: 387
+ mixed: 125
+ community_level_only: 262
+ taxa: 1494
+ credited_solely_by_the_rule: 1221
+ current:
+ records: 460
+ with_community_level: 387
+ mixed: 125
+ community_level_only: 262
+ taxa: 1494
+ credited_solely_by_the_rule: 1221
+ interpretation: Existing pairwise-vs-community-level survey is unchanged; explicit participant membership
+ exposes one disconnected SPH2. No census bound or production matching logic changed. Participant registry
+ adds exactly three records, 190 to 193.
+corpus:
+ records: 460
+ nodes: 1466
+ edges: 682
+ review_status_counts:
+ needs_research: 12
+ pending: 281
+ reviewed: 167
+limitations:
+- Whole records and complete primary main bodies, Methods, tables and embedded captions read. No figure
+ images, separate supplementary files, raw data or analysis code independently audited.
+- 'Repairs only: no new nodes/arrows, no Edison job or provider spend. UFMP retains two explicitly hypothesized
+ arrows; GOM removes two unsupported comparative-mediation arrows; Garlic removes two workflow nodes
+ and does not restore prior arrows.'
+- Canonical taxonomy, non-graph raw blocks, prior history and all source caches preserved, not certified.
+ UFMP non-graph stereospecific/functional claims and GOM non-graph significance wording remain outside
+ this repair.
+- 'Reference CLI Total checks counts reported issues, not executed checks. SupportingReference coverage
+ remains incomplete under #476; snippet matching is not scientific support or independent source provenance.'
+- Source-based self-adversarial review is not independent approval or corpus completion.
diff --git a/reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml b/reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml
new file mode 100644
index 000000000..570048c50
--- /dev/null
+++ b/reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml
@@ -0,0 +1,234 @@
+reviewer: codex
+review_mode: source_based_self_adversarial_review
+independent_approval: false
+base_commit: 5b0b555a45aa07071a1e9865f46a37842d9ab27e
+baseline_commit: 5b0b555a45aa07071a1e9865f46a37842d9ab27e
+base_tree: 92a55c0de17232e3032e43e3f7e13c7023656126
+issues:
+- 1474
+- 1475
+- 1476
+issue_deduplication:
+ all_state_issue_titles_and_bodies: 790
+ ignored_hidden_local_search: true
+ relevant_bodies_read:
+ - 624
+ - 543
+ - 486
+ - 326
+ - 17
+ local_matching_lines: 42
+ limitations: Matches include prior taxonomy/history and generated render/audit logs, not existing source-specific
+ causal reviews. Not all comments or PR reviews inspected.
+reference_cache_original_hashes:
+ references_cache/PMID_37324413.md: 8acf781bd773c3159ec59504a0f719661bb71693482c0dd9e244e1abb6c3bc46
+ references_cache/doi_10.3389_fmars.2022.962071.md: 7d1eaf6c49a9c7146be668a6ab870222614d08bf1bd8c60627b1a210e38f3dd3
+ references_cache/PMID_32762153.txt: 779420a992ece6d588076f6e82f8fc8abc7b1c75859e705edbf409344e2a8c54
+limitations:
+- Whole records and complete primary main bodies, Methods, tables and embedded captions read. No figure images,
+ separate supplementary files, raw data or analysis code independently audited.
+- 'Repairs only: no new nodes/arrows, no Edison job or provider spend. UFMP retains two explicitly hypothesized
+ arrows; GOM removes two unsupported comparative-mediation arrows; Garlic removes two workflow nodes and does not
+ restore prior arrows.'
+- Canonical taxonomy, non-graph raw blocks, prior history and all source caches preserved, not certified. UFMP non-graph
+ stereospecific/functional claims and GOM non-graph significance wording remain outside this repair.
+- 'Reference CLI Total checks counts reported issues, not executed checks. SupportingReference coverage remains
+ incomplete under #476; snippet matching is not scientific support or independent source provenance.'
+- Source-based self-adversarial review is not independent approval or corpus completion.
+records:
+- path: kb/communities/GLBRC_UFMP_Fermentation_Community.yaml
+ id: CommunityMech:000029
+ original_sha256: da03a0180a9a75c6105755fe0f061f05964c258bf108a21ecd7ad11c4b14b755
+ record_sha256: 0cd65716c7bf522b2c8326bdc476339c3196f551d9a2ee92c405d15dc9ea9c92
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml
+ scope: Whole record and every original node/arrow reviewed; positive observations and causal limits distinguished.
+ summary: Retain heterogeneous Actinobacteriota genome-based fermentation hypotheses, not universal demonstrated
+ products.; Retain three substrate-distinct Firmicute hypotheses and distinguish measured reactor products from
+ member allocation.; Retain the proposed lactate-transfer model with candidate donors and CLOS1, not obligatory
+ syntrophy or complete conversion.
+ renamed_nodes:
+ Lactose Degradation to Organic Acids: Proposed Actinobacteriota Lactose Fermentation Roles
+ Chain Elongation to Medium-Chain Fatty Acids: Proposed Firmicutes Chain Elongation Roles
+ Actinobacteriota-Firmicutes Cross-Feeding Network: Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+ node_decisions:
+ - node: Proposed Actinobacteriota Lactose Fermentation Roles
+ rationale: Retain heterogeneous Actinobacteriota genome-based fermentation hypotheses, not universal demonstrated
+ products.
+ - node: Proposed Firmicutes Chain Elongation Roles
+ rationale: Retain three substrate-distinct Firmicute hypotheses and distinguish measured reactor products from
+ member allocation.
+ - node: Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+ rationale: Retain the proposed lactate-transfer model with candidate donors and CLOS1, not obligatory syntrophy
+ or complete conversion.
+ removed_node_decisions: []
+ edges_before:
+ - source: Lactose Degradation to Organic Acids
+ target: Actinobacteriota-Firmicutes Cross-Feeding Network
+ description: 'Actinobacteriota lactose fermentation supplies the lactic-acid pool inferred to feed Firmicutes
+ chain elongators in the UFMP reactor.
+
+ '
+ - source: Actinobacteriota-Firmicutes Cross-Feeding Network
+ target: Chain Elongation to Medium-Chain Fatty Acids
+ description: 'The inferred Actinobacteriota-to-Firmicutes lactic-acid transfer routes lactose-derived short-chain
+ acid into reverse-beta-oxidation production of butyrate, hexanoate, and octanoate.
+
+ '
+ edges_after:
+ - source: Proposed Actinobacteriota Lactose Fermentation Roles
+ target: Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+ description: 'HYPOTHESIZED: Lactate production by a subset of lactose-fermenting Actinobacteriota could supply
+ the proposed CLOS1 donor pool. Genomic potential and extracellular profiles support the model, not traced
+ member-specific secretion or transfer; ACT2 succinate production is not evidence of lactate donation.'
+ - source: Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+ target: Proposed Firmicutes Chain Elongation Roles
+ description: 'HYPOTHESIZED: Access to donor-derived lactate could support the proposed CLOS1 branch of reverse
+ beta-oxidation, associated mainly with butyrate. This arrow does not route all C6/C8 synthesis through CLOS1
+ or make LCO1 direct-lactose and ACID1 possible-ethanol metabolism dependent on lactate transfer.'
+ retained_edge_decisions:
+ - source: Proposed Actinobacteriota Lactose Fermentation Roles
+ target: Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+ description: 'HYPOTHESIZED: Lactate production by a subset of lactose-fermenting Actinobacteriota could supply
+ the proposed CLOS1 donor pool. Genomic potential and extracellular profiles support the model, not traced
+ member-specific secretion or transfer; ACT2 succinate production is not evidence of lactate donation.'
+ rationale: Retain only the authors' explicitly hypothetical lactate-donor/CLOS1 model, not measured flux or
+ a universal Firmicute route.
+ - source: Proposed Actinobacteriota-to-CLOS1 Lactate Cross-Feeding
+ target: Proposed Firmicutes Chain Elongation Roles
+ description: 'HYPOTHESIZED: Access to donor-derived lactate could support the proposed CLOS1 branch of reverse
+ beta-oxidation, associated mainly with butyrate. This arrow does not route all C6/C8 synthesis through CLOS1
+ or make LCO1 direct-lactose and ACID1 possible-ethanol metabolism dependent on lactate transfer.'
+ rationale: Retain only the authors' explicitly hypothetical lactate-donor/CLOS1 model, not measured flux or
+ a universal Firmicute route.
+ removed_edge_decisions: []
+ references:
+ - PMID:37324413
+ issues:
+ - 1474
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/GLBRC_UFMP_Fermentation_Community/2026-10-06T121037Z-codex-6f8e55.yaml
+ source_review:
+ PMID:37324413:
+ cache: references_cache/PMID_37324413.md
+ sha256: 8acf781bd773c3159ec59504a0f719661bb71693482c0dd9e244e1abb6c3bc46
+ url: https://doi.org/10.3389/fbioe.2023.1173656
+ scope: Complete cached primary main body/Methods/tables/captions; no image or separate supplement inspection.
+- path: kb/communities/GOM_Oil_Degrading_Consortium.yaml
+ id: CommunityMech:000030
+ original_sha256: 6b90550db3bc1cc1a75459278ec2541043eab31f177007facca1d41229489f2f
+ record_sha256: 90d4d45224abfc9829feb8fd1cabde320c410a7a843ea3410c89dda4852cc299
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml
+ scope: Whole record and every original node/arrow reviewed; positive observations and causal limits distinguished.
+ summary: Retain abiotic-referenced, time-dependent n-alkane depletion without assigned in-consortium member flux.;
+ Retain heterogeneous PAH-panel depletion, not substantial degradation of all 12 or generic phenanthrene.; Retain
+ gross removal improvement while exposing abiotic and total-inoculum limits on synergy.
+ renamed_nodes:
+ Enhanced Light Crude Oil Removal: Higher Gross Light Crude Oil Removal
+ node_decisions:
+ - node: Consortium n-Alkane Biodegradation
+ rationale: Retain abiotic-referenced, time-dependent n-alkane depletion without assigned in-consortium member
+ flux.
+ - node: Consortium Polyaromatic Hydrocarbon Biodegradation
+ rationale: Retain heterogeneous PAH-panel depletion, not substantial degradation of all 12 or generic phenanthrene.
+ - node: Higher Gross Light Crude Oil Removal
+ rationale: Retain gross removal improvement while exposing abiotic and total-inoculum limits on synergy.
+ removed_node_decisions: []
+ edges_before:
+ - source: Consortium n-Alkane Biodegradation
+ target: Enhanced Light Crude Oil Removal
+ description: Consortium-scale n-alkane biodegradation contributes to improved gravimetric light-crude-oil removal
+ by the selected four-strain consortium.
+ - source: Consortium Polyaromatic Hydrocarbon Biodegradation
+ target: Enhanced Light Crude Oil Removal
+ description: PAH biodegradation is one measured hydrocarbon-removal activity of the consortium that reached
+ higher total crude-oil removal than any individual member.
+ edges_after: []
+ retained_edge_decisions: []
+ removed_edge_decisions:
+ - source: Consortium n-Alkane Biodegradation
+ target: Enhanced Light Crude Oil Removal
+ description: Consortium-scale n-alkane biodegradation contributes to improved gravimetric light-crude-oil removal
+ by the selected four-strain consortium.
+ rationale: Class-specific abiotic-referenced depletion does not selectively mediate the comparative gross-removal
+ advantage; total starting inoculum and abiotic loss differ in interpretation.
+ - source: Consortium Polyaromatic Hydrocarbon Biodegradation
+ target: Enhanced Light Crude Oil Removal
+ description: PAH biodegradation is one measured hydrocarbon-removal activity of the consortium that reached
+ higher total crude-oil removal than any individual member.
+ rationale: Class-specific abiotic-referenced depletion does not selectively mediate the comparative gross-removal
+ advantage; total starting inoculum and abiotic loss differ in interpretation.
+ references:
+ - doi:10.3389/fmars.2022.962071
+ issues:
+ - 1475
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/GOM_Oil_Degrading_Consortium/2026-10-06T121037Z-codex-7c3bc4.yaml
+ source_review:
+ doi:10.3389/fmars.2022.962071:
+ cache: references_cache/doi_10.3389_fmars.2022.962071.md
+ sha256: 7d1eaf6c49a9c7146be668a6ab870222614d08bf1bd8c60627b1a210e38f3dd3
+ url: https://www.frontiersin.org/journals/marine-science/articles/10.3389/fmars.2022.962071/full
+ scope: Cached abstract plus one Methods sentence; separately read publisher complete main body/Methods/tables/captions.
+ No images or separate supplements inspected.
+ publisher:
+ url: https://www.frontiersin.org/journals/marine-science/articles/10.3389/fmars.2022.962071/full
+ html_sha256: 0cab5621ee8f05ce8d36d25a418c59d9fb96ba728ad38f68717797ffe5022831
+ text_sha256: 83d3dc509ad021a294906fa99adbdf241559ff3ee9e6d223bc7f96d98596a3bf
+ scope: Publisher main-body text extraction; no figure image or supplementary-file inspection
+- path: kb/communities/Garlic_Pseudomonas_SynCom6.yaml
+ id: CommunityMech:000095
+ original_sha256: 1336853814eb3ca22d64ec0a5c8663861c7ab544704d9216731b6b60816aef76
+ record_sha256: 0052209591a0d6d3e106ad27feaca9dde69645f9725f01ba63e41ebeb5c5c59c
+ status: reviewed
+ outcome: changed
+ review_file: reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml
+ scope: Whole record and every original node/arrow reviewed; positive observations and causal limits distinguished.
+ summary: Retain only the measured two-day radish host-response outcome, with unresolved six-member identity and
+ mechanism explicit.
+ renamed_nodes:
+ Pseudomonas-Mediated Growth Promotion: Radish Seedling Length Response to Pseudomonas SynCom6
+ node_decisions:
+ - node: Radish Seedling Length Response to Pseudomonas SynCom6
+ rationale: Retain only the measured two-day radish host-response outcome, with unresolved six-member identity
+ and mechanism explicit.
+ removed_node_decisions:
+ - node: Top-Down Pseudomonas PGPR Selection
+ rationale: Field nomination based on enrichment/co-occurrence is a selection workflow, not a demonstrated ecological
+ interaction.
+ - node: Six-Strain Pseudomonas SynCom Assembly
+ rationale: Equal-proportion experimental assembly is a design operation, not biological symbiosis.
+ edges_before: []
+ edges_after: []
+ retained_edge_decisions: []
+ removed_edge_decisions: []
+ references:
+ - PMID:32762153
+ issues:
+ - 1476
+ allowed_changed_fields:
+ - curation_history
+ - discussions
+ - ecological_interactions
+ curation_events_added: 1
+ history_files:
+ - history/records/Garlic_Pseudomonas_SynCom6/2026-10-06T121038Z-codex-149752.yaml
+ source_review:
+ PMID:32762153:
+ cache: references_cache/PMID_32762153.txt
+ sha256: 779420a992ece6d588076f6e82f8fc8abc7b1c75859e705edbf409344e2a8c54
+ url: https://doi.org/10.1111/1751-7915.13640
+ scope: Complete cached primary main body/Methods/tables/captions; no image or separate supplement inspection.
diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv
index 95a5e3342..e17512b28 100644
--- a/reports/causal_graph_review/inventory.tsv
+++ b/reports/causal_graph_review/inventory.tsv
@@ -177,9 +177,9 @@ kb/communities/Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml CommunityMech:0
kb/communities/GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml CommunityMech:000352 72fcc1720a4bb6b3a0a464f98524ab2bbf999b2b73eaf71efa0fa98be433b9c3 3 1 78.3 reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml reviewed
kb/communities/GLBRC_Exometabolite_Transwell_SynCom.yaml CommunityMech:000091 8d1ef9c4d9c8b8b0f2c203a984747b02cfa32e10fe648d3fd5bf0a9548c8208f 2 0 70.0 reports/causal_graph_review/decisions/20261006-three-records-batch42.yaml needs_research
kb/communities/GLBRC_Populus_Variovorax_SynCom28.yaml CommunityMech:000028 c251f6d716591cd391dbb09ad961f6ccb7b123988b9c677d925356b8463d2c28 3 0 61.7 reports/causal_graph_review/decisions/20261006-variovorax-batch43.yaml reviewed
-kb/communities/GLBRC_UFMP_Fermentation_Community.yaml CommunityMech:000029 da03a0180a9a75c6105755fe0f061f05964c258bf108a21ecd7ad11c4b14b755 3 2 100.0 pending
-kb/communities/GOM_Oil_Degrading_Consortium.yaml CommunityMech:000030 6b90550db3bc1cc1a75459278ec2541043eab31f177007facca1d41229489f2f 3 2 100.0 pending
-kb/communities/Garlic_Pseudomonas_SynCom6.yaml CommunityMech:000095 1336853814eb3ca22d64ec0a5c8663861c7ab544704d9216731b6b60816aef76 3 0 75.0 pending
+kb/communities/GLBRC_UFMP_Fermentation_Community.yaml CommunityMech:000029 0cd65716c7bf522b2c8326bdc476339c3196f551d9a2ee92c405d15dc9ea9c92 3 2 87.8 reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml reviewed
+kb/communities/GOM_Oil_Degrading_Consortium.yaml CommunityMech:000030 90d4d45224abfc9829feb8fd1cabde320c410a7a843ea3410c89dda4852cc299 3 0 65.0 reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml reviewed
+kb/communities/Garlic_Pseudomonas_SynCom6.yaml CommunityMech:000095 0052209591a0d6d3e106ad27feaca9dde69645f9725f01ba63e41ebeb5c5c59c 1 0 65.0 reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml reviewed
kb/communities/Geobacter_Clostridium_Interspecies_Electron_Transfer_Coculture.yaml CommunityMech:000031 d3a7d0c3298583e167a50201c8da4cd94d0ac51c1516a8587a41259e85f4718e 3 2 100.0 pending
kb/communities/Geobacter_Methanosaeta_DIET.yaml CommunityMech:000032 3fc22ecba6b448dd63c54896e119773338b3e331d88be489b54bb1c58277fc6a 3 2 100.0 pending
kb/communities/Geobacter_Methanosarcina_DIET.yaml CommunityMech:000033 3c1a692277d402834b3acc3d529d8abe87a2afe7a0ae03027aae66eff187a543 3 2 100.0 pending
diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json
index 8e290facb..74c7ff1ce 100644
--- a/reports/causal_graph_review/summary.json
+++ b/reports/causal_graph_review/summary.json
@@ -2,14 +2,14 @@
"scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.",
"semantic_review_rule": "Structural checks and readiness scores do not establish causal support. Completed reviews must match the current record SHA-256, cover every node once with a rationale, and reproduce the current edge list.",
"records": 460,
- "nodes": 1468,
- "edges": 684,
+ "nodes": 1466,
+ "edges": 682,
"records_without_nodes": 8,
- "records_without_edges": 147,
+ "records_without_edges": 148,
"review_status_counts": {
"needs_research": 12,
- "pending": 284,
- "reviewed": 164
+ "pending": 281,
+ "reviewed": 167
},
"structural_defects": [],
"network_audit": [
@@ -676,6 +676,54 @@
"message": "Taxon 'Nitrospirae core floodplain members' has no interactions",
"severity": "warning"
},
+ {
+ "record": "GLBRC_UFMP_Fermentation_Community",
+ "type": "DISCONNECTED",
+ "taxon": "RUG023 sp. (MAG SPH2)",
+ "taxon_id": "NCBITaxon:203691",
+ "taxon_data": {
+ "taxon_term": {
+ "preferred_term": "RUG023 sp. (MAG SPH2)",
+ "term": {
+ "id": "NCBITaxon:203691",
+ "label": "Spirochaetota"
+ },
+ "gtdb_grounding_status": "GROUNDED",
+ "gtdb_classification": {
+ "gtdb_id": "GTDB:p__Spirochaetota",
+ "gtdb_taxon": "Spirochaetota",
+ "gtdb_lineage": "d__Bacteria;p__Spirochaetota",
+ "ncbi_source_id": "NCBITaxon:203691",
+ "majority_fraction": 1.0,
+ "support_genomes": 6024,
+ "total_genomes": 6025,
+ "is_reclassified": false,
+ "mapping_source": "kg-microbe NCBI2GTDB.tsv.gz; GTDB release latest (built 2026-07-25) [grounded at p__ rank; 2 GTDB taxa under the NCBI taxon]"
+ },
+ "notes": "Spirochaetota member (up to 16.1% relative abundance). Produces ethanol which serves as substrate for chain elongation by Firmicutes.\n"
+ },
+ "strain_designation": {
+ "strain_name": "MAG SPH2",
+ "isolation_source": "UFMP bioreactor metagenome"
+ },
+ "functional_role": [
+ "CROSS_FEEDER"
+ ],
+ "abundance_level": "DOMINANT",
+ "abundance_value": "up to 16.1% relative abundance",
+ "evidence": [
+ {
+ "reference": "PMID:37324413",
+ "supports": "SUPPORT",
+ "evidence_source": "IN_VITRO",
+ "snippet": "members of the Firmicutes phylum contribute to the chain-elongation-mediated production of butyric, hexanoic, and octanoic acids, with different microbes using either lactose, ethanol, or lactic acid as the growth substrate\n",
+ "explanation": "RUG023 sp. SPH2 produces ethanol used as chain elongation substrate"
+ }
+ ]
+ },
+ "message": "Taxon 'RUG023 sp. (MAG SPH2)' has no interactions",
+ "severity": "warning"
+ },
{
"record": "Mangrove_Benzene_MFC_Bioanode_Consortium",
"type": "DISCONNECTED",
diff --git a/reports/causal_graph_review/validation-20261006-batch44.json b/reports/causal_graph_review/validation-20261006-batch44.json
new file mode 100644
index 000000000..abaaef846
--- /dev/null
+++ b/reports/causal_graph_review/validation-20261006-batch44.json
@@ -0,0 +1,916 @@
+{
+ "base_commit": "5b0b555a45aa07071a1e9865f46a37842d9ab27e",
+ "scope": [
+ "kb/communities/GLBRC_UFMP_Fermentation_Community.yaml",
+ "kb/communities/GOM_Oil_Degrading_Consortium.yaml",
+ "kb/communities/Garlic_Pseudomonas_SynCom6.yaml"
+ ],
+ "reference_validator_version": "0.1.7",
+ "results": [
+ {
+ "check": "GLBRC_UFMP_Fermentation_Community-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/GLBRC_UFMP_Fermentation_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GLBRC_UFMP_Fermentation_Community-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "GLBRC_UFMP_Fermentation_Community-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch44/GLBRC_UFMP_Fermentation_Community-strict.tsv",
+ "kb/communities/GLBRC_UFMP_Fermentation_Community.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GLBRC_UFMP_Fermentation_Community-strict.log",
+ "log_sha256": "eaacc63ae2356405525b474dbdd027d627dbc550a2049a3def60f3adccff74d1",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch44/src/communitymech/schema/communitymech.yaml\n\n=== validate-strict summary ===\n files scanned: 1\n files with ERROR: 0\n total ERROR rows: 0\n TSV: /private/tmp/communitymech-batch44/GLBRC_UFMP_Fermentation_Community-strict.tsv\n"
+ },
+ {
+ "check": "GLBRC_UFMP_Fermentation_Community-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/GLBRC_UFMP_Fermentation_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GLBRC_UFMP_Fermentation_Community-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "GLBRC_UFMP_Fermentation_Community-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/GLBRC_UFMP_Fermentation_Community.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GLBRC_UFMP_Fermentation_Community-references.log",
+ "log_sha256": "3187c8f05f5c843d732e66fd32595975359559593ae46bea6c1a25da58f1de1d",
+ "output_tail": "Validating kb/communities/GLBRC_UFMP_Fermentation_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/GLBRC_UFMP_Fermentation_Community.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n"
+ },
+ {
+ "check": "GLBRC_UFMP_Fermentation_Community-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/GLBRC_UFMP_Fermentation_Community.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GLBRC_UFMP_Fermentation_Community-snippets.log",
+ "log_sha256": "c72869c3cfa80d3275b80461e8b721727d9e301213f59836200303704b4482a6",
+ "output_tail": "# 27 evidence snippets scanned across 1 files\n MATCH 27\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": "GLBRC_UFMP_Fermentation_Community-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/GLBRC_UFMP_Fermentation_Community.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GLBRC_UFMP_Fermentation_Community-rank.log",
+ "log_sha256": "85e1b8e2ad70a785cc5dbb225cc1512def82d37ccdc09dac7c83fc5c3bbd7dfc",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000029\",\n \"name\": \"GLBRC Ultra-Filtered Milk Permeate Fermentation Community\",\n \"score\": 87.8,\n \"taxonomy\": 10,\n \"connected_taxa\": 9,\n \"disconnected_taxa\": 1,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 3,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"metabolites_or_biological_processes\",\n \"interaction_type\",\n \"disconnected_taxa\"\n ],\n \"path\": \"kb/communities/GLBRC_UFMP_Fermentation_Community.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "GLBRC_UFMP_Fermentation_Community-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/GLBRC_UFMP_Fermentation_Community/2026-10-06T121037Z-codex-6f8e55.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GLBRC_UFMP_Fermentation_Community-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "GOM_Oil_Degrading_Consortium-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/GOM_Oil_Degrading_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GOM_Oil_Degrading_Consortium-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "GOM_Oil_Degrading_Consortium-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch44/GOM_Oil_Degrading_Consortium-strict.tsv",
+ "kb/communities/GOM_Oil_Degrading_Consortium.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GOM_Oil_Degrading_Consortium-strict.log",
+ "log_sha256": "8605407e1789a31c5953d5d30bc73d21a013103cae60dee0b2192540c033e164",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch44/src/communitymech/schema/communitymech.yaml\n\n=== validate-strict summary ===\n files scanned: 1\n files with ERROR: 0\n total ERROR rows: 0\n TSV: /private/tmp/communitymech-batch44/GOM_Oil_Degrading_Consortium-strict.tsv\n"
+ },
+ {
+ "check": "GOM_Oil_Degrading_Consortium-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/GOM_Oil_Degrading_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GOM_Oil_Degrading_Consortium-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "GOM_Oil_Degrading_Consortium-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/GOM_Oil_Degrading_Consortium.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GOM_Oil_Degrading_Consortium-references.log",
+ "log_sha256": "da6a4e764eff73d2b1bd69af11899581fc99d184594ebb99175e8773aa4eb36c",
+ "output_tail": "Validating kb/communities/GOM_Oil_Degrading_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",
+ "explained_output_tail": "Validating kb/communities/GOM_Oil_Degrading_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": "GOM_Oil_Degrading_Consortium-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/GOM_Oil_Degrading_Consortium.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GOM_Oil_Degrading_Consortium-snippets.log",
+ "log_sha256": "1835af07ebf0373785ca2d25de18c6984a3cbcfdec0d2610f1d8437504408710",
+ "output_tail": "# 10 evidence snippets scanned across 1 files\n MATCH 10\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": "GOM_Oil_Degrading_Consortium-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/GOM_Oil_Degrading_Consortium.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GOM_Oil_Degrading_Consortium-rank.log",
+ "log_sha256": "ce6ee1fc27691a91c523a395e5a64071365b7583ff054b56f9a0d6c7897383ce",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000030\",\n \"name\": \"Gulf of Mexico Oil-Degrading Consortium\",\n \"score\": 65.0,\n \"taxonomy\": 4,\n \"connected_taxa\": 4,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 3,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"downstream\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/GOM_Oil_Degrading_Consortium.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "GOM_Oil_Degrading_Consortium-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/GOM_Oil_Degrading_Consortium/2026-10-06T121037Z-codex-7c3bc4.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/GOM_Oil_Degrading_Consortium-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Garlic_Pseudomonas_SynCom6-schema",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "kb/communities/Garlic_Pseudomonas_SynCom6.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/Garlic_Pseudomonas_SynCom6-schema.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "Garlic_Pseudomonas_SynCom6-strict",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3",
+ "scripts/validate_strict.py",
+ "--workers",
+ "1",
+ "--out",
+ "/private/tmp/communitymech-batch44/Garlic_Pseudomonas_SynCom6-strict.tsv",
+ "kb/communities/Garlic_Pseudomonas_SynCom6.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/Garlic_Pseudomonas_SynCom6-strict.log",
+ "log_sha256": "7d713b42d5aa9a041aadbec0f643cf39491e4060abf901cfab73d6652787ffc4",
+ "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch44/src/communitymech/schema/communitymech.yaml\n\n=== validate-strict summary ===\n files scanned: 1\n files with ERROR: 0\n total ERROR rows: 0\n TSV: /private/tmp/communitymech-batch44/Garlic_Pseudomonas_SynCom6-strict.tsv\n"
+ },
+ {
+ "check": "Garlic_Pseudomonas_SynCom6-terms",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator",
+ "validate-data",
+ "kb/communities/Garlic_Pseudomonas_SynCom6.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--labels"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/Garlic_Pseudomonas_SynCom6-terms.log",
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018",
+ "output_tail": "\u2705 Validation passed\n"
+ },
+ {
+ "check": "Garlic_Pseudomonas_SynCom6-references",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator",
+ "validate",
+ "data",
+ "kb/communities/Garlic_Pseudomonas_SynCom6.yaml",
+ "-s",
+ "src/communitymech/schema/communitymech.yaml",
+ "--config",
+ "conf/reference_validator.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/Garlic_Pseudomonas_SynCom6-references.log",
+ "log_sha256": "761fd706ccf070ad05c3317432f154ca03fee2c63fda836ee8a276ddfe7e0fac",
+ "output_tail": "Validating kb/communities/Garlic_Pseudomonas_SynCom6.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n",
+ "explained_output_tail": "Validating kb/communities/Garlic_Pseudomonas_SynCom6.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": "Garlic_Pseudomonas_SynCom6-snippets",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/evidence_snippet_audit.py",
+ "kb/communities/Garlic_Pseudomonas_SynCom6.yaml",
+ "--list-mismatch",
+ "--list-nocontent",
+ "--list-rendering",
+ "--list-assembled"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/Garlic_Pseudomonas_SynCom6-snippets.log",
+ "log_sha256": "84702240edbf592338b928c30492b65468ff15be9ea1aa2839e89d52f40f4850",
+ "output_tail": "# 5 evidence snippets scanned across 1 files\n MATCH 5\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": "Garlic_Pseudomonas_SynCom6-rank",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "scripts/rank_causal_graph_readiness.py",
+ "kb/communities/Garlic_Pseudomonas_SynCom6.yaml",
+ "--format",
+ "json"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/Garlic_Pseudomonas_SynCom6-rank.log",
+ "log_sha256": "e3d01e622541847c3a8dfeaa8ddcca05805334fc256b2bafd9b3818a6904da31",
+ "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000095\",\n \"name\": \"Garlic Rhizosphere Pseudomonas SynCom6\",\n \"score\": 65.0,\n \"taxonomy\": 1,\n \"connected_taxa\": 1,\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 ],\n \"path\": \"kb/communities/Garlic_Pseudomonas_SynCom6.yaml\"\n }\n]\n"
+ },
+ {
+ "check": "Garlic_Pseudomonas_SynCom6-history-0",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate",
+ "-s",
+ "src/communitymech/schema/history.yaml",
+ "--target-class",
+ "HistoryRecord",
+ "history/records/Garlic_Pseudomonas_SynCom6/2026-10-06T121038Z-codex-149752.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/Garlic_Pseudomonas_SynCom6-history-0.log",
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de",
+ "output_tail": "No issues found\n"
+ },
+ {
+ "check": "inventory",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "reports/causal_graph_review/build_inventory.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/inventory.log",
+ "log_sha256": "305861716009c1432129ebc7077973540459535a2fb2ce3fb4e3f1c5f3461a32",
+ "output_tail": "{\n \"scope\": \"Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.\",\n \"semantic_review_rule\": \"Structural checks and readiness scores do not establish causal support. Completed reviews must match the current record SHA-256, cover every node once with a rationale, and reproduce the current edge list.\",\n \"records\": 460,\n \"nodes\": 1466,\n \"edges\": 682,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 148,\n \"review_status_counts\": {\n \"needs_research\": 12,\n \"pending\": 281,\n \"reviewed\": 167\n },\n \"structural_defects\": []\n}\n"
+ },
+ {
+ "check": "network",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "-m",
+ "communitymech.cli",
+ "audit-network",
+ "--json"
+ ],
+ "exit_code": 1,
+ "expected_exit_codes": [
+ 1
+ ],
+ "log": "/private/tmp/communitymech-batch44/network.log",
+ "log_sha256": "71a1e46fdd5d7c44e1766fabc85efb996c70258e3e64018891cfa94bb22fb13e",
+ "output_tail": "{\n \"preferred_term\": \"Legionella MAGs\",\n \"term\": {\n \"id\": \"NCBITaxon:445\",\n \"label\": \"Legionella\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The study detected Legionella-affiliated MAGs and used them in a virulence-gene risk assessment; the source did not assert pathogenicity for a cultured Legionella isolate.\\n\"\n },\n \"abundance_value\": \"Lower-abundance Legionella-affiliated MAGs detected during metagenomic risk assessment.\\n\",\n \"evidence\": [\n {\n \"reference\": \"PMID:41457319\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"COMPUTATIONAL\",\n \"snippet\": \"detection of waterborne pathogens from the Legionella genus\",\n \"explanation\": \"Supports Legionella-affiliated lower-abundance bins as monitored biosafety-relevant members of the consortium.\\n\"\n }\n ]\n },\n \"message\": \"Taxon 'Legionella MAGs' has no interactions\"\n }\n ],\n \"Sclerotinia_Sclerotia_12Strain_Biocontrol_SynCom\": [\n {\n \"type\": \"UNKNOWN_TARGET\",\n \"interaction\": \"Twelve-Strain SynCom Suppression of Sclerotinia Sclerotia\",\n \"interaction_index\": 0,\n \"taxon\": \"Sclerotinia sclerotiorum\",\n \"severity\": \"warning\",\n \"message\": \"Target taxon 'Sclerotinia sclerotiorum' not found in taxonomy section (community-level scope)\"\n },\n {\n \"type\": \"UNKNOWN_TARGET\",\n \"interaction\": \"Trinickia MC Key Contribution to Sclerotia Mortality\",\n \"interaction_index\": 1,\n \"taxon\": \"Sclerotinia sclerotiorum\",\n \"severity\": \"warning\",\n \"message\": \"Target taxon 'Sclerotinia sclerotiorum' not found in taxonomy section (community-level scope)\"\n }\n ],\n \"Space_Habitat_SevenMember_Stress_Tolerance_SynCom\": [\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Acinetobacter radioresistens 50V1\",\n \"taxon_id\": \"NCBITaxon:40216\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Acinetobacter radioresistens 50V1\",\n \"term\": {\n \"id\": \"NCBITaxon:40216\",\n \"label\": \"Acinetobacter radioresistens\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The isolate came from the preflight Mars Odyssey Orbiter; ontology grounding is at species level.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"50V1\",\n \"genome_accession\": \"GCA_002834555.1\"\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Acinetobacter radioresistens | 50V1 | Preflight Mars Odyssey Orbiter | \\u2013 | Mccoy et al., 2012 | GCA_002834555.1 | TSYB/TSYA | 37 \\u00b0C | 16\\u201318 h\",\n \"explanation\": \"Identifies A. radioresistens 50V1 as a consortium member and gives its spacecraft-associated source, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Acinetobacter radioresistens 50V1' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Micrococcus luteus W4-Al-K1\",\n \"taxon_id\": \"NCBITaxon:1270\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Micrococcus luteus W4-Al-K1\",\n \"term\": {\n \"id\": \"NCBITaxon:1270\",\n \"label\": \"Micrococcus luteus\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The isolate was recovered from an ISS aluminum-case touch array; ontology grounding is at species level.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"W4-Al-K1\",\n \"genome_accession\": \"GCA_057816565.1\"\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Micrococcus luteus | W4-Al-K1 | ISS, Touch Array Aluminum Case | - | Kr\\u00e4mer et al., 2025 | GCA_057816565.1 | NB, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies M. luteus W4-Al-K1 as a consortium member and gives its ISS source, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Micrococcus luteus W4-Al-K1' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Propionibacterium cyclohexanicum TA-12T\",\n \"taxon_id\": \"NCBITaxon:64702\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Propionibacterium cyclohexanicum TA-12T\",\n \"term\": {\n \"id\": \"NCBITaxon:64702\",\n \"label\": \"Propionibacterium cyclohexanicum\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the P. cyclohexanicum type strain as a biosafety-level-1 representative.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"TA-12T\",\n \"genome_accession\": \"GCA_900111365\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"16859\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Propionibacterium cyclohexanicum | TA-12 T | Spoilt Orange Juice | DSM 16859 T | Kusano et al., 1997 | GCA_900111365 | BHI, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies P. cyclohexanicum TA-12T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Propionibacterium cyclohexanicum TA-12T' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Pseudomonas antarctica CMS 35T\",\n \"taxon_id\": \"NCBITaxon:219572\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Pseudomonas antarctica CMS 35T\",\n \"term\": {\n \"id\": \"NCBITaxon:219572\",\n \"label\": \"Pseudomonas antarctica\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the P. antarctica type strain as a biosafety-level-1 Pseudomonas surrogate.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"CMS 35T\",\n \"genome_accession\": \"GCA_010634845\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"15318\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Pseudomonas antarctica | CMS 35 T | Antarctica | DSM 15318 T | Reddy et al., 2004 | GCA_010634845 | TSYB/TSYA | Ambient | 12\\u201316 h\",\n \"explanation\": \"Identifies P. antarctica CMS 35T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Pseudomonas antarctica CMS 35T' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Staphylococcus capitis K1-2-2-23\",\n \"taxon_id\": \"NCBITaxon:29388\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Staphylococcus capitis K1-2-2-23\",\n \"term\": {\n \"id\": \"NCBITaxon:29388\",\n \"label\": \"Staphylococcus capitis\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The isolate was recovered from ISS V2A steel; ontology grounding is at species level.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"K1-2-2-23\",\n \"genome_accession\": \"GCA_025272695\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"111179\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Staphylococcus capitis | K1-2-2-23 | ISS, V2A Steel | DSM 111179 | Sobisch et al., 2019 | GCA_025272695 | TSYB/TSYA | 37 \\u00b0C | 16\\u201324 h\",\n \"explanation\": \"Identifies S. capitis K1-2-2-23 as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Staphylococcus capitis K1-2-2-23' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Streptococcus halotolerans HTS9T\",\n \"taxon_id\": \"NCBITaxon:1814128\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Streptococcus halotolerans HTS9T\",\n \"term\": {\n \"id\": \"NCBITaxon:1814128\",\n \"label\": \"Streptococcus halotolerans\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the S. halotolerans type strain as a biosafety-level-1 representative.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"HTS9T\",\n \"genome_accession\": \"GCA_001598035\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"101996\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Streptococcus halotolerans | HTS9 T | Respiratory Tract of Marmota himalayana | DSM 101996 T | Niu et al., 2016 | GCA_001598035 | 2xLB, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies S. halotolerans HTS9T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Streptococcus halotolerans HTS9T' has no interactions\"\n }\n ]\n}\n"
+ },
+ {
+ "check": "rank-all",
+ "command": [
+ "just",
+ "rank-causal-graphs"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/rank-all.log",
+ "log_sha256": "ce6fef3958bc7649c0383bc1c7d39608bf5d44e524e4a22a24d7c0a287d8267b",
+ "output_tail": "ities/Soybean_N_Fixation_sfSynCom.yaml\tCommunityMech:000064\tSoybean N-Fixation Simplified SynCom\t4\t4\t0\t3\t2\t3\t\t0\t0\n402\t100.0\tkb/communities/Sphingobium_Rhodococcus_Lignin_Dimer_Valorization_Coculture.yaml\tCommunityMech:000267\tSphingobium-Rhodococcus Lignin-Dimer Valorization Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n403\t100.0\tkb/communities/Staphylococcus_Candida_Context_Dependent_Biofilm_Coculture.yaml\tCommunityMech:000326\tStaphylococcus-Candida Context-Dependent Biofilm Coculture\t2\t2\t0\t6\t2\t13\t\t0\t0\n404\t100.0\tkb/communities/Stordalen_Mire_Methylotrophic_Methanogenesis_Community.yaml\tCommunityMech:000254\tStordalen Mire Methylotrophic Methanogenesis Community\t3\t3\t0\t4\t4\t9\t\t0\t0\n405\t100.0\tkb/communities/Streptomyces_A2_A5_A11_M7_Pesticide_Consortium.yaml\tCommunityMech:000335\tStreptomyces A2-A5-A11-M7 Pesticide-Bioremediation Consortium\t4\t4\t0\t4\t2\t5\t\t0\t0\n406\t100.0\tkb/communities/Subsurface_Carboxydocella_CO_Aquifer_Community.yaml\tCommunityMech:000251\tSubsurface Carboxydocella CO-Oxidation Aquifer Community\t1\t1\t0\t5\t2\t5\t\t0\t0\n407\t100.0\tkb/communities/Suillus_Bacillus_Thiamine_Ectomycorrhizal_SynCom.yaml\tCommunityMech:000312\tSuillus clintonianus-Bacillus altitudinis Thiamine Cross-Feeding SynCom\t3\t3\t0\t4\t3\t4\t\t0\t0\n408\t100.0\tkb/communities/Sulfide_Spring_Autotrophic_CPR_Biofilm.yaml\tCommunityMech:000222\tSulfide Spring Autotrophic CPR-Hosting Biofilm\t3\t3\t0\t3\t2\t4\t\t0\t0\n409\t100.0\tkb/communities/SynComBac10_Chicken_Intestinal_SynCom.yaml\tCommunityMech:000127\tSynComBac10 Chicken Intestinal SynCom\t3\t3\t0\t3\t2\t3\t\t0\t0\n410\t100.0\tkb/communities/SynCom_ARC_Peanut_Aflatoxin_Nodulation.yaml\tCommunityMech:000314\tSynCom ARC Peanut Aflatoxin-Control and Nodulation-Coupling Community\t5\t5\t0\t3\t2\t3\t\t0\t0\n411\t100.0\tkb/communities/SynCom_BsBv_Cigar_Tobacco_Leaf_Fermentation.yaml\tCommunityMech:000278\tSynCom BsBv Cigar Tobacco Leaf Fermentation\t2\t2\t0\t3\t2\t3\t\t0\t0\n412\t100.0\tkb/communities/SynCom_Chlorella_sorokiniana_Biogas_Slurry_Coupling_System.yaml\tCommunityMech:000285\tSynCom + Chlorella sorokiniana Biogas-slurry Coupling System\t2\t2\t0\t5\t3\t5\t\t0\t0\n413\t100.0\tkb/communities/SynCom_MetG2_Rhizobacteria_Sugarcane_Stress_Resilience.yaml\tCommunityMech:000302\tSynCom MetG2 Rhizobacteria Sugarcane Stress Resilience\t2\t2\t0\t3\t2\t4\t\t0\t0\n414\t100.0\tkb/communities/SynCom_Sesame_Flavor_Baijiu_Fuqu_13Genus.yaml\tCommunityMech:000283\tSesame-flavor Baijiu Fuqu SynCom (13-genus)\t13\t13\t0\t3\t2\t3\t\t0\t0\n415\t100.0\tkb/communities/SynCom_Y_Agrobacterium_Bacillus_Biofilm_Biocontrol_Coculture.yaml\tCommunityMech:000272\tSynCom Y Agrobacterium-Bacillus Biofilm Biocontrol Co-culture\t2\t2\t0\t4\t2\t6\t\t0\t0\n416\t100.0\tkb/communities/Synechococcus_Azotobacter_Photoproduction_Mutualism.yaml\tCommunityMech:000207\tSynechococcus-Azotobacter Photoproduction Mutualism\t2\t2\t0\t3\t2\t6\t\t0\t0\n417\t100.0\tkb/communities/Synechococcus_Bacillus_SPC.yaml\tCommunityMech:000065\tSynechococcus-Bacillus Synthetic Photosynthetic Consortium\t2\t2\t0\t3\t2\t4\t\t0\t0\n418\t100.0\tkb/communities/Synechococcus_Ecoli_SPC.yaml\tCommunityMech:000066\tSynechococcus-E.coli Synthetic Photosynthetic Consortium\t2\t2\t0\t3\t2\t4\t\t0\t0\n419\t100.0\tkb/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml\tCommunityMech:000198\tSynechococcus-Halomonas Light-Driven PHB Coculture\t2\t2\t0\t3\t2\t6\t\t0\t0\n420\t100.0\tkb/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml\tCommunityMech:000167\tSynechococcus-Pseudomonas Phototrophic PHA and DNT Coculture\t2\t2\t0\t4\t2\t8\t\t0\t0\n421\t100.0\tkb/communities/Synechococcus_Saccharomyces_SPC.yaml\tCommunityMech:000067\tSynechococcus-Saccharomyces Synthetic Photosynthetic Consortium\t2\t2\t0\t3\t2\t4\t\t0\t0\n422\t100.0\tkb/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml\tCommunityMech:000211\tSynechococcus-Shewanella D-Lactate Biophotovoltaic Consortium\t2\t2\t0\t3\t2\t6\t\t0\t0\n423\t100.0\tkb/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml\tCommunityMech:000149\tSynthetic Lichen Synechococcus-Rhodotorula Coculture\t2\t2\t0\t3\t2\t4\t\t0\t0\n424\t100.0\tkb/communities/Syntrophobacter_Methanobacterium_Syntrophy.yaml\tCommunityMech:000068\tSyntrophobacter-Methanobacterium Syntrophic Consortium\t2\t2\t0\t3\t3\t8\t\t0\t0\n425\t100.0\tkb/communities/Syntrophobacter_Methanospirillum_Syntrophy.yaml\tCommunityMech:000069\tSyntrophobacter-Methanospirillum Syntrophic Consortium\t2\t2\t0\t3\t3\t5\t\t0\t0\n426\t100.0\tkb/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml\tCommunityMech:000189\tSyntrophomonas-Methanococcus Butyrate Growth Coordination Coculture\t2\t2\t0\t3\t2\t6\t\t0\t0\n427\t100.0\tkb/communities/Syntrophomonas_Methanospirillum_Syntrophy.yaml\tCommunityMech:000070\tSyntrophomonas-Methanospirillum Syntrophic Consortium\t2\t2\t0\t3\t3\t7\t\t0\t0\n428\t100.0\tkb/communities/Syntrophus_Benzoate_Degrader.yaml\tCommunityMech:000071\tSyntrophus Benzoate Degrader\t2\t2\t0\t3\t2\t6\t\t0\t0\n429\t100.0\tkb/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml\tCommunityMech:000187\tSyntrophus-Methanospirillum Gentianae Benzoate Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n430\t100.0\tkb/communities/THOR_Rhizosphere_Model_Community.yaml\tCommunityMech:000079\tTHOR Rhizosphere Model Community\t3\t3\t0\t4\t2\t5\t\t0\t0\n431\t100.0\tkb/communities/TYQ1_Nematode_Biocontrol_SynCom.yaml\tCommunityMech:000072\tTYQ1 Nematode Biocontrol SynCom\t8\t8\t0\t4\t4\t4\t\t0\t0\n432\t100.0\tkb/communities/Teosinte_Maize_Biofertilizer_SynCom7.yaml\tCommunityMech:000100\tTeosinte-Derived Maize Biofertilizer SynCom7\t4\t4\t0\t6\t2\t12\t\t0\t0\n433\t100.0\tkb/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml\tCommunityMech:000259\tThalassiosira-Marinobacter Marine Snow Coculture\t2\t2\t0\t4\t2\t10\t\t0\t0\n434\t100.0\tkb/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml\tCommunityMech:000162\tThalassiosira-Ruegeria Phycosphere Coculture\t2\t2\t0\t3\t2\t4\t\t0\t0\n435\t100.0\tkb/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml\tCommunityMech:000182\tThermacetogenium-Methanothermobacter Acetate Oxidation Coculture\t2\t2\t0\t3\t2\t8\t\t0\t0\n436\t100.0\tkb/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml\tCommunityMech:000282\tThermophilic Lignocellulose-degrading Composting SynCom\t5\t5\t0\t3\t2\t3\t\t0\t0\n437\t100.0\tkb/communities/Thermophilic_Pyrite_QS_Consortium.yaml\tCommunityMech:000073\tThermophilic Pyrite Quorum Sensing Consortium\t3\t3\t0\t6\t2\t14\t\t0\t0\n438\t100.0\tkb/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml\tCommunityMech:000186\tThermotoga-Methanocaldococcus Hyperthermophilic Syntrophy\t2\t2\t0\t3\t2\t8\t\t0\t0\n439\t100.0\tkb/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml\tCommunityMech:000239\tThiocyanate-Degrading Afipia and Thiobacillus Bioreactor Community\t3\t3\t0\t3\t2\t3\t\t0\t0\n440\t100.0\tkb/communities/Tinto_River_Iron_Cycling_Community.yaml\tCommunityMech:000074\tTinto River Iron Cycling Community\t6\t6\t0\t5\t3\t6\t\t0\t0\n441\t100.0\tkb/communities/Tobacco_Chemotactic_Biocontrol_SynCom.yaml\tCommunityMech:000106\tTobacco Chemotactic Biocontrol SynCom\t2\t2\t0\t3\t2\t4\t\t0\t0\n442\t100.0\tkb/communities/Tomato_Oxylipin_SynCom3.yaml\tCommunityMech:000107\tTomato Oxylipin-Protective SynCom3\t3\t3\t0\t3\t2\t4\t\t0\t0\n443\t100.0\tkb/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml\tCommunityMech:000112\tTribromophenol Anaerobic Bioremediation SynCom\t3\t3\t0\t4\t3\t5\t\t0\t0\n444\t100.0\tkb/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml\tCommunityMech:000188\tTrichococcus-Syntrophomonas-Methanospirillum Butyrate Coculture\t3\t3\t0\t3\t2\t6\t\t0\t0\n445\t100.0\tkb/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml\tCommunityMech:000205\tTrichoderma-E. coli Cellulosic Isobutanol Coculture\t2\t2\t0\t3\t2\t5\t\t0\t0\n446\t100.0\tkb/communities/Trichoderma_Lactate_Platform.yaml\tCommunityMech:000075\tTrichoderma Lactate Platform for SCFA Production\t3\t3\t0\t3\t2\t3\t\t0\t0\n447\t100.0\tkb/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml\tCommunityMech:000270\tTrichoderma-Streptomyces Filamentous Cellulose Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n448\t100.0\tkb/communities/Trichodesmium_Alteromonas_Marine_Consortium.yaml\tCommunityMech:000147\tTrichodesmium-Alteromonas Marine Consortium\t3\t3\t0\t3\t2\t5\t\t0\t0\n449\t100.0\tkb/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml\tCommunityMech:000337\tTropidoatractus magnetotacticus Magnetotactic Ciliate Tripartite Syntrophy\t3\t3\t0\t4\t2\t9\t\t0\t0\n450\t100.0\tkb/communities/Urine_Nitrification_SynCom.yaml\tCommunityMech:000117\tUrine Nitrification Synthetic Microbial Community\t5\t5\t0\t3\t2\t5\t\t0\t0\n451\t100.0\tkb/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml\tCommunityMech:000213\tVariovorax-Cryptococcus Vitamin Cross-Feeding Microcosm\t2\t2\t0\t3\t2\t4\t\t0\t0\n452\t100.0\tkb/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml\tCommunityMech:000328\tWaste-Sludge Electro-Fermentation Biofilm-Suspension Community\t5\t5\t0\t4\t2\t6\t\t0\t0\n453\t100.0\tkb/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.yaml\tCommunityMech:000098\tWatermelon Rhizosphere Fusarium-Protective SynCom8\t2\t2\t0\t3\t2\t7\t\t0\t0\n454\t100.0\tkb/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml\tCommunityMech:000255\tWetland Oxygen-Sulfate Greenhouse Gas Microcosm Community\t3\t3\t0\t3\t2\t6\t\t0\t0\n455\t100.0\tkb/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.yaml\tCommunityMech:000118\tWheat Straw Biogas Pretreatment SynCom\t4\t4\t0\t3\t2\t4\t\t0\t0\n456\t100.0\tkb/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml\tCommunityMech:000354\tYarrowia lipolytica Division-of-Labor Lipid Consortium\t2\t2\t0\t3\t2\t3\t\t0\t0\n457\t100.0\tkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml\tCommunityMech:000164\tYogurt Two-Species Starter Culture\t2\t2\t0\t4\t2\t9\t\t0\t0\n458\t100.0\tkb/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml\tCommunityMech:000210\tZymomonas-E. coli Exometabolomics-Designed Obligate Mutualism\t2\t2\t0\t3\t2\t6\t\t0\t0\n459\t100.0\tkb/communities/hCom2_Complex_Gut_Microbiome.yaml\tCommunityMech:000123\thCom2 Complex Gut Microbiome\t1\t1\t0\t3\t2\t3\t\t0\t0\n460\t100.0\tkb/communities/mCAFEs_Brachypodium_RCC.yaml\tCommunityMech:000078\tm-CAFEs Brachypodium Reduced Complexity Consortia\t10\t10\t0\t6\t2\t11\t\t0\t0\nPYTHONPATH=src uv run python scripts/rank_causal_graph_readiness.py \n"
+ },
+ {
+ "check": "render",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "-m",
+ "communitymech.render"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/render.log",
+ "log_sha256": "fe931a211d7d67a8089fe3ed1e1a6f9f0b2f000ed3d97ac5cc7009d422f6851e",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch44/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch44/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch44/docs/index.html\n"
+ },
+ {
+ "check": "render-repeat",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "-m",
+ "communitymech.render"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/render-repeat.log",
+ "log_sha256": "fe931a211d7d67a8089fe3ed1e1a6f9f0b2f000ed3d97ac5cc7009d422f6851e",
+ "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch44/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch44/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch44/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch44/docs/index.html\n"
+ },
+ {
+ "check": "connectivity-survey",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "-c",
+ "import json, pathlib, runpy\nfn=runpy.run_path('tests/test_community_level_connectivity_credit.py')['_survey']\nresult={}\nfor name,root in [('baseline', pathlib.Path('/private/tmp/communitymech-causal-batch43')), ('current',pathlib.Path.cwd())]:\n paths=sorted(p for r in ['kb/communities','data/isolates'] for p in (root/r).rglob('*.yaml'))\n assert len(paths)==460\n fn.__globals__['record_files']=lambda: paths\n result[name]=fn()\nprint(json.dumps(result))\n"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/connectivity-survey.log",
+ "log_sha256": "3ce99c0fd94f6f1c9f0bea25903cd8710d53d0a10e88f08bf9ca14162530b1e0",
+ "output_tail": "{\"baseline\": {\"records\": 460, \"with_community_level\": 387, \"mixed\": 125, \"community_level_only\": 262, \"taxa\": 1494, \"credited_solely_by_the_rule\": 1221}, \"current\": {\"records\": 460, \"with_community_level\": 387, \"mixed\": 125, \"community_level_only\": 262, \"taxa\": 1494, \"credited_solely_by_the_rule\": 1221}}\n"
+ },
+ {
+ "check": "regressions",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "-m",
+ "pytest",
+ "-q",
+ "tests/test_causal_review_batch10.py",
+ "tests/test_causal_review_batch11.py",
+ "tests/test_causal_review_batch12.py",
+ "tests/test_causal_review_batch13.py",
+ "tests/test_causal_review_batch14.py",
+ "tests/test_causal_review_batch15.py",
+ "tests/test_causal_review_batch16.py",
+ "tests/test_causal_review_batch17.py",
+ "tests/test_causal_review_batch18.py",
+ "tests/test_causal_review_batch19.py",
+ "tests/test_causal_review_batch20.py",
+ "tests/test_causal_review_batch21.py",
+ "tests/test_causal_review_batch22.py",
+ "tests/test_causal_review_batch23.py",
+ "tests/test_causal_review_batch24.py",
+ "tests/test_causal_review_batch25.py",
+ "tests/test_causal_review_batch27.py",
+ "tests/test_causal_review_batch28.py",
+ "tests/test_causal_review_batch29.py",
+ "tests/test_causal_review_batch30.py",
+ "tests/test_causal_review_batch31.py",
+ "tests/test_causal_review_batch32.py",
+ "tests/test_causal_review_batch33.py",
+ "tests/test_causal_review_batch34.py",
+ "tests/test_causal_review_batch35.py",
+ "tests/test_causal_review_batch36.py",
+ "tests/test_causal_review_batch37.py",
+ "tests/test_causal_review_batch38.py",
+ "tests/test_causal_review_batch39.py",
+ "tests/test_causal_review_batch40.py",
+ "tests/test_causal_review_batch41.py",
+ "tests/test_causal_review_batch42.py",
+ "tests/test_causal_review_batch43.py",
+ "tests/test_causal_review_batch44.py",
+ "tests/test_causal_review_batch5.py",
+ "tests/test_causal_review_batch6.py",
+ "tests/test_causal_review_batch7.py",
+ "tests/test_causal_review_batch8.py",
+ "tests/test_causal_review_batch9.py",
+ "tests/test_site_audit_fixes.py",
+ "tests/test_causal_review_inventory.py",
+ "tests/test_rank_causal_graph_readiness.py",
+ "tests/test_network_auditor.py",
+ "tests/test_participating_taxa.py",
+ "tests/test_causal_descriptions_are_published.py",
+ "tests/test_published_pages_name_real_records.py",
+ "tests/test_reference_validator_actually_validates.py",
+ "tests/test_snippet_audit_artefact_classes.py",
+ "tests/test_reference_error_annotation.py",
+ "tests/test_community_level_connectivity_credit.py",
+ "tests/test_no_paywalled_text_in_repo.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/regressions.log",
+ "log_sha256": "6a1a09534a3bf53cb2cda2afb7b05e4e2a5c7e4554a650160d02a8eeec3cb43f",
+ "output_tail": "........................................................................ [ 15%]\n........................................................................ [ 31%]\n........................................................................ [ 47%]\n........................................................................ [ 63%]\n........................................................................ [ 79%]\n........................................................................ [ 95%]\n................... [100%]\n451 passed in 209.31s (0:03:29)\n"
+ },
+ {
+ "check": "black",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black",
+ "--check",
+ "tests/test_causal_review_batch44.py",
+ "tests/test_participating_taxa.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/black.log",
+ "log_sha256": "b9cf511501d306d2bd8355ccb165c8ddc0a6fdd62d7c72c4a7b1795cf8934c8c",
+ "output_tail": "All done! \u2728 \ud83c\udf70 \u2728\n2 files would be left unchanged.\n"
+ },
+ {
+ "check": "ruff",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/wCcxEYRM4HeHgwYPZemHX/bin/ruff",
+ "check",
+ "tests/test_causal_review_batch44.py",
+ "tests/test_participating_taxa.py"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/ruff.log",
+ "log_sha256": "82b3e6a6c090a57601d22943bd23fca9218d1031dbe5a7b754092f9a156b4f18",
+ "output_tail": "All checks passed!\n"
+ },
+ {
+ "check": "diff-check",
+ "command": [
+ "git",
+ "diff",
+ "--check"
+ ],
+ "exit_code": 0,
+ "expected_exit_codes": [
+ 0
+ ],
+ "log": "/private/tmp/communitymech-batch44/diff-check.log",
+ "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
+ "output_tail": ""
+ }
+ ],
+ "limitations": [
+ "Whole records and complete primary main bodies, Methods, tables and embedded captions read. No figure images, separate supplementary files, raw data or analysis code independently audited.",
+ "Repairs only: no new nodes/arrows, no Edison job or provider spend. UFMP retains two explicitly hypothesized arrows; GOM removes two unsupported comparative-mediation arrows; Garlic removes two workflow nodes and does not restore prior arrows.",
+ "Canonical taxonomy, non-graph raw blocks, prior history and all source caches preserved, not certified. UFMP non-graph stereospecific/functional claims and GOM non-graph significance wording remain outside this repair.",
+ "Reference CLI Total checks counts reported issues, not executed checks. SupportingReference coverage remains incomplete under #476; snippet matching is not scientific support or independent source provenance.",
+ "Source-based self-adversarial review is not independent approval or corpus completion.",
+ "HTML descriptions checked by exact parser and repeat renders, not browser screenshots. Post-commit docs-current is a separate publication gate.",
+ "CLI Total checks counts reported issues, not executed checks. All three records exited 0; textual matching does not prove scientific support or independent provenance. SupportingReference coverage remains incomplete under #476."
+ ],
+ "resume_note": "Existing command receipts reused only after command identity, exit status, log hash, record hashes and unchanged source-cache checks. The batch44 helper initially treated the network JSON object as a list; the comparison is corrected and its failure retained without modifying curated bytes.",
+ "snippet_counts_by_record": {
+ "kb/communities/GLBRC_UFMP_Fermentation_Community.yaml": {
+ "MATCH": 27,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/GOM_Oil_Degrading_Consortium.yaml": {
+ "MATCH": 10,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ },
+ "kb/communities/Garlic_Pseudomonas_SynCom6.yaml": {
+ "MATCH": 5,
+ "RENDERING": 0,
+ "ASSEMBLED": 0,
+ "WEAK": 0,
+ "MISMATCH": 0,
+ "NOCONTENT": 0
+ }
+ },
+ "unchanged_raw_blocks": 43,
+ "unchanged_record_files": 457,
+ "unchanged_cache_files": 920,
+ "network_delta": {
+ "existing_findings_preserved": 33,
+ "new_disconnected": 1,
+ "added_findings": {
+ "GLBRC_UFMP_Fermentation_Community": [
+ {
+ "type": "DISCONNECTED",
+ "taxon": "RUG023 sp. (MAG SPH2)",
+ "taxon_id": "NCBITaxon:203691",
+ "taxon_data": {
+ "taxon_term": {
+ "preferred_term": "RUG023 sp. (MAG SPH2)",
+ "term": {
+ "id": "NCBITaxon:203691",
+ "label": "Spirochaetota"
+ },
+ "gtdb_grounding_status": "GROUNDED",
+ "gtdb_classification": {
+ "gtdb_id": "GTDB:p__Spirochaetota",
+ "gtdb_taxon": "Spirochaetota",
+ "gtdb_lineage": "d__Bacteria;p__Spirochaetota",
+ "ncbi_source_id": "NCBITaxon:203691",
+ "majority_fraction": 1.0,
+ "support_genomes": 6024,
+ "total_genomes": 6025,
+ "is_reclassified": false,
+ "mapping_source": "kg-microbe NCBI2GTDB.tsv.gz; GTDB release latest (built 2026-07-25) [grounded at p__ rank; 2 GTDB taxa under the NCBI taxon]"
+ },
+ "notes": "Spirochaetota member (up to 16.1% relative abundance). Produces ethanol which serves as substrate for chain elongation by Firmicutes.\n"
+ },
+ "strain_designation": {
+ "strain_name": "MAG SPH2",
+ "isolation_source": "UFMP bioreactor metagenome"
+ },
+ "functional_role": [
+ "CROSS_FEEDER"
+ ],
+ "abundance_level": "DOMINANT",
+ "abundance_value": "up to 16.1% relative abundance",
+ "evidence": [
+ {
+ "reference": "PMID:37324413",
+ "supports": "SUPPORT",
+ "evidence_source": "IN_VITRO",
+ "snippet": "members of the Firmicutes phylum contribute to the chain-elongation-mediated production of butyric, hexanoic, and octanoic acids, with different microbes using either lactose, ethanol, or lactic acid as the growth substrate\n",
+ "explanation": "RUG023 sp. SPH2 produces ethanol used as chain elongation substrate"
+ }
+ ]
+ },
+ "message": "Taxon 'RUG023 sp. (MAG SPH2)' has no interactions"
+ }
+ ]
+ },
+ "removed_findings": {},
+ "rationale": "Explicit UFMP guild participants expose SPH2 outside existing nodes. No causal link invented to suppress the warning."
+ },
+ "render_determinism": true,
+ "published_description_coverage": {
+ "pages": 456,
+ "nodes": 1452,
+ "arrows": 674
+ },
+ "participant_census": {
+ "measurements": {
+ "baseline": {
+ "records": 460,
+ "with_community_level": 387,
+ "mixed": 125,
+ "community_level_only": 262,
+ "taxa": 1494,
+ "credited_solely_by_the_rule": 1221
+ },
+ "current": {
+ "records": 460,
+ "with_community_level": 387,
+ "mixed": 125,
+ "community_level_only": 262,
+ "taxa": 1494,
+ "credited_solely_by_the_rule": 1221
+ }
+ },
+ "interpretation": "Existing pairwise-vs-community-level survey is unchanged; explicit participant membership exposes one disconnected SPH2. No census bound or production matching logic changed. Participant registry adds exactly three records, 190 to 193."
+ },
+ "corpus": {
+ "scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.",
+ "records": 460,
+ "nodes": 1466,
+ "edges": 682,
+ "records_without_nodes": 8,
+ "records_without_edges": 148,
+ "review_status_counts": {
+ "needs_research": 12,
+ "pending": 281,
+ "reviewed": 167
+ },
+ "structural_defects": []
+ },
+ "tested_file_sha256": {
+ "reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml": "066c435d002774ad3950ddaeb4cc0d22f9cdff48c82e5cf8fbb431ccf1be9bcb",
+ "tests/test_causal_review_batch44.py": "cbeedafaf01b58a8d56a33236a4e1d866accc7ebdfe2408fc3a2f225ae2fad0d",
+ "tests/test_participating_taxa.py": "6080726bb3d197c9af0b45fd6941fc460c8fa0a13f3557575f0cc4b4933ce7a9",
+ "kb/communities/GLBRC_UFMP_Fermentation_Community.yaml": "0cd65716c7bf522b2c8326bdc476339c3196f551d9a2ee92c405d15dc9ea9c92",
+ "kb/communities/GOM_Oil_Degrading_Consortium.yaml": "90d4d45224abfc9829feb8fd1cabde320c410a7a843ea3410c89dda4852cc299",
+ "kb/communities/Garlic_Pseudomonas_SynCom6.yaml": "0052209591a0d6d3e106ad27feaca9dde69645f9725f01ba63e41ebeb5c5c59c",
+ "reports/causal_graph_review/README.md": "7a3f52353d7fa286a75110ca6b068676a86657db5ac8d7650bebf12e659d20f3"
+ },
+ "status": "verified_three_bounded_graph_repairs",
+ "reference_validator_caveat": "CLI Total checks counts reported issues, not executed checks. All three records exited 0; textual matching does not prove scientific support or independent provenance. SupportingReference coverage remains incomplete under #476.",
+ "pre_research_baseline": {
+ "base_commit": "5b0b555a45aa07071a1e9865f46a37842d9ab27e",
+ "base_tree": "92a55c0de17232e3032e43e3f7e13c7023656126",
+ "research_worktree": "/private/tmp/communitymech-causal-batch43",
+ "checks": [
+ {
+ "name": "rank",
+ "command": [
+ "just",
+ "rank-causal-graphs"
+ ],
+ "exit_code": 0,
+ "expected_exit_code": 0,
+ "log": "/private/tmp/communitymech-batch44/baseline-rank.log",
+ "sha256": "f51dc0f3fede01bf4f29e4135bc257d24cc411e00a2dcea0aebd8ea8c5fa7912",
+ "output_tail": "nol_Anaerobic_Bioremediation_SynCom.yaml\tCommunityMech:000112\tTribromophenol Anaerobic Bioremediation SynCom\t3\t3\t0\t4\t3\t5\t\t0\t0\n444\t100.0\tkb/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml\tCommunityMech:000188\tTrichococcus-Syntrophomonas-Methanospirillum Butyrate Coculture\t3\t3\t0\t3\t2\t6\t\t0\t0\n445\t100.0\tkb/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml\tCommunityMech:000205\tTrichoderma-E. coli Cellulosic Isobutanol Coculture\t2\t2\t0\t3\t2\t5\t\t0\t0\n446\t100.0\tkb/communities/Trichoderma_Lactate_Platform.yaml\tCommunityMech:000075\tTrichoderma Lactate Platform for SCFA Production\t3\t3\t0\t3\t2\t3\t\t0\t0\n447\t100.0\tkb/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml\tCommunityMech:000270\tTrichoderma-Streptomyces Filamentous Cellulose Coculture\t2\t2\t0\t3\t2\t7\t\t0\t0\n448\t100.0\tkb/communities/Trichodesmium_Alteromonas_Marine_Consortium.yaml\tCommunityMech:000147\tTrichodesmium-Alteromonas Marine Consortium\t3\t3\t0\t3\t2\t5\t\t0\t0\n449\t100.0\tkb/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml\tCommunityMech:000337\tTropidoatractus magnetotacticus Magnetotactic Ciliate Tripartite Syntrophy\t3\t3\t0\t4\t2\t9\t\t0\t0\n450\t100.0\tkb/communities/Urine_Nitrification_SynCom.yaml\tCommunityMech:000117\tUrine Nitrification Synthetic Microbial Community\t5\t5\t0\t3\t2\t5\t\t0\t0\n451\t100.0\tkb/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml\tCommunityMech:000213\tVariovorax-Cryptococcus Vitamin Cross-Feeding Microcosm\t2\t2\t0\t3\t2\t4\t\t0\t0\n452\t100.0\tkb/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml\tCommunityMech:000328\tWaste-Sludge Electro-Fermentation Biofilm-Suspension Community\t5\t5\t0\t4\t2\t6\t\t0\t0\n453\t100.0\tkb/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.yaml\tCommunityMech:000098\tWatermelon Rhizosphere Fusarium-Protective SynCom8\t2\t2\t0\t3\t2\t7\t\t0\t0\n454\t100.0\tkb/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml\tCommunityMech:000255\tWetland Oxygen-Sulfate Greenhouse Gas Microcosm Community\t3\t3\t0\t3\t2\t6\t\t0\t0\n455\t100.0\tkb/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.yaml\tCommunityMech:000118\tWheat Straw Biogas Pretreatment SynCom\t4\t4\t0\t3\t2\t4\t\t0\t0\n456\t100.0\tkb/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml\tCommunityMech:000354\tYarrowia lipolytica Division-of-Labor Lipid Consortium\t2\t2\t0\t3\t2\t3\t\t0\t0\n457\t100.0\tkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml\tCommunityMech:000164\tYogurt Two-Species Starter Culture\t2\t2\t0\t4\t2\t9\t\t0\t0\n458\t100.0\tkb/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml\tCommunityMech:000210\tZymomonas-E. coli Exometabolomics-Designed Obligate Mutualism\t2\t2\t0\t3\t2\t6\t\t0\t0\n459\t100.0\tkb/communities/hCom2_Complex_Gut_Microbiome.yaml\tCommunityMech:000123\thCom2 Complex Gut Microbiome\t1\t1\t0\t3\t2\t3\t\t0\t0\n460\t100.0\tkb/communities/mCAFEs_Brachypodium_RCC.yaml\tCommunityMech:000078\tm-CAFEs Brachypodium Reduced Complexity Consortia\t10\t10\t0\t6\t2\t11\t\t0\t0\nPYTHONPATH=src uv run python scripts/rank_causal_graph_readiness.py \n"
+ },
+ {
+ "name": "just-network",
+ "command": [
+ "just",
+ "audit-network-json"
+ ],
+ "exit_code": 2,
+ "expected_exit_code": 2,
+ "log": "/private/tmp/communitymech-batch44/baseline-just-network.log",
+ "sha256": "8595db43420d3f0a01c57acd6ad733a531a72e962486d20b4e1c2840dda55bff",
+ "output_tail": "uv run communitymech audit-network --json\nerror: Failed to spawn: `communitymech`\n Caused by: No such file or directory (os error 2)\nerror: recipe `audit-network-json` failed on line 574 with exit code 2\n"
+ },
+ {
+ "name": "network",
+ "command": [
+ "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3",
+ "-m",
+ "communitymech.cli",
+ "audit-network",
+ "--json"
+ ],
+ "exit_code": 1,
+ "expected_exit_code": 1,
+ "log": "/private/tmp/communitymech-batch44/baseline-network.log",
+ "sha256": "c035fe6ed0bbf90371ab58d6557716c51eea79ac628e204173d70075f9efaa26",
+ "output_tail": " 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"
+ },
+ {
+ "name": "downstream",
+ "command": [
+ "rg",
+ "--no-ignore",
+ "--hidden",
+ "-n",
+ "downstream:",
+ "kb/communities",
+ "data/isolates",
+ "--glob",
+ "*.yaml"
+ ],
+ "exit_code": 0,
+ "expected_exit_code": 0,
+ "log": "/private/tmp/communitymech-batch44/baseline-downstream.log",
+ "sha256": "b9898df9790f972ead7785d8fb5a6500fc2deadb4c3c9d2f6332742885cd19a7",
+ "output_tail": "21: downstream:\nkb/communities/At_RSPHERE_SynCom.yaml:207: downstream:\nkb/communities/At_RSPHERE_SynCom.yaml:249: downstream:\nkb/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml:196: downstream:\nkb/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml:242: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:268: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:315: downstream:\nkb/communities/Pepper_Phytophthora_SynCom5.yaml:123: downstream:\nkb/communities/Pepper_Phytophthora_SynCom5.yaml:146: downstream:\nkb/communities/High_Ammonia_Biogas_0B_Butyrate_Oxidizing_Enrichment.yaml:233: downstream:\nkb/communities/BioModels_MODEL2204300001_Kefir_Community_Model.yaml:203: downstream:\nkb/communities/Cable_Bacteria_Photosynthetic_Biofilm_Sediment.yaml:80: downstream:\nkb/communities/Cable_Bacteria_Photosynthetic_Biofilm_Sediment.yaml:117: downstream:\nkb/communities/Rice_P_Uptake_Intercropping_SynCom4.yaml:121: downstream:\nkb/communities/Rice_P_Uptake_Intercropping_SynCom4.yaml:149: downstream:\nkb/communities/Geobacter_Pseudomonas_Formate_Fumarate_Electroactive_Coculture.yaml:142: downstream:\nkb/communities/Geobacter_Pseudomonas_Formate_Fumarate_Electroactive_Coculture.yaml:189: downstream:\nkb/communities/Chromium_Sulfur_Reduction_Enrichment.yaml:159: downstream:\nkb/communities/Chromium_Sulfur_Reduction_Enrichment.yaml:200: downstream:\nkb/communities/Deepwater_Horizon_Deep_Sea_Oil_Plume_Succession.yaml:197: downstream:\nkb/communities/Deepwater_Horizon_Deep_Sea_Oil_Plume_Succession.yaml:241: downstream:\nkb/communities/Miscanthus_REE_Tailings_Nitrogen_SynCom10.yaml:135: downstream:\nkb/communities/Miscanthus_REE_Tailings_Nitrogen_SynCom10.yaml:173: downstream:\nkb/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml:179: downstream:\nkb/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml:232: downstream:\nkb/communities/Clostridium_Thermocellum_Saccharoperbutylacetonicum_Cellulosic_Butanol_Coculture.yaml:147: downstream:\nkb/communities/Clostridium_Thermocellum_Saccharoperbutylacetonicum_Cellulosic_Butanol_Coculture.yaml:222: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:311: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:365: downstream:\nkb/communities/Lac_Pavin_Stratified_Lake_Community.yaml:106: downstream:\nkb/communities/SO3_BS3_Lithium_Battery_Bioleaching_Consortium.yaml:141: downstream:\nkb/communities/Emiliania_Phaeobacter_Dynamic_Interaction.yaml:143: downstream:\nkb/communities/Dual_Bacillus_coagulans_Pseudomonas_putida_Lactic_Acid_Coculture.yaml:134: downstream:\nkb/communities/Dual_Bacillus_coagulans_Pseudomonas_putida_Lactic_Acid_Coculture.yaml:189: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:104: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:127: downstream:\n"
+ }
+ ]
+ },
+ "verification_helper_correction": {
+ "stage": "post-network batch-helper comparison",
+ "failure": "AssertionError: original helper iterated network object keys as if individual findings; SPH2 could not appear in the added key string. Process exited 1 after all 21 per-record gates, inventory and the expected warning-only network command completed.",
+ "cause": "Helper JSON-shape error, not a curated-data or external-gate failure.",
+ "correction": "Assert all 13 existing per-record finding lists exactly preserved; require only a UFMP addition with exactly one DISCONNECTED SPH2 finding; count individual findings across mapping values (34).",
+ "curated_records_changed": false,
+ "validation_before_sha256": "a8d6b79975110404f27406bd6ec2ff6f8e6beda937a878a8aae9a3b017b41213",
+ "generator_sha256": "9f2588113beb9fdc8578f23f8af6c0a6d20976a14c23f344b2d2fff60ce8a0e1",
+ "corrected_helper_sha256": "84654ae692c22fdd14026706ec5da7532cdcc320515d3978d26abf23b84932f7",
+ "completed_command_logs": {
+ "GLBRC_UFMP_Fermentation_Community-schema": {
+ "exit_code": 0,
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de"
+ },
+ "GLBRC_UFMP_Fermentation_Community-strict": {
+ "exit_code": 0,
+ "log_sha256": "eaacc63ae2356405525b474dbdd027d627dbc550a2049a3def60f3adccff74d1"
+ },
+ "GLBRC_UFMP_Fermentation_Community-terms": {
+ "exit_code": 0,
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018"
+ },
+ "GLBRC_UFMP_Fermentation_Community-references": {
+ "exit_code": 0,
+ "log_sha256": "3187c8f05f5c843d732e66fd32595975359559593ae46bea6c1a25da58f1de1d"
+ },
+ "GLBRC_UFMP_Fermentation_Community-snippets": {
+ "exit_code": 0,
+ "log_sha256": "c72869c3cfa80d3275b80461e8b721727d9e301213f59836200303704b4482a6"
+ },
+ "GLBRC_UFMP_Fermentation_Community-rank": {
+ "exit_code": 0,
+ "log_sha256": "85e1b8e2ad70a785cc5dbb225cc1512def82d37ccdc09dac7c83fc5c3bbd7dfc"
+ },
+ "GLBRC_UFMP_Fermentation_Community-history-0": {
+ "exit_code": 0,
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de"
+ },
+ "GOM_Oil_Degrading_Consortium-schema": {
+ "exit_code": 0,
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de"
+ },
+ "GOM_Oil_Degrading_Consortium-strict": {
+ "exit_code": 0,
+ "log_sha256": "8605407e1789a31c5953d5d30bc73d21a013103cae60dee0b2192540c033e164"
+ },
+ "GOM_Oil_Degrading_Consortium-terms": {
+ "exit_code": 0,
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018"
+ },
+ "GOM_Oil_Degrading_Consortium-references": {
+ "exit_code": 0,
+ "log_sha256": "da6a4e764eff73d2b1bd69af11899581fc99d184594ebb99175e8773aa4eb36c"
+ },
+ "GOM_Oil_Degrading_Consortium-snippets": {
+ "exit_code": 0,
+ "log_sha256": "1835af07ebf0373785ca2d25de18c6984a3cbcfdec0d2610f1d8437504408710"
+ },
+ "GOM_Oil_Degrading_Consortium-rank": {
+ "exit_code": 0,
+ "log_sha256": "ce6ee1fc27691a91c523a395e5a64071365b7583ff054b56f9a0d6c7897383ce"
+ },
+ "GOM_Oil_Degrading_Consortium-history-0": {
+ "exit_code": 0,
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de"
+ },
+ "Garlic_Pseudomonas_SynCom6-schema": {
+ "exit_code": 0,
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de"
+ },
+ "Garlic_Pseudomonas_SynCom6-strict": {
+ "exit_code": 0,
+ "log_sha256": "7d713b42d5aa9a041aadbec0f643cf39491e4060abf901cfab73d6652787ffc4"
+ },
+ "Garlic_Pseudomonas_SynCom6-terms": {
+ "exit_code": 0,
+ "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018"
+ },
+ "Garlic_Pseudomonas_SynCom6-references": {
+ "exit_code": 0,
+ "log_sha256": "761fd706ccf070ad05c3317432f154ca03fee2c63fda836ee8a276ddfe7e0fac"
+ },
+ "Garlic_Pseudomonas_SynCom6-snippets": {
+ "exit_code": 0,
+ "log_sha256": "84702240edbf592338b928c30492b65468ff15be9ea1aa2839e89d52f40f4850"
+ },
+ "Garlic_Pseudomonas_SynCom6-rank": {
+ "exit_code": 0,
+ "log_sha256": "e3d01e622541847c3a8dfeaa8ddcca05805334fc256b2bafd9b3818a6904da31"
+ },
+ "Garlic_Pseudomonas_SynCom6-history-0": {
+ "exit_code": 0,
+ "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de"
+ },
+ "inventory": {
+ "exit_code": 0,
+ "log_sha256": "305861716009c1432129ebc7077973540459535a2fb2ce3fb4e3f1c5f3461a32"
+ },
+ "network": {
+ "exit_code": 1,
+ "log_sha256": "71a1e46fdd5d7c44e1766fabc85efb996c70258e3e64018891cfa94bb22fb13e"
+ }
+ },
+ "continuation": "Resume only after existing command identities, expected exits, log hashes, target hashes and cache preservation checks. No test pass claimed from the incomplete first run."
+ }
+}
diff --git a/tests/test_causal_review_batch44.py b/tests/test_causal_review_batch44.py
new file mode 100644
index 000000000..341c4ec2b
--- /dev/null
+++ b/tests/test_causal_review_batch44.py
@@ -0,0 +1,105 @@
+"""Guard inferred flux, gross removal and host endpoints against stronger claims."""
+
+import hashlib
+import runpy
+from pathlib import Path
+
+import yaml
+
+ROOT = Path(__file__).resolve().parents[1]
+LEDGER = ROOT / "reports/causal_graph_review/decisions/20261006-three-records-batch44.yaml"
+
+
+def records():
+ ledger = yaml.safe_load(LEDGER.read_text())
+ return ledger, [yaml.safe_load((ROOT / r["path"]).read_text()) for r in ledger["records"]]
+
+
+def test_ufmp_roles_and_both_arrows_remain_hypotheses():
+ _, (doc, _, _) = records()
+ first, chain, transfer = doc["ecological_interactions"]
+ for node in (first, chain, transfer):
+ assert node["description"].startswith("HYPOTHESIZED:")
+ assert "source_taxon" not in node and "target_taxon" not in node
+ assert "interaction_type" not in node
+ assert all(e["supports"] == "PARTIAL" for e in node["evidence"])
+ assert all(e["evidence_source"] == "COMPUTATIONAL" for e in node["evidence"])
+ assert all(m["term"]["id"] != "CHEBI:422" for m in node.get("metabolites", []))
+ assert [len(n["participating_taxa"]) for n in (first, chain, transfer)] == [6, 3, 5]
+ assert "LCO1 is proposed to use lactose directly" in chain["description"]
+ assert "assignment is inconclusive" in chain["description"]
+ assert "predominantly produce butyrate" in chain["description"]
+ assert "did not directly trace ATO3-to-CLOS1" in transfer["description"]
+ assert first["downstream"][0]["target"] == transfer["name"]
+ assert transfer["downstream"][0]["target"] == chain["name"]
+ for node in (first, transfer):
+ assert node["downstream"][0]["description"].startswith("HYPOTHESIZED:")
+
+
+def test_ufmp_precise_guilds_do_not_invent_an_sph2_interaction():
+ _, (doc, _, _) = records()
+ ranker = runpy.run_path(str(ROOT / "scripts/rank_causal_graph_readiness.py"))
+ connected = ranker["_connected_taxa"](doc["ecological_interactions"], doc["taxonomy"])
+ canonical = {t["taxon_term"]["preferred_term"] for t in doc["taxonomy"]}
+ assert len(connected) == 9
+ assert canonical - connected == {"RUG023 sp. (MAG SPH2)"}
+ assert "disconnected warning" in doc["discussions"][-1]["rationale"]
+
+
+def test_gom_metrics_and_inoculum_limit_the_comparative_claim():
+ _, (_, doc, _) = records()
+ alk, arom, output = doc["ecological_interactions"]
+ assert "60% at day 30" in alk["description"]
+ assert "45% at day 75" in alk["description"]
+ assert "not all 12" in arom["description"]
+ assert "16% at day 75" in arom["description"]
+ assert all(m["term"]["id"] != "CHEBI:28851" for m in arom["metabolites"])
+ assert "did not subtract abiotic-control removal" in output["description"]
+ assert "1e8 CFU/mL per strain" in output["description"]
+ assert "not a total-inoculum-matched synergy test" in output["description"]
+ for node in doc["ecological_interactions"]:
+ assert len(node["participating_taxa"]) == 4
+ assert "interaction_type" not in node and "downstream" not in node
+
+
+def test_garlic_workflow_is_not_an_interaction_or_a_garlic_yield_assay():
+ _, (_, _, doc) = records()
+ (node,) = doc["ecological_interactions"]
+ assert node["name"] == "Radish Seedling Length Response to Pseudomonas SynCom6"
+ assert node["evidence"][0]["evidence_source"] == "IN_VIVO"
+ assert "two-day incubator assay" in node["description"]
+ assert "not a garlic field-yield result" in node["description"]
+ assert "unresolved umbrella" in node["description"]
+ assert "B8-7 alone did not promote growth" in node["description"]
+ assert "downstream" not in node
+ assert node["participating_taxa"][0]["term"] == doc["taxonomy"][0]["taxon_term"]["term"]
+ assert "2026-10-02" in doc["discussions"][-1]["rationale"]
+
+
+def test_every_original_node_and_arrow_has_a_decision():
+ ledger, docs = records()
+ assert ledger["review_mode"] == "source_based_self_adversarial_review"
+ assert ledger["independent_approval"] is False
+ assert ledger["issues"] == [1474, 1475, 1476]
+ assert sum(len(r["node_decisions"]) for r in ledger["records"]) == 7
+ assert sum(len(r["removed_node_decisions"]) for r in ledger["records"]) == 2
+ assert sum(len(r["retained_edge_decisions"]) for r in ledger["records"]) == 2
+ assert sum(len(r["removed_edge_decisions"]) for r in ledger["records"]) == 2
+ for row, doc in zip(ledger["records"], docs, strict=True):
+ assert row["status"] == "reviewed"
+ assert row["record_sha256"] == hashlib.sha256((ROOT / row["path"]).read_bytes()).hexdigest()
+ assert len(row["history_files"]) == 1 and (ROOT / row["history_files"][0]).is_file()
+ assert doc["curation_history"][-1]["llm_assisted"] is True
+ assert doc["discussions"][-1]["status"] == "OPEN"
+ assert len(row["node_decisions"]) + len(row["removed_node_decisions"]) == 3
+
+
+def test_source_hashes_and_scope_are_not_overcredited():
+ ledger, _ = records()
+ for path, digest in ledger["reference_cache_original_hashes"].items():
+ assert hashlib.sha256((ROOT / path).read_bytes()).hexdigest() == digest
+ assert ledger["issue_deduplication"]["ignored_hidden_local_search"] is True
+ gom = ledger["records"][1]["source_review"]["doi:10.3389/fmars.2022.962071"]
+ assert "one Methods sentence" in gom["scope"]
+ assert len(gom["publisher"]["html_sha256"]) == 64
+ assert any("non-graph raw blocks" in text for text in ledger["limitations"])
diff --git a/tests/test_participating_taxa.py b/tests/test_participating_taxa.py
index 4d50043dd..0a3550a70 100644
--- a/tests/test_participating_taxa.py
+++ b/tests/test_participating_taxa.py
@@ -273,6 +273,9 @@ def test_a_curie_is_ambiguous_where_members_share_an_id(example):
"Fucoidan_Seven_Degrader_Combinatorial_SynCom.yaml",
"GENIA_NineMember_MultiPollutant_Bioremediation_SynCom.yaml",
"GLBRC_Populus_Variovorax_SynCom28.yaml",
+ "GLBRC_UFMP_Fermentation_Community.yaml",
+ "GOM_Oil_Degrading_Consortium.yaml",
+ "Garlic_Pseudomonas_SynCom6.yaml",
"Geobacter_Methanosarcina_DIET.yaml",
"Ginseng_CL95_Rusty_Root_Rot_Biocontrol_SynCom.yaml",
"Glutamicibacter_S11_Aquaculture_Nitrogen_Removal_SynCom.yaml",