diff --git a/docs/communities/MSC1_Dominant_Core.html b/docs/communities/MSC1_Dominant_Core.html index a21f774ea..8b97d4286 100644 --- a/docs/communities/MSC1_Dominant_Core.html +++ b/docs/communities/MSC1_Dominant_Core.html @@ -799,7 +799,7 @@

Ecological Interactions

Ecological interaction network for MSC-1 Dominant Core - 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 (syntrophy, niche partitioning). + Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction.
@@ -807,13 +807,8 @@

Ecological Interactions

Syntrophy -
-
- Niche partitioning + aria-hidden="true" data-symbol="symbolTriangle2" + data-color="#929caa"> Other
@@ -822,13 +817,33 @@

Ecological Interactions

Chitin-Selected MSC-1 Stabilization

- NICHE_PARTITIONING
-

Serial enrichment on chitin/soil-extract agar selected MSC-1 as a stable, naturally interacting arid-grassland soil consortium whose dominant members persisted through extended passaging and two storage-revival cycles. -

+

Chitin-selected MSC-1 retained a broadly similar composition across prolonged passaging and storage-revival cycles, with residual drift rather than invariant membership. The selected consortium had 31 detected bacterial OTUs in Table 1 and Results, with its top 13 accounting for over 98% of reads; other source passages say approximately 35. The nine canonical participants represent an incomplete roster, not a defined nine-strain mixture. HYPOTHESIZED - repeated co-enrichment could reflect metabolic codependencies, but persistence and selection on chitin/soil-extract agar do not demonstrate obligate dependence, niche partitioning or measured chitin turnover.

+ + + + +

Participating Taxa: + + Rhodococcus sp., + + Streptomyces sp., + + Dyadobacter sp., + + Taibaiella sp., + + Bosea sp., + + Sphingopyxis sp., + + Ensifer sp., + Variovorax sp., + Mycobacterium sp. +

@@ -842,17 +857,6 @@

Chitin-Selected MSC-1 Stabilization

-

Biological Processes:

- - @@ -879,7 +883,7 @@

Evidence

PMID:32983014 - - SUPPORT (IN_VITRO) + - PARTIAL (IN_VITRO)
"Because these species were co-enriched together over a 22-week period and through two rounds of freezing and revival, we hypothesized that there existed metabolic co-dependencies within MSC-1."
@@ -893,10 +897,8 @@

Evidence

NAG Positive Co-Cultures

- SYNTROPHY
-

Pairwise MSC-1 isolate assays in M9 plus N-acetylglucosamine detected statistically significant positive interactions, including Streptomyces-Rhodococcus, Streptomyces-Variovorax, Rhizobium-Rhodococcus, and Ensifer-Rhodococcus co-cultures. -

+

Pairwise isolates in M9 with 10 mM soluble N-acetylglucosamine (NAG) showed higher early-exponential optical density than the expected average of the two corresponding monocultures (p < 0.01 for reported positive comparisons). Named examples include Streptomyces-Rhodococcus, Streptomyces-Variovorax, Rhizobium-Rhodococcus and Ensifer-Rhodococcus. The difference was not significant in late exponential phase. Total OD does not resolve each partner biomass, reciprocal benefit or obligate syntrophy, and these NAG assays do not measure chitin-polymer degradation. The four canonical participants are a partial set of the named positive pairs; the source Rhizobium isolate is not canonically resolved here, and V4 does not distinguish which Ensifer OTU matches the isolate.

@@ -925,17 +927,6 @@

NAG Positive Co-Cultures

-

Biological Processes:

- - @@ -976,28 +967,23 @@

Evidence

Soil Co-Abundance Central Hubs

- NICHE_PARTITIONING
-

Soil incubations across chitin, temperature, salt, and herbicide perturbations produced a Pearson co-abundance network whose high-centrality MSC-1 taxa included Rhodococcus, Mycobacterium, and Rhizobiales members. -

+

A Pearson network pooled normalized relative 16S abundances across soil-incubation conditions, replicate samples and time points. Rhodococcus, Mycobacterium and Rhizobiales-associated OTUs had high betweenness centrality. Rhizobiales is an order, not a genus or a verified isolate identity. The two explicit canonical participants identify the named Rhodococcus and Mycobacterium subset, not every hub. Positive and negative co-abundance associations can reflect common environmental or temporal responses; they do not establish pairwise facilitation, competition, niche partitioning or keystone necessity. Soil chitin and liquid NAG assays are distinct contexts, and their partly matching correlation signs do not establish a shared mechanism.

+

Participating Taxa: + Rhodococcus sp., + Mycobacterium sp. + +

-

Biological Processes:

- @@ -1012,7 +998,7 @@

Evidence

PMID:32983014 - - SUPPORT (IN_VITRO) + - SUPPORT (COMPUTATIONAL)
"Rhodococcus had several positive and negative correlations with other genera of MSC-1, including Streptomyces, Variovorax, and Delftia (negative) and Rhizobiales (positive)."
@@ -1025,7 +1011,7 @@

Evidence

PMID:32983014 - - SUPPORT (IN_VITRO) + - SUPPORT (COMPUTATIONAL)
"species of the Rhodococcus, Mycobacterium and Rhizobiales genera occupied positions of high centrality in the network"
@@ -1041,6 +1027,25 @@

Evidence

+
+

Knowledge gaps & discussions (1)

+ +
+

+ KNOWLEDGE_GAP + OPEN + Which MSC-1 dependencies explain persistence and conditional coculture growth? +

+

Retain three observations and zero arrows, preserving the earlier workflow-edge deletion. Early total OD on supplied soluble NAG is not partner-resolved benefit or late-phase improvement. Soil-network centrality from pooled relative abundance is not causal interaction or keystone necessity. Canonical participants are explicitly incomplete, and the source Table 1 maps the Rhizobium isolate to Rhizomicrobium OTU68; no new taxon equivalence is asserted. Storage drift, 31-versus-35 OTUs, Sect_C_4-versus-C2 naming, herbicide dose and inconsistent positive/negative Methods inequalities need separate reconciliation under #1569. Whole fresh primary body and main text table read; figure pixels, separate supplements and raw data not audited.

+ +

Attaches to: ecological_interactions#Chitin-Selected MSC-1 Stabilization, ecological_interactions#NAG Positive Co-Cultures, ecological_interactions#Soil Co-Abundance Central Hubs

+ + + + +
+ +
@@ -1314,7 +1319,7 @@

Evidence

