diff --git a/docs/communities/EcoFAB_Ring_Trial_SynCom17.html b/docs/communities/EcoFAB_Ring_Trial_SynCom17.html index 0eb4b1c20..54f5fa214 100644 --- a/docs/communities/EcoFAB_Ring_Trial_SynCom17.html +++ b/docs/communities/EcoFAB_Ring_Trial_SynCom17.html @@ -1111,7 +1111,7 @@

Ecological Interactions

Ecological interaction network for EcoFAB 2.0 Root Microbiome Ring Trial SynCom17 - Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction (cross-feeding, competition, niche partitioning, colonization facilitation). + Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction.
@@ -1119,23 +1119,8 @@

Ecological Interactions

Cross-feeding -
-
- Competition -
-
- Niche partitioning -
-
- Colonization facilitation + aria-hidden="true" data-symbol="symbolTriangle2" + data-color="#929caa"> Other
@@ -1144,28 +1129,53 @@

Ecological Interactions

SynCom17 EcoFAB Ring-Trial Perturbation

- COLONIZATION_FACILITATION
-

The full 17-member switchgrass-rhizosphere SynCom was introduced into Brachypodium distachyon EcoFAB 2.0 devices as a standardized inoculum, then compared with axenic, SynCom16, and plant-free medium controls across five laboratories. -

+

The full 17-member inoculum was applied to 10-day-old Brachypodium distachyon plants in EcoFAB 2.0 devices and compared with axenic plants, SynCom16 lacking OAS925, and plant-free medium controls in five laboratories. Its three downstream arrows represent whole-treatment effects on root composition, bulk spent-medium profiles and plant development, not a claim that protocol standardization itself is a biological mechanism or that every member facilitates colonization.

+

Participating Taxa: + Paraburkholderia sp. OAS925, + Rhodococcus sp. OAS809, + + Mycobacterium sp. OAE908, + + Methylobacterium sp. OAE515, + + Variovorax sp. OAS795, + + Rhizobium sp. OAE497, + + Bosea sp. OAE506, + + Bradyrhizobium sp. OAE829, + + Lysobacter sp. OAE881, + + Arthrobacter sp. OAP107, + + Marmoricola sp. OAE513, + + Chitinophaga sp. OAE865, + + Mucilaginibacter sp. OAE612, + + Niastella sp. OAS944, + + Gottfriedia sp. OAE603, + + Brevibacillus sp. OAP136, + + Paenibacillus sp. OAE614 + +

-

Biological Processes:

- @@ -1174,20 +1184,17 @@

SynCom17 EcoFAB Ring-Trial Perturbation

→ Paraburkholderia-Dominated SynCom17 Root Assembly -

The standardized SynCom17 treatment yielded root communities that reproducibly converged on high Paraburkholderia abundance across laboratories. -

+

SynCom17 inoculation supplied the 17-member community from which the OAS925-dominated root profile developed by 22 DAI. The SynCom16 omission comparison supports an inoculum-composition effect, not identification of the molecular mechanism or absolute loss of the other members.

→ Treatment-Structured Rhizosphere Exometabolites -

SynCom17 was one of the ring-trial treatments that drove reproducible, treatment-dependent changes in the spent EcoFAB medium metabolome. -

+

SynCom17 inoculation altered the plant-microbe system and thereby changed the measured bulk spent-medium metabolite profile relative to the control treatments. This is a treatment-level effect; microbial versus plant production, uptake and extracellular enzyme activity were not separated.

→ SynCom17 Plant Biomass and Root Development Decrease -

The standardized SynCom17 treatment caused reproducible B. distachyon root-development decreases across laboratories and reduced shoot biomass relative to axenic plants. -

+

The SynCom17 inoculation treatment reduced shoot biomass in the combined-laboratory comparison with axenic plants and reduced root development from 14 DAI onward. The experiment establishes a whole-treatment response, not OAS925-only toxicity, competition for a specific nutrient or one necessary member.

@@ -1217,34 +1224,17 @@

Evidence

Paraburkholderia Acid-Tolerant Root Colonization Traits

- COLONIZATION_FACILITATION
-

Paraburkholderia sp. OAS925 was the only SynCom17 member whose genome carried the surveyed acid-resistance systems and a type III secretion system; fluorescence microscopy also detected early root-tip and maturation-zone colonization, biofilm formation, and active swimming near B. distachyon roots. -

- - - - -

Participating Taxa: +

OAS925 carried uniquely detected surveyed acid-resistance and type III secretion modules among the 17 genomes. Separate RFP-isolate plant assays showed root colonization at 1 DAI and biofilm at 3 DAI; separate culture assays showed high liquid growth and acid-tolerant motility. OAS925 was sixth, not first, in the biofilm assay. These are one-strain observations, not facilitation of another taxon. No selective gene or trait perturbation established which mechanism causes dominance in SynCom17.

- Paraburkholderia sp. OAS925 -

+

Source Taxon: Paraburkholderia sp. OAS925

-

Biological Processes:

- @@ -1253,8 +1243,7 @@

Paraburkholderia Acid-Tolerant Root Colonization Traits

→ Paraburkholderia-Dominated SynCom17 Root Assembly -

Acid-resistance genes, a unique T3SS module, biofilm formation, and rapid acidic-condition motility provided candidate mechanisms for Paraburkholderia dominance in the full SynCom17 root microbiome. -

+

HYPOTHESIZED - acid-tolerant motility, colonization traits and associated genomic modules may help OAS925 establish and expand on roots, contributing to its relative dominance. Separate isolate assays and gene annotation support candidate mechanisms, but none was selectively disrupted or rescued in the 17-member community.

@@ -1297,10 +1286,8 @@

Evidence

Paraburkholderia-Dominated SynCom17 Root Assembly

- COMPETITION
-

By 22 days after inoculation, SynCom17 root microbiomes were dominated by Paraburkholderia sp. OAS925 across all five laboratories, whereas the Paraburkholderia-free SynCom16 condition produced more variable roots enriched in Rhodococcus, Mycobacterium, and Methylobacterium. -

+

At 22 DAI, OAS925 accounted for about 98% of root bacterial 16S reads in SynCom17 across the five laboratories. SynCom16 lacking OAS925 had more variable relative profiles dominated by Rhodococcus, Mycobacterium and Methylobacterium. The listed participants identify the inoculum roster, not equal final abundance or proven competition. Relative read dominance does not establish extinction, absolute suppression of the other members, or mediation of the spent-medium response.

@@ -1313,37 +1300,41 @@

Paraburkholderia-Dominated SynCom17 Root Assembly

Mycobacterium sp. OAE908, - Methylobacterium sp. OAE515 + Methylobacterium sp. OAE515, -

+ Variovorax sp. OAS795, + Rhizobium sp. OAE497, + Bosea sp. OAE506, + Bradyrhizobium sp. OAE829, + Lysobacter sp. OAE881, -

Biological Processes:

- -
- Downstream Effects: -
- → Treatment-Structured Rhizosphere Exometabolites -

The Paraburkholderia-dominated SynCom17 root community modulated the rhizosphere exometabolite profile relative to axenic and SynCom16 treatments, including decreased amino-acid relative concentrations. -

-
-
@@ -1370,13 +1361,49 @@

Evidence

Treatment-Structured Rhizosphere Exometabolites

- CROSS_FEEDING
-

Targeted LC-MS/MS of spent EcoFAB medium resolved treatment-dependent metabolite clusters, including diverse metabolites increased in SynCom17, an amino-acid-rich cluster with lower relative concentrations in SynCom17, and a smaller nucleoside cluster increased in SynCom16 or in both SynCom treatments. -

+

Bulk spent EcoFAB medium showed treatment-dependent targeted and untargeted LC-MS profiles, including an amino-acid-rich cluster depleted under SynCom17 and other clusters elevated under SynCom17 or SynCom16. This is net extracellular abundance in a plant-microbe system, not identified donor-to-recipient cross-feeding. Plant or microbial production and uptake, and extracellular enzyme activity, remain alternative contributors; OAS925-specific amino-acid flux was not isolated.

+ + + + +

Participating Taxa: + + Paraburkholderia sp. OAS925, + + Rhodococcus sp. OAS809, + + Mycobacterium sp. OAE908, + + Methylobacterium sp. OAE515, + Variovorax sp. OAS795, + Rhizobium sp. OAE497, + Bosea sp. OAE506, + + Bradyrhizobium sp. OAE829, + + Lysobacter sp. OAE881, + + Arthrobacter sp. OAP107, + + Marmoricola sp. OAE513, + + Chitinophaga sp. OAE865, + + Mucilaginibacter sp. OAE612, + + Niastella sp. OAS944, + + Gottfriedia sp. OAE603, + + Brevibacillus sp. OAP136, + + Paenibacillus sp. OAE614 + +

@@ -1417,79 +1444,64 @@

Evidence

SynCom17 Plant Biomass and Root Development Decrease

- COMPETITION
-

Compared with axenic plants, the SynCom17 treatment significantly decreased shoot fresh weight and dry weight in the combined laboratory analysis and consistently reduced root development from 14 days after inoculation onward. -

- - - - +

Compared with axenic plants, SynCom17 reduced shoot fresh and dry biomass in the combined-laboratory analysis and reduced root development from 14 DAI onward. SynCom16 had a smaller shoot effect. These are whole-treatment plant outcomes with laboratory variation, not a demonstrated microbial competition mechanism, direct OAS925-only effect or reciprocal symbiosis.

-

Biological Processes:

-
    +

    Participating Taxa: -

  • - growth - (GO:0040007) -
  • + Paraburkholderia sp. OAS925, -
+ Rhodococcus sp. OAS809, + Mycobacterium sp. OAE908, + Methylobacterium sp. OAE515, + Variovorax sp. OAS795, + Rhizobium sp. OAE497, -

Evidence

-
    + Bosea sp. OAE506, -
  • -
    + Bradyrhizobium sp. OAE829, - PMID:40920748 + Lysobacter sp. OAE881, - - SUPPORT (IN_VITRO) -
    + Arthrobacter sp. OAP107, -
    "SynCom17 caused a consistent decrease in root development observed after 14 DAI onwards"
    + Marmoricola sp. OAE513, -
  • + Chitinophaga sp. OAE865, -
+ Mucilaginibacter sp. OAE612, -
- -
-
-

Nitrogen-Status EcoFAB Root Exudation

- NICHE_PARTITIONING -
-

Brachypodium distachyon grown in EcoFAB 2.0 altered its root-exudate metabolite profile in response to nitrate, ammonium, ammonium nitrate, and nitrogen starvation; nitrogen deficiency reduced nitrogen-containing compounds and increased shikimate-phenylpropanoid metabolites. -

+ Niastella sp. OAS944, + Gottfriedia sp. OAE603, + Brevibacillus sp. OAP136, + Paenibacillus sp. OAE614 +

-

Metabolites: - shikimic acid - (CHEBI:16119), - p-coumaric acid - (CHEBI:32374) -

+

Biological Processes:

+ @@ -1501,13 +1513,13 @@

Evidence

  • - doi:10.1126/sciadv.adg7888 + PMID:40920748 - SUPPORT (IN_VITRO)
    -
    "nitrogen deficiency decreased nitrogen-containing compounds but increased shikimates-phenylpropanoids"
    +
    "SynCom17 caused a consistent decrease in root development observed after 14 DAI onwards"
  • @@ -1635,6 +1647,25 @@

    Associated Datasets

    +
    +

    Knowledge gaps & discussions (1)

    + +
    +

    + KNOWLEDGE_GAP + OPEN + Which OAS925 traits and plant-microbe fluxes mediate the SynCom17 outcomes? +

    +

    The three treatment arrows are retained, the trait-to-assembly arrow remains HYPOTHESIZED, and the assembly-to-metabolome arrow is removed because a common treatment does not isolate mediation. Single-isolate assays, relative reads and net spent-medium profiles do not resolve trait necessity or cross-feeding. The removed nitrogen-status node belongs to doi:10.1126/sciadv.adg7888, whose EcoFAB plants were sterile and whose 14 bacterial bioassays were individual cultures, not the SynCom17 trial. Protocol and non-graph role/uptake claims remain under #1427; canonical Allobosea grounding is preserved.

    + +

    Attaches to: ecological_interactions#SynCom17 EcoFAB Ring-Trial Perturbation, ecological_interactions#Paraburkholderia Acid-Tolerant Root Colonization Traits, ecological_interactions#Paraburkholderia-Dominated SynCom17 Root Assembly, ecological_interactions#Treatment-Structured Rhizosphere Exometabolites, ecological_interactions#SynCom17 Plant Biomass and Root Development Decrease

    + + + + +
    + +
    @@ -1962,15 +1993,11 @@

    Evidence

    (function() { var intId = "interaction:0"; - var intType = "COLONIZATION_FACILITATION"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; - - processes.push("symbiotic process"); - - var evidenceCount = 1; nodes.push({ @@ -1986,19 +2013,58 @@

    Evidence

    + var participantKeys = [ + + "Paraburkholderia sp. OAS925", + + "Rhodococcus sp. OAS809", + + "Mycobacterium sp. OAE908", + + "Methylobacterium sp. OAE515", + + "Variovorax sp. OAS795", + + "Rhizobium sp. OAE497", + + "Bosea sp. OAE506", + + "Bradyrhizobium sp. OAE829", + + "Lysobacter sp. OAE881", + + "Arthrobacter sp. OAP107", + + "Marmoricola sp. OAE513", + + "Chitinophaga sp. OAE865", + + "Mucilaginibacter sp. OAE612", + + "Niastella sp. OAS944", + + "Gottfriedia sp. OAE603", + + "Brevibacillus sp. OAP136", + + "Paenibacillus sp. OAE614" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { var intId = "interaction:1"; - var intType = "COLONIZATION_FACILITATION"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; - - processes.push("symbiotic process"); - - var evidenceCount = 2; nodes.push({ @@ -2012,32 +2078,22 @@

    Evidence

    }); + var srcKey = "Paraburkholderia sp. OAS925"; + if (taxonNodeIds[srcKey]) { + links.push({ source: taxonNodeIds[srcKey], target: intId }); + } - var participantKeys = [ - - "Paraburkholderia sp. OAS925" - - ]; - participantKeys.forEach(function(key) { - if (taxonNodeIds[key]) { - links.push({ source: taxonNodeIds[key], target: intId }); - } - }); })(); (function() { var intId = "interaction:2"; - var intType = "COMPETITION"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; - - processes.push("interspecies interaction between organisms"); - - var evidenceCount = 1; nodes.push({ @@ -2061,7 +2117,33 @@

    Evidence

    "Mycobacterium sp. OAE908", - "Methylobacterium sp. OAE515" + "Methylobacterium sp. OAE515", + + "Variovorax sp. OAS795", + + "Rhizobium sp. OAE497", + + "Bosea sp. OAE506", + + "Bradyrhizobium sp. OAE829", + + "Lysobacter sp. OAE881", + + "Arthrobacter sp. OAP107", + + "Marmoricola sp. OAE513", + + "Chitinophaga sp. OAE865", + + "Mucilaginibacter sp. OAE612", + + "Niastella sp. OAS944", + + "Gottfriedia sp. OAE603", + + "Brevibacillus sp. OAP136", + + "Paenibacillus sp. OAE614" ]; participantKeys.forEach(function(key) { @@ -2074,7 +2156,7 @@

    Evidence

    (function() { var intId = "interaction:3"; - var intType = "CROSS_FEEDING"; + var intType = "UNKNOWN"; var metabolites = []; @@ -2098,11 +2180,54 @@

    Evidence

    + var participantKeys = [ + + "Paraburkholderia sp. OAS925", + + "Rhodococcus sp. OAS809", + + "Mycobacterium sp. OAE908", + + "Methylobacterium sp. OAE515", + + "Variovorax sp. OAS795", + + "Rhizobium sp. OAE497", + + "Bosea sp. OAE506", + + "Bradyrhizobium sp. OAE829", + + "Lysobacter sp. OAE881", + + "Arthrobacter sp. OAP107", + + "Marmoricola sp. OAE513", + + "Chitinophaga sp. OAE865", + + "Mucilaginibacter sp. OAE612", + + "Niastella sp. OAS944", + + "Gottfriedia sp. OAE603", + + "Brevibacillus sp. OAP136", + + "Paenibacillus sp. OAE614" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { var intId = "interaction:4"; - var intType = "COMPETITION"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; @@ -2126,35 +2251,48 @@

    Evidence

    - })(); + var participantKeys = [ - (function() { - var intId = "interaction:5"; - var intType = "NICHE_PARTITIONING"; - var metabolites = []; + "Paraburkholderia sp. OAS925", + "Rhodococcus sp. OAS809", - metabolites.push("shikimic acid"); + "Mycobacterium sp. OAE908", - metabolites.push("p-coumaric acid"); + "Methylobacterium sp. OAE515", + "Variovorax sp. OAS795", - var processes = []; + "Rhizobium sp. OAE497", - var evidenceCount = 1; + "Bosea sp. OAE506", - nodes.push({ - id: intId, - label: "Nitrogen-Status EcoFAB Root Exudation", - type: "interaction", - interactionType: intType, - metabolites: metabolites, - processes: processes, - evidenceCount: evidenceCount - }); + "Bradyrhizobium sp. OAE829", + + "Lysobacter sp. OAE881", + + "Arthrobacter sp. OAP107", + + "Marmoricola sp. OAE513", + + "Chitinophaga sp. OAE865", + + "Mucilaginibacter sp. OAE612", + "Niastella sp. OAS944", + "Gottfriedia sp. OAE603", + "Brevibacillus sp. OAP136", + + "Paenibacillus sp. OAE614" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); })(); @@ -2177,7 +2315,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 = 23; + var nodeCount = 22; var height = Math.max(500, 400 + nodeCount * 20); svg.attr("width", width).attr("height", height); diff --git a/docs/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.html b/docs/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.html index 3707e7e61..b8ae1abf4 100644 --- a/docs/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.html +++ b/docs/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.html @@ -587,7 +587,7 @@

    Ecological Interactions

    Cysteine provision enabling cooperative 2'-fucosyllactose degradation

    CROSS_FEEDING
    -

    E. coli supplies cysteine to the auxotrophic B. bifidum, facilitating cooperative degradation of 2'-fucosyllactose, the predominant human milk oligosaccharide.

    +

    In the nutrient-limited in vitro model, E. coli K12 supplies the cysteine requirement of an infant-stool B. bifidum isolate, enabling growth and 2-fucosyllactose degradation without added cysteine or casamino acids. The delta-cysE donor control impaired coculture growth and ethanol-killed partner controls failed to support it. This supports cysteine-dependent cooperation, not a measured cysteine export rate or proof of active secretion rather than overflow or lysis.

    Source Taxon: Escherichia coli

    @@ -619,8 +619,7 @@

    Cysteine provision enabling cooperative 2'-fucosyllactose degradation → Monosaccharide return sustaining E. coli growth -

    Cysteine supplied by E. coli enables B. bifidum to cooperatively degrade 2'-fucosyllactose, liberating monosaccharides that return carbon to E. coli. -

    +

    Cysteine-dependent support from E. coli permits the auxotrophic B. bifidum partner to grow and degrade 2-fucosyllactose under the tested nutrient limitation, releasing sugar substrates usable by E. coli. The mutant and killed-partner controls support the dependency; the sugar-consumption assay separately required spent-medium pH adjustment to 6.3.

    @@ -643,6 +642,19 @@

    Evidence

    +
  • +
    + + PMID:42020426 + + - SUPPORT (IN_VITRO) +
    + +
    "observing a significant impairment of growth"
    + +
  • + @@ -652,7 +664,7 @@

    Evidence

    Monosaccharide return sustaining E. coli growth

    CROSS_FEEDING -

    Monosaccharides liberated from cooperative 2'-fucosyllactose degradation sustain E. coli growth, completing a cooperative cross-feeding loop that may help regulate E. coli abundance in the infant gut.

    +

    B. bifidum degraded 2-fucosyllactose and left fucose and galactose that E. coli K12 subsequently consumed, measured by chromatography. E. coli grew in this spent medium only after pH readjustment from 4.3 to 6.3. This measured in vitro return of carbon does not establish that the same exchange controls E. coli abundance in infants or quantify sugar-to-cysteine flux in coculture.

    Source Taxon: Bifidobacterium bifidum

    @@ -680,14 +692,7 @@

    Monosaccharide return sustaining E. coli growth

    → Cysteine provision enabling cooperative 2'-fucosyllactose degradation -

    Monosaccharides returned from B. bifidum sustain E. coli growth and close the cooperative loop that maintains cysteine provisioning to the auxotroph. -

    -
    - -
    - → Cooperative Infant-Gut HMO Mutualism -

    Reciprocal cysteine and monosaccharide exchange completes the cooperative HMO-fed loop between E. coli and B. bifidum. -

    +

    PARTIAL - accessible HMO-derived sugars sustain E. coli growth and can maintain the donor population supporting the cysteine-dependent partner. Reciprocal nutrient dependence is experimentally supported, but a time-resolved sugar-to-cysteine feedback gain or isotope-resolved flux was not measured; the separate spent-medium assay required pH 6.3.

    @@ -710,6 +715,32 @@

    Evidence

    +
  • +
    + + PMID:42020426 + + - SUPPORT (IN_VITRO) +
    + +
    "B. bifidum efficiently degraded 2’FL, but left galactose and fucose unconsumed"
    + +
  • + +
  • +
    + + PMID:42020426 + + - SUPPORT (IN_VITRO) +
    + +
    "growth only when the pH was adjusted to its initial value of 6.3"
    + +
  • + @@ -719,8 +750,7 @@

    Evidence

    Cooperative Infant-Gut HMO Mutualism

    MUTUALISM -

    E. coli cysteine provision to B. bifidum and B. bifidum monosaccharide liberation from 2'-fucosyllactose form a reciprocal, cooperative cross-feeding loop that sustains both partners in the infant-gut two-member model. -

    +

    E. coli K12 and the infant-stool B. bifidum isolate co-grew in modified M9 with 0.5% 2-fucosyllactose and without added cysteine or casamino acids. Cysteine dependence, viable-partner controls and measured sugar utilization support reciprocal benefit in this restricted laboratory model. This node summarizes that exchange rather than adding a separate downstream outcome. Its prevalence, strength and effect on E. coli abundance in living infants remain untested.

    @@ -793,6 +823,25 @@

    Evidence

    +
    +

    Knowledge gaps & discussions (1)

    + +
    +

    + KNOWLEDGE_GAP + OPEN + How strongly does the measured laboratory exchange operate in the infant gut? +

    +

    The K12 donor and infant B. bifidum isolate support nutrient-limited reciprocal cooperation, not a universal species-level interaction or demonstrated regulation of E. coli abundance in vivo. Chromatographic sugar data and a delta-cysE control do not resolve cysteine release route, export rate or isotope-resolved feedback. The pH-adjusted spent-medium assay is distinct from the live coculture. The sugar-to-mutualism summary arrow is removed as a part/whole restatement, not an independently supported causal consequence. Experimental-strain and 0.1% screening versus 0.5% coculture metadata remain under #1428.

    + +

    Attaches to: ecological_interactions#Cysteine provision enabling cooperative 2'-fucosyllactose degradation, ecological_interactions#Monosaccharide return sustaining E. coli growth, ecological_interactions#Cooperative Infant-Gut HMO Mutualism

    + + + + +
    + +
    @@ -991,7 +1040,7 @@

    Evidence

    var processes = []; - var evidenceCount = 1; + var evidenceCount = 2; nodes.push({ id: intId, @@ -1029,7 +1078,7 @@

    Evidence

    var processes = []; - var evidenceCount = 1; + var evidenceCount = 3; nodes.push({ id: intId, diff --git a/docs/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.html b/docs/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.html index 1172082b1..6dc60f04f 100644 --- a/docs/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.html +++ b/docs/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.html @@ -566,7 +566,7 @@

    Ecological Interactions

    GL10-XL12 glucose-xylose niche partitioning

    NICHE_PARTITIONING -

    GL10 and XL12 partition mixed glucose and xylose utilization as two E. coli metabolic specialists, enabling simultaneous hexose and pentose consumption and D-lactate accumulation in the synthetic consortium.

    +

    GL10 and XL12 show partial, overlapping carbon-source specialization in the tested mixed-glucose/xylose fermentation. GL10 retains xylose metabolism in single-sugar medium, while XL12 still consumes glucose; these are not exclusive substrate users. The 1:1 consortium produced 3.76 g/L D-lactate at 36 h under the baseline conditions. NICHE_PARTITIONING denotes this engineered division of labor, not strain-resolved coculture flux, direct interstrain cross-feeding, partner-dependent growth or universal superiority across shaking speeds and inoculum ratios.

    @@ -636,7 +636,7 @@

    Evidence

    PMID:42038008 - - SUPPORT (IN_VITRO) + - PARTIAL (IN_VITRO)
    "Microbial consortium using GL10 and XL12 with the inoculation ratio of 1:1 achieved complete glucose depletion and 53.21% xylose utilization simultaneously."
    @@ -656,6 +656,32 @@

    Evidence

    +
  • +
    + + PMID:42038008 + + - SUPPORT (IN_VITRO) +
    + +
    "GL10 was not modified to block xylose metabolism"
    + +
  • + +
  • +
    + + PMID:42038008 + + - SUPPORT (IN_VITRO) +
    + +
    "XL12 co-utilized glucose and xylose simultaneously"
    + +
  • + @@ -666,7 +692,7 @@

    Evidence

    -

    Knowledge gaps & discussions (1)

    +

    Knowledge gaps & discussions (2)

    @@ -681,6 +707,21 @@

    +

    + +
    +

    + KNOWLEDGE_GAP + OPEN + Which strain-specific fluxes account for consortium output under each condition? +

    +

    The two preferred strain labels must remain distinct despite shared NCBITaxon:562. Individual-strain phenotypes and consortium-level HPLC do not resolve each strain's flux during coculture or establish an exchanged metabolite. Keep the existing direct-cross-feeding gap and zero arrows; do not restore the dangling endpoint arrows removed under #826. The abstract and 36 h xylose quantities require reconciliation against unread original supplementary data under #1429, without merging supplement text back into the article cache (#827).

    + +

    Attaches to: ecological_interactions#GL10-XL12 glucose-xylose niche partitioning

    + + + +
    @@ -1345,7 +1386,7 @@

    Evidence

    processes.push("fermentation"); - var evidenceCount = 3; + var evidenceCount = 5; nodes.push({ id: intId, diff --git a/history/records/EcoFAB_Ring_Trial_SynCom17/2026-10-06T082610Z-codex-00f1fc.yaml b/history/records/EcoFAB_Ring_Trial_SynCom17/2026-10-06T082610Z-codex-00f1fc.yaml new file mode 100644 index 000000000..7d6208a5d --- /dev/null +++ b/history/records/EcoFAB_Ring_Trial_SynCom17/2026-10-06T082610Z-codex-00f1fc.yaml @@ -0,0 +1,29 @@ +history_version: 1 +target: + kind: record + path: kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml + slug: EcoFAB_Ring_Trial_SynCom17 +session: + id: 2026-10-06T082610Z-codex-00f1fc + timestamp: '2026-10-06T08:26:10Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1424 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Retain three whole-treatment effects without colonization facilitation or symbiotic-process + claims.; Retain intrinsic OAS925 traits with only a hypothesized contribution to dominance.; + Retain relative community composition without competition or metabolome mediation.; Retain + net spent-medium profiles without assigning direct cross-feeding.; Retain measured whole-treatment + plant growth effects without a competition mechanism. + details: Nine existing nodes retained; one out-of-system node and two arrows removed; six + arrows retained with explicit limits. reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml diff --git a/history/records/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture/2026-10-06T082611Z-codex-5468bc.yaml b/history/records/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture/2026-10-06T082611Z-codex-5468bc.yaml new file mode 100644 index 000000000..9d108f873 --- /dev/null +++ b/history/records/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture/2026-10-06T082611Z-codex-5468bc.yaml @@ -0,0 +1,28 @@ +history_version: 1 +target: + kind: record + path: kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml + slug: Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture +session: + id: 2026-10-06T082611Z-codex-5468bc + timestamp: '2026-10-06T08:26:11Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1425 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Retain cysteine-dependent support with mutant and viability controls and unresolved + release route.; Retain measured fucose/galactose return with its pH constraint and partial + donor-maintenance feedback.; Retain reciprocal mutualism as an in vitro summary, not an + independently measured host endpoint. + details: Nine existing nodes retained; one out-of-system node and two arrows removed; six + arrows retained with explicit limits. reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml diff --git a/history/records/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom/2026-10-06T082611Z-codex-a5ce14.yaml b/history/records/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom/2026-10-06T082611Z-codex-a5ce14.yaml new file mode 100644 index 000000000..d4bbb68fc --- /dev/null +++ b/history/records/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom/2026-10-06T082611Z-codex-a5ce14.yaml @@ -0,0 +1,26 @@ +history_version: 1 +target: + kind: record + path: kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml + slug: Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom +session: + id: 2026-10-06T082611Z-codex-a5ce14 + timestamp: '2026-10-06T08:26:11Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1426 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Retain the single division-of-labor node with overlapping substrate capacities, + zero unsupported arrows and an explicit quantitative evidence limitation. + details: Nine existing nodes retained; one out-of-system node and two arrows removed; six + arrows retained with explicit limits. reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml diff --git a/kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml b/kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml index d68fb5cbc..2d79c09f7 100644 --- a/kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml +++ b/kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml @@ -548,86 +548,140 @@ taxonomy: explanation: Documents SynCom member participation in ring trial ecological_interactions: - name: SynCom17 EcoFAB Ring-Trial Perturbation - description: > - The full 17-member switchgrass-rhizosphere SynCom was introduced into Brachypodium - distachyon EcoFAB 2.0 devices as a standardized inoculum, then compared with axenic, - SynCom16, and plant-free medium controls across five laboratories. - interaction_type: COLONIZATION_FACILITATION + description: The full 17-member inoculum was applied to 10-day-old Brachypodium distachyon plants in EcoFAB 2.0 + devices and compared with axenic plants, SynCom16 lacking OAS925, and plant-free medium controls in five laboratories. + Its three downstream arrows represent whole-treatment effects on root composition, bulk spent-medium profiles + and plant development, not a claim that protocol standardization itself is a biological mechanism or that every + member facilitates colonization. scope: COMMUNITY_LEVEL - biological_processes: - - preferred_term: symbiotic process - term: - id: GO:0044403 - label: biological process involved in symbiotic interaction downstream: - target: Paraburkholderia-Dominated SynCom17 Root Assembly - description: > - The standardized SynCom17 treatment yielded root communities that reproducibly - converged on high Paraburkholderia abundance across laboratories. + description: SynCom17 inoculation supplied the 17-member community from which the OAS925-dominated root profile + developed by 22 DAI. The SynCom16 omission comparison supports an inoculum-composition effect, not identification + of the molecular mechanism or absolute loss of the other members. - target: Treatment-Structured Rhizosphere Exometabolites - description: > - SynCom17 was one of the ring-trial treatments that drove reproducible, - treatment-dependent changes in the spent EcoFAB medium metabolome. + description: SynCom17 inoculation altered the plant-microbe system and thereby changed the measured bulk spent-medium + metabolite profile relative to the control treatments. This is a treatment-level effect; microbial versus + plant production, uptake and extracellular enzyme activity were not separated. - target: SynCom17 Plant Biomass and Root Development Decrease - description: > - The standardized SynCom17 treatment caused reproducible B. distachyon - root-development decreases across laboratories and reduced shoot biomass - relative to axenic plants. + description: The SynCom17 inoculation treatment reduced shoot biomass in the combined-laboratory comparison + with axenic plants and reduced root development from 14 DAI onward. The experiment establishes a whole-treatment + response, not OAS925-only toxicity, competition for a specific nutrient or one necessary member. evidence: - reference: PMID:40920748 supports: SUPPORT evidence_source: IN_VITRO - snippet: All participating laboratories observed consistent inoculum-dependent changes in plant phenotype, - root exudate composition, and final bacterial community structure - explanation: > - Anchors the standardized EcoFAB 2.0 SynCom ring trial and its treatment-dependent - plant, exudate, and community-structure outcomes. -- name: Paraburkholderia Acid-Tolerant Root Colonization Traits - description: > - Paraburkholderia sp. OAS925 was the only SynCom17 member whose genome carried the - surveyed acid-resistance systems and a type III secretion system; fluorescence microscopy - also detected early root-tip and maturation-zone colonization, biofilm formation, and - active swimming near B. distachyon roots. - interaction_type: COLONIZATION_FACILITATION - scope: COMMUNITY_LEVEL + snippet: All participating laboratories observed consistent inoculum-dependent changes in plant phenotype, root + exudate composition, and final bacterial community structure + explanation: 'Anchors the standardized EcoFAB 2.0 SynCom ring trial and its treatment-dependent plant, exudate, + and community-structure outcomes. + + ' participating_taxa: - preferred_term: Paraburkholderia sp. OAS925 term: id: NCBITaxon:1822464 label: Paraburkholderia - biological_processes: - - preferred_term: symbiotic process + - preferred_term: Rhodococcus sp. OAS809 + term: + id: NCBITaxon:1827 + label: Rhodococcus + - preferred_term: Mycobacterium sp. OAE908 + term: + id: NCBITaxon:1763 + label: Mycobacterium + - preferred_term: Methylobacterium sp. OAE515 + term: + id: NCBITaxon:407 + label: Methylobacterium + - preferred_term: Variovorax sp. OAS795 + term: + id: NCBITaxon:34072 + label: Variovorax + - preferred_term: Rhizobium sp. OAE497 + term: + id: NCBITaxon:379 + label: Rhizobium + - preferred_term: Bosea sp. OAE506 + term: + id: NCBITaxon:85413 + label: Allobosea + - preferred_term: Bradyrhizobium sp. OAE829 term: - id: GO:0044403 - label: biological process involved in symbiotic interaction + id: NCBITaxon:374 + label: Bradyrhizobium + - preferred_term: Lysobacter sp. OAE881 + term: + id: NCBITaxon:68 + label: Lysobacter + - preferred_term: Arthrobacter sp. OAP107 + term: + id: NCBITaxon:1667 + label: Arthrobacter sp. + - preferred_term: Marmoricola sp. OAE513 + term: + id: NCBITaxon:86795 + label: Marmoricola + - preferred_term: Chitinophaga sp. OAE865 + term: + id: NCBITaxon:79328 + label: Chitinophaga + - preferred_term: Mucilaginibacter sp. OAE612 + term: + id: NCBITaxon:423349 + label: Mucilaginibacter + - preferred_term: Niastella sp. OAS944 + term: + id: NCBITaxon:354354 + label: Niastella + - preferred_term: Gottfriedia sp. OAE603 + term: + id: NCBITaxon:2837503 + label: Gottfriedia + - preferred_term: Brevibacillus sp. OAP136 + term: + id: NCBITaxon:55080 + label: Brevibacillus + - preferred_term: Paenibacillus sp. OAE614 + term: + id: NCBITaxon:44249 + label: Paenibacillus +- name: Paraburkholderia Acid-Tolerant Root Colonization Traits + description: OAS925 carried uniquely detected surveyed acid-resistance and type III secretion modules among the + 17 genomes. Separate RFP-isolate plant assays showed root colonization at 1 DAI and biofilm at 3 DAI; separate + culture assays showed high liquid growth and acid-tolerant motility. OAS925 was sixth, not first, in the biofilm + assay. These are one-strain observations, not facilitation of another taxon. No selective gene or trait perturbation + established which mechanism causes dominance in SynCom17. + scope: PAIRWISE downstream: - target: Paraburkholderia-Dominated SynCom17 Root Assembly - description: > - Acid-resistance genes, a unique T3SS module, biofilm formation, and rapid - acidic-condition motility provided candidate mechanisms for Paraburkholderia - dominance in the full SynCom17 root microbiome. + description: HYPOTHESIZED - acid-tolerant motility, colonization traits and associated genomic modules may help + OAS925 establish and expand on roots, contributing to its relative dominance. Separate isolate assays and + gene annotation support candidate mechanisms, but none was selectively disrupted or rescued in the 17-member + community. evidence: - reference: PMID:40920748 supports: SUPPORT evidence_source: COMPUTATIONAL snippet: Comparative genomic analysis showed that the Paraburkholderia sp. OAS925 genome - explanation: > - Supports Paraburkholderia-specific comparative-genomic signatures, including - acid-resistance genes and a T3SS module. + explanation: Supports surveyed OAS925 genomic signatures, not demonstrated expression, necessity or a gene-specific + mechanism of community dominance. - reference: PMID:40920748 supports: SUPPORT evidence_source: IN_VITRO snippet: Clear RFP signals were detected at the root tip and in the maturation zone at 1 DAI - explanation: > - Documents early Paraburkholderia OAS925 colonization in B. distachyon roots - grown in the EcoFAB 2.0 device. + explanation: Supports early colonization in the separate RFP-isolate assay, not a selective trait test in SynCom17. + source_taxon: + preferred_term: Paraburkholderia sp. OAS925 + term: + id: NCBITaxon:1822464 + label: Paraburkholderia - name: Paraburkholderia-Dominated SynCom17 Root Assembly - description: > - By 22 days after inoculation, SynCom17 root microbiomes were dominated by - Paraburkholderia sp. OAS925 across all five laboratories, whereas the Paraburkholderia-free - SynCom16 condition produced more variable roots enriched in Rhodococcus, Mycobacterium, - and Methylobacterium. - interaction_type: COMPETITION + description: At 22 DAI, OAS925 accounted for about 98% of root bacterial 16S reads in SynCom17 across the five + laboratories. SynCom16 lacking OAS925 had more variable relative profiles dominated by Rhodococcus, Mycobacterium + and Methylobacterium. The listed participants identify the inoculum roster, not equal final abundance or proven + competition. Relative read dominance does not establish extinction, absolute suppression of the other members, + or mediation of the spent-medium response. scope: COMMUNITY_LEVEL participating_taxa: - preferred_term: Paraburkholderia sp. OAS925 @@ -646,33 +700,74 @@ ecological_interactions: term: id: NCBITaxon:407 label: Methylobacterium - biological_processes: - - preferred_term: interspecies interaction between organisms + - preferred_term: Variovorax sp. OAS795 term: - id: GO:0044419 - label: biological process involved in interspecies interaction between organisms - downstream: - - target: Treatment-Structured Rhizosphere Exometabolites - description: > - The Paraburkholderia-dominated SynCom17 root community modulated the - rhizosphere exometabolite profile relative to axenic and SynCom16 - treatments, including decreased amino-acid relative concentrations. + id: NCBITaxon:34072 + label: Variovorax + - preferred_term: Rhizobium sp. OAE497 + term: + id: NCBITaxon:379 + label: Rhizobium + - preferred_term: Bosea sp. OAE506 + term: + id: NCBITaxon:85413 + label: Allobosea + - preferred_term: Bradyrhizobium sp. OAE829 + term: + id: NCBITaxon:374 + label: Bradyrhizobium + - preferred_term: Lysobacter sp. OAE881 + term: + id: NCBITaxon:68 + label: Lysobacter + - preferred_term: Arthrobacter sp. OAP107 + term: + id: NCBITaxon:1667 + label: Arthrobacter sp. + - preferred_term: Marmoricola sp. OAE513 + term: + id: NCBITaxon:86795 + label: Marmoricola + - preferred_term: Chitinophaga sp. OAE865 + term: + id: NCBITaxon:79328 + label: Chitinophaga + - preferred_term: Mucilaginibacter sp. OAE612 + term: + id: NCBITaxon:423349 + label: Mucilaginibacter + - preferred_term: Niastella sp. OAS944 + term: + id: NCBITaxon:354354 + label: Niastella + - preferred_term: Gottfriedia sp. OAE603 + term: + id: NCBITaxon:2837503 + label: Gottfriedia + - preferred_term: Brevibacillus sp. OAP136 + term: + id: NCBITaxon:55080 + label: Brevibacillus + - preferred_term: Paenibacillus sp. OAE614 + term: + id: NCBITaxon:44249 + label: Paenibacillus evidence: - reference: PMID:40920748 supports: SUPPORT evidence_source: IN_VITRO - snippet: the root microbiome inoculated with SynCom17 was dominated by Paraburkholderia sp. - OAS925 across all laboratories - explanation: > - Reports the reproducible Paraburkholderia dominance in root samples and the - altered SynCom16 community observed when OAS925 was removed. + snippet: the root microbiome inoculated with SynCom17 was dominated by Paraburkholderia sp. OAS925 across all + laboratories + explanation: 'Reports the reproducible Paraburkholderia dominance in root samples and the altered SynCom16 community + observed when OAS925 was removed. + + ' - name: Treatment-Structured Rhizosphere Exometabolites - description: > - Targeted LC-MS/MS of spent EcoFAB medium resolved treatment-dependent metabolite - clusters, including diverse metabolites increased in SynCom17, an amino-acid-rich - cluster with lower relative concentrations in SynCom17, and a smaller nucleoside - cluster increased in SynCom16 or in both SynCom treatments. - interaction_type: CROSS_FEEDING + description: Bulk spent EcoFAB medium showed treatment-dependent targeted and untargeted LC-MS profiles, including + an amino-acid-rich cluster depleted under SynCom17 and other clusters elevated under SynCom17 or SynCom16. This + is net extracellular abundance in a plant-microbe system, not identified donor-to-recipient cross-feeding. Plant + or microbial production and uptake, and extracellular enzyme activity, remain alternative contributors; OAS925-specific + amino-acid flux was not isolated. scope: COMMUNITY_LEVEL metabolites: - preferred_term: amino acid @@ -683,17 +778,86 @@ ecological_interactions: - reference: PMID:40920748 supports: SUPPORT evidence_source: IN_VITRO - snippet: A second large cluster consisted of metabolites with lower relative concentrations in the - SynCom17 treatment, represented mainly by amino acids - explanation: > - Identifies the amino-acid-rich metabolite cluster whose abundance was reduced - in the SynCom17 rhizosphere profile. + snippet: A second large cluster consisted of metabolites with lower relative concentrations in the SynCom17 + treatment, represented mainly by amino acids + explanation: 'Identifies the amino-acid-rich metabolite cluster whose abundance was reduced in the SynCom17 + rhizosphere profile. + + ' + participating_taxa: + - preferred_term: Paraburkholderia sp. OAS925 + term: + id: NCBITaxon:1822464 + label: Paraburkholderia + - preferred_term: Rhodococcus sp. OAS809 + term: + id: NCBITaxon:1827 + label: Rhodococcus + - preferred_term: Mycobacterium sp. OAE908 + term: + id: NCBITaxon:1763 + label: Mycobacterium + - preferred_term: Methylobacterium sp. OAE515 + term: + id: NCBITaxon:407 + label: Methylobacterium + - preferred_term: Variovorax sp. OAS795 + term: + id: NCBITaxon:34072 + label: Variovorax + - preferred_term: Rhizobium sp. OAE497 + term: + id: NCBITaxon:379 + label: Rhizobium + - preferred_term: Bosea sp. OAE506 + term: + id: NCBITaxon:85413 + label: Allobosea + - preferred_term: Bradyrhizobium sp. OAE829 + term: + id: NCBITaxon:374 + label: Bradyrhizobium + - preferred_term: Lysobacter sp. OAE881 + term: + id: NCBITaxon:68 + label: Lysobacter + - preferred_term: Arthrobacter sp. OAP107 + term: + id: NCBITaxon:1667 + label: Arthrobacter sp. + - preferred_term: Marmoricola sp. OAE513 + term: + id: NCBITaxon:86795 + label: Marmoricola + - preferred_term: Chitinophaga sp. OAE865 + term: + id: NCBITaxon:79328 + label: Chitinophaga + - preferred_term: Mucilaginibacter sp. OAE612 + term: + id: NCBITaxon:423349 + label: Mucilaginibacter + - preferred_term: Niastella sp. OAS944 + term: + id: NCBITaxon:354354 + label: Niastella + - preferred_term: Gottfriedia sp. OAE603 + term: + id: NCBITaxon:2837503 + label: Gottfriedia + - preferred_term: Brevibacillus sp. OAP136 + term: + id: NCBITaxon:55080 + label: Brevibacillus + - preferred_term: Paenibacillus sp. OAE614 + term: + id: NCBITaxon:44249 + label: Paenibacillus - name: SynCom17 Plant Biomass and Root Development Decrease - description: > - Compared with axenic plants, the SynCom17 treatment significantly decreased shoot - fresh weight and dry weight in the combined laboratory analysis and consistently - reduced root development from 14 days after inoculation onward. - interaction_type: COMPETITION + description: Compared with axenic plants, SynCom17 reduced shoot fresh and dry biomass in the combined-laboratory + analysis and reduced root development from 14 DAI onward. SynCom16 had a smaller shoot effect. These are whole-treatment + plant outcomes with laboratory variation, not a demonstrated microbial competition mechanism, direct OAS925-only + effect or reciprocal symbiosis. scope: COMMUNITY_LEVEL biological_processes: - preferred_term: growth @@ -705,36 +869,79 @@ ecological_interactions: supports: SUPPORT evidence_source: IN_VITRO snippet: SynCom17 caused a consistent decrease in root development observed after 14 DAI onwards - explanation: > - Supports the reproducible root-development decrease measured for the full - SynCom17 treatment across EcoFAB laboratories. -- name: Nitrogen-Status EcoFAB Root Exudation - description: > - Brachypodium distachyon grown in EcoFAB 2.0 altered its root-exudate metabolite - profile in response to nitrate, ammonium, ammonium nitrate, and nitrogen - starvation; nitrogen deficiency reduced nitrogen-containing compounds and - increased shikimate-phenylpropanoid metabolites. - interaction_type: NICHE_PARTITIONING - scope: COMMUNITY_LEVEL - metabolites: - - preferred_term: shikimic acid + explanation: 'Supports the reproducible root-development decrease measured for the full SynCom17 treatment across + EcoFAB laboratories. + + ' + participating_taxa: + - preferred_term: Paraburkholderia sp. OAS925 + term: + id: NCBITaxon:1822464 + label: Paraburkholderia + - preferred_term: Rhodococcus sp. OAS809 term: - id: CHEBI:16119 - label: shikimic acid - notes: Increased in root exudates under nitrogen deficiency - - preferred_term: p-coumaric acid + id: NCBITaxon:1827 + label: Rhodococcus + - preferred_term: Mycobacterium sp. OAE908 term: - id: CHEBI:32374 - label: trans-4-coumaric acid - notes: Phenylpropanoid increased under nitrogen stress; affects bacterial growth - evidence: - - reference: doi:10.1126/sciadv.adg7888 - supports: SUPPORT - evidence_source: IN_VITRO - snippet: nitrogen deficiency decreased nitrogen-containing compounds but increased shikimates-phenylpropanoids - explanation: > - Documents nitrogen-status exudate modulation by B. distachyon grown in - EcoFAB 2.0 devices. + id: NCBITaxon:1763 + label: Mycobacterium + - preferred_term: Methylobacterium sp. OAE515 + term: + id: NCBITaxon:407 + label: Methylobacterium + - preferred_term: Variovorax sp. OAS795 + term: + id: NCBITaxon:34072 + label: Variovorax + - preferred_term: Rhizobium sp. OAE497 + term: + id: NCBITaxon:379 + label: Rhizobium + - preferred_term: Bosea sp. OAE506 + term: + id: NCBITaxon:85413 + label: Allobosea + - preferred_term: Bradyrhizobium sp. OAE829 + term: + id: NCBITaxon:374 + label: Bradyrhizobium + - preferred_term: Lysobacter sp. OAE881 + term: + id: NCBITaxon:68 + label: Lysobacter + - preferred_term: Arthrobacter sp. OAP107 + term: + id: NCBITaxon:1667 + label: Arthrobacter sp. + - preferred_term: Marmoricola sp. OAE513 + term: + id: NCBITaxon:86795 + label: Marmoricola + - preferred_term: Chitinophaga sp. OAE865 + term: + id: NCBITaxon:79328 + label: Chitinophaga + - preferred_term: Mucilaginibacter sp. OAE612 + term: + id: NCBITaxon:423349 + label: Mucilaginibacter + - preferred_term: Niastella sp. OAS944 + term: + id: NCBITaxon:354354 + label: Niastella + - preferred_term: Gottfriedia sp. OAE603 + term: + id: NCBITaxon:2837503 + label: Gottfriedia + - preferred_term: Brevibacillus sp. OAP136 + term: + id: NCBITaxon:55080 + label: Brevibacillus + - preferred_term: Paenibacillus sp. OAE614 + term: + id: NCBITaxon:44249 + label: Paenibacillus environmental_factors: - name: Nitrogen Source value: NH4NO3 @@ -856,10 +1063,37 @@ curation_history: - timestamp: '2026-10-02T05:49:32Z' curator: codex action: PRUNE_CAUSAL_GRAPH_WORKFLOW_EDGES - changes: > - Retargeted the SynCom17 plant-biomass and root-development edge onto the - SynCom17 treatment perturbation instead of the co-occurring - Paraburkholderia-dominated root profile, and rewrote the - Paraburkholderia-to-exometabolite edge to state the source-supported - metabolome modulation directly. + changes: 'Retargeted the SynCom17 plant-biomass and root-development edge onto the SynCom17 treatment perturbation + instead of the co-occurring Paraburkholderia-dominated root profile, and rewrote the Paraburkholderia-to-exometabolite + edge to state the source-supported metabolome modulation directly. + + ' + llm_assisted: true +- timestamp: '2026-10-06T08:26:09Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Retain three whole-treatment effects without colonization facilitation or symbiotic-process claims.; + Retain intrinsic OAS925 traits with only a hypothesized contribution to dominance.; Retain relative community + composition without competition or metabolome mediation.; Retain net spent-medium profiles without assigning + direct cross-feeding.; Retain measured whole-treatment plant growth effects without a competition mechanism. + Issue #1424; reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml' llm_assisted: true +discussions: +- discussion_id: ecofab_syncom17_mediation_and_study_scope + prompt: Which OAS925 traits and plant-microbe fluxes mediate the SynCom17 outcomes? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#SynCom17 EcoFAB Ring-Trial Perturbation + - ecological_interactions#Paraburkholderia Acid-Tolerant Root Colonization Traits + - ecological_interactions#Paraburkholderia-Dominated SynCom17 Root Assembly + - ecological_interactions#Treatment-Structured Rhizosphere Exometabolites + - ecological_interactions#SynCom17 Plant Biomass and Root Development Decrease + rationale: 'The three treatment arrows are retained, the trait-to-assembly arrow remains HYPOTHESIZED, and the + assembly-to-metabolome arrow is removed because a common treatment does not isolate mediation. Single-isolate + assays, relative reads and net spent-medium profiles do not resolve trait necessity or cross-feeding. The removed + nitrogen-status node belongs to doi:10.1126/sciadv.adg7888, whose EcoFAB plants were sterile and whose 14 bacterial + bioassays were individual cultures, not the SynCom17 trial. Protocol and non-graph role/uptake claims remain + under #1427; canonical Allobosea grounding is preserved.' + posed_by: codex + posed_date: '2026-10-06' diff --git a/kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml b/kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml index 194467183..d9dd28d81 100644 --- a/kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml +++ b/kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml @@ -74,8 +74,11 @@ taxonomy: explanation: Identifies B. bifidum as the auxotrophic partner in the mutualistic co-culture. ecological_interactions: - name: Cysteine provision enabling cooperative 2'-fucosyllactose degradation - description: E. coli supplies cysteine to the auxotrophic B. bifidum, facilitating cooperative - degradation of 2'-fucosyllactose, the predominant human milk oligosaccharide. + description: In the nutrient-limited in vitro model, E. coli K12 supplies the cysteine requirement of an infant-stool + B. bifidum isolate, enabling growth and 2-fucosyllactose degradation without added cysteine or casamino acids. + The delta-cysE donor control impaired coculture growth and ethanol-killed partner controls failed to support + it. This supports cysteine-dependent cooperation, not a measured cysteine export rate or proof of active secretion + rather than overflow or lysis. interaction_type: CROSS_FEEDING scope: PAIRWISE source_taxon: @@ -99,21 +102,29 @@ ecological_interactions: label: 2'-fucosyllactose downstream: - target: Monosaccharide return sustaining E. coli growth - description: > - Cysteine supplied by E. coli enables B. bifidum to cooperatively degrade - 2'-fucosyllactose, liberating monosaccharides that return carbon to - E. coli. + description: Cysteine-dependent support from E. coli permits the auxotrophic B. bifidum partner to grow and + degrade 2-fucosyllactose under the tested nutrient limitation, releasing sugar substrates usable by E. coli. + The mutant and killed-partner controls support the dependency; the sugar-consumption assay separately required + spent-medium pH adjustment to 6.3. evidence: - reference: PMID:42020426 supports: SUPPORT evidence_source: IN_VITRO - snippet: E. coli supplies cysteine to its auxotrophic partner, facilitating cooperative - degradation of 2'-fucosyllactose, the predominant human milk oligosaccharide - explanation: E. coli-to-B. bifidum cysteine cross-feeding drives cooperative HMO degradation. + snippet: E. coli supplies cysteine to its auxotrophic partner, facilitating cooperative degradation of 2'-fucosyllactose, + the predominant human milk oligosaccharide + explanation: Supports reciprocal in vitro cross-feeding in the tested strain pair; does not establish host abundance + regulation, a cysteine export route or universal infant-gut mutualism. + - reference: PMID:42020426 + supports: SUPPORT + evidence_source: IN_VITRO + snippet: observing a significant impairment of growth + explanation: The delta-cysE comparison supports the cysteine dependence discussed in Results, without quantifying + donor export. - name: Monosaccharide return sustaining E. coli growth - description: Monosaccharides liberated from cooperative 2'-fucosyllactose degradation sustain E. - coli growth, completing a cooperative cross-feeding loop that may help regulate E. coli - abundance in the infant gut. + description: B. bifidum degraded 2-fucosyllactose and left fucose and galactose that E. coli K12 subsequently + consumed, measured by chromatography. E. coli grew in this spent medium only after pH readjustment from 4.3 + to 6.3. This measured in vitro return of carbon does not establish that the same exchange controls E. coli abundance + in infants or quantify sugar-to-cysteine flux in coculture. interaction_type: CROSS_FEEDING scope: PAIRWISE source_taxon: @@ -133,27 +144,35 @@ ecological_interactions: label: monosaccharide downstream: - target: Cysteine provision enabling cooperative 2'-fucosyllactose degradation - description: > - Monosaccharides returned from B. bifidum sustain E. coli growth and close - the cooperative loop that maintains cysteine provisioning to the auxotroph. - - target: Cooperative Infant-Gut HMO Mutualism - description: > - Reciprocal cysteine and monosaccharide exchange completes the cooperative - HMO-fed loop between E. coli and B. bifidum. + description: PARTIAL - accessible HMO-derived sugars sustain E. coli growth and can maintain the donor population + supporting the cysteine-dependent partner. Reciprocal nutrient dependence is experimentally supported, but + a time-resolved sugar-to-cysteine feedback gain or isotope-resolved flux was not measured; the separate spent-medium + assay required pH 6.3. evidence: - reference: PMID:42020426 supports: SUPPORT evidence_source: IN_VITRO - snippet: the liberated monosaccharides sustain E. coli growth, highlighting a cooperative - cross-feeding interaction that may contribute to regulating E. coli abundance within the - infant host - explanation: Monosaccharides released during HMO degradation feed back to sustain E. coli. + snippet: the liberated monosaccharides sustain E. coli growth, highlighting a cooperative cross-feeding interaction + that may contribute to regulating E. coli abundance within the infant host + explanation: Supports reciprocal in vitro cross-feeding in the tested strain pair; does not establish host abundance + regulation, a cysteine export route or universal infant-gut mutualism. + - reference: PMID:42020426 + supports: SUPPORT + evidence_source: IN_VITRO + snippet: B. bifidum efficiently degraded 2’FL, but left galactose and fucose unconsumed + explanation: Chromatography identifies the extracellular sugar substrates subsequently consumed by E. coli K12 + in pH-adjusted spent medium. + - reference: PMID:42020426 + supports: SUPPORT + evidence_source: IN_VITRO + snippet: growth only when the pH was adjusted to its initial value of 6.3 + explanation: Directly bounds the spent-medium growth result to the pH-adjusted assay. - name: Cooperative Infant-Gut HMO Mutualism - description: > - E. coli cysteine provision to B. bifidum and B. bifidum monosaccharide - liberation from 2'-fucosyllactose form a reciprocal, cooperative - cross-feeding loop that sustains both partners in the infant-gut - two-member model. + description: E. coli K12 and the infant-stool B. bifidum isolate co-grew in modified M9 with 0.5% 2-fucosyllactose + and without added cysteine or casamino acids. Cysteine dependence, viable-partner controls and measured sugar + utilization support reciprocal benefit in this restricted laboratory model. This node summarizes that exchange + rather than adding a separate downstream outcome. Its prevalence, strength and effect on E. coli abundance in + living infants remain untested. interaction_type: MUTUALISM scope: COMMUNITY_LEVEL participating_taxa: @@ -187,12 +206,10 @@ ecological_interactions: - reference: PMID:42020426 supports: SUPPORT evidence_source: IN_VITRO - snippet: the liberated monosaccharides sustain E. coli growth, highlighting a cooperative - cross-feeding interaction that may contribute to regulating E. coli abundance within the - infant host - explanation: > - Supports reciprocal, cooperative HMO cross-feeding between E. coli and - B. bifidum. + snippet: the liberated monosaccharides sustain E. coli growth, highlighting a cooperative cross-feeding interaction + that may contribute to regulating E. coli abundance within the infant host + explanation: Supports reciprocal in vitro cross-feeding in the tested strain pair; does not establish host abundance + regulation, a cysteine export route or universal infant-gut mutualism. growth_media: - name: modified M9 medium (m-M9) with 0.1% (w/v) 2'-fucosyllactose as the primary carbon source temperature: '37' @@ -217,3 +234,28 @@ growth_media: evidence_source: IN_VITRO snippet: growth only when the pH was adjusted to its initial value of 6.3 explanation: Names the medium pH (initial value 6.3). +discussions: +- discussion_id: hmo_mutualism_flux_and_host_boundary + prompt: How strongly does the measured laboratory exchange operate in the infant gut? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#Cysteine provision enabling cooperative 2'-fucosyllactose degradation + - ecological_interactions#Monosaccharide return sustaining E. coli growth + - ecological_interactions#Cooperative Infant-Gut HMO Mutualism + rationale: 'The K12 donor and infant B. bifidum isolate support nutrient-limited reciprocal cooperation, not a + universal species-level interaction or demonstrated regulation of E. coli abundance in vivo. Chromatographic + sugar data and a delta-cysE control do not resolve cysteine release route, export rate or isotope-resolved feedback. + The pH-adjusted spent-medium assay is distinct from the live coculture. The sugar-to-mutualism summary arrow + is removed as a part/whole restatement, not an independently supported causal consequence. Experimental-strain + and 0.1% screening versus 0.5% coculture metadata remain under #1428.' + posed_by: codex + posed_date: '2026-10-06' +curation_history: +- timestamp: '2026-10-06T08:26:10Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Retain cysteine-dependent support with mutant and viability controls and unresolved release route.; + Retain measured fucose/galactose return with its pH constraint and partial donor-maintenance feedback.; Retain + reciprocal mutualism as an in vitro summary, not an independently measured host endpoint. Issue #1425; reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml' + llm_assisted: true diff --git a/kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml b/kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml index 057367a1a..d0b79f627 100644 --- a/kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml +++ b/kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml @@ -127,8 +127,12 @@ taxonomy: explanation: Identifies XL12 as the engineered E. coli member produced from the XL5 intermediate. ecological_interactions: - name: GL10-XL12 glucose-xylose niche partitioning - description: GL10 and XL12 partition mixed glucose and xylose utilization as two E. coli metabolic specialists, enabling - simultaneous hexose and pentose consumption and D-lactate accumulation in the synthetic consortium. + description: GL10 and XL12 show partial, overlapping carbon-source specialization in the tested mixed-glucose/xylose + fermentation. GL10 retains xylose metabolism in single-sugar medium, while XL12 still consumes glucose; these + are not exclusive substrate users. The 1:1 consortium produced 3.76 g/L D-lactate at 36 h under the baseline + conditions. NICHE_PARTITIONING denotes this engineered division of labor, not strain-resolved coculture flux, + direct interstrain cross-feeding, partner-dependent growth or universal superiority across shaking speeds and + inoculum ratios. interaction_type: NICHE_PARTITIONING scope: COMMUNITY_LEVEL participating_taxa: @@ -162,21 +166,34 @@ ecological_interactions: - reference: PMID:42038008 supports: SUPPORT evidence_source: IN_VITRO - snippet: A co-culture strategy was implemented to improve metabolic orthogonality toward specific carbon sources within - mixed sugars. - explanation: Supports niche partitioning over the supplied glucose and xylose carbon sources. + snippet: A co-culture strategy was implemented to improve metabolic orthogonality toward specific carbon sources + within mixed sugars. + explanation: Supports an engineered specialization strategy, not perfect metabolic orthogonality or exclusive + sugar use by either strain. - reference: PMID:42038008 - supports: SUPPORT + supports: PARTIAL evidence_source: IN_VITRO - snippet: Microbial consortium using GL10 and XL12 with the inoculation ratio of 1:1 achieved complete glucose depletion - and 53.21% xylose utilization simultaneously. - explanation: Supports simultaneous mixed-sugar utilization by the 1:1 GL10/XL12 consortium. + snippet: Microbial consortium using GL10 and XL12 with the inoculation ratio of 1:1 achieved complete glucose + depletion and 53.21% xylose utilization simultaneously. + explanation: 'The abstract reports 53.21% xylose utilization without reconciling its timepoint to Results 3.4.1, + which reports 1.22 g/L at 36 h from 5 g/L feed. Retained as a source statement, not certified as the same + resolved quantitative endpoint; see #1429.' - reference: PMID:42038008 supports: SUPPORT evidence_source: IN_VITRO - snippet: In mixed sugar fermentation, the consortium produced 3.76 g/L of D-lactate, achieving a 37.6% conversion yield - and a productivity of 0.10 g/L/h + snippet: In mixed sugar fermentation, the consortium produced 3.76 g/L of D-lactate, achieving a 37.6% conversion + yield and a productivity of 0.10 g/L/h explanation: Quantifies D-lactate production from the baseline 1:1 consortium. + - reference: PMID:42038008 + supports: SUPPORT + evidence_source: IN_VITRO + snippet: GL10 was not modified to block xylose metabolism + explanation: Directly prevents interpreting the glucose-specialist label as exclusive glucose use. + - reference: PMID:42038008 + supports: SUPPORT + evidence_source: IN_VITRO + snippet: XL12 co-utilized glucose and xylose simultaneously + explanation: Supports overlapping rather than mutually exclusive substrate use. environmental_factors: - name: Mixed glucose-xylose feed value: 5 g/L glucose and 5 g/L xylose @@ -442,16 +459,29 @@ external_resources: explanation: Lists the DOI for the primary publication. discussions: - discussion_id: gl10_xl12_direct_cross_feeding - prompt: Which metabolites, if any, are directly exchanged between E. coli GL10 and E. coli XL12 during mixed-sugar D-lactate - fermentation? + prompt: Which metabolites, if any, are directly exchanged between E. coli GL10 and E. coli XL12 during mixed-sugar + D-lactate fermentation? kind: KNOWLEDGE_GAP status: OPEN attaches_to: - ecological_interactions#GL10-XL12 glucose-xylose niche partitioning - rationale: The primary article supports carbon-source niche partitioning by glucose- and xylose-specialized E. coli strains, - but this curation did not find evidence for a named GL10-to-XL12 or XL12-to-GL10 cross-fed metabolite. + rationale: The primary article supports carbon-source niche partitioning by glucose- and xylose-specialized E. + coli strains, but this curation did not find evidence for a named GL10-to-XL12 or XL12-to-GL10 cross-fed metabolite. posed_by: codex posed_date: '2026-09-13' +- discussion_id: gl10_xl12_specialization_and_endpoint_limits + prompt: Which strain-specific fluxes account for consortium output under each condition? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#GL10-XL12 glucose-xylose niche partitioning + rationale: 'The two preferred strain labels must remain distinct despite shared NCBITaxon:562. Individual-strain + phenotypes and consortium-level HPLC do not resolve each strain''s flux during coculture or establish an exchanged + metabolite. Keep the existing direct-cross-feeding gap and zero arrows; do not restore the dangling endpoint + arrows removed under #826. The abstract and 36 h xylose quantities require reconciliation against unread original + supplementary data under #1429, without merging supplement text back into the article cache (#827).' + posed_by: codex + posed_date: '2026-10-06' metals_present: [] rare_earth_elements_present: [] metal_relevance: NOT_APPLICABLE @@ -461,32 +491,38 @@ curation_history: - timestamp: '2026-09-13T06:10:36Z' curator: codex action: CREATE_COMMUNITY_RECORD - changes: Created CommunityMech:000357 for the E. coli GL10/XL12 mixed-sugar D-lactate SynCom with evidence-backed membership, - carbon-source niche partitioning, M9 and corn-straw-hydrolysate growth media, glucose/xylose/D-lactate ingredient links, - PubMed/DOI resources, and no asserted pairwise cross-feeding edge. + changes: Created CommunityMech:000357 for the E. coli GL10/XL12 mixed-sugar D-lactate SynCom with evidence-backed + membership, carbon-source niche partitioning, M9 and corn-straw-hydrolysate growth media, glucose/xylose/D-lactate + ingredient links, PubMed/DOI resources, and no asserted pairwise cross-feeding edge. llm_assisted: true - timestamp: '2026-09-13T06:14:43Z' curator: codex action: TIGHTEN_EVIDENCE - changes: Added exact evidence for the GL10/XL12 glucose-xylose assignment, XL12 glk/ptsI glucose-uptake knockouts, consortium - optical purity, and Wuhan SunHY corn straw hydrolysate provenance. + changes: Added exact evidence for the GL10/XL12 glucose-xylose assignment, XL12 glk/ptsI glucose-uptake knockouts, + consortium optical purity, and Wuhan SunHY corn straw hydrolysate provenance. llm_assisted: true - timestamp: '2026-09-13T06:15:10Z' curator: codex action: REMOVE_UNSUPPORTED_VESSEL_ASSERTION - changes: Removed the FLASK cultivation-system assertion and narrowed growth_media vessel text because PMID:42038008 reports - shaking liquid incubation but does not name the vessel type. + changes: Removed the FLASK cultivation-system assertion and narrowed growth_media vessel text because PMID:42038008 + reports shaking liquid incubation but does not name the vessel type. llm_assisted: true - timestamp: '2026-09-13T06:18:42Z' curator: codex action: FIX_DANGLING_DOWNSTREAM_EDGES - changes: 'Removed two downstream outcome labels flagged in #826 from GL10-XL12 glucose-xylose niche partitioning because - InteractionDownstream.target must name another curated interaction, not a fermentation endpoint.' + changes: 'Removed two downstream outcome labels flagged in #826 from GL10-XL12 glucose-xylose niche partitioning + because InteractionDownstream.target must name another curated interaction, not a fermentation endpoint.' llm_assisted: true - timestamp: '2026-09-13T06:21:54Z' curator: codex action: DROP_SUPPLEMENT_ONLY_MEDIUM_COMPONENTS changes: 'Removed the Table S2-only corn straw hydrolysate component concentrations flagged in #827 because PMID:42038008 - supplement text is kept in a separate sidecar and is not reference-validator-visible for PMID snippets; retained the article-supported - hydrolysate source, detoxification, M9 dilution, and pH.' + supplement text is kept in a separate sidecar and is not reference-validator-visible for PMID snippets; retained + the article-supported hydrolysate source, detoxification, M9 dilution, and pH.' + llm_assisted: true +- timestamp: '2026-10-06T08:26:10Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Retain the single division-of-labor node with overlapping substrate capacities, zero unsupported arrows + and an explicit quantitative evidence limitation. Issue #1426; reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml' llm_assisted: true diff --git a/reports/causal_graph_review/adversarial-review-20261006-batch36.yaml b/reports/causal_graph_review/adversarial-review-20261006-batch36.yaml new file mode 100644 index 000000000..60ca54ebb --- /dev/null +++ b/reports/causal_graph_review/adversarial-review-20261006-batch36.yaml @@ -0,0 +1,158 @@ +reviewer: codex +review_mode: source_based_self_adversarial_review +independent_approval: false +base_commit: 54ce25c9b7f3b3bacd2f68d9e567756aff8fe397 +scope: +- kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml +- kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml +- kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml +decision_ledger: reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml +validation_report: reports/causal_graph_review/validation-20261006-batch36.json +findings: +- issue: 1424 + severity: P2 + status: addressed_in_this_change + finding: 'EcoFAB SynCom17 graph: separate treatment effects from trait hypotheses and sterile-plant + experiments' + disposition: Graph corrected; close only after protected main merge. +- issue: 1425 + severity: P2 + status: addressed_in_this_change + finding: 'HMO mutualism graph: bound reciprocal exchange to tested strains, nutrient limitation and + pH' + disposition: Graph corrected; close only after protected main merge. +- issue: 1426 + severity: P2 + status: addressed_in_this_change + finding: 'GL10 XL12 graph: qualify overlapping substrate specialization and measured community output' + disposition: Graph corrected; close only after protected main merge. +- issue: 1427 + severity: P2 + status: open_nongraph_followup + finding: 'EcoFAB SynCom17 metadata: disentangle ring-trial, isolate and nitrogen-study protocols' + disposition: Non-graph fields preserved and not certified. Remains open. +- issue: 1428 + severity: P2 + status: open_nongraph_followup + finding: 'HMO coculture metadata: distinguish K12 experimental strains and 0.5 percent mutualism assay' + disposition: Non-graph fields preserved and not certified. Remains open. +- issue: 1429 + severity: P2 + status: open_nongraph_followup + finding: 'GL10 XL12 quantitative metadata: reconcile xylose endpoints before treating them as one yield' + disposition: Non-graph fields preserved and not certified. Remains open. +adversarial_checks: +- Complete graph diffs compared against four cached primary main bodies at recorded access scope. Nine + nodes retained, one out-of-system node and two arrows removed. No added nodes or arrows; every original + node/arrow has a disposition. +- EcoFAB nitrogen-status evidence concerns a separate sterile-plant experiment and 14 individual bacterial + bioassays, not SynCom17 co-inoculation. Remove that node; three ring-trial treatment-to-measured-outcome + arrows remain bounded to whole-treatment effects. +- OAS925 isolate phenotypes and surveyed genomic modules do not establish a selective mechanism for community + dominance. Intrinsic source-only PAIRWISE node retains a HYPOTHESIZED arrow. Relative 16S dominance + is not absolute suppression or competition, and OAS925 was sixth in the separate biofilm assay. +- 'Remove dominance-to-metabolome mediation: common treatment and net spent-medium abundance do not isolate + root/microbial production, uptake or extracellular enzyme activity. Remove categorical cross-feeding, + competition, colonization facilitation and unsupported symbiotic-process annotations. Canonical participants + identify the inoculum, not universal flux or equal final abundance.' +- HMO cross-feeding is experimentally supported for laboratory K12 and an infant B. bifidum isolate under + nutrient limitation. Delta-cysE and viable-partner controls support dependence, not isotope-resolved + cysteine export, a release route or a quantified positive-feedback time course. +- Chromatography supports fucose/galactose consumption; spent-medium growth required pH readjustment from + 4.3 to 6.3. Return-to-cysteine maintenance remains PARTIAL. No control of E. coli abundance in infants + is claimed. Remove the sugar-to-mutualism part/whole summary arrow while retaining both reciprocal links. +- GL10 and XL12 retain overlapping substrate capacities. The single existing NICHE_PARTITIONING node means + engineered specialization, not exclusive sugar use, measured interstrain exchange or universal benefit. + Preserve zero arrows and the earlier cross-feeding discussion. Abstract 53.21% xylose and Results 1.22 + g/L at 36 h are not silently reconciled. +- All three records were already in the 183-user participant registry. Registry and numeric bounds remain + unchanged. Intrinsic OAS925 representation changes mixed-scope 122 to 123, community-only 265 to 264, + and sole broad credit 1222 to 1221; this is not a new taxon. +- Three guarded writes, append-only history artifacts and llm-assisted events; old history/discussions + semantically preserved, all non-graph raw blocks, 457 other records and 920 caches byte-preserved. Eight + regression tests cover scope, reciprocal direction, partial feedback, source quantitative conflict, + participants, anchors and full disposition accounting. +- Zero structural errors and all 33 prior warnings preserved exactly. Repeat renders deterministic with + exact descriptions checked across 456 pages. Reference-validator 0.1.7 exits 0 with zero checks; explicitly + a no-op, not evidence validation. Textual snippet MATCH is not scientific support. +- 'Deduplication includes 748 all-state titles/bodies and ignored/hidden-inclusive local files, not every + issue comment. Existing #1264, #826, #827, #830, #365 and #442 distinguished and their repairs preserved. + #1427-1429 remain open. No provider job, new causal structure, visual-source inspection, supplementary + or raw-data review claimed.' +verification: + combined_regressions: 392 passed in 179.44s (0:02:59) + new_regression_tests: 8 + schema_strict_terms_history: passed; actual output tails and log digests retained + snippet_counts_by_record: + kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml: + MATCH: 30 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml: + MATCH: 11 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml: + MATCH: 38 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + network: Zero errors; 33 baseline warnings exactly preserved, none added. + black_ruff_diff: passed + tested_file_sha256: + reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml: 1b57537e06001eaf8d91b2ef58bf176281a616c4a21158cf4679fb969ce010e8 + tests/test_causal_review_batch36.py: 7b5456197cd9afb2ac01e324356687aae69d8335755702e3c19b25ced69e32a2 + kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml: 2e0f6da3387904e4f33283c5117df14ab55c80a1ec7d7290fe00343f69569f1d + kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml: 31e420e8e1553817b77ff5bde0d4229ee09eca2cbf62e5d6524a275801475627 + kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml: 5d5c7c4e2d853489be775ef1cc44ec611af78b2dff902287c1bf2f18bfa9ad4d + post_commit_docs_current: Separate publication gate; not asserted in pre-commit record. + protected_ci_and_merge: Exact-head protected main checks and queue still required. +participant_census: + connectivity_before: + community_level_only: 265 + credited_solely_by_the_rule: 1222 + mixed: 122 + records: 460 + taxa: 1494 + with_community_level: 387 + connectivity_after: + community_level_only: 264 + credited_solely_by_the_rule: 1221 + mixed: 123 + records: 460 + taxa: 1494 + with_community_level: 387 + exact_change: All three records already registered; 183-user registry unchanged. EcoFAB becomes mixed-scope + as the OAS925 trait becomes intrinsic source-only PAIRWISE; sole broad credit falls by one. No taxonomy + or numeric-bound changes. + numeric_bounds_changed: false +corpus: + records: 460 + nodes: 1469 + edges: 695 + review_status_counts: + needs_research: 7 + pending: 303 + reviewed: 150 +limitations: +- Nine existing nodes retained; one out-of-system node and two unsupported mediation/summary arrows removed. + No new connectivity or provider request. +- Four cached primary main bodies reviewed at the stated access scope, not visual figures, separate supplements + or raw data. All source caches unchanged. +- 'Canonical taxonomy and non-graph raw blocks preserved, not certified; #1427-1429 remain open.' +- OAS925 dominance mechanism remains hypothesized; bulk medium is not direct cross-feeding. Separate sterile-plant + nitrogen evidence is excluded from this community graph. +- HMO reciprocal exchange is supported in the tested in vitro pair. Its sugar-to-cysteine maintenance + link is PARTIAL; cysteine release route, feedback gain and host regulation remain unresolved. +- GL10/XL12 specialization is overlapping, not exclusive. Zero arrows preserved; source quantitative disagreement + is not silently reconciled. +- Self-adversarial review is not independent approval, protected main merge or full-corpus completion; + textual snippet matching is not scientific validation. diff --git a/reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml b/reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml new file mode 100644 index 000000000..0c64f7ce2 --- /dev/null +++ b/reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml @@ -0,0 +1,306 @@ +reviewer: codex +review_mode: source_based_self_adversarial_review +independent_approval: false +base_commit: 54ce25c9b7f3b3bacd2f68d9e567756aff8fe397 +baseline_commit: 54ce25c9b7f3b3bacd2f68d9e567756aff8fe397 +base_tree: 254290bd77b3009f858019ea4ce274d0e9ba20e5 +issues: +- 1424 +- 1425 +- 1426 +open_nongraph_followups: +- 1427 +- 1428 +- 1429 +open_graph_research: [] +issue_deduplication: + all_state_issue_titles_bodies: 748 + ignored_hidden_local_files_included: true + comments_exhaustive: false + relevant_issues_read: + - 1264 + - 826 + - 827 + - 830 + - 365 + - 442 + finding: No exact duplicate in searched scope; existing cache, taxonomic and dangling-edge repairs preserved. +reference_cache_original_hashes: + references_cache/PMID_42020426.md: b9d67d6a9cceb1a072d6cfdf08d59a7c4b5edadb1759fa46bfb54aa05744d1fc + references_cache/PMID_40920748.md: 9835902fb578c079d6b11fd84cff8498d55d43fd931713cd77e40c411d571b07 + references_cache/doi_10.1126_sciadv.adg7888.md: 18499621c38705107707711cf65fd933886be3525c8b0c03ed3675c5d4ec8317 + references_cache/pmc_full_pmid_40920748.txt: 5ada098f595961565eaac5d2420a8fb29a6e7a324f35a41f284e49ae6db7e5e3 + references_cache/PMID_42038008.supplement.md: e652fb82bc6ea91e8e041757a8601668da4f9e5393780b8d4639b4db2a1bc2cb + references_cache/PMID_42038008.txt: 6ffe3ec49c777b442940730e6f6e17db4931ff142b9ffa54ee0178eb668e46d6 +edison: + status: not_needed_for_existing_structure_repair_no_provider_job_or_charge + rationale: No added nodes/arrows; existing source-bounded corrections only. +limitations: +- Nine existing nodes retained; one out-of-system node and two unsupported mediation/summary arrows removed. No + new connectivity or provider request. +- Four cached primary main bodies reviewed at the stated access scope, not visual figures, separate supplements + or raw data. All source caches unchanged. +- 'Canonical taxonomy and non-graph raw blocks preserved, not certified; #1427-1429 remain open.' +- OAS925 dominance mechanism remains hypothesized; bulk medium is not direct cross-feeding. Separate sterile-plant + nitrogen evidence is excluded from this community graph. +- HMO reciprocal exchange is supported in the tested in vitro pair. Its sugar-to-cysteine maintenance link is PARTIAL; + cysteine release route, feedback gain and host regulation remain unresolved. +- GL10/XL12 specialization is overlapping, not exclusive. Zero arrows preserved; source quantitative disagreement + is not silently reconciled. +- Self-adversarial review is not independent approval, protected main merge or full-corpus completion; textual snippet + matching is not scientific validation. +records: +- path: kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml + id: CommunityMech:000025 + original_sha256: 60fc1f9d6fa2748ea58289e5c6632f41f1174b6a1e7d66a8ce8bd22041f2b56b + record_sha256: 2e0f6da3387904e4f33283c5117df14ab55c80a1ec7d7290fe00343f69569f1d + status: reviewed + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml + scope: Whole record and every existing node/arrow assessed against primary text at recorded access scope; non-graph + fields preserved, not certified. + summary: Retain three whole-treatment effects without colonization facilitation or symbiotic-process claims.; + Retain intrinsic OAS925 traits with only a hypothesized contribution to dominance.; Retain relative community + composition without competition or metabolome mediation.; Retain net spent-medium profiles without assigning + direct cross-feeding.; Retain measured whole-treatment plant growth effects without a competition mechanism. + renamed_nodes: {} + node_decisions: + - node: SynCom17 EcoFAB Ring-Trial Perturbation + rationale: Retain three whole-treatment effects without colonization facilitation or symbiotic-process claims. + - node: Paraburkholderia Acid-Tolerant Root Colonization Traits + rationale: Retain intrinsic OAS925 traits with only a hypothesized contribution to dominance. + - node: Paraburkholderia-Dominated SynCom17 Root Assembly + rationale: Retain relative community composition without competition or metabolome mediation. + - node: Treatment-Structured Rhizosphere Exometabolites + rationale: Retain net spent-medium profiles without assigning direct cross-feeding. + - node: SynCom17 Plant Biomass and Root Development Decrease + rationale: Retain measured whole-treatment plant growth effects without a competition mechanism. + removed_node_decisions: + - node: Nitrogen-Status EcoFAB Root Exudation + rationale: Separate sterile-plant nitrogen experiment and individual bacterial bioassays are not SynCom17 community + evidence. + edges_before: + - source: SynCom17 EcoFAB Ring-Trial Perturbation + target: Paraburkholderia-Dominated SynCom17 Root Assembly + description: 'The standardized SynCom17 treatment yielded root communities that reproducibly converged on high + Paraburkholderia abundance across laboratories. + + ' + - source: SynCom17 EcoFAB Ring-Trial Perturbation + target: Treatment-Structured Rhizosphere Exometabolites + description: 'SynCom17 was one of the ring-trial treatments that drove reproducible, treatment-dependent changes + in the spent EcoFAB medium metabolome. + + ' + - source: SynCom17 EcoFAB Ring-Trial Perturbation + target: SynCom17 Plant Biomass and Root Development Decrease + description: 'The standardized SynCom17 treatment caused reproducible B. distachyon root-development decreases + across laboratories and reduced shoot biomass relative to axenic plants. + + ' + - source: Paraburkholderia Acid-Tolerant Root Colonization Traits + target: Paraburkholderia-Dominated SynCom17 Root Assembly + description: 'Acid-resistance genes, a unique T3SS module, biofilm formation, and rapid acidic-condition motility + provided candidate mechanisms for Paraburkholderia dominance in the full SynCom17 root microbiome. + + ' + - source: Paraburkholderia-Dominated SynCom17 Root Assembly + target: Treatment-Structured Rhizosphere Exometabolites + description: 'The Paraburkholderia-dominated SynCom17 root community modulated the rhizosphere exometabolite + profile relative to axenic and SynCom16 treatments, including decreased amino-acid relative concentrations. + + ' + edges_after: + - source: SynCom17 EcoFAB Ring-Trial Perturbation + target: Paraburkholderia-Dominated SynCom17 Root Assembly + description: SynCom17 inoculation supplied the 17-member community from which the OAS925-dominated root profile + developed by 22 DAI. The SynCom16 omission comparison supports an inoculum-composition effect, not identification + of the molecular mechanism or absolute loss of the other members. + - source: SynCom17 EcoFAB Ring-Trial Perturbation + target: Treatment-Structured Rhizosphere Exometabolites + description: SynCom17 inoculation altered the plant-microbe system and thereby changed the measured bulk spent-medium + metabolite profile relative to the control treatments. This is a treatment-level effect; microbial versus + plant production, uptake and extracellular enzyme activity were not separated. + - source: SynCom17 EcoFAB Ring-Trial Perturbation + target: SynCom17 Plant Biomass and Root Development Decrease + description: The SynCom17 inoculation treatment reduced shoot biomass in the combined-laboratory comparison + with axenic plants and reduced root development from 14 DAI onward. The experiment establishes a whole-treatment + response, not OAS925-only toxicity, competition for a specific nutrient or one necessary member. + - source: Paraburkholderia Acid-Tolerant Root Colonization Traits + target: Paraburkholderia-Dominated SynCom17 Root Assembly + description: HYPOTHESIZED - acid-tolerant motility, colonization traits and associated genomic modules may help + OAS925 establish and expand on roots, contributing to its relative dominance. Separate isolate assays and + gene annotation support candidate mechanisms, but none was selectively disrupted or rescued in the 17-member + community. + retained_edge_decisions: + - source: SynCom17 EcoFAB Ring-Trial Perturbation + target: Paraburkholderia-Dominated SynCom17 Root Assembly + rationale: SynCom17 inoculation supplied the 17-member community from which the OAS925-dominated root profile + developed by 22 DAI. The SynCom16 omission comparison supports an inoculum-composition effect, not identification + of the molecular mechanism or absolute loss of the other members. + - source: SynCom17 EcoFAB Ring-Trial Perturbation + target: Treatment-Structured Rhizosphere Exometabolites + rationale: SynCom17 inoculation altered the plant-microbe system and thereby changed the measured bulk spent-medium + metabolite profile relative to the control treatments. This is a treatment-level effect; microbial versus + plant production, uptake and extracellular enzyme activity were not separated. + - source: SynCom17 EcoFAB Ring-Trial Perturbation + target: SynCom17 Plant Biomass and Root Development Decrease + rationale: The SynCom17 inoculation treatment reduced shoot biomass in the combined-laboratory comparison with + axenic plants and reduced root development from 14 DAI onward. The experiment establishes a whole-treatment + response, not OAS925-only toxicity, competition for a specific nutrient or one necessary member. + - source: Paraburkholderia Acid-Tolerant Root Colonization Traits + target: Paraburkholderia-Dominated SynCom17 Root Assembly + rationale: HYPOTHESIZED - acid-tolerant motility, colonization traits and associated genomic modules may help + OAS925 establish and expand on roots, contributing to its relative dominance. Separate isolate assays and + gene annotation support candidate mechanisms, but none was selectively disrupted or rescued in the 17-member + community. + removed_edge_decisions: + - source: Paraburkholderia-Dominated SynCom17 Root Assembly + target: Treatment-Structured Rhizosphere Exometabolites + rationale: Treatment-associated composition and net metabolite profiles do not establish dominance-mediated + flux. + references: + - PMID:40920748 + - doi:10.1126/sciadv.adg7888 + issues: + - 1424 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/EcoFAB_Ring_Trial_SynCom17/2026-10-06T082610Z-codex-00f1fc.yaml + source_review: + PMID:40920748: + url: https://doi.org/10.1371/journal.pbio.3003358 + scope: Full cached primary main body through Methods 4.11 including figure captions; no visual figures, videos, + separate supplements or raw data. + doi:10.1126/sciadv.adg7888: + url: https://doi.org/10.1126/sciadv.adg7888 + scope: Cached abstract and full primary main body through Methods, including sterile-plant design and 14 individual + bacterial bioassays; no visual figures, separate supplements or raw data. +- path: kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml + id: CommunityMech:000296 + original_sha256: f4b35253c42baaaf97642de2cad0480f6bc362c0f10191c3e8317dd6cfbc1041 + record_sha256: 31e420e8e1553817b77ff5bde0d4229ee09eca2cbf62e5d6524a275801475627 + status: reviewed + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml + scope: Whole record and every existing node/arrow assessed against primary text at recorded access scope; non-graph + fields preserved, not certified. + summary: Retain cysteine-dependent support with mutant and viability controls and unresolved release route.; Retain + measured fucose/galactose return with its pH constraint and partial donor-maintenance feedback.; Retain reciprocal + mutualism as an in vitro summary, not an independently measured host endpoint. + renamed_nodes: {} + node_decisions: + - node: Cysteine provision enabling cooperative 2'-fucosyllactose degradation + rationale: Retain cysteine-dependent support with mutant and viability controls and unresolved release route. + - node: Monosaccharide return sustaining E. coli growth + rationale: Retain measured fucose/galactose return with its pH constraint and partial donor-maintenance feedback. + - node: Cooperative Infant-Gut HMO Mutualism + rationale: Retain reciprocal mutualism as an in vitro summary, not an independently measured host endpoint. + removed_node_decisions: [] + edges_before: + - source: Cysteine provision enabling cooperative 2'-fucosyllactose degradation + target: Monosaccharide return sustaining E. coli growth + description: 'Cysteine supplied by E. coli enables B. bifidum to cooperatively degrade 2''-fucosyllactose, liberating + monosaccharides that return carbon to E. coli. + + ' + - source: Monosaccharide return sustaining E. coli growth + target: Cysteine provision enabling cooperative 2'-fucosyllactose degradation + description: 'Monosaccharides returned from B. bifidum sustain E. coli growth and close the cooperative loop + that maintains cysteine provisioning to the auxotroph. + + ' + - source: Monosaccharide return sustaining E. coli growth + target: Cooperative Infant-Gut HMO Mutualism + description: 'Reciprocal cysteine and monosaccharide exchange completes the cooperative HMO-fed loop between + E. coli and B. bifidum. + + ' + edges_after: + - source: Cysteine provision enabling cooperative 2'-fucosyllactose degradation + target: Monosaccharide return sustaining E. coli growth + description: Cysteine-dependent support from E. coli permits the auxotrophic B. bifidum partner to grow and + degrade 2-fucosyllactose under the tested nutrient limitation, releasing sugar substrates usable by E. coli. + The mutant and killed-partner controls support the dependency; the sugar-consumption assay separately required + spent-medium pH adjustment to 6.3. + - source: Monosaccharide return sustaining E. coli growth + target: Cysteine provision enabling cooperative 2'-fucosyllactose degradation + description: PARTIAL - accessible HMO-derived sugars sustain E. coli growth and can maintain the donor population + supporting the cysteine-dependent partner. Reciprocal nutrient dependence is experimentally supported, but + a time-resolved sugar-to-cysteine feedback gain or isotope-resolved flux was not measured; the separate spent-medium + assay required pH 6.3. + retained_edge_decisions: + - source: Cysteine provision enabling cooperative 2'-fucosyllactose degradation + target: Monosaccharide return sustaining E. coli growth + rationale: Cysteine-dependent support from E. coli permits the auxotrophic B. bifidum partner to grow and degrade + 2-fucosyllactose under the tested nutrient limitation, releasing sugar substrates usable by E. coli. The mutant + and killed-partner controls support the dependency; the sugar-consumption assay separately required spent-medium + pH adjustment to 6.3. + - source: Monosaccharide return sustaining E. coli growth + target: Cysteine provision enabling cooperative 2'-fucosyllactose degradation + rationale: PARTIAL - accessible HMO-derived sugars sustain E. coli growth and can maintain the donor population + supporting the cysteine-dependent partner. Reciprocal nutrient dependence is experimentally supported, but + a time-resolved sugar-to-cysteine feedback gain or isotope-resolved flux was not measured; the separate spent-medium + assay required pH 6.3. + removed_edge_decisions: + - source: Monosaccharide return sustaining E. coli growth + target: Cooperative Infant-Gut HMO Mutualism + rationale: Mutualism summarizes the two exchange components; a part/whole restatement is not an independent + causal consequence. + references: + - PMID:42020426 + issues: + - 1425 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture/2026-10-06T082611Z-codex-5468bc.yaml + source_review: + PMID:42020426: + url: https://doi.org/10.1038/s41467-026-71764-7 + scope: Cached abstract and full primary main body through Methods, including figure captions; no visual figures, + source data, separate supplementary or peer-review files. +- path: kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml + id: CommunityMech:000357 + original_sha256: 2ff7b7aa7484493d67409006c5097c1a8f4efbb3750566a553cd008984890b8e + record_sha256: 5d5c7c4e2d853489be775ef1cc44ec611af78b2dff902287c1bf2f18bfa9ad4d + status: reviewed + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml + scope: Whole record and every existing node/arrow assessed against primary text at recorded access scope; non-graph + fields preserved, not certified. + summary: Retain the single division-of-labor node with overlapping substrate capacities, zero unsupported arrows + and an explicit quantitative evidence limitation. + renamed_nodes: {} + node_decisions: + - node: GL10-XL12 glucose-xylose niche partitioning + rationale: Retain the single division-of-labor node with overlapping substrate capacities, zero unsupported + arrows and an explicit quantitative evidence limitation. + removed_node_decisions: [] + edges_before: [] + edges_after: [] + retained_edge_decisions: [] + removed_edge_decisions: [] + references: + - PMID:42038008 + issues: + - 1426 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom/2026-10-06T082611Z-codex-a5ce14.yaml + source_review: + PMID:42038008: + url: https://doi.org/10.1016/j.bidere.2026.100072 + scope: Cached abstract and full primary main body through Conclusions with figure/table text; separate supplement + sidecar, visual figures and raw data not reviewed. diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv index cfc70e04d..5cc50897f 100644 --- a/reports/causal_graph_review/inventory.tsv +++ b/reports/causal_graph_review/inventory.tsv @@ -155,9 +155,9 @@ kb/communities/ENIGMA_Denitrifying_SynCom.yaml CommunityMech:000024 a35550c54115 kb/communities/Early_Dental_Biofilm_FiveSpecies.yaml CommunityMech:000081 5f765b58c46852bbb55161479525a0b8f6bcc3249c385ca296978ef580a62c75 3 0 61.7 reports/causal_graph_review/decisions/20261006-three-records-batch35.yaml reviewed kb/communities/East_River_Floodplain_Core_Microbiome.yaml CommunityMech:000137 152ced119bc2c3699bd6d14465561ce7fa7e5010c0defbeb40f027303b9b83e7 3 0 62.5 reports/causal_graph_review/decisions/20261006-three-records-batch35.yaml reviewed kb/communities/East_River_Hillslope_Riparian_Transect_Community.yaml CommunityMech:000233 fbc3e3dba6d44ba88f701bfb38ef387898aa1000579763e1ab676817c6abf0ce 4 3 88.8 reports/causal_graph_review/decisions/20261006-three-records-batch35.yaml reviewed -kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml CommunityMech:000025 60fc1f9d6fa2748ea58289e5c6632f41f1174b6a1e7d66a8ce8bd22041f2b56b 6 5 100.0 pending -kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml CommunityMech:000296 f4b35253c42baaaf97642de2cad0480f6bc362c0f10191c3e8317dd6cfbc1041 3 3 100.0 pending -kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml CommunityMech:000357 2ff7b7aa7484493d67409006c5097c1a8f4efbb3750566a553cd008984890b8e 1 0 65.0 pending +kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml CommunityMech:000025 2e0f6da3387904e4f33283c5117df14ab55c80a1ec7d7290fe00343f69569f1d 5 4 87.0 reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml reviewed +kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml CommunityMech:000296 31e420e8e1553817b77ff5bde0d4229ee09eca2cbf62e5d6524a275801475627 3 2 100.0 reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml reviewed +kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml CommunityMech:000357 5d5c7c4e2d853489be775ef1cc44ec611af78b2dff902287c1bf2f18bfa9ad4d 1 0 65.0 reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml reviewed kb/communities/Ecoli_K12_MG1655_Arg_Met_CrossFeeding_Coculture.yaml CommunityMech:000455 73a13f3ab90537e4f60c32b4ea2124dd2937999f86a5cca2bd0bc5af4dad4d14 3 0 75.0 pending kb/communities/Electrostimulated_Mixotrophic_VFA_Producing_Enrichment_Consortium.yaml CommunityMech:000287 2839d3714e549d6affa0c5994e9670311e21d2648e427381ae2eaee513de0448 5 5 100.0 pending kb/communities/Electrostimulated_Toluene_Methanogenic_Microbiota.yaml CommunityMech:000440 e2fb839f390a646f5dc997bdd7766dec1fc25b53535b2860d0f378ec5f0d70ac 3 0 73.3 pending diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json index f8dbb4032..0d6874916 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": 1470, - "edges": 697, + "nodes": 1469, + "edges": 695, "records_without_nodes": 8, "records_without_edges": 146, "review_status_counts": { "needs_research": 7, - "pending": 306, - "reviewed": 147 + "pending": 303, + "reviewed": 150 }, "structural_defects": [], "network_audit": [ diff --git a/reports/causal_graph_review/validation-20261006-batch36.json b/reports/causal_graph_review/validation-20261006-batch36.json new file mode 100644 index 000000000..eef5d9239 --- /dev/null +++ b/reports/causal_graph_review/validation-20261006-batch36.json @@ -0,0 +1,750 @@ +{ + "base_commit": "54ce25c9b7f3b3bacd2f68d9e567756aff8fe397", + "scope": [ + "kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml", + "kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml", + "kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml" + ], + "reference_validator_version": "0.1.7", + "results": [ + { + "check": "EcoFAB_Ring_Trial_SynCom17-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/EcoFAB_Ring_Trial_SynCom17-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "EcoFAB_Ring_Trial_SynCom17-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch36/EcoFAB_Ring_Trial_SynCom17-strict.tsv", + "kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/EcoFAB_Ring_Trial_SynCom17-strict.log", + "log_sha256": "a556dda5b344c3891759d6d38ccb5b066fc066a92e7a72586f172646796d8065", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch36/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-batch36/EcoFAB_Ring_Trial_SynCom17-strict.tsv\n" + }, + { + "check": "EcoFAB_Ring_Trial_SynCom17-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/EcoFAB_Ring_Trial_SynCom17-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "EcoFAB_Ring_Trial_SynCom17-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/EcoFAB_Ring_Trial_SynCom17-references.log", + "log_sha256": "96cb8e8c847c678c607f5c815a581ff367e3096b36d62d29208b6401c8ea8320", + "output_tail": "Validating kb/communities/EcoFAB_Ring_Trial_SynCom17.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/EcoFAB_Ring_Trial_SynCom17.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": "EcoFAB_Ring_Trial_SynCom17-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/EcoFAB_Ring_Trial_SynCom17-snippets.log", + "log_sha256": "e8fe5a6250456e2c30f1d505e351e747d7545f77929e05a8d20e9212e652c822", + "output_tail": "# 30 evidence snippets scanned across 1 files\n MATCH 30\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": "EcoFAB_Ring_Trial_SynCom17-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/EcoFAB_Ring_Trial_SynCom17-rank.log", + "log_sha256": "d3e795eee8b4a5ddeb7c2e0ce7272a86685ef75d9ed42336e94ce88ce4282a82", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000025\",\n \"name\": \"EcoFAB 2.0 Root Microbiome Ring Trial SynCom17\",\n \"score\": 87.0,\n \"taxonomy\": 17,\n \"connected_taxa\": 17,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 5,\n \"downstream_edges\": 4,\n \"interaction_evidence\": 6,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"metabolites_or_biological_processes\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml\"\n }\n]\n" + }, + { + "check": "EcoFAB_Ring_Trial_SynCom17-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/EcoFAB_Ring_Trial_SynCom17/2026-10-06T082610Z-codex-00f1fc.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/EcoFAB_Ring_Trial_SynCom17-history-0.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch36/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-strict.tsv", + "kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-strict.log", + "log_sha256": "54964b593faef6c6a371f223a9a88aaa5c7b3bbed5d2222366ec840c7574b3a6", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch36/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-batch36/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-strict.tsv\n" + }, + { + "check": "Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-references.log", + "log_sha256": "6ccf4efc9518440827b985d6733c97ffd171226eb692862dae3bf292507aef89", + "output_tail": "Validating kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.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/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.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": "Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-snippets.log", + "log_sha256": "aec1f2712a64b5cd549f668dd69d5e1ab54d6d5693d8f53bbce26317b755b383", + "output_tail": "# 11 evidence snippets scanned across 1 files\n MATCH 11\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": "Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-rank.log", + "log_sha256": "f556b71a2dc09c64e17a65b8023674a087a9efe96e1348b707e0f7e3b01158e1", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000296\",\n \"name\": \"Escherichia coli + Bifidobacterium bifidum Infant-gut Mutualistic Co-culture\",\n \"score\": 100.0,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 6,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [],\n \"path\": \"kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml\"\n }\n]\n" + }, + { + "check": "Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture/2026-10-06T082611Z-codex-5468bc.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture-history-0.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch36/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-strict.tsv", + "kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-strict.log", + "log_sha256": "8bfad7491803fca341937b41dd6de50bbd9442a0bee605c65c201be8276953b9", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch36/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-batch36/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-strict.tsv\n" + }, + { + "check": "Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-references.log", + "log_sha256": "1858e6ba47c510daba24aa3fcac58ef8244e7f94bf5d02e82e0ec8feba6b900c", + "output_tail": "Validating kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.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/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.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": "Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-snippets.log", + "log_sha256": "5e8f444ec0711fbe519862a7794e44c377fc32f6c14af6848ba2ada8e37c3e8f", + "output_tail": "# 38 evidence snippets scanned across 1 files\n MATCH 38\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": "Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-rank.log", + "log_sha256": "4417bd47fed44ed563e4fb4b56bb37abb92591b4b1666772cce2ca92c4e78022", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000357\",\n \"name\": \"E. coli GL10-XL12 D-Lactate Mixed-Sugar SynCom\",\n \"score\": 65.0,\n \"taxonomy\": 2,\n \"connected_taxa\": 2,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 1,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 5,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_interactions\",\n \"downstream\"\n ],\n \"path\": \"kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml\"\n }\n]\n" + }, + { + "check": "Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom/2026-10-06T082611Z-codex-a5ce14.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom-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-batch36/inventory.log", + "log_sha256": "fee13e7fe2657a1ac1e9f1df3a2f91d33fc8a4062e011e8e60674a6e00ee10a9", + "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\": 1469,\n \"edges\": 695,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 146,\n \"review_status_counts\": {\n \"needs_research\": 7,\n \"pending\": 303,\n \"reviewed\": 150\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-batch36/network.log", + "log_sha256": "c035fe6ed0bbf90371ab58d6557716c51eea79ac628e204173d70075f9efaa26", + "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-batch36/rank-all.log", + "log_sha256": "c964453ef2b07c9a9d1d9bbba7b2d6927b92864f84c6c4bb22a9b449b269d329", + "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-batch36/render.log", + "log_sha256": "38ff267c4df7ae4104a2b6ac5301b154ec4087d64e0a887769593e48b3390ae9", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch36/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch36/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch36/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-batch36/render-repeat.log", + "log_sha256": "38ff267c4df7ae4104a2b6ac5301b154ec4087d64e0a887769593e48b3390ae9", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch36/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch36/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch36/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch36/docs/index.html\n" + }, + { + "check": "connectivity-survey", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-c", + "import json,runpy; print(json.dumps(runpy.run_path(\"tests/test_community_level_connectivity_credit.py\")[\"_survey\"](),sort_keys=True))" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/connectivity-survey.log", + "log_sha256": "fa6c1a2c91592fb466c7966fc012c6de0b6ef57d278225d99b361d47a58993a9", + "output_tail": "{\"community_level_only\": 264, \"credited_solely_by_the_rule\": 1221, \"mixed\": 123, \"records\": 460, \"taxa\": 1494, \"with_community_level\": 387}\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_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-batch36/regressions.log", + "log_sha256": "0c92a13bff8d9c4706bb08d7964d7cc9fc429bb3b20a51b0e0e45ffd66baa3e9", + "output_tail": "........................................................................ [ 18%]\n........................................................................ [ 36%]\n........................................................................ [ 55%]\n........................................................................ [ 73%]\n........................................................................ [ 91%]\n................................ [100%]\n392 passed in 179.44s (0:02:59)\n" + }, + { + "check": "black", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black", + "--check", + "tests/test_causal_review_batch36.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/black.log", + "log_sha256": "1a56c7cd8457fd05d978cfbd139d7bfd86e86acaa9b57668e718ef8bccc0cf48", + "output_tail": "All done! \u2728 \ud83c\udf70 \u2728\n1 file would be left unchanged.\n" + }, + { + "check": "ruff", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/wCcxEYRM4HeHgwYPZemHX/bin/ruff", + "check", + "tests/test_causal_review_batch36.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch36/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-batch36/diff-check.log", + "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "output_tail": "" + } + ], + "limitations": [ + "Nine existing nodes retained; one out-of-system node and two unsupported mediation/summary arrows removed. No new connectivity or provider request.", + "Four cached primary main bodies reviewed at the stated access scope, not visual figures, separate supplements or raw data. All source caches unchanged.", + "Canonical taxonomy and non-graph raw blocks preserved, not certified; #1427-1429 remain open.", + "OAS925 dominance mechanism remains hypothesized; bulk medium is not direct cross-feeding. Separate sterile-plant nitrogen evidence is excluded from this community graph.", + "HMO reciprocal exchange is supported in the tested in vitro pair. Its sugar-to-cysteine maintenance link is PARTIAL; cysteine release route, feedback gain and host regulation remain unresolved.", + "GL10/XL12 specialization is overlapping, not exclusive. Zero arrows preserved; source quantitative disagreement is not silently reconciled.", + "Self-adversarial review is not independent approval, protected main merge or full-corpus completion; textual snippet matching is not scientific validation.", + "HTML descriptions checked by exact parser and repeat renders, not browser screenshots. Post-commit docs-current is a separate publication gate.", + "All three reference-validator commands exit 0 with Total checks: 0. This is a no-op, not evidence validation. Independent snippet counts and primary-source review are separate." + ], + "snippet_counts_by_record": { + "kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml": { + "MATCH": 30, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml": { + "MATCH": 11, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml": { + "MATCH": 38, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + } + }, + "unchanged_raw_blocks": 40, + "unchanged_record_files": 457, + "unchanged_cache_files": 920, + "network_delta": { + "existing_findings_preserved": 33, + "new_disconnected": 0, + "added_findings": {}, + "rationale": "All baseline warnings exactly preserved; no invented graph links to suppress warnings." + }, + "render_determinism": true, + "published_description_coverage": { + "pages": 456, + "nodes": 1455, + "arrows": 687 + }, + "participant_census": { + "connectivity_before": { + "community_level_only": 265, + "credited_solely_by_the_rule": 1222, + "mixed": 122, + "records": 460, + "taxa": 1494, + "with_community_level": 387 + }, + "connectivity_after": { + "community_level_only": 264, + "credited_solely_by_the_rule": 1221, + "mixed": 123, + "records": 460, + "taxa": 1494, + "with_community_level": 387 + }, + "exact_change": "All three records already registered; 183-user registry unchanged. EcoFAB becomes mixed-scope as the OAS925 trait becomes intrinsic source-only PAIRWISE; sole broad credit falls by one. No taxonomy or numeric-bound changes.", + "numeric_bounds_changed": false + }, + "corpus": { + "scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.", + "records": 460, + "nodes": 1469, + "edges": 695, + "records_without_nodes": 8, + "records_without_edges": 146, + "review_status_counts": { + "needs_research": 7, + "pending": 303, + "reviewed": 150 + }, + "structural_defects": [] + }, + "tested_file_sha256": { + "reports/causal_graph_review/decisions/20261006-three-records-batch36.yaml": "1b57537e06001eaf8d91b2ef58bf176281a616c4a21158cf4679fb969ce010e8", + "tests/test_causal_review_batch36.py": "7b5456197cd9afb2ac01e324356687aae69d8335755702e3c19b25ced69e32a2", + "kb/communities/EcoFAB_Ring_Trial_SynCom17.yaml": "2e0f6da3387904e4f33283c5117df14ab55c80a1ec7d7290fe00343f69569f1d", + "kb/communities/Ecoli_Bifidobacterium_bifidum_Infant_gut_HMO_Mutualism_Coculture.yaml": "31e420e8e1553817b77ff5bde0d4229ee09eca2cbf62e5d6524a275801475627", + "kb/communities/Ecoli_GL10_XL12_D_Lactate_Mixed_Sugar_SynCom.yaml": "5d5c7c4e2d853489be775ef1cc44ec611af78b2dff902287c1bf2f18bfa9ad4d" + }, + "status": "verified_three_completed_existing_graph_reviews", + "reference_validator_effective_checks": 0, + "reference_validator_caveat": "All three reference-validator commands exit 0 with Total checks: 0. This is a no-op, not evidence validation. Independent snippet counts and primary-source review are separate.", + "pre_research_baseline": { + "base_commit": "54ce25c9b7f3b3bacd2f68d9e567756aff8fe397", + "base_tree": "254290bd77b3009f858019ea4ce274d0e9ba20e5", + "research_worktree": "/private/tmp/communitymech-causal-batch35", + "checks": [ + { + "name": "rank", + "command": [ + "just", + "rank-causal-graphs" + ], + "exit_code": 0, + "expected_exit_code": 0, + "log": "/private/tmp/communitymech-batch36/baseline-rank.log", + "sha256": "79b4626d29c880cb0b912c60156c47aad30af5e584e242b0579a81a6c8d5bf44", + "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-batch36/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-batch36/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-batch36/baseline-downstream.log", + "sha256": "a0517b49a03430d202d951ab76d0cdbf328be3b7cf1ed85cb4919e64d41a8f28", + "output_tail": "yaml:247: downstream:\nkb/communities/Clostridium_Carboxidivorans_Kluyveri_CO_Chain_Elongation_Coculture.yaml:344: downstream:\nkb/communities/Phylogenetically_Diverse_Denitrifying_SynCom.yaml:76: downstream:\nkb/communities/Phylogenetically_Diverse_Denitrifying_SynCom.yaml:95: downstream:\nkb/communities/Phylogenetically_Diverse_Denitrifying_SynCom.yaml:122: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:311: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:365: downstream:\nkb/communities/GOM_Oil_Degrading_Consortium.yaml:119: downstream:\nkb/communities/GOM_Oil_Degrading_Consortium.yaml:160: downstream:\nkb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml:157: downstream:\nkb/communities/Methylotuvimicrobium_Synechococcus_Gas_Feedstock_Coculture.yaml:203: downstream:\nkb/communities/Emiliania_Phaeobacter_Dynamic_Interaction.yaml:107: downstream:\nkb/communities/Emiliania_Phaeobacter_Dynamic_Interaction.yaml:147: downstream:\nkb/communities/Lunar_Simulant_Phosphate_Solubilizing_Bacteria_Nicotiana.yaml:285: downstream:\nkb/communities/Lunar_Simulant_Phosphate_Solubilizing_Bacteria_Nicotiana.yaml:324: downstream:\nkb/communities/PMI_Variovorax_Thermotolerance_Collection.yaml:330: downstream:\nkb/communities/Ferroplasma_Leptospirillum_Syntrophy.yaml:153: downstream:\nkb/communities/Ferroplasma_Leptospirillum_Syntrophy.yaml:200: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:65: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:98: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:131: downstream:\nkb/communities/Populus_Salt_Tolerant_SynComs.yaml:155: downstream:\nkb/communities/Salar_Atacama_Lithium_Brine_Community.yaml:295: downstream:\nkb/communities/Salar_Atacama_Lithium_Brine_Community.yaml:339: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:268: downstream:\nkb/communities/Methylacidiphilum_Galdieria_Thermoacidophilic_Coculture.yaml:315: downstream:\nkb/communities/SO3_BS3_Lithium_Battery_Bioleaching_Consortium.yaml:141: downstream:\nkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml:199: downstream:\nkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml:267: downstream:\nkb/communities/Miscanthus_REE_Tailings_Nitrogen_SynCom10.yaml:135: downstream:\nkb/communities/Miscanthus_REE_Tailings_Nitrogen_SynCom10.yaml:173: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:120: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:152: downstream:\nkb/communities/Cable_Bacteria_Photosynthetic_Biofilm_Sediment.yaml:80: downstream:\nkb/communities/Cable_Bacteria_Photosynthetic_Biofilm_Sediment.yaml:117: downstream:\nkb/communities/Lake_Washington_Methane_Oxygen_Methylotroph_Community.yaml:336: downstream:\nkb/communities/Parachlorella_Saccharomyces_Mutualistic_Coculture.yaml:83: downstream:\nkb/communities/Parachlorella_Saccharomyces_Mutualistic_Coculture.yaml:121: downstream:\n" + } + ] + } +} diff --git a/tests/test_causal_review_batch36.py b/tests/test_causal_review_batch36.py new file mode 100644 index 000000000..35b38db89 --- /dev/null +++ b/tests/test_causal_review_batch36.py @@ -0,0 +1,159 @@ +"""Preserve treatment, assay, strain and causal-mediation boundaries.""" + +import hashlib +from collections import Counter +from pathlib import Path + +import yaml + +ROOT = Path(__file__).resolve().parents[1] +LEDGER = ROOT / "reports/causal_graph_review/decisions/20261006-three-records-batch36.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_ecofab_excludes_sterile_plant_experiment_and_keeps_treatment_effects(): + ledger, docs = records() + treatment, trait, assembly, medium, biomass = docs[0]["ecological_interactions"] + assert [n["node"] for n in ledger["records"][0]["removed_node_decisions"]] == [ + "Nitrogen-Status EcoFAB Root Exudation" + ] + assert {e["target"] for e in treatment["downstream"]} == { + assembly["name"], + medium["name"], + biomass["name"], + } + for node in [treatment, assembly, medium, biomass]: + assert node["scope"] == "COMMUNITY_LEVEL" + assert len(node["participating_taxa"]) == 17 + assert "interaction_type" not in node + assert "10-day-old" in treatment["description"] + assert "sterile" in docs[0]["discussions"][-1]["rationale"] + assert "14 bacterial bioassays were individual" in docs[0]["discussions"][-1]["rationale"] + + +def test_ecofab_trait_mechanism_is_intrinsic_and_hypothesized(): + _, docs = records() + treatment, trait, assembly, medium, _ = docs[0]["ecological_interactions"] + assert trait["scope"] == "PAIRWISE" + assert trait["source_taxon"]["preferred_term"] == "Paraburkholderia sp. OAS925" + assert not {"target_taxon", "participating_taxa", "interaction_type"} & trait.keys() + assert trait["downstream"][0]["description"].startswith("HYPOTHESIZED -") + assert "sixth, not first" in trait["description"] + assert all("biological_processes" not in n for n in [treatment, trait, assembly]) + assert "downstream" not in assembly + assert "16S reads" in assembly["description"] + assert "extracellular enzyme activity" in medium["description"] + assert "not identified donor-to-recipient cross-feeding" in medium["description"] + + +def test_hmo_retains_reciprocal_exchange_not_part_whole_summary_arrow(): + _, docs = records() + cysteine, sugars, mutualism = docs[1]["ecological_interactions"] + assert [e["target"] for e in cysteine["downstream"]] == [sugars["name"]] + assert [e["target"] for e in sugars["downstream"]] == [cysteine["name"]] + assert sugars["downstream"][0]["description"].startswith("PARTIAL -") + assert "downstream" not in mutualism + assert [n["interaction_type"] for n in [cysteine, sugars, mutualism]] == [ + "CROSS_FEEDING", + "CROSS_FEEDING", + "MUTUALISM", + ] + assert cysteine["source_taxon"] == sugars["target_taxon"] + assert cysteine["target_taxon"] == sugars["source_taxon"] + assert "part/whole restatement" in docs[1]["discussions"][-1]["rationale"] + + +def test_hmo_bounds_release_route_ph_and_host_inference(): + _, docs = records() + cysteine, sugars, mutualism = docs[1]["ecological_interactions"] + assert "E. coli K12" in cysteine["description"] + assert "delta-cysE" in cysteine["description"] + assert "overflow or lysis" in cysteine["description"] + assert "fucose and galactose" in sugars["description"] + assert "pH readjustment from 4.3 to 6.3" in sugars["description"] + assert "0.5%" in mutualism["description"] + assert "without added cysteine or casamino acids" in mutualism["description"] + assert "living infants remain untested" in mutualism["description"] + + +def test_gl10_specialization_is_overlapping_not_direct_cross_feeding(): + _, docs = records() + doc = docs[2] + (node,) = doc["ecological_interactions"] + assert "downstream" not in node + assert node["interaction_type"] == "NICHE_PARTITIONING" + assert "partial, overlapping" in node["description"] + assert "GL10 retains xylose metabolism" in node["description"] + assert "XL12 still consumes glucose" in node["description"] + assert len({p["term"]["id"] for p in node["participating_taxa"]}) == 1 + assert [p["preferred_term"] for p in node["participating_taxa"]] == [ + "Escherichia coli GL10", + "Escherichia coli XL12", + ] + assert node["evidence"][1]["supports"] == "PARTIAL" + assert "1.22 g/L at 36 h" in node["evidence"][1]["explanation"] + assert doc["discussions"][0]["discussion_id"] == "gl10_xl12_direct_cross_feeding" + assert len(doc["discussions"]) == 2 + + +def test_batch36_canonical_participants_anchors_history_and_hashes(): + ledger, docs = records() + for row, doc in zip(ledger["records"], docs, strict=True): + canonical = { + (t["taxon_term"]["term"]["id"], t["taxon_term"]["preferred_term"]): t["taxon_term"] + for t in doc["taxonomy"] + } + names = {n["name"] for n in doc["ecological_interactions"]} + for node in doc["ecological_interactions"]: + terms = node.get("participating_taxa", []) + [ + node[k] for k in ["source_taxon", "target_taxon"] if k in node + ] + for term in terms: + assert ( + term["term"] == canonical[(term["term"]["id"], term["preferred_term"])]["term"] + ) + assert all( + e["target"] in names and e["target"] != node["name"] + for e in node.get("downstream", []) + ) + for gap in doc["discussions"]: + assert gap["kind"] == "KNOWLEDGE_GAP" and gap["status"] == "OPEN" + assert set(gap["attaches_to"]) <= {"ecological_interactions#" + n for n in names} + assert row["curation_events_added"] == 1 and len(row["history_files"]) == 1 + assert doc["curation_history"][-1]["llm_assisted"] is True + assert hashlib.sha256((ROOT / row["path"]).read_bytes()).hexdigest() == row["record_sha256"] + + +def test_batch36_all_original_nodes_and_arrows_have_dispositions(): + ledger, docs = records() + assert ledger["independent_approval"] is False and ledger["issues"] == [1424, 1425, 1426] + assert sum(len(r["node_decisions"]) for r in ledger["records"]) == 9 + assert sum(len(r["removed_node_decisions"]) for r in ledger["records"]) == 1 + assert sum(len(r["retained_edge_decisions"]) for r in ledger["records"]) == 6 + assert sum(len(r["removed_edge_decisions"]) for r in ledger["records"]) == 2 + for row, doc in zip(ledger["records"], docs, strict=True): + assert not row["renamed_nodes"] + assert Counter(d["node"] for d in row["node_decisions"]) == Counter( + n["name"] for n in doc["ecological_interactions"] + ) + assert {(e["source"], e["target"]) for e in row["edges_before"]} == { + (e["source"], e["target"]) for e in row["edges_after"] + row["removed_edge_decisions"] + } + for path, digest in ledger["reference_cache_original_hashes"].items(): + assert hashlib.sha256((ROOT / path).read_bytes()).hexdigest() == digest + + +def test_batch36_nongraph_metadata_and_unread_sources_are_not_certified(): + ledger, docs = records() + assert ledger["open_nongraph_followups"] == [1427, 1428, 1429] + assert ledger["open_graph_research"] == [] + assert "no_provider_job_or_charge" in ledger["edison"]["status"] + assert docs[0]["taxonomy"][6]["taxon_term"]["term"]["id"] == "NCBITaxon:85413" + assert docs[0]["taxonomy"][6]["taxon_term"]["term"]["label"] == "Allobosea" + assert "0.1%" in docs[1]["growth_media"][0]["name"] + assert ledger["issue_deduplication"]["ignored_hidden_local_files_included"] is True + assert ledger["issue_deduplication"]["comments_exhaustive"] is False