(function() { var intId = "interaction:0"; - var intType = "NICHE_PARTITIONING"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1323,10 +1328,6 @@

Evidence

var processes = []; - - processes.push("chitin catabolic process"); - - var evidenceCount = 2; nodes.push({ @@ -1342,11 +1343,38 @@

Evidence

+ var participantKeys = [ + + "Rhodococcus sp.", + + "Streptomyces sp.", + + "Dyadobacter sp.", + + "Taibaiella sp.", + + "Bosea sp.", + + "Sphingopyxis sp.", + + "Ensifer sp.", + + "Variovorax sp.", + + "Mycobacterium sp." + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { var intId = "interaction:1"; - var intType = "SYNTROPHY"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1355,10 +1383,6 @@

Evidence

var processes = []; - - processes.push("glucosamine catabolic process"); - - var evidenceCount = 2; nodes.push({ @@ -1395,15 +1419,11 @@

Evidence

(function() { var intId = "interaction:2"; - var intType = "NICHE_PARTITIONING"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; - - processes.push("biological process involved in interspecies interaction between organisms"); - - var evidenceCount = 2; nodes.push({ @@ -1419,6 +1439,19 @@

Evidence

+ var participantKeys = [ + + "Rhodococcus sp.", + + "Mycobacterium sp." + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); diff --git a/docs/communities/MSC2_Model_Soil_Consortium.html b/docs/communities/MSC2_Model_Soil_Consortium.html index d224c656e..01f4538a8 100644 --- a/docs/communities/MSC2_Model_Soil_Consortium.html +++ b/docs/communities/MSC2_Model_Soil_Consortium.html @@ -660,7 +660,7 @@

Ecological Interactions

Ecological interaction network for Model Soil Consortium-2 (MSC-2) - 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, syntrophy, niche partitioning). + Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction.
@@ -668,18 +668,8 @@

Ecological Interactions

Cross-feeding -
-
- Syntrophy -
-
- Niche partitioning + aria-hidden="true" data-symbol="symbolTriangle2" + data-color="#929caa"> Other
@@ -688,9 +678,8 @@

Ecological Interactions

Primary Chitin Polymer Degradation

- SYNTROPHY
-

Dyadobacter, Ensifer MSC1_011, Variovorax, Sinorhizobium, and Rhodococcus MSC-2 members can grow on chitin as the sole carbon source and act as primary degraders that initiate chitin decomposition before nondegraders profit from released breakdown products.

+

Five individual MSC-2 isolates, Dyadobacter, Ensifer MSC1_011, Variovorax, Sinorhizobium and Rhodococcus, grew with chitin as the sole added carbon source in monoculture. This establishes conditional chitin-use phenotypes, not obligate syntrophy or exclusive initiating roles in the mixed community. Monocultures used 100 ppm chitin; the community used 500 ppm after chitin-plus-NAG preconditioning, with 18 mM ammonium in M9. Streptomyces, Neorhizobium and Sphingopyxis lacked monoculture growth even in reported 500/1000 ppm tests. Species roles in the community are inferred from additional molecular data and need not equal their monoculture roles.

@@ -743,7 +732,7 @@

Primary Chitin Polymer Degradation

→ Chitin Breakdown Product Sharing -

Primary chitin degradation releases soluble decomposition products that other MSC-2 members can consume in the mixed community.

+

HYPOTHESIZED - chitin degradation by community members releases assimilable products that could support other members. Monoculture growth, community transcripts and cell-pellet metabolites support this model, but they do not measure donor-to-recipient extracellular flux or prove that the five monoculture-positive isolates are the exclusive initial donors.

@@ -772,7 +761,7 @@

Evidence

PMID:36154140 - - SUPPORT (IN_VITRO) + - PARTIAL (IN_VITRO)
"certain species act as primary degraders of carbon sources and that the most successful species are likely those that can take the most advantage of breakdown products"
@@ -786,12 +775,31 @@

Evidence

Chitin Breakdown Product Sharing

- CROSS_FEEDING
-

Community growth on chitin is supported by interspecies sharing of decomposition products, so the most abundant members are not necessarily the taxa that directly metabolize chitin in monoculture.

+

HYPOTHESIZED - MSC-2 members share chitin-derived products, allowing taxa with broader substrate-use potential to grow in the consortium. Community DNA/RNA increased and member transcript proportions differed; these are not direct measurements of equal viable abundance or partner-resolved carbon flux. GC-MS found increased NAG at 118 versus 70 hours in cell-pellet extracts after supernatant removal, not extracellular transfer measurements. Mixed-bag metabolic modeling merged isolate networks without species boundaries, so predicted community substrate use does not identify actual exchange partners. Niche-size association and omics support a mechanistic model rather than proving reciprocal benefit.

+ + + + +

Participating Taxa: + + Streptomyces sp. MSC1_001, + + Neorhizobium tomejilense MSC1_005, + Dyadobacter sp. MSC1_007, + Sphingopyxis sp. MSC1_008, + Ensifer adhaerens MSC1_011, + + Variovorax beijingensis MSC1_012, + + Sinorhizobium meliloti MSC1_014, + + Rhodococcus sp. MSC1_016 + +

@@ -812,7 +820,7 @@

Chitin Breakdown Product Sharing

→ Community-Responsive Streptomyces Chitin Phenotype -

Initial community chitin breakdown provides products that let Streptomyces grow and express a chitin-decomposition phenotype not seen during monoculture growth on chitin.

+

HYPOTHESIZED - products supplied by other community members could relieve an initial resource limitation and allow Streptomyces to grow and express chitin-associated machinery. The primary Discussion proposes this explanation, while noting possible NAG repression during preconditioning. No selective product rescue, partner-removal test or matched mono-versus-community enzyme assay establishes this causal route.

@@ -828,7 +836,7 @@

Evidence

PMID:36154140 - - SUPPORT (IN_VITRO) + - PARTIAL (IN_VITRO)
"the most abundant members of MSC-2 were not those that were able to metabolize chitin itself, but rather those that were able to take full advantage of interspecies interactions to grow on chitin decomposition products"
@@ -842,13 +850,10 @@

Evidence

Community-Responsive Streptomyces Chitin Phenotype

- NICHE_PARTITIONING
-

Streptomyces exhibits a community-responsive chitin phenotype, and MSC-2 organizes members into distinct functional roles during decomposition.

+

Streptomyces MSC1_001 lacked detectable monoculture growth on chitin under the tested conditions but contributed about 12% of aligned community RNA at 70 hours and expressed chitin-associated genes in MSC-2. Differential expression compares 70 with 118 hours within the community, not matched monoculture-versus-community expression or direct enzyme activity. These observations support a community-responsive phenotype and proposed contribution to decomposition. They do not establish partner-specific induction, measured chitinase flux, mutualism or experimentally demonstrated niche partitioning. The single canonical participant identifies the focal organism, not the complete eight-member experimental context.

-

Source Taxon: Streptomyces sp. MSC1_001

-

Participating Taxa: @@ -873,17 +878,6 @@

Community-Responsive Streptomyces Chitin Phenotype

-

Biological Processes:

- - @@ -897,7 +891,7 @@

Evidence

PMID:36154140 - - SUPPORT (IN_VITRO) + - PARTIAL (IN_VITRO)
"Emergent properties of both species and the community were found, including changes in the chitin degradation potential of Streptomyces species and organization of all species into distinct roles in the chitin degradation process."
@@ -1012,6 +1006,25 @@

Associated Datasets

+
+

Knowledge gaps & discussions (1)

+ +
+

+ KNOWLEDGE_GAP + OPEN + Do transferred chitin products enable the Streptomyces community phenotype? +

+

Retain both existing biological arrows as HYPOTHESIZED; do not restore previously removed dangling outcome arrows. Five monoculture-positive isolates need not be the exclusive initial community degraders. Main Fig5 describes a hypothesized decomposition route, temporal community transcripts are not matched induction assays, and pellet GC-MS is not extracellular transfer despite Introduction wording. The mixed-bag model removes species boundaries. Pairwise and leave-one-out experiments are future work, and NAG preconditioning may repress Streptomyces chitinase. Primary body and main Tables1/2 read, not original figure pixels, separate supplements, raw data or executable models. Canonical labels/genomes preserved without independent identity recertification; non-graph protocol and source inconsistencies remain under #1569.

+ +

Attaches to: ecological_interactions#Primary Chitin Polymer Degradation, ecological_interactions#Chitin Breakdown Product Sharing, ecological_interactions#Community-Responsive Streptomyces Chitin Phenotype

+ + + + +
+ +
@@ -1252,7 +1265,7 @@

Evidence

(function() { var intId = "interaction:0"; - var intType = "SYNTROPHY"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1305,7 +1318,7 @@

Evidence

(function() { var intId = "interaction:1"; - var intType = "CROSS_FEEDING"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1329,11 +1342,36 @@

Evidence

+ var participantKeys = [ + + "Streptomyces sp. MSC1_001", + + "Neorhizobium tomejilense MSC1_005", + + "Dyadobacter sp. MSC1_007", + + "Sphingopyxis sp. MSC1_008", + + "Ensifer adhaerens MSC1_011", + + "Variovorax beijingensis MSC1_012", + + "Sinorhizobium meliloti MSC1_014", + + "Rhodococcus sp. MSC1_016" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { var intId = "interaction:2"; - var intType = "NICHE_PARTITIONING"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1344,10 +1382,6 @@

Evidence

var processes = []; - - processes.push("chitin catabolic process"); - - var evidenceCount = 1; nodes.push({ @@ -1361,12 +1395,18 @@

Evidence

}); - var srcKey = "Streptomyces sp. MSC1_001"; - if (taxonNodeIds[srcKey]) { - links.push({ source: taxonNodeIds[srcKey], target: intId }); - } + var participantKeys = [ + + "Streptomyces sp. MSC1_001" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); })(); diff --git a/docs/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.html b/docs/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.html index cc17f5991..de1c5e240 100644 --- a/docs/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.html +++ b/docs/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.html @@ -1017,7 +1017,7 @@

Ecological Interactions

Ecological interaction network for MUC2 Human Gut Commensal Defined Consortium - Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction (cross-feeding, niche partitioning). + Bipartite graph where circle nodes represent taxa and each ecological interaction is drawn as a distinct non-circular symbol, with colour repeating the same distinction.
@@ -1025,13 +1025,8 @@

Ecological Interactions

Cross-feeding -
-
- Niche partitioning + aria-hidden="true" data-symbol="symbolTriangle2" + data-color="#929caa"> Other
@@ -1039,40 +1034,50 @@

Ecological Interactions

-

MUC2 Glycan Niche Restructuring

- NICHE_PARTITIONING +

MUC2-Associated qPCR Community Profile

-

Porcine MUC2 altered the qPCR-detected community profile after three days, significantly increasing Akkermansia and decreasing Prevotella against the vehicle-treated consortium.

+

After 72 hours, the porcine-MUC2 treatment increased the Akkermansia qPCR estimate and decreased the Prevotella estimate relative to vehicle controls. Six qPCR groups produced calculated CFU equivalents from DNA standard curves, not direct viable counts or resolution of all fourteen inoculated strains. Total OD did not significantly differ between treatments. The fourteen canonical participants identify the input roster, not confirmed equal survival or endpoint abundance. CAZy glycosyl-hydrolase capacity classes summarize species-level genome sets, not measured mucin-degrading enzymes in these exact inoculants; niche partitioning and antagonism are not established by these endpoints.

+

Participating Taxa: + Lactobacillus acidophilus ATCC 4796, + Lactococcus lactis CB1, + Clostridium symbiosum DSZM 14940, -

Biological Processes:

- -
- Downstream Effects: -
- → MUC2-Shifted Short-Chain Fatty Acid Output -

MUC2-dependent changes in community structure accompanied broad changes in extracellular fermentation products.

-
-
@@ -1098,13 +1103,44 @@

Evidence

-

MUC2-Shifted Short-Chain Fatty Acid Output

- CROSS_FEEDING +

MUC2-Associated Extracellular Acid Concentrations

-

The MUC2-amended defined consortium showed reduced acetate and elevated propionate, butyrate, and formate relative to vehicle controls, consistent with MUC2 changing how the community routed fermentation products.

+

At 72 hours, MUC2-supplemented bioreactors had lower acetate and higher propionate, butyrate and formate concentrations in filtered cell-free supernatants than vehicle controls, measured by targeted LC-MS/MS. These are net extracellular concentration endpoints, not production rates, traced mucin-carbon flux or donor-recipient exchange. The experiment used three bioreactors per treatment, 0.5 mg/mL porcine MUC2 and daily 10% medium replacement; pH was neither controlled nor measured. HYPOTHESIZED - mucin-derived substrates and cross-feeding may contribute, but specific producers, consumers and composition-mediated effects were not established. The fourteen listed participants are input members, not assigned acid producers, and no host response was tested.

+ + + + +

Participating Taxa: + Lactobacillus acidophilus ATCC 4796, + Lactococcus lactis CB1, + Clostridium symbiosum DSZM 14940, + + Streptococcus thermophilus ATCC 491, + + Escherichia coli Nissle 1917, + + Enterococcus faecalis Symbioflor DSM 16431, + + Bifidobacterium longum ATCC 55813, + + Blautia coccoides ATCC 29236, + + Blautia producta ATCC 27340D, + + Prevotella copri DSM 18205, + + Bacteroides thetaiotaomicron ATCC 29148, + + Bacteroides fragilis ATCC 23745, + + Bacteroides ovatus ATCC 8483, + + Akkermansia muciniphila ATCC BAA-83 + +

@@ -1160,7 +1196,7 @@

Evidence

-

Knowledge gaps & discussions (1)

+

Knowledge gaps & discussions (2)

@@ -1170,7 +1206,7 @@

The qPCR assay reported Bacteroides, Lactobacillus/Enterococcus, Bifidobacterium, Escherichia, Prevotella, and Akkermansia groups rather than final strain-level abundances for all 14 source strains, and the metabolomics data were extracellular community readouts. These data support community-level MUC2 responses but not exact pairwise donor-recipient cross-feeding edges.

-

Attaches to: ecological_interactions#MUC2 Glycan Niche Restructuring, ecological_interactions#MUC2-Shifted Short-Chain Fatty Acid Output

+

Attaches to: ecological_interactions#MUC2-Associated qPCR Community Profile, ecological_interactions#MUC2-Associated Extracellular Acid Concentrations

@@ -1195,6 +1231,21 @@

+

+ +
+

+ KNOWLEDGE_GAP + OPEN + Which processes explain the MUC2-associated extracellular acid shifts? +

+

Both graph observations respond to the same MUC2 treatment; their co-measurement does not establish composition-to-metabolite mediation, so remove that arrow while retaining positive outcomes. Preserve and retarget the existing group-qPCR knowledge gap. Whole primary body and main statistical table read; no figure-pixel, separate-supplement or raw-data audit. Selective removal, isotope tracing or genetic perturbations are needed to assign partner flux. Unmeasured pH and nutrient replacement further limit mechanistic interpretation; porcine mucin and a host-free reactor do not establish human-host outcomes. Canonical source strain text and prior culture-accession safeguards stay intact; unresolved metadata belongs to #1569.

+ +

Attaches to: ecological_interactions#MUC2-Associated qPCR Community Profile, ecological_interactions#MUC2-Associated Extracellular Acid Concentrations

+ + + +
@@ -1535,20 +1586,16 @@

Evidence

(function() { var intId = "interaction:0"; - var intType = "NICHE_PARTITIONING"; + var intType = "UNKNOWN"; var metabolites = []; var processes = []; - - processes.push("biological process involved in interspecies interaction"); - - var evidenceCount = 1; nodes.push({ id: intId, - label: "MUC2 Glycan Niche Restructuring", + label: "MUC2-Associated qPCR Community Profile", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1559,11 +1606,48 @@

Evidence

+ var participantKeys = [ + + "Lactobacillus acidophilus ATCC 4796", + + "Lactococcus lactis CB1", + + "Clostridium symbiosum DSZM 14940", + + "Streptococcus thermophilus ATCC 491", + + "Escherichia coli Nissle 1917", + + "Enterococcus faecalis Symbioflor DSM 16431", + + "Bifidobacterium longum ATCC 55813", + + "Blautia coccoides ATCC 29236", + + "Blautia producta ATCC 27340D", + + "Prevotella copri DSM 18205", + + "Bacteroides thetaiotaomicron ATCC 29148", + + "Bacteroides fragilis ATCC 23745", + + "Bacteroides ovatus ATCC 8483", + + "Akkermansia muciniphila ATCC BAA-83" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); (function() { var intId = "interaction:1"; - var intType = "CROSS_FEEDING"; + var intType = "UNKNOWN"; var metabolites = []; @@ -1582,7 +1666,7 @@

Evidence

nodes.push({ id: intId, - label: "MUC2-Shifted Short-Chain Fatty Acid Output", + label: "MUC2-Associated Extracellular Acid Concentrations", type: "interaction", interactionType: intType, metabolites: metabolites, @@ -1593,6 +1677,43 @@

Evidence

+ var participantKeys = [ + + "Lactobacillus acidophilus ATCC 4796", + + "Lactococcus lactis CB1", + + "Clostridium symbiosum DSZM 14940", + + "Streptococcus thermophilus ATCC 491", + + "Escherichia coli Nissle 1917", + + "Enterococcus faecalis Symbioflor DSM 16431", + + "Bifidobacterium longum ATCC 55813", + + "Blautia coccoides ATCC 29236", + + "Blautia producta ATCC 27340D", + + "Prevotella copri DSM 18205", + + "Bacteroides thetaiotaomicron ATCC 29148", + + "Bacteroides fragilis ATCC 23745", + + "Bacteroides ovatus ATCC 8483", + + "Akkermansia muciniphila ATCC BAA-83" + + ]; + participantKeys.forEach(function(key) { + if (taxonNodeIds[key]) { + links.push({ source: taxonNodeIds[key], target: intId }); + } + }); + })(); diff --git a/history/records/MSC1_Dominant_Core/2026-10-06T224710Z-codex-ff1495.yaml b/history/records/MSC1_Dominant_Core/2026-10-06T224710Z-codex-ff1495.yaml new file mode 100644 index 000000000..9b6732a55 --- /dev/null +++ b/history/records/MSC1_Dominant_Core/2026-10-06T224710Z-codex-ff1495.yaml @@ -0,0 +1,25 @@ +history_version: 1 +target: + kind: record + path: kb/communities/MSC1_Dominant_Core.yaml + slug: MSC1_Dominant_Core +session: + id: 2026-10-06T224710Z-codex-ff1495 + timestamp: '2026-10-06T22:47:10Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1566 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Separate MSC1 persistence, early NAG growth and computational co-abundance from + untested dependency. + details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml diff --git a/history/records/MSC2_Model_Soil_Consortium/2026-10-06T224710Z-codex-520a0f.yaml b/history/records/MSC2_Model_Soil_Consortium/2026-10-06T224710Z-codex-520a0f.yaml new file mode 100644 index 000000000..83b5caf70 --- /dev/null +++ b/history/records/MSC2_Model_Soil_Consortium/2026-10-06T224710Z-codex-520a0f.yaml @@ -0,0 +1,25 @@ +history_version: 1 +target: + kind: record + path: kb/communities/MSC2_Model_Soil_Consortium.yaml + slug: MSC2_Model_Soil_Consortium +session: + id: 2026-10-06T224710Z-codex-520a0f + timestamp: '2026-10-06T22:47:10Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1567 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Qualify MSC2 chitin-sharing and Streptomyces induction arrows with assay and model + limits. + details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml diff --git a/history/records/MUC2_Human_Gut_Commensal_Defined_Consortium/2026-10-06T224710Z-codex-50fa46.yaml b/history/records/MUC2_Human_Gut_Commensal_Defined_Consortium/2026-10-06T224710Z-codex-50fa46.yaml new file mode 100644 index 000000000..0efb066e0 --- /dev/null +++ b/history/records/MUC2_Human_Gut_Commensal_Defined_Consortium/2026-10-06T224710Z-codex-50fa46.yaml @@ -0,0 +1,25 @@ +history_version: 1 +target: + kind: record + path: kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml + slug: MUC2_Human_Gut_Commensal_Defined_Consortium +session: + id: 2026-10-06T224710Z-codex-50fa46 + timestamp: '2026-10-06T22:47:10Z' + actors: + - type: ai_agent + name: codex + model: unspecified + agent_tool: codex +links: + issues: + - https://github.com/CultureBotAI/CommunityMech/issues/1568 +events: +- type: EDIT + outcome: changed + sections: + - interactions + - discussions + summary: Separate MUC2 group-qPCR and extracellular acid endpoints from untested causal + mediation. + details: Source-based self-adversarial review. reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml diff --git a/kb/communities/MSC1_Dominant_Core.yaml b/kb/communities/MSC1_Dominant_Core.yaml index 29ca6cb0a..07e46ded7 100644 --- a/kb/communities/MSC1_Dominant_Core.yaml +++ b/kb/communities/MSC1_Dominant_Core.yaml @@ -179,44 +179,78 @@ taxonomy: genera occupied positions of high centrality in the network ecological_interactions: - name: Chitin-Selected MSC-1 Stabilization - description: > - Serial enrichment on chitin/soil-extract agar selected MSC-1 as a stable, - naturally interacting arid-grassland soil consortium whose dominant members - persisted through extended passaging and two storage-revival cycles. - interaction_type: NICHE_PARTITIONING + description: Chitin-selected MSC-1 retained a broadly similar composition across prolonged passaging and storage-revival + cycles, with residual drift rather than invariant membership. The selected consortium had 31 detected bacterial + OTUs in Table 1 and Results, with its top 13 accounting for over 98% of reads; other source passages say approximately + 35. The nine canonical participants represent an incomplete roster, not a defined nine-strain mixture. HYPOTHESIZED + - repeated co-enrichment could reflect metabolic codependencies, but persistence and selection on chitin/soil-extract + agar do not demonstrate obligate dependence, niche partitioning or measured chitin turnover. scope: COMMUNITY_LEVEL metabolites: - preferred_term: chitin term: id: CHEBI:17029 label: chitin - biological_processes: - - preferred_term: chitin catabolic process - term: - id: GO:0006032 - label: chitin catabolic process + notes: Selection-substrate context, not a directly quantified chitin-consumption or partner-transfer endpoint. evidence: - reference: PMID:32983014 supports: SUPPORT evidence_source: IN_VITRO snippet: 'This consortium was re-designated: Model Soil Consortium – 1 (MSC-1).' - explanation: Identifies MSC-1 as the stable model soil consortium selected - for detailed interaction analysis. + explanation: Identifies the selected MSC-1 consortium; persistence and residual compositional drift are described + in the primary Results, not evidence for metabolic necessity. - reference: PMID:32983014 - supports: SUPPORT + supports: PARTIAL evidence_source: IN_VITRO - snippet: Because these species were co-enriched together over a 22-week period and through - two rounds of freezing and revival, we hypothesized that there existed metabolic - co-dependencies within MSC-1. - explanation: Links long-term co-enrichment and storage-revival stability to - suspected metabolic codependencies among MSC-1 members. + snippet: Because these species were co-enriched together over a 22-week period and through two rounds of freezing + and revival, we hypothesized that there existed metabolic co-dependencies within MSC-1. + explanation: The authors explicitly hypothesize codependencies from repeated co-enrichment; no selective dependence + test is supplied by this excerpt. + participating_taxa: + - preferred_term: Rhodococcus sp. + term: + id: NCBITaxon:1827 + label: Rhodococcus + - preferred_term: Streptomyces sp. + term: + id: NCBITaxon:1931 + label: Streptomyces sp. + - preferred_term: Dyadobacter sp. + term: + id: NCBITaxon:1914288 + label: Dyadobacter sp. + - preferred_term: Taibaiella sp. + term: + id: NCBITaxon:1869185 + label: Taibaiella sp. + - preferred_term: Bosea sp. + term: + id: NCBITaxon:85413 + label: Allobosea + - preferred_term: Sphingopyxis sp. + term: + id: NCBITaxon:1908224 + label: Sphingopyxis sp. + - preferred_term: Ensifer sp. + term: + id: NCBITaxon:1872086 + label: Ensifer sp. + - preferred_term: Variovorax sp. + term: + id: NCBITaxon:1871043 + label: Variovorax sp. + - preferred_term: Mycobacterium sp. + term: + id: NCBITaxon:1785 + label: Mycobacterium sp. - name: NAG Positive Co-Cultures - description: > - Pairwise MSC-1 isolate assays in M9 plus N-acetylglucosamine detected - statistically significant positive interactions, including - Streptomyces-Rhodococcus, Streptomyces-Variovorax, Rhizobium-Rhodococcus, - and Ensifer-Rhodococcus co-cultures. - interaction_type: SYNTROPHY + description: Pairwise isolates in M9 with 10 mM soluble N-acetylglucosamine (NAG) showed higher early-exponential + optical density than the expected average of the two corresponding monocultures (p < 0.01 for reported positive + comparisons). Named examples include Streptomyces-Rhodococcus, Streptomyces-Variovorax, Rhizobium-Rhodococcus + and Ensifer-Rhodococcus. The difference was not significant in late exponential phase. Total OD does not resolve + each partner biomass, reciprocal benefit or obligate syntrophy, and these NAG assays do not measure chitin-polymer + degradation. The four canonical participants are a partial set of the named positive pairs; the source Rhizobium + isolate is not canonically resolved here, and V4 does not distinguish which Ensifer OTU matches the isolate. scope: COMMUNITY_LEVEL participating_taxa: - preferred_term: Rhodococcus sp. @@ -240,55 +274,55 @@ ecological_interactions: term: id: CHEBI:28009 label: N-acetyl-beta-D-glucosamine - biological_processes: - - preferred_term: glucosamine catabolic process - term: - id: GO:0006046 - label: N-acetylglucosamine catabolic process + notes: Supplied soluble NAG substrate, not proven interspecies donation. The retained beta-anomer grounding + is not independently recertified by this assay review. evidence: - reference: PMID:32983014 supports: SUPPORT evidence_source: IN_VITRO - snippet: Several of the combinations showed much higher growth than would be predicted including - Streptomyces paired with Rhodococcus, Streptomyces paired with Variovorax, and - Rhizobium paired with Rhodococcus. - explanation: Names MSC-1 isolate pairs with higher-than-predicted biomass in - NAG co-culture assays. + snippet: Several of the combinations showed much higher growth than would be predicted including Streptomyces + paired with Rhodococcus, Streptomyces paired with Variovorax, and Rhizobium paired with Rhodococcus. + explanation: Supports the named early-exponential total-OD association. The whole primary text states no significant + late-exponential difference; individual partner benefit or transfer is unresolved. - reference: PMID:32983014 supports: SUPPORT evidence_source: IN_VITRO - snippet: observed Ensifer and Rhodococcus co-culture ODs were higher than predicted suggesting - positive interactions - explanation: Adds the Ensifer-Rhodococcus positive interaction that agreed - between NAG co-culture and the soil co-abundance network. + snippet: observed Ensifer and Rhodococcus co-culture ODs were higher than predicted suggesting positive interactions + explanation: Supports the named early-exponential total-OD association. The whole primary text states no significant + late-exponential difference; individual partner benefit or transfer is unresolved. - name: Soil Co-Abundance Central Hubs - description: > - Soil incubations across chitin, temperature, salt, and herbicide - perturbations produced a Pearson co-abundance network whose high-centrality - MSC-1 taxa included Rhodococcus, Mycobacterium, and Rhizobiales members. - interaction_type: NICHE_PARTITIONING + description: A Pearson network pooled normalized relative 16S abundances across soil-incubation conditions, replicate + samples and time points. Rhodococcus, Mycobacterium and Rhizobiales-associated OTUs had high betweenness centrality. + Rhizobiales is an order, not a genus or a verified isolate identity. The two explicit canonical participants + identify the named Rhodococcus and Mycobacterium subset, not every hub. Positive and negative co-abundance associations + can reflect common environmental or temporal responses; they do not establish pairwise facilitation, competition, + niche partitioning or keystone necessity. Soil chitin and liquid NAG assays are distinct contexts, and their + partly matching correlation signs do not establish a shared mechanism. scope: COMMUNITY_LEVEL - biological_processes: - - preferred_term: biological process involved in interspecies interaction between organisms - term: - id: GO:0044419 - label: biological process involved in interspecies interaction between organisms evidence: - reference: PMID:32983014 supports: SUPPORT - evidence_source: IN_VITRO - snippet: Rhodococcus had several positive and negative correlations with other genera of - MSC-1, including Streptomyces, Variovorax, and Delftia (negative) and Rhizobiales - (positive). - explanation: Supports Rhodococcus as a central MSC-1 co-abundance hub with - multiple positive and negative correlations. + evidence_source: COMPUTATIONAL + snippet: Rhodococcus had several positive and negative correlations with other genera of MSC-1, including Streptomyces, + Variovorax, and Delftia (negative) and Rhizobiales (positive). + explanation: Supports network associations computed from relative abundance data, not experimentally perturbed + interactions. The source calls Rhizobiales a genus, but it is an order. - reference: PMID:32983014 supports: SUPPORT - evidence_source: IN_VITRO - snippet: species of the Rhodococcus, Mycobacterium and Rhizobiales genera occupied positions - of high centrality in the network - explanation: Names the high-centrality genera in the MSC-1 soil - co-abundance network. + evidence_source: COMPUTATIONAL + snippet: species of the Rhodococcus, Mycobacterium and Rhizobiales genera occupied positions of high centrality + in the network + explanation: Supports network associations computed from relative abundance data, not experimentally perturbed + interactions. The source calls Rhizobiales a genus, but it is an order. + participating_taxa: + - preferred_term: Rhodococcus sp. + term: + id: NCBITaxon:1827 + label: Rhodococcus + - preferred_term: Mycobacterium sp. + term: + id: NCBITaxon:1785 + label: Mycobacterium sp. cultivation_setup: - cultivation_mode: BATCH system_type: OTHER @@ -397,9 +431,33 @@ curation_history: - timestamp: '2026-10-02T05:57:41Z' curator: codex action: PRUNE_CAUSAL_GRAPH_WORKFLOW_EDGES - changes: > - Removed two downstream edges from chitin-selected MSC-1 stabilization to - N-acetylglucosamine pairwise coculture tests and soil co-abundance network - analysis because they described follow-up assays rather than causal + changes: 'Removed two downstream edges from chitin-selected MSC-1 stabilization to N-acetylglucosamine pairwise + coculture tests and soil co-abundance network analysis because they described follow-up assays rather than causal transitions. + + ' + llm_assisted: true +- timestamp: '2026-10-06T22:47:09Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Separate MSC1 persistence, early NAG growth and computational co-abundance from untested dependency. + Issue #1566; reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml' llm_assisted: true +discussions: +- discussion_id: msc1_assay_and_network_limits + prompt: Which MSC-1 dependencies explain persistence and conditional coculture growth? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#Chitin-Selected MSC-1 Stabilization + - ecological_interactions#NAG Positive Co-Cultures + - ecological_interactions#Soil Co-Abundance Central Hubs + rationale: 'Retain three observations and zero arrows, preserving the earlier workflow-edge deletion. Early total + OD on supplied soluble NAG is not partner-resolved benefit or late-phase improvement. Soil-network centrality + from pooled relative abundance is not causal interaction or keystone necessity. Canonical participants are explicitly + incomplete, and the source Table 1 maps the Rhizobium isolate to Rhizomicrobium OTU68; no new taxon equivalence + is asserted. Storage drift, 31-versus-35 OTUs, Sect_C_4-versus-C2 naming, herbicide dose and inconsistent positive/negative + Methods inequalities need separate reconciliation under #1569. Whole fresh primary body and main text table + read; figure pixels, separate supplements and raw data not audited.' + posed_by: codex + posed_date: '2026-10-06' diff --git a/kb/communities/MSC2_Model_Soil_Consortium.yaml b/kb/communities/MSC2_Model_Soil_Consortium.yaml index b17895953..8d78d20ed 100644 --- a/kb/communities/MSC2_Model_Soil_Consortium.yaml +++ b/kb/communities/MSC2_Model_Soil_Consortium.yaml @@ -218,12 +218,12 @@ associated_datasets: description: Primary publication describing MSC-2 assembly, multiomics, and community interaction results. ecological_interactions: - name: Primary Chitin Polymer Degradation - description: >- - Dyadobacter, Ensifer MSC1_011, Variovorax, Sinorhizobium, and Rhodococcus - MSC-2 members can grow on chitin as the sole carbon source and act as primary - degraders that initiate chitin decomposition before nondegraders profit from - released breakdown products. - interaction_type: SYNTROPHY + description: Five individual MSC-2 isolates, Dyadobacter, Ensifer MSC1_011, Variovorax, Sinorhizobium and Rhodococcus, + grew with chitin as the sole added carbon source in monoculture. This establishes conditional chitin-use phenotypes, + not obligate syntrophy or exclusive initiating roles in the mixed community. Monocultures used 100 ppm chitin; + the community used 500 ppm after chitin-plus-NAG preconditioning, with 18 mM ammonium in M9. Streptomyces, Neorhizobium + and Sphingopyxis lacked monoculture growth even in reported 500/1000 ppm tests. Species roles in the community + are inferred from additional molecular data and need not equal their monoculture roles. scope: COMMUNITY_LEVEL participating_taxa: - preferred_term: Dyadobacter sp. MSC1_007 @@ -251,10 +251,14 @@ ecological_interactions: term: id: CHEBI:17029 label: chitin + notes: Substrate or proposed breakdown-product context; specific extracellular donor-to-recipient transfer was + not measured. - preferred_term: chitooligosaccharide term: id: CHEBI:23104 label: chitooligosaccharide + notes: Substrate or proposed breakdown-product context; specific extracellular donor-to-recipient transfer was + not measured. biological_processes: - preferred_term: chitin catabolic process term: @@ -262,59 +266,100 @@ ecological_interactions: label: chitin catabolic process downstream: - target: Chitin Breakdown Product Sharing - description: Primary chitin degradation releases soluble decomposition products - that other MSC-2 members can consume in the mixed community. + description: HYPOTHESIZED - chitin degradation by community members releases assimilable products that could + support other members. Monoculture growth, community transcripts and cell-pellet metabolites support this + model, but they do not measure donor-to-recipient extracellular flux or prove that the five monoculture-positive + isolates are the exclusive initial donors. evidence: - reference: PMID:36154140 supports: SUPPORT evidence_source: IN_VITRO - snippet: This analysis showed that Dyadobacter, one Ensifer strain (strain PNNL_MSC-1_Str_011), - Variovorax, Sinorhizobium, and Rhodococcus grew with chitin - explanation: Identifies the MSC-2 members that grew with chitin as their sole - carbon source in monoculture assays. + snippet: This analysis showed that Dyadobacter, one Ensifer strain (strain PNNL_MSC-1_Str_011), Variovorax, + Sinorhizobium, and Rhodococcus grew with chitin + explanation: Directly supports five monoculture chitin-growth phenotypes under the tested conditions, not exclusive + community donor roles or mutual dependence. - reference: PMID:36154140 - supports: SUPPORT + supports: PARTIAL evidence_source: IN_VITRO - snippet: certain species act as primary degraders of carbon sources and that the most successful - species are likely those that can take the most advantage of breakdown products - explanation: Supports primary-degrader roles followed by secondary use of chitin - breakdown products. + snippet: certain species act as primary degraders of carbon sources and that the most successful species are + likely those that can take the most advantage of breakdown products + explanation: Supports the authors proposed division of roles; it does not selectively identify each producer, + recipient or exchanged substrate in MSC-2. - name: Chitin Breakdown Product Sharing - description: >- - Community growth on chitin is supported by interspecies sharing of decomposition - products, so the most abundant members are not necessarily the taxa that directly - metabolize chitin in monoculture. - interaction_type: CROSS_FEEDING + description: HYPOTHESIZED - MSC-2 members share chitin-derived products, allowing taxa with broader substrate-use + potential to grow in the consortium. Community DNA/RNA increased and member transcript proportions differed; + these are not direct measurements of equal viable abundance or partner-resolved carbon flux. GC-MS found increased + NAG at 118 versus 70 hours in cell-pellet extracts after supernatant removal, not extracellular transfer measurements. + Mixed-bag metabolic modeling merged isolate networks without species boundaries, so predicted community substrate + use does not identify actual exchange partners. Niche-size association and omics support a mechanistic model + rather than proving reciprocal benefit. scope: COMMUNITY_LEVEL metabolites: - preferred_term: chitin term: id: CHEBI:17029 label: chitin + notes: Chitin is the supplied polymer; sharing of its products remains a hypothesis, not transfer of the polymer + itself. downstream: - target: Community-Responsive Streptomyces Chitin Phenotype - description: Initial community chitin breakdown provides products that let - Streptomyces grow and express a chitin-decomposition phenotype not seen - during monoculture growth on chitin. + description: HYPOTHESIZED - products supplied by other community members could relieve an initial resource limitation + and allow Streptomyces to grow and express chitin-associated machinery. The primary Discussion proposes this + explanation, while noting possible NAG repression during preconditioning. No selective product rescue, partner-removal + test or matched mono-versus-community enzyme assay establishes this causal route. evidence: - reference: PMID:36154140 - supports: SUPPORT + supports: PARTIAL evidence_source: IN_VITRO - snippet: the most abundant members of MSC-2 were not those that were able to metabolize chitin itself, but rather those that were able to take full advantage of interspecies interactions to grow on chitin decomposition products - explanation: Supports cross-feeding and shared access to products released during community chitin degradation. -- name: Community-Responsive Streptomyces Chitin Phenotype - description: >- - Streptomyces exhibits a community-responsive chitin phenotype, and MSC-2 organizes - members into distinct functional roles during decomposition. - interaction_type: NICHE_PARTITIONING - scope: COMMUNITY_LEVEL + snippet: the most abundant members of MSC-2 were not those that were able to metabolize chitin itself, but rather + those that were able to take full advantage of interspecies interactions to grow on chitin decomposition products + explanation: Supports the authors interspecies-sharing interpretation. The primary Methods specify cell-pellet + metabolomics, and the mixed-bag model does not preserve species boundaries; neither is a direct extracellular + transfer assay. participating_taxa: - preferred_term: Streptomyces sp. MSC1_001 term: id: NCBITaxon:1931 label: Streptomyces sp. - source_taxon: - preferred_term: Streptomyces sp. MSC1_001 + - preferred_term: Neorhizobium tomejilense MSC1_005 + term: + id: NCBITaxon:2093828 + label: Neorhizobium tomejilense + - preferred_term: Dyadobacter sp. MSC1_007 + term: + id: NCBITaxon:1914288 + label: Dyadobacter sp. + - preferred_term: Sphingopyxis sp. MSC1_008 + term: + id: NCBITaxon:1908224 + label: Sphingopyxis sp. + - preferred_term: Ensifer adhaerens MSC1_011 + term: + id: NCBITaxon:106592 + label: Ensifer adhaerens + - preferred_term: Variovorax beijingensis MSC1_012 + term: + id: NCBITaxon:2496117 + label: Variovorax beijingensis + - preferred_term: Sinorhizobium meliloti MSC1_014 + term: + id: NCBITaxon:382 + label: Sinorhizobium meliloti + - preferred_term: Rhodococcus sp. MSC1_016 + term: + id: NCBITaxon:1827 + label: Rhodococcus +- name: Community-Responsive Streptomyces Chitin Phenotype + description: Streptomyces MSC1_001 lacked detectable monoculture growth on chitin under the tested conditions + but contributed about 12% of aligned community RNA at 70 hours and expressed chitin-associated genes in MSC-2. + Differential expression compares 70 with 118 hours within the community, not matched monoculture-versus-community + expression or direct enzyme activity. These observations support a community-responsive phenotype and proposed + contribution to decomposition. They do not establish partner-specific induction, measured chitinase flux, mutualism + or experimentally demonstrated niche partitioning. The single canonical participant identifies the focal organism, + not the complete eight-member experimental context. + scope: COMMUNITY_LEVEL + participating_taxa: + - preferred_term: Streptomyces sp. MSC1_001 term: id: NCBITaxon:1931 label: Streptomyces sp. @@ -323,21 +368,23 @@ ecological_interactions: term: id: CHEBI:17029 label: chitin + notes: Context for inferred chitin-associated activity; no focal-strain product flux or transferred oligomer + was directly resolved. - preferred_term: chitooligosaccharide term: id: CHEBI:23104 label: chitooligosaccharide - biological_processes: - - preferred_term: chitin catabolic process - term: - id: GO:0006032 - label: chitin catabolic process + notes: Context for inferred chitin-associated activity; no focal-strain product flux or transferred oligomer + was directly resolved. evidence: - reference: PMID:36154140 - supports: SUPPORT + supports: PARTIAL evidence_source: IN_VITRO - snippet: Emergent properties of both species and the community were found, including changes in the chitin degradation potential of Streptomyces species and organization of all species into distinct roles in the chitin degradation process. - explanation: Supports that Streptomyces behavior and community roles depend on the surrounding MSC-2 membership. + snippet: Emergent properties of both species and the community were found, including changes in the chitin degradation + potential of Streptomyces species and organization of all species into distinct roles in the chitin degradation + process. + explanation: Supports an emergent-role interpretation from growth context and molecular observations, not selectively + demonstrated induction, enzyme activity or division of labor. external_resources: - name: KBase Soil Microbiome SFA collaboration page repository: KBASE @@ -372,3 +419,29 @@ growth_media: at 20°C for 5 days. explanation: Gives the flask cultivation vessel, 20°C temperature, and 5-day incubation for the MSC-2 community assay. +discussions: +- discussion_id: msc2_product_sharing_and_emergent_role + prompt: Do transferred chitin products enable the Streptomyces community phenotype? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#Primary Chitin Polymer Degradation + - ecological_interactions#Chitin Breakdown Product Sharing + - ecological_interactions#Community-Responsive Streptomyces Chitin Phenotype + rationale: 'Retain both existing biological arrows as HYPOTHESIZED; do not restore previously removed dangling + outcome arrows. Five monoculture-positive isolates need not be the exclusive initial community degraders. Main + Fig5 describes a hypothesized decomposition route, temporal community transcripts are not matched induction + assays, and pellet GC-MS is not extracellular transfer despite Introduction wording. The mixed-bag model removes + species boundaries. Pairwise and leave-one-out experiments are future work, and NAG preconditioning may repress + Streptomyces chitinase. Primary body and main Tables1/2 read, not original figure pixels, separate supplements, + raw data or executable models. Canonical labels/genomes preserved without independent identity recertification; + non-graph protocol and source inconsistencies remain under #1569.' + posed_by: codex + posed_date: '2026-10-06' +curation_history: +- timestamp: '2026-10-06T22:47:09Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Qualify MSC2 chitin-sharing and Streptomyces induction arrows with assay and model limits. Issue #1567; + reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml' + llm_assisted: true diff --git a/kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml b/kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml index dc6da0cd9..861f13043 100644 --- a/kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml +++ b/kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml @@ -498,66 +498,179 @@ taxonomy: Names source-reported A. muciniphila ATCC BAA-83 as the Akkermansia member. ecological_interactions: -- name: MUC2 Glycan Niche Restructuring - description: >- - Porcine MUC2 altered the qPCR-detected community profile after three days, - significantly increasing Akkermansia and decreasing Prevotella against the - vehicle-treated consortium. - interaction_type: NICHE_PARTITIONING +- name: MUC2-Associated qPCR Community Profile + description: After 72 hours, the porcine-MUC2 treatment increased the Akkermansia qPCR estimate and decreased + the Prevotella estimate relative to vehicle controls. Six qPCR groups produced calculated CFU equivalents from + DNA standard curves, not direct viable counts or resolution of all fourteen inoculated strains. Total OD did + not significantly differ between treatments. The fourteen canonical participants identify the input roster, + not confirmed equal survival or endpoint abundance. CAZy glycosyl-hydrolase capacity classes summarize species-level + genome sets, not measured mucin-degrading enzymes in these exact inoculants; niche partitioning and antagonism + are not established by these endpoints. scope: COMMUNITY_LEVEL - biological_processes: - - preferred_term: biological process involved in interspecies interaction - term: - id: GO:0044419 - label: biological process involved in interspecies interaction between organisms - downstream: - - target: MUC2-Shifted Short-Chain Fatty Acid Output - description: >- - MUC2-dependent changes in community structure accompanied broad changes - in extracellular fermentation products. evidence: - reference: PMID:42007376 supports: SUPPORT evidence_source: IN_VITRO - snippet: >- - MUC2 supplementation significantly altered community structure, promoting - the expansion of Akkermansia muciniphila while reducing Prevotella. - explanation: >- - Supports the direction of the community-composition shift under MUC2. -- name: MUC2-Shifted Short-Chain Fatty Acid Output - description: >- - The MUC2-amended defined consortium showed reduced acetate and elevated - propionate, butyrate, and formate relative to vehicle controls, consistent - with MUC2 changing how the community routed fermentation products. - interaction_type: CROSS_FEEDING + snippet: MUC2 supplementation significantly altered community structure, promoting the expansion of Akkermansia + muciniphila while reducing Prevotella. + explanation: Supports the positive treatment-associated qPCR profile shift. Group-level DNA estimates do not + establish direct viable counts, fourteen-strain resolution or ecological mechanism. + participating_taxa: + - preferred_term: Lactobacillus acidophilus ATCC 4796 + term: + id: NCBITaxon:1579 + label: Lactobacillus acidophilus + - preferred_term: Lactococcus lactis CB1 + term: + id: NCBITaxon:1358 + label: Lactococcus lactis + - preferred_term: Clostridium symbiosum DSZM 14940 + term: + id: NCBITaxon:1512 + label: '[Clostridium] symbiosum' + - preferred_term: Streptococcus thermophilus ATCC 491 + term: + id: NCBITaxon:1308 + label: Streptococcus thermophilus + - preferred_term: Escherichia coli Nissle 1917 + term: + id: NCBITaxon:562 + label: Escherichia coli + - preferred_term: Enterococcus faecalis Symbioflor DSM 16431 + term: + id: NCBITaxon:1351 + label: Enterococcus faecalis + - preferred_term: Bifidobacterium longum ATCC 55813 + term: + id: NCBITaxon:216816 + label: Bifidobacterium longum + - preferred_term: Blautia coccoides ATCC 29236 + term: + id: NCBITaxon:572511 + label: Blautia + - preferred_term: Blautia producta ATCC 27340D + term: + id: NCBITaxon:33035 + label: Blautia producta + - preferred_term: Prevotella copri DSM 18205 + term: + id: NCBITaxon:165179 + label: Segatella copri + - preferred_term: Bacteroides thetaiotaomicron ATCC 29148 + term: + id: NCBITaxon:818 + label: Bacteroides thetaiotaomicron + - preferred_term: Bacteroides fragilis ATCC 23745 + term: + id: NCBITaxon:817 + label: Bacteroides fragilis + - preferred_term: Bacteroides ovatus ATCC 8483 + term: + id: NCBITaxon:28116 + label: Bacteroides ovatus + - preferred_term: Akkermansia muciniphila ATCC BAA-83 + term: + id: NCBITaxon:239935 + label: Akkermansia muciniphila +- name: MUC2-Associated Extracellular Acid Concentrations + description: At 72 hours, MUC2-supplemented bioreactors had lower acetate and higher propionate, butyrate and + formate concentrations in filtered cell-free supernatants than vehicle controls, measured by targeted LC-MS/MS. + These are net extracellular concentration endpoints, not production rates, traced mucin-carbon flux or donor-recipient + exchange. The experiment used three bioreactors per treatment, 0.5 mg/mL porcine MUC2 and daily 10% medium replacement; + pH was neither controlled nor measured. HYPOTHESIZED - mucin-derived substrates and cross-feeding may contribute, + but specific producers, consumers and composition-mediated effects were not established. The fourteen listed + participants are input members, not assigned acid producers, and no host response was tested. scope: COMMUNITY_LEVEL metabolites: - preferred_term: acetate term: id: CHEBI:30089 label: acetate + notes: Measured extracellular concentration endpoint; net production rate, mucin-carbon origin and partner exchange + were not resolved. - preferred_term: propionate term: id: CHEBI:17272 label: propionate + notes: Measured extracellular concentration endpoint; net production rate, mucin-carbon origin and partner exchange + were not resolved. - preferred_term: butyrate term: id: CHEBI:17968 label: butyrate + notes: Measured extracellular concentration endpoint; net production rate, mucin-carbon origin and partner exchange + were not resolved. - preferred_term: formate term: id: CHEBI:15740 label: formate + notes: Measured extracellular concentration endpoint; net production rate, mucin-carbon origin and partner exchange + were not resolved. evidence: - reference: PMID:42007376 supports: SUPPORT evidence_source: IN_VITRO - snippet: >- - MUC2 also reshaped microbial metabolism, decreasing acetate levels while - increasing propionate, butyrate, and formate. - explanation: >- - Supports the MUC2-dependent shift in extracellular short-chain fatty - acids and formate. + snippet: MUC2 also reshaped microbial metabolism, decreasing acetate levels while increasing propionate, butyrate, + and formate. + explanation: Supports directions of measured extracellular acid concentration changes, not exchange flux, specific + producers or mediation by the qPCR composition shift. + participating_taxa: + - preferred_term: Lactobacillus acidophilus ATCC 4796 + term: + id: NCBITaxon:1579 + label: Lactobacillus acidophilus + - preferred_term: Lactococcus lactis CB1 + term: + id: NCBITaxon:1358 + label: Lactococcus lactis + - preferred_term: Clostridium symbiosum DSZM 14940 + term: + id: NCBITaxon:1512 + label: '[Clostridium] symbiosum' + - preferred_term: Streptococcus thermophilus ATCC 491 + term: + id: NCBITaxon:1308 + label: Streptococcus thermophilus + - preferred_term: Escherichia coli Nissle 1917 + term: + id: NCBITaxon:562 + label: Escherichia coli + - preferred_term: Enterococcus faecalis Symbioflor DSM 16431 + term: + id: NCBITaxon:1351 + label: Enterococcus faecalis + - preferred_term: Bifidobacterium longum ATCC 55813 + term: + id: NCBITaxon:216816 + label: Bifidobacterium longum + - preferred_term: Blautia coccoides ATCC 29236 + term: + id: NCBITaxon:572511 + label: Blautia + - preferred_term: Blautia producta ATCC 27340D + term: + id: NCBITaxon:33035 + label: Blautia producta + - preferred_term: Prevotella copri DSM 18205 + term: + id: NCBITaxon:165179 + label: Segatella copri + - preferred_term: Bacteroides thetaiotaomicron ATCC 29148 + term: + id: NCBITaxon:818 + label: Bacteroides thetaiotaomicron + - preferred_term: Bacteroides fragilis ATCC 23745 + term: + id: NCBITaxon:817 + label: Bacteroides fragilis + - preferred_term: Bacteroides ovatus ATCC 8483 + term: + id: NCBITaxon:28116 + label: Bacteroides ovatus + - preferred_term: Akkermansia muciniphila ATCC BAA-83 + term: + id: NCBITaxon:239935 + label: Akkermansia muciniphila environmental_factors: - name: Porcine MUC2 supplementation value: '0.5' @@ -652,36 +765,49 @@ metal_notes: >- response consortium. discussions: - discussion_id: kg-muc2-group-level-qpcr-resolution - prompt: >- - Which specific member strains mediate the MUC2-dependent metabolite shifts - in this 14-strain human-gut consortium? + prompt: Which specific member strains mediate the MUC2-dependent metabolite shifts in this 14-strain human-gut + consortium? kind: KNOWLEDGE_GAP status: OPEN attaches_to: - - ecological_interactions#MUC2 Glycan Niche Restructuring - - ecological_interactions#MUC2-Shifted Short-Chain Fatty Acid Output - rationale: >- - The qPCR assay reported Bacteroides, Lactobacillus/Enterococcus, - Bifidobacterium, Escherichia, Prevotella, and Akkermansia groups rather - than final strain-level abundances for all 14 source strains, and the - metabolomics data were extracellular community readouts. These data support - community-level MUC2 responses but not exact pairwise donor-recipient - cross-feeding edges. + - ecological_interactions#MUC2-Associated qPCR Community Profile + - ecological_interactions#MUC2-Associated Extracellular Acid Concentrations + rationale: The qPCR assay reported Bacteroides, Lactobacillus/Enterococcus, Bifidobacterium, Escherichia, Prevotella, + and Akkermansia groups rather than final strain-level abundances for all 14 source strains, and the metabolomics + data were extracellular community readouts. These data support community-level MUC2 responses but not exact + pairwise donor-recipient cross-feeding edges. evidence: - reference: PMID:42007376 supports: SUPPORT evidence_source: IN_VITRO - snippet: >- - The following forward and reverse primers were used for bacterial species - detection: Bacteroides Forward primer - explanation: >- - Anchors the group/species-specific qPCR panel used to estimate community - structure after 72 h. + snippet: 'The following forward and reverse primers were used for bacterial species detection: Bacteroides Forward + primer' + explanation: Anchors the group/species-specific qPCR panel used to estimate community structure after 72 h. +- discussion_id: muc2_common_treatment_not_mediation + prompt: Which processes explain the MUC2-associated extracellular acid shifts? + kind: KNOWLEDGE_GAP + status: OPEN + attaches_to: + - ecological_interactions#MUC2-Associated qPCR Community Profile + - ecological_interactions#MUC2-Associated Extracellular Acid Concentrations + rationale: 'Both graph observations respond to the same MUC2 treatment; their co-measurement does not establish + composition-to-metabolite mediation, so remove that arrow while retaining positive outcomes. Preserve and retarget + the existing group-qPCR knowledge gap. Whole primary body and main statistical table read; no figure-pixel, + separate-supplement or raw-data audit. Selective removal, isotope tracing or genetic perturbations are needed + to assign partner flux. Unmeasured pH and nutrient replacement further limit mechanistic interpretation; porcine + mucin and a host-free reactor do not establish human-host outcomes. Canonical source strain text and prior culture-accession + safeguards stay intact; unresolved metadata belongs to #1569.' + posed_by: codex + posed_date: '2026-10-06' curation_history: - timestamp: '2026-09-12T00:36:53Z' curator: codex action: FIX_GTDB_STATUS_AND_STRAIN_ACCESSIONS - changes: >- - Added explicit GTDB grounding statuses to the MUC2 taxonomy and preserved - the source-reported DSZM 14940 Clostridium symbiosum strain text without an - unverified DSM culture collection accession. + changes: Added explicit GTDB grounding statuses to the MUC2 taxonomy and preserved the source-reported DSZM 14940 + Clostridium symbiosum strain text without an unverified DSM culture collection accession. +- timestamp: '2026-10-06T22:47:10Z' + curator: codex + action: REVIEW_CAUSAL_GRAPH + changes: 'Separate MUC2 group-qPCR and extracellular acid endpoints from untested causal mediation. Issue #1568; + reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml' + llm_assisted: true diff --git a/reports/causal_graph_review/README.md b/reports/causal_graph_review/README.md index 107a72442..101031472 100644 --- a/reports/causal_graph_review/README.md +++ b/reports/causal_graph_review/README.md @@ -5,6 +5,29 @@ source-based self-adversarial review. These records are not independent approval or proof that every graph is complete. The current inventory and summary distinguish `reviewed`, `pending` and `needs_research`. +## Batch65: Soil And Mucin Assay Boundaries + +[Decisions](decisions/20261006-soil-mucin-batch65.yaml), +[validation](validation-20261006-batch65.json) and +[self-adversarial review](adversarial-review-20261006-batch65.yaml) account for +all eight retained observations and three original arrows. MSC2's two biological +arrows remain as hypotheses; MUC2's common-treatment mediation arrow is removed. + +MSC1 storage persistence, early NAG total-OD benefits and computational soil +co-abundance are distinct observations, not demonstrated metabolic dependency. +MSC2 pellet metabolomics is not extracellular transfer, temporal community +transcripts are not matched induction assays, and mixed-bag modeling removes +species boundaries. MUC2 group-qPCR estimates and net extracellular acid +concentrations do not establish partner flux or composition-mediated effects. + +Three complete fresh primary bodies and main text tables were read. Original +figure pixels, separate supplements, raw data and executable models were not +audited. All 920 caches remain unchanged; 12 graph excerpts match fresh primary +text. Canonical taxonomy and non-graph blocks are preserved, not recertified. +Metadata and source inconsistencies remain under #1569 and existing related +issues. Repairs #1566-#1568 await protected-main merge. No new causal structure +or Edison submission; this is self-review, not independent approval. + ## Batch64: Regolith, Lupin And MAMC Assay Boundaries [Decisions](decisions/20261006-assay-boundaries-batch64.yaml), diff --git a/reports/causal_graph_review/adversarial-review-20261006-batch65.yaml b/reports/causal_graph_review/adversarial-review-20261006-batch65.yaml new file mode 100644 index 000000000..316c13a0c --- /dev/null +++ b/reports/causal_graph_review/adversarial-review-20261006-batch65.yaml @@ -0,0 +1,197 @@ +reviewer: codex +review_mode: source_based_self_adversarial_review +independent_approval: false +base_commit: 5b6301d3c4c61bbc12df8d7b7dd4f0e55d444e7e +scope: +- kb/communities/MSC1_Dominant_Core.yaml +- kb/communities/MSC2_Model_Soil_Consortium.yaml +- kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml +decision_ledger: reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml +validation_report: reports/causal_graph_review/validation-20261006-batch65.json +findings: +- issue: 1566 + severity: P2 + status: addressed_in_this_change + finding: MSC1 persistence, early-OD and computational-network claims exceed demonstrated dependencies. + disposition: Close only after protected-main merge. +- issue: 1567 + severity: P2 + status: addressed_in_this_change + finding: MSC2 mechanistic arrows omit hypothesis, pellet-metabolite and temporal-transcript limits. + disposition: Close only after protected-main merge. +- issue: 1568 + severity: P2 + status: addressed_in_this_change + finding: MUC2 common-treatment association is represented as composition-mediated cross-feeding. + disposition: Close only after protected-main merge. +- issue: 1569 + severity: P2 + status: unresolved_non_graph + finding: Incomplete or ambiguous identities, protocol and role metadata, and primary-source reporting + inconsistencies. + disposition: Keep OPEN after graph repair merge. +adversarial_checks: +- Read all three whole records and account for all8 original nodes and3 arrows. Three complete fresh primary + main bodies and main text tables read; original figure pixels, separate supplements, raw data and executable + models not audited. Numerical summaries remain author-reported, not independently recomputed. +- 'MSC1: retain compositional persistence with drift, not invariant membership or demonstrated codependency. + Canonical nine-member roster is explicitly incomplete;31-versus-35 OTUs and Sect_C_4-versus-C2 source + naming remain unresolved. Preserve prior workflow-arrow deletion and bacterial Bosea grounding.' +- 'MSC1: positive comparisons concern early-exponential total OD on supplied10mM soluble NAG against the + average of corresponding monocultures. The source reports no significant late-exponential difference. + This is not partner-resolved biomass, reciprocal benefit, obligate syntrophy or chitin-polymer turnover. + Four named canonical participants omit the unresolved Rhizobium isolate; V4 does not separate Ensifer + OTUs.' +- 'MSC1: pooled relative16S Pearson associations and betweenness hubs are computational, not experimentally + demonstrated facilitation, niche partitioning or keystone necessity. Rhizobiales is an order. Soil chitin + and liquid NAG assays must not be collapsed into one causal test. Source Table1 isolate mismatch, herbicide + doses and conflicting Methods inequalities remain under1569.' +- 'MSC2: preserve five monoculture chitin-growth phenotypes without assigning exclusive initial mixed-community + donor roles. Distinguish100ppm monocultures from500ppm community growth, chitin+NAG preconditioning + and18mM ammonium supply. Do not rewrite supported Sinorhizobium chitin use as nitrogen fixation merely + because of its genus or existing497.' +- 'MSC2: retain both existing biological arrows as HYPOTHESIZED. Primary Discussion proposes product sharing + and resource-enablement of Streptomyces; lack of selective rescue/removal experiments limits certainty + but does not justify deleting the source-supported model. Previously removed dangling outcome arrows + stay absent.' +- 'MSC2: GC-MS measured cell-pellet metabolites after supernatant removal, despite extracellular-pool + wording in Introduction. NAG accumulation is not directly measured extracellular transfer. Mixed-bag + FBA removes species boundaries and cannot establish actual partner exchange. Transcript comparisons + are70vs118h within the community, not matched mono/community induction or direct enzyme activity.' +- 'MSC2: preserve positive community-responsive Streptomyces observations and its approximately12% alignedRNA + proportion at70h without treating RNA proportions as viable abundance or chitinase flux. NAG preconditioning + can complicate repression/induction interpretation. Canonical source strain labels and genomes are preserved, + not independently re-grounded.' +- 'MUC2: preserve increased Akkermansia and decreased Prevotella qPCR estimates with no significant totalOD + difference. Six group assays and calculatedCFU equivalents are not live colony counts or fourteen-strain + resolution. Explicit participants are the inoculated roster, not proven endpoint survival. CAZy capacity + classes summarize species-genome sets, not exact-strain enzyme measurements.' +- 'MUC2: retain lower acetate and higher propionate/butyrate/formate as net72h extracellular concentrations. + They are not production rates, traced mucin-carbon flux, identified producers or donor-recipient exchange. + Remove the common-treatment composition-to-acid arrow without denying either positive endpoint. pH was + not measured/controlled, daily medium replacement matters, and host effects were not tested.' +- Review full biological diff and eight focused tests. Retarget both anchors of the existing MUC2 qPCR + gap without altering its rationale/evidence. Preserve culture-accession safeguards805/806/808 and grounding + statuses807; ambiguous labels remain a separate issue.457 other records,920 caches and raw non-graph + blocks unchanged;46 baseline warnings retained exactly and no structural defects or auditor changes. +- Actual schema, strict, terms, references, snippets, histories, corpus audit, deterministic renders and + regression outputs captured. Exact descriptions parsed across456 pages, not browser screenshots. Coarse + roster/scope census unchanged and does not certify identity or flux. Post-commit docs-current remains + a separate publication gate. +- Deduplication covered861 all-state issue titles/bodies and28 scoped ignored/hidden local files;8 matching + bodies read along with prior MSC1 workflow and MUC2 curation histories, not every PR/comment/local artifact.1566-1568 + addressed but OPEN until protected-main merge;1569 remains OPEN afterward. Exact-head self-review is + COMMENT, not independent approval. No new causal structure or paid Edison submission. +verification: + combined_regressions: 595 passed in 208.89s (0:03:28) + new_regression_tests: 8 + schema_strict_terms_history: Passed with actual outputs/digests + references: CLI Total checks counts reported issues, not executed checks. MATCH is not scientific entailment + or certification of historical provenance. All920 caches unchanged;12 graph excerpts independently + match fresh primary text.1569 and existing476/1091/1095 limitations remain unresolved; graph repair + does not recertify non-graph blocks. + snippet_counts_by_record: + kb/communities/MSC1_Dominant_Core.yaml: + MATCH: 19 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + kb/communities/MSC2_Model_Soil_Consortium.yaml: + MATCH: 7 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml: + MATCH: 22 + RENDERING: 0 + ASSEMBLED: 0 + WEAK: 0 + MISMATCH: 0 + NOCONTENT: 0 + primary_graph_snippet_proof: + primary_matched_graph_snippets: 12 + primary_main_bodies: 3 + paid_submissions: 0 + new_nodes_or_arrows: 0 + separate_supplements_inspected: false + original_figure_pixels_inspected: false + network: + existing_findings_preserved: 46 + added_findings: {} + removed_findings: {} + interpretation: All46 baseline network findings preserved exactly; no auditor-rule changes or invented + links. Explicit participant lists identify tested panels/inoculants, not missing hosts or background + communities. + black_ruff_diff: passed + tested_file_sha256: + reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml: 7d017a2aa5bbfdc46ad78cd9911b3d342ea092867ae544a5f709594c650da054 + tests/test_causal_review_batch65.py: a5d3506eeb86b87920c6d792c28baad4b15d8cbcdb0158bd024c48ac5dbce196 + tests/test_participating_taxa.py: 8cf3459098b11203dcb48dcc1d5bddc1f329b1af62f148d0f59b1ce7f0411acb + kb/communities/MSC1_Dominant_Core.yaml: 479f6594e26ce8439b24c947798594f7e1a28c6deedf918911ed5d342885d540 + kb/communities/MSC2_Model_Soil_Consortium.yaml: 2145f5d6484f30023f834b708ccb23d3625375ab32dcf1a2e8a9fc3c4083271d + kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml: 01cb4512723915154b17fa1676382c9807fda7f733fc62efb63afabdad3e3742 + reports/causal_graph_review/README.md: 5786f9372607e97d3ec255b061958f0c320dd29c24680581a05807c05c2f854f + unchanged_caches: 920 + edison: + required_for_this_repair: false + provider_submissions: 0 + credits_spent: 0 + reason: Existing-node/arrow repairs only; no new causal structure. + post_commit_docs_current: Separate publication gate, not asserted before commit. +participant_census: + measurements: + baseline: + records: 460 + with_community_level: 391 + mixed: 124 + community_level_only: 267 + taxa: 1507 + credited_solely_by_the_rule: 1238 + current: + records: 460 + with_community_level: 391 + mixed: 124 + community_level_only: 267 + taxa: 1507 + credited_solely_by_the_rule: 1238 + interpretation: Canonical roster/scope census unchanged. Explicit participants identify the partial + MSC1 roster and hubs, MSC2 assay/focal subsets and fourteen MUC2 input members. This coarse census + does not certify exact identities, final abundance or partner flux. +corpus: + records: 460 + nodes: 1452 + edges: 638 + review_status_counts: + needs_research: 21 + pending: 230 + reviewed: 209 +limitations: +- All8 original nodes retained;3 original arrows reviewed,2 MSC2 biological hypotheses retained and1 MUC2 + common-treatment arrow removed. No new causal structure or Edison submission. +- Three complete fresh primary main bodies and main text tables read. Original figure pixels, separate + supplements, raw data and executable models not audited; author-reported numerical summaries not independently + recomputed. +- MSC1 persistence is not codependency; positive early total OD on soluble NAG does not establish late-phase + or partner-resolved benefit. Pooled relative-abundance centrality is computational association, not + causality. Rhizobiales is an order and the canonical roster is incomplete. +- MSC2 retains source-proposed sharing and resource-enablement mechanisms as hypotheses. Cell-pellet GC-MS + is not extracellular transfer, temporal community DEGs are not matched induction, and mixed-bag FBA + removes species boundaries. Distinct chitin concentrations, NAG preconditioning and ammonium supply + matter. +- MUC2 group-qPCR calculated CFUs are not viable plating or fourteen-strain resolution. Net supernatant + acid concentrations do not identify flux, producers or composition-mediated effects; pH was neither + controlled nor measured and medium was replaced daily. CAZy species-genome percentages are not exact-strain + enzyme measurements. +- Canonical taxonomy and raw non-graph blocks preserved, not recertified. Issue1569 remains OPEN for source/culture + identity, roles, assay metadata and source reporting inconsistencies; prior corrections and existing497 + remain intact. +- All920 caches unchanged;12 retained graph excerpts independently match fresh primary text. This does + not certify historical full-cache/non-graph provenance. Public OA XML was used without bypassing publisher + access restrictions. +- Deduplication covered861 all-state issue titles/bodies and28 scoped ignored/hidden local files;8 matching + full issue bodies read. Prior MSC1 workflow history and MUC2 curation history read, not every PR/comment/local + match. Self-review is not independent approval; repair issues stay OPEN until protected-main merge. diff --git a/reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml b/reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml new file mode 100644 index 000000000..d898c73af --- /dev/null +++ b/reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml @@ -0,0 +1,237 @@ +reviewer: codex +review_mode: source_based_self_adversarial_review +independent_approval: false +base_commit: 5b6301d3c4c61bbc12df8d7b7dd4f0e55d444e7e +baseline_commit: 5b6301d3c4c61bbc12df8d7b7dd4f0e55d444e7e +base_tree: 284ebf47828205a05185a7d0075ae74c64fdce34 +pre_source_baseline_sha256: 5224d6dcb99b696194c15331e35165bc6db4b68821362cf322bc3c80ae94ab5b +issues: +- 1566 +- 1567 +- 1568 +unresolved_non_graph_issues: +- 1569 +unresolved_research_issues: [] +issue_deduplication: + all_state_issue_titles_and_bodies: 861 + ignored_hidden_local_search: true + matching_local_files: 28 + matching_issues: + - 258 + - 365 + - 442 + - 497 + - 805 + - 806 + - 807 + - 808 +reference_cache_original_hashes: + references_cache/PMID_32983014.md: 3ee32a57123c9c4fdd8740247a62fa37e54181dfcd8638b89a49267a3dd1f8e6 + references_cache/PMID_36154140.md: 3c86de8af3b5bf309e75e0fd2c765d6417cebf7240ab4c7c0a7e8e3f92a01b06 + references_cache/PMID_42007376.txt: 32a05bcdb7b182a36f452717cd82a75460d3fcb2782a54539c6f592de909539b +primary_artifacts: + /private/tmp/communitymech-batch65/msc1-primary.xml: 63992fea25005b1a0625496dde0d79626c49309b87cdece90c00ac20063121ae + /private/tmp/communitymech-batch65/msc1-primary.txt: 0f6d2ebab484bdcd8d79b352924d2e108d0c9768e9cfe277409cd9dc73a3a689 + /private/tmp/communitymech-batch65/msc1-tables.txt: ba3076eea473b99f158c86f3f1bbfd8e43b8f2cb6c3c2aec69950f0613f8fa9b + /private/tmp/communitymech-batch65/msc2-primary.xml: a833f3968e92e69d8d885cc38e8a5e73aaa8013bfe7916fb6918da2ad5fcabf9 + /private/tmp/communitymech-batch65/msc2-primary.txt: b5aec0ff01bc58a6103f3146bed56f8dffd0d1a514024a92ec742da9c6a89f0a + /private/tmp/communitymech-batch65/msc2-tables.txt: 0a628bb5ff8e2223f831276241ccaba2b0ebee9027d857e30b98cc4e84b588e7 + /private/tmp/communitymech-batch65/muc2-primary.xml: 6a0ca26660352918d2f8caf394c6a6853945e25ed82b1b78f267b14fbf2131c5 + /private/tmp/communitymech-batch65/muc2-primary.txt: 39ca3ac4751dc1d10c6a668b3d50937a61f174db70fde6f532e33321c72dd9eb + /private/tmp/communitymech-batch65/muc2-tables.txt: 4f855649b2cd44a1be55ae06b5036a9db326817b2e4aa594af27e1f3526e7cf4 +primary_urls: +- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC7479069/fullTextXML +- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC9599572/fullTextXML +- https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13091087/fullTextXML +primary_graph_snippet_count: 12 +edison: + required_for_this_repair: false + provider_submissions: 0 + credits_spent: 0 + reason: Existing-node/arrow repairs only; no new causal structure. +limitations: +- All8 original nodes retained;3 original arrows reviewed,2 MSC2 biological hypotheses retained and1 MUC2 common-treatment + arrow removed. No new causal structure or Edison submission. +- Three complete fresh primary main bodies and main text tables read. Original figure pixels, separate supplements, + raw data and executable models not audited; author-reported numerical summaries not independently recomputed. +- MSC1 persistence is not codependency; positive early total OD on soluble NAG does not establish late-phase or + partner-resolved benefit. Pooled relative-abundance centrality is computational association, not causality. Rhizobiales + is an order and the canonical roster is incomplete. +- MSC2 retains source-proposed sharing and resource-enablement mechanisms as hypotheses. Cell-pellet GC-MS is not + extracellular transfer, temporal community DEGs are not matched induction, and mixed-bag FBA removes species boundaries. + Distinct chitin concentrations, NAG preconditioning and ammonium supply matter. +- MUC2 group-qPCR calculated CFUs are not viable plating or fourteen-strain resolution. Net supernatant acid concentrations + do not identify flux, producers or composition-mediated effects; pH was neither controlled nor measured and medium + was replaced daily. CAZy species-genome percentages are not exact-strain enzyme measurements. +- Canonical taxonomy and raw non-graph blocks preserved, not recertified. Issue1569 remains OPEN for source/culture + identity, roles, assay metadata and source reporting inconsistencies; prior corrections and existing497 remain + intact. +- All920 caches unchanged;12 retained graph excerpts independently match fresh primary text. This does not certify + historical full-cache/non-graph provenance. Public OA XML was used without bypassing publisher access restrictions. +- Deduplication covered861 all-state issue titles/bodies and28 scoped ignored/hidden local files;8 matching full + issue bodies read. Prior MSC1 workflow history and MUC2 curation history read, not every PR/comment/local match. + Self-review is not independent approval; repair issues stay OPEN until protected-main merge. +records: +- path: kb/communities/MSC1_Dominant_Core.yaml + id: CommunityMech:000042 + original_sha256: 2bbdd3d11235534673733b5a35aac95a3b723e0495e20b91b8e6709dac2c0590 + record_sha256: 479f6594e26ce8439b24c947798594f7e1a28c6deedf918911ed5d342885d540 + status: reviewed + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml + scope: Whole record and every original node/arrow. + summary: Separate MSC1 persistence, early NAG growth and computational co-abundance from untested dependency. + renamed_nodes: {} + node_decisions: + - node: Chitin-Selected MSC-1 Stabilization + rationale: Retain compositional persistence with residual drift and an incomplete roster, not codependency. + - node: NAG Positive Co-Cultures + rationale: Retain early total-OD benefits on supplied NAG without late-phase or partner-resolved syntrophy claims. + - node: Soil Co-Abundance Central Hubs + rationale: Retain computational co-abundance hubs without directed causality or keystone necessity. + removed_node_decisions: [] + edges_before: [] + edges_after: [] + retained_edge_decisions: [] + removed_edge_decisions: [] + references: + - PMID:32983014 + issues: + - 1566 + - 1569 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/MSC1_Dominant_Core/2026-10-06T224710Z-codex-ff1495.yaml + source_review: + PMID:32983014: + url: https://www.ebi.ac.uk/europepmc/webservices/rest/PMC7479069/fullTextXML + scope: Complete primary XML main body, abstract, embedded table text and captions; original figure pixels, + separate supplements and raw data require separate inspection. + all_retained_graph_snippets_primary_matched: true + cache_provenance_certified: false +- path: kb/communities/MSC2_Model_Soil_Consortium.yaml + id: CommunityMech:000086 + original_sha256: b0db48390b7ed1517baf0ebf3bad414629e283dbb43406dd730223c619cb5a9a + record_sha256: 2145f5d6484f30023f834b708ccb23d3625375ab32dcf1a2e8a9fc3c4083271d + status: reviewed + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml + scope: Whole record and every original node/arrow. + summary: Qualify MSC2 chitin-sharing and Streptomyces induction arrows with assay and model limits. + renamed_nodes: {} + node_decisions: + - node: Primary Chitin Polymer Degradation + rationale: Retain conditional monoculture chitin use without assigning exclusive mixed-community donor roles. + - node: Chitin Breakdown Product Sharing + rationale: Retain proposed product sharing with pellet-metabolite and mixed-bag modeling limits. + - node: Community-Responsive Streptomyces Chitin Phenotype + rationale: Retain community-responsive Streptomyces observations without equating temporal transcripts with + induction or enzyme flux. + removed_node_decisions: [] + edges_before: + - source: Primary Chitin Polymer Degradation + target: Chitin Breakdown Product Sharing + description: Primary chitin degradation releases soluble decomposition products that other MSC-2 members can + consume in the mixed community. + - source: Chitin Breakdown Product Sharing + target: Community-Responsive Streptomyces Chitin Phenotype + description: Initial community chitin breakdown provides products that let Streptomyces grow and express a chitin-decomposition + phenotype not seen during monoculture growth on chitin. + edges_after: + - source: Primary Chitin Polymer Degradation + target: Chitin Breakdown Product Sharing + description: HYPOTHESIZED - chitin degradation by community members releases assimilable products that could + support other members. Monoculture growth, community transcripts and cell-pellet metabolites support this + model, but they do not measure donor-to-recipient extracellular flux or prove that the five monoculture-positive + isolates are the exclusive initial donors. + - source: Chitin Breakdown Product Sharing + target: Community-Responsive Streptomyces Chitin Phenotype + description: HYPOTHESIZED - products supplied by other community members could relieve an initial resource limitation + and allow Streptomyces to grow and express chitin-associated machinery. The primary Discussion proposes this + explanation, while noting possible NAG repression during preconditioning. No selective product rescue, partner-removal + test or matched mono-versus-community enzyme assay establishes this causal route. + retained_edge_decisions: + - source: Primary Chitin Polymer Degradation + target: Chitin Breakdown Product Sharing + rationale: HYPOTHESIZED - chitin degradation by community members releases assimilable products that could support + other members. Monoculture growth, community transcripts and cell-pellet metabolites support this model, but + they do not measure donor-to-recipient extracellular flux or prove that the five monoculture-positive isolates + are the exclusive initial donors. + - source: Chitin Breakdown Product Sharing + target: Community-Responsive Streptomyces Chitin Phenotype + rationale: HYPOTHESIZED - products supplied by other community members could relieve an initial resource limitation + and allow Streptomyces to grow and express chitin-associated machinery. The primary Discussion proposes this + explanation, while noting possible NAG repression during preconditioning. No selective product rescue, partner-removal + test or matched mono-versus-community enzyme assay establishes this causal route. + removed_edge_decisions: [] + references: + - PMID:36154140 + issues: + - 1567 + - 1569 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/MSC2_Model_Soil_Consortium/2026-10-06T224710Z-codex-520a0f.yaml + source_review: + PMID:36154140: + url: https://www.ebi.ac.uk/europepmc/webservices/rest/PMC9599572/fullTextXML + scope: Complete primary XML main body, abstract, embedded table text and captions; original figure pixels, + separate supplements and raw data require separate inspection. + all_retained_graph_snippets_primary_matched: true + cache_provenance_certified: false +- path: kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml + id: CommunityMech:000351 + original_sha256: 733a7112c11721d7004858c4a3ccbc986b31bda36bfc7e2714e3691c8222c6e0 + record_sha256: 01cb4512723915154b17fa1676382c9807fda7f733fc62efb63afabdad3e3742 + status: reviewed + outcome: changed + review_file: reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml + scope: Whole record and every original node/arrow. + summary: Separate MUC2 group-qPCR and extracellular acid endpoints from untested causal mediation. + renamed_nodes: + MUC2 Glycan Niche Restructuring: MUC2-Associated qPCR Community Profile + MUC2-Shifted Short-Chain Fatty Acid Output: MUC2-Associated Extracellular Acid Concentrations + node_decisions: + - node: MUC2-Associated qPCR Community Profile + rationale: Retain group-qPCR treatment response with calculated-CFU and input-roster limits. + - node: MUC2-Associated Extracellular Acid Concentrations + rationale: Retain net extracellular acid endpoints, not cross-feeding flux or composition-mediated causality. + removed_node_decisions: [] + edges_before: + - source: MUC2 Glycan Niche Restructuring + target: MUC2-Shifted Short-Chain Fatty Acid Output + description: MUC2-dependent changes in community structure accompanied broad changes in extracellular fermentation + products. + edges_after: [] + retained_edge_decisions: [] + removed_edge_decisions: + - source: MUC2 Glycan Niche Restructuring + target: MUC2-Shifted Short-Chain Fatty Acid Output + rationale: Co-measured responses to MUC2 do not establish composition-mediated acid changes. + references: + - PMID:42007376 + issues: + - 1568 + - 1569 + allowed_changed_fields: + - curation_history + - discussions + - ecological_interactions + curation_events_added: 1 + history_files: + - history/records/MUC2_Human_Gut_Commensal_Defined_Consortium/2026-10-06T224710Z-codex-50fa46.yaml + source_review: + PMID:42007376: + url: https://www.ebi.ac.uk/europepmc/webservices/rest/PMC13091087/fullTextXML + scope: Complete primary XML main body, abstract, embedded table text and captions; original figure pixels, + separate supplements and raw data require separate inspection. + all_retained_graph_snippets_primary_matched: true + cache_provenance_certified: false diff --git a/reports/causal_graph_review/inventory.tsv b/reports/causal_graph_review/inventory.tsv index e6cbf029d..94285f430 100644 --- a/reports/causal_graph_review/inventory.tsv +++ b/reports/causal_graph_review/inventory.tsv @@ -226,9 +226,9 @@ kb/communities/Lunar_Martian_Simulant_PGPB_Lettuce_SynCom.yaml CommunityMech:000 kb/communities/Lunar_Simulant_Phosphate_Solubilizing_Bacteria_Nicotiana.yaml CommunityMech:000306 880e7a2f3269d73be3a9cdd38f7433934afbdf47ad3a04cc6820982256b3ce89 3 0 63.3 reports/causal_graph_review/decisions/20261006-assay-boundaries-batch64.yaml reviewed kb/communities/Lupinus_SC7_Rhizosphere_SynCom.yaml CommunityMech:000427 59a83e4d0b1defdc5f3bae63bccb38caa87fa9fd90a6c115e5be6f518998f6ff 3 0 60.0 reports/causal_graph_review/decisions/20261006-assay-boundaries-batch64.yaml reviewed kb/communities/MAMC_M48_Lignocellulose.yaml CommunityMech:000041 d877e443187162745cbfa2adba246854e6b2667793da22f8837fd64d08925176 1 0 55.0 reports/causal_graph_review/decisions/20261006-assay-boundaries-batch64.yaml reviewed -kb/communities/MSC1_Dominant_Core.yaml CommunityMech:000042 2bbdd3d11235534673733b5a35aac95a3b723e0495e20b91b8e6709dac2c0590 3 0 75.0 pending -kb/communities/MSC2_Model_Soil_Consortium.yaml CommunityMech:000086 b0db48390b7ed1517baf0ebf3bad414629e283dbb43406dd730223c619cb5a9a 3 2 100.0 pending -kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml CommunityMech:000351 733a7112c11721d7004858c4a3ccbc986b31bda36bfc7e2714e3691c8222c6e0 2 1 85.0 pending +kb/communities/MSC1_Dominant_Core.yaml CommunityMech:000042 479f6594e26ce8439b24c947798594f7e1a28c6deedf918911ed5d342885d540 3 0 63.3 reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml reviewed +kb/communities/MSC2_Model_Soil_Consortium.yaml CommunityMech:000086 2145f5d6484f30023f834b708ccb23d3625375ab32dcf1a2e8a9fc3c4083271d 3 2 90.0 reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml reviewed +kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml CommunityMech:000351 01cb4512723915154b17fa1676382c9807fda7f733fc62efb63afabdad3e3742 2 0 57.5 reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml reviewed kb/communities/MUCC_Freshwater_Wetland_Methane_Network_Community.yaml CommunityMech:000257 f8d6d735d77518d955b0240996f5379f3844c87b33c90effb13a1ca74a3d8735 4 0 75.0 pending kb/communities/MWF001_FourSpecies_CrossFeeding_Consortium.yaml CommunityMech:000443 d857232408f6b7c54e23cb8fb32466080bb6c0a149bfb76914f514965c4b5ddf 2 0 65.0 pending kb/communities/Magnetite_Sulfate_Stress_Anaerobic_Microbiome.yaml CommunityMech:000380 d353aabbfd3e6316ec9d270b1a46e53da73db2e69b5ab0d864f4a3cbcb8fa14c 3 0 75.0 pending diff --git a/reports/causal_graph_review/summary.json b/reports/causal_graph_review/summary.json index a3ff85906..af83a6659 100644 --- a/reports/causal_graph_review/summary.json +++ b/reports/causal_graph_review/summary.json @@ -3,13 +3,13 @@ "semantic_review_rule": "Structural checks and readiness scores do not establish causal support. Completed reviews must match the current record SHA-256, cover every node once with a rationale, and reproduce the current edge list.", "records": 460, "nodes": 1452, - "edges": 639, + "edges": 638, "records_without_nodes": 8, - "records_without_edges": 161, + "records_without_edges": 162, "review_status_counts": { "needs_research": 21, - "pending": 233, - "reviewed": 206 + "pending": 230, + "reviewed": 209 }, "structural_defects": [], "network_audit": [ diff --git a/reports/causal_graph_review/validation-20261006-batch65.json b/reports/causal_graph_review/validation-20261006-batch65.json new file mode 100644 index 000000000..672a5e6d0 --- /dev/null +++ b/reports/causal_graph_review/validation-20261006-batch65.json @@ -0,0 +1,817 @@ +{ + "base_commit": "5b6301d3c4c61bbc12df8d7b7dd4f0e55d444e7e", + "scope": [ + "kb/communities/MSC1_Dominant_Core.yaml", + "kb/communities/MSC2_Model_Soil_Consortium.yaml", + "kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml" + ], + "reference_validator_version": "0.1.7", + "results": [ + { + "check": "MSC1_Dominant_Core-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/MSC1_Dominant_Core.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC1_Dominant_Core-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "MSC1_Dominant_Core-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch65/MSC1_Dominant_Core-strict.tsv", + "kb/communities/MSC1_Dominant_Core.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC1_Dominant_Core-strict.log", + "log_sha256": "38739be169eca1fb51cfcd90d9b939a9f0bbf40b6225ed6bfae5de97078efdb1", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch65/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-batch65/MSC1_Dominant_Core-strict.tsv\n" + }, + { + "check": "MSC1_Dominant_Core-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/MSC1_Dominant_Core.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC1_Dominant_Core-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "MSC1_Dominant_Core-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/MSC1_Dominant_Core.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC1_Dominant_Core-references.log", + "log_sha256": "dc514c3511e2064f9d0fd1bb91398b294477f02a3f66caf768434f454b29b933", + "output_tail": "Validating kb/communities/MSC1_Dominant_Core.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/MSC1_Dominant_Core.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": "MSC1_Dominant_Core-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/MSC1_Dominant_Core.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC1_Dominant_Core-snippets.log", + "log_sha256": "8084678f5cf248d78dd90bd74538a6320ef0dcc9940ae3e5b5f759e13588ade6", + "output_tail": "# 19 evidence snippets scanned across 1 files\n MATCH 19\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": "MSC1_Dominant_Core-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/MSC1_Dominant_Core.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC1_Dominant_Core-rank.log", + "log_sha256": "ba43bef002f8876ca895f275cce348d4e9be8c41e1e4212d8b554732a49a1250", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000042\",\n \"name\": \"MSC-1 Dominant Core\",\n \"score\": 63.3,\n \"taxonomy\": 9,\n \"connected_taxa\": 9,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 6,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"downstream\",\n \"metabolites_or_biological_processes\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/MSC1_Dominant_Core.yaml\"\n }\n]\n" + }, + { + "check": "MSC1_Dominant_Core-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/MSC1_Dominant_Core/2026-10-06T224710Z-codex-ff1495.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC1_Dominant_Core-history-0.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "MSC2_Model_Soil_Consortium-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/MSC2_Model_Soil_Consortium.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC2_Model_Soil_Consortium-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "MSC2_Model_Soil_Consortium-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch65/MSC2_Model_Soil_Consortium-strict.tsv", + "kb/communities/MSC2_Model_Soil_Consortium.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC2_Model_Soil_Consortium-strict.log", + "log_sha256": "58407dc431dd4dcb57e098c8dbc7939747ae3e9f9c9bbe2c0014c3c75453754c", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch65/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-batch65/MSC2_Model_Soil_Consortium-strict.tsv\n" + }, + { + "check": "MSC2_Model_Soil_Consortium-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/MSC2_Model_Soil_Consortium.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC2_Model_Soil_Consortium-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "MSC2_Model_Soil_Consortium-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/MSC2_Model_Soil_Consortium.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC2_Model_Soil_Consortium-references.log", + "log_sha256": "ce63b44707550d0e7a7285bf13df808c444b509bc89330b4dd762a874695de5a", + "output_tail": "Validating kb/communities/MSC2_Model_Soil_Consortium.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n", + "explained_output_tail": "Validating kb/communities/MSC2_Model_Soil_Consortium.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n" + }, + { + "check": "MSC2_Model_Soil_Consortium-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/MSC2_Model_Soil_Consortium.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC2_Model_Soil_Consortium-snippets.log", + "log_sha256": "45007c108f9ec8bef530a5471e83cc9e84b78b05e90ad8c19de389a107ed4f60", + "output_tail": "# 7 evidence snippets scanned across 1 files\n MATCH 7\n RENDERING 0\n ASSEMBLED 0\n WEAK 0\n MISMATCH 0\n NOCONTENT 0\n\n# Files with MISMATCH/WEAK (content present but snippet absent) \u2014 fabrication suspects\n\n# MISMATCH/WEAK detail\n\n# Files by RENDERING (faithful quote; differs from cache only by\n# punctuation/whitespace/Greek \u2014 this is what validate-references flags)\n\n# Top files by NOCONTENT (unverifiable; cache stub/missing)\n\n# ASSEMBLED (every part is in the source; the join is not \u2014\n# a table flattened into prose, or a quote welded from two places)\n" + }, + { + "check": "MSC2_Model_Soil_Consortium-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/MSC2_Model_Soil_Consortium.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC2_Model_Soil_Consortium-rank.log", + "log_sha256": "696e6e0da7ba68f63d77c448320a6c6821830c01ead40238a77f93b043afea56", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000086\",\n \"name\": \"Model Soil Consortium-2 (MSC-2)\",\n \"score\": 90.0,\n \"taxonomy\": 8,\n \"connected_taxa\": 8,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 3,\n \"downstream_edges\": 2,\n \"interaction_evidence\": 4,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/MSC2_Model_Soil_Consortium.yaml\"\n }\n]\n" + }, + { + "check": "MSC2_Model_Soil_Consortium-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/MSC2_Model_Soil_Consortium/2026-10-06T224710Z-codex-520a0f.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MSC2_Model_Soil_Consortium-history-0.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "MUC2_Human_Gut_Commensal_Defined_Consortium-schema", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/communitymech.yaml", + "kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MUC2_Human_Gut_Commensal_Defined_Consortium-schema.log", + "log_sha256": "de6087f4be8c0adc015333597cd864406ad889bbde42d9ee20db0df5932bb2de", + "output_tail": "No issues found\n" + }, + { + "check": "MUC2_Human_Gut_Commensal_Defined_Consortium-strict", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/python3", + "scripts/validate_strict.py", + "--workers", + "1", + "--out", + "/private/tmp/communitymech-batch65/MUC2_Human_Gut_Commensal_Defined_Consortium-strict.tsv", + "kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MUC2_Human_Gut_Commensal_Defined_Consortium-strict.log", + "log_sha256": "c100260df9372133dff32cd7157a27f35ac693c534cda49b8b9b8bb3dd812c82", + "output_tail": "Validating 1 files with 1 workers; schema=/private/tmp/communitymech-causal-batch65/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-batch65/MUC2_Human_Gut_Commensal_Defined_Consortium-strict.tsv\n" + }, + { + "check": "MUC2_Human_Gut_Commensal_Defined_Consortium-terms", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/neDBQyZXv0RYv8B1GH0dI/bin/linkml-term-validator", + "validate-data", + "kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--labels" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MUC2_Human_Gut_Commensal_Defined_Consortium-terms.log", + "log_sha256": "23acda1c1d3194d12bc947d897d07de83f4a076a9d93c135148885108530e018", + "output_tail": "\u2705 Validation passed\n" + }, + { + "check": "MUC2_Human_Gut_Commensal_Defined_Consortium-references", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-reference-validator", + "validate", + "data", + "kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml", + "-s", + "src/communitymech/schema/communitymech.yaml", + "--config", + "conf/reference_validator.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MUC2_Human_Gut_Commensal_Defined_Consortium-references.log", + "log_sha256": "aab25f998b0ccd8c6e0c6d02e1fe8f0123acd0d7bb3f3b1ccf41b429a48ae63d", + "output_tail": "Validating kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n", + "explained_output_tail": "Validating kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml against schema src/communitymech/schema/communitymech.yaml\nCache directory: references_cache\n\nValidation Summary:\n Total checks: 0\n All validations passed!\n" + }, + { + "check": "MUC2_Human_Gut_Commensal_Defined_Consortium-snippets", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/evidence_snippet_audit.py", + "kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml", + "--list-mismatch", + "--list-nocontent", + "--list-rendering", + "--list-assembled" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MUC2_Human_Gut_Commensal_Defined_Consortium-snippets.log", + "log_sha256": "96a23c88588d68e990af5d62f9c27df12879566b4125e7703a275c3bfa7adcd7", + "output_tail": "# 22 evidence snippets scanned across 1 files\n MATCH 22\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": "MUC2_Human_Gut_Commensal_Defined_Consortium-rank", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "scripts/rank_causal_graph_readiness.py", + "kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml", + "--format", + "json" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MUC2_Human_Gut_Commensal_Defined_Consortium-rank.log", + "log_sha256": "07c1109b23353cf72b0722ee7de530ce5c6b2dd2db478e7a76c3ac476f4cbf29", + "output_tail": "[\n {\n \"rank\": 1,\n \"id\": \"CommunityMech:000351\",\n \"name\": \"MUC2 Human Gut Commensal Defined Consortium\",\n \"score\": 57.5,\n \"taxonomy\": 14,\n \"connected_taxa\": 14,\n \"disconnected_taxa\": 0,\n \"ecological_interactions\": 2,\n \"downstream_edges\": 0,\n \"interaction_evidence\": 2,\n \"dangling_downstream\": 0,\n \"self_downstream\": 0,\n \"missing\": [\n \"additional_interactions\",\n \"downstream\",\n \"metabolites_or_biological_processes\",\n \"interaction_type\"\n ],\n \"path\": \"kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml\"\n }\n]\n" + }, + { + "check": "MUC2_Human_Gut_Commensal_Defined_Consortium-history-0", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/linkml-validate", + "-s", + "src/communitymech/schema/history.yaml", + "--target-class", + "HistoryRecord", + "history/records/MUC2_Human_Gut_Commensal_Defined_Consortium/2026-10-06T224710Z-codex-50fa46.yaml" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/MUC2_Human_Gut_Commensal_Defined_Consortium-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-batch65/inventory.log", + "log_sha256": "54e5060549599e73911f0a214146b77b2095d638cafd1b1946d780a994fe6e0b", + "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\": 1452,\n \"edges\": 638,\n \"records_without_nodes\": 8,\n \"records_without_edges\": 162,\n \"review_status_counts\": {\n \"needs_research\": 21,\n \"pending\": 230,\n \"reviewed\": 209\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-batch65/network.log", + "log_sha256": "3a156d88a5b27b6a726e91303cf9249745ee46d4e53a0ac73d58779dc1041a7d", + "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-batch65/rank-all.log", + "log_sha256": "2a9d5b9cc978c3498874171080178455e371bd6644858798a48d848ffdd8c603", + "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-batch65/render.log", + "log_sha256": "c9881467868f28118c60ef3394450766bd00f19dc73c8300fcd6ea676104d8b4", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch65/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch65/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch65/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-batch65/render-repeat.log", + "log_sha256": "c9881467868f28118c60ef3394450766bd00f19dc73c8300fcd6ea676104d8b4", + "output_tail": "sm.html\n \u2713 Synechococcus_Bacillus_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Bacillus_SPC.html\n \u2713 Synechococcus_Ecoli_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Ecoli_SPC.html\n \u2713 Synechococcus_Halomonas_Light_Driven_PHB_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Halomonas_Light_Driven_PHB_Coculture.html\n \u2713 Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Pseudomonas_PhotoPHA_DNT_Coculture.html\n \u2713 Synechococcus_Saccharomyces_SPC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Saccharomyces_SPC.html\n \u2713 Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechococcus_Shewanella_Dlactate_Biophotovoltaic_Consortium.html\n \u2713 Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synechocystis_Pseudomonas_Acetate_Butanol_Coculture.html\n \u2713 Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synthetic_Lichen_Synechococcus_Rhodotorula_Coculture.html\n \u2713 Synthetic_Periphyton_Freshwater_Biofilm.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Synthetic_Periphyton_Freshwater_Biofilm.html\n \u2713 Syntrophobacter_Methanobacterium_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophobacter_Methanobacterium_Syntrophy.html\n \u2713 Syntrophobacter_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophobacter_Methanospirillum_Syntrophy.html\n \u2713 Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophomonas_Methanococcus_Butyrate_Growth_Coordination_Coculture.html\n \u2713 Syntrophomonas_Methanospirillum_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophomonas_Methanospirillum_Syntrophy.html\n \u2713 Syntrophus_Benzoate_Degrader.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophus_Benzoate_Degrader.html\n \u2713 Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Syntrophus_Methanospirillum_Gentianae_Benzoate_Coculture.html\n \u2713 TCP_NonDehalogenimonas_Groundwater_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/TCP_NonDehalogenimonas_Groundwater_Consortium.html\n \u2713 THOR_Rhizosphere_Model_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/THOR_Rhizosphere_Model_Community.html\n \u2713 TYQ1_Nematode_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/TYQ1_Nematode_Biocontrol_SynCom.html\n \u2713 Teosinte_Maize_Biofertilizer_SynCom7.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Teosinte_Maize_Biofertilizer_SynCom7.html\n \u2713 Thalassiosira_Marinobacter_Marine_Snow_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thalassiosira_Marinobacter_Marine_Snow_Coculture.html\n \u2713 Thalassiosira_Ruegeria_Phycosphere_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thalassiosira_Ruegeria_Phycosphere_Coculture.html\n \u2713 Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermacetogenium_Methanothermobacter_Acetate_Oxidation_Coculture.html\n \u2713 Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermoleptolyngbya_Chelatococcus_Arsenic_Detoxification_Coculture.html\n \u2713 Thermophilic_ExSitu_Biomethanation_Mixed_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermophilic_ExSitu_Biomethanation_Mixed_Culture.html\n \u2713 Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermophilic_Lignocellulose_Composting_SynCom_Biosanitization.html\n \u2713 Thermophilic_Pyrite_QS_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermophilic_Pyrite_QS_Consortium.html\n \u2713 Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thermotoga_Methanocaldococcus_Hyperthermophilic_Syntrophy.html\n \u2713 Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Thiocyanate_Afipia_Thiobacillus_Bioreactor_Community.html\n \u2713 Tinto_River_Iron_Cycling_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tinto_River_Iron_Cycling_Community.html\n \u2713 Tobacco_Chemotactic_Biocontrol_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tobacco_Chemotactic_Biocontrol_SynCom.html\n \u2713 Tomato_Oxylipin_SynCom3.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tomato_Oxylipin_SynCom3.html\n \u2713 Tribromophenol_Anaerobic_Bioremediation_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tribromophenol_Anaerobic_Bioremediation_SynCom.html\n \u2713 Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichococcus_Syntrophomonas_Methanospirillum_Butyrate_Coculture.html\n \u2713 Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichoderma_Ecoli_Cellulosic_Isobutanol_Coculture.html\n \u2713 Trichoderma_Lactate_Platform.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichoderma_Lactate_Platform.html\n \u2713 Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichoderma_Streptomyces_Filamentous_Cellulose_Coculture.html\n \u2713 Trichodesmium_Alteromonas_Marine_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Trichodesmium_Alteromonas_Marine_Consortium.html\n \u2713 Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.html\n \u2713 Urine_Nitrification_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Urine_Nitrification_SynCom.html\n \u2713 Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.html\n \u2713 Viili_Fungus_Bacterium_EPS_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Viili_Fungus_Bacterium_EPS_SynCom.html\n \u2713 Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.html\n \u2713 Watermelon_Rhizosphere_Fusarium_SynCom8.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.html\n \u2713 Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.html\n \u2713 Wheat_Consortium_C1.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_Consortium_C1.html\n \u2713 Wheat_Consortium_C6.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_Consortium_C6.html\n \u2713 Wheat_CrownRot_SixStrain_CrossKingdom_SMC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_CrownRot_SixStrain_CrossKingdom_SMC.html\n \u2713 Wheat_CrownRot_TB_CrossKingdom_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_CrownRot_TB_CrossKingdom_SynCom.html\n \u2713 Wheat_DT_Rhizosphere_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_DT_Rhizosphere_SynCom.html\n \u2713 Wheat_Straw_Biogas_Pretreatment_SynCom.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.html\n \u2713 Wheat_SynCom_SASW01_Drought_Inoculant.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wheat_SynCom_SASW01_Drought_Inoculant.html\n \u2713 Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wine_Yeast_FiveSpecies_Strain_Substitution_Consortium.html\n \u2713 Wine_Yeast_ThreeSpecies_Contact_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wine_Yeast_ThreeSpecies_Contact_Consortium.html\n \u2713 Wolffia_Mankai_Endosphere_Cobamide_Guild.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wolffia_Mankai_Endosphere_Cobamide_Guild.html\n \u2713 Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Wollastonite_Ramichloridium_Talaromyces_Fungal_Consortium.html\n \u2713 Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.html\n \u2713 Yogurt_TwoSpecies_Starter_Culture.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Yogurt_TwoSpecies_Starter_Culture.html\n \u2713 Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.html\n \u2713 hCom2_Complex_Gut_Microbiome.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/hCom2_Complex_Gut_Microbiome.html\n \u2713 mCAFEs_Brachypodium_RCC.yaml \u2192 /private/tmp/communitymech-causal-batch65/docs/communities/mCAFEs_Brachypodium_RCC.html\n\n\u2705 Rendered 456 communities to /private/tmp/communitymech-causal-batch65/docs/communities\n \u2713 Generated browser at /private/tmp/communitymech-causal-batch65/docs/browser.html\n \u2713 Generated landing at /private/tmp/communitymech-causal-batch65/docs/index.html\n" + }, + { + "check": "connectivity-survey", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-c", + "import json,pathlib,runpy\nfn=runpy.run_path('tests/test_community_level_connectivity_credit.py')['_survey']\nresult={}\nfor name,root in [('baseline',pathlib.Path('/private/tmp/communitymech-causal-batch64')),('current',pathlib.Path.cwd())]:\n paths=sorted(p for r in ['kb/communities','data/isolates'] for p in (root/r).rglob('*.yaml'))\n assert len(paths)==460\n fn.__globals__['record_files']=lambda:paths\n result[name]=fn()\nprint(json.dumps(result))\n" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/connectivity-survey.log", + "log_sha256": "2dcbda64d4b5530059ac8ad2c76a801bffcf051d557341927f6c204fb4d3f7e5", + "output_tail": "{\"baseline\": {\"records\": 460, \"with_community_level\": 391, \"mixed\": 124, \"community_level_only\": 267, \"taxa\": 1507, \"credited_solely_by_the_rule\": 1238}, \"current\": {\"records\": 460, \"with_community_level\": 391, \"mixed\": 124, \"community_level_only\": 267, \"taxa\": 1507, \"credited_solely_by_the_rule\": 1238}}\n" + }, + { + "check": "regressions", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-m", + "pytest", + "-q", + "tests/test_causal_review_batch10.py", + "tests/test_causal_review_batch11.py", + "tests/test_causal_review_batch12.py", + "tests/test_causal_review_batch13.py", + "tests/test_causal_review_batch14.py", + "tests/test_causal_review_batch15.py", + "tests/test_causal_review_batch16.py", + "tests/test_causal_review_batch17.py", + "tests/test_causal_review_batch18.py", + "tests/test_causal_review_batch19.py", + "tests/test_causal_review_batch20.py", + "tests/test_causal_review_batch21.py", + "tests/test_causal_review_batch22.py", + "tests/test_causal_review_batch23.py", + "tests/test_causal_review_batch24.py", + "tests/test_causal_review_batch25.py", + "tests/test_causal_review_batch27.py", + "tests/test_causal_review_batch28.py", + "tests/test_causal_review_batch29.py", + "tests/test_causal_review_batch30.py", + "tests/test_causal_review_batch31.py", + "tests/test_causal_review_batch32.py", + "tests/test_causal_review_batch33.py", + "tests/test_causal_review_batch34.py", + "tests/test_causal_review_batch35.py", + "tests/test_causal_review_batch36.py", + "tests/test_causal_review_batch37.py", + "tests/test_causal_review_batch38.py", + "tests/test_causal_review_batch39.py", + "tests/test_causal_review_batch40.py", + "tests/test_causal_review_batch41.py", + "tests/test_causal_review_batch42.py", + "tests/test_causal_review_batch43.py", + "tests/test_causal_review_batch44.py", + "tests/test_causal_review_batch45.py", + "tests/test_causal_review_batch46.py", + "tests/test_causal_review_batch47.py", + "tests/test_causal_review_batch48.py", + "tests/test_causal_review_batch49.py", + "tests/test_causal_review_batch5.py", + "tests/test_causal_review_batch50.py", + "tests/test_causal_review_batch51.py", + "tests/test_causal_review_batch52.py", + "tests/test_causal_review_batch53.py", + "tests/test_causal_review_batch54.py", + "tests/test_causal_review_batch55.py", + "tests/test_causal_review_batch56.py", + "tests/test_causal_review_batch57.py", + "tests/test_causal_review_batch58.py", + "tests/test_causal_review_batch59.py", + "tests/test_causal_review_batch6.py", + "tests/test_causal_review_batch60.py", + "tests/test_causal_review_batch61.py", + "tests/test_causal_review_batch62.py", + "tests/test_causal_review_batch63.py", + "tests/test_causal_review_batch64.py", + "tests/test_causal_review_batch65.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-batch65/regressions.log", + "log_sha256": "ea330796291f4dd5d720d4ddf98e84f5c6ab3465bbe891f946f399690d022a5e", + "output_tail": "........................................................................ [ 12%]\n........................................................................ [ 24%]\n........................................................................ [ 36%]\n........................................................................ [ 48%]\n........................................................................ [ 60%]\n........................................................................ [ 72%]\n........................................................................ [ 84%]\n........................................................................ [ 96%]\n................... [100%]\n595 passed in 208.89s (0:03:28)\n" + }, + { + "check": "black", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/3Q_kifQtLB624D5bBWGIf/bin/black", + "--check", + "tests/test_causal_review_batch65.py", + "tests/test_participating_taxa.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/black.log", + "log_sha256": "b9cf511501d306d2bd8355ccb165c8ddc0a6fdd62d7c72c4a7b1795cf8934c8c", + "output_tail": "All done! \u2728 \ud83c\udf70 \u2728\n2 files would be left unchanged.\n" + }, + { + "check": "ruff", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/wCcxEYRM4HeHgwYPZemHX/bin/ruff", + "check", + "tests/test_causal_review_batch65.py", + "tests/test_participating_taxa.py" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/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-batch65/diff-check.log", + "log_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "output_tail": "" + }, + { + "check": "primary-graph-proof", + "command": [ + "/Users/marcin/.cache/uv/archive-v0/l58VlyFvdmnkl0CcAx5Gk/bin/python3", + "-c", + "import hashlib,json,pathlib,yaml\nP=pathlib.Path\nledger=yaml.safe_load(P('reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml').read_text())\nmanifest=json.loads(P('/private/tmp/communitymech-batch65/primary-manifest.json').read_text())\nprimary={'PMID:'+v['pmid']:''.join(P(v['extracted_body']).read_text().split()) for v in manifest.values()}\nfor path,digest in ledger['primary_artifacts'].items():\n assert hashlib.sha256(P(path).read_bytes()).hexdigest()==digest\ncount=0\nfor row in ledger['records']:\n doc=yaml.safe_load(P(row['path']).read_text())\n for node in doc['ecological_interactions']:\n for ev in node['evidence']:\n assert ''.join(ev['snippet'].split()) in primary[ev['reference']]\n count+=1\nassert count==ledger['primary_graph_snippet_count']==12\nassert ledger['edison']['provider_submissions']==ledger['edison']['credits_spent']==0\nassert 'Metabolites from the cell pellets' in P(manifest['msc2']['extracted_body']).read_text()\nassert 'We did not measure the pH' in P(manifest['muc2']['extracted_body']).read_text()\nprint(json.dumps({'primary_matched_graph_snippets':count,'primary_main_bodies':3,'paid_submissions':0,'new_nodes_or_arrows':0,'separate_supplements_inspected':False,'original_figure_pixels_inspected':False}))\n" + ], + "exit_code": 0, + "expected_exit_codes": [ + 0 + ], + "log": "/private/tmp/communitymech-batch65/primary-graph-proof.log", + "log_sha256": "2a815015027f29582fce8831cbee59fb0be1ceec4e77135adf7cce54adc6fc3f", + "output_tail": "{\"primary_matched_graph_snippets\": 12, \"primary_main_bodies\": 3, \"paid_submissions\": 0, \"new_nodes_or_arrows\": 0, \"separate_supplements_inspected\": false, \"original_figure_pixels_inspected\": false}\n" + } + ], + "limitations": [ + "All8 original nodes retained;3 original arrows reviewed,2 MSC2 biological hypotheses retained and1 MUC2 common-treatment arrow removed. No new causal structure or Edison submission.", + "Three complete fresh primary main bodies and main text tables read. Original figure pixels, separate supplements, raw data and executable models not audited; author-reported numerical summaries not independently recomputed.", + "MSC1 persistence is not codependency; positive early total OD on soluble NAG does not establish late-phase or partner-resolved benefit. Pooled relative-abundance centrality is computational association, not causality. Rhizobiales is an order and the canonical roster is incomplete.", + "MSC2 retains source-proposed sharing and resource-enablement mechanisms as hypotheses. Cell-pellet GC-MS is not extracellular transfer, temporal community DEGs are not matched induction, and mixed-bag FBA removes species boundaries. Distinct chitin concentrations, NAG preconditioning and ammonium supply matter.", + "MUC2 group-qPCR calculated CFUs are not viable plating or fourteen-strain resolution. Net supernatant acid concentrations do not identify flux, producers or composition-mediated effects; pH was neither controlled nor measured and medium was replaced daily. CAZy species-genome percentages are not exact-strain enzyme measurements.", + "Canonical taxonomy and raw non-graph blocks preserved, not recertified. Issue1569 remains OPEN for source/culture identity, roles, assay metadata and source reporting inconsistencies; prior corrections and existing497 remain intact.", + "All920 caches unchanged;12 retained graph excerpts independently match fresh primary text. This does not certify historical full-cache/non-graph provenance. Public OA XML was used without bypassing publisher access restrictions.", + "Deduplication covered861 all-state issue titles/bodies and28 scoped ignored/hidden local files;8 matching full issue bodies read. Prior MSC1 workflow history and MUC2 curation history read, not every PR/comment/local match. Self-review is not independent approval; repair issues stay OPEN until protected-main merge.", + "Exact HTML-description parser and repeat-render checks, not browser screenshots. Post-commit docs-current is separate." + ], + "snippet_counts_by_record": { + "kb/communities/MSC1_Dominant_Core.yaml": { + "MATCH": 19, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "kb/communities/MSC2_Model_Soil_Consortium.yaml": { + "MATCH": 7, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + }, + "kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml": { + "MATCH": 22, + "RENDERING": 0, + "ASSEMBLED": 0, + "WEAK": 0, + "MISMATCH": 0, + "NOCONTENT": 0 + } + }, + "unchanged_raw_blocks": 44, + "unchanged_record_files": 457, + "unchanged_cache_files": 920, + "edison": { + "required_for_this_repair": false, + "provider_submissions": 0, + "credits_spent": 0, + "reason": "Existing-node/arrow repairs only; no new causal structure." + }, + "primary_artifacts": { + "/private/tmp/communitymech-batch65/msc1-primary.xml": "63992fea25005b1a0625496dde0d79626c49309b87cdece90c00ac20063121ae", + "/private/tmp/communitymech-batch65/msc1-primary.txt": "0f6d2ebab484bdcd8d79b352924d2e108d0c9768e9cfe277409cd9dc73a3a689", + "/private/tmp/communitymech-batch65/msc1-tables.txt": "ba3076eea473b99f158c86f3f1bbfd8e43b8f2cb6c3c2aec69950f0613f8fa9b", + "/private/tmp/communitymech-batch65/msc2-primary.xml": "a833f3968e92e69d8d885cc38e8a5e73aaa8013bfe7916fb6918da2ad5fcabf9", + "/private/tmp/communitymech-batch65/msc2-primary.txt": "b5aec0ff01bc58a6103f3146bed56f8dffd0d1a514024a92ec742da9c6a89f0a", + "/private/tmp/communitymech-batch65/msc2-tables.txt": "0a628bb5ff8e2223f831276241ccaba2b0ebee9027d857e30b98cc4e84b588e7", + "/private/tmp/communitymech-batch65/muc2-primary.xml": "6a0ca26660352918d2f8caf394c6a6853945e25ed82b1b78f267b14fbf2131c5", + "/private/tmp/communitymech-batch65/muc2-primary.txt": "39ca3ac4751dc1d10c6a668b3d50937a61f174db70fde6f532e33321c72dd9eb", + "/private/tmp/communitymech-batch65/muc2-tables.txt": "4f855649b2cd44a1be55ae06b5036a9db326817b2e4aa594af27e1f3526e7cf4" + }, + "network_delta": { + "existing_findings_preserved": 46, + "added_findings": {}, + "removed_findings": {}, + "interpretation": "All46 baseline network findings preserved exactly; no auditor-rule changes or invented links. Explicit participant lists identify tested panels/inoculants, not missing hosts or background communities." + }, + "render_determinism": true, + "published_description_coverage": { + "pages": 456, + "nodes": 1438, + "arrows": 630 + }, + "participant_census": { + "measurements": { + "baseline": { + "records": 460, + "with_community_level": 391, + "mixed": 124, + "community_level_only": 267, + "taxa": 1507, + "credited_solely_by_the_rule": 1238 + }, + "current": { + "records": 460, + "with_community_level": 391, + "mixed": 124, + "community_level_only": 267, + "taxa": 1507, + "credited_solely_by_the_rule": 1238 + } + }, + "interpretation": "Canonical roster/scope census unchanged. Explicit participants identify the partial MSC1 roster and hubs, MSC2 assay/focal subsets and fourteen MUC2 input members. This coarse census does not certify exact identities, final abundance or partner flux." + }, + "network_warning_count": 46, + "corpus": { + "scope": "Every YAML under kb/communities and data/isolates; filesystem discovery includes hidden/ignored files.", + "records": 460, + "nodes": 1452, + "edges": 638, + "records_without_nodes": 8, + "records_without_edges": 162, + "review_status_counts": { + "needs_research": 21, + "pending": 230, + "reviewed": 209 + }, + "structural_defects": [] + }, + "tested_file_sha256": { + "reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml": "7d017a2aa5bbfdc46ad78cd9911b3d342ea092867ae544a5f709594c650da054", + "tests/test_causal_review_batch65.py": "a5d3506eeb86b87920c6d792c28baad4b15d8cbcdb0158bd024c48ac5dbce196", + "tests/test_participating_taxa.py": "8cf3459098b11203dcb48dcc1d5bddc1f329b1af62f148d0f59b1ce7f0411acb", + "kb/communities/MSC1_Dominant_Core.yaml": "479f6594e26ce8439b24c947798594f7e1a28c6deedf918911ed5d342885d540", + "kb/communities/MSC2_Model_Soil_Consortium.yaml": "2145f5d6484f30023f834b708ccb23d3625375ab32dcf1a2e8a9fc3c4083271d", + "kb/communities/MUC2_Human_Gut_Commensal_Defined_Consortium.yaml": "01cb4512723915154b17fa1676382c9807fda7f733fc62efb63afabdad3e3742", + "reports/causal_graph_review/README.md": "5786f9372607e97d3ec255b061958f0c320dd29c24680581a05807c05c2f854f" + }, + "status": "verified_assay_boundary_graph_review", + "pre_research_baseline": { + "base_commit": "5b6301d3c4c61bbc12df8d7b7dd4f0e55d444e7e", + "base_tree": "284ebf47828205a05185a7d0075ae74c64fdce34", + "research_worktree": "/private/tmp/communitymech-causal-batch64", + "checks": [ + { + "name": "rank", + "command": [ + "just", + "rank-causal-graphs" + ], + "exit_code": 0, + "expected_exit_code": 0, + "log": "/private/tmp/communitymech-batch65/baseline-rank.log", + "sha256": "0a90127cb011de8db6ed2c44df99d1a66c0ca6642e37d071fa1654d866cc91ee", + "output_tail": "/Tropidoatractus_Magnetotacticus_Tripartite_Syntrophy.yaml\tCommunityMech:000337\tTropidoatractus magnetotacticus Magnetotactic Ciliate Tripartite Syntrophy\t3\t3\t0\t4\t2\t9\t\t0\t0\n450\t100.0\tkb/communities/Urine_Nitrification_SynCom.yaml\tCommunityMech:000117\tUrine Nitrification Synthetic Microbial Community\t5\t5\t0\t3\t2\t5\t\t0\t0\n451\t100.0\tkb/communities/Variovorax_Cryptococcus_Vitamin_Mutualism_Microcosm.yaml\tCommunityMech:000213\tVariovorax-Cryptococcus Vitamin Cross-Feeding Microcosm\t2\t2\t0\t3\t2\t4\t\t0\t0\n452\t100.0\tkb/communities/Waste_Sludge_Electrofermentation_Biofilm_Suspension_Community.yaml\tCommunityMech:000328\tWaste-Sludge Electro-Fermentation Biofilm-Suspension Community\t5\t5\t0\t4\t2\t6\t\t0\t0\n453\t100.0\tkb/communities/Watermelon_Rhizosphere_Fusarium_SynCom8.yaml\tCommunityMech:000098\tWatermelon Rhizosphere Fusarium-Protective SynCom8\t2\t2\t0\t3\t2\t7\t\t0\t0\n454\t100.0\tkb/communities/Wetland_Oxygen_Sulfate_GHG_Microcosm_Community.yaml\tCommunityMech:000255\tWetland Oxygen-Sulfate Greenhouse Gas Microcosm Community\t3\t3\t0\t3\t2\t6\t\t0\t0\n455\t100.0\tkb/communities/Wheat_Straw_Biogas_Pretreatment_SynCom.yaml\tCommunityMech:000118\tWheat Straw Biogas Pretreatment SynCom\t4\t4\t0\t3\t2\t4\t\t0\t0\n456\t100.0\tkb/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml\tCommunityMech:000354\tYarrowia lipolytica Division-of-Labor Lipid Consortium\t2\t2\t0\t3\t2\t3\t\t0\t0\n457\t100.0\tkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml\tCommunityMech:000164\tYogurt Two-Species Starter Culture\t2\t2\t0\t4\t2\t9\t\t0\t0\n458\t100.0\tkb/communities/Zymomonas_Ecoli_Exometabolomics_Obligate_Mutualism.yaml\tCommunityMech:000210\tZymomonas-E. coli Exometabolomics-Designed Obligate Mutualism\t2\t2\t0\t3\t2\t6\t\t0\t0\n459\t100.0\tkb/communities/hCom2_Complex_Gut_Microbiome.yaml\tCommunityMech:000123\thCom2 Complex Gut Microbiome\t1\t1\t0\t3\t2\t3\t\t0\t0\n460\t100.0\tkb/communities/mCAFEs_Brachypodium_RCC.yaml\tCommunityMech:000078\tm-CAFEs Brachypodium Reduced Complexity Consortia\t10\t10\t0\t6\t2\t11\t\t0\t0\nPYTHONPATH=src uv run python scripts/rank_causal_graph_readiness.py \n" + }, + { + "name": "just-network", + "command": [ + "just", + "audit-network-json" + ], + "exit_code": 2, + "expected_exit_code": 2, + "log": "/private/tmp/communitymech-batch65/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-batch65/baseline-network.log", + "sha256": "3a156d88a5b27b6a726e91303cf9249745ee46d4e53a0ac73d58779dc1041a7d", + "output_tail": " \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Staphylococcus capitis | K1-2-2-23 | ISS, V2A Steel | DSM 111179 | Sobisch et al., 2019 | GCA_025272695 | TSYB/TSYA | 37 \\u00b0C | 16\\u201324 h\",\n \"explanation\": \"Identifies S. capitis K1-2-2-23 as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Staphylococcus capitis K1-2-2-23' has no interactions\"\n },\n {\n \"type\": \"DISCONNECTED\",\n \"taxon\": \"Streptococcus halotolerans HTS9T\",\n \"taxon_id\": \"NCBITaxon:1814128\",\n \"taxon_data\": {\n \"taxon_term\": {\n \"preferred_term\": \"Streptococcus halotolerans HTS9T\",\n \"term\": {\n \"id\": \"NCBITaxon:1814128\",\n \"label\": \"Streptococcus halotolerans\"\n },\n \"gtdb_grounding_status\": \"UNRESOLVED\",\n \"notes\": \"The source used the S. halotolerans type strain as a biosafety-level-1 representative.\"\n },\n \"strain_designation\": {\n \"strain_name\": \"HTS9T\",\n \"genome_accession\": \"GCA_001598035\",\n \"culture_collections\": [\n {\n \"collection\": \"DSM\",\n \"accession\": \"101996\"\n }\n ]\n },\n \"evidence\": [\n {\n \"reference\": \"PMID:42577390\",\n \"supports\": \"SUPPORT\",\n \"evidence_source\": \"IN_VITRO\",\n \"snippet\": \"Streptococcus halotolerans | HTS9 T | Respiratory Tract of Marmota himalayana | DSM 101996 T | Niu et al., 2016 | GCA_001598035 | 2xLB, TSYB/TSYA | 37 \\u00b0C | 24 h\",\n \"explanation\": \"Identifies S. halotolerans HTS9T as a consortium member and gives its source, DSM number, genome accession and cultivation conditions.\"\n }\n ]\n },\n \"message\": \"Taxon 'Streptococcus halotolerans HTS9T' has no interactions\"\n }\n ]\n}\n" + }, + { + "name": "downstream", + "command": [ + "rg", + "--no-ignore", + "--hidden", + "-n", + "downstream:", + "kb/communities", + "data/isolates", + "--glob", + "*.yaml" + ], + "exit_code": 0, + "expected_exit_code": 0, + "log": "/private/tmp/communitymech-batch65/baseline-downstream.log", + "sha256": "b6619db9d93fab2a0143e36a124c802fdb0c45426c462c3f33262724a15c301a", + "output_tail": "_Dynamic_Interaction.yaml:143: downstream:\nkb/communities/Geobacter_Pseudomonas_Formate_Fumarate_Electroactive_Coculture.yaml:191: downstream:\nkb/communities/Pepper_Phytophthora_SynCom5.yaml:123: downstream:\nkb/communities/Pepper_Phytophthora_SynCom5.yaml:146: 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/SO3_BS3_Lithium_Battery_Bioleaching_Consortium.yaml:141: downstream:\nkb/communities/BioModels_MODEL2204300001_Kefir_Community_Model.yaml:203: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:104: downstream:\nkb/communities/Avena_Rhizosphere_Detritusphere_Niche_Succession.yaml:127: downstream:\nkb/communities/Lake_Washington_Methane_Oxygen_Methylotroph_Community.yaml:342: downstream:\nkb/communities/Yarrowia_lipolytica_Division_of_Labor_Lipid_Consortium.yaml:223: downstream:\nkb/communities/Clostridium_Carboxidivorans_Kluyveri_CO_Chain_Elongation_Coculture.yaml:247: downstream:\nkb/communities/Clostridium_Carboxidivorans_Kluyveri_CO_Chain_Elongation_Coculture.yaml:344: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:311: downstream:\nkb/communities/Chlamydomonas_Bacterial_H2_Consortium.yaml:365: downstream:\nkb/communities/Polaromonas_Vanadium_Reduction_Community.yaml:281: downstream:\nkb/communities/Polaromonas_Vanadium_Reduction_Community.yaml:401: downstream:\nkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml:199: downstream:\nkb/communities/Yogurt_TwoSpecies_Starter_Culture.yaml:267: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:120: downstream:\nkb/communities/Synechococcus_Bacillus_SPC.yaml:152: downstream:\nkb/communities/Salar_Atacama_Lithium_Brine_Community.yaml:295: downstream:\nkb/communities/Salar_Atacama_Lithium_Brine_Community.yaml:339: downstream:\n" + } + ], + "baseline_sha256": "5224d6dcb99b696194c15331e35165bc6db4b68821362cf322bc3c80ae94ab5b" + }, + "reference_validator_caveat": "CLI Total checks counts reported issues, not executed checks. MATCH is not scientific entailment or certification of historical provenance. All920 caches unchanged;12 graph excerpts independently match fresh primary text.1569 and existing476/1091/1095 limitations remain unresolved; graph repair does not recertify non-graph blocks." +} diff --git a/tests/test_causal_review_batch65.py b/tests/test_causal_review_batch65.py new file mode 100644 index 000000000..bf2c04222 --- /dev/null +++ b/tests/test_causal_review_batch65.py @@ -0,0 +1,146 @@ +"""Keep observed phenotypes distinct from inferred community mechanisms.""" + +import hashlib +from pathlib import Path + +import yaml + +ROOT = Path(__file__).resolve().parents[1] +LEDGER = ROOT / "reports/causal_graph_review/decisions/20261006-soil-mucin-batch65.yaml" +A = "MSC1_Dominant_Core" +B = "MSC2_Model_Soil_Consortium" +C = "MUC2_Human_Gut_Commensal_Defined_Consortium" + + +def records(): + ledger = yaml.safe_load(LEDGER.read_text()) + rows = {Path(r["path"]).stem: r for r in ledger["records"]} + docs = {name: yaml.safe_load((ROOT / r["path"]).read_text()) for name, r in rows.items()} + return ledger, rows, docs + + +def test_msc1_persistence_is_not_dependency_and_roster_is_partial(): + _, rows, docs = records() + node = docs[A]["ecological_interactions"][0] + for phrase in ["residual drift", "31", "approximately 35", "incomplete roster", "HYPOTHESIZED"]: + assert phrase in node["description"] + assert len(node["participating_taxa"]) == 9 + assert node["evidence"][1]["supports"] == "PARTIAL" + assert rows[A]["edges_before"] == rows[A]["edges_after"] == [] + assert docs[A]["taxonomy"][4]["taxon_term"]["term"]["id"] == "NCBITaxon:85413" + + +def test_msc1_early_total_od_is_not_late_or_partner_resolved_benefit(): + _, _, docs = records() + node = docs[A]["ecological_interactions"][1] + for phrase in [ + "10 mM soluble", + "expected average", + "not significant in late", + "does not resolve each partner", + "partial set", + ]: + assert phrase in node["description"] + assert len(node["participating_taxa"]) == 4 + assert "biological_processes" not in node + + +def test_msc1_hubs_are_computational_not_keystone_perturbations(): + _, _, docs = records() + node = docs[A]["ecological_interactions"][2] + for phrase in [ + "pooled normalized relative", + "Rhizobiales is an order", + "common environmental", + "keystone necessity", + "distinct contexts", + ]: + assert phrase in node["description"] + assert len(node["participating_taxa"]) == 2 + assert all(e["evidence_source"] == "COMPUTATIONAL" for e in node["evidence"]) + + +def test_msc2_retains_biological_arrows_as_hypotheses_not_deleted_science(): + _, rows, docs = records() + nodes = docs[B]["ecological_interactions"] + assert len(rows[B]["edges_before"]) == len(rows[B]["edges_after"]) == 2 + assert len(rows[B]["retained_edge_decisions"]) == 2 + assert rows[B]["removed_edge_decisions"] == [] + for node in nodes[:2]: + assert node["downstream"][0]["description"].startswith("HYPOTHESIZED -") + assert "exclusive" in nodes[0]["downstream"][0]["description"] + assert "No selective product rescue" in nodes[1]["downstream"][0]["description"] + assert [len(n["participating_taxa"]) for n in nodes] == [5, 8, 1] + + +def test_msc2_pellet_metabolites_and_temporal_transcripts_are_not_transfer(): + _, _, docs = records() + primary, sharing, phenotype = docs[B]["ecological_interactions"] + for phrase in ["100 ppm", "500 ppm", "preconditioning", "18 mM ammonium"]: + assert phrase in primary["description"] + assert "cell-pellet extracts after supernatant removal" in sharing["description"] + assert "without species boundaries" in sharing["description"] + assert "not matched monoculture-versus-community expression" in phenotype["description"] + assert "biological_processes" not in phenotype and "source_taxon" not in phenotype + assert phenotype["evidence"][0]["supports"] == "PARTIAL" + + +def test_muc2_preserves_outcomes_without_common_treatment_arrow(): + _, rows, docs = records() + profile, acids = docs[C]["ecological_interactions"] + assert "calculated CFU equivalents" in profile["description"] + assert "not direct viable counts" in profile["description"] + assert "species-level genome sets" in profile["description"] + for phrase in [ + "lower acetate", + "higher propionate, butyrate and formate", + "net extracellular concentration", + "neither controlled nor measured", + "daily 10%", + "HYPOTHESIZED", + ]: + assert phrase in acids["description"] + assert len(rows[C]["removed_edge_decisions"]) == 1 + assert rows[C]["edges_after"] == [] + old_gap = docs[C]["discussions"][0] + assert old_gap["discussion_id"] == "kg-muc2-group-level-qpcr-resolution" + assert old_gap["status"] == "OPEN" + assert set(old_gap["attaches_to"]) == { + "ecological_interactions#" + n["name"] for n in [profile, acids] + } + + +def test_batch65_caches_and_canonical_participants_are_not_rewritten(): + ledger, _, docs = records() + for path, digest in ledger["reference_cache_original_hashes"].items(): + assert hashlib.sha256((ROOT / path).read_bytes()).hexdigest() == digest + for doc in docs.values(): + canonical = { + t["taxon_term"]["preferred_term"]: t["taxon_term"]["term"] for t in doc["taxonomy"] + } + for node in doc["ecological_interactions"]: + assert "interaction_type" not in node + for taxon in node["participating_taxa"]: + assert canonical[taxon["preferred_term"]] == taxon["term"] + assert "#1569" in doc["discussions"][-1]["rationale"] + assert ledger["unresolved_non_graph_issues"] == [1569] + assert ledger["primary_graph_snippet_count"] == 12 + + +def test_batch65_complete_ledger_history_and_source_limits(): + ledger, rows, docs = records() + assert ledger["independent_approval"] is False + assert ledger["issues"] == [1566, 1567, 1568] + assert ledger["edison"]["provider_submissions"] == ledger["edison"]["credits_spent"] == 0 + assert sum(len(r["node_decisions"]) for r in rows.values()) == 8 + assert sum(len(r["removed_node_decisions"]) for r in rows.values()) == 0 + assert sum(len(r["edges_before"]) for r in rows.values()) == 3 + assert sum(len(r["edges_after"]) for r in rows.values()) == 2 + for name, row in rows.items(): + doc = docs[name] + assert hashlib.sha256((ROOT / row["path"]).read_bytes()).hexdigest() == row["record_sha256"] + assert doc["curation_history"][-1]["llm_assisted"] is True + assert len(row["history_files"]) == 1 and row["status"] == "reviewed" + names = {n["name"] for n in doc["ecological_interactions"]} + assert {d["node"] for d in row["node_decisions"]} == names + assert {a.split("#", 1)[1] for a in doc["discussions"][-1]["attaches_to"]} == names diff --git a/tests/test_participating_taxa.py b/tests/test_participating_taxa.py index 454f4fb8b..a9b18ccd7 100644 --- a/tests/test_participating_taxa.py +++ b/tests/test_participating_taxa.py @@ -320,6 +320,7 @@ def test_a_curie_is_ambiguous_where_members_share_an_id(example): "MAMC_M48_Lignocellulose.yaml", "MSC1_Dominant_Core.yaml", "MSC2_Model_Soil_Consortium.yaml", + "MUC2_Human_Gut_Commensal_Defined_Consortium.yaml", "Magnetite_Sulfate_Stress_Anaerobic_Microbiome.yaml", "Maize_Root_Simplified_Community.yaml", "Maize_SC2_RootRot_Biocontrol_SynCom.yaml